anthropics / anthropics/claude-plugins-official

remember: marketplace pins 0.30.0, missing the v0.31.0 fix for the SessionEnd hook failing on every exit on Windows

未關閉 適合新手
#6,031 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Python
星號
36.3k
分支
4.1k
平均合併
2 天 14 小時
30 天內合併 PR
539

描述

## Summary

The marketplace pins `remember` to `54f4da9f10a90b77fb57318192bd5a936a6d4a01`, which is `chore(release): 0.30.0`. Upstream **v0.31.0** (`9f92bc6ad01dbc4a5e318146c11fe3a55b60f912`, 2026-09-11) carries the fix for a Windows bug that makes the plugin's `SessionEnd` hook fail on **every** session exit. Because the pin predates it, there is no path to that fix through this marketplace: after `claude plugin marketplace update`, `claude plugin update remember@claude-plugins-official` answers *"remember is already at the latest version (0.30.0)"*.

## The bug the pin is holding back

On 0.30.0, every `/exit` prints:

```
SessionEnd hook [bash "${CLAUDE_PLUGIN_ROOT}/scripts/session-end-hook.sh"] failed: Hook cancelled
```

Measured on this machine (Claude Code 2.1.269, Windows 11 Pro 26200, Git Bash, `remember` 0.30.0 installed from this marketplace):

- `.remember/logs/autonomous/` contained **no** `session-end-*.log` at all since install on 8 Sep — only `save-*.log` from the `PostToolUse` fork. The hook never reaches its own first log statement.
- The hook's synchronous preamble takes **7.1 s** (`real 7.1s / user 0.5s / sys 3.5s`), of which ~4 s is just sourcing `lib-clock.sh`, `resolve-paths.sh`, `detect-tools.sh` and `bootstrap-dirs.sh`. The `sys` share is process spawning under Git Bash.
- Claude Code gives `SessionEnd` a 1500 ms budget by default, and a plugin-declared `timeout` does **not** raise it on this install route — the plugin's author confirms that in the upstream thread. The `"timeout": 10` in `hooks/hooks.json` therefore does not help here.

Upstream tracked this as [#647](https://github.com/Digital-Process-Tools/claude-remember/issues/647) and [#560](https://github.com/Digital-Process-Tools/claude-remember/issues/560); the fix is [#651](https://github.com/Digital-Process-Tools/claude-remember/issues/651), merged 11 Sep and released in v0.31.0. It makes the hook read stdin, re-launch itself detached and exit in tens of milliseconds, so the preamble no longer runs on Claude Code's clock.

## Consequences while the pin stands

1. Anything between the last `PostToolUse` save and session exit is never flushed.
2. `/remember:doctor` reads the missing trace file as "SessionEnd has never fired for this project" and blames hook registration, which is fine.
3. The failure is printed on every exit, which reads as a broken install.

## Ask

Move the pinned `sha` to `9f92bc6ad01dbc4a5e318146c11fe3a55b60f912` (v0.31.0).

## Related

[#5926](https://github.com/anthropics/claude-plugins-official/issues/5926) reported the same shape when the pin sat at 0.25.0 and upstream was at 0.29.1. The pin has moved to 0.30.0 since, so that specific regression is behind us, but it still trails upstream by a release that fixes a reported bug.

## Workaround for anyone hitting this meanwhile

Set `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` (e.g. `30000`) in the environment and restart Claude Code. The message goes away and the flush completes — at the cost of the ~7 s preamble now genuinely running before the process exits, which is what v0.31.0 removes.

*(Written by Claude Code on the reporting machine; measurements are from that machine.)*

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

Locate the marketplace metadata entry for `remember` and confirm its current `sha` against the v0.31.0 commit named in the issue. Update that pin, then run `claude plugin marketplace update` followed by `claude plugin update remember@claude-plugins-official`; done means the marketplace reports 0.31.0 rather than 0.30.0.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
bash, git
領域
cli, release, tooling
Issue 類型
缺陷
難度
2/5
預估耗時
1-3 小時
活躍度
活躍
描述清晰度
基本清楚
新手友好度
72/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。