@@ -469,76 +469,94 @@ <h4>Skill Cache</h4>
469469 < section id ="install " class ="sect ">
470470 < div class ="sect-label "> Get Started</ div >
471471 < h2 > Up and running in 2 minutes</ h2 >
472- < p class ="sub "> Install , consent once, connect your AI.</ p >
472+ < p class ="sub "> Pick your OS, install , consent once, connect your AI.</ p >
473473
474474 < div class ="os-tabs ">
475- < button class ="os-tab active " onclick ="switchOS('mcp ') "> Claude Code / Cursor </ button >
476- < button class ="os-tab " onclick ="switchOS('agent ') "> Give it tasks </ button >
477- < button class ="os-tab " onclick ="switchOS('rest ') "> Build with it </ button >
475+ < button class ="os-tab active " onclick ="switchOS('windows ') "> Windows </ button >
476+ < button class ="os-tab " onclick ="switchOS('macos ') "> macOS </ button >
477+ < button class ="os-tab " onclick ="switchOS('linux ') "> Linux </ button >
478478 </ div >
479479
480- < div class ="code-box " id ="os-mcp " style ="display:block; ">
481- < div class ="code-hd "> < div class ="dot r "> </ div > < div class ="dot y "> </ div > < div class ="dot g "> </ div > < span > Terminal + claude_desktop_config.json </ span > </ div >
480+ < div class ="code-box " id ="os-windows " style ="display:block; ">
481+ < div class ="code-hd "> < div class ="dot r "> </ div > < div class ="dot y "> </ div > < div class ="dot g "> </ div > < span > PowerShell </ span > </ div >
482482 < pre > < code > < span class ="c-comment "> # 1. Install</ span >
483483< span class ="c-cmd "> git clone</ span > < span class ="c-string "> https://github.com/AmrDab/clawdcursor.git</ span > < span class ="c-flag "> --branch v0.7.2</ span >
484- < span class ="c-cmd "> cd</ span > clawdcursor && < span class ="c-cmd "> npm install</ span > && < span class ="c-cmd "> npm run setup</ span >
484+ < span class ="c-cmd "> cd</ span > clawdcursor
485+ < span class ="c-cmd "> npm install</ span > ; < span class ="c-cmd "> npm run setup</ span >
486+
487+ < span class ="c-comment "> # 2. Auto-detect your AI providers</ span >
488+ < span class ="c-cmd "> clawdcursor doctor</ span >
485489
486- < span class ="c-comment "> # 2. One-time consent (required — desktop control warning)</ span >
487- < span class ="c-cmd "> clawdcursor consent</ span >
490+ < span class ="c-comment "> # 3. Start the agent (consent prompt on first run)</ span >
491+ < span class ="c-cmd "> clawdcursor start</ span >
492+
493+ < span class ="c-comment "> # 4. Send a task</ span >
494+ < span class ="c-cmd "> clawdcursor task</ span > < span class ="c-string "> "Open Chrome and go to github.com"</ span >
488495
489- < span class ="c-comment "> # 3. Add to your MCP client config</ span >
496+ < span class ="c-comment "> # Or use as MCP server (add to Claude Code / Cursor config) </ span >
490497< span class ="c-string "> {
491498 "mcpServers": {
492- "clawdcursor": {
493- "command": "clawdcursor",
494- "args": ["mcp"]
495- }
499+ "clawdcursor": { "command": "clawdcursor", "args": ["mcp"] }
496500 }
497- }</ span >
498-
499- < span class ="c-comment "> # clawdcursor mcp will refuse to start without consent</ span > </ code > </ pre >
501+ }</ span > </ code > </ pre >
500502 </ div >
501503
502- < div class ="code-box " id ="os-agent " style ="display:none; ">
503- < div class ="code-hd "> < div class ="dot r "> </ div > < div class ="dot y "> </ div > < div class ="dot g "> </ div > < span > Terminal</ span > </ div >
504- < pre > < code > < span class ="c-comment "> # 1. Install</ span >
504+ < div class ="code-box " id ="os-macos " style ="display:none; ">
505+ < div class ="code-hd "> < div class ="dot r "> </ div > < div class ="dot y "> </ div > < div class ="dot g "> </ div > < span > Terminal (zsh)</ span > </ div >
506+ < pre > < code > < span class ="c-comment "> # 0. Grant Accessibility permissions FIRST</ span >
507+ < span class ="c-comment "> # System Settings → Privacy & Security → Accessibility</ span >
508+ < span class ="c-comment "> # → Add your Terminal app (Terminal, iTerm2, Warp, etc.)</ span >
509+
510+ < span class ="c-comment "> # 1. Install</ span >
505511< span class ="c-cmd "> git clone</ span > < span class ="c-string "> https://github.com/AmrDab/clawdcursor.git</ span > < span class ="c-flag "> --branch v0.7.2</ span >
506512< span class ="c-cmd "> cd</ span > clawdcursor && < span class ="c-cmd "> npm install</ span > && < span class ="c-cmd "> npm run setup</ span >
507513
508- < span class ="c-comment "> # 2. Auto-detect your AI providers (Anthropic, OpenAI, Ollama, etc.) </ span >
514+ < span class ="c-comment "> # 2. Auto-detect your AI providers</ span >
509515< span class ="c-cmd "> clawdcursor doctor</ span >
510516
511- < span class ="c-comment "> # 3. Start the agent (consent prompt fires on first run)</ span >
517+ < span class ="c-comment "> # 3. Start the agent (consent prompt on first run)</ span >
512518< span class ="c-cmd "> clawdcursor start</ span >
513519
514520< span class ="c-comment "> # 4. Send a task</ span >
515- < span class ="c-cmd "> clawdcursor task</ span > < span class ="c-string "> "Open Chrome and go to github.com"</ span >
521+ < span class ="c-cmd "> clawdcursor task</ span > < span class ="c-string "> "Open Safari and go to github.com"</ span >
516522
517- < span class ="c-comment "> # Or open an interactive task console</ span >
518- < span class ="c-cmd "> clawdcursor task</ span > </ code > </ pre >
523+ < span class ="c-comment "> # Or use as MCP server (add to Claude Code / Cursor config)</ span >
524+ < span class ="c-string "> {
525+ "mcpServers": {
526+ "clawdcursor": { "command": "clawdcursor", "args": ["mcp"] }
527+ }
528+ }</ span >
529+
530+ < span class ="c-comment "> # Troubleshooting: if clicks don't land, re-check Accessibility permissions</ span >
531+ < span class ="c-comment "> # See docs/MACOS-SETUP.md for detailed setup guide</ span > </ code > </ pre >
519532 </ div >
520533
521- < div class ="code-box " id ="os-rest " style ="display:none; ">
522- < div class ="code-hd "> < div class ="dot r "> </ div > < div class ="dot y "> </ div > < div class ="dot g "> </ div > < span > Terminal + HTTP</ span > </ div >
523- < pre > < code > < span class ="c-comment "> # 1. Install and start</ span >
534+ < div class ="code-box " id ="os-linux " style ="display:none; ">
535+ < div class ="code-hd "> < div class ="dot r "> </ div > < div class ="dot y "> </ div > < div class ="dot g "> </ div > < span > Terminal (bash)</ span > </ div >
536+ < pre > < code > < span class ="c-comment "> # NOTE: Linux supports browser automation via CDP only</ span >
537+ < span class ="c-comment "> # Native desktop control (mouse, keyboard, a11y) is not yet supported</ span >
538+
539+ < span class ="c-comment "> # 1. Install</ span >
524540< span class ="c-cmd "> git clone</ span > < span class ="c-string "> https://github.com/AmrDab/clawdcursor.git</ span > < span class ="c-flag "> --branch v0.7.2</ span >
525541< span class ="c-cmd "> cd</ span > clawdcursor && < span class ="c-cmd "> npm install</ span > && < span class ="c-cmd "> npm run setup</ span >
526- < span class ="c-cmd "> clawdcursor start</ span > < span class ="c-comment "> # consent fires on first run</ span >
527542
528- < span class ="c-comment "> # 2. List all tools + schemas </ span >
529- < span class ="c-cmd "> GET </ span > http://localhost:3847/tools
543+ < span class ="c-comment "> # 2. Auto-detect your AI providers </ span >
544+ < span class ="c-cmd "> clawdcursor doctor </ span >
530545
531- < span class ="c-comment "> # 3. Call a tool directly</ span >
532- < span class ="c-cmd "> POST</ span > http://localhost:3847/execute/desktop_screenshot
533- < span class ="c-cmd "> POST</ span > http://localhost:3847/execute/mouse_click
534- < span class ="c-string "> { "x": 450, "y": 300 }</ span >
546+ < span class ="c-comment "> # 3. Start the agent (consent prompt on first run)</ span >
547+ < span class ="c-cmd "> clawdcursor start</ span >
535548
536- < span class ="c-comment "> # 4. Or send a plain-English task to the agent</ span >
537- < span class ="c-cmd "> POST</ span > http://localhost:3847/task
538- < span class ="c-string "> { "task": "Open Gmail and read latest email" }</ span >
549+ < span class ="c-comment "> # 4. Send a browser task</ span >
550+ < span class ="c-cmd "> clawdcursor task</ span > < span class ="c-string "> "Open Chrome and go to github.com"</ span >
551+
552+ < span class ="c-comment "> # Or use as MCP server</ span >
553+ < span class ="c-string "> {
554+ "mcpServers": {
555+ "clawdcursor": { "command": "clawdcursor", "args": ["mcp"] }
556+ }
557+ }</ span >
539558
540- < span class ="c-comment "> # Non-interactive consent for CI / scripted environments</ span >
541- < span class ="c-cmd "> clawdcursor consent --accept</ span > </ code > </ pre >
559+ < span class ="c-comment "> # Linux roadmap: xdotool / AT-SPI support planned for future release</ span > </ code > </ pre >
542560 </ div >
543561
544562 < p style ="color:var(--text3);font-size:0.78rem;margin-top:10px; "> Requires Node.js 20+. Consent is one-time and stored in < code style ="color:var(--text2) "> ~/.clawdcursor/consent</ code > . Server binds to localhost only.</ p >
@@ -565,11 +583,11 @@ <h2>Give your AI a body.</h2>
565583< script >
566584 // OS tab switcher
567585 function switchOS ( id ) {
568- [ 'mcp ' , 'agent ' , 'rest ' ] . forEach ( k => {
586+ [ 'windows ' , 'macos ' , 'linux ' ] . forEach ( k => {
569587 document . getElementById ( 'os-' + k ) . style . display = k === id ? 'block' : 'none' ;
570588 } ) ;
571589 document . querySelectorAll ( '.os-tab' ) . forEach ( ( t , i ) => {
572- t . classList . toggle ( 'active' , [ 'mcp ' , 'agent ' , 'rest ' ] [ i ] === id ) ;
590+ t . classList . toggle ( 'active' , [ 'windows ' , 'macos ' , 'linux ' ] [ i ] === id ) ;
573591 } ) ;
574592 }
575593
0 commit comments