orbitmap 0.5.0 → 0.7.0
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/README.md +9 -9
- package/dist/adapters/cloud.d.ts +16 -1
- package/dist/adapters/cloud.js +13 -2
- package/dist/adapters/cloud.js.map +1 -1
- package/dist/adapters/local/adapter.d.ts +3 -0
- package/dist/adapters/local/adapter.js +3 -1
- package/dist/adapters/local/adapter.js.map +1 -1
- package/dist/adapters/local/entities/planning.d.ts +8 -2
- package/dist/adapters/local/entities/planning.js +34 -3
- package/dist/adapters/local/entities/planning.js.map +1 -1
- package/dist/adapters/local/entities/tasks.d.ts +1 -1
- package/dist/adapters/local/entities/tasks.js +33 -1
- package/dist/adapters/local/entities/tasks.js.map +1 -1
- package/dist/adapters/local/entities/work-items.d.ts +12 -1
- package/dist/adapters/local/entities/work-items.js +42 -13
- package/dist/adapters/local/entities/work-items.js.map +1 -1
- package/dist/adapters/local/lists.d.ts +1 -1
- package/dist/adapters/local/lists.js +1 -1
- package/dist/adapters/local/lists.js.map +1 -1
- package/dist/adapters/local/rules.d.ts +1 -1
- package/dist/adapters/local/rules.js +1 -0
- package/dist/adapters/local/rules.js.map +1 -1
- package/dist/adapters/local/types.d.ts +1 -1
- package/dist/adapters/types.d.ts +32 -0
- package/dist/agent-instructions.d.ts +16 -15
- package/dist/agent-instructions.js +126 -91
- package/dist/agent-instructions.js.map +1 -1
- package/dist/commands/create.d.ts +1 -0
- package/dist/commands/create.js +17 -6
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/emit-instructions.d.ts +26 -0
- package/dist/commands/emit-instructions.js +68 -0
- package/dist/commands/emit-instructions.js.map +1 -0
- package/dist/commands/ideas.d.ts +17 -0
- package/dist/commands/ideas.js +35 -2
- package/dist/commands/ideas.js.map +1 -1
- package/dist/commands/intent.d.ts +22 -0
- package/dist/commands/intent.js +84 -10
- package/dist/commands/intent.js.map +1 -1
- package/dist/commands/mission.d.ts +1 -0
- package/dist/commands/mission.js +1 -1
- package/dist/commands/mission.js.map +1 -1
- package/dist/commands/orbit.d.ts +1 -0
- package/dist/commands/orbit.js +1 -1
- package/dist/commands/orbit.js.map +1 -1
- package/dist/commands/setup-agent.d.ts +67 -13
- package/dist/commands/setup-agent.js +283 -28
- package/dist/commands/setup-agent.js.map +1 -1
- package/dist/commands/start.js +2 -1
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts +1 -0
- package/dist/commands/status.js +7 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/errors.d.ts +25 -1
- package/dist/errors.js +10 -2
- package/dist/errors.js.map +1 -1
- package/dist/index.js +60 -15
- package/dist/index.js.map +1 -1
- package/dist/list-options.d.ts +1 -1
- package/dist/list-options.js +1 -1
- package/dist/list-options.js.map +1 -1
- package/dist/output.js +12 -0
- package/dist/output.js.map +1 -1
- package/dist/work-log.js +8 -0
- package/dist/work-log.js.map +1 -1
- package/dist/write-target.d.ts +13 -3
- package/dist/write-target.js +40 -3
- package/dist/write-target.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ export type AgentType = 'claude' | 'gemini' | 'codex' | 'cursor' | 'windsurf' |
|
|
|
6
6
|
* `~/.codex`). This is the DEFAULT, because agent skills do **not** traverse
|
|
7
7
|
* directories: a project-level `.claude/skills/` is invisible to a session
|
|
8
8
|
* started in a sibling or child repository, while `CLAUDE.md` *is* inherited
|
|
9
|
-
* downwards — so a project-scope install hands sub-directories a
|
|
9
|
+
* downwards — so a project-scope install hands sub-directories a block that
|
|
10
10
|
* tells them to load skills they cannot see. A workspace now legitimately
|
|
11
11
|
* spans several area directories (IN-rwb5qu), so one project-scope install
|
|
12
12
|
* would only ever cover one of them.
|
|
@@ -45,12 +45,59 @@ export interface InstallTarget {
|
|
|
45
45
|
* Resolve where an install lands.
|
|
46
46
|
*
|
|
47
47
|
* User scope writes **only** under the agent's personal config directory — nothing is
|
|
48
|
-
* written into the project. That is the point: at user scope the skills and the
|
|
48
|
+
* written into the project. That is the point: at user scope the skills and the block
|
|
49
49
|
* that references them are both visible from every directory, so there is no reason to
|
|
50
50
|
* leave a second, narrower copy behind in one repository.
|
|
51
51
|
*/
|
|
52
52
|
export declare function resolveInstallTarget(agentType: AgentType, scope: SkillScope, cwd: string, homeDir?: string): InstallTarget;
|
|
53
53
|
export declare function detectAgent(cwdOverride?: string): AgentType | null;
|
|
54
|
+
/**
|
|
55
|
+
* The command our PostToolUse hook entry runs (`src/commands/emit-instructions.ts`): it
|
|
56
|
+
* re-emits any `Instructions (…)` block from an orbitmap command's stdout as
|
|
57
|
+
* `additionalContext`, so the block lands at instruction tier instead of data tier.
|
|
58
|
+
*
|
|
59
|
+
* This string is also the entry's IDENTITY. JSON has no comments, so the
|
|
60
|
+
* `ORBITMAP_START`/`ORBITMAP_END` marker convention the markdown blocks rely on cannot be
|
|
61
|
+
* reproduced here — our entry is recognised by `command === EMIT_INSTRUCTIONS_COMMAND`,
|
|
62
|
+
* never by array position. Changing this string orphans every installed entry.
|
|
63
|
+
*/
|
|
64
|
+
export declare const EMIT_INSTRUCTIONS_COMMAND = "orbitmap emit-instructions";
|
|
65
|
+
/**
|
|
66
|
+
* Where the hook entry lives for a resolved install target, or `null` when this agent
|
|
67
|
+
* has no hook mechanism this CLI knows how to write.
|
|
68
|
+
*
|
|
69
|
+
* - Claude Code: `settings.json` in the same `.claude/` directory as the skills — the
|
|
70
|
+
* hook always lands in the scope the rest of the install used (project install →
|
|
71
|
+
* `<project>/.claude/settings.json`, user install → `~/.claude/settings.json`).
|
|
72
|
+
* - Codex: `hooks.json` next to the `AGENTS.md` the instructions block went into —
|
|
73
|
+
* but only at user scope: Codex reads hooks from its `~/.codex` directory only, so a
|
|
74
|
+
* project-scope install writes none (and says so).
|
|
75
|
+
*
|
|
76
|
+
* Paths are derived from the {@link InstallTarget}, never from `os.homedir()` directly,
|
|
77
|
+
* so hermetic tests that pass an explicit home stay inside their sandbox.
|
|
78
|
+
*/
|
|
79
|
+
export declare function resolveHookSettingsPath(agentType: AgentType, target: InstallTarget): string | null;
|
|
80
|
+
export type HookWriteResult = 'created' | 'updated' | 'unchanged' | 'skipped';
|
|
81
|
+
/**
|
|
82
|
+
* Install our PostToolUse hook entry into `settingsPath`, idempotently and in the spirit
|
|
83
|
+
* of {@link writeBlock}: every key we do not own is preserved verbatim, our entry is
|
|
84
|
+
* APPENDED beside any hooks the user already has, and a second run changes nothing
|
|
85
|
+
* (`unchanged` leaves the file byte-identical).
|
|
86
|
+
*
|
|
87
|
+
* A file that is not valid JSON (or not a JSON object) is never rewritten — that returns
|
|
88
|
+
* `skipped`, and the caller must say so out loud: a hook silently not installed is a
|
|
89
|
+
* dead channel with no signal.
|
|
90
|
+
*/
|
|
91
|
+
export declare function writeEmitInstructionsHook(settingsPath: string): HookWriteResult;
|
|
92
|
+
/**
|
|
93
|
+
* Remove our hook entry from `settingsPath` — and nothing else.
|
|
94
|
+
*
|
|
95
|
+
* Mirrors the guarantee of {@link removeProjectInstall}: a user's own hooks and every
|
|
96
|
+
* unrelated key survive verbatim, an unreadable file is left alone, and the file itself
|
|
97
|
+
* is deleted only when our entry was its entire content (i.e. this CLI created it).
|
|
98
|
+
* Returns whether anything was removed.
|
|
99
|
+
*/
|
|
100
|
+
export declare function removeEmitInstructionsHook(settingsPath: string): boolean;
|
|
54
101
|
/**
|
|
55
102
|
* What a previous project-scope install left behind in `cwd`.
|
|
56
103
|
*
|
|
@@ -65,24 +112,28 @@ export interface StaleProjectInstall {
|
|
|
65
112
|
skillDirs: string[];
|
|
66
113
|
/** Absolute path of the agent config file that still carries our marker block, if any. */
|
|
67
114
|
configPath: string | null;
|
|
115
|
+
/** Absolute path of a `.claude/settings.json` that still carries our hook entry, if any. */
|
|
116
|
+
settingsPath: string | null;
|
|
68
117
|
}
|
|
69
118
|
/**
|
|
70
119
|
* Find a previous project-scope install in `cwd`.
|
|
71
120
|
*
|
|
72
|
-
* Deliberately narrow: only the five skill directories this CLI creates by name,
|
|
73
|
-
* a config file that actually contains OUR marker block
|
|
74
|
-
*
|
|
75
|
-
*
|
|
121
|
+
* Deliberately narrow: only the five skill directories this CLI creates by name, only
|
|
122
|
+
* a config file that actually contains OUR marker block, and only a `settings.json`
|
|
123
|
+
* that actually contains OUR hook entry. A user's own skill in `.claude/skills/`, an
|
|
124
|
+
* unrelated `CLAUDE.md`, or a `.claude/settings.json` without our entry are invisible
|
|
125
|
+
* here — which is what makes the cleanup below safe.
|
|
76
126
|
*/
|
|
77
127
|
export declare function detectProjectInstall(cwd: string, agentType: AgentType): StaleProjectInstall | null;
|
|
78
128
|
/**
|
|
79
129
|
* Remove a stale project-scope install — and nothing else.
|
|
80
130
|
*
|
|
81
|
-
* Only ever touches: the five skill directories named in {@link StaleProjectInstall},
|
|
82
|
-
* the marker-delimited block inside the config file
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
*
|
|
131
|
+
* Only ever touches: the five skill directories named in {@link StaleProjectInstall},
|
|
132
|
+
* the marker-delimited block inside the config file, and OUR hook entry inside
|
|
133
|
+
* `settings.json`. Text outside the markers — and every settings key that is not our
|
|
134
|
+
* entry — is kept verbatim; each file is deleted only when our content was its entire
|
|
135
|
+
* content (i.e. this CLI created it). Parent directories are removed only when they are
|
|
136
|
+
* already empty — a `.claude/` holding a user's own skills or settings survives intact.
|
|
86
137
|
* There is no recursive delete of `.claude` anywhere in this function.
|
|
87
138
|
*/
|
|
88
139
|
export declare function removeProjectInstall(stale: StaleProjectInstall): string[];
|
|
@@ -102,8 +153,10 @@ export declare function parseAgentType(value: string): AgentType | null;
|
|
|
102
153
|
* Install the OrbitMap skills for one agent, non-interactively and idempotently.
|
|
103
154
|
*
|
|
104
155
|
* At the default `user` scope: Claude Code → `~/.claude/skills/<name>/SKILL.md` × 4 +
|
|
105
|
-
* the
|
|
106
|
-
* `~/.
|
|
156
|
+
* the instructions block in `~/.claude/CLAUDE.md` + the PostToolUse hook entry in
|
|
157
|
+
* `~/.claude/settings.json`; Gemini/Codex → the inlined block in `~/.gemini/GEMINI.md` /
|
|
158
|
+
* `~/.codex/AGENTS.md` (Codex also gets the hook entry in `~/.codex/hooks.json`, with
|
|
159
|
+
* its two remaining manual steps printed). **Nothing is written into `cwd`.**
|
|
107
160
|
* At `project` scope everything lands in `cwd`, exactly as it used to.
|
|
108
161
|
*
|
|
109
162
|
* Safe to call repeatedly: identical input leaves the tree byte-identical, and the
|
|
@@ -115,6 +168,7 @@ export declare function parseAgentType(value: string): AgentType | null;
|
|
|
115
168
|
*/
|
|
116
169
|
export declare function installAgentSkills(cwd: string, agentType: AgentType, scope?: SkillScope, options?: {
|
|
117
170
|
cleanProject?: boolean;
|
|
171
|
+
homeDir?: string;
|
|
118
172
|
}): Promise<InstallTarget>;
|
|
119
173
|
/**
|
|
120
174
|
* What the drift check found in the installed config files, for tests and callers.
|
|
@@ -2,7 +2,7 @@ import fs from 'node:fs';
|
|
|
2
2
|
import os from 'node:os';
|
|
3
3
|
import path from 'node:path';
|
|
4
4
|
import readline from 'node:readline';
|
|
5
|
-
import { SKILLS, CLI_VERSION, MARKER_START_PREFIX, MARKER_END, buildSkillFile,
|
|
5
|
+
import { SKILLS, CLI_VERSION, MARKER_START_PREFIX, MARKER_END, buildSkillFile, buildClaudeBlock, buildGenericBlock, parseInstalledMarkerVersion, } from '../agent-instructions.js';
|
|
6
6
|
/** The documented default. Exported so `init` and the tests agree on one value. */
|
|
7
7
|
export const DEFAULT_SKILL_SCOPE = 'user';
|
|
8
8
|
export const SKILL_SCOPES = ['user', 'project'];
|
|
@@ -41,7 +41,7 @@ export function skillScopeNames() {
|
|
|
41
41
|
* Resolve where an install lands.
|
|
42
42
|
*
|
|
43
43
|
* User scope writes **only** under the agent's personal config directory — nothing is
|
|
44
|
-
* written into the project. That is the point: at user scope the skills and the
|
|
44
|
+
* written into the project. That is the point: at user scope the skills and the block
|
|
45
45
|
* that references them are both visible from every directory, so there is no reason to
|
|
46
46
|
* leave a second, narrower copy behind in one repository.
|
|
47
47
|
*/
|
|
@@ -196,38 +196,252 @@ function writeSkills(skillsDir) {
|
|
|
196
196
|
return { name: skill.name, file, action: existed ? 'updated' : 'created' };
|
|
197
197
|
});
|
|
198
198
|
}
|
|
199
|
+
// --- The relay hook (settings.json / hooks.json) — IN-pp967d -------------------
|
|
200
|
+
/**
|
|
201
|
+
* The command our PostToolUse hook entry runs (`src/commands/emit-instructions.ts`): it
|
|
202
|
+
* re-emits any `Instructions (…)` block from an orbitmap command's stdout as
|
|
203
|
+
* `additionalContext`, so the block lands at instruction tier instead of data tier.
|
|
204
|
+
*
|
|
205
|
+
* This string is also the entry's IDENTITY. JSON has no comments, so the
|
|
206
|
+
* `ORBITMAP_START`/`ORBITMAP_END` marker convention the markdown blocks rely on cannot be
|
|
207
|
+
* reproduced here — our entry is recognised by `command === EMIT_INSTRUCTIONS_COMMAND`,
|
|
208
|
+
* never by array position. Changing this string orphans every installed entry.
|
|
209
|
+
*/
|
|
210
|
+
export const EMIT_INSTRUCTIONS_COMMAND = 'orbitmap emit-instructions';
|
|
211
|
+
/** Coarse tool filter — the relay only ever fires after Bash calls. */
|
|
212
|
+
const EMIT_HOOK_MATCHER = 'Bash';
|
|
213
|
+
/**
|
|
214
|
+
* Fine filter, evaluated by the agent BEFORE the hook process spawns, so non-matching
|
|
215
|
+
* Bash calls cost nothing. Deliberately simple: a cleverer pattern risks silently
|
|
216
|
+
* matching nothing, and a dead hook gives no signal.
|
|
217
|
+
*/
|
|
218
|
+
const EMIT_HOOK_IF = 'Bash(orbitmap intent update *)';
|
|
219
|
+
function isRecord(value) {
|
|
220
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
221
|
+
}
|
|
222
|
+
/** Our hook entry, exactly as written into `hooks.PostToolUse[n].hooks`. */
|
|
223
|
+
function buildEmitHookEntry() {
|
|
224
|
+
return { type: 'command', if: EMIT_HOOK_IF, command: EMIT_INSTRUCTIONS_COMMAND };
|
|
225
|
+
}
|
|
226
|
+
/** True when `entry` is ours — identity is the command string, nothing else. */
|
|
227
|
+
function isOurHookEntry(entry) {
|
|
228
|
+
return isRecord(entry) && entry.command === EMIT_INSTRUCTIONS_COMMAND;
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Where the hook entry lives for a resolved install target, or `null` when this agent
|
|
232
|
+
* has no hook mechanism this CLI knows how to write.
|
|
233
|
+
*
|
|
234
|
+
* - Claude Code: `settings.json` in the same `.claude/` directory as the skills — the
|
|
235
|
+
* hook always lands in the scope the rest of the install used (project install →
|
|
236
|
+
* `<project>/.claude/settings.json`, user install → `~/.claude/settings.json`).
|
|
237
|
+
* - Codex: `hooks.json` next to the `AGENTS.md` the instructions block went into —
|
|
238
|
+
* but only at user scope: Codex reads hooks from its `~/.codex` directory only, so a
|
|
239
|
+
* project-scope install writes none (and says so).
|
|
240
|
+
*
|
|
241
|
+
* Paths are derived from the {@link InstallTarget}, never from `os.homedir()` directly,
|
|
242
|
+
* so hermetic tests that pass an explicit home stay inside their sandbox.
|
|
243
|
+
*/
|
|
244
|
+
export function resolveHookSettingsPath(agentType, target) {
|
|
245
|
+
if (agentType === 'claude') {
|
|
246
|
+
return path.join(path.dirname(target.skillsDir), 'settings.json');
|
|
247
|
+
}
|
|
248
|
+
if (agentType === 'codex' && target.scope === 'user') {
|
|
249
|
+
return path.join(path.dirname(target.configPath), 'hooks.json');
|
|
250
|
+
}
|
|
251
|
+
return null;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Install our PostToolUse hook entry into `settingsPath`, idempotently and in the spirit
|
|
255
|
+
* of {@link writeBlock}: every key we do not own is preserved verbatim, our entry is
|
|
256
|
+
* APPENDED beside any hooks the user already has, and a second run changes nothing
|
|
257
|
+
* (`unchanged` leaves the file byte-identical).
|
|
258
|
+
*
|
|
259
|
+
* A file that is not valid JSON (or not a JSON object) is never rewritten — that returns
|
|
260
|
+
* `skipped`, and the caller must say so out loud: a hook silently not installed is a
|
|
261
|
+
* dead channel with no signal.
|
|
262
|
+
*/
|
|
263
|
+
export function writeEmitInstructionsHook(settingsPath) {
|
|
264
|
+
let root = {};
|
|
265
|
+
const existed = fs.existsSync(settingsPath);
|
|
266
|
+
if (existed) {
|
|
267
|
+
let parsed;
|
|
268
|
+
try {
|
|
269
|
+
parsed = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
|
|
270
|
+
}
|
|
271
|
+
catch {
|
|
272
|
+
return 'skipped';
|
|
273
|
+
}
|
|
274
|
+
if (!isRecord(parsed))
|
|
275
|
+
return 'skipped';
|
|
276
|
+
root = parsed;
|
|
277
|
+
}
|
|
278
|
+
if (root.hooks === undefined)
|
|
279
|
+
root.hooks = {};
|
|
280
|
+
const hooks = root.hooks;
|
|
281
|
+
if (!isRecord(hooks))
|
|
282
|
+
return 'skipped';
|
|
283
|
+
if (hooks.PostToolUse === undefined)
|
|
284
|
+
hooks.PostToolUse = [];
|
|
285
|
+
const postToolUse = hooks.PostToolUse;
|
|
286
|
+
if (!Array.isArray(postToolUse))
|
|
287
|
+
return 'skipped';
|
|
288
|
+
// Already installed and current? Do not touch the file at all.
|
|
289
|
+
const ours = [];
|
|
290
|
+
for (const group of postToolUse) {
|
|
291
|
+
if (!isRecord(group) || !Array.isArray(group.hooks))
|
|
292
|
+
continue;
|
|
293
|
+
for (const entry of group.hooks) {
|
|
294
|
+
if (isOurHookEntry(entry))
|
|
295
|
+
ours.push({ group, entry });
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
if (ours.length === 1) {
|
|
299
|
+
const { group, entry } = ours[0];
|
|
300
|
+
if (group.matcher === EMIT_HOOK_MATCHER &&
|
|
301
|
+
entry.type === 'command' &&
|
|
302
|
+
entry.if === EMIT_HOOK_IF) {
|
|
303
|
+
return 'unchanged';
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
// Stale, duplicated, or absent: converge on exactly one current entry.
|
|
307
|
+
stripOurHookEntries(postToolUse);
|
|
308
|
+
postToolUse.push({ matcher: EMIT_HOOK_MATCHER, hooks: [buildEmitHookEntry()] });
|
|
309
|
+
fs.mkdirSync(path.dirname(settingsPath), { recursive: true });
|
|
310
|
+
fs.writeFileSync(settingsPath, `${JSON.stringify(root, null, 2)}\n`, 'utf-8');
|
|
311
|
+
return existed ? 'updated' : 'created';
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Drop every entry of ours from a `PostToolUse` array, in place. A matcher group that
|
|
315
|
+
* held ONLY our entry was created by this CLI, so it goes too; a user's group that we
|
|
316
|
+
* merely appear in keeps everything else it carries. Returns whether anything changed.
|
|
317
|
+
*/
|
|
318
|
+
function stripOurHookEntries(postToolUse) {
|
|
319
|
+
let removed = false;
|
|
320
|
+
for (let i = postToolUse.length - 1; i >= 0; i -= 1) {
|
|
321
|
+
const group = postToolUse[i];
|
|
322
|
+
if (!isRecord(group) || !Array.isArray(group.hooks))
|
|
323
|
+
continue;
|
|
324
|
+
const kept = group.hooks.filter((entry) => !isOurHookEntry(entry));
|
|
325
|
+
if (kept.length === group.hooks.length)
|
|
326
|
+
continue;
|
|
327
|
+
removed = true;
|
|
328
|
+
if (kept.length === 0) {
|
|
329
|
+
postToolUse.splice(i, 1);
|
|
330
|
+
}
|
|
331
|
+
else {
|
|
332
|
+
group.hooks = kept;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
return removed;
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* Remove our hook entry from `settingsPath` — and nothing else.
|
|
339
|
+
*
|
|
340
|
+
* Mirrors the guarantee of {@link removeProjectInstall}: a user's own hooks and every
|
|
341
|
+
* unrelated key survive verbatim, an unreadable file is left alone, and the file itself
|
|
342
|
+
* is deleted only when our entry was its entire content (i.e. this CLI created it).
|
|
343
|
+
* Returns whether anything was removed.
|
|
344
|
+
*/
|
|
345
|
+
export function removeEmitInstructionsHook(settingsPath) {
|
|
346
|
+
if (!fs.existsSync(settingsPath))
|
|
347
|
+
return false;
|
|
348
|
+
let root;
|
|
349
|
+
try {
|
|
350
|
+
root = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
|
|
351
|
+
}
|
|
352
|
+
catch {
|
|
353
|
+
return false;
|
|
354
|
+
}
|
|
355
|
+
if (!isRecord(root))
|
|
356
|
+
return false;
|
|
357
|
+
const hooks = root.hooks;
|
|
358
|
+
if (!isRecord(hooks) || !Array.isArray(hooks.PostToolUse))
|
|
359
|
+
return false;
|
|
360
|
+
if (!stripOurHookEntries(hooks.PostToolUse))
|
|
361
|
+
return false;
|
|
362
|
+
if (hooks.PostToolUse.length === 0)
|
|
363
|
+
delete hooks.PostToolUse;
|
|
364
|
+
if (Object.keys(hooks).length === 0)
|
|
365
|
+
delete root.hooks;
|
|
366
|
+
if (Object.keys(root).length === 0) {
|
|
367
|
+
fs.rmSync(settingsPath, { force: true });
|
|
368
|
+
}
|
|
369
|
+
else {
|
|
370
|
+
fs.writeFileSync(settingsPath, `${JSON.stringify(root, null, 2)}\n`, 'utf-8');
|
|
371
|
+
}
|
|
372
|
+
return true;
|
|
373
|
+
}
|
|
374
|
+
/** Does this settings/hooks file carry our entry? `false` on anything unreadable. */
|
|
375
|
+
function settingsContainOurHook(settingsPath) {
|
|
376
|
+
if (!fs.existsSync(settingsPath))
|
|
377
|
+
return false;
|
|
378
|
+
try {
|
|
379
|
+
const root = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
|
|
380
|
+
if (!isRecord(root) || !isRecord(root.hooks) || !Array.isArray(root.hooks.PostToolUse)) {
|
|
381
|
+
return false;
|
|
382
|
+
}
|
|
383
|
+
return root.hooks.PostToolUse.some((group) => isRecord(group) && Array.isArray(group.hooks) && group.hooks.some(isOurHookEntry));
|
|
384
|
+
}
|
|
385
|
+
catch {
|
|
386
|
+
return false;
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
/** One console line per hook-write outcome — shared by the Claude and Codex installers. */
|
|
390
|
+
function reportHookWrite(result, file) {
|
|
391
|
+
switch (result) {
|
|
392
|
+
case 'created':
|
|
393
|
+
console.log(`Created ${file} with the OrbitMap PostToolUse hook ` +
|
|
394
|
+
`(relays Instructions from command output).`);
|
|
395
|
+
break;
|
|
396
|
+
case 'updated':
|
|
397
|
+
console.log(`Installed the OrbitMap PostToolUse hook in ${file}.`);
|
|
398
|
+
break;
|
|
399
|
+
case 'unchanged':
|
|
400
|
+
console.log(`The OrbitMap PostToolUse hook in ${file} is already current.`);
|
|
401
|
+
break;
|
|
402
|
+
case 'skipped':
|
|
403
|
+
console.log(`Warning: ${file} is not valid JSON — the OrbitMap PostToolUse hook was NOT ` +
|
|
404
|
+
`installed. Nothing in the file was changed; fix it and re-run ` +
|
|
405
|
+
`\`orbitmap setup-agent\`.`);
|
|
406
|
+
break;
|
|
407
|
+
}
|
|
408
|
+
}
|
|
199
409
|
// --- Per-agent installers ---
|
|
200
410
|
/**
|
|
201
|
-
* Claude: install the five on-demand skills + a thin always-on
|
|
411
|
+
* Claude: install the five on-demand skills + a thin always-on instructions block in
|
|
412
|
+
* CLAUDE.md + the PostToolUse hook entry in the same scope's `settings.json`.
|
|
202
413
|
* This mirrors the MCP split of system-instructions (always on) + tool catalogue (on demand).
|
|
203
414
|
*
|
|
204
|
-
* The
|
|
415
|
+
* The block and the skills always land in the *same* scope, so the block can never promise
|
|
205
416
|
* skills that the reading session cannot load: at user scope both live under `~/.claude`
|
|
206
|
-
* (visible everywhere); at project scope both live in this directory, and the
|
|
417
|
+
* (visible everywhere); at project scope both live in this directory, and the block says so.
|
|
418
|
+
* The hook entry follows the same scope, for the same reason.
|
|
207
419
|
*/
|
|
208
420
|
function setupClaude(cwd, target) {
|
|
209
421
|
const skills = writeSkills(target.skillsDir);
|
|
210
|
-
const
|
|
422
|
+
const blockAction = writeBlock(target.configPath, buildClaudeBlock(target.scope));
|
|
211
423
|
for (const skill of skills) {
|
|
212
424
|
console.log(`${skill.action === 'created' ? 'Installed' : 'Updated'} the \`${skill.name}\` skill at ` +
|
|
213
425
|
`${displayPath(target, cwd, skill.file)}.`);
|
|
214
426
|
}
|
|
215
|
-
const
|
|
216
|
-
switch (
|
|
427
|
+
const blockFile = displayPath(target, cwd, target.configPath);
|
|
428
|
+
switch (blockAction) {
|
|
217
429
|
case 'created':
|
|
218
|
-
console.log(`Created ${
|
|
430
|
+
console.log(`Created ${blockFile} with the OrbitMap instructions block.`);
|
|
219
431
|
break;
|
|
220
432
|
case 'updated':
|
|
221
|
-
console.log(`Updated the OrbitMap
|
|
433
|
+
console.log(`Updated the OrbitMap instructions block in ${blockFile}.`);
|
|
222
434
|
break;
|
|
223
435
|
case 'appended':
|
|
224
|
-
console.log(`Appended the OrbitMap
|
|
436
|
+
console.log(`Appended the OrbitMap instructions block to ${blockFile}.`);
|
|
225
437
|
break;
|
|
226
438
|
}
|
|
439
|
+
const settingsPath = resolveHookSettingsPath('claude', target);
|
|
440
|
+
reportHookWrite(writeEmitInstructionsHook(settingsPath), displayPath(target, cwd, settingsPath));
|
|
227
441
|
console.log('The skills load on demand — your config stays lean.');
|
|
228
442
|
}
|
|
229
443
|
/** Non-Claude agents: inline the full markdown fallback (no skill ecosystem). */
|
|
230
|
-
function setupGeneric(cwd, target) {
|
|
444
|
+
function setupGeneric(cwd, agentType, target) {
|
|
231
445
|
const action = writeBlock(target.configPath, buildGenericBlock());
|
|
232
446
|
const file = displayPath(target, cwd, target.configPath);
|
|
233
447
|
switch (action) {
|
|
@@ -241,14 +455,41 @@ function setupGeneric(cwd, target) {
|
|
|
241
455
|
console.log(`Appended OrbitMap instructions to ${file}.`);
|
|
242
456
|
break;
|
|
243
457
|
}
|
|
458
|
+
if (agentType === 'codex')
|
|
459
|
+
setupCodexHook(cwd, target);
|
|
460
|
+
}
|
|
461
|
+
/**
|
|
462
|
+
* Codex: write the hook entry into `~/.codex/hooks.json` — and NEVER report it as live.
|
|
463
|
+
* Two steps cannot be automated from here (`[features] hooks = true` in
|
|
464
|
+
* `~/.codex/config.toml`, and trusting the hook via `/hooks` inside Codex), and a user
|
|
465
|
+
* believing the hook works when it does not is the worst outcome, so a Codex install
|
|
466
|
+
* always ends by printing what remains manual.
|
|
467
|
+
*/
|
|
468
|
+
function setupCodexHook(cwd, target) {
|
|
469
|
+
const hooksPath = resolveHookSettingsPath('codex', target);
|
|
470
|
+
if (hooksPath === null) {
|
|
471
|
+
// Project scope: Codex reads hooks from ~/.codex only — say so instead of writing a
|
|
472
|
+
// file nothing will ever read.
|
|
473
|
+
console.log('The OrbitMap PostToolUse hook was NOT installed: Codex reads hooks from ~/.codex ' +
|
|
474
|
+
'only. Re-run with `--scope user` to install it.');
|
|
475
|
+
return;
|
|
476
|
+
}
|
|
477
|
+
const result = writeEmitInstructionsHook(hooksPath);
|
|
478
|
+
reportHookWrite(result, displayPath(target, cwd, hooksPath));
|
|
479
|
+
if (result === 'skipped')
|
|
480
|
+
return;
|
|
481
|
+
console.log('The Codex hook is NOT active yet — two steps remain manual:');
|
|
482
|
+
console.log(' 1. Enable hooks in ~/.codex/config.toml: [features] hooks = true');
|
|
483
|
+
console.log(' 2. Trust the hook inside Codex: run /hooks and approve `orbitmap emit-instructions`.');
|
|
244
484
|
}
|
|
245
485
|
/**
|
|
246
486
|
* Find a previous project-scope install in `cwd`.
|
|
247
487
|
*
|
|
248
|
-
* Deliberately narrow: only the five skill directories this CLI creates by name,
|
|
249
|
-
* a config file that actually contains OUR marker block
|
|
250
|
-
*
|
|
251
|
-
*
|
|
488
|
+
* Deliberately narrow: only the five skill directories this CLI creates by name, only
|
|
489
|
+
* a config file that actually contains OUR marker block, and only a `settings.json`
|
|
490
|
+
* that actually contains OUR hook entry. A user's own skill in `.claude/skills/`, an
|
|
491
|
+
* unrelated `CLAUDE.md`, or a `.claude/settings.json` without our entry are invisible
|
|
492
|
+
* here — which is what makes the cleanup below safe.
|
|
252
493
|
*/
|
|
253
494
|
export function detectProjectInstall(cwd, agentType) {
|
|
254
495
|
const skillDirs = agentType === 'claude'
|
|
@@ -262,18 +503,22 @@ export function detectProjectInstall(cwd, agentType) {
|
|
|
262
503
|
configPath = configFile;
|
|
263
504
|
}
|
|
264
505
|
}
|
|
265
|
-
|
|
506
|
+
// Only Claude gets a project-scope hook entry (Codex hooks are user-level only).
|
|
507
|
+
const settingsFile = path.join(cwd, '.claude', 'settings.json');
|
|
508
|
+
const settingsPath = agentType === 'claude' && settingsContainOurHook(settingsFile) ? settingsFile : null;
|
|
509
|
+
if (skillDirs.length === 0 && configPath === null && settingsPath === null)
|
|
266
510
|
return null;
|
|
267
|
-
return { skillDirs, configPath };
|
|
511
|
+
return { skillDirs, configPath, settingsPath };
|
|
268
512
|
}
|
|
269
513
|
/**
|
|
270
514
|
* Remove a stale project-scope install — and nothing else.
|
|
271
515
|
*
|
|
272
|
-
* Only ever touches: the five skill directories named in {@link StaleProjectInstall},
|
|
273
|
-
* the marker-delimited block inside the config file
|
|
274
|
-
*
|
|
275
|
-
*
|
|
276
|
-
*
|
|
516
|
+
* Only ever touches: the five skill directories named in {@link StaleProjectInstall},
|
|
517
|
+
* the marker-delimited block inside the config file, and OUR hook entry inside
|
|
518
|
+
* `settings.json`. Text outside the markers — and every settings key that is not our
|
|
519
|
+
* entry — is kept verbatim; each file is deleted only when our content was its entire
|
|
520
|
+
* content (i.e. this CLI created it). Parent directories are removed only when they are
|
|
521
|
+
* already empty — a `.claude/` holding a user's own skills or settings survives intact.
|
|
277
522
|
* There is no recursive delete of `.claude` anywhere in this function.
|
|
278
523
|
*/
|
|
279
524
|
export function removeProjectInstall(stale) {
|
|
@@ -282,6 +527,10 @@ export function removeProjectInstall(stale) {
|
|
|
282
527
|
fs.rmSync(dir, { recursive: true, force: true });
|
|
283
528
|
removed.push(dir);
|
|
284
529
|
}
|
|
530
|
+
if (stale.settingsPath && removeEmitInstructionsHook(stale.settingsPath)) {
|
|
531
|
+
removed.push(stale.settingsPath);
|
|
532
|
+
pruneIfEmpty(path.dirname(stale.settingsPath));
|
|
533
|
+
}
|
|
285
534
|
if (stale.configPath) {
|
|
286
535
|
const content = fs.readFileSync(stale.configPath, 'utf-8');
|
|
287
536
|
const startIdx = content.indexOf(MARKER_START_PREFIX);
|
|
@@ -327,7 +576,11 @@ async function handleStaleProjectInstall(cwd, agentType, cleanProject) {
|
|
|
327
576
|
const stale = detectProjectInstall(cwd, agentType);
|
|
328
577
|
if (!stale)
|
|
329
578
|
return;
|
|
330
|
-
const paths = [
|
|
579
|
+
const paths = [
|
|
580
|
+
...stale.skillDirs,
|
|
581
|
+
...(stale.configPath ? [stale.configPath] : []),
|
|
582
|
+
...(stale.settingsPath ? [stale.settingsPath] : []),
|
|
583
|
+
];
|
|
331
584
|
console.log('');
|
|
332
585
|
console.log('Heads up: this directory also has an older PROJECT-scope install:');
|
|
333
586
|
for (const p of paths)
|
|
@@ -380,8 +633,10 @@ export function parseAgentType(value) {
|
|
|
380
633
|
* Install the OrbitMap skills for one agent, non-interactively and idempotently.
|
|
381
634
|
*
|
|
382
635
|
* At the default `user` scope: Claude Code → `~/.claude/skills/<name>/SKILL.md` × 4 +
|
|
383
|
-
* the
|
|
384
|
-
* `~/.
|
|
636
|
+
* the instructions block in `~/.claude/CLAUDE.md` + the PostToolUse hook entry in
|
|
637
|
+
* `~/.claude/settings.json`; Gemini/Codex → the inlined block in `~/.gemini/GEMINI.md` /
|
|
638
|
+
* `~/.codex/AGENTS.md` (Codex also gets the hook entry in `~/.codex/hooks.json`, with
|
|
639
|
+
* its two remaining manual steps printed). **Nothing is written into `cwd`.**
|
|
385
640
|
* At `project` scope everything lands in `cwd`, exactly as it used to.
|
|
386
641
|
*
|
|
387
642
|
* Safe to call repeatedly: identical input leaves the tree byte-identical, and the
|
|
@@ -392,7 +647,7 @@ export function parseAgentType(value) {
|
|
|
392
647
|
* {@link handleStaleProjectInstall}.
|
|
393
648
|
*/
|
|
394
649
|
export async function installAgentSkills(cwd, agentType, scope = DEFAULT_SKILL_SCOPE, options = {}) {
|
|
395
|
-
const target = resolveInstallTarget(agentType, scope, cwd);
|
|
650
|
+
const target = resolveInstallTarget(agentType, scope, cwd, options.homeDir ?? os.homedir());
|
|
396
651
|
if (target.requestedScope === 'user' && target.scope === 'project') {
|
|
397
652
|
console.log(`${AGENTS[agentType].label} has no personal (user-level) instructions file — ` +
|
|
398
653
|
`installing into this directory instead.`);
|
|
@@ -401,7 +656,7 @@ export async function installAgentSkills(cwd, agentType, scope = DEFAULT_SKILL_S
|
|
|
401
656
|
setupClaude(cwd, target);
|
|
402
657
|
}
|
|
403
658
|
else {
|
|
404
|
-
setupGeneric(cwd, target);
|
|
659
|
+
setupGeneric(cwd, agentType, target);
|
|
405
660
|
}
|
|
406
661
|
if (target.scope === 'user') {
|
|
407
662
|
console.log('Installed at user scope — every session and subagent sees them, in any directory.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-agent.js","sourceRoot":"","sources":["../../src/commands/setup-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup-agent.js","sourceRoot":"","sources":["../../src/commands/setup-agent.ts"],"names":[],"mappings":"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"}
|