@pleri/olam-cli 0.1.146 → 0.1.147

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.
@@ -0,0 +1,19 @@
1
+ /**
2
+ * `olam skills migrate-hooks-back` — reverse Phase B B1 meta-hook
3
+ * injection by restoring `~/.claude/settings.json` from a snapshot
4
+ * written by `writeMetaHooksSnapshot` (engine writes one before every
5
+ * injection that has a non-empty delta).
6
+ *
7
+ * olam skills migrate-hooks-back [--snapshot <path>]
8
+ *
9
+ * Without `--snapshot`: consumes the most-recent
10
+ * `meta-hooks-*.json` in `~/.olam/state/migration-snapshots/`.
11
+ * With `--snapshot`: uses the named file explicitly.
12
+ *
13
+ * Output: prints settings.json path + snapshot path + summary
14
+ * (restored / file-removed when snapshot represents pre-existence
15
+ * absence) + exits 0 on success.
16
+ */
17
+ import type { Command } from 'commander';
18
+ export declare function registerSkillsMigrateHooksBack(program: Command): void;
19
+ //# sourceMappingURL=skills-migrate-hooks-back.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills-migrate-hooks-back.d.ts","sourceRoot":"","sources":["../../src/commands/skills-migrate-hooks-back.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBzC,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoErE"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * `olam skills migrate-hooks-back` — reverse Phase B B1 meta-hook
3
+ * injection by restoring `~/.claude/settings.json` from a snapshot
4
+ * written by `writeMetaHooksSnapshot` (engine writes one before every
5
+ * injection that has a non-empty delta).
6
+ *
7
+ * olam skills migrate-hooks-back [--snapshot <path>]
8
+ *
9
+ * Without `--snapshot`: consumes the most-recent
10
+ * `meta-hooks-*.json` in `~/.olam/state/migration-snapshots/`.
11
+ * With `--snapshot`: uses the named file explicitly.
12
+ *
13
+ * Output: prints settings.json path + snapshot path + summary
14
+ * (restored / file-removed when snapshot represents pre-existence
15
+ * absence) + exits 0 on success.
16
+ */
17
+ import * as path from 'node:path';
18
+ import { findLatestMetaHooksSnapshot, readMetaHooksSnapshot, restoreSettingsFromSnapshot, migrationSnapshotsDir, META_HOOKS_SNAPSHOT_PREFIX, } from '@olam/core/src/skill-sources/meta-hooks-migration-snapshot.js';
19
+ import { claudeSettingsPath } from '@olam/core/src/skill-sources/index.js';
20
+ import { printError, printInfo, printSuccess } from '../output.js';
21
+ function asMessage(err) {
22
+ return err instanceof Error ? err.message : String(err);
23
+ }
24
+ export function registerSkillsMigrateHooksBack(program) {
25
+ const skills = program.commands.find((c) => c.name() === 'skills') ??
26
+ program.command('skills').description('Manage skill sources and synchronization');
27
+ skills
28
+ .command('migrate-hooks-back')
29
+ .description('Reverse olam-meta hook injection by restoring ~/.claude/settings.json from a B5 snapshot')
30
+ .option('--snapshot <path>', 'Use a specific snapshot file (default: most recent meta-hooks-*.json)')
31
+ .action((opts) => {
32
+ try {
33
+ const snapshotPath = opts.snapshot ?? findLatestMetaHooksSnapshot();
34
+ if (!snapshotPath) {
35
+ printError('No meta-hooks-* snapshot found in ~/.olam/state/migration-snapshots/. ' +
36
+ 'Engine writes one before every injection that mutates settings.json; ' +
37
+ 'if none exist, no reversible injection has happened yet.');
38
+ process.exitCode = 1;
39
+ return;
40
+ }
41
+ // CP3 HIGH-2 fix: when --snapshot is operator-supplied, the path
42
+ // must (a) resolve inside ~/.olam/state/migration-snapshots/ and
43
+ // (b) have the canonical `meta-hooks-` prefix. Without this
44
+ // guard, an attacker (or accidental --snapshot /tmp/foo.json)
45
+ // could supply an arbitrary JSON file → restoreSettingsFromSnapshot
46
+ // would blindly write that JSON to ~/.claude/settings.json,
47
+ // installing operator-attacker-chosen hook blocks.
48
+ if (opts.snapshot) {
49
+ const resolved = path.resolve(opts.snapshot);
50
+ const allowedDir = path.resolve(migrationSnapshotsDir());
51
+ if (!resolved.startsWith(allowedDir + path.sep)) {
52
+ printError(`--snapshot path must be inside ${allowedDir} (got "${resolved}"). ` +
53
+ `Refusing to restore from an arbitrary path — settings.json would land operator-chosen content.`);
54
+ process.exitCode = 1;
55
+ return;
56
+ }
57
+ const basename = path.basename(resolved);
58
+ if (!basename.startsWith(META_HOOKS_SNAPSHOT_PREFIX)) {
59
+ printError(`--snapshot filename must start with "${META_HOOKS_SNAPSHOT_PREFIX}" (got "${basename}"). ` +
60
+ `Cross-namespace snapshots (atlas-toolbox-*) are not valid restore targets for olam-meta hooks.`);
61
+ process.exitCode = 1;
62
+ return;
63
+ }
64
+ }
65
+ printInfo('snapshot', snapshotPath);
66
+ const snapshot = readMetaHooksSnapshot(snapshotPath);
67
+ printInfo('takenAt', snapshot.takenAt);
68
+ const settingsFile = claudeSettingsPath();
69
+ restoreSettingsFromSnapshot(snapshot, settingsFile);
70
+ if (snapshot.originalSettings === null) {
71
+ printSuccess(`removed ${settingsFile} (no settings.json existed pre-injection)`);
72
+ }
73
+ else {
74
+ printSuccess(`restored ${settingsFile} to pre-injection state`);
75
+ }
76
+ }
77
+ catch (err) {
78
+ printError(asMessage(err));
79
+ process.exitCode = 1;
80
+ }
81
+ });
82
+ }
83
+ //# sourceMappingURL=skills-migrate-hooks-back.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills-migrate-hooks-back.js","sourceRoot":"","sources":["../../src/commands/skills-migrate-hooks-back.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * `olam skills migrate-hooks` — forward strip of atlas-toolbox-shipped
3
+ * olam-meta hook entries (Phase C C2).
4
+ *
5
+ * olam skills migrate-hooks [--dry-run]
6
+ *
7
+ * Detects PreToolUse/PostToolUse matcher entries in ~/.claude/settings.json
8
+ * whose `command` strings reference one of the agentmemory-classifier
9
+ * scripts AND do NOT carry an olam-meta sentinel — i.e. atlas-toolbox-
10
+ * shipped entries from the pre-Phase-B world. Strips them; writes a
11
+ * pre-strip snapshot via the B5 primitive so the operator can undo via
12
+ * `olam skills migrate-hooks-back`.
13
+ *
14
+ * Order of operations (snapshot first, mutation after, audit-log last):
15
+ * 1. acquire settings-json lock (A4 — serializes against concurrent sync)
16
+ * 2. read settings.json (return early if absent — nothing to strip)
17
+ * 3. findStripCandidates(settings)
18
+ * - empty list → no-op + summary + exit 0
19
+ * 4. --dry-run → print summary + exit 0 (no snapshot, no mutation)
20
+ * 5. writeMetaHooksSnapshot(settings) — same prefix as B5, so
21
+ * `migrate-hooks-back` consumes it identically
22
+ * 6. applyStrip(settings, candidates) → next settings.json
23
+ * 7. atomic write via temp+rename
24
+ * 8. appendTrustAudit({action: 'meta-hook-stripped', count, ...})
25
+ * — operator-visible append-only audit trail
26
+ * 9. print summary
27
+ *
28
+ * Idempotent: re-running on already-stripped settings.json is a no-op
29
+ * (findStripCandidates returns []).
30
+ *
31
+ * Reversibility: forward-fix-only. Audit-log entry is append-only by
32
+ * contract; settings.json mutation is reversible via B5 snapshot.
33
+ */
34
+ import type { Command } from 'commander';
35
+ import { AGENTMEMORY_SCRIPT_PATTERNS, OLAM_META_SENTINELS_GUARDED, findStripCandidates, applyStrip, type StripCandidate } from '@olam/core/src/skill-sync/atlas-hook-strip.js';
36
+ /** Stable command name — referenced by tests. */
37
+ export declare const MIGRATE_HOOKS_COMMAND = "migrate-hooks";
38
+ export { AGENTMEMORY_SCRIPT_PATTERNS, OLAM_META_SENTINELS_GUARDED, findStripCandidates, applyStrip, type StripCandidate, };
39
+ export declare function registerSkillsMigrateHooks(program: Command): void;
40
+ //# sourceMappingURL=skills-migrate-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills-migrate-hooks.d.ts","sourceRoot":"","sources":["../../src/commands/skills-migrate-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,EACnB,UAAU,EAEV,KAAK,cAAc,EACpB,MAAM,+CAA+C,CAAC;AAGvD,iDAAiD;AACjD,eAAO,MAAM,qBAAqB,kBAAkB,CAAC;AAMrD,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,EACnB,UAAU,EACV,KAAK,cAAc,GACpB,CAAC;AAmEF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+EjE"}
@@ -0,0 +1,178 @@
1
+ /**
2
+ * `olam skills migrate-hooks` — forward strip of atlas-toolbox-shipped
3
+ * olam-meta hook entries (Phase C C2).
4
+ *
5
+ * olam skills migrate-hooks [--dry-run]
6
+ *
7
+ * Detects PreToolUse/PostToolUse matcher entries in ~/.claude/settings.json
8
+ * whose `command` strings reference one of the agentmemory-classifier
9
+ * scripts AND do NOT carry an olam-meta sentinel — i.e. atlas-toolbox-
10
+ * shipped entries from the pre-Phase-B world. Strips them; writes a
11
+ * pre-strip snapshot via the B5 primitive so the operator can undo via
12
+ * `olam skills migrate-hooks-back`.
13
+ *
14
+ * Order of operations (snapshot first, mutation after, audit-log last):
15
+ * 1. acquire settings-json lock (A4 — serializes against concurrent sync)
16
+ * 2. read settings.json (return early if absent — nothing to strip)
17
+ * 3. findStripCandidates(settings)
18
+ * - empty list → no-op + summary + exit 0
19
+ * 4. --dry-run → print summary + exit 0 (no snapshot, no mutation)
20
+ * 5. writeMetaHooksSnapshot(settings) — same prefix as B5, so
21
+ * `migrate-hooks-back` consumes it identically
22
+ * 6. applyStrip(settings, candidates) → next settings.json
23
+ * 7. atomic write via temp+rename
24
+ * 8. appendTrustAudit({action: 'meta-hook-stripped', count, ...})
25
+ * — operator-visible append-only audit trail
26
+ * 9. print summary
27
+ *
28
+ * Idempotent: re-running on already-stripped settings.json is a no-op
29
+ * (findStripCandidates returns []).
30
+ *
31
+ * Reversibility: forward-fix-only. Audit-log entry is append-only by
32
+ * contract; settings.json mutation is reversible via B5 snapshot.
33
+ */
34
+ import * as fs from 'node:fs';
35
+ import * as path from 'node:path';
36
+ import pc from 'picocolors';
37
+ import { claudeSettingsPath } from '@olam/core/src/skill-sources/index.js';
38
+ import { withSettingsJsonLock } from '@olam/core/src/skill-sync/settings-json-lock.js';
39
+ import { writeMetaHooksSnapshot } from '@olam/core/src/skill-sources/meta-hooks-migration-snapshot.js';
40
+ import { appendTrustAudit } from '@olam/core/src/skill-sources/trust-audit-log.js';
41
+ import { AGENTMEMORY_SCRIPT_PATTERNS, OLAM_META_SENTINELS_GUARDED, findStripCandidates, applyStrip, } from '@olam/core/src/skill-sync/atlas-hook-strip.js';
42
+ import { printError, printInfo, printSuccess, printWarning } from '../output.js';
43
+ /** Stable command name — referenced by tests. */
44
+ export const MIGRATE_HOOKS_COMMAND = 'migrate-hooks';
45
+ // Re-export the pure strip helpers so the C2 test imports stay anchored
46
+ // on the CLI module surface (paths used by operators); the C3 engine
47
+ // imports the same names directly from `@olam/core/src/skill-sync/
48
+ // atlas-hook-strip.js` to avoid a CLI → core back-edge.
49
+ export { AGENTMEMORY_SCRIPT_PATTERNS, OLAM_META_SENTINELS_GUARDED, findStripCandidates, applyStrip, };
50
+ /**
51
+ * True iff any hook command in settings.json contains an olam-meta
52
+ * sentinel. Used by the migrate-hooks command to warn when stripping
53
+ * atlas-shipped entries would leave NO olam-managed agentmemory hooks
54
+ * behind (per Phase C CP3 follow-up MEDIUM #3).
55
+ */
56
+ function settingsHasOlamMetaSentinel(settings) {
57
+ for (const stage of ['PreToolUse', 'PostToolUse']) {
58
+ const matchers = settings.hooks?.[stage];
59
+ if (!Array.isArray(matchers))
60
+ continue;
61
+ for (const matcher of matchers) {
62
+ const inner = Array.isArray(matcher.hooks) ? matcher.hooks : [];
63
+ for (const h of inner) {
64
+ const cmd = h?.command;
65
+ if (typeof cmd !== 'string')
66
+ continue;
67
+ for (const sentinel of OLAM_META_SENTINELS_GUARDED) {
68
+ if (cmd.includes(sentinel))
69
+ return true;
70
+ }
71
+ }
72
+ }
73
+ }
74
+ return false;
75
+ }
76
+ function readSettings(filePath) {
77
+ if (!fs.existsSync(filePath))
78
+ return null;
79
+ const raw = fs.readFileSync(filePath, 'utf-8');
80
+ if (raw.trim().length === 0)
81
+ return {};
82
+ return JSON.parse(raw);
83
+ }
84
+ function writeSettings(filePath, settings) {
85
+ fs.mkdirSync(path.dirname(filePath), { recursive: true });
86
+ const tmp = `${filePath}.tmp-migrate-hooks-${process.pid}-${Date.now()}`;
87
+ fs.writeFileSync(tmp, JSON.stringify(settings, null, 2) + '\n');
88
+ fs.renameSync(tmp, filePath);
89
+ }
90
+ function printSummary(candidates, opts) {
91
+ if (candidates.length === 0) {
92
+ printInfo(MIGRATE_HOOKS_COMMAND, 'no atlas-toolbox-shipped agentmemory hooks found in settings.json — nothing to migrate');
93
+ return;
94
+ }
95
+ const verb = opts.dryRun ? 'would strip' : 'stripped';
96
+ console.log(pc.bold(`${verb} ${candidates.length} atlas-toolbox-shipped agentmemory hook entry(ies):`));
97
+ for (const c of candidates) {
98
+ const matcher = c.matcher ?? '*';
99
+ const cmdPreview = c.command.length > 120 ? `${c.command.slice(0, 117)}...` : c.command;
100
+ console.log(` ${pc.dim(`[${c.stage}]`)} matcher=${pc.cyan(matcher)} pattern=${pc.yellow(c.matchedPattern)}`);
101
+ console.log(` ${pc.dim(cmdPreview)}`);
102
+ }
103
+ if (opts.snapshotPath) {
104
+ console.log();
105
+ printInfo('snapshot', opts.snapshotPath);
106
+ printInfo('reverse', `run \`olam skills migrate-hooks-back\` (or \`migrate-hooks-back --snapshot <path>\`) to restore the pre-strip settings.json`);
107
+ }
108
+ }
109
+ function asMessage(err) {
110
+ return err instanceof Error ? err.message : String(err);
111
+ }
112
+ export function registerSkillsMigrateHooks(program) {
113
+ const skills = program.commands.find((c) => c.name() === 'skills') ??
114
+ program.command('skills').description('Manage skill sources and synchronization');
115
+ skills
116
+ .command(MIGRATE_HOOKS_COMMAND)
117
+ .description('Strip atlas-toolbox-shipped agentmemory hook entries from ~/.claude/settings.json (forward migration; reverse via migrate-hooks-back)')
118
+ .option('--dry-run', 'Show what would be stripped without mutating settings.json or writing a snapshot')
119
+ .action(async (opts) => {
120
+ try {
121
+ await withSettingsJsonLock(async () => {
122
+ const settingsFile = claudeSettingsPath();
123
+ const settings = readSettings(settingsFile);
124
+ if (settings === null) {
125
+ printInfo(MIGRATE_HOOKS_COMMAND, `${settingsFile} does not exist — nothing to migrate`);
126
+ return;
127
+ }
128
+ const candidates = findStripCandidates(settings);
129
+ if (opts.dryRun) {
130
+ printSummary(candidates, { dryRun: true });
131
+ return;
132
+ }
133
+ if (candidates.length === 0) {
134
+ printSummary(candidates, { dryRun: false });
135
+ return;
136
+ }
137
+ // CP3 follow-up (Phase C adversarial review MEDIUM #3):
138
+ // when stripping would leave NO olam-meta sentinel-bound
139
+ // entries in settings.json, agentmemory recall/classify
140
+ // dies entirely. The likely-but-not-guaranteed cause:
141
+ // operator has been running `olam skills sync
142
+ // --meta-hooks=never` (declined olam ownership) and now
143
+ // ran migrate-hooks not realising it strips
144
+ // unconditionally. Warn loudly — don't gate (the operator
145
+ // who explicitly typed the command unambiguously asked
146
+ // for the strip; --force ceremony would be hostile), but
147
+ // the consequence MUST be visible.
148
+ const hasOlamMetaSentinel = settingsHasOlamMetaSentinel(settings);
149
+ if (!hasOlamMetaSentinel) {
150
+ printWarning(`stripping ${candidates.length} atlas-toolbox-shipped agentmemory entry(ies) WITHOUT any olam-meta sentinel-bound block present in settings.json. ` +
151
+ `After the strip, agentmemory recall/classify will NOT fire from this settings.json. ` +
152
+ `If unintended, reverse with \`olam skills migrate-hooks-back\` and re-sync with \`olam skills sync\` (default mode injects olam-meta blocks when memory-bridge is running).`);
153
+ }
154
+ // Snapshot BEFORE mutation. Reuses B5 prefix so
155
+ // migrate-hooks-back picks it up identically.
156
+ const snapshotPath = writeMetaHooksSnapshot(settings);
157
+ const { nextSettings, removedCount } = applyStrip(settings, candidates);
158
+ writeSettings(settingsFile, nextSettings);
159
+ // Audit-log AFTER the write — entry records what landed,
160
+ // not what was planned. T6 mitigation.
161
+ appendTrustAudit({
162
+ gitUrl: 'internal:olam-meta-hooks',
163
+ action: 'meta-hook-stripped',
164
+ trustMethod: 'none',
165
+ sourceId: 'atlas-toolbox',
166
+ note: `removed ${removedCount} agentmemory hook entry(ies); snapshot at ${snapshotPath}`,
167
+ });
168
+ printSummary(candidates, { dryRun: false, snapshotPath });
169
+ printSuccess(`stripped ${removedCount} atlas-toolbox-shipped agentmemory hook entry(ies) from ${settingsFile}`);
170
+ }, { reason: `cli:${MIGRATE_HOOKS_COMMAND}` });
171
+ }
172
+ catch (err) {
173
+ printError(asMessage(err));
174
+ process.exitCode = 1;
175
+ }
176
+ });
177
+ }
178
+ //# sourceMappingURL=skills-migrate-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills-migrate-hooks.js","sourceRoot":"","sources":["../../src/commands/skills-migrate-hooks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoGzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgFrD"}
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwIzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkGrD"}
@@ -81,6 +81,40 @@ function printSyncSummary(summary, dryRun) {
81
81
  if (summary.merge.backupPath) {
82
82
  console.log(` settings backup: ${pc.dim(summary.merge.backupPath)}`);
83
83
  }
84
+ if (summary.merge.dualWriteDeduped > 0) {
85
+ console.log(` ${pc.dim(`dual-write deduped: ${summary.merge.dualWriteDeduped} (atlas-shipped hook redundant with olam-meta block)`)}`);
86
+ // CP3 MEDIUM-1 fix: surface dropped commands so operator can see
87
+ // exactly which entries went away. Critical when operator-forked
88
+ // hooks share the script-name but differ in matcher/timeout.
89
+ for (const cmd of summary.merge.dualWriteDroppedCommands) {
90
+ console.log(` ${pc.dim('(dropped)')} ${cmd.slice(0, 120)}${cmd.length > 120 ? '…' : ''}`);
91
+ }
92
+ }
93
+ }
94
+ // B3 — olam-meta hook injection summary
95
+ if (summary.metaHooks) {
96
+ const mh = summary.metaHooks;
97
+ const memLabel = mh.servicesStatus.memory ? pc.green('up') : pc.dim('down');
98
+ console.log(` meta-hooks: mode=${mh.mode} · memory=${memLabel}${mh.servicesStatus.memoryDetail ? pc.dim(` (${mh.servicesStatus.memoryDetail})`) : ''}`);
99
+ // C3 — auto-migration line. Surfaces atlas-shipped agentmemory hook
100
+ // entries that were stripped as part of this sync. Operator's first
101
+ // post-merge sync prints this once; subsequent syncs are no-op
102
+ // (idempotent — nothing to strip).
103
+ if (mh.autoMigrated && mh.autoMigrated.strippedCount > 0) {
104
+ console.log(` ${pc.cyan('~ auto-migrated:')} stripped ${mh.autoMigrated.strippedCount} atlas-toolbox-shipped agentmemory hook entry(ies); replaced by olam-injected blocks`);
105
+ }
106
+ if (mh.blocksAdded.length > 0) {
107
+ console.log(` ${pc.green('+ injected:')} ${mh.blocksAdded.join(', ')}`);
108
+ }
109
+ if (mh.blocksRemoved.length > 0) {
110
+ console.log(` ${pc.yellow('- stripped:')} ${mh.blocksRemoved.join(', ')}`);
111
+ }
112
+ // CP3 MEDIUM-3 fix: surface snapshot-write failures so operator
113
+ // sees that reversibility is unavailable for this sync.
114
+ if (mh.snapshotError) {
115
+ console.log(` ${pc.red('! snapshot FAILED:')} ${mh.snapshotError}`);
116
+ console.log(` ${pc.red(' (migrate-hooks-back will not be able to undo this sync)')}`);
117
+ }
84
118
  }
85
119
  console.log();
86
120
  for (const s of summary.perSource) {
@@ -95,9 +129,23 @@ export function registerSkills(program) {
95
129
  .description('Sync registered skill sources to ~/.claude/')
96
130
  .option('--dry-run', 'Resolve artifacts but do not deploy or merge')
97
131
  .option('--atlas-user <user>', 'Override atlas-user (defaults to ~/.claude/.atlas-user)')
132
+ .option('--meta-hooks <mode>', 'olam-meta hook injection mode (B3): "auto" (default) — inject blocks for detected olam services; "always" — inject all blocks unconditionally; "never" — skip injection entirely', 'auto')
98
133
  .action(async (opts) => {
99
134
  try {
100
- const summary = await syncSkills({ dryRun: opts.dryRun, atlasUser: opts.atlasUser });
135
+ // B3 validate --meta-hooks enum (commander has no built-in enum
136
+ // type). Reject early with clear error rather than silently using
137
+ // engine default on bad value.
138
+ const validModes = ['auto', 'always', 'never'];
139
+ if (opts.metaHooks && !validModes.includes(opts.metaHooks)) {
140
+ printError(`--meta-hooks must be one of: ${validModes.join(', ')} (got "${opts.metaHooks}")`);
141
+ process.exitCode = 1;
142
+ return;
143
+ }
144
+ const summary = await syncSkills({
145
+ dryRun: opts.dryRun,
146
+ atlasUser: opts.atlasUser,
147
+ metaHooks: (opts.metaHooks ?? 'auto'),
148
+ });
101
149
  printSyncSummary(summary, !!opts.dryRun);
102
150
  if (!opts.dryRun) {
103
151
  printSuccess(`synced ${summary.sourceCount} source(s), ${summary.artifactCount} artifact(s)`);
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  {
2
- "auth": "sha256:95909eba87f28cce812bbd0c00b5f83b8f132a60fd4b870996f97cf8060daaee",
3
- "devbox": "sha256:1d0bcbb6ba1a203bf460341382ba97b8d3da55b04c3af633dc50a74d1ea267c8",
4
- "devbox-base": "sha256:bac39d24d2ef3fb3b4599420e30ac9b7b06d75676680636b6412a1df8cccda42",
5
- "host-cp": "sha256:b0c1e62c36b1d647195a92100049f11dc007e89c13ca055aa4ca8eaf9adc0213",
6
- "kg-service": "sha256:447c5467c64f51756d9495da13486d85b126b134382d7dc3ff2d0cf51c321e1a",
7
- "mcp-auth": "sha256:3c17a69b8f90b2bb7d9d0e01e8032f2cbfb56282645784090d2908099566fa4a",
2
+ "auth": "sha256:9d72ea3ad7e22caba211f7bc0db4440add1a5250aed9ac4dab683b65ed50a5bc",
3
+ "devbox": "sha256:05832513cb10ad0d6fe1a0ba95cc78552291c7f41f364915cea8fc2dc74fcc1a",
4
+ "devbox-base": "sha256:21d4fdf4dbfd0ad1b5fa2e9694424cd609c528bf3ed786bec0f652d32283c26a",
5
+ "host-cp": "sha256:739bda595ac466c6de5d0c7edb9c850b507a1caba43487ef014c7f964b9fbc69",
6
+ "kg-service": "sha256:aeaedda3712acf4870c3da5b181b7bfeeb4f97e3e44909253603452944052fb2",
7
+ "mcp-auth": "sha256:b0c8fb8bda79a11aa471e8e6e738918de983f4b9d1e33b0a0bf25792724ec247",
8
8
  "$schema_version": 1,
9
- "$published_version": "0.1.146",
9
+ "$published_version": "0.1.147",
10
10
  "$registry": "ghcr.io/pleri"
11
11
  }