@mnemonik/claude-code-hooks 0.9.252 → 0.9.254

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/adapter.js CHANGED
@@ -3,6 +3,40 @@ import { dirname, join } from 'node:path';
3
3
  import { createFileHostAdapter } from '@mnemonik/shared';
4
4
  import { applyMnemonikHookSettings, readSettings, removeMnemonikHooks, resolveTargetPath, statusLineDecision, } from './install.js';
5
5
  import { buildManagedCommand, isManagedCommand } from './lib/installerSupport.js';
6
+ /**
7
+ * Uninstall puts back the user's own automatic-memory setting. Only a value
8
+ * Mnemonik set is touched: the setting must still be off, and the first-install
9
+ * backup (or a file Mnemonik created) must show it was on or absent. Without
10
+ * either, the owner of the value is unknown, so it stays.
11
+ */
12
+ function restoreAutoMemory(settings, target, settingsPath) {
13
+ if (settings.autoMemoryEnabled !== false)
14
+ return false;
15
+ const created = target.createdFiles?.includes(settingsPath) === true;
16
+ const backedUp = target.originalFiles && Object.hasOwn(target.originalFiles, settingsPath);
17
+ if (!created && !backedUp)
18
+ return false;
19
+ const raw = created
20
+ ? ''
21
+ : target.originalFiles?.[settingsPath]
22
+ ?.toString()
23
+ .replace(/^\uFEFF/, '')
24
+ .trim();
25
+ let before;
26
+ try {
27
+ before = raw ? JSON.parse(raw) : {};
28
+ }
29
+ catch {
30
+ return false;
31
+ }
32
+ if (before.autoMemoryEnabled === false)
33
+ return false;
34
+ if (Object.hasOwn(before, 'autoMemoryEnabled'))
35
+ settings.autoMemoryEnabled = before.autoMemoryEnabled;
36
+ else
37
+ delete settings.autoMemoryEnabled;
38
+ return true;
39
+ }
6
40
  export function createHostAdapter(deps = {}) {
7
41
  const path = (target) => resolveTargetPath(target.scope === 'user' ? 'host' : 'project', target.projectRoot ?? process.cwd(), deps.env);
8
42
  const remove = (settings) => {
@@ -37,6 +71,11 @@ export function createHostAdapter(deps = {}) {
37
71
  async changes(target, install) {
38
72
  const { settings } = await readSettings(path(target));
39
73
  if (install) {
74
+ // Claude Code's own automatic memory tells the agent to keep what the
75
+ // user asks it to remember in Claude Code's notes, and agents then do
76
+ // that instead of using Mnemonik (ingest ledger O-7). Writing markdown
77
+ // on request is unaffected.
78
+ settings.autoMemoryEnabled = false;
40
79
  applyMnemonikHookSettings(settings, buildManagedCommand(target.runtimeEntry, 'claude-code-hooks', target.credentialFamily, apiOrigin(deps.env)));
41
80
  for (const group of settings.hooks?.PostToolUse ?? [])
42
81
  for (const hook of group.hooks ?? [])
@@ -50,8 +89,12 @@ export function createHostAdapter(deps = {}) {
50
89
  command: buildManagedCommand(join(dirname(target.runtimeEntry), 'statusline.js'), 'claude-code-statusline', undefined, apiOrigin(deps.env)),
51
90
  };
52
91
  }
53
- else if (!remove(settings))
54
- return [];
92
+ else {
93
+ const removed = remove(settings);
94
+ const restored = restoreAutoMemory(settings, target, path(target));
95
+ if (!removed && !restored)
96
+ return [];
97
+ }
55
98
  return [
56
99
  { path: path(target), content: Buffer.from(`${JSON.stringify(settings, null, 2)}\n`) },
57
100
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mnemonik/claude-code-hooks",
3
- "version": "0.9.252",
3
+ "version": "0.9.254",
4
4
  "description": "Claude Code lifecycle contextual hooks for Mnemonik. PreToolUse Edit/Write/NotebookEdit/Bash gates plus SessionStart bootstrap warming, clean Stop, PreCompact context_snapshot creation, bounded SessionEnd cleanup, and UserPromptSubmit context injection. This hooks-only package does not install skills, rules, project identity, or MCP config. Versioned independently from the @mnemonik/server release cadence (mirrors @mnemonik/scanner).",
5
5
  "repository": {
6
6
  "type": "git",
@@ -41,8 +41,8 @@
41
41
  ],
42
42
  "license": "SEE LICENSE IN LICENSE",
43
43
  "dependencies": {
44
- "@mnemonik/local-setup": "0.1.73",
45
- "@mnemonik/shared": "7.111.10",
46
- "@mnemonik/credentials": "0.1.73"
44
+ "@mnemonik/local-setup": "0.1.75",
45
+ "@mnemonik/shared": "7.112.1",
46
+ "@mnemonik/credentials": "0.1.75"
47
47
  }
48
48
  }