linesmith
A Rust status line for Claude Code and other AI coding CLIs. Fast cold start, real plugin API, role-based themes, and correctness-first handling of context, rate limits, and worktrees.
Status: bootstrap phase. Docs and tooling foundation complete; Rust scaffold and v0.1 pending.
Why
Existing Claude Code status line tools have real gaps:
- Trust and resources.
npx -y @latestauto-executes unreviewed code and can spawn 30+ Node processes at 3GB RAM under rapid use. - Correctness. Context %, rate limits, and worktree state all break in common edge cases (1M context,
/compact,/resume, 429s, parallel worktrees). - No plugin API. Every existing tool hardcodes its widgets. Custom segments require forking.
- No curated onboarding. Users repeatedly ask for "copy a preset and go."
linesmith is built to close those gaps.
Design in one paragraph
A single static Rust binary (~3-5MB, <20ms cold start) reads Claude Code's status line JSON on stdin and renders a composable line with a rich segment system: priority, width hints, conditional visibility, caching, async, and sub-composition. User extensions are written in rhai and loaded from a config directory. Themes are role-based (Catppuccin-compatible). The input schema is tool-agnostic; it works with Claude Code and Qwen Code today, with Codex CLI and GitHub Copilot CLI ready to slot in when they ship compatible APIs.
See docs/adrs/ for the decision rationale behind each piece and docs/research/ for the research that drove those decisions.
Install
Not yet — v0.1 has not shipped. Once it does, install will be one of:
# macOS / Linux
|
# Homebrew (macOS, Linux)
# Windows PowerShell
# Rust users
Distribution is handled by cargo-dist.
Configure (planned)
Wire linesmith into Claude Code's ~/.claude/settings.json:
linesmith reads its own config from ~/.config/linesmith/config.toml:
= "catppuccin-mocha"
[]
= [
"model",
"workspace", # directory/worktree hybrid
"git_branch",
"context_window",
"cost",
"rate_limit",
]
[]
= "bar"
= 10
Drop a .rhai file in ~/.config/linesmith/segments/ to add a custom segment.
Documentation
| Folder | Contents |
|---|---|
docs/research/ |
Surveys and deep dives (API contract, competitor landscape, user demand, Rust crate survey, cross-tool support) |
docs/adrs/ |
Architecture Decision Records (MADR v4.0) — why Rust, why rhai, how segments compose, theming model, schema, distribution |
docs/specs/ |
Implementation contracts (written as features are built) |
docs/ideas/ |
Exploratory notes |
AGENTS.md |
Instructions for AI coding agents working on this project |
See docs/README.md for the full pipeline: how research flows to ideas to ADRs to specs to tasks.
Development
Managed by mise:
Commit style: Conventional Commits enforced by cog.
License
MIT. The core stays open source; any future plugin ecosystem can ship under any license.