benjaminmodayil/live-recap
live-recap
一個 Claude Code 外掛,會在提示列上方顯示 Claude 正在做什麼的卡片;工作階段執行時每隔幾分鐘重新整理。執行結束後,最後一則回顧會保持顯示(靜音),直到下一個提示。
關於這個 mod
live-recap
一個 Claude Code 外掛,會在提示列上方顯示 Claude 正在做什麼的卡片;工作階段執行時每隔幾分鐘重新整理。執行結束後,最後一則回顧會保持顯示(靜音),直到下一個提示。
╭─ tracking running 6m · 2 in background · haiku · ~1m ago ──────────╮
│ Editing hooks/register.tsx to draw the live card. It shows the user
│ what Claude is doing while they look away.
╰──────────────────────────────────────────────────────────────────────
此儲存庫也包含
message-timestamps:在每則 Claude 回覆前加上它抵達時的本機時間,不呼叫模型。使用claude plugin install message-timestamps@live-recap安裝。
需求
函式勾點目前是早期存取功能,預設關閉。安裝前先啟用,否則外掛會載入,卻永遠不會繪製:
// ~/.claude/settings.json
{
"env": {
"CLAUDE_CODE_ENABLE_FUNCTION_HOOKS": "1"
}
}
也可以在 shell 設定檔中匯出 CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1。設定後重新啟動 Claude Code。
安裝
claude plugin marketplace add benjaminmodayil/live-recap
claude plugin install live-recap@live-recap
重新啟動 Claude Code(或執行 /reload-plugins)。
選項
使用 claude plugin configure live-recap 設定。
| 鍵 | 預設值 | 意義 |
| ----------------- | ------- | -------------------------------------------------------------- |
| intervalMinutes | 2 | 工作階段執行這麼久後第一次顯示卡片,之後以相同間隔重新整理 |
| source | haiku | haiku:小型模型讀取最近活動(便宜)。fork:工作階段模型讀取完整記錄(成本較高) |
副作用
- 工作階段開始時(僅互動模式),會關閉內建的工作階段回顧(使用者設定中的
awaySummaryEnabled: false),因為它會蓋住這張卡片。移除外掛後這項設定仍會保留。 - 無頭執行不會繪製任何內容,也不會呼叫模型。
疑難排解
- 完全沒有卡片: 檢查是否設定
CLAUDE_CODE_ENABLE_FUNCTION_HOOKS(見「需求」),然後確認claude plugin list顯示live-recap已載入。 - 短工作階段沒有卡片: 這是預期行為。第一張卡片只會在工作階段執行
intervalMinutes(預設2)後出現。 - 開啟問題對話框時卡片隱藏: 對話框會接管提示列上方的區域;對話框關閉後卡片會回來。
開發
Claude Code 從你擁有的資料夾載入外掛時會寫入 .claude-plugin/types/,該資料夾已加入 gitignore。載入一次外掛即可產生它。
tsc -p . # typecheck
claude plugin validate --strict . # manifest + hooks check
claude plugin test . # tests/*.test.ts (when available in your CLI build)
安裝
請先查看作者 README,確認 marketplace 與外掛名稱;指令可能隨儲存庫結構而變動。
claude plugin marketplace add benjaminmodayil/live-recap claude plugin install live-recap
原文 / README
live-recap
A Claude Code plugin that draws a card above the prompt saying what Claude is working on, refreshed every few minutes while a turn runs. After the run ends, the last recap stays up (muted) until the next prompt.
╭─ tracking running 6m · 2 in background · haiku · ~1m ago ──────────╮
│ Editing hooks/register.tsx to draw the live card. It shows the user
│ what Claude is doing while they look away.
╰──────────────────────────────────────────────────────────────────────
Also in this repo
message-timestamps: prefixes each Claude reply with the local time it arrived, no model calls. Install withclaude plugin install message-timestamps@live-recap.
Requirements
Function hooks are early access and off by default. Enable them before installing, or the plugin loads but never draws:
// ~/.claude/settings.json
{
"env": {
"CLAUDE_CODE_ENABLE_FUNCTION_HOOKS": "1"
}
}
Or export CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1 in your shell profile. Restart Claude Code after setting it.
Install
claude plugin marketplace add benjaminmodayil/live-recap
claude plugin install live-recap@live-recap
Restart Claude Code (or run /reload-plugins).
Options
Set with claude plugin configure live-recap.
| Key | Default | Meaning |
| ----------------- | ------- | ---------------------------------------------------------------------------------------------------- |
| intervalMinutes | 2 | Card first shows after a turn runs this long, then refreshes at the same interval |
| source | haiku | haiku: small model reads recent activity (cheap). fork: session model reads full transcript (costs more) |
Side effects
- On session start (interactive only), turns off the built-in session recap (
awaySummaryEnabled: falsein user settings) since it draws over this card. This persists if the plugin is removed. - Headless runs draw nothing and make no model calls.
Troubleshooting
- No card at all: check
CLAUDE_CODE_ENABLE_FUNCTION_HOOKSis set (see Requirements), thenclaude plugin listshowslive-recaploaded. - Card missing on short turns: expected. The first card appears only after a turn runs
intervalMinutes(default 2). - Card hidden while a question dialog is open: the dialog takes over the area above the prompt; the card returns once the dialog closes.
Develop
.claude-plugin/types/ is written by Claude Code when it loads the plugin from a folder you own; it is gitignored. Load the plugin once to generate it.
tsc -p . # typecheck
claude plugin validate --strict . # manifest + hooks check
claude plugin test . # tests/*.test.ts (when available in your CLI build)
