github jarrodwatts/claude-hud v0.10.0

3 hours ago

This release is a rewrite for simplicity, with the same options in about half the source and a quarter of the test code. It needs Claude Code v2.1.260 or later.

Changed

  • Read version, cost, prompt_cache, session_name, output_style, and workspace.repo from Claude Code's stdin instead of deriving them.
  • The prompt-cache expiry and hit rate come from Claude Code's prompt_cache, so the expiry no longer reads expired while the cache is warm.
  • display.showCost shows Claude Code's own cost; the local pricing-table estimate is removed.
  • Context percentage always follows Claude Code's used_percentage, falling back to the last request's size in the transcript when Claude Code reports none. display.autocompactBuffer and display.promptCacheTtlSeconds no longer exist.
  • Session duration is Claude Code's running time for the session.
  • Git status comes from one git status --porcelain=v2 call, down from four or five, and the branch link comes from workspace.repo. A repository with no commits now shows its branch.
  • The compact layout gains expanded's branch link and push-threshold colours, and display.timeFormat: "elapsed" now works there.
  • /claude-hud:setup installs a small launcher and writes settings.json with a helper script instead of hand-built shell commands. Existing setups keep working; re-run setup to switch. It asks nothing unless it would replace another status line; customize afterwards by asking Claude or with /claude-hud:configure. A refreshInterval you set yourself is kept.
  • /claude-hud:configure asks one short set of questions and previews the diff.
  • The default HUD no longer parses the transcript, runs claude --version, or keeps context or transcript caches on disk.

Fixed

  • The macOS memory reading no longer blocks the rest of the render.
  • The daily cost ledger no longer throws on a non-string session_id.

Security

  • Sanitize the output style, tool names, tool targets (paths, Grep patterns, Bash commands), todo text, and the model name before display. They reached the terminal raw.
  • /claude-hud:setup writes settings.json through a dotfiles symlink and keeps its permissions.

Don't miss a new claude-hud release

NewReleases is sending notifications on new releases.