feat: Rust port of Claude Code CLI

Crates:
- api: Anthropic Messages API client with SSE streaming
- tools: Claude-compatible tool implementations (Bash, Read, Write, Edit, Glob, Grep + extended suite)
- runtime: conversation loop, session persistence, permissions, system prompt builder
- rusty-claude-cli: terminal UI with markdown rendering, syntax highlighting, spinners
- commands: subcommand definitions
- compat-harness: upstream TS parity verification

All crates pass cargo fmt/clippy/test.
This commit is contained in:
Yeachan-Heo
2026-03-31 17:43:09 +00:00
parent 01bf54ad15
commit 44e4758078
34 changed files with 8127 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
mod bootstrap;
mod conversation;
mod json;
mod permissions;
mod prompt;
mod session;
pub use bootstrap::{BootstrapPhase, BootstrapPlan};
pub use conversation::{
ApiClient, ApiRequest, AssistantEvent, ConversationRuntime, RuntimeError, StaticToolExecutor,
ToolError, ToolExecutor, TurnSummary,
};
pub use permissions::{
PermissionMode, PermissionOutcome, PermissionPolicy, PermissionPromptDecision,
PermissionPrompter, PermissionRequest,
};
pub use prompt::{
prepend_bullets, SystemPromptBuilder, FRONTIER_MODEL_NAME, SYSTEM_PROMPT_DYNAMIC_BOUNDARY,
};
pub use session::{ContentBlock, ConversationMessage, MessageRole, Session, SessionError};