Wes 396ab4154b feat: surface ACP model and token info in status bar and chat input (#53)
* feat: wire ACP token/context info into status bar and chat input

Surface model name and context window usage in the UI:
- Redesign StatusBar with Bot icon and model name display
- Add contextLimit to TokenState for context window tracking
- Wire tokenState from chatStore through ChatView to ChatInput
- Add acp:usage_update event listener in useAcpStream (ready for
  backend plumbing)

The ContextRing in ChatInputToolbar will activate once the backend
emits acp:usage_update events with context window size data.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: show truncated session ID next to copy button in status bar

The previous change hid the session ID text and only showed the copy
icon. Restore the first 8 characters of the session ID as visible text.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: remove always-red status dot from StatusBar

The status dot was permanently red because `setConnected(true)` is
never called anywhere in the codebase. Remove the dead code: the dot,
the statusColor map, the status prop, and the connectionStatus
derivation in AppShell.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: use npx for biome in justfile fmt-check recipe

The bare `biome` command fails when invoked from lefthook's pre-push
hook because node_modules/.bin isn't on PATH. Use `npx biome` to
match the pattern used in pre-commit hooks.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: respect direct accumulatedTotal in updateTokenState reducer

The reducer always recomputed accumulatedTotal as accumulatedInput +
accumulatedOutput, silently dropping any directly-passed value. This
meant acp:usage_update events (which only provide a total used count)
were ignored, keeping the context ring at 0.

Now partial.accumulatedTotal takes precedence when provided, falling
back to the input + output sum otherwise.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-01 11:12:04 -07:00
S
Description
an open-source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM
Apache-2.0 2 GiB
Languages
Rust 63.6%
TypeScript 29.6%
JavaScript 1.7%
Shell 1.6%
Python 1.5%
Other 1.8%