@autopilot-harness/cli 0.1.0 → 0.2.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 +1 -1
- package/assets/autopilot-harness-hook.mjs +228 -36
- package/assets/vendor/runtime.mjs +397 -15
- package/dist/assets/autopilot-harness-hook.mjs +228 -36
- package/dist/assets/vendor/runtime.mjs +397 -15
- package/dist/bin.js +6 -3
- package/dist/bin.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/init/claude-settings-merge.d.ts +51 -0
- package/dist/init/claude-settings-merge.d.ts.map +1 -0
- package/dist/init/claude-settings-merge.js +318 -0
- package/dist/init/claude-settings-merge.js.map +1 -0
- package/dist/init/install.d.ts +4 -1
- package/dist/init/install.d.ts.map +1 -1
- package/dist/init/install.js +258 -83
- package/dist/init/install.js.map +1 -1
- package/dist/init/platforms.d.ts +5 -0
- package/dist/init/platforms.d.ts.map +1 -1
- package/dist/init/platforms.js +17 -0
- package/dist/init/platforms.js.map +1 -1
- package/dist/init/types.d.ts +1 -1
- package/dist/init/types.js +1 -1
- package/dist/init/wizard-helpers.d.ts.map +1 -1
- package/dist/init/wizard-helpers.js +21 -10
- package/dist/init/wizard-helpers.js.map +1 -1
- package/dist/status-doctor.d.ts.map +1 -1
- package/dist/status-doctor.js +121 -55
- package/dist/status-doctor.js.map +1 -1
- package/dist/uninstall.d.ts.map +1 -1
- package/dist/uninstall.js +163 -5
- package/dist/uninstall.js.map +1 -1
- package/dist/upgrade.d.ts.map +1 -1
- package/dist/upgrade.js +100 -2
- package/dist/upgrade.js.map +1 -1
- package/dist/vendor-entry.d.ts +4 -1
- package/dist/vendor-entry.d.ts.map +1 -1
- package/dist/vendor-entry.js +6 -2
- package/dist/vendor-entry.js.map +1 -1
- package/package.json +5 -4
package/dist/init/install.js
CHANGED
|
@@ -4,14 +4,16 @@ import path from "node:path";
|
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
import { defaultConfigYaml } from "./default-config.js";
|
|
6
6
|
import { mergeHooksJson, validateHooksShape } from "./hooks-merge.js";
|
|
7
|
+
import { mergeClaudeSettings, validateClaudeSettingsShape, } from "./claude-settings-merge.js";
|
|
7
8
|
import { PACKAGE_VERSION } from "./types.js";
|
|
8
9
|
import { applyPlansGitignore, applyAutopilotRuntimeGitignore, assertNotSymlink, assertParentDirInProject, assertRealpathInside, assertPairInsideOrUnlinkAll, assertWrittenInsideProject, isRealDirectory, isRealRegularFile, mkdirRealDirSync, normalizePlansDir, writeQuickstart, assertPresentRealFile, } from "./wizard-helpers.js";
|
|
9
10
|
import { skillDescriptions } from "@autopilot-harness/i18n";
|
|
10
11
|
import { DEFAULT_AUTOPILOT_IGNORE_TEXT } from "@autopilot-harness/core";
|
|
11
12
|
import { readConfigInstallHints, readConfigPlatformsOrThrow } from "./config-merge.js";
|
|
12
|
-
import { applyPlatformsToConfigYaml, assertInstallablePlatforms, MAX_PLATFORM_BINDINGS, mergePlatformBindings, mergedIncludesAllRequested, normalizeBinding, primaryBinding, } from "./platforms.js";
|
|
13
|
+
import { applyPlatformsToConfigYaml, assertInstallablePlatforms, isInstallableBinding, MAX_PLATFORM_BINDINGS, mergePlatformBindings, mergedIncludesAllRequested, normalizeBinding, primaryBinding, sanitizePlatformId, } from "./platforms.js";
|
|
13
14
|
import { MAX_UNTRUSTED_TEXT_BYTES, readUntrustedUtf8File, copyFileReplaceSync, copyFileNoFollowExclSync, writeFileReplaceSync, renameReplaceSync, } from "../read-untrusted-file.js";
|
|
14
15
|
export { mergeHooksJson, stripAutopilotHooks, isAutopilotCommand, countAutopilotDuplicates, validateHooksShape, hasCompleteAutopilotHooks, summarizeAutopilotHooks, autopilotStopHasUnlimitedLoop, autopilotHookCommand, } from "./hooks-merge.js";
|
|
16
|
+
export { mergeClaudeSettings, validateClaudeSettingsShape, hasClaudeBlockCapZero, hasCompleteClaudeAutopilotHooks, summarizeClaudeAutopilotHooks, stripAutopilotClaudeSettings, claudeSettingsContainAutopilot, CLAUDE_AUTOPILOT_EVENTS, CLAUDE_BLOCK_CAP_ENV, } from "./claude-settings-merge.js";
|
|
15
17
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
16
18
|
/** Skills written by init; uninstall must remove the same set. */
|
|
17
19
|
export const AUTOPILOT_SKILL_NAMES = [
|
|
@@ -157,6 +159,13 @@ function copyHookAsset(cliRoot, destBin, projectRoot) {
|
|
|
157
159
|
copyFileReplaceSync(src, hookDest);
|
|
158
160
|
assertWrittenInsideProject(projectRoot, hookDest, ".autopilot/bin/autopilot-harness-hook.mjs");
|
|
159
161
|
}
|
|
162
|
+
function platformsWantHost(platforms, hostId) {
|
|
163
|
+
const want = sanitizePlatformId(hostId);
|
|
164
|
+
// Only installable bindings wire host settings. A hand-edited
|
|
165
|
+
// `claude-code`/`cursor` with the wrong surface must not force reads/writes
|
|
166
|
+
// (e.g. corrupt leftover settings blocking --add-platform of another host).
|
|
167
|
+
return platforms.some((b) => sanitizePlatformId(b.id) === want && isInstallableBinding(b));
|
|
168
|
+
}
|
|
160
169
|
/** Read hooks.json; refuse to clobber an existing unreadable file. */
|
|
161
170
|
function readHooksFile(filePath) {
|
|
162
171
|
let raw;
|
|
@@ -210,6 +219,42 @@ function readHooksFile(filePath) {
|
|
|
210
219
|
};
|
|
211
220
|
}
|
|
212
221
|
}
|
|
222
|
+
/** Read `.claude/settings.json`; refuse to clobber an existing unreadable file. */
|
|
223
|
+
function readClaudeSettingsFile(filePath) {
|
|
224
|
+
let raw;
|
|
225
|
+
try {
|
|
226
|
+
raw = readUntrustedUtf8File(filePath, MAX_UNTRUSTED_TEXT_BYTES, ".claude/settings.json");
|
|
227
|
+
}
|
|
228
|
+
catch (err) {
|
|
229
|
+
const code = err?.code;
|
|
230
|
+
if (code === "ENOENT") {
|
|
231
|
+
return { ok: true, value: null };
|
|
232
|
+
}
|
|
233
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
234
|
+
return { ok: false, error: `Cannot read ${filePath}: ${msg}` };
|
|
235
|
+
}
|
|
236
|
+
try {
|
|
237
|
+
const parsed = JSON.parse(raw);
|
|
238
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
239
|
+
return {
|
|
240
|
+
ok: false,
|
|
241
|
+
error: `${filePath} is not a JSON object; fix or remove it before init.`,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
const obj = parsed;
|
|
245
|
+
const shapeError = validateClaudeSettingsShape(obj);
|
|
246
|
+
if (shapeError) {
|
|
247
|
+
return { ok: false, error: `${filePath}: ${shapeError}` };
|
|
248
|
+
}
|
|
249
|
+
return { ok: true, value: obj };
|
|
250
|
+
}
|
|
251
|
+
catch {
|
|
252
|
+
return {
|
|
253
|
+
ok: false,
|
|
254
|
+
error: `${filePath} is not valid JSON; fix or remove it before init.`,
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
}
|
|
213
258
|
function resolveAutopilotIgnoreTemplate(templatesRoot) {
|
|
214
259
|
const templatePath = path.join(templatesRoot, ".autopilotignore");
|
|
215
260
|
if (isRealRegularFile(templatePath)) {
|
|
@@ -355,21 +400,24 @@ function resolveInstallLocale(optsLocale, configExists, force, configPath) {
|
|
|
355
400
|
}
|
|
356
401
|
return optsLocale === "zh-CN" ? "zh-CN" : "en";
|
|
357
402
|
}
|
|
358
|
-
function installSkills(templatesRoot, projectRoot, locale
|
|
403
|
+
function installSkills(templatesRoot, projectRoot, locale,
|
|
404
|
+
/** Host skills root relative to project, e.g. `.cursor` or `.claude`. */
|
|
405
|
+
hostSkillsParent) {
|
|
359
406
|
const written = [];
|
|
360
407
|
const descriptions = skillDescriptions(locale);
|
|
361
|
-
const skillsRoot = path.join(projectRoot,
|
|
362
|
-
|
|
408
|
+
const skillsRoot = path.join(projectRoot, hostSkillsParent, "skills");
|
|
409
|
+
const skillsLabel = `${hostSkillsParent}/skills/`;
|
|
410
|
+
assertNotSymlink(skillsRoot, skillsLabel);
|
|
363
411
|
for (const name of SKILL_NAMES) {
|
|
364
412
|
const tplPath = path.join(templatesRoot, "skills", name, "SKILL.md.tpl");
|
|
365
413
|
assertPresentRealFile(tplPath, `skill template ${name}`);
|
|
366
414
|
const destDir = path.join(skillsRoot, name);
|
|
367
|
-
mkdirRealDirSync(destDir,
|
|
368
|
-
assertRealpathInside(projectRoot, destDir,
|
|
415
|
+
mkdirRealDirSync(destDir, `${skillsLabel}${name}/`, projectRoot);
|
|
416
|
+
assertRealpathInside(projectRoot, destDir, `${skillsLabel}${name}/`);
|
|
369
417
|
const body = renderSkill(readUntrustedUtf8File(tplPath, MAX_UNTRUSTED_TEXT_BYTES, `skill template ${name}`), descriptions[name] ?? name);
|
|
370
418
|
const dest = path.join(destDir, "SKILL.md");
|
|
371
|
-
assertNotSymlink(dest,
|
|
372
|
-
writeFileAtomic(dest, body, projectRoot,
|
|
419
|
+
assertNotSymlink(dest, `${skillsLabel}${name}/SKILL.md`);
|
|
420
|
+
writeFileAtomic(dest, body, projectRoot, `${skillsLabel}${name}/`);
|
|
373
421
|
written.push(path.relative(projectRoot, dest));
|
|
374
422
|
}
|
|
375
423
|
return written;
|
|
@@ -492,15 +540,13 @@ export function preflightForceRefresh(projectRoot) {
|
|
|
492
540
|
error: "Missing assets/vendor/runtime.mjs or migrations — run pnpm bundle-vendor (or pnpm build)",
|
|
493
541
|
};
|
|
494
542
|
}
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
if (!hooksRead.ok) {
|
|
498
|
-
return { ok: false, error: hooksRead.error };
|
|
499
|
-
}
|
|
543
|
+
// Host settings (`.cursor/hooks.json` / `.claude/settings.json`) are validated
|
|
544
|
+
// only for platforms that will be wired — see installInitYes.
|
|
500
545
|
return { ok: true };
|
|
501
546
|
}
|
|
502
547
|
/**
|
|
503
|
-
* Non-interactive init (`--yes`). Writes .autopilot +
|
|
548
|
+
* Non-interactive init (`--yes`). Writes .autopilot + host hooks/skills
|
|
549
|
+
* (`.cursor/hooks.json` and/or `.claude/settings.json` per platforms).
|
|
504
550
|
* `--force` refreshes hook/skills/pin/hooks merge but does **not** overwrite
|
|
505
551
|
* an existing config.yml, except when `mergePlatforms` / `--add-platform`
|
|
506
552
|
* updates the `platforms` list (committed only after hooks succeed).
|
|
@@ -525,14 +571,16 @@ export function installInitYes(opts) {
|
|
|
525
571
|
const configPath = path.join(autopilotDir, "config.yml");
|
|
526
572
|
const cursorDir = path.join(projectRoot, ".cursor");
|
|
527
573
|
const hooksPath = path.join(cursorDir, "hooks.json");
|
|
574
|
+
const claudeDir = path.join(projectRoot, ".claude");
|
|
575
|
+
const claudeSettingsPath = path.join(claudeDir, "settings.json");
|
|
528
576
|
const mergePlatforms = Boolean(opts.mergePlatforms);
|
|
529
577
|
// Adding hosts into an existing config requires the force/refresh path.
|
|
530
578
|
const force = Boolean(opts.force) || mergePlatforms;
|
|
531
579
|
try {
|
|
532
580
|
assertNotSymlink(autopilotDir, ".autopilot/");
|
|
533
581
|
assertNotSymlink(configPath, ".autopilot/config.yml");
|
|
534
|
-
|
|
535
|
-
|
|
582
|
+
// Host path symlink checks happen only for platforms we are about to wire
|
|
583
|
+
// (Claude-only must not fail on a leftover `.cursor/hooks.json` symlink).
|
|
536
584
|
}
|
|
537
585
|
catch (err) {
|
|
538
586
|
const msg = err instanceof Error ? err.message : String(err);
|
|
@@ -576,11 +624,6 @@ export function installInitYes(opts) {
|
|
|
576
624
|
return { ok: false, error: preflight.error };
|
|
577
625
|
}
|
|
578
626
|
const { cliRoot, templatesRoot } = resolvePackageRoots();
|
|
579
|
-
// Fail closed on corrupt hooks before any mutate.
|
|
580
|
-
const hooksPre = readHooksFile(hooksPath);
|
|
581
|
-
if (!hooksPre.ok) {
|
|
582
|
-
return { ok: false, error: hooksPre.error };
|
|
583
|
-
}
|
|
584
627
|
const plansNorm = normalizePlansDir(opts.plansDir);
|
|
585
628
|
if (!plansNorm.ok) {
|
|
586
629
|
return { ok: false, error: plansNorm.error };
|
|
@@ -602,10 +645,108 @@ export function installInitYes(opts) {
|
|
|
602
645
|
try {
|
|
603
646
|
const written = [];
|
|
604
647
|
mkdirRealDirSync(autopilotDir, ".autopilot/", projectRoot);
|
|
605
|
-
//
|
|
606
|
-
//
|
|
607
|
-
//
|
|
608
|
-
// Plain --force:
|
|
648
|
+
// Resolve hosts to wire before any config write (fail closed on corrupt
|
|
649
|
+
// host settings without leaving an orphan config.yml).
|
|
650
|
+
// --add-platform / mergePlatforms: validate merge now, but re-read + write
|
|
651
|
+
// only after hooks succeed. Plain --force: wire hosts listed in config.
|
|
652
|
+
if (configExists && mergePlatforms) {
|
|
653
|
+
let existingYaml;
|
|
654
|
+
try {
|
|
655
|
+
existingYaml = readUntrustedUtf8File(configPath, MAX_UNTRUSTED_TEXT_BYTES, ".autopilot/config.yml");
|
|
656
|
+
}
|
|
657
|
+
catch (err) {
|
|
658
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
659
|
+
return { ok: false, error: `Cannot read config.yml: ${msg}` };
|
|
660
|
+
}
|
|
661
|
+
let existingPlatforms;
|
|
662
|
+
try {
|
|
663
|
+
existingPlatforms = readConfigPlatformsOrThrow(existingYaml);
|
|
664
|
+
}
|
|
665
|
+
catch (err) {
|
|
666
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
667
|
+
return {
|
|
668
|
+
ok: false,
|
|
669
|
+
error: `Cannot update platforms in config.yml: ${msg}`,
|
|
670
|
+
};
|
|
671
|
+
}
|
|
672
|
+
effectivePlatforms = mergePlatformBindings(existingPlatforms, requestedPlatforms);
|
|
673
|
+
// Only the *requested* additions must be installable (checked above).
|
|
674
|
+
// Existing config may already declare future hosts; do not reject merge
|
|
675
|
+
// because of those entries — install still only wires installable ports.
|
|
676
|
+
if (effectivePlatforms.length === 0) {
|
|
677
|
+
return {
|
|
678
|
+
ok: false,
|
|
679
|
+
error: "platforms list is empty after merge; refusing to update config.yml",
|
|
680
|
+
};
|
|
681
|
+
}
|
|
682
|
+
if (!mergedIncludesAllRequested(effectivePlatforms, requestedPlatforms)) {
|
|
683
|
+
return {
|
|
684
|
+
ok: false,
|
|
685
|
+
error: "Cannot add platform(s): platforms list is at capacity. Remove an entry from config.yml and retry.",
|
|
686
|
+
};
|
|
687
|
+
}
|
|
688
|
+
try {
|
|
689
|
+
// Fail closed early if the current snapshot cannot be rewritten.
|
|
690
|
+
applyPlatformsToConfigYaml(existingYaml, effectivePlatforms);
|
|
691
|
+
pendingMergePlatforms = true;
|
|
692
|
+
}
|
|
693
|
+
catch (err) {
|
|
694
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
695
|
+
return { ok: false, error: `Cannot update platforms in config.yml: ${msg}` };
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
else if (configExists && force) {
|
|
699
|
+
// Plain --force: wire hosts declared in config.yml (installable only).
|
|
700
|
+
try {
|
|
701
|
+
const yaml = readUntrustedUtf8File(configPath, MAX_UNTRUSTED_TEXT_BYTES, ".autopilot/config.yml");
|
|
702
|
+
const fromConfig = readConfigPlatformsOrThrow(yaml);
|
|
703
|
+
const installable = fromConfig.filter((b) => isInstallableBinding(b));
|
|
704
|
+
if (installable.length > 0) {
|
|
705
|
+
effectivePlatforms = installable;
|
|
706
|
+
}
|
|
707
|
+
}
|
|
708
|
+
catch {
|
|
709
|
+
// Keep requestedPlatforms — still refresh the CLI-selected host.
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
const wantCursor = platformsWantHost(effectivePlatforms, "cursor");
|
|
713
|
+
const wantClaude = platformsWantHost(effectivePlatforms, "claude-code");
|
|
714
|
+
if (!wantCursor && !wantClaude) {
|
|
715
|
+
return {
|
|
716
|
+
ok: false,
|
|
717
|
+
error: "No installable host platform to wire (need cursor and/or claude-code).",
|
|
718
|
+
};
|
|
719
|
+
}
|
|
720
|
+
// Fail closed on corrupt/symlink settings only for hosts we are about to wire.
|
|
721
|
+
if (wantCursor) {
|
|
722
|
+
try {
|
|
723
|
+
assertNotSymlink(cursorDir, ".cursor/");
|
|
724
|
+
assertNotSymlink(hooksPath, ".cursor/hooks.json");
|
|
725
|
+
}
|
|
726
|
+
catch (err) {
|
|
727
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
728
|
+
return { ok: false, error: msg };
|
|
729
|
+
}
|
|
730
|
+
const hooksPre = readHooksFile(hooksPath);
|
|
731
|
+
if (!hooksPre.ok) {
|
|
732
|
+
return { ok: false, error: hooksPre.error };
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
if (wantClaude) {
|
|
736
|
+
try {
|
|
737
|
+
assertNotSymlink(claudeDir, ".claude/");
|
|
738
|
+
assertNotSymlink(claudeSettingsPath, ".claude/settings.json");
|
|
739
|
+
}
|
|
740
|
+
catch (err) {
|
|
741
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
742
|
+
return { ok: false, error: msg };
|
|
743
|
+
}
|
|
744
|
+
const claudePre = readClaudeSettingsFile(claudeSettingsPath);
|
|
745
|
+
if (!claudePre.ok) {
|
|
746
|
+
return { ok: false, error: claudePre.error };
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
// Fresh init: write config only after host settings preflight succeeded.
|
|
609
750
|
if (!configExists) {
|
|
610
751
|
try {
|
|
611
752
|
// Re-check immediately before wx: earlier `configExists` / mkdir leave a window
|
|
@@ -662,52 +803,6 @@ export function installInitYes(opts) {
|
|
|
662
803
|
createdConfig = true;
|
|
663
804
|
written.push(path.relative(projectRoot, configPath));
|
|
664
805
|
}
|
|
665
|
-
else if (mergePlatforms) {
|
|
666
|
-
let existingYaml;
|
|
667
|
-
try {
|
|
668
|
-
existingYaml = readUntrustedUtf8File(configPath, MAX_UNTRUSTED_TEXT_BYTES, ".autopilot/config.yml");
|
|
669
|
-
}
|
|
670
|
-
catch (err) {
|
|
671
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
672
|
-
return { ok: false, error: `Cannot read config.yml: ${msg}` };
|
|
673
|
-
}
|
|
674
|
-
let existingPlatforms;
|
|
675
|
-
try {
|
|
676
|
-
existingPlatforms = readConfigPlatformsOrThrow(existingYaml);
|
|
677
|
-
}
|
|
678
|
-
catch (err) {
|
|
679
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
680
|
-
return {
|
|
681
|
-
ok: false,
|
|
682
|
-
error: `Cannot update platforms in config.yml: ${msg}`,
|
|
683
|
-
};
|
|
684
|
-
}
|
|
685
|
-
effectivePlatforms = mergePlatformBindings(existingPlatforms, requestedPlatforms);
|
|
686
|
-
// Only the *requested* additions must be installable (checked above).
|
|
687
|
-
// Existing config may already declare future hosts; do not reject merge
|
|
688
|
-
// because of those entries — install still only wires installable ports.
|
|
689
|
-
if (effectivePlatforms.length === 0) {
|
|
690
|
-
return {
|
|
691
|
-
ok: false,
|
|
692
|
-
error: "platforms list is empty after merge; refusing to update config.yml",
|
|
693
|
-
};
|
|
694
|
-
}
|
|
695
|
-
if (!mergedIncludesAllRequested(effectivePlatforms, requestedPlatforms)) {
|
|
696
|
-
return {
|
|
697
|
-
ok: false,
|
|
698
|
-
error: "Cannot add platform(s): platforms list is at capacity. Remove an entry from config.yml and retry.",
|
|
699
|
-
};
|
|
700
|
-
}
|
|
701
|
-
try {
|
|
702
|
-
// Fail closed early if the current snapshot cannot be rewritten.
|
|
703
|
-
applyPlatformsToConfigYaml(existingYaml, effectivePlatforms);
|
|
704
|
-
pendingMergePlatforms = true;
|
|
705
|
-
}
|
|
706
|
-
catch (err) {
|
|
707
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
708
|
-
return { ok: false, error: `Cannot update platforms in config.yml: ${msg}` };
|
|
709
|
-
}
|
|
710
|
-
}
|
|
711
806
|
const primaryPlatform = primaryBinding(effectivePlatforms).id;
|
|
712
807
|
const rollbackFreshConfig = () => {
|
|
713
808
|
if (!createdConfig)
|
|
@@ -732,7 +827,6 @@ export function installInitYes(opts) {
|
|
|
732
827
|
assertRealpathInside(projectRoot, binDir, ".autopilot/bin/");
|
|
733
828
|
copyHookAsset(cliRoot, binDir, projectRoot);
|
|
734
829
|
written.push(path.relative(projectRoot, path.join(binDir, "autopilot-harness-hook.mjs")));
|
|
735
|
-
written.push(...installSkills(templatesRoot, projectRoot, locale));
|
|
736
830
|
written.push(...installWorkflows(templatesRoot, projectRoot));
|
|
737
831
|
const ignoreRel = ensureAutopilotIgnore(projectRoot, templatesRoot);
|
|
738
832
|
if (ignoreRel && !written.includes(ignoreRel))
|
|
@@ -757,26 +851,107 @@ export function installInitYes(opts) {
|
|
|
757
851
|
if (qsRel && !written.includes(qsRel))
|
|
758
852
|
written.push(qsRel);
|
|
759
853
|
}
|
|
760
|
-
// Re-read
|
|
761
|
-
|
|
762
|
-
|
|
854
|
+
// Re-read every host we will write *before* mutating any of them, so a
|
|
855
|
+
// dual-host TOCTOU failure does not leave only one side refreshed.
|
|
856
|
+
let hooksFresh = null;
|
|
857
|
+
let claudeFresh = null;
|
|
858
|
+
if (wantCursor) {
|
|
859
|
+
hooksFresh = readHooksFile(hooksPath);
|
|
860
|
+
if (!hooksFresh.ok) {
|
|
861
|
+
rollbackFreshConfig();
|
|
862
|
+
return { ok: false, error: hooksFresh.error };
|
|
863
|
+
}
|
|
864
|
+
try {
|
|
865
|
+
assertNotSymlink(cursorDir, ".cursor/");
|
|
866
|
+
assertNotSymlink(hooksPath, ".cursor/hooks.json");
|
|
867
|
+
}
|
|
868
|
+
catch (err) {
|
|
869
|
+
rollbackFreshConfig();
|
|
870
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
871
|
+
return { ok: false, error: msg };
|
|
872
|
+
}
|
|
873
|
+
}
|
|
874
|
+
if (wantClaude) {
|
|
875
|
+
claudeFresh = readClaudeSettingsFile(claudeSettingsPath);
|
|
876
|
+
if (!claudeFresh.ok) {
|
|
877
|
+
rollbackFreshConfig();
|
|
878
|
+
return { ok: false, error: claudeFresh.error };
|
|
879
|
+
}
|
|
880
|
+
try {
|
|
881
|
+
assertNotSymlink(claudeDir, ".claude/");
|
|
882
|
+
assertNotSymlink(claudeSettingsPath, ".claude/settings.json");
|
|
883
|
+
}
|
|
884
|
+
catch (err) {
|
|
885
|
+
rollbackFreshConfig();
|
|
886
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
887
|
+
return { ok: false, error: msg };
|
|
888
|
+
}
|
|
889
|
+
}
|
|
890
|
+
// Fail-fast: merge the pre-skills snapshot in memory so shape errors cannot
|
|
891
|
+
// leave orphan host skills. Final re-read+merge happens immediately before
|
|
892
|
+
// writes (below) to shrink TOCTOU after skills I/O.
|
|
893
|
+
try {
|
|
894
|
+
if (wantCursor && hooksFresh?.ok) {
|
|
895
|
+
mergeHooksJson(hooksFresh.value);
|
|
896
|
+
}
|
|
897
|
+
if (wantClaude && claudeFresh?.ok) {
|
|
898
|
+
mergeClaudeSettings(claudeFresh.value);
|
|
899
|
+
}
|
|
900
|
+
}
|
|
901
|
+
catch (err) {
|
|
763
902
|
rollbackFreshConfig();
|
|
764
|
-
|
|
903
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
904
|
+
return { ok: false, error: msg };
|
|
765
905
|
}
|
|
906
|
+
// Host skills only after settings preflight + merge dry-run succeeded.
|
|
907
|
+
if (wantCursor) {
|
|
908
|
+
written.push(...installSkills(templatesRoot, projectRoot, locale, ".cursor"));
|
|
909
|
+
}
|
|
910
|
+
if (wantClaude) {
|
|
911
|
+
written.push(...installSkills(templatesRoot, projectRoot, locale, ".claude"));
|
|
912
|
+
}
|
|
913
|
+
// Final re-read + merge immediately before any host settings write.
|
|
914
|
+
let mergedHooks = null;
|
|
915
|
+
let mergedClaude = null;
|
|
766
916
|
try {
|
|
767
|
-
|
|
768
|
-
|
|
917
|
+
if (wantCursor) {
|
|
918
|
+
const hooksFinal = readHooksFile(hooksPath);
|
|
919
|
+
if (!hooksFinal.ok) {
|
|
920
|
+
rollbackFreshConfig();
|
|
921
|
+
return { ok: false, error: hooksFinal.error };
|
|
922
|
+
}
|
|
923
|
+
assertNotSymlink(cursorDir, ".cursor/");
|
|
924
|
+
assertNotSymlink(hooksPath, ".cursor/hooks.json");
|
|
925
|
+
mergedHooks = mergeHooksJson(hooksFinal.value);
|
|
926
|
+
}
|
|
927
|
+
if (wantClaude) {
|
|
928
|
+
const claudeFinal = readClaudeSettingsFile(claudeSettingsPath);
|
|
929
|
+
if (!claudeFinal.ok) {
|
|
930
|
+
rollbackFreshConfig();
|
|
931
|
+
return { ok: false, error: claudeFinal.error };
|
|
932
|
+
}
|
|
933
|
+
assertNotSymlink(claudeDir, ".claude/");
|
|
934
|
+
assertNotSymlink(claudeSettingsPath, ".claude/settings.json");
|
|
935
|
+
mergedClaude = mergeClaudeSettings(claudeFinal.value);
|
|
936
|
+
}
|
|
769
937
|
}
|
|
770
938
|
catch (err) {
|
|
771
939
|
rollbackFreshConfig();
|
|
772
940
|
const msg = err instanceof Error ? err.message : String(err);
|
|
773
941
|
return { ok: false, error: msg };
|
|
774
942
|
}
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
943
|
+
if (mergedHooks) {
|
|
944
|
+
mkdirRealDirSync(path.dirname(hooksPath), ".cursor/", projectRoot);
|
|
945
|
+
assertRealpathInside(projectRoot, path.dirname(hooksPath), ".cursor/");
|
|
946
|
+
writeFileAtomic(hooksPath, JSON.stringify(mergedHooks, null, 2) + "\n", projectRoot, ".cursor/");
|
|
947
|
+
written.push(path.relative(projectRoot, hooksPath));
|
|
948
|
+
}
|
|
949
|
+
if (mergedClaude) {
|
|
950
|
+
mkdirRealDirSync(path.dirname(claudeSettingsPath), ".claude/", projectRoot);
|
|
951
|
+
assertRealpathInside(projectRoot, path.dirname(claudeSettingsPath), ".claude/");
|
|
952
|
+
writeFileAtomic(claudeSettingsPath, JSON.stringify(mergedClaude, null, 2) + "\n", projectRoot, ".claude/");
|
|
953
|
+
written.push(path.relative(projectRoot, claudeSettingsPath));
|
|
954
|
+
}
|
|
780
955
|
// Commit platforms merge after hooks: re-read so concurrent edits between
|
|
781
956
|
// validation and commit are not silently clobbered by a stale snapshot.
|
|
782
957
|
if (pendingMergePlatforms) {
|
package/dist/init/install.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/init/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/init/install.ts"],"names":[],"mappings":"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"}
|
package/dist/init/platforms.d.ts
CHANGED
|
@@ -20,6 +20,11 @@ export declare function defaultSurfaceFor(platformId: string): string;
|
|
|
20
20
|
export declare function bindingKey(b: PlatformBinding): string;
|
|
21
21
|
export declare function normalizeBinding(idRaw: string, surfaceRaw?: string): PlatformBinding | null;
|
|
22
22
|
export declare function isInstallableBinding(b: PlatformBinding): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Whether doctor/upgrade should require wiring for `hostId`.
|
|
25
|
+
* Empty / legacy platforms lists (no installable bindings) default to Cursor-only.
|
|
26
|
+
*/
|
|
27
|
+
export declare function configWantsInstallableHost(platforms: readonly PlatformBinding[], hostId: string): boolean;
|
|
23
28
|
/**
|
|
24
29
|
* Legacy `platform`/`surface` primary: prefer an installable binding so older
|
|
25
30
|
* readers are not pointed at a declared-but-unwired future host.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platforms.d.ts","sourceRoot":"","sources":["../../src/init/platforms.ts"],"names":[],"mappings":"AAEA,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uEAAuE;AACvE,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,eAAe,
|
|
1
|
+
{"version":3,"file":"platforms.d.ts","sourceRoot":"","sources":["../../src/init/platforms.ts"],"names":[],"mappings":"AAEA,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uEAAuE;AACvE,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,eAAe,EAGzD,CAAC;AAEH,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAQxC,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQtD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQrD;AAED,2EAA2E;AAC3E,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,eAAe,GAAG,MAAM,CAErD;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,GAClB,eAAe,GAAG,IAAI,CAUxB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,eAAe,GAAG,OAAO,CAGhE;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,SAAS,eAAe,EAAE,EACrC,MAAM,EAAE,MAAM,GACb,OAAO,CAOT;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,SAAS,eAAe,EAAE,GACpC,eAAe,CAKjB;AAED,oEAAoE;AACpE,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,eAAe,GAAG,MAAM,CAmBnE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,SAAS,EAAE,SAAS,eAAe,EAAE,GACpC,eAAe,EAAE,CAsBnB;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GAClC,eAAe,EAAE,CAiBnB;AAwCD,0EAA0E;AAC1E,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,eAAe,CAAC,EAAE,MAAM,GACvB,eAAe,EAAE,CAyBnB;AAED,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,SAAS,eAAe,EAAE,GACpC,MAAM,GAAG,IAAI,CAaf;AAED,wEAAwE;AACxE,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,eAAe,EAAE,EAClC,SAAS,EAAE,SAAS,eAAe,EAAE,GACpC,OAAO,CAQT;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,SAAS,eAAe,EAAE,GACpC,MAAM,CAgCR;AAED,4EAA4E;AAC5E,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,SAAS,eAAe,EAAE,GACpC,MAAM,CASR"}
|