@aligndottech/cli 0.57.0 → 0.58.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 +31 -18
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +14 -0
- package/dist/bin.js.map +1 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +24 -2
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/import/git.d.ts.map +1 -1
- package/dist/commands/import/git.js +8 -4
- package/dist/commands/import/git.js.map +1 -1
- package/dist/commands/mcp.js +1 -1
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +26 -12
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/use.d.ts +2 -0
- package/dist/commands/use.d.ts.map +1 -1
- package/dist/commands/use.js +19 -1
- package/dist/commands/use.js.map +1 -1
- package/dist/commands/why.d.ts.map +1 -1
- package/dist/commands/why.js +91 -53
- package/dist/commands/why.js.map +1 -1
- package/dist/lib/agent-rules.d.ts +11 -4
- package/dist/lib/agent-rules.d.ts.map +1 -1
- package/dist/lib/agent-rules.js +163 -190
- package/dist/lib/agent-rules.js.map +1 -1
- package/dist/lib/ask-listing.d.ts +30 -0
- package/dist/lib/ask-listing.d.ts.map +1 -0
- package/dist/lib/ask-listing.js +60 -0
- package/dist/lib/ask-listing.js.map +1 -0
- package/dist/lib/capture-report.d.ts.map +1 -1
- package/dist/lib/capture-report.js +11 -3
- package/dist/lib/capture-report.js.map +1 -1
- package/dist/lib/claude-presence.d.ts +12 -0
- package/dist/lib/claude-presence.d.ts.map +1 -0
- package/dist/lib/claude-presence.js +19 -0
- package/dist/lib/claude-presence.js.map +1 -0
- package/dist/lib/config.d.ts +2 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +4 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/doctor.d.ts +9 -1
- package/dist/lib/doctor.d.ts.map +1 -1
- package/dist/lib/doctor.js +19 -1
- package/dist/lib/doctor.js.map +1 -1
- package/dist/lib/embedding-assets.d.ts +40 -0
- package/dist/lib/embedding-assets.d.ts.map +1 -0
- package/dist/lib/embedding-assets.js +74 -0
- package/dist/lib/embedding-assets.js.map +1 -0
- package/dist/lib/embedding-runtime.d.ts +41 -0
- package/dist/lib/embedding-runtime.d.ts.map +1 -0
- package/dist/lib/embedding-runtime.js +224 -0
- package/dist/lib/embedding-runtime.js.map +1 -0
- package/dist/lib/fetchers/git.d.ts +3 -0
- package/dist/lib/fetchers/git.d.ts.map +1 -1
- package/dist/lib/fetchers/git.js +9 -5
- package/dist/lib/fetchers/git.js.map +1 -1
- package/dist/lib/found-summary.d.ts.map +1 -1
- package/dist/lib/found-summary.js +19 -3
- package/dist/lib/found-summary.js.map +1 -1
- package/dist/lib/gateway-client.d.ts.map +1 -1
- package/dist/lib/gateway-client.js +21 -1
- package/dist/lib/gateway-client.js.map +1 -1
- package/dist/lib/git.d.ts +7 -0
- package/dist/lib/git.d.ts.map +1 -1
- package/dist/lib/git.js +7 -2
- package/dist/lib/git.js.map +1 -1
- package/dist/lib/import-defaults.d.ts +11 -4
- package/dist/lib/import-defaults.d.ts.map +1 -1
- package/dist/lib/import-defaults.js +11 -4
- package/dist/lib/import-defaults.js.map +1 -1
- package/dist/lib/launch/mcp-child-env.d.ts.map +1 -1
- package/dist/lib/launch/mcp-child-env.js +6 -4
- package/dist/lib/launch/mcp-child-env.js.map +1 -1
- package/dist/lib/local-db.d.ts +13 -0
- package/dist/lib/local-db.d.ts.map +1 -1
- package/dist/lib/local-db.js +23 -0
- package/dist/lib/local-db.js.map +1 -1
- package/dist/lib/local-embeddings-native.d.ts +17 -0
- package/dist/lib/local-embeddings-native.d.ts.map +1 -0
- package/dist/lib/local-embeddings-native.js +78 -0
- package/dist/lib/local-embeddings-native.js.map +1 -0
- package/dist/lib/local-embeddings.d.ts.map +1 -1
- package/dist/lib/local-embeddings.js +46 -47
- package/dist/lib/local-embeddings.js.map +1 -1
- package/dist/lib/local-gateway-client.d.ts +2 -2
- package/dist/lib/local-gateway-client.d.ts.map +1 -1
- package/dist/lib/local-gateway-client.js +43 -31
- package/dist/lib/local-gateway-client.js.map +1 -1
- package/dist/lib/local-thresholds.d.ts +8 -0
- package/dist/lib/local-thresholds.d.ts.map +1 -1
- package/dist/lib/local-thresholds.js +8 -0
- package/dist/lib/local-thresholds.js.map +1 -1
- package/dist/lib/model-cache.d.ts +13 -0
- package/dist/lib/model-cache.d.ts.map +1 -1
- package/dist/lib/model-cache.js +26 -0
- package/dist/lib/model-cache.js.map +1 -1
- package/dist/lib/next-step.d.ts +2 -0
- package/dist/lib/next-step.d.ts.map +1 -1
- package/dist/lib/next-step.js +37 -16
- package/dist/lib/next-step.js.map +1 -1
- package/dist/lib/node-floor.d.ts +6 -0
- package/dist/lib/node-floor.d.ts.map +1 -0
- package/dist/lib/node-floor.js +15 -0
- package/dist/lib/node-floor.js.map +1 -0
- package/dist/lib/safe-config-write.d.ts +24 -1
- package/dist/lib/safe-config-write.d.ts.map +1 -1
- package/dist/lib/safe-config-write.js +113 -26
- package/dist/lib/safe-config-write.js.map +1 -1
- package/dist/lib/scope-real.d.ts.map +1 -1
- package/dist/lib/search-query.d.ts +21 -0
- package/dist/lib/search-query.d.ts.map +1 -1
- package/dist/lib/search-query.js +1 -1
- package/dist/lib/search-query.js.map +1 -1
- package/dist/lib/search-rerank.d.ts +23 -0
- package/dist/lib/search-rerank.d.ts.map +1 -0
- package/dist/lib/search-rerank.js +63 -0
- package/dist/lib/search-rerank.js.map +1 -0
- package/dist/lib/suppress-sqlite-warning.d.ts +13 -0
- package/dist/lib/suppress-sqlite-warning.d.ts.map +1 -0
- package/dist/lib/suppress-sqlite-warning.js +21 -0
- package/dist/lib/suppress-sqlite-warning.js.map +1 -0
- package/dist/lib/sync/real-env.d.ts.map +1 -1
- package/dist/lib/sync/spawn-background.d.ts +1 -1
- package/dist/lib/sync/spawn-background.d.ts.map +1 -1
- package/dist/lib/sync/spawn-background.js +1 -1
- package/dist/lib/sync/spawn-background.js.map +1 -1
- package/dist/lib/tar-lite.d.ts +18 -0
- package/dist/lib/tar-lite.d.ts.map +1 -0
- package/dist/lib/tar-lite.js +120 -0
- package/dist/lib/tar-lite.js.map +1 -0
- package/dist/lib/user-hooks.d.ts.map +1 -1
- package/dist/lib/user-hooks.js +13 -3
- package/dist/lib/user-hooks.js.map +1 -1
- package/dist/lib/verified-download.d.ts +19 -0
- package/dist/lib/verified-download.d.ts.map +1 -0
- package/dist/lib/verified-download.js +105 -0
- package/dist/lib/verified-download.js.map +1 -0
- package/package.json +6 -6
package/dist/commands/why.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"why.js","sourceRoot":"","sources":["../../src/commands/why.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"why.js","sourceRoot":"","sources":["../../src/commands/why.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,12 +9,12 @@ export declare function isAlignSessionHookGroup(group: unknown): boolean;
|
|
|
9
9
|
*/
|
|
10
10
|
export declare function alignClaudeHooks(env?: string): Record<'PreToolUse' | 'PostToolUse', unknown[]>;
|
|
11
11
|
export declare function writeClaudeCodeHook(cwd: string, env?: string, onForeign?: OnForeign): boolean;
|
|
12
|
-
export declare function writeClaudeCodeSessionHook(cwd: string):
|
|
12
|
+
export declare function writeClaudeCodeSessionHook(cwd: string): boolean;
|
|
13
13
|
/** The managed CLAUDE.md block as text, for per-session injection (C1). */
|
|
14
14
|
export declare function alignNudgeBody(): string;
|
|
15
|
-
export declare function writeManagedNudge(cwd: string):
|
|
16
|
-
export declare function writeAgentsNudge(cwd: string):
|
|
17
|
-
export declare function writeCursorRule(cwd: string):
|
|
15
|
+
export declare function writeManagedNudge(cwd: string): boolean;
|
|
16
|
+
export declare function writeAgentsNudge(cwd: string): boolean;
|
|
17
|
+
export declare function writeCursorRule(cwd: string): boolean;
|
|
18
18
|
export declare function writeProjectMcpConfig(cwd: string, env?: string, onForeign?: OnForeign): boolean;
|
|
19
19
|
export declare function piExtensionBody(env?: string): string;
|
|
20
20
|
export declare function writePiExtension(cwd: string, env?: string, onForeign?: OnForeign): boolean;
|
|
@@ -26,4 +26,11 @@ export declare function setupAgentAlignment(opts: {
|
|
|
26
26
|
env?: string;
|
|
27
27
|
onForeign?: OnForeign;
|
|
28
28
|
}): string[];
|
|
29
|
+
/**
|
|
30
|
+
* Files under `cwd` that carry align's own text, for the case where `align use --undo` has no
|
|
31
|
+
* record of writing them (an older build wrote them, or the record was lost). Read only: undo
|
|
32
|
+
* names these and touches none of them, because without a record it cannot tell align's text
|
|
33
|
+
* from the user's.
|
|
34
|
+
*/
|
|
35
|
+
export declare function projectFilesWithAlignText(cwd: string): string[];
|
|
29
36
|
//# sourceMappingURL=agent-rules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-rules.d.ts","sourceRoot":"","sources":["../../src/lib/agent-rules.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-rules.d.ts","sourceRoot":"","sources":["../../src/lib/agent-rules.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAwCnE,eAAO,MAAM,iBAAiB,kEAAkE,CAAC;AACjG,eAAO,MAAM,eAAe,uBAAuB,CAAC;AAgBpD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGxD;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG/D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,YAAY,GAAG,aAAa,EAAE,OAAO,EAAE,CAAC,CAM9F;AAKD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAyB7F;AAWD,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAe/D;AAED,2EAA2E;AAC3E,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAgDD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtD;AAID,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAErD;AAyBD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGpD;AAMD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAiB/F;AA6CD,wBAAgB,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CA2DpD;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAO1F;AA0BD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAoB1F;AAYD,wBAAgB,kBAAkB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CA6DvD;AAGD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAO7F;AAID,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,GAAG,MAAM,EAAE,CAiCxG;AAaD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAW/D"}
|
package/dist/lib/agent-rules.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { carriesLocalEnv } from './foreign-env.js';
|
|
4
4
|
import { alignServerEntry } from './mcp-setup.js';
|
|
5
|
+
import { safeWriteJson, safeWriteText } from './safe-config-write.js';
|
|
5
6
|
// ALI-121: the deterministic auto-alignment layer. ALI-120 gave the MCP server
|
|
6
7
|
// instructions (model discretion); these project-local, committed files make the
|
|
7
8
|
// alignment context fire regardless of which agent/model the user runs:
|
|
@@ -36,6 +37,14 @@ const SESSION_INJECT_COMMAND = 'align context inject';
|
|
|
36
37
|
const SESSION_START_MATCHER = 'startup|resume|clear|compact|fork';
|
|
37
38
|
export const ALIGN_NUDGE_START = '<!-- align:start (managed by `align setup` - do not edit) -->';
|
|
38
39
|
export const ALIGN_NUDGE_END = '<!-- align:end -->';
|
|
40
|
+
// ALI-1778: every project file goes through the safe writer (safe-config-write.ts), the same one
|
|
41
|
+
// the user-level configs use. That is what records each write in the ledger `align use --undo`
|
|
42
|
+
// reads, keeps the first copy of a file that already existed, and refuses to write through a
|
|
43
|
+
// symlink. `root: cwd` limits the link check to inside the repo.
|
|
44
|
+
function projectWrite(cwd, markers) {
|
|
45
|
+
return { root: cwd, projectFile: true, trailingNewline: true, ...(markers ? { markers } : {}), invalidJsonAdvice: ' before running align' };
|
|
46
|
+
}
|
|
47
|
+
const NUDGE_MARKERS = { start: ALIGN_NUDGE_START, end: ALIGN_NUDGE_END };
|
|
39
48
|
function advisoryCommand(env) {
|
|
40
49
|
// prod is the default env, so leave it off to keep the committed command portable.
|
|
41
50
|
return env && env !== 'prod' ? `align check --advisory --env ${env}` : 'align check --advisory';
|
|
@@ -63,39 +72,30 @@ export function alignClaudeHooks(env) {
|
|
|
63
72
|
// file is committed so the whole team gets it; Claude Code shows a one-time "approve
|
|
64
73
|
// hooks" prompt the first time it loads a committed hook (documented in setup output).
|
|
65
74
|
export function writeClaudeCodeHook(cwd, env, onForeign) {
|
|
66
|
-
const
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
catch (err) {
|
|
73
|
-
if (err.code !== 'ENOENT') {
|
|
74
|
-
throw new Error(`${file} contains invalid JSON - fix it manually before running align`);
|
|
75
|
+
const file = path.join(cwd, '.claude', 'settings.json');
|
|
76
|
+
const status = safeWriteJson(file, (settings) => {
|
|
77
|
+
const hooks = (settings['hooks'] ?? {});
|
|
78
|
+
// The local wizard never replaces a hook that checks against a team env.
|
|
79
|
+
if (onForeign && env === 'local' && ['PreToolUse', 'PostToolUse'].some((event) => (Array.isArray(hooks[event]) ? hooks[event] : []).some((g) => isAlignHookGroup(g) && !carriesLocalEnv(JSON.stringify(g))))) {
|
|
80
|
+
return undefined;
|
|
75
81
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
settings['hooks'] = hooks;
|
|
95
|
-
if (!existsSync(dir))
|
|
96
|
-
mkdirSync(dir, { recursive: true });
|
|
97
|
-
writeFileSync(file, `${JSON.stringify(settings, null, 2)}\n`, 'utf8');
|
|
98
|
-
return true;
|
|
82
|
+
// The same advisory command goes in both events; it self-detects Pre vs Post from the
|
|
83
|
+
// hook payload on stdin. PreToolUse catches a conflict before the edit is written
|
|
84
|
+
// (ALI-122); PostToolUse is the backstop on the landed change (ALI-121). Strip any
|
|
85
|
+
// prior align-managed group from each so re-runs stay idempotent and pick up env changes.
|
|
86
|
+
const alignGroups = alignClaudeHooks(env);
|
|
87
|
+
for (const event of ['PreToolUse', 'PostToolUse']) {
|
|
88
|
+
const existing = (Array.isArray(hooks[event]) ? hooks[event] : []);
|
|
89
|
+
const preserved = existing.filter((g) => !isAlignHookGroup(g));
|
|
90
|
+
preserved.push(...alignGroups[event]);
|
|
91
|
+
hooks[event] = preserved;
|
|
92
|
+
}
|
|
93
|
+
settings['hooks'] = hooks;
|
|
94
|
+
return settings;
|
|
95
|
+
}, projectWrite(cwd));
|
|
96
|
+
if (status === 'declined')
|
|
97
|
+
onForeign?.('.claude/settings.json');
|
|
98
|
+
return status === 'written' || status === 'unchanged';
|
|
99
99
|
}
|
|
100
100
|
// Merge a SessionStart hook into the project .claude/settings.json (ALI-933) - the
|
|
101
101
|
// read-path counterpart to writeClaudeCodeHook above. Separate function, separate merge:
|
|
@@ -107,29 +107,20 @@ export function writeClaudeCodeHook(cwd, env, onForeign) {
|
|
|
107
107
|
// `align context inject` only ever prints an additionalContext line or nothing, never a
|
|
108
108
|
// deny - there is nothing here to approve or reject, only content to offer or withhold.
|
|
109
109
|
export function writeClaudeCodeSessionHook(cwd) {
|
|
110
|
-
const
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
preserved.push({
|
|
125
|
-
matcher: SESSION_START_MATCHER,
|
|
126
|
-
hooks: [{ type: 'command', command: SESSION_INJECT_COMMAND, timeout: HOOK_TIMEOUT_SECONDS }],
|
|
127
|
-
});
|
|
128
|
-
hooks['SessionStart'] = preserved;
|
|
129
|
-
settings['hooks'] = hooks;
|
|
130
|
-
if (!existsSync(dir))
|
|
131
|
-
mkdirSync(dir, { recursive: true });
|
|
132
|
-
writeFileSync(file, `${JSON.stringify(settings, null, 2)}\n`, 'utf8');
|
|
110
|
+
const file = path.join(cwd, '.claude', 'settings.json');
|
|
111
|
+
const status = safeWriteJson(file, (settings) => {
|
|
112
|
+
const hooks = (settings['hooks'] ?? {});
|
|
113
|
+
const existing = (Array.isArray(hooks['SessionStart']) ? hooks['SessionStart'] : []);
|
|
114
|
+
const preserved = existing.filter((g) => !isAlignSessionHookGroup(g));
|
|
115
|
+
preserved.push({
|
|
116
|
+
matcher: SESSION_START_MATCHER,
|
|
117
|
+
hooks: [{ type: 'command', command: SESSION_INJECT_COMMAND, timeout: HOOK_TIMEOUT_SECONDS }],
|
|
118
|
+
});
|
|
119
|
+
hooks['SessionStart'] = preserved;
|
|
120
|
+
settings['hooks'] = hooks;
|
|
121
|
+
return settings;
|
|
122
|
+
}, projectWrite(cwd));
|
|
123
|
+
return status === 'written' || status === 'unchanged';
|
|
133
124
|
}
|
|
134
125
|
/** The managed CLAUDE.md block as text, for per-session injection (C1). */
|
|
135
126
|
export function alignNudgeBody() {
|
|
@@ -160,38 +151,34 @@ function managedNudgeBlock(opts) {
|
|
|
160
151
|
}
|
|
161
152
|
// Append (or replace) a marker-delimited Align block in a project markdown file. Only the
|
|
162
153
|
// content between the markers is managed; everything else the user wrote is preserved.
|
|
163
|
-
function writeMarkerNudge(file, block) {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
else {
|
|
183
|
-
content = `${block}\n`;
|
|
184
|
-
}
|
|
185
|
-
writeFileSync(file, content, 'utf8');
|
|
154
|
+
function writeMarkerNudge(file, block, cwd) {
|
|
155
|
+
const status = safeWriteText(file, (current) => {
|
|
156
|
+
let content = current ?? '';
|
|
157
|
+
const start = content.indexOf(ALIGN_NUDGE_START);
|
|
158
|
+
const end = content.indexOf(ALIGN_NUDGE_END);
|
|
159
|
+
if (start !== -1 && end !== -1 && end > start) {
|
|
160
|
+
const before = content.slice(0, start);
|
|
161
|
+
const after = content.slice(end + ALIGN_NUDGE_END.length);
|
|
162
|
+
content = `${before}${block}${after}`;
|
|
163
|
+
}
|
|
164
|
+
else if (content.trim()) {
|
|
165
|
+
content = `${content.replace(/\s*$/, '')}\n\n${block}\n`;
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
content = `${block}\n`;
|
|
169
|
+
}
|
|
170
|
+
return content;
|
|
171
|
+
}, projectWrite(cwd, NUDGE_MARKERS));
|
|
172
|
+
return status === 'written' || status === 'unchanged';
|
|
186
173
|
}
|
|
187
174
|
// CLAUDE.md nudge (Claude Code reads this file).
|
|
188
175
|
export function writeManagedNudge(cwd) {
|
|
189
|
-
writeMarkerNudge(path.join(cwd, 'CLAUDE.md'), managedNudgeBlock({ claudeHooks: true }));
|
|
176
|
+
return writeMarkerNudge(path.join(cwd, 'CLAUDE.md'), managedNudgeBlock({ claudeHooks: true }), cwd);
|
|
190
177
|
}
|
|
191
178
|
// AGENTS.md nudge - the cross-agent standard read by Cursor, Windsurf, Codex,
|
|
192
179
|
// Gemini, Zed and others. Agent-neutral (no Claude-hook line).
|
|
193
180
|
export function writeAgentsNudge(cwd) {
|
|
194
|
-
writeMarkerNudge(path.join(cwd, 'AGENTS.md'), managedNudgeBlock({ claudeHooks: false }));
|
|
181
|
+
return writeMarkerNudge(path.join(cwd, 'AGENTS.md'), managedNudgeBlock({ claudeHooks: false }), cwd);
|
|
195
182
|
}
|
|
196
183
|
function cursorRuleBody() {
|
|
197
184
|
return [
|
|
@@ -216,48 +203,31 @@ function cursorRuleBody() {
|
|
|
216
203
|
}
|
|
217
204
|
// Cursor project rule. Fully managed - overwritten each run.
|
|
218
205
|
export function writeCursorRule(cwd) {
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
mkdirSync(dir, { recursive: true });
|
|
222
|
-
writeFileSync(path.join(dir, 'align.md'), cursorRuleBody(), 'utf8');
|
|
206
|
+
const status = safeWriteText(path.join(cwd, '.cursor', 'rules', 'align.md'), () => cursorRuleBody(), projectWrite(cwd));
|
|
207
|
+
return status === 'written' || status === 'unchanged';
|
|
223
208
|
}
|
|
224
209
|
// .mcp.json - the tool-agnostic, project-local MCP config. pi reads it (via
|
|
225
210
|
// pi-mcp-adapter), so does Claude Code, and it is committed, so one write covers the
|
|
226
211
|
// whole team rather than each person's per-host config. Deliberately host-NEUTRAL: pi's
|
|
227
212
|
// `directTools` goes in the Pi-owned override that mcp-setup.ts writes, never here.
|
|
228
213
|
export function writeProjectMcpConfig(cwd, env, onForeign) {
|
|
229
|
-
const
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
catch (err) {
|
|
235
|
-
if (err.code !== 'ENOENT')
|
|
236
|
-
throw err;
|
|
237
|
-
}
|
|
238
|
-
let config = {};
|
|
239
|
-
if (raw.trim()) {
|
|
240
|
-
try {
|
|
241
|
-
config = JSON.parse(raw);
|
|
214
|
+
const status = safeWriteJson(path.join(cwd, '.mcp.json'), (config) => {
|
|
215
|
+
const servers = (config['mcpServers'] ?? {});
|
|
216
|
+
// A committed entry that targets a team env is the team's, not ours to replace.
|
|
217
|
+
if (onForeign && env === 'local' && servers['align'] !== undefined && !carriesLocalEnv(JSON.stringify(servers['align']))) {
|
|
218
|
+
return undefined;
|
|
242
219
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
// the one MCP config that travels: a wrapper written here by a Windows machine would be
|
|
255
|
-
// committed and then fail to spawn for every teammate on macOS or Linux. Windows readers
|
|
256
|
-
// get the wrapper from their own user-level entry instead.
|
|
257
|
-
servers['align'] = alignServerEntry('mcpServers', env, { committed: true });
|
|
258
|
-
config['mcpServers'] = servers;
|
|
259
|
-
writeFileSync(file, `${JSON.stringify(config, null, 2)}\n`, 'utf8');
|
|
260
|
-
return true;
|
|
220
|
+
// `committed: true` keeps the Windows `cmd /c` wrapper OUT of this file (ALI-1135). It is
|
|
221
|
+
// the one MCP config that travels: a wrapper written here by a Windows machine would be
|
|
222
|
+
// committed and then fail to spawn for every teammate on macOS or Linux. Windows readers
|
|
223
|
+
// get the wrapper from their own user-level entry instead.
|
|
224
|
+
servers['align'] = alignServerEntry('mcpServers', env, { committed: true });
|
|
225
|
+
config['mcpServers'] = servers;
|
|
226
|
+
return config;
|
|
227
|
+
}, projectWrite(cwd));
|
|
228
|
+
if (status === 'declined')
|
|
229
|
+
onForeign?.('.mcp.json');
|
|
230
|
+
return status === 'written' || status === 'unchanged';
|
|
261
231
|
}
|
|
262
232
|
// ---------------------------------------------------------------------------
|
|
263
233
|
// Per-host hook shims (the agent-agnostic guardrail)
|
|
@@ -362,25 +332,14 @@ export default function (pi: { on: (e: string, h: (ev: PiEvent) => unknown) => v
|
|
|
362
332
|
}
|
|
363
333
|
// pi extension. Fully managed - overwritten each run.
|
|
364
334
|
export function writePiExtension(cwd, env, onForeign) {
|
|
365
|
-
const
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
writeFileSync(file, piExtensionBody(env), 'utf8');
|
|
374
|
-
return true;
|
|
375
|
-
}
|
|
376
|
-
/** A generated plugin that already exists and is not pointed at the local graph. */
|
|
377
|
-
function isForeignPlugin(file) {
|
|
378
|
-
try {
|
|
379
|
-
return !carriesLocalEnv(readFileSync(file, 'utf8'));
|
|
380
|
-
}
|
|
381
|
-
catch {
|
|
382
|
-
return false;
|
|
383
|
-
}
|
|
335
|
+
const status = safeWriteText(path.join(cwd, '.pi', 'extensions', 'align.ts'), (current) => {
|
|
336
|
+
if (onForeign && env === 'local' && current !== null && !carriesLocalEnv(current))
|
|
337
|
+
return undefined;
|
|
338
|
+
return piExtensionBody(env);
|
|
339
|
+
}, projectWrite(cwd));
|
|
340
|
+
if (status === 'declined')
|
|
341
|
+
onForeign?.('.pi/extensions/align.ts');
|
|
342
|
+
return status === 'written' || status === 'unchanged';
|
|
384
343
|
}
|
|
385
344
|
// Gemini CLI hooks. BeforeTool can only deny (no additionalContext channel), so the
|
|
386
345
|
// non-blocking finding is carried by AfterTool - the same split as pi, for the same
|
|
@@ -404,43 +363,25 @@ function isAlignGeminiHook(group) {
|
|
|
404
363
|
return Array.isArray(hooks) && hooks.some((h) => String(h?.command ?? '').includes('align check --advisory'));
|
|
405
364
|
}
|
|
406
365
|
export function writeGeminiHooks(cwd, env, onForeign) {
|
|
407
|
-
const
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
raw = readFileSync(file, 'utf8');
|
|
412
|
-
}
|
|
413
|
-
catch (err) {
|
|
414
|
-
if (err.code !== 'ENOENT')
|
|
415
|
-
throw err;
|
|
416
|
-
}
|
|
417
|
-
let settings = {};
|
|
418
|
-
if (raw.trim()) {
|
|
419
|
-
try {
|
|
420
|
-
settings = JSON.parse(raw);
|
|
366
|
+
const status = safeWriteJson(path.join(cwd, '.gemini', 'settings.json'), (settings) => {
|
|
367
|
+
const hooks = (settings['hooks'] ?? {});
|
|
368
|
+
if (onForeign && env === 'local' && ['BeforeTool', 'AfterTool'].some((event) => (Array.isArray(hooks[event]) ? hooks[event] : []).some((g) => isAlignGeminiHook(g) && !carriesLocalEnv(JSON.stringify(g))))) {
|
|
369
|
+
return undefined;
|
|
421
370
|
}
|
|
422
|
-
|
|
423
|
-
|
|
371
|
+
// Strip any prior align-managed group from each event first, so a re-run replaces
|
|
372
|
+
// it (and picks up an env change) instead of stacking a second one.
|
|
373
|
+
for (const event of ['BeforeTool', 'AfterTool']) {
|
|
374
|
+
const existing = (Array.isArray(hooks[event]) ? hooks[event] : []);
|
|
375
|
+
const preserved = existing.filter((g) => !isAlignGeminiHook(g));
|
|
376
|
+
preserved.push(geminiHookGroup(event, env));
|
|
377
|
+
hooks[event] = preserved;
|
|
424
378
|
}
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
// Strip any prior align-managed group from each event first, so a re-run replaces
|
|
432
|
-
// it (and picks up an env change) instead of stacking a second one.
|
|
433
|
-
for (const event of ['BeforeTool', 'AfterTool']) {
|
|
434
|
-
const existing = (Array.isArray(hooks[event]) ? hooks[event] : []);
|
|
435
|
-
const preserved = existing.filter((g) => !isAlignGeminiHook(g));
|
|
436
|
-
preserved.push(geminiHookGroup(event, env));
|
|
437
|
-
hooks[event] = preserved;
|
|
438
|
-
}
|
|
439
|
-
settings['hooks'] = hooks;
|
|
440
|
-
if (!existsSync(dir))
|
|
441
|
-
mkdirSync(dir, { recursive: true });
|
|
442
|
-
writeFileSync(file, `${JSON.stringify(settings, null, 2)}\n`, 'utf8');
|
|
443
|
-
return true;
|
|
379
|
+
settings['hooks'] = hooks;
|
|
380
|
+
return settings;
|
|
381
|
+
}, projectWrite(cwd));
|
|
382
|
+
if (status === 'declined')
|
|
383
|
+
onForeign?.('.gemini/settings.json');
|
|
384
|
+
return status === 'written' || status === 'unchanged';
|
|
444
385
|
}
|
|
445
386
|
// OpenCode discovers project plugins at .opencode/plugins/*.{js,ts} and loads them at
|
|
446
387
|
// startup. Ships as plain JS so nothing depends on a type package resolving.
|
|
@@ -516,16 +457,14 @@ export const AlignPlugin = async () => ({
|
|
|
516
457
|
}
|
|
517
458
|
// OpenCode plugin. Fully managed - overwritten each run.
|
|
518
459
|
export function writeOpenCodePlugin(cwd, env, onForeign) {
|
|
519
|
-
const
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
writeFileSync(file, openCodePluginBody(env), 'utf8');
|
|
528
|
-
return true;
|
|
460
|
+
const status = safeWriteText(path.join(cwd, '.opencode', 'plugins', 'align.js'), (current) => {
|
|
461
|
+
if (onForeign && env === 'local' && current !== null && !carriesLocalEnv(current))
|
|
462
|
+
return undefined;
|
|
463
|
+
return openCodePluginBody(env);
|
|
464
|
+
}, projectWrite(cwd));
|
|
465
|
+
if (status === 'declined')
|
|
466
|
+
onForeign?.('.opencode/plugins/align.js');
|
|
467
|
+
return status === 'written' || status === 'unchanged';
|
|
529
468
|
}
|
|
530
469
|
// Write every deterministic-alignment artifact into the project. Returns the
|
|
531
470
|
// repo-relative paths written, for the caller to report.
|
|
@@ -537,18 +476,22 @@ export function setupAgentAlignment(opts) {
|
|
|
537
476
|
: undefined;
|
|
538
477
|
// When the project's hooks belong to a team env the whole file is left as found, so the
|
|
539
478
|
// session hook (which lives in the same file) is not added either.
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
479
|
+
// A writer that returns false left its file as found (a team entry, or a symlink): not reported.
|
|
480
|
+
const left = new Set();
|
|
481
|
+
const track = (file, ok) => { if (!ok)
|
|
482
|
+
left.add(file); };
|
|
483
|
+
const hooksOk = writeClaudeCodeHook(opts.cwd, opts.env, onForeign);
|
|
484
|
+
track('.claude/settings.json', hooksOk && writeClaudeCodeSessionHook(opts.cwd));
|
|
485
|
+
track('CLAUDE.md', writeManagedNudge(opts.cwd));
|
|
486
|
+
track('AGENTS.md', writeAgentsNudge(opts.cwd));
|
|
487
|
+
track('.cursor/rules/align.md', writeCursorRule(opts.cwd));
|
|
545
488
|
// prod is the default env, so leave it off to keep the committed file portable -
|
|
546
489
|
// the same rule advisoryCommand() applies to the hook.
|
|
547
490
|
const env = opts.env === 'prod' ? undefined : opts.env;
|
|
548
|
-
writeProjectMcpConfig(opts.cwd, env, onForeign);
|
|
549
|
-
writePiExtension(opts.cwd, env, onForeign);
|
|
550
|
-
writeGeminiHooks(opts.cwd, env, onForeign);
|
|
551
|
-
writeOpenCodePlugin(opts.cwd, env, onForeign);
|
|
491
|
+
track('.mcp.json', writeProjectMcpConfig(opts.cwd, env, onForeign));
|
|
492
|
+
track('.pi/extensions/align.ts', writePiExtension(opts.cwd, env, onForeign));
|
|
493
|
+
track('.gemini/settings.json', writeGeminiHooks(opts.cwd, env, onForeign));
|
|
494
|
+
track('.opencode/plugins/align.js', writeOpenCodePlugin(opts.cwd, env, onForeign));
|
|
552
495
|
return [
|
|
553
496
|
'.claude/settings.json',
|
|
554
497
|
'CLAUDE.md',
|
|
@@ -558,6 +501,36 @@ export function setupAgentAlignment(opts) {
|
|
|
558
501
|
'.pi/extensions/align.ts',
|
|
559
502
|
'.gemini/settings.json',
|
|
560
503
|
'.opencode/plugins/align.js',
|
|
561
|
-
].filter((f) => !skipped.has(f));
|
|
504
|
+
].filter((f) => !skipped.has(f) && !left.has(f));
|
|
505
|
+
}
|
|
506
|
+
const PROJECT_FILE_TELLS = [
|
|
507
|
+
['.claude/settings.json', ['align check --advisory', SESSION_INJECT_COMMAND]],
|
|
508
|
+
['CLAUDE.md', [ALIGN_NUDGE_START]],
|
|
509
|
+
['AGENTS.md', [ALIGN_NUDGE_START]],
|
|
510
|
+
['.cursor/rules/align.md', ['Align decision graph']],
|
|
511
|
+
['.mcp.json', ['"align"']],
|
|
512
|
+
['.pi/extensions/align.ts', ['align check --advisory']],
|
|
513
|
+
['.gemini/settings.json', ['align check --advisory']],
|
|
514
|
+
['.opencode/plugins/align.js', ['align check --advisory']],
|
|
515
|
+
];
|
|
516
|
+
/**
|
|
517
|
+
* Files under `cwd` that carry align's own text, for the case where `align use --undo` has no
|
|
518
|
+
* record of writing them (an older build wrote them, or the record was lost). Read only: undo
|
|
519
|
+
* names these and touches none of them, because without a record it cannot tell align's text
|
|
520
|
+
* from the user's.
|
|
521
|
+
*/
|
|
522
|
+
export function projectFilesWithAlignText(cwd) {
|
|
523
|
+
const found = [];
|
|
524
|
+
for (const [rel, tells] of PROJECT_FILE_TELLS) {
|
|
525
|
+
try {
|
|
526
|
+
const text = readFileSync(path.join(cwd, rel), 'utf8');
|
|
527
|
+
if (tells.some((t) => text.includes(t)))
|
|
528
|
+
found.push(rel);
|
|
529
|
+
}
|
|
530
|
+
catch {
|
|
531
|
+
// missing or unreadable: nothing to name
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
return found;
|
|
562
535
|
}
|
|
563
536
|
//# sourceMappingURL=agent-rules.js.map
|