@outerlayer/cli 0.19.0 → 0.20.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.
Files changed (63) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +11 -2
  3. package/dist/{agent-setup-TPR4BBFV.js → agent-setup-AM42SA2D.js} +6 -6
  4. package/dist/build-info.json +1 -1
  5. package/dist/{check-UWQAL2MN.js → check-BR5D27CX.js} +17 -17
  6. package/dist/{chunk-7KSSBQTS.js → chunk-3ZR7Y23Y.js} +2 -2
  7. package/dist/{chunk-ZHAUSEEN.js → chunk-5VML45HH.js} +2 -2
  8. package/dist/{chunk-5MYFOW5V.js → chunk-AD3EYI7P.js} +110 -19
  9. package/dist/{chunk-6U3MV7TZ.js → chunk-B6SCN5NY.js} +6 -6
  10. package/dist/{chunk-DJ3ZUSC3.js → chunk-CGGPS7SI.js} +3 -3
  11. package/dist/{chunk-452TM7J4.js → chunk-EAEELQVQ.js} +2 -2
  12. package/dist/{chunk-HPJNLETG.js → chunk-FBTGMSQF.js} +1 -1
  13. package/dist/{chunk-DADWEUH3.js → chunk-GEMQLBMW.js} +3 -3
  14. package/dist/{chunk-5TN7GLYX.js → chunk-HOKXGFDR.js} +4 -4
  15. package/dist/{chunk-5GHGAF6P.js → chunk-JHGEBPLE.js} +2 -2
  16. package/dist/{chunk-UVG35MWF.js → chunk-LW7G5TJB.js} +1 -1
  17. package/dist/{chunk-6D7GT22T.js → chunk-PIZRPNKR.js} +2 -2
  18. package/dist/{chunk-NFIR3GEE.js → chunk-PSN33ERW.js} +2 -2
  19. package/dist/{chunk-7SJPQWBM.js → chunk-R22NZSGA.js} +2 -2
  20. package/dist/{chunk-XSZD4AZ6.js → chunk-XZ4H4X5F.js} +2 -2
  21. package/dist/{chunk-VRRGENS4.js → chunk-Z7K3L4FC.js} +31 -1
  22. package/dist/{chunk-BWSUPRDK.js → chunk-ZX4I2MEK.js} +1 -1
  23. package/dist/{claude-launcher-FPPHZPMR.js → claude-launcher-J5M44PFS.js} +1 -1
  24. package/dist/{cli-HROW5T7X.js → cli-MKF7TU7X.js} +86 -56
  25. package/dist/{command-OEAV7BVX.js → command-ZQNEPDS6.js} +8 -8
  26. package/dist/connect-cmd-UNYKGDAL.js +1 -1
  27. package/dist/{context-cleanup-HSVYDGMI.js → context-cleanup-CHEWNYU6.js} +3 -1
  28. package/dist/{control-plane-launch-NYVDJESK.js → control-plane-launch-34LNRJWR.js} +5 -5
  29. package/dist/{doctor-23BBJWBX.js → doctor-DHUM5DBB.js} +10 -10
  30. package/dist/{emit-artifact-cmd-O6SCM7TV.js → emit-artifact-cmd-XBHM647X.js} +3 -3
  31. package/dist/{emit-cmd-7SP3I6UZ.js → emit-cmd-W55AEBCA.js} +3 -3
  32. package/dist/{emit-criteria-cmd-LQNERZRV.js → emit-criteria-cmd-UNMWHOUY.js} +40 -5
  33. package/dist/{emit-result-cmd-RUICOKWQ.js → emit-result-cmd-5NZMLCJK.js} +3 -3
  34. package/dist/emit-step-cmd-347XNGPQ.js +1 -1
  35. package/dist/{governing-source-V5EEGPTA.js → governing-source-HAA4OW57.js} +6 -6
  36. package/dist/{hook-fast-YAZG5MDX.js → hook-fast-RL5E5OXE.js} +1 -1
  37. package/dist/index.js +4 -4
  38. package/dist/{init-LWHDMZQG.js → init-V6FOMD2V.js} +9 -9
  39. package/dist/{init-MOINY2DD.js → init-XG47KCI4.js} +9 -9
  40. package/dist/{init-cmd-HSMRID6A.js → init-cmd-Z4O4PPLZ.js} +16 -14
  41. package/dist/{init-update-LWX5MPPR.js → init-update-7DVAKWW3.js} +6 -6
  42. package/dist/{loop-SYYPVFYW.js → loop-EAZQMAE2.js} +17 -17
  43. package/dist/{machine-6X63G2KH.js → machine-TRHBT5NE.js} +8 -8
  44. package/dist/{runner-key-276SJU5R.js → runner-key-5FOWCW7J.js} +9 -9
  45. package/dist/{session-sender-GGIY5OAX.js → session-sender-U2BBUWNO.js} +4 -4
  46. package/dist/{spec-cmd-SIZBRN7D.js → spec-cmd-FVLJOFGC.js} +2 -2
  47. package/dist/starter-pack-6LQVLBIA.js +1 -1
  48. package/dist/{status-NAK6DYSF.js → status-BINH7MBG.js} +11 -11
  49. package/dist/{sync-cmd-G7GF4UTW.js → sync-cmd-VXOUFS4I.js} +3 -3
  50. package/dist/{watch-EVM5GSMP.js → watch-OH645CV2.js} +3 -3
  51. package/dist/{work-claim-cmd-3J3QW56U.js → work-claim-cmd-DRQCHCOK.js} +5 -5
  52. package/dist/{work-cmd-5EPPD33Y.js → work-cmd-5I3J2XQQ.js} +2 -2
  53. package/dist/{work-comment-cmd-2ACOZQAE.js → work-comment-cmd-UCCPWUSR.js} +2 -2
  54. package/dist/{work-logs-cmd-QDD2NMJL.js → work-logs-cmd-7352CJPG.js} +2 -2
  55. package/dist/{work-open-pr-cmd-XNCEI4ZM.js → work-open-pr-cmd-LSH4VHJM.js} +2 -2
  56. package/dist/work-pr-cmd-H4OQR26N.js +1 -1
  57. package/dist/work-stop-cmd-CRDHXQVW.js +52 -0
  58. package/package.json +1 -1
  59. package/dist/{artifact-link-cmd-W7XF5BFB.js → artifact-link-cmd-OWRI5AJX.js} +1 -1
  60. package/dist/{chunk-IXYZUUYQ.js → chunk-7UWVLZXD.js} +1 -1
  61. package/dist/{emit-finding-cmd-AJPKHIOV.js → emit-finding-cmd-7JHVRYOP.js} +1 -1
  62. package/dist/{import-capture-cmd-KKFFOGWP.js → import-capture-cmd-TK4XY7RD.js} +1 -1
  63. package/dist/{import-ruler-cmd-5P6JOXQN.js → import-ruler-cmd-T6LLO6Q7.js} +1 -1
@@ -1,8 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { cleanupEarlierCopies } from './chunk-VRRGENS4.js';
3
+ export { cleanupEarlierCopies } from './chunk-Z7K3L4FC.js';
4
4
  import './chunk-YQR6E6OV.js';
5
5
  import './chunk-TUSYOL2O.js';
6
+ import './chunk-WFSUUUAN.js';
7
+ import './chunk-7VUK5RFS.js';
6
8
  import './chunk-VNVZDWO3.js';
7
9
  import './chunk-Z5GEFMRW.js';
8
10
 
@@ -1,21 +1,21 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { sharedSkillNames, skillConflictMessage, composeDelivery } from './chunk-LLM3I5YU.js';
4
- import { parseOwnerRepo, lookupGoverningSource, defaultGitRunner, materializeContext } from './chunk-452TM7J4.js';
5
- import './chunk-IXYZUUYQ.js';
4
+ import { parseOwnerRepo, lookupGoverningSource, defaultGitRunner, materializeContext } from './chunk-EAEELQVQ.js';
5
+ import './chunk-7UWVLZXD.js';
6
6
  import { defaultFetch } from './chunk-FVMYKL6L.js';
7
7
  import { resolveGatewayCredentials } from './chunk-NTRCK4NH.js';
8
8
  import './chunk-ZJSNLVCE.js';
9
9
  import { findGitDirs } from './chunk-BJ3KTMDH.js';
10
10
  import './chunk-G2YNJIGF.js';
11
11
  import './chunk-NNLA7LLQ.js';
12
- import './chunk-WFSUUUAN.js';
13
- import './chunk-7VUK5RFS.js';
14
12
  import './chunk-EABW6AJQ.js';
15
13
  import './chunk-CRB3POP4.js';
16
- import { cleanupEarlierCopies } from './chunk-VRRGENS4.js';
14
+ import { cleanupEarlierCopies } from './chunk-Z7K3L4FC.js';
17
15
  import { readSourceCache, readDeliveryRecord, isSourceCacheFresh, writeDeliveryRecord, writeSourceCache, SOURCE_CACHE_TTL_SUCCESS_MS, clearDegraded, removeLauncherDeliveryRecord } from './chunk-YQR6E6OV.js';
18
16
  import './chunk-TUSYOL2O.js';
17
+ import './chunk-WFSUUUAN.js';
18
+ import './chunk-7VUK5RFS.js';
19
19
  import './chunk-VNVZDWO3.js';
20
20
  import './chunk-RA3O54FC.js';
21
21
  import './chunk-M2ZWWTWZ.js';
@@ -1,23 +1,23 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { needsClaudeCredential, claudeCredentialCheck, missingPermissionOf, missingPermissionFix } from './chunk-DADWEUH3.js';
3
+ import { needsClaudeCredential, claudeCredentialCheck, missingPermissionOf, missingPermissionFix } from './chunk-GEMQLBMW.js';
4
4
  import { freeBytes, formatBytes } from './chunk-YYYRBYWG.js';
5
5
  import { launcherCheck } from './chunk-VYAL7PUE.js';
6
6
  import './chunk-AMFWYESY.js';
7
7
  import { RepoFilter } from './chunk-TBT347UY.js';
8
- import './chunk-6D7GT22T.js';
8
+ import './chunk-PIZRPNKR.js';
9
9
  import './chunk-7YP7T6GV.js';
10
- import { detectMachine, supportsContainerBuilds, describeMachineDocker, reachDockerStep, supportsMicroVmBuilds, microVmArchSupported, microVmAssetsPinned } from './chunk-UVG35MWF.js';
11
- import { MIN_ENGINE_MAJOR } from './chunk-7KSSBQTS.js';
10
+ import { detectMachine, supportsContainerBuilds, describeMachineDocker, reachDockerStep, supportsMicroVmBuilds, microVmArchSupported, microVmAssetsPinned } from './chunk-LW7G5TJB.js';
11
+ import { MIN_ENGINE_MAJOR } from './chunk-3ZR7Y23Y.js';
12
12
  import './chunk-OGFGZQA3.js';
13
13
  import { resolveDevcontainerCli, spawnRun } from './chunk-VMJPFQNE.js';
14
14
  import { buildxState } from './chunk-3UZTIRLF.js';
15
15
  import './chunk-GGOMT6KF.js';
16
16
  import './chunk-X5H2WYMB.js';
17
- import './chunk-XSZD4AZ6.js';
17
+ import './chunk-XZ4H4X5F.js';
18
18
  import './chunk-QEFKA2QD.js';
19
19
  import './chunk-6MZSX4M7.js';
20
- import { getJson, WorkCommandError, signatureRefusalMessage } from './chunk-HPJNLETG.js';
20
+ import { getJson, WorkCommandError, signatureRefusalMessage } from './chunk-FBTGMSQF.js';
21
21
  import './chunk-IF2OSI5T.js';
22
22
  import './chunk-CG36IONK.js';
23
23
  import './chunk-G3IJ3N6F.js';
@@ -35,19 +35,19 @@ import './chunk-GOSFARMS.js';
35
35
  import './chunk-ANPNT6PM.js';
36
36
  import './chunk-WZBHBH3J.js';
37
37
  import './chunk-LLM3I5YU.js';
38
- import { defaultGitRunner } from './chunk-452TM7J4.js';
39
- import './chunk-IXYZUUYQ.js';
38
+ import { defaultGitRunner } from './chunk-EAEELQVQ.js';
39
+ import './chunk-7UWVLZXD.js';
40
40
  import { defaultFetch } from './chunk-FVMYKL6L.js';
41
41
  import './chunk-NTRCK4NH.js';
42
42
  import './chunk-ZJSNLVCE.js';
43
43
  import './chunk-BJ3KTMDH.js';
44
44
  import './chunk-G2YNJIGF.js';
45
45
  import './chunk-NNLA7LLQ.js';
46
- import './chunk-WFSUUUAN.js';
47
- import './chunk-7VUK5RFS.js';
48
46
  import './chunk-EABW6AJQ.js';
49
47
  import './chunk-CRB3POP4.js';
50
48
  import './chunk-YQR6E6OV.js';
49
+ import './chunk-WFSUUUAN.js';
50
+ import './chunk-7VUK5RFS.js';
51
51
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
52
52
  import './chunk-RA3O54FC.js';
53
53
  import { loadHostKey } from './chunk-M2ZWWTWZ.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { staleBuildRefusal, staleBuildWarning, detectCi } from './chunk-7SJPQWBM.js';
3
+ import { staleBuildRefusal, staleBuildWarning, detectCi } from './chunk-R22NZSGA.js';
4
4
  import './chunk-KYS3TQAG.js';
5
5
  import { launchRefusalForSession } from './chunk-ESVW4MJY.js';
6
6
  import './chunk-TBT347UY.js';
@@ -8,7 +8,7 @@ import { detectActiveSession, autoConnect } from './chunk-IF2OSI5T.js';
8
8
  import './chunk-CG36IONK.js';
9
9
  import { readEffectiveArtifactSpoolState, localArtifactIds, isArtifactTombstoned, artifactBlobsDir, appendArtifactRecord, artifactsSpoolPath, findPendingArtifactRecord, sanitizeTerminal, appendArtifactTombstone } from './chunk-G3IJ3N6F.js';
10
10
  import './chunk-BM63HB2M.js';
11
- import './chunk-NFIR3GEE.js';
11
+ import './chunk-PSN33ERW.js';
12
12
  import './chunk-F7CU5ABH.js';
13
13
  import './chunk-BKO6JEZI.js';
14
14
  import { resolveRepoIdentity } from './chunk-QNLX477Q.js';
@@ -22,10 +22,10 @@ import { resolveGatewayCredentials, unauthorizedMessage } from './chunk-NTRCK4NH
22
22
  import './chunk-ZJSNLVCE.js';
23
23
  import './chunk-BJ3KTMDH.js';
24
24
  import './chunk-G2YNJIGF.js';
25
- import { ARTIFACT_MAX_CAPTION_LENGTH, ArtifactCriterionIdSchema, ARTIFACT_MAX_FILENAME_LENGTH, mediaTypeForArtifactPath, inferArtifactKind, ARTIFACT_MAX_REPLACES_TARGETS, parseTestSelector, parseJunit, bindTests } from './chunk-7VUK5RFS.js';
26
25
  import './chunk-EABW6AJQ.js';
27
26
  import { cliInvocation } from './chunk-CRB3POP4.js';
28
27
  import './chunk-TUSYOL2O.js';
28
+ import { ARTIFACT_MAX_CAPTION_LENGTH, ArtifactCriterionIdSchema, ARTIFACT_MAX_FILENAME_LENGTH, mediaTypeForArtifactPath, inferArtifactKind, ARTIFACT_MAX_REPLACES_TARGETS, parseTestSelector, parseJunit, bindTests } from './chunk-7VUK5RFS.js';
29
29
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
30
30
  import './chunk-M2ZWWTWZ.js';
31
31
  import './chunk-N2PXGQRL.js';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { EmitError, runEmit } from './chunk-ZHAUSEEN.js';
3
+ export { EmitError, runEmit } from './chunk-5VML45HH.js';
4
4
  import './chunk-ANPNT6PM.js';
5
- import './chunk-IXYZUUYQ.js';
5
+ import './chunk-7UWVLZXD.js';
6
6
  import './chunk-NNLA7LLQ.js';
7
+ import './chunk-CRB3POP4.js';
7
8
  import './chunk-WFSUUUAN.js';
8
9
  import './chunk-7VUK5RFS.js';
9
- import './chunk-CRB3POP4.js';
10
10
  import './chunk-VNVZDWO3.js';
11
11
  import './chunk-RA3O54FC.js';
12
12
  import './chunk-Z5GEFMRW.js';
@@ -13,9 +13,9 @@ import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
13
13
  import { defaultFetch } from './chunk-FVMYKL6L.js';
14
14
  import { resolveGatewayCredentials, unauthorizedMessage } from './chunk-NTRCK4NH.js';
15
15
  import './chunk-BJ3KTMDH.js';
16
- import { CriteriaListSchema } from './chunk-7VUK5RFS.js';
17
16
  import './chunk-EABW6AJQ.js';
18
17
  import './chunk-CRB3POP4.js';
18
+ import { CriteriaListSchema } from './chunk-7VUK5RFS.js';
19
19
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
20
20
  import './chunk-M2ZWWTWZ.js';
21
21
  import './chunk-N2PXGQRL.js';
@@ -24,6 +24,33 @@ import './chunk-Z5GEFMRW.js';
24
24
  import { readFileSync } from 'fs';
25
25
 
26
26
  createRequire(import.meta.url);
27
+
28
+ // src/acceptance-file.ts
29
+ var CRITERION_LINE = /^\s*\d+\.\s+`(AC-(?:\d{3,}|[A-Z][A-Z0-9]*-\d+)-\d{2})`\s*(.*)$/;
30
+ var PROOF_ANNOTATION = /\(proof:\s*([A-Za-z]+)\)/;
31
+ var LIST_ITEM = /^\s*(?:\d+\.|[-*])\s/;
32
+ var CONTINUATION = /^\s+\S/;
33
+ function criteriaFromAcceptanceFile(markdown) {
34
+ const criteria = [];
35
+ let current = null;
36
+ for (const line of markdown.split(/\r?\n/)) {
37
+ const match = CRITERION_LINE.exec(line);
38
+ if (match) {
39
+ current = { id: match[1], text: match[2].trim(), proof: null };
40
+ criteria.push(current);
41
+ } else if (current !== null && CONTINUATION.test(line) && !LIST_ITEM.test(line)) {
42
+ current.text = `${current.text} ${line.trim()}`;
43
+ } else {
44
+ current = null;
45
+ }
46
+ }
47
+ for (const criterion of criteria) {
48
+ criterion.proof = PROOF_ANNOTATION.exec(criterion.text.replace(/`[^`]*`/g, ""))?.[1] ?? null;
49
+ }
50
+ return criteria;
51
+ }
52
+
53
+ // src/emit-criteria-cmd.ts
27
54
  var EmitCriteriaError = class extends Error {
28
55
  };
29
56
  var REPLACE_REFUSED_MESSAGE = "this item already has a recorded list, and a person must replace it. Run the command yourself, outside the session, with your own login. A repository's .outerlayer/policy.yaml can let sessions replace it with `criteria: { replace: anyone }`.";
@@ -111,10 +138,18 @@ async function runEmitCriteria(opts) {
111
138
  }
112
139
  }
113
140
  let raw;
114
- try {
115
- raw = JSON.parse(text);
116
- } catch (err) {
117
- throw new EmitCriteriaError(`"${opts.file}" is not valid JSON: ${String(err)}`);
141
+ if (opts.file.endsWith(".md")) {
142
+ const criteria = criteriaFromAcceptanceFile(text);
143
+ if (criteria.length === 0) {
144
+ throw new EmitCriteriaError(`"${opts.file}" lists no criteria: none of its list items opens with an id such as \`AC-123-01\``);
145
+ }
146
+ raw = { criteria };
147
+ } else {
148
+ try {
149
+ raw = JSON.parse(text);
150
+ } catch (err) {
151
+ throw new EmitCriteriaError(`"${opts.file}" is not valid JSON: ${String(err)}`);
152
+ }
118
153
  }
119
154
  const list = parseFile(raw);
120
155
  const identity = resolveRepoIdentity(cwd);
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { detectCi } from './chunk-7SJPQWBM.js';
3
+ import { detectCi } from './chunk-R22NZSGA.js';
4
4
  import './chunk-KYS3TQAG.js';
5
5
  import { launchRefusalForSession } from './chunk-ESVW4MJY.js';
6
6
  import './chunk-TBT347UY.js';
@@ -8,7 +8,7 @@ import { detectActiveSession, autoConnect } from './chunk-IF2OSI5T.js';
8
8
  import './chunk-CG36IONK.js';
9
9
  import './chunk-G3IJ3N6F.js';
10
10
  import './chunk-BM63HB2M.js';
11
- import './chunk-NFIR3GEE.js';
11
+ import './chunk-PSN33ERW.js';
12
12
  import './chunk-F7CU5ABH.js';
13
13
  import './chunk-BKO6JEZI.js';
14
14
  import { resolveRepoIdentity } from './chunk-QNLX477Q.js';
@@ -22,10 +22,10 @@ import { resolveGatewayCredentials, unauthorizedMessage } from './chunk-NTRCK4NH
22
22
  import './chunk-ZJSNLVCE.js';
23
23
  import './chunk-BJ3KTMDH.js';
24
24
  import './chunk-G2YNJIGF.js';
25
- import { EmittedNameSchema, EMITTED_RESULT_MAX_LINK_LENGTH, EMITTED_RESULTS, EMITTED_RESULT_MAX_BODY_LENGTH } from './chunk-7VUK5RFS.js';
26
25
  import './chunk-EABW6AJQ.js';
27
26
  import './chunk-CRB3POP4.js';
28
27
  import './chunk-TUSYOL2O.js';
28
+ import { EmittedNameSchema, EMITTED_RESULT_MAX_LINK_LENGTH, EMITTED_RESULTS, EMITTED_RESULT_MAX_BODY_LENGTH } from './chunk-7VUK5RFS.js';
29
29
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
30
30
  import './chunk-M2ZWWTWZ.js';
31
31
  import './chunk-N2PXGQRL.js';
@@ -14,9 +14,9 @@ import './chunk-WZBHBH3J.js';
14
14
  import './chunk-FVMYKL6L.js';
15
15
  import './chunk-NTRCK4NH.js';
16
16
  import './chunk-BJ3KTMDH.js';
17
- import './chunk-7VUK5RFS.js';
18
17
  import './chunk-EABW6AJQ.js';
19
18
  import './chunk-CRB3POP4.js';
19
+ import './chunk-7VUK5RFS.js';
20
20
  import './chunk-VNVZDWO3.js';
21
21
  import './chunk-M2ZWWTWZ.js';
22
22
  import './chunk-N2PXGQRL.js';
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { imageTargetFor, pinnedSourceOf, resolveGoverningSource } from './chunk-XSZD4AZ6.js';
4
- import './chunk-HPJNLETG.js';
3
+ export { imageTargetFor, pinnedSourceOf, resolveGoverningSource } from './chunk-XZ4H4X5F.js';
4
+ import './chunk-FBTGMSQF.js';
5
5
  import './chunk-IF2OSI5T.js';
6
6
  import './chunk-CG36IONK.js';
7
7
  import './chunk-G3IJ3N6F.js';
@@ -11,19 +11,19 @@ import './chunk-GOSFARMS.js';
11
11
  import './chunk-ANPNT6PM.js';
12
12
  import './chunk-WZBHBH3J.js';
13
13
  import './chunk-LLM3I5YU.js';
14
- import './chunk-452TM7J4.js';
15
- import './chunk-IXYZUUYQ.js';
14
+ import './chunk-EAEELQVQ.js';
15
+ import './chunk-7UWVLZXD.js';
16
16
  import './chunk-FVMYKL6L.js';
17
17
  import './chunk-NTRCK4NH.js';
18
18
  import './chunk-ZJSNLVCE.js';
19
19
  import './chunk-BJ3KTMDH.js';
20
20
  import './chunk-G2YNJIGF.js';
21
21
  import './chunk-NNLA7LLQ.js';
22
- import './chunk-WFSUUUAN.js';
23
- import './chunk-7VUK5RFS.js';
24
22
  import './chunk-EABW6AJQ.js';
25
23
  import './chunk-CRB3POP4.js';
26
24
  import './chunk-YQR6E6OV.js';
25
+ import './chunk-WFSUUUAN.js';
26
+ import './chunk-7VUK5RFS.js';
27
27
  import './chunk-VNVZDWO3.js';
28
28
  import './chunk-RA3O54FC.js';
29
29
  import './chunk-M2ZWWTWZ.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { AUTO_SYNC_DEBOUNCE_MS, WORK_LEASE_RENEW_DEBOUNCE_MS, WORK_LINK_RETRIES, contextPossiblyGoverned, handleWorkLaunch, handleWorkSessionEnd, hookFiredMarkerPath, logHookError, markWorkLeaseRenewed, maybeAutoSync, maybeRenewWorkLease, recordLinkExitFailure, runHookFast, spoolDir } from './chunk-NFIR3GEE.js';
3
+ export { AUTO_SYNC_DEBOUNCE_MS, WORK_LEASE_RENEW_DEBOUNCE_MS, WORK_LINK_RETRIES, contextPossiblyGoverned, handleWorkLaunch, handleWorkSessionEnd, hookFiredMarkerPath, logHookError, markWorkLeaseRenewed, maybeAutoSync, maybeRenewWorkLease, recordLinkExitFailure, runHookFast, spoolDir } from './chunk-PSN33ERW.js';
4
4
  import './chunk-ZJSNLVCE.js';
5
5
  import './chunk-BJ3KTMDH.js';
6
6
  import './chunk-G2YNJIGF.js';
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ createRequire(import.meta.url);
6
6
  // src/index.ts
7
7
  var argv = process.argv.slice(2);
8
8
  if (argv[0] === "hook") {
9
- const { runHookFast } = await import('./hook-fast-YAZG5MDX.js');
9
+ const { runHookFast } = await import('./hook-fast-RL5E5OXE.js');
10
10
  await runHookFast(argv[1]);
11
11
  process.exit(0);
12
12
  }
@@ -22,9 +22,9 @@ if (argv[0] === "statusline") {
22
22
  process.exit(0);
23
23
  }
24
24
  if (argv[0] === "claude") {
25
- const { runClaudeLauncher } = await import('./claude-launcher-FPPHZPMR.js');
25
+ const { runClaudeLauncher } = await import('./claude-launcher-J5M44PFS.js');
26
26
  process.exit(await runClaudeLauncher(argv.slice(1)));
27
27
  }
28
- (await import('./hook-fast-YAZG5MDX.js')).recordLinkExitFailure(argv);
29
- var { runCli } = await import('./cli-HROW5T7X.js');
28
+ (await import('./hook-fast-RL5E5OXE.js')).recordLinkExitFailure(argv);
29
+ var { runCli } = await import('./cli-MKF7TU7X.js');
30
30
  await runCli(process.argv);
@@ -1,19 +1,19 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { npmSupportsProvenance } from './chunk-YETTWTAY.js';
4
- import { RunnerInitError, readConfigObject } from './chunk-6D7GT22T.js';
4
+ import { RunnerInitError, readConfigObject } from './chunk-PIZRPNKR.js';
5
5
  import './chunk-7YP7T6GV.js';
6
- import './chunk-UVG35MWF.js';
7
- import './chunk-7KSSBQTS.js';
6
+ import './chunk-LW7G5TJB.js';
7
+ import './chunk-3ZR7Y23Y.js';
8
8
  import './chunk-OGFGZQA3.js';
9
9
  import './chunk-VMJPFQNE.js';
10
10
  import './chunk-3UZTIRLF.js';
11
11
  import './chunk-GGOMT6KF.js';
12
12
  import './chunk-X5H2WYMB.js';
13
- import './chunk-XSZD4AZ6.js';
13
+ import './chunk-XZ4H4X5F.js';
14
14
  import { checkFit, VM_SERVICE_NAME, RUNNER_RESERVE_BYTES } from './chunk-QEFKA2QD.js';
15
15
  import './chunk-6MZSX4M7.js';
16
- import './chunk-HPJNLETG.js';
16
+ import './chunk-FBTGMSQF.js';
17
17
  import './chunk-IF2OSI5T.js';
18
18
  import './chunk-CG36IONK.js';
19
19
  import './chunk-G3IJ3N6F.js';
@@ -32,19 +32,19 @@ import './chunk-GOSFARMS.js';
32
32
  import './chunk-ANPNT6PM.js';
33
33
  import './chunk-WZBHBH3J.js';
34
34
  import './chunk-LLM3I5YU.js';
35
- import './chunk-452TM7J4.js';
36
- import './chunk-IXYZUUYQ.js';
35
+ import './chunk-EAEELQVQ.js';
36
+ import './chunk-7UWVLZXD.js';
37
37
  import './chunk-FVMYKL6L.js';
38
38
  import './chunk-NTRCK4NH.js';
39
39
  import './chunk-ZJSNLVCE.js';
40
40
  import './chunk-BJ3KTMDH.js';
41
41
  import './chunk-G2YNJIGF.js';
42
42
  import './chunk-NNLA7LLQ.js';
43
- import './chunk-WFSUUUAN.js';
44
- import './chunk-7VUK5RFS.js';
45
43
  import { readCloudConfig } from './chunk-EABW6AJQ.js';
46
44
  import './chunk-CRB3POP4.js';
47
45
  import './chunk-YQR6E6OV.js';
46
+ import './chunk-WFSUUUAN.js';
47
+ import './chunk-7VUK5RFS.js';
48
48
  import './chunk-VNVZDWO3.js';
49
49
  import './chunk-RA3O54FC.js';
50
50
  import './chunk-M2ZWWTWZ.js';
@@ -1,18 +1,18 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { PLACEHOLDER_MARKER, RunnerInitError, isPlaceholderCommand, prepareRunnerInit, readConfigObject, runRunnerInit, writeRunnerInit } from './chunk-6D7GT22T.js';
3
+ export { PLACEHOLDER_MARKER, RunnerInitError, isPlaceholderCommand, prepareRunnerInit, readConfigObject, runRunnerInit, writeRunnerInit } from './chunk-PIZRPNKR.js';
4
4
  import './chunk-7YP7T6GV.js';
5
- import './chunk-UVG35MWF.js';
6
- import './chunk-7KSSBQTS.js';
5
+ import './chunk-LW7G5TJB.js';
6
+ import './chunk-3ZR7Y23Y.js';
7
7
  import './chunk-OGFGZQA3.js';
8
8
  import './chunk-VMJPFQNE.js';
9
9
  import './chunk-3UZTIRLF.js';
10
10
  import './chunk-GGOMT6KF.js';
11
11
  import './chunk-X5H2WYMB.js';
12
- import './chunk-XSZD4AZ6.js';
12
+ import './chunk-XZ4H4X5F.js';
13
13
  import './chunk-QEFKA2QD.js';
14
14
  import './chunk-6MZSX4M7.js';
15
- import './chunk-HPJNLETG.js';
15
+ import './chunk-FBTGMSQF.js';
16
16
  import './chunk-IF2OSI5T.js';
17
17
  import './chunk-CG36IONK.js';
18
18
  import './chunk-G3IJ3N6F.js';
@@ -30,19 +30,19 @@ import './chunk-GOSFARMS.js';
30
30
  import './chunk-ANPNT6PM.js';
31
31
  import './chunk-WZBHBH3J.js';
32
32
  import './chunk-LLM3I5YU.js';
33
- import './chunk-452TM7J4.js';
34
- import './chunk-IXYZUUYQ.js';
33
+ import './chunk-EAEELQVQ.js';
34
+ import './chunk-7UWVLZXD.js';
35
35
  import './chunk-FVMYKL6L.js';
36
36
  import './chunk-NTRCK4NH.js';
37
37
  import './chunk-ZJSNLVCE.js';
38
38
  import './chunk-BJ3KTMDH.js';
39
39
  import './chunk-G2YNJIGF.js';
40
40
  import './chunk-NNLA7LLQ.js';
41
- import './chunk-WFSUUUAN.js';
42
- import './chunk-7VUK5RFS.js';
43
41
  import './chunk-EABW6AJQ.js';
44
42
  import './chunk-CRB3POP4.js';
45
43
  import './chunk-YQR6E6OV.js';
44
+ import './chunk-WFSUUUAN.js';
45
+ import './chunk-7VUK5RFS.js';
46
46
  import './chunk-VNVZDWO3.js';
47
47
  import './chunk-RA3O54FC.js';
48
48
  import './chunk-M2ZWWTWZ.js';
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { summarizeChecks, summaryText, renderDoctorText } from './chunk-5TN7GLYX.js';
3
+ import { summarizeChecks, summaryText, renderDoctorText } from './chunk-HOKXGFDR.js';
4
4
  import './chunk-TWF3RICI.js';
5
- import { removeShellFunction, shellFunctionInstalled, installShellFunction, SHELL_FUNCTION_LINE } from './chunk-CJJDJ7AT.js';
6
- import './chunk-HPJNLETG.js';
5
+ import { shellFunctionInstalled, removeShellFunction, installShellFunction, SHELL_FUNCTION_LINE } from './chunk-CJJDJ7AT.js';
6
+ import './chunk-FBTGMSQF.js';
7
7
  import './chunk-IF2OSI5T.js';
8
8
  import { runConnect, COMMIT_LINE } from './chunk-CG36IONK.js';
9
9
  import './chunk-G3IJ3N6F.js';
10
10
  import './chunk-BM63HB2M.js';
11
- import './chunk-NFIR3GEE.js';
11
+ import './chunk-PSN33ERW.js';
12
12
  import './chunk-DSF2FWAZ.js';
13
13
  import './chunk-BKO6JEZI.js';
14
14
  import './chunk-QNLX477Q.js';
@@ -18,19 +18,19 @@ import './chunk-GOSFARMS.js';
18
18
  import { C } from './chunk-ANPNT6PM.js';
19
19
  import './chunk-WZBHBH3J.js';
20
20
  import './chunk-5QRP3MVS.js';
21
- import './chunk-IXYZUUYQ.js';
21
+ import './chunk-7UWVLZXD.js';
22
22
  import './chunk-FVMYKL6L.js';
23
23
  import './chunk-NTRCK4NH.js';
24
24
  import './chunk-ZJSNLVCE.js';
25
25
  import './chunk-BJ3KTMDH.js';
26
26
  import './chunk-G2YNJIGF.js';
27
27
  import './chunk-NNLA7LLQ.js';
28
- import './chunk-WFSUUUAN.js';
29
- import './chunk-7VUK5RFS.js';
30
28
  import './chunk-EABW6AJQ.js';
31
29
  import { cliInvocation } from './chunk-CRB3POP4.js';
32
30
  import './chunk-YQR6E6OV.js';
33
31
  import './chunk-TUSYOL2O.js';
32
+ import './chunk-WFSUUUAN.js';
33
+ import './chunk-7VUK5RFS.js';
34
34
  import './chunk-VNVZDWO3.js';
35
35
  import './chunk-RA3O54FC.js';
36
36
  import './chunk-M2ZWWTWZ.js';
@@ -157,16 +157,18 @@ ${CLOSING_LINE}
157
157
  return finish();
158
158
  }
159
159
  async function setUpShellFunction(flags, shell) {
160
- if (flags.shellFunction === false) {
160
+ if (flags.shellFunction !== void 0) return applyShellFunctionFlag(flags.shellFunction, shell);
161
+ if (shellFunctionInstalled({ home: shell.home, shellPath: shell.shellPath })) return { outcome: "skipped", reason: "already set up", text: "" };
162
+ if (!shell.interactive) return { outcome: "skipped", reason: "no terminal to ask on", text: "" };
163
+ if (!await shell.ask()) return { outcome: "skipped", reason: "declined", text: "" };
164
+ return applyShellFunctionFlag(true, shell);
165
+ }
166
+ function applyShellFunctionFlag(on, shell) {
167
+ if (!on) {
161
168
  const changed = removeShellFunction({ home: shell.home });
162
169
  return changed.length === 0 ? { outcome: "skipped", reason: "no shell function to remove", text: "" } : { outcome: "done", reason: "removed the shell function", text: `${C.green}\u2713${C.reset} removed the claude function from ${changed.join(", ")}
163
170
  ` };
164
171
  }
165
- if (flags.shellFunction !== true) {
166
- if (shellFunctionInstalled({ home: shell.home, shellPath: shell.shellPath })) return { outcome: "skipped", reason: "already set up", text: "" };
167
- if (!shell.interactive) return { outcome: "skipped", reason: "no terminal to ask on", text: "" };
168
- if (!await shell.ask()) return { outcome: "skipped", reason: "declined", text: "" };
169
- }
170
172
  const installed = installShellFunction({ home: shell.home, shellPath: shell.shellPath });
171
173
  switch (installed.status) {
172
174
  case "added":
@@ -186,4 +188,4 @@ async function setUpShellFunction(flags, shell) {
186
188
  }
187
189
  }
188
190
 
189
- export { runInitCommand };
191
+ export { applyShellFunctionFlag, runInitCommand };
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { keepHandWritten } from './chunk-DJ3ZUSC3.js';
4
- import { runEmit } from './chunk-ZHAUSEEN.js';
3
+ import { keepHandWritten } from './chunk-CGGPS7SI.js';
4
+ import { runEmit } from './chunk-5VML45HH.js';
5
5
  import { contextIsGoverned, inspectStarterFiles, canonical } from './chunk-TWF3RICI.js';
6
6
  import { COMMIT_LINE } from './chunk-CG36IONK.js';
7
7
  import './chunk-G3IJ3N6F.js';
@@ -11,18 +11,18 @@ import { setMcpEntry } from './chunk-YVZJ6GKF.js';
11
11
  import './chunk-6X4SQ5MY.js';
12
12
  import './chunk-GOSFARMS.js';
13
13
  import { C } from './chunk-ANPNT6PM.js';
14
- import './chunk-452TM7J4.js';
15
- import './chunk-IXYZUUYQ.js';
14
+ import './chunk-EAEELQVQ.js';
15
+ import './chunk-7UWVLZXD.js';
16
16
  import './chunk-FVMYKL6L.js';
17
17
  import './chunk-NTRCK4NH.js';
18
18
  import './chunk-ZJSNLVCE.js';
19
19
  import { findGitDirs } from './chunk-BJ3KTMDH.js';
20
20
  import './chunk-NNLA7LLQ.js';
21
- import './chunk-WFSUUUAN.js';
22
- import './chunk-7VUK5RFS.js';
23
21
  import './chunk-EABW6AJQ.js';
24
22
  import { cliInvocation } from './chunk-CRB3POP4.js';
25
23
  import './chunk-YQR6E6OV.js';
24
+ import './chunk-WFSUUUAN.js';
25
+ import './chunk-7VUK5RFS.js';
26
26
  import './chunk-VNVZDWO3.js';
27
27
  import './chunk-RA3O54FC.js';
28
28
  import './chunk-M2ZWWTWZ.js';
@@ -1,36 +1,36 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { RunnerStartError, listJobFiles, probeCredentials, requestStop, runnerProcessState, start, tick, watchTick } from './chunk-5MYFOW5V.js';
4
- import './chunk-6U3MV7TZ.js';
3
+ export { RunnerStartError, listJobFiles, probeCredentials, requestStop, runnerProcessState, start, tick, watchTick } from './chunk-AD3EYI7P.js';
4
+ import './chunk-B6SCN5NY.js';
5
+ import './chunk-SADUQSO4.js';
5
6
  import './chunk-MTP2QEVO.js';
6
7
  import './chunk-S5PCA3SN.js';
7
8
  import './chunk-3JVYMD4G.js';
8
9
  import './chunk-YETTWTAY.js';
9
- import './chunk-SADUQSO4.js';
10
10
  import './chunk-I2UOAV7X.js';
11
- import './chunk-BWSUPRDK.js';
12
- import './chunk-5GHGAF6P.js';
11
+ import './chunk-ZX4I2MEK.js';
12
+ import './chunk-JHGEBPLE.js';
13
13
  import './chunk-XNGMQ27R.js';
14
- import './chunk-7SJPQWBM.js';
14
+ import './chunk-R22NZSGA.js';
15
15
  import './chunk-KYS3TQAG.js';
16
16
  import './chunk-ESVW4MJY.js';
17
- import './chunk-DADWEUH3.js';
17
+ import './chunk-GEMQLBMW.js';
18
18
  import './chunk-YYYRBYWG.js';
19
19
  import './chunk-AMFWYESY.js';
20
20
  import './chunk-TBT347UY.js';
21
- import './chunk-6D7GT22T.js';
21
+ import './chunk-PIZRPNKR.js';
22
22
  import './chunk-7YP7T6GV.js';
23
- import './chunk-UVG35MWF.js';
24
- import './chunk-7KSSBQTS.js';
23
+ import './chunk-LW7G5TJB.js';
24
+ import './chunk-3ZR7Y23Y.js';
25
25
  import './chunk-OGFGZQA3.js';
26
26
  import './chunk-VMJPFQNE.js';
27
27
  import './chunk-3UZTIRLF.js';
28
28
  import './chunk-GGOMT6KF.js';
29
29
  import './chunk-X5H2WYMB.js';
30
- import './chunk-XSZD4AZ6.js';
30
+ import './chunk-XZ4H4X5F.js';
31
31
  import './chunk-QEFKA2QD.js';
32
32
  import './chunk-6MZSX4M7.js';
33
- import './chunk-HPJNLETG.js';
33
+ import './chunk-FBTGMSQF.js';
34
34
  import './chunk-IF2OSI5T.js';
35
35
  import './chunk-CG36IONK.js';
36
36
  import './chunk-G3IJ3N6F.js';
@@ -43,7 +43,7 @@ import './chunk-QOZKPLVJ.js';
43
43
  import './chunk-CX22S5BA.js';
44
44
  import './chunk-ECODQ7II.js';
45
45
  import './chunk-JBJTC3UU.js';
46
- import './chunk-NFIR3GEE.js';
46
+ import './chunk-PSN33ERW.js';
47
47
  import './chunk-F7CU5ABH.js';
48
48
  import './chunk-BKO6JEZI.js';
49
49
  import './chunk-QNLX477Q.js';
@@ -53,20 +53,20 @@ import './chunk-T2Q7ISPE.js';
53
53
  import './chunk-WZBHBH3J.js';
54
54
  import './chunk-5QRP3MVS.js';
55
55
  import './chunk-LLM3I5YU.js';
56
- import './chunk-452TM7J4.js';
57
- import './chunk-IXYZUUYQ.js';
56
+ import './chunk-EAEELQVQ.js';
57
+ import './chunk-7UWVLZXD.js';
58
58
  import './chunk-FVMYKL6L.js';
59
59
  import './chunk-NTRCK4NH.js';
60
60
  import './chunk-ZJSNLVCE.js';
61
61
  import './chunk-BJ3KTMDH.js';
62
62
  import './chunk-G2YNJIGF.js';
63
63
  import './chunk-NNLA7LLQ.js';
64
- import './chunk-WFSUUUAN.js';
65
- import './chunk-7VUK5RFS.js';
66
64
  import './chunk-EABW6AJQ.js';
67
65
  import './chunk-CRB3POP4.js';
68
66
  import './chunk-YQR6E6OV.js';
69
67
  import './chunk-TUSYOL2O.js';
68
+ import './chunk-WFSUUUAN.js';
69
+ import './chunk-7VUK5RFS.js';
70
70
  import './chunk-VNVZDWO3.js';
71
71
  import './chunk-RA3O54FC.js';
72
72
  import './chunk-M2ZWWTWZ.js';
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { describeMachineDocker, detectMachine, microVmArchSupported, microVmAssetsPinned, reachDockerStep, supportsContainerBuilds, supportsMicroVmBuilds } from './chunk-UVG35MWF.js';
4
- import './chunk-7KSSBQTS.js';
3
+ export { describeMachineDocker, detectMachine, microVmArchSupported, microVmAssetsPinned, reachDockerStep, supportsContainerBuilds, supportsMicroVmBuilds } from './chunk-LW7G5TJB.js';
4
+ import './chunk-3ZR7Y23Y.js';
5
5
  import './chunk-OGFGZQA3.js';
6
6
  import './chunk-VMJPFQNE.js';
7
7
  import './chunk-3UZTIRLF.js';
8
8
  import './chunk-GGOMT6KF.js';
9
9
  import './chunk-X5H2WYMB.js';
10
- import './chunk-XSZD4AZ6.js';
11
- import './chunk-HPJNLETG.js';
10
+ import './chunk-XZ4H4X5F.js';
11
+ import './chunk-FBTGMSQF.js';
12
12
  import './chunk-IF2OSI5T.js';
13
13
  import './chunk-CG36IONK.js';
14
14
  import './chunk-G3IJ3N6F.js';
@@ -25,19 +25,19 @@ import './chunk-GOSFARMS.js';
25
25
  import './chunk-ANPNT6PM.js';
26
26
  import './chunk-WZBHBH3J.js';
27
27
  import './chunk-LLM3I5YU.js';
28
- import './chunk-452TM7J4.js';
29
- import './chunk-IXYZUUYQ.js';
28
+ import './chunk-EAEELQVQ.js';
29
+ import './chunk-7UWVLZXD.js';
30
30
  import './chunk-FVMYKL6L.js';
31
31
  import './chunk-NTRCK4NH.js';
32
32
  import './chunk-ZJSNLVCE.js';
33
33
  import './chunk-BJ3KTMDH.js';
34
34
  import './chunk-G2YNJIGF.js';
35
35
  import './chunk-NNLA7LLQ.js';
36
- import './chunk-WFSUUUAN.js';
37
- import './chunk-7VUK5RFS.js';
38
36
  import './chunk-EABW6AJQ.js';
39
37
  import './chunk-CRB3POP4.js';
40
38
  import './chunk-YQR6E6OV.js';
39
+ import './chunk-WFSUUUAN.js';
40
+ import './chunk-7VUK5RFS.js';
41
41
  import './chunk-VNVZDWO3.js';
42
42
  import './chunk-RA3O54FC.js';
43
43
  import './chunk-M2ZWWTWZ.js';