mirror of
https://github.com/instructkr/claw-code.git
synced 2026-04-05 16:39:04 +08:00
The merged command surface still listed /skills but treated every positional argument as unexpected usage text, so slash-based skill invocation regressed. This wires /skills and /agents invocations back through the prompt path, shares skill resolution between the slash/discovery layer and the Skill tool, and teaches skill discovery to see enabled plugin roots plus namespaced plugin skills such as oh-my-claudecode:ralplan. Constraint: Keep documentation files untouched while restoring the runtime behavior Rejected: Add a separate skill-invoke tool name | existing Skill tool already covered the loading surface once resolution was fixed Rejected: Resolve plugin skills only inside the slash handler | would leave the Skill tool and direct invocation path inconsistent Confidence: high Scope-risk: moderate Reversibility: clean Directive: Keep slash discovery/help behavior and Skill-tool resolution on the same registry path so plugin and project skills do not drift again Tested: cargo check; cargo test; direct /skills help overview smoke run Not-tested: End-to-end live provider execution for a real installed oh-my-claudecode plugin beyond synthetic fixture coverage
Claw Code
Claw Code is a local coding-agent CLI implemented in safe Rust. It is Claude Code inspired and developed as a clean-room implementation: it aims for a strong local agent experience, but it is not a direct port or copy of Claude Code.
The Rust workspace is the current main product surface. The claw binary provides interactive sessions, one-shot prompts, workspace-aware tools, local agent workflows, and plugin-capable operation from a single workspace.
Current status
- Version:
0.1.0 - Release stage: initial public release, source-build distribution
- Primary implementation: Rust workspace in this repository
- Platform focus: macOS and Linux developer workstations
Install, build, and run
Prerequisites
- Rust stable toolchain
- Cargo
- Provider credentials for the model you want to use
Authentication
Anthropic-compatible models:
export ANTHROPIC_API_KEY="..."
# Optional when using a compatible endpoint
export ANTHROPIC_BASE_URL="https://api.anthropic.com"
Grok models:
export XAI_API_KEY="..."
# Optional when using a compatible endpoint
export XAI_BASE_URL="https://api.x.ai"
OAuth login is also available:
cargo run --bin claw -- login
Install locally
cargo install --path crates/claw-cli --locked
Build from source
cargo build --release -p claw-cli
Run
From the workspace:
cargo run --bin claw -- --help
cargo run --bin claw --
cargo run --bin claw -- prompt "summarize this workspace"
cargo run --bin claw -- --model sonnet "review the latest changes"
From the release build:
./target/release/claw
./target/release/claw prompt "explain crates/runtime"
Supported capabilities
- Interactive REPL and one-shot prompt execution
- Saved-session inspection and resume flows
- Built-in workspace tools for shell, file read/write/edit, search, web fetch/search, todos, and notebook updates
- Slash commands for status, compaction, config inspection, diff, export, session management, and version reporting
- Local agent and skill discovery with
claw agentsandclaw skills - Plugin discovery and management through the CLI and slash-command surfaces
- OAuth login/logout plus model/provider selection from the command line
- Workspace-aware instruction/config loading (
CLAW.md, config files, permissions, plugin settings)
Current limitations
- Public distribution is source-build only today; this workspace is not set up for crates.io publishing
- GitHub CI verifies
cargo check,cargo test, and release builds, but automated release packaging is not yet present - Current CI targets Ubuntu and macOS; Windows release readiness is still to be established
- Some live-provider integration coverage is opt-in because it requires external credentials and network access
- The command surface may continue to evolve during the
0.xseries
Implementation
The Rust workspace is the active product implementation. It currently includes these crates:
claw-cli— user-facing binaryapi— provider clients and streamingruntime— sessions, config, permissions, prompts, and runtime looptools— built-in tool implementationscommands— slash-command registry and handlersplugins— plugin discovery, registry, and lifecycle supportlsp— language-server protocol support types and process helpersserverandcompat-harness— supporting services and compatibility tooling
Roadmap
- Publish packaged release artifacts for public installs
- Add a repeatable release workflow and longer-lived changelog discipline
- Expand platform verification beyond the current CI matrix
- Add more task-focused examples and operator documentation
- Continue tightening feature coverage and UX polish across the Rust implementation
Release notes
- Draft 0.1.0 release notes:
docs/releases/0.1.0.md
License
See the repository root for licensing details.