justinjdev/shire/tree/main/contrib/claude-mod/shire-status
shire-status
一个 Claude Code mod,用状态行显示 shire 索引的新鲜度和警告,只在发生变化时弹出提示,并提供带重建按钮的 /shire 面板。
关于这个 mod
shire-status 是一个 Claude Code mod,它通过读取 shire status --json 在 Claude Code 中显示 shire 索引的健康状况(不会自行重建或写入)。
功能:
- 状态行:显示 shire ● 412 pkgs · 38.2k syms · 4m ago;构建运行时使用 ⟳,出现警告(构建失败、构建中断、文件遍历达到上限或不完整、等待重新检查、索引构建后 HEAD 移动)时使用 ▲,索引缺失或无法读取时使用 ✗。每 15 s 轮询一次,编辑后 3 s 再轮询。
- 只在发生变化时弹出提示:符号或文件数量变化、新的构建失败、构建中断、500k 文件上限,或 watch daemon 停止。没有任何变化的按需重建保持安静。
- /shire 打开带有详细信息和 Rebuild / Force rebuild 按钮的面板;/shire rebuild [--force] 在提示中执行相同操作。watch daemon 正在运行并监听时使用它重建,否则使用 shire build。
要求:PATH 中有带 status 子命令的 shire binary。
安装:shire init --mod(将 mod 写入 ~/.claude/shire-mod/shire-status/,并在 ~/.claude/settings.json 的 env.CLAUDE_CODE_PLUGIN_DIRS 中列出它),或者在 checkout 中使用 claude --plugin-dir /path/to/shire/contrib/claude-mod/shire-status 运行。使用 claude plugin validate 和 claude plugin test 验证及测试。
注意:mod API 处于早期访问阶段,可能会随 Claude Code 版本变化。
安装
请先查看作者 README 确认 marketplace 和插件名称;命令可能随仓库结构改变。
claude plugin marketplace add justinjdev/shire claude plugin install shire-status
原文 / README
shire-status: a Claude Code mod
Shows shire's index health inside Claude Code. It reads shire status --json,
which never rebuilds or writes.
- Status line:
shire ● 412 pkgs · 38.2k syms · 4m ago, with⟳while a build runs,▲for warnings (build failures, an interrupted build, a capped or partial file walk, pending re-checks,HEAD movedsince the index was built) and✗when the index is missing or unreadable. Polled every 15 s and 3 s after any edit. - Toasts only when something changed: symbol/file counts moved, new build
failures, an interrupted build, the 500k file cap, the watch daemon stopping.
An on-demand rebuild (
serve --root) that changed nothing stays quiet. /shireopens a pane with the details and Rebuild / Force rebuild buttons. Rebuild goes through the watch daemon when it is running and listening, otherwise runsshire build./shire rebuild [--force]does the same from the prompt.
Requirements
A shire on PATH that has the status subcommand.
The files here are compiled into the shire binary (src/claude_mod.rs), so
changing one changes what shire init --mod installs.
Install
shire init --mod # or answer yes to the prompt in `shire init`
This writes the mod, compiled into the shire binary so it always matches its
shire status, to ~/.claude/shire-mod/shire-status/ and lists that folder in
env.CLAUDE_CODE_PLUGIN_DIRS in ~/.claude/settings.json. shire install
refreshes its files after an upgrade (without re-listing a folder you took out
of the settings to switch it off), and shire uninstall removes it.
To run this folder straight from a checkout instead:
claude --plugin-dir /path/to/shire/contrib/claude-mod/shire-status
Develop
claude plugin validate contrib/claude-mod/shire-status
claude plugin test contrib/claude-mod/shire-status
Claude Code lays the API's type declarations into .claude-plugin/types/ when
it loads the folder (git-ignored); after that tsc -p contrib/claude-mod/shire-status
type-checks it. The mod API is early access and may change between Claude Code
releases.
