feat: CLI v2.1.68–v2.1.74 compatibility updates #221

Merged
naomi merged 20 commits from feat/cli into main 2026-03-13 01:34:45 -07:00
Owner

Summary

This PR brings Hikari Desktop up to full compatibility with Claude Code CLI versions v2.1.68 through v2.1.74, implementing all changelog items audited in issues #200–#218.

Changes

Bug Fixes

  • Remove deprecated Claude Opus 4.0 and 4.1 models from the model selector
  • Auto-migrate users pinned to deprecated models to Opus 4.6

New Features

  • Add cron tool support (CronCreate, CronDelete, CronList) with character state mapping and CLAUDE_CODE_DISABLE_CRON settings toggle
  • Handle EnterWorktree and ExitWorktree tools in character state mapping and tool display
  • Add CLI update check with npm registry indicator in the version bar
  • Add agent_type field and support the Agent tool rename from CLI v2.1.69
  • Consume worktree field from status line hook events
  • Display per-agent model override in the agent monitor tree
  • Expose Claude Code CLI built-in slash commands (/simplify, /loop, /batch, /memory, /context) in the command menu with CLI badges
  • Add includeGitInstructions toggle in settings
  • Add ENABLE_CLAUDEAI_MCP_SERVERS opt-out setting
  • Linkify MCP binary file paths (PDFs, audio, Office docs) in markdown output
  • Add auto-memory panel, /memory slash command shortcut, and unified toast notification system
  • Toast notifications for WorktreeCreate and WorktreeRemove hook events
  • Sort session resume list by most recent activity, with most recent user message as preview
  • Convert WSL Linux paths to Windows UNC paths when opening binary files via open_binary_file command
  • Expose autoMemoryDirectory setting in ConfigSidebar (Agent Settings section)
  • Add /context as a CLI built-in in the slash command menu
  • Expose modelOverrides setting as a JSON textarea in ConfigSidebar (for AWS Bedrock, Google Vertex, etc.)

Note: The CLI update check commit does not have a corresponding issue — it was a bonus addition during the audit sprint.

Closes

Closes #200
Closes #201
Closes #202
Closes #205
Closes #206
Closes #207
Closes #208
Closes #209
Closes #210
Closes #211
Closes #212
Closes #213
Closes #214
Closes #215
Closes #216
Closes #217
Closes #218

## Summary This PR brings Hikari Desktop up to full compatibility with Claude Code CLI versions v2.1.68 through v2.1.74, implementing all changelog items audited in issues #200–#218. ## Changes ### Bug Fixes - Remove deprecated Claude Opus 4.0 and 4.1 models from the model selector - Auto-migrate users pinned to deprecated models to Opus 4.6 ### New Features - Add cron tool support (`CronCreate`, `CronDelete`, `CronList`) with character state mapping and `CLAUDE_CODE_DISABLE_CRON` settings toggle - Handle `EnterWorktree` and `ExitWorktree` tools in character state mapping and tool display - Add CLI update check with npm registry indicator in the version bar - Add `agent_type` field and support the Agent tool rename from CLI v2.1.69 - Consume `worktree` field from status line hook events - Display per-agent model override in the agent monitor tree - Expose Claude Code CLI built-in slash commands (`/simplify`, `/loop`, `/batch`, `/memory`, `/context`) in the command menu with CLI badges - Add `includeGitInstructions` toggle in settings - Add `ENABLE_CLAUDEAI_MCP_SERVERS` opt-out setting - Linkify MCP binary file paths (PDFs, audio, Office docs) in markdown output - Add auto-memory panel, `/memory` slash command shortcut, and unified toast notification system - Toast notifications for `WorktreeCreate` and `WorktreeRemove` hook events - Sort session resume list by most recent activity, with most recent user message as preview - Convert WSL Linux paths to Windows UNC paths when opening binary files via `open_binary_file` command - Expose `autoMemoryDirectory` setting in ConfigSidebar (Agent Settings section) - Add `/context` as a CLI built-in in the slash command menu - Expose `modelOverrides` setting as a JSON textarea in ConfigSidebar (for AWS Bedrock, Google Vertex, etc.) > **Note:** The CLI update check commit does not have a corresponding issue — it was a bonus addition during the audit sprint. ## Closes Closes #200 Closes #201 Closes #202 Closes #205 Closes #206 Closes #207 Closes #208 Closes #209 Closes #210 Closes #211 Closes #212 Closes #213 Closes #214 Closes #215 Closes #216 Closes #217 Closes #218
hikari added 18 commits 2026-03-13 00:38:12 -07:00
Ticket 200

Removed claude-3-7-sonnet-20250219, claude-3-5-sonnet-20241022,
claude-3-5-sonnet-20240620, and claude-3-haiku-20240307 from the
available model selector. Confirmed against the Anthropic API that
these models are no longer available (Haiku 3 is retiring April 2026).
Pricing data in stats.ts/stats.rs retained for historical accuracy.
Ticket 201

- Added format_tool_description entries for CronCreate, CronDelete,
  and CronList tools
- Added disable_cron field to ClaudeStartOptions and HikariConfig
- Pass CLAUDE_CODE_DISABLE_CRON=1 env var in both WSL and native
  spawn paths when disable_cron is enabled
- Added disable cron toggle to ConfigSidebar settings UI
On app start, check the npm registry for the latest
@anthropic-ai/claude-code version and compare against the installed
version. If behind, the CLI badge turns amber with a pulsing up-arrow
and a tooltip advising how to update.

Also bumps SUPPORTED_CLI_VERSION to 2.1.72.
Ticket 202

Added EnterWorktree and ExitWorktree to the is_system_tool list so
they never trigger permission prompts, matching the behaviour of
EnterPlanMode/ExitPlanMode. Added human-readable descriptions to
format_tool_description for both tools.
- Parse agent_type from SubagentStart hook events and forward via claude:agent-update
- Support renamed Agent/Agent(type) tool alongside existing Task/Task(type) syntax
- Fall back to prompt field when description is absent in Agent tool input
- Display agentType (with subagentType fallback) in agent monitor badge
- Show agentId as tooltip on the type badge when available
Parse the model field from Agent/Task tool input and surface it in the
agent monitor panel as a purple subtitle, so users can immediately see
which agents are running on a non-default model.

Closes #207
Parse structured WorktreeInfo (name, path, branch, original_repo_directory)
from WorktreeCreate/Remove hook events and emit a dedicated claude:worktree
event. Store per-conversation worktree state and display an emerald branch
badge in the status bar so users can see at a glance which worktree and
branch each session is running on.

Closes #206
Adds /simplify, /loop, and /batch as CLI-sourced slash commands so they
appear in the autocomplete menu with a 'CLI' badge and forward correctly
to Claude Code instead of triggering 'Unknown command' errors.

Introduces source?: 'cli' field to the SlashCommand interface to
distinguish app-level commands from CLI pass-through entries. Resolves
#208.
Adds an 'Include git instructions' toggle to the Agent Settings panel.
When disabled, sets CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS=1 on the Claude
process to remove built-in commit and PR workflow guidance from its
system prompt. Resolves #209.
Adds a toggle in the MCP Servers settings section to control whether
Claude Code connects to MCP servers configured in Claude.ai. When
disabled, sets ENABLE_CLAUDEAI_MCP_SERVERS=false. Also fixes a
pre-existing omission of disable_cron from the TypeScript HikariConfig
interface.

Closes #210
Detects local binary file paths (PDF, audio, video, Office docs,
archives) in Claude's responses and renders them as styled, clickable
links that open via the system's default viewer. Skips paths inside
code blocks so existing code examples are unaffected.

Closes #211
- Add /memory CLI built-in slash command
- Refactor MemoryBrowserPanel to accept isOpen/onClose props
- Add Send /memory and Refresh buttons to MemoryBrowserPanel header
- Add Memory Manager entry to NavMenu
- Create unified ToastContainer replacing AchievementNotification and
  UpdateNotification with a single stacked toast system
- Add toasts store with info (4s), achievement (5s), and persistent
  update toast types
- Move getAchievementRarity and getRarityColour helpers to toasts store
- Detect auto-memory writes in tauri.ts output listener and fire toast
- Remove action buttons from update toast; version is now a direct link

Closes #212
The backend already parsed and emitted claude:worktree events for these
hooks, and the frontend already updated the store and StatusBar badge.
Add the missing toast notification so the user is informed in real-time
when a worktree is created or removed.

Closes #213
Session list now sorts by last_activity_at descending so the most
recently used session appears at the top. Preview text now shows the
most recent user message rather than the first few messages, giving a
much more relevant glimpse of where each session left off.
Adds open_binary_file Tauri command that translates WSL Linux-style paths
(e.g. /tmp/mcp_output_abc123.pdf) to Windows UNC paths via wslpath -w
before opening, so binary file links work correctly on Windows/WSL.
Non-Windows platforms pass the path through unchanged. Markdown.svelte
now invokes this command instead of calling openPath directly.
feat: expose modelOverrides setting in ConfigSidebar
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m0s
CI / Lint & Test (pull_request) Successful in 17m34s
CI / Build Linux (pull_request) Successful in 25m55s
CI / Build Windows (cross-compile) (pull_request) Has been cancelled
cadbf73d80
hikari added 1 commit 2026-03-13 00:40:53 -07:00
chore: bump supported CLI version to 2.1.74
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m9s
CI / Lint & Test (pull_request) Successful in 18m25s
CI / Build Linux (pull_request) Has been cancelled
CI / Build Windows (cross-compile) (pull_request) Has been cancelled
5c16037f8b
hikari added 1 commit 2026-03-13 00:57:46 -07:00
fix: open memory browser panel for /memory command and default agent type to general-purpose
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m14s
CI / Lint & Test (pull_request) Successful in 17m8s
CI / Build Linux (pull_request) Successful in 24m24s
CI / Build Windows (cross-compile) (pull_request) Successful in 35m25s
8af898c92a
naomi merged commit 452fe185df into main 2026-03-13 01:34:45 -07:00
naomi deleted branch feat/cli 2026-03-13 01:34:46 -07:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nhcarrigan/hikari-desktop#221