Show HN: Claude Code Rust – a native Rust TUI that avoids the V8 heap OOM

hackernews | | 📦 오픈소스
#anthropic #claude #review
원문 출처: hackernews · Genesis Park에서 요약 및 분석

요약

Claude Code Rust는 Anthropic의 기존 Node.js 기반 터미널 인터페이스를 대체하는 네이티브 Rust 프로그램으로, 메모리 사용량을 기존 200~400MB에서 20~50MB로 대폭 줄이고 시작 시간을 0.1초 미만으로 단축하여 성능을 획기적으로 개선했습니다. 이 도구는 Agent SDK 브리지를 통해 Claude API에 연결하며, 툴 호출, 파일 편집 등 핵심 기능을 변경 없이 지원하고 Apache 2.0 라이선스 하에 배포됩니다.

본문

A native Rust terminal interface for Claude Code. Drop-in replacement for Anthropic's stock Node.js/React Ink TUI, built for performance and a better user experience. Claude Code Rust replaces the stock Claude Code terminal interface with a native Rust binary built on Ratatui. It connects to the same Claude API through a local Agent SDK bridge. Core Claude Code functionality - tool calls, file editing, terminal commands, and permissions - works unchanged. - Node.js 18+ (for the Agent SDK bridge) - Existing Claude Code authentication ( ~/.claude/config.json ) npm install -g claude-code-rust The published package installs a claude-rs command and fetches the matching prebuilt release binary for your platform during install. If claude-rs resolves to an older global shim, ensure your npm global bin directory comes first on PATH or remove the stale shim before retrying. claude-rs The stock Claude Code TUI runs on Node.js with React Ink. This causes real problems: - Memory: 200-400MB baseline vs ~20-50MB for a native binary - Startup: 2-5 seconds vs under 100ms - Scrollback: Broken virtual scrolling that loses history - Input latency: Event queue delays on keystroke handling - Copy/paste: Custom implementation instead of native terminal support Claude Code Rust fixes all of these by compiling to a single native binary with direct terminal control via Crossterm. Three-layer design: Presentation (Rust/Ratatui) - Single binary with an async event loop (Tokio) handling keyboard input and bridge client events concurrently. Virtual-scrolled chat history with syntax-highlighted code blocks. Agent SDK Bridge (stdio JSON envelopes) - Spawns agent-sdk/dist/bridge.js as a child process and communicates via line-delimited JSON envelopes over stdin/stdout. Bidirectional streaming for user messages, tool updates, and permission requests. Agent Runtime (Anthropic Agent SDK) - The TypeScript bridge drives @anthropic-ai/claude-agent-sdk , which manages authentication, session/query lifecycle, and tool execution. This project is pre-1.0 and under active development. See CONTRIBUTING.md for how to get involved. Startup is still constrained by the upstream Claude Agent SDK runtime that this TUI wraps. The Rust interface itself is fast, but end-to-end readiness can still take noticeable time before a session is fully available. Improving that remains an active area of work. This project is licensed under the Apache License 2.0. Apache-2.0 was chosen to keep usage and redistribution straightforward for individual users, downstream packagers, and commercial adopters. This project is not affiliated with, endorsed by, or supported by Anthropic. A quick note on where this project stands, since I know people worry about this kind of thing: claude-code-rust is a terminal UI that I wrote from scratch in Rust. It is not a fork, copy or port of the latest Claude Code source leak -- it talks to Anthropic's official Agent SDK as a runtime dependency instead, the same way any other third-party tool would. No Anthropic source code was read or used as reference at any point during development. The project uses your existing Claude Code subscription via the Agent SDK and the Agent SDK's terms allow building on top of it. Other community projects do the same. As far as I can tell, using this project is fine -- but I am a single maintainer, not a lawyer. If anything changes on Anthropic's end, I will update this section and adjust the project accordingly. This project's source code is licensed under Apache-2.0. The Agent SDK itself is proprietary and governed by Anthropic's Commercial Terms of Service. For official Claude documentation, see https://claude.ai/docs.

Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.

공유

관련 저널 읽기

전체 보기 →