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
- 主要言語
- Python
- スター
- 36.2k
- フォーク
- 4.1k
- PR マージ指標
- PR 指標を取得中
説明
## 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.)*
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
評価
この issue はまだ評価されていません。