YeonGyu-Kim 65d9b1a362 roadmap: #230 filed — Computer-use API typed taxonomy and host-machine-state-management transport are structurally absent: zero computer-use-2025-01-24 + zero computer-use-2025-11-24 anthropic-beta opt-in (FIRST cluster member with two concurrent beta-version-tiers gating one capability), zero computer_20250124/computer_20251124/bash_20250124/text_editor_20250124 Anthropic-typed-tool-discriminator (FIRST cluster member requiring type field on tool-definitions and FIRST anthropic-defined-tools-without-input-schema), zero display_width_px/display_height_px/display_number parametrized-tool-definition fields, zero Image variant on ToolResultContentBlock at types.rs:99 (FIRST cluster member with image-content on TOOL-RESULT side, distinct from #220's image-on-USER-INPUT-side — complementary architectures requiring separate enums), zero screen_capture/mouse_move/key_press/type_text host-machine-interaction primitive across all 26+ tool definitions in tools/lib.rs, zero CGEvent/ScreenCaptureKit/Quartz/AppKit/xdotool/cliclick/enigo/rdev/xcap host-OS library deps, zero Xvfb/Xephyr/Wayland-headless/Docker virtual-display-sandbox-orchestration, zero claw computer/operate CLI subcommand, /desktop slash command at commands/lib.rs:422 advertised-but-unbuilt under STUB_COMMANDS (the SIXTH advertised-but-unbuilt entry in cluster), zero per-action permissions.rs gating for mouse_click/key_press/type/screenshot, zero feedback-loop-state-machine for screenshot→tool_use→action→screenshot iteration, zero playwright-rust/chromiumoxide for browser-only-cua subset, zero per-screenshot-input-token cost field in ModelPricing — uniquely manifesting an ELEVEN-LAYER fusion shape combining: (1) anthropic-beta-DUAL-version-tier routing (FIRST), (2) Anthropic-typed-tool-definition discriminator (FIRST), (3) parametrized-tool-definition with display dimensions (FIRST), (4) Image-on-ToolResult side (FIRST, complementary to #220), (5) host-OS-system-call transport (FIRST host-OS-syscall transport, distinct from #229's WebSocket which is still network-only — second non-HTTP transport in cluster after WebSocket but FIRST that breaks network-only boundary), (6) virtual-display-sandbox orchestration (FIRST CLIENT-SIDE virtualization), (7) feedback-loop-state-machine for screenshot iteration loop (FIRST N-turn-loop-controller), (8) per-action-permission-policy at sub-tool-granularity (FIRST sub-tool-action permission gating, parallel to bash's DangerFullAccess but at action granularity), (9) request-side three-concurrent-opt-in (largest yet), (10) CLI-and-slash-command surface with /desktop advertised-but-unbuilt (sixth entry, largest in cluster), (11) host-machine-state-management transport-axis (NOVEL ELEVENTH layer with screen-capture+synthetic-input+display-dimension-query+window-enum+VM-orchestration+accessibility-permissions+per-action-permission-prompts+coordinate-validation+screenshot-encoding+safety-throttling — distinct from every prior cluster member which operated network-only) — making #230 the first cluster member with eleven-layer-fusion-shape (exceeds #229's ten-layer), the FIRST host-OS-syscall-transport requirement, the FIRST CLIENT-SIDE virtualization requirement, the FIRST inverse-asymmetric-delegation case (Anthropic LEADS, OpenAI follows with Operator, Google follows with Mariner — novel inversion of #224-#229's Anthropic-trails pattern), the FIRST cluster member with image-content on TOOL-RESULT-side, and the FIRST gap where upstream claude-code ALSO has only a stub (Jobdori cycle #381 / extends #168c emission-routing audit / explicit follow-on from #229's persistent-WebSocket-transport founder pinpoint and #225's audio-bidirectional axis — introduces a NOVEL HOST-MACHINE-STATE-MANAGEMENT transport-axis distinct from every prior cluster member / sibling-shape cluster grows to twenty-nine / wire-format-parity cluster grows to twenty / capability-parity cluster grows to twelve / multimodal-IO cluster grows to eight: #220 image-input + #224 embedding-output + #225 audio-bidirectional + #226 image-output + #227 video-output + #228 mesh-output + #229 audio-text-tool-multiplex-on-WebSocket + #230 image-on-tool-result-side+host-OS-pixel-and-input modality / provider-asymmetric-delegation cluster grows to seven with novel inverse-sub-cluster (Anthropic leads, distinct from #224-#229's Anthropic-trails pattern) / EIGHT new clusters founded in a single pinpoint (exceeds #229's three): Beta-version-tier-routing 1-member-founder + Image-on-tool-result-side 1-member-founder + Anthropic-typed-tool-discriminator 1-member-founder + Host-OS-system-call-transport 1-member-founder + Virtual-display-sandbox-orchestration 1-member-founder + Feedback-loop-state-machine 1-member-founder + Per-action-permission-policy-at-sub-tool-granularity 1-member-founder + Inverse-asymmetric-delegation 1-member-founder — the largest single-cycle cluster-founding count yet / eleven-layer-fusion-shape is the largest single-pinpoint fusion catalogued / external validation: sixty-two ecosystem references covering Anthropic Computer Use API GA 2024-10-22 with computer-use-2024-10-22 → computer-use-2025-01-24 → computer-use-2025-11-24 beta-tier evolution, Anthropic computer-use-demo reference with Docker+Xvfb+XFCE+Firefox+VNC sandbox pattern, OpenAI Operator + computer_use_preview, Google Project Mariner, Microsoft Magentic-One, Adept ACT-1, ByteDance UI-TARS open-weight, browser-use Python framework, Stagehand TypeScript, Skyvern AI, Multion, Cua framework, LangChain ChatAnthropic.with_computer_use_tool, LangGraph computer-use agent, smolagents ComputerAgent, AgentOps observability, screen-capture libs (ScreenCaptureKit/xcap/screenshots/xdotool/wtype/cliclick/nut.js), synthetic-input libs (enigo/rdev/inputbot/mouce/pyautogui/RobotJS), browser-cua stacks (playwright-rust/chromiumoxide/headless_chrome/fantoccini/playwright/puppeteer), sandbox-orchestration (Docker-Xvfb-XFCE / Kasm Workspaces / noVNC / Browserbase / Steel-browser / Hyperbrowser / Lightpanda / Surf.ai), per-action permission-policy precedent from claw-code's existing bash DangerFullAccess gating — claw-code is one of MULTIPLE coding-agent clients without computer-use BUT the gap is uniformly zero across the surveyed coding-agent ecosystem AND Anthropic specifically positions Claude as the LEADING commercial computer-use model AND claw-code is a port of claude-code which advertises /desktop slash command intent, making this the largest leading-vs-trailing parity gap with the upstream Anthropic platform in the entire emission-routing audit and the FIRST cluster member where upstream claude-code ALSO has only a stub — #230 closes the upstream prerequisite of every desktop-automation/browser-automation/form-filling/GUI-testing/accessibility-tool/screen-reading/vision-grounded-coding/pair-programming-with-screen-share/visual-debugging coding-agent affordance — the canonical 2024-2026-era agentic coding workflow that is currently impossible to build on top of claw-code)
2026-04-26 05:09:48 +09:00
2026-04-07 15:52:30 +09:00
roadmap: #230 filed — Computer-use API typed taxonomy and host-machine-state-management transport are structurally absent: zero computer-use-2025-01-24 + zero computer-use-2025-11-24 anthropic-beta opt-in (FIRST cluster member with two concurrent beta-version-tiers gating one capability), zero computer_20250124/computer_20251124/bash_20250124/text_editor_20250124 Anthropic-typed-tool-discriminator (FIRST cluster member requiring type field on tool-definitions and FIRST anthropic-defined-tools-without-input-schema), zero display_width_px/display_height_px/display_number parametrized-tool-definition fields, zero Image variant on ToolResultContentBlock at types.rs:99 (FIRST cluster member with image-content on TOOL-RESULT side, distinct from #220's image-on-USER-INPUT-side — complementary architectures requiring separate enums), zero screen_capture/mouse_move/key_press/type_text host-machine-interaction primitive across all 26+ tool definitions in tools/lib.rs, zero CGEvent/ScreenCaptureKit/Quartz/AppKit/xdotool/cliclick/enigo/rdev/xcap host-OS library deps, zero Xvfb/Xephyr/Wayland-headless/Docker virtual-display-sandbox-orchestration, zero claw computer/operate CLI subcommand, /desktop slash command at commands/lib.rs:422 advertised-but-unbuilt under STUB_COMMANDS (the SIXTH advertised-but-unbuilt entry in cluster), zero per-action permissions.rs gating for mouse_click/key_press/type/screenshot, zero feedback-loop-state-machine for screenshot→tool_use→action→screenshot iteration, zero playwright-rust/chromiumoxide for browser-only-cua subset, zero per-screenshot-input-token cost field in ModelPricing — uniquely manifesting an ELEVEN-LAYER fusion shape combining: (1) anthropic-beta-DUAL-version-tier routing (FIRST), (2) Anthropic-typed-tool-definition discriminator (FIRST), (3) parametrized-tool-definition with display dimensions (FIRST), (4) Image-on-ToolResult side (FIRST, complementary to #220), (5) host-OS-system-call transport (FIRST host-OS-syscall transport, distinct from #229's WebSocket which is still network-only — second non-HTTP transport in cluster after WebSocket but FIRST that breaks network-only boundary), (6) virtual-display-sandbox orchestration (FIRST CLIENT-SIDE virtualization), (7) feedback-loop-state-machine for screenshot iteration loop (FIRST N-turn-loop-controller), (8) per-action-permission-policy at sub-tool-granularity (FIRST sub-tool-action permission gating, parallel to bash's DangerFullAccess but at action granularity), (9) request-side three-concurrent-opt-in (largest yet), (10) CLI-and-slash-command surface with /desktop advertised-but-unbuilt (sixth entry, largest in cluster), (11) host-machine-state-management transport-axis (NOVEL ELEVENTH layer with screen-capture+synthetic-input+display-dimension-query+window-enum+VM-orchestration+accessibility-permissions+per-action-permission-prompts+coordinate-validation+screenshot-encoding+safety-throttling — distinct from every prior cluster member which operated network-only) — making #230 the first cluster member with eleven-layer-fusion-shape (exceeds #229's ten-layer), the FIRST host-OS-syscall-transport requirement, the FIRST CLIENT-SIDE virtualization requirement, the FIRST inverse-asymmetric-delegation case (Anthropic LEADS, OpenAI follows with Operator, Google follows with Mariner — novel inversion of #224-#229's Anthropic-trails pattern), the FIRST cluster member with image-content on TOOL-RESULT-side, and the FIRST gap where upstream claude-code ALSO has only a stub (Jobdori cycle #381 / extends #168c emission-routing audit / explicit follow-on from #229's persistent-WebSocket-transport founder pinpoint and #225's audio-bidirectional axis — introduces a NOVEL HOST-MACHINE-STATE-MANAGEMENT transport-axis distinct from every prior cluster member / sibling-shape cluster grows to twenty-nine / wire-format-parity cluster grows to twenty / capability-parity cluster grows to twelve / multimodal-IO cluster grows to eight: #220 image-input + #224 embedding-output + #225 audio-bidirectional + #226 image-output + #227 video-output + #228 mesh-output + #229 audio-text-tool-multiplex-on-WebSocket + #230 image-on-tool-result-side+host-OS-pixel-and-input modality / provider-asymmetric-delegation cluster grows to seven with novel inverse-sub-cluster (Anthropic leads, distinct from #224-#229's Anthropic-trails pattern) / EIGHT new clusters founded in a single pinpoint (exceeds #229's three): Beta-version-tier-routing 1-member-founder + Image-on-tool-result-side 1-member-founder + Anthropic-typed-tool-discriminator 1-member-founder + Host-OS-system-call-transport 1-member-founder + Virtual-display-sandbox-orchestration 1-member-founder + Feedback-loop-state-machine 1-member-founder + Per-action-permission-policy-at-sub-tool-granularity 1-member-founder + Inverse-asymmetric-delegation 1-member-founder — the largest single-cycle cluster-founding count yet / eleven-layer-fusion-shape is the largest single-pinpoint fusion catalogued / external validation: sixty-two ecosystem references covering Anthropic Computer Use API GA 2024-10-22 with computer-use-2024-10-22 → computer-use-2025-01-24 → computer-use-2025-11-24 beta-tier evolution, Anthropic computer-use-demo reference with Docker+Xvfb+XFCE+Firefox+VNC sandbox pattern, OpenAI Operator + computer_use_preview, Google Project Mariner, Microsoft Magentic-One, Adept ACT-1, ByteDance UI-TARS open-weight, browser-use Python framework, Stagehand TypeScript, Skyvern AI, Multion, Cua framework, LangChain ChatAnthropic.with_computer_use_tool, LangGraph computer-use agent, smolagents ComputerAgent, AgentOps observability, screen-capture libs (ScreenCaptureKit/xcap/screenshots/xdotool/wtype/cliclick/nut.js), synthetic-input libs (enigo/rdev/inputbot/mouce/pyautogui/RobotJS), browser-cua stacks (playwright-rust/chromiumoxide/headless_chrome/fantoccini/playwright/puppeteer), sandbox-orchestration (Docker-Xvfb-XFCE / Kasm Workspaces / noVNC / Browserbase / Steel-browser / Hyperbrowser / Lightpanda / Surf.ai), per-action permission-policy precedent from claw-code's existing bash DangerFullAccess gating — claw-code is one of MULTIPLE coding-agent clients without computer-use BUT the gap is uniformly zero across the surveyed coding-agent ecosystem AND Anthropic specifically positions Claude as the LEADING commercial computer-use model AND claw-code is a port of claude-code which advertises /desktop slash command intent, making this the largest leading-vs-trailing parity gap with the upstream Anthropic platform in the entire emission-routing audit and the FIRST cluster member where upstream claude-code ALSO has only a stub — #230 closes the upstream prerequisite of every desktop-automation/browser-automation/form-filling/GUI-testing/accessibility-tool/screen-reading/vision-grounded-coding/pair-programming-with-screen-share/visual-debugging coding-agent affordance — the canonical 2024-2026-era agentic coding workflow that is currently impossible to build on top of claw-code)
2026-04-26 05:09:48 +09:00

Claw Code

ultraworkers/claw-code · Usage · Error Handling · Rust workspace · Parity · Roadmap · UltraWorkers Discord

Star history for ultraworkers/claw-code

Claw Code

Claw Code is the public Rust implementation of the claw CLI agent harness. The canonical implementation lives in rust/, and the current source of truth for this repository is ultraworkers/claw-code.

Important

Start with USAGE.md for build, auth, CLI, session, and parity-harness workflows. Make claw doctor your first health check after building, use rust/README.md for crate-level details, read PARITY.md for the current Rust-port checkpoint, and see docs/container.md for the container-first workflow.

ACP / Zed status: claw-code does not ship an ACP/Zed daemon entrypoint yet. Run claw acp (or claw --acp) for the current status instead of guessing from source layout; claw acp serve is currently a discoverability alias only, and real ACP support remains tracked separately in ROADMAP.md.

Current repository shape

  • rust/ — canonical Rust workspace and the claw CLI binary
  • USAGE.md — task-oriented usage guide for the current product surface
  • ERROR_HANDLING.md — unified error-handling pattern for orchestration code
  • PARITY.md — Rust-port parity status and migration notes
  • ROADMAP.md — active roadmap and cleanup backlog
  • PHILOSOPHY.md — project intent and system-design framing
  • SCHEMAS.md — JSON protocol contract (Python harness reference)
  • src/ + tests/ — companion Python/reference workspace and audit helpers; not the primary runtime surface

Quick start

Note

[!WARNING] cargo install claw-code installs the wrong thing. The claw-code crate on crates.io is a deprecated stub that places claw-code-deprecated.exe — not claw. Running it only prints "claw-code has been renamed to agent-code". Do not use cargo install claw-code. Either build from source (this repo) or install the upstream binary:

cargo install agent-code   # upstream binary — installs 'agent.exe' (Windows) / 'agent' (Unix), NOT 'agent-code'

This repo (ultraworkers/claw-code) is build-from-source only — follow the steps below.

# 1. Clone and build
git clone https://github.com/ultraworkers/claw-code
cd claw-code/rust
cargo build --workspace

# 2. Set your API key (Anthropic API key — not a Claude subscription)
export ANTHROPIC_API_KEY="sk-ant-..."

# 3. Verify everything is wired correctly
./target/debug/claw doctor

# 4. Run a prompt
./target/debug/claw prompt "say hello"

Note

Windows (PowerShell): the binary is claw.exe, not claw. Use .\target\debug\claw.exe or run cargo run -- prompt "say hello" to skip the path lookup.

Windows setup

PowerShell is a supported Windows path. Use whichever shell works for you. The common onboarding issues on Windows are:

  1. Install Rust first — download from https://rustup.rs/ and run the installer. Close and reopen your terminal when it finishes.
  2. Verify Rust is on PATH:
    cargo --version
    
    If this fails, reopen your terminal or run the PATH setup from the Rust installer output, then retry.
  3. Clone and build (works in PowerShell, Git Bash, or WSL):
    git clone https://github.com/ultraworkers/claw-code
    cd claw-code/rust
    cargo build --workspace
    
  4. Run (PowerShell — note .exe and backslash):
    $env:ANTHROPIC_API_KEY = "sk-ant-..."
    .\target\debug\claw.exe prompt "say hello"
    

Git Bash / WSL are optional alternatives, not requirements. If you prefer bash-style paths (/c/Users/you/... instead of C:\Users\you\...), Git Bash (ships with Git for Windows) works well. In Git Bash, the MINGW64 prompt is expected and normal — not a broken install.

Post-build: locate the binary and verify

After running cargo build --workspace, the claw binary is built but not automatically installed to your system. Here's where to find it and how to verify the build succeeded.

Binary location

After cargo build --workspace in claw-code/rust/:

Debug build (default, faster compile):

  • macOS/Linux: rust/target/debug/claw
  • Windows: rust/target/debug/claw.exe

Release build (optimized, slower compile):

  • macOS/Linux: rust/target/release/claw
  • Windows: rust/target/release/claw.exe

If you ran cargo build without --release, the binary is in the debug/ folder.

Verify the build succeeded

Test the binary directly using its path:

# macOS/Linux (debug build)
./rust/target/debug/claw --help
./rust/target/debug/claw doctor

# Windows PowerShell (debug build)
.\rust\target\debug\claw.exe --help
.\rust\target\debug\claw.exe doctor

If these commands succeed, the build is working. claw doctor is your first health check — it validates your API key, model access, and tool configuration.

Optional: Add to PATH

If you want to run claw from any directory without the full path, choose one of these approaches:

Option 1: Symlink (macOS/Linux)

ln -s $(pwd)/rust/target/debug/claw /usr/local/bin/claw

Then reload your shell and test:

claw --help

Option 2: Use cargo install (all platforms)

Build and install to Cargo's default location (~/.cargo/bin/, which is usually on PATH):

# From the claw-code/rust/ directory
cargo install --path . --force

# Then from anywhere
claw --help

Option 3: Update shell profile (bash/zsh)

Add this line to ~/.bashrc or ~/.zshrc:

export PATH="$(pwd)/rust/target/debug:$PATH"

Reload your shell:

source ~/.bashrc  # or source ~/.zshrc
claw --help

Troubleshooting

  • "command not found: claw" — The binary is in rust/target/debug/claw, but it's not on your PATH. Use the full path ./rust/target/debug/claw or symlink/install as above.
  • "permission denied" — On macOS/Linux, you may need chmod +x rust/target/debug/claw if the executable bit isn't set (rare).
  • Debug vs. release — If the build is slow, you're in debug mode (default). Add --release to cargo build for faster runtime, but the build itself will take 510 minutes.

Note

Auth: claw requires an API key (ANTHROPIC_API_KEY, OPENAI_API_KEY, etc.) — Claude subscription login is not a supported auth path.

Run the workspace test suite after verifying the binary works:

cd rust
cargo test --workspace

Documentation map

Ecosystem

Claw Code is built in the open alongside the broader UltraWorkers toolchain:

Ownership / affiliation disclaimer

  • This repository does not claim ownership of the original Claude Code source material.
  • This repository is not affiliated with, endorsed by, or maintained by Anthropic.
Description
The repo is finally unlocked. enjoy the party! The fastest repo in history to surpass 100K stars . Join Discord: https://discord.gg/5TUQKqFWd Built in Rust using oh-my-codex.
Readme 60 MiB
Languages
Rust 96.4%
Python 3.2%
Shell 0.4%