feat: stuffy feature bundle #159

Merged
naomi merged 14 commits from feat/stuffy into main 2026-02-24 20:48:50 -08:00

14 Commits

Author SHA1 Message Date
hikari b5c67cb4df chore: bump supported CLI version to 2.1.50
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 59s
CI / Lint & Test (pull_request) Successful in 16m10s
CI / Build Linux (pull_request) Successful in 20m2s
CI / Build Windows (cross-compile) (pull_request) Successful in 30m29s
2026-02-24 20:09:57 -08:00
hikari 9e2f2912bc feat: add disable_1m_context toggle to settings UI
Adds a new config option to expose the CLAUDE_CODE_DISABLE_1M_CONTEXT
environment variable through the settings sidebar, allowing users to
opt out of the extended 1M context window without manually setting
environment variables.

Closes #154
2026-02-24 20:05:50 -08:00
hikari ca08b990d8 fix: extract last_assistant_message from ToolResult content in JSON stream
Previously the feature relied on SubagentStop hook events via stderr,
but Claude Code writes nothing to stderr. Instead, extract the agent's
final output from the ToolResult content block in the stdout JSON stream,
which contains the actual task result text. Handles both plain string
and array-of-content-block formats.
2026-02-24 19:49:21 -08:00
hikari 1fe39bbbc1 feat: surface last_assistant_message from SubagentStop hook payloads
Extracts last_assistant_message from SubagentStop hook events and
surfaces it in the agent monitor panel as a summary snippet below
each completed agent card.

Closes #156
2026-02-24 18:26:12 -08:00
hikari 5063a4f415 feat: display ConfigChange hook events in terminal
Detects [ConfigChange Hook] lines in stderr and emits them as
config-change line type with [config] prefix in purple.

Closes #151
2026-02-24 18:07:53 -08:00
hikari 54280b3920 feat: add worktree isolation support and hook event display
Closes #152, closes #150

- Add use_worktree bool to ClaudeStartOptions and HikariConfig (Rust + TS)
- Pass --worktree flag to claude in both WSL and non-WSL command paths
- Detect WorktreeCreate/WorktreeRemove hook events in stderr handler
- Emit worktree events with distinct line_type instead of error
- Add worktree line type to TerminalLine union, Terminal rendering, and tests
- Display worktree events in green with [worktree] prefix
- Add worktree isolation toggle to Agent Settings section of ConfigSidebar
- Thread use_worktree through all seven start_claude call sites
2026-02-24 17:39:09 -08:00
hikari 108a1b16b2 feat: detect prompt-too-long errors and offer compact action
Closes #158

- Detect "Prompt is too long" in assistant text blocks in wsl_bridge
- Emit error line type instead of assistant for better visibility
- Emit compact-prompt event after the error line
- Render a compact-prompt line as an action button in the terminal
- Clicking the button sends /compact to the active session
- Add getLineClass/getLinePrefix tests for compact-prompt type
2026-02-24 17:18:44 -08:00
hikari 1c02ca1bb5 feat: parse and display rate_limit_event messages from Claude CLI
Closes #155

- Add RateLimitInfo struct and RateLimitEvent variant to ClaudeMessage
- Emit rate-limit OutputEvent with human-readable message in wsl_bridge
- Add rate-limit line type to TerminalLine union and Terminal rendering
- Display rate-limit lines in amber with [rate-limit] prefix
- Add Terminal.test.ts with 28 tests for getLineClass, getLinePrefix,
  formatTime, isToolContentLong, and truncateToolContent
2026-02-24 16:28:33 -08:00
hikari ac965ebe92 feat: add auth status display and account management to settings sidebar
Implements issue #153. Adds Account section to ConfigSidebar with:
- Claude auth status (logged in/out, email, org, plan, API source)
- API key override indicator reading from local Hikari config
- Login/logout action buttons
- Refresh button for manual status updates

Adds Rust commands: get_auth_status, auth_login, auth_logout
2026-02-24 14:35:51 -08:00
hikari 5cdb4508aa feat: clean up CLI version display and add compatibility warnings
Strips the '(Claude Code)' suffix from the installed version badge so
it shows cleanly as 'CLI 2.1.50'. Also adds an italic warning message
after the supported badge when versions differ: amber text for newer
installs, red text for outdated installs.
2026-02-24 13:12:37 -08:00
hikari b914240d20 fix: extract semver before comparing CLI versions
The installed version string includes a suffix like '(Claude Code)'
which caused Number() to parse the third segment as NaN, making the
comparison always return 0 (current) instead of the correct result.
Now extracts the semver portion with a regex before comparing.
2026-02-24 12:57:39 -08:00
hikari 302963f6c0 feat: add supported CLI version badge to header
Adds a second badge alongside the existing CLI version display showing
the highest audited version (currently 2.1.33). The badge is
colour-coded: green when installed matches supported, amber when ahead,
red when behind, and neutral grey whilst loading.
2026-02-24 12:47:41 -08:00
hikari 986dd54dd9 feat: hold tab at connecting until greeting response arrives
Track greeting-pending conversations so the tab stays yellow until
Claude actually responds, rather than going green as soon as the
process starts. Also fixes the disconnect handler missing a status
update that left tabs stuck at yellow after the process died.
2026-02-24 12:31:24 -08:00
hikari 24313facca feat: collapsible tool lines in terminal
Long tool messages (e.g. Bash commands) are now stored in full and
displayed collapsed by default, with a toggle button to expand/collapse.
Removes backend truncation of Bash commands at 50 chars.
2026-02-24 10:44:22 -08:00