You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On Grok Build, automatic session capture (Stop / PreCompact / SessionEnd → nmem t save --from grok) does not run because the plugin’s lifecycle hooks never register in the session, even when the plugin is installed, enabled, and skills/commands load normally.
This is distinct from #472 (hooks fire but host defaults to claude-code). Here hooks appear absent from Grok’s hook_execution log entirely—so capture cannot succeed or fail; it simply never starts.
Manual nmem t save --from grok works. nmem status is healthy. The failure mode is silent and easy to misread as “Mem is broken” or “not configured.”
SessionStart / Stop / PreCompact / SessionEnd hooks from the plugin appear in Grok’s hook runner.
Each completed turn auto-captures to Mem as source: grok (thread_id like grok-<session_id>).
Plugin update does not silently drop capture; trust either persists or is re-prompted.
Docs currently read as if install alone is enough for automatic capture under Grok.
Actual
Plugin enabled → skills and slash commands load.
In session updates.jsonl / hook_execution events, only global hooks run (user hooks under ~/.grok/hooks/). No plugin-scoped nowledge-mem hooks appear.
Local Grok transcripts accumulate under ~/.grok/sessions/, but Mem gains no new source=grok threads until a manual save/backfill.
Pattern recurred around Grok CLI + plugin update windows (fix attempts → worked-looking state via backfill → silence again after updates).
grok plugin install … --trust does not leave an observable durable trust state on disk; Grok’s binary surfaces trust-store failure strings (failed to read trust store; no plugins will be trusted). Skills still load (enable path), hooks stay inactive (trust path).
So: enable ≠ hooks running under current Grok Build plugin trust behavior.
Reproduction
Install nowledge-co/community#nowledge-mem-claude-code-plugin (with or without --trust); ensure enabled.
Confirm nmem status ok and skills like save/search are visible in Grok.
Start a new Grok session in a project that already has local history under ~/.grok/sessions/.
Complete a turn; inspect session hook_execution names.
Observe: no nowledge-mem plugin hooks; Mem has no new grok-* thread.
Run nmem t save --from grok -p . → succeeds immediately.
After grok plugin update / CLI upgrade, recheck—hooks still missing or regress without a clear trust prompt.
Impact
Users believe Grok Build ↔ Nowledge Mem “auto-syncs”; gaps look like product outages.
Global always-trusted hooks under ~/.grok/hooks/*.json that call the plugin’s nmem-hook-save.py (or nmem t save --from grok) on Stop / PreCompact / SessionEnd.
Symlink/copy plugin into ~/.grok/plugins/ (Grok docs: auto-trusted path).
Manual / scheduled backfill: nmem t save --from grok -m all -p <project>.
Requests
Host (Grok Build) — primary fix surface
Please treat as a Grok plugin-runtime bug (also sending via Grok /feedback):
install --trust should persist trust so plugin hooks register on subsequent sessions.
plugin update should preserve trust or re-prompt; do not leave “enabled skills, dead hooks.”
Surface trust/hooks status in /plugins / /hooks when a plugin’s hooks are blocked.
Nowledge plugin / docs — secondary
Grok install docs: state explicitly that Grok requires plugin trust for hooks, that enable alone is insufficient, and how to verify (hook_execution / /hooks shows plugin hooks; a test turn creates grok-* in Mem).
Document update regression: after Grok or plugin update, re-verify capture.
Optional: ship or document a global-hook fallback install snippet for Grok when host trust is flaky (mirrors what works today under ~/.grok/hooks/).
Summary
On Grok Build, automatic session capture (Stop / PreCompact / SessionEnd →
nmem t save --from grok) does not run because the plugin’s lifecycle hooks never register in the session, even when the plugin is installed, enabled, and skills/commands load normally.This is distinct from #472 (hooks fire but host defaults to
claude-code). Here hooks appear absent from Grok’shook_executionlog entirely—so capture cannot succeed or fail; it simply never starts.Manual
nmem t save --from grokworks.nmem statusis healthy. The failure mode is silent and easy to misread as “Mem is broken” or “not configured.”Environment (minimal)
1.0.0(recent sessions also logged as0.2.12x)0.7.22(nowledge-co/community#nowledge-mem-claude-code-plugin)0.10.55, local, status okConfig:
[plugins] enabled = ["nowledge-mem"].Expected
After install (ideally with Grok’s
--trust):source: grok(thread_idlikegrok-<session_id>).Docs currently read as if install alone is enough for automatic capture under Grok.
Actual
updates.jsonl/hook_executionevents, only global hooks run (user hooks under~/.grok/hooks/). No plugin-scoped nowledge-mem hooks appear.~/.grok/sessions/, but Mem gains no newsource=grokthreads until a manual save/backfill.grok plugin install … --trustdoes not leave an observable durable trust state on disk; Grok’s binary surfaces trust-store failure strings (failed to read trust store; no plugins will be trusted). Skills still load (enable path), hooks stay inactive (trust path).So: enable ≠ hooks running under current Grok Build plugin trust behavior.
Reproduction
nowledge-co/community#nowledge-mem-claude-code-plugin(with or without--trust); ensure enabled.nmem statusok and skills like save/search are visible in Grok.~/.grok/sessions/.grok-*thread.nmem t save --from grok -p .→ succeeds immediately.grok plugin update/ CLI upgrade, recheck—hooks still missing or regress without a clear trust prompt.Impact
source=grokthreads), different layer (hooks not scheduled vs wrong--from).Workarounds (verified locally)
~/.grok/hooks/*.jsonthat call the plugin’snmem-hook-save.py(ornmem t save --from grok) on Stop / PreCompact / SessionEnd.~/.grok/plugins/(Grok docs: auto-trusted path).nmem t save --from grok -m all -p <project>.Requests
Host (Grok Build) — primary fix surface
Please treat as a Grok plugin-runtime bug (also sending via Grok
/feedback):install --trustshould persist trust so plugin hooks register on subsequent sessions.plugin updateshould preserve trust or re-prompt; do not leave “enabled skills, dead hooks.”/plugins//hookswhen a plugin’s hooks are blocked.Nowledge plugin / docs — secondary
hook_execution//hooksshows plugin hooks; a test turn createsgrok-*in Mem).~/.grok/hooks/).--from grok(already improved in later changelog; still worth a Grok verification matrix).Related
--from claude-code(different failure mode)~/.grok/plugins/auto-trustedHappy to provide redacted hook_execution name lists if useful (no full transcripts).