Files
claw-code/rust
Yeachan-Heo 4586764a0e feat(api): match Claude auth headers and layofflabs request format
Trace the local Claude Code TS request path and align the Rust client with its
non-OAuth direct-request behavior. The Rust client now resolves the message base
URL from ANTHROPIC_BASE_URL, uses ANTHROPIC_API_KEY for x-api-key, and sends
ANTHROPIC_AUTH_TOKEN as a Bearer Authorization header when present.

Constraint: Must match the local Claude Code source request/auth split, not inferred behavior
Rejected: Treat ANTHROPIC_AUTH_TOKEN as the x-api-key source | diverges from local TS client path
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep direct /v1/messages auth handling aligned with src/services/api/client.ts and src/utils/auth.ts when changing env precedence
Tested: cargo test -p api; cargo run -p rusty-claude-cli -- prompt "say hello"
Not-tested: Non-default proxy transport features beyond ANTHROPIC_BASE_URL override
2026-03-31 19:00:48 +00:00
..
2026-03-31 17:43:09 +00:00
2026-03-31 17:43:09 +00:00

Rust port foundation

This directory contains the first compatibility-first Rust foundation for a drop-in Claude Code CLI replacement.

Current milestone

This initial milestone focuses on harness-first scaffolding, not full feature parity:

  • a Cargo workspace aligned to major upstream seams
  • a placeholder CLI crate (rusty-claude-cli)
  • runtime, command, and tool registry skeleton crates
  • a compat-harness crate that reads the upstream TypeScript sources in ../src/
  • tests that prove upstream manifests/bootstrap hints can be extracted from the leaked TypeScript codebase

Workspace layout

rust/
├── Cargo.toml
├── README.md
├── crates/
│   ├── rusty-claude-cli/
│   ├── runtime/
│   ├── commands/
│   ├── tools/
│   └── compat-harness/
└── tests/

How to use

From this directory:

cargo fmt --all
cargo check --workspace
cargo test --workspace
cargo run -p rusty-claude-cli -- --help
cargo run -p rusty-claude-cli -- dump-manifests
cargo run -p rusty-claude-cli -- bootstrap-plan

Design notes

The shape follows the PRD's harness-first recommendation:

  1. Extract observable upstream command/tool/bootstrap facts first.
  2. Keep Rust module boundaries recognizable.
  3. Grow runtime compatibility behind proof artifacts.
  4. Document explicit gaps instead of implying drop-in parity too early.

Relationship to the root README

The repository root README explains the leaked TypeScript codebase. This document tracks the Rust replacement effort that lives in rust/.