@outerlayer/cli 0.25.1 → 0.26.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 (91) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +0 -1
  3. package/dist/{agent-setup-PDIIGMKE.js → agent-setup-YHFZB2BC.js} +5 -5
  4. package/dist/{build-YYVAJ75G.js → build-JK2DLT6X.js} +4 -4
  5. package/dist/build-info.json +1 -1
  6. package/dist/{builder-MNUJS4RG.js → builder-TMA25KRR.js} +4 -4
  7. package/dist/{check-C6HEFW6R.js → check-FAGTKWHT.js} +28 -28
  8. package/dist/{chunk-QMQC6JCO.js → chunk-4IFKLYMM.js} +1 -1
  9. package/dist/{chunk-A6ORKBVJ.js → chunk-4QKHBDEN.js} +20 -11
  10. package/dist/{chunk-APBTVIM4.js → chunk-4R24DSL2.js} +4 -4
  11. package/dist/{chunk-ZGMQQWCV.js → chunk-5PMQDQFV.js} +2 -2
  12. package/dist/{chunk-5222PA6S.js → chunk-665QWBNW.js} +1 -1
  13. package/dist/{chunk-O2WYUIK7.js → chunk-6FAP657M.js} +1 -1
  14. package/dist/{chunk-S6AWZKJN.js → chunk-6S3UEBLB.js} +3 -3
  15. package/dist/{chunk-ENFBARQP.js → chunk-6WZKI6LQ.js} +18 -11
  16. package/dist/{chunk-N3VSI5ZI.js → chunk-7I6GZSN3.js} +3 -3
  17. package/dist/{chunk-Q435LWVN.js → chunk-AINUN2TT.js} +3 -3
  18. package/dist/{chunk-OEU4JSDE.js → chunk-ARMZI56S.js} +4 -4
  19. package/dist/{chunk-K5WVK7IC.js → chunk-C3AMVSMS.js} +1 -1
  20. package/dist/{chunk-23SPSYXZ.js → chunk-CLUUAX6O.js} +2 -2
  21. package/dist/{chunk-FXUVXSY2.js → chunk-D4UDE2AP.js} +1 -1
  22. package/dist/{chunk-F57CLUH7.js → chunk-DVAAATJP.js} +16 -16
  23. package/dist/{chunk-CQRIZNE6.js → chunk-DZUANBKP.js} +5 -5
  24. package/dist/{chunk-ZODVSFI4.js → chunk-F6DIHHBS.js} +1 -1
  25. package/dist/{chunk-3WZ5ECSM.js → chunk-FQCLEH34.js} +2 -2
  26. package/dist/{chunk-SNQR2EYI.js → chunk-G2T4HCGT.js} +1 -1
  27. package/dist/{chunk-M4B6QKNZ.js → chunk-GJZEUQ6D.js} +1 -1
  28. package/dist/{chunk-4S4VBDSO.js → chunk-H3AEZIYB.js} +1 -1
  29. package/dist/{chunk-C36EOUUU.js → chunk-ITP76BST.js} +4 -4
  30. package/dist/{chunk-QXNJWSTM.js → chunk-JF572PM5.js} +3 -3
  31. package/dist/{chunk-ATGHVEU4.js → chunk-KDDFI5MR.js} +1 -1
  32. package/dist/{chunk-ZI2ZVWKT.js → chunk-L4CW6LZQ.js} +1 -1
  33. package/dist/{chunk-IGRRD7PX.js → chunk-MLD2NA7N.js} +1 -1
  34. package/dist/{chunk-H6ZFLIX3.js → chunk-P7UQZFNY.js} +2 -2
  35. package/dist/{chunk-DEBOL6ON.js → chunk-PYSKSROG.js} +1 -1
  36. package/dist/{chunk-24LQ34XL.js → chunk-TI33WRBT.js} +4 -4
  37. package/dist/{chunk-XRYUJTAT.js → chunk-TKL74NLB.js} +1 -1
  38. package/dist/{chunk-3FNPTQRH.js → chunk-WVM6PM2N.js} +5 -5
  39. package/dist/{chunk-VAMUWK55.js → chunk-XBCJI6SV.js} +2 -2
  40. package/dist/{chunk-I25F6YVP.js → chunk-XK7FRM5J.js} +6 -6
  41. package/dist/{claude-launcher-WGOCLTG6.js → claude-launcher-FXFXYW2E.js} +1 -1
  42. package/dist/{cli-YMTNHR4W.js → cli-CD4UNXBY.js} +80 -129
  43. package/dist/{command-DKYZC7PH.js → command-A54TSZWD.js} +19 -19
  44. package/dist/{connect-cmd-F7T4LNKX.js → connect-cmd-HAFFAVEO.js} +4 -4
  45. package/dist/{container-start-AX7QXJMR.js → container-start-NRPEMKKE.js} +18 -18
  46. package/dist/{control-plane-launch-ZFT6SI4N.js → control-plane-launch-FRK5IZXC.js} +4 -4
  47. package/dist/{docker-5EC5TE3Y.js → docker-4X2A5HDY.js} +4 -4
  48. package/dist/{doctor-S6YCZGUU.js → doctor-AXJQQBKY.js} +36 -22
  49. package/dist/{emit-artifact-cmd-DJO475VZ.js → emit-artifact-cmd-Y2GMWCSD.js} +8 -8
  50. package/dist/{emit-criteria-cmd-EULQ2MLI.js → emit-criteria-cmd-LI7OLHEC.js} +5 -5
  51. package/dist/{emit-finding-cmd-QIIKMITO.js → emit-finding-cmd-3LU7C356.js} +5 -5
  52. package/dist/{emit-result-cmd-NMCLTA47.js → emit-result-cmd-NKAKRBW2.js} +8 -8
  53. package/dist/{emit-step-cmd-72OX5P6M.js → emit-step-cmd-JQ23TRF5.js} +6 -6
  54. package/dist/{governing-source-JNQ6PX2A.js → governing-source-73APROH6.js} +8 -8
  55. package/dist/{hook-fast-NEELST6G.js → hook-fast-GD7F2EBL.js} +1 -1
  56. package/dist/{pending-BGLMTB5Q.js → host-key-5TKBNUZ4.js} +2 -2
  57. package/dist/{image-tag-6KJOGBQK.js → image-tag-5SJ6ZKT7.js} +2 -2
  58. package/dist/index.js +4 -4
  59. package/dist/{init-G7XC5WWL.js → init-5WVPLO3G.js} +18 -18
  60. package/dist/{init-624F4JIP.js → init-IFQCZKY6.js} +18 -18
  61. package/dist/{init-cmd-UUYA57VO.js → init-cmd-KNYXSA6O.js} +8 -8
  62. package/dist/{init-update-MMV33PLM.js → init-update-HTHYQOHU.js} +6 -6
  63. package/dist/{install-MPEJJ7X6.js → install-QSTTBUHX.js} +2 -2
  64. package/dist/{install-cmd-SE6NCTJK.js → install-cmd-3DXJJUAA.js} +4 -4
  65. package/dist/{logs-T4ERSOQ4.js → logs-VN2HKDSH.js} +1 -1
  66. package/dist/{loop-K5B2A3VW.js → loop-HTWKPG3J.js} +28 -28
  67. package/dist/{machine-J4IFVIKU.js → machine-AYYL2WXW.js} +15 -15
  68. package/dist/{mcp-serve-cmd-7M4VLNI4.js → mcp-serve-cmd-QBFQN553.js} +3 -3
  69. package/dist/paths-ZC6BMWMT.js +8 -0
  70. package/dist/{host-key-ICJEQBWH.js → pending-54HC7MM3.js} +2 -2
  71. package/dist/{pidfile-VYBH3IMN.js → pidfile-BY5Z6YH7.js} +2 -2
  72. package/dist/{record-GNOHDJ2O.js → record-K23IN6QN.js} +2 -2
  73. package/dist/{runner-env-GUFV544G.js → runner-env-2D7MPOIJ.js} +3 -3
  74. package/dist/{runner-identity-HZ6CBM2R.js → runner-identity-NH6RLVMI.js} +4 -4
  75. package/dist/{runner-key-FFVZUEHE.js → runner-key-3HAVHQZI.js} +18 -18
  76. package/dist/{session-sender-3SUWNNVP.js → session-sender-535VA2CA.js} +9 -9
  77. package/dist/{spec-cmd-VZDE6FFH.js → spec-cmd-KERLZ6GJ.js} +6 -6
  78. package/dist/{status-GXTD44DX.js → status-IAXWRX7B.js} +19 -19
  79. package/dist/{sync-cmd-VFB3NEJ6.js → sync-cmd-EIRKU5FA.js} +8 -8
  80. package/dist/{watch-LWMTDD3L.js → watch-SMF5CW5T.js} +8 -8
  81. package/dist/{work-claim-cmd-FOBTDQVR.js → work-claim-cmd-JCUBRZKN.js} +8 -8
  82. package/dist/{work-cmd-6HARIBMW.js → work-cmd-C3CFJZYD.js} +6 -6
  83. package/dist/{work-comment-cmd-BITPALHR.js → work-comment-cmd-NDE3O7PN.js} +6 -6
  84. package/dist/{work-logs-cmd-VGB3O2LZ.js → work-logs-cmd-KUGBBJAO.js} +6 -6
  85. package/dist/{work-open-pr-cmd-SVZCNOIM.js → work-open-pr-cmd-TFIGKPRL.js} +7 -7
  86. package/dist/{work-pr-cmd-SJT46GN4.js → work-pr-cmd-KKCLXRJL.js} +6 -6
  87. package/dist/{work-stop-cmd-WXKVVA4S.js → work-stop-cmd-QUEDBM4Q.js} +6 -6
  88. package/package.json +2 -2
  89. package/dist/import-capture-cmd-TCOKNVBM.js +0 -73
  90. package/dist/import-ruler-cmd-VJOHOJQ7.js +0 -173
  91. package/dist/paths-2KGM2LZV.js +0 -8
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { CHUNK_PART_TARGET_BYTES, RETRYABLE_STATUSES, SyncConfigError, SyncTransportError, detectCi, isLoopbackUrl, resolveTier, runSync } from './chunk-C36EOUUU.js';
4
- import './chunk-H6ZFLIX3.js';
3
+ export { CHUNK_PART_TARGET_BYTES, RETRYABLE_STATUSES, SyncConfigError, SyncTransportError, detectCi, isLoopbackUrl, resolveTier, runSync } from './chunk-ITP76BST.js';
4
+ import './chunk-P7UQZFNY.js';
5
5
  import './chunk-ESVW4MJY.js';
6
6
  import './chunk-TBT347UY.js';
7
- import './chunk-3WZ5ECSM.js';
8
- import './chunk-SNQR2EYI.js';
7
+ import './chunk-FQCLEH34.js';
8
+ import './chunk-G2T4HCGT.js';
9
9
  import './chunk-BUP5N3X6.js';
10
10
  import './chunk-XSPA5ODY.js';
11
11
  import './chunk-GOSFARMS.js';
12
- import './chunk-M4B6QKNZ.js';
13
- import './chunk-K5WVK7IC.js';
12
+ import './chunk-GJZEUQ6D.js';
13
+ import './chunk-C3AMVSMS.js';
14
14
  import './chunk-ZJSNLVCE.js';
15
15
  import './chunk-DYEFPYME.js';
16
16
  import './chunk-BKO6JEZI.js';
@@ -30,8 +30,8 @@ import './chunk-RKOTJQVG.js';
30
30
  import './chunk-QZBXLLTV.js';
31
31
  import './chunk-VNVZDWO3.js';
32
32
  import './chunk-RA3O54FC.js';
33
- import './chunk-ZODVSFI4.js';
34
- import './chunk-ZI2ZVWKT.js';
33
+ import './chunk-F6DIHHBS.js';
34
+ import './chunk-L4CW6LZQ.js';
35
35
  import './chunk-2K3TCQHW.js';
36
36
  import './chunk-JGD5TWQ2.js';
37
37
  import './chunk-Z5GEFMRW.js';
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { LiveUploader } from './chunk-C36EOUUU.js';
4
- import './chunk-H6ZFLIX3.js';
3
+ import { LiveUploader } from './chunk-ITP76BST.js';
4
+ import './chunk-P7UQZFNY.js';
5
5
  import './chunk-ESVW4MJY.js';
6
6
  import './chunk-TBT347UY.js';
7
- import './chunk-3WZ5ECSM.js';
8
- import './chunk-SNQR2EYI.js';
7
+ import './chunk-FQCLEH34.js';
8
+ import './chunk-G2T4HCGT.js';
9
9
  import './chunk-BUP5N3X6.js';
10
10
  import './chunk-XSPA5ODY.js';
11
11
  import './chunk-GOSFARMS.js';
12
- import './chunk-M4B6QKNZ.js';
13
- import './chunk-K5WVK7IC.js';
12
+ import './chunk-GJZEUQ6D.js';
13
+ import './chunk-C3AMVSMS.js';
14
14
  import './chunk-ZJSNLVCE.js';
15
15
  import './chunk-DYEFPYME.js';
16
16
  import './chunk-BKO6JEZI.js';
@@ -30,8 +30,8 @@ import './chunk-RKOTJQVG.js';
30
30
  import './chunk-QZBXLLTV.js';
31
31
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
32
32
  import './chunk-RA3O54FC.js';
33
- import './chunk-ZODVSFI4.js';
34
- import './chunk-ZI2ZVWKT.js';
33
+ import './chunk-F6DIHHBS.js';
34
+ import './chunk-L4CW6LZQ.js';
35
35
  import './chunk-2K3TCQHW.js';
36
36
  import './chunk-JGD5TWQ2.js';
37
37
  import './chunk-Z5GEFMRW.js';
@@ -1,17 +1,17 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { RUNNER_PROTOCOL } from './chunk-TPKYTORP.js';
4
- import { resolveCredentials, WorkCommandError, parsePositiveInt, postJson, environmentFacts, findLiveItemForIssue } from './chunk-CQRIZNE6.js';
5
- export { WorkCommandError } from './chunk-CQRIZNE6.js';
6
- import './chunk-3WZ5ECSM.js';
7
- import './chunk-SNQR2EYI.js';
4
+ import { resolveCredentials, WorkCommandError, parsePositiveInt, postJson, environmentFacts, findLiveItemForIssue } from './chunk-DZUANBKP.js';
5
+ export { WorkCommandError } from './chunk-DZUANBKP.js';
6
+ import './chunk-FQCLEH34.js';
7
+ import './chunk-G2T4HCGT.js';
8
8
  import './chunk-BUP5N3X6.js';
9
9
  import './chunk-XSPA5ODY.js';
10
10
  import './chunk-GOSFARMS.js';
11
11
  import { defaultRunnerConfigPath } from './chunk-JWRX5ZTT.js';
12
12
  import './chunk-UXYLWVTQ.js';
13
13
  import './chunk-7RQ73DLO.js';
14
- import { defaultFetch } from './chunk-M4B6QKNZ.js';
14
+ import { defaultFetch } from './chunk-GJZEUQ6D.js';
15
15
  import './chunk-BJ3KTMDH.js';
16
16
  import './chunk-QE3UQAHK.js';
17
17
  import './chunk-ANPNT6PM.js';
@@ -24,8 +24,8 @@ import './chunk-RKOTJQVG.js';
24
24
  import './chunk-QZBXLLTV.js';
25
25
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
26
26
  import './chunk-RA3O54FC.js';
27
- import { ensureHostKey } from './chunk-ZODVSFI4.js';
28
- import './chunk-ZI2ZVWKT.js';
27
+ import { ensureHostKey } from './chunk-F6DIHHBS.js';
28
+ import './chunk-L4CW6LZQ.js';
29
29
  import './chunk-2K3TCQHW.js';
30
30
  import './chunk-JGD5TWQ2.js';
31
31
  import './chunk-Z5GEFMRW.js';
@@ -119,7 +119,7 @@ async function runWorkRelease(opts) {
119
119
  { sessionId, ended: true },
120
120
  fetchImpl
121
121
  );
122
- const { markWorkLeaseRenewed } = await import('./hook-fast-NEELST6G.js');
122
+ const { markWorkLeaseRenewed } = await import('./hook-fast-GD7F2EBL.js');
123
123
  markWorkLeaseRenewed(sessionId, opts.home ?? homeFromEnv(env));
124
124
  const output2 = opts.json ? JSON.stringify(data2) : `released session ${sessionId}'s lease on #${itemId}, if it held one`;
125
125
  if (!opts.quiet) process.stdout.write(output2 + "\n");
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { WorkCommandError, environmentFacts, findLiveItemForIssue, getJson, parsePositiveInt, patchJson, postJson, resolveCredentials, runWorkBuild, runWorkLinkSession, runWorkList, runWorkRemove, runWorkStatus } from './chunk-CQRIZNE6.js';
4
- import './chunk-3WZ5ECSM.js';
5
- import './chunk-SNQR2EYI.js';
3
+ export { WorkCommandError, environmentFacts, findLiveItemForIssue, getJson, parsePositiveInt, patchJson, postJson, resolveCredentials, runWorkBuild, runWorkLinkSession, runWorkList, runWorkRemove, runWorkStatus } from './chunk-DZUANBKP.js';
4
+ import './chunk-FQCLEH34.js';
5
+ import './chunk-G2T4HCGT.js';
6
6
  import './chunk-BUP5N3X6.js';
7
7
  import './chunk-XSPA5ODY.js';
8
8
  import './chunk-GOSFARMS.js';
9
- import './chunk-M4B6QKNZ.js';
9
+ import './chunk-GJZEUQ6D.js';
10
10
  import './chunk-BJ3KTMDH.js';
11
11
  import './chunk-QE3UQAHK.js';
12
12
  import './chunk-ANPNT6PM.js';
@@ -19,8 +19,8 @@ import './chunk-RKOTJQVG.js';
19
19
  import './chunk-QZBXLLTV.js';
20
20
  import './chunk-VNVZDWO3.js';
21
21
  import './chunk-RA3O54FC.js';
22
- import './chunk-ZODVSFI4.js';
23
- import './chunk-ZI2ZVWKT.js';
22
+ import './chunk-F6DIHHBS.js';
23
+ import './chunk-L4CW6LZQ.js';
24
24
  import './chunk-2K3TCQHW.js';
25
25
  import './chunk-JGD5TWQ2.js';
26
26
  import './chunk-Z5GEFMRW.js';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { resolveCredentials, postJson, getJson } from './chunk-CQRIZNE6.js';
4
- import { detectActiveSession } from './chunk-3WZ5ECSM.js';
5
- import './chunk-SNQR2EYI.js';
3
+ import { resolveCredentials, postJson, getJson } from './chunk-DZUANBKP.js';
4
+ import { detectActiveSession } from './chunk-FQCLEH34.js';
5
+ import './chunk-G2T4HCGT.js';
6
6
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
7
7
  import './chunk-XSPA5ODY.js';
8
8
  import './chunk-GOSFARMS.js';
9
- import { defaultFetch } from './chunk-M4B6QKNZ.js';
9
+ import { defaultFetch } from './chunk-GJZEUQ6D.js';
10
10
  import './chunk-BJ3KTMDH.js';
11
11
  import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
12
12
  import { C } from './chunk-ANPNT6PM.js';
@@ -19,8 +19,8 @@ import './chunk-RKOTJQVG.js';
19
19
  import './chunk-QZBXLLTV.js';
20
20
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
21
21
  import './chunk-RA3O54FC.js';
22
- import './chunk-ZODVSFI4.js';
23
- import './chunk-ZI2ZVWKT.js';
22
+ import './chunk-F6DIHHBS.js';
23
+ import './chunk-L4CW6LZQ.js';
24
24
  import './chunk-2K3TCQHW.js';
25
25
  import './chunk-JGD5TWQ2.js';
26
26
  import './chunk-Z5GEFMRW.js';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { resolveCredentials, getJson } from './chunk-CQRIZNE6.js';
4
- import './chunk-3WZ5ECSM.js';
5
- import './chunk-SNQR2EYI.js';
3
+ import { resolveCredentials, getJson } from './chunk-DZUANBKP.js';
4
+ import './chunk-FQCLEH34.js';
5
+ import './chunk-G2T4HCGT.js';
6
6
  import './chunk-BUP5N3X6.js';
7
7
  import './chunk-XSPA5ODY.js';
8
8
  import './chunk-GOSFARMS.js';
9
- import { defaultFetch } from './chunk-M4B6QKNZ.js';
9
+ import { defaultFetch } from './chunk-GJZEUQ6D.js';
10
10
  import './chunk-BJ3KTMDH.js';
11
11
  import './chunk-QE3UQAHK.js';
12
12
  import './chunk-ANPNT6PM.js';
@@ -19,8 +19,8 @@ import './chunk-RKOTJQVG.js';
19
19
  import './chunk-QZBXLLTV.js';
20
20
  import './chunk-VNVZDWO3.js';
21
21
  import './chunk-RA3O54FC.js';
22
- import './chunk-ZODVSFI4.js';
23
- import './chunk-ZI2ZVWKT.js';
22
+ import './chunk-F6DIHHBS.js';
23
+ import './chunk-L4CW6LZQ.js';
24
24
  import './chunk-2K3TCQHW.js';
25
25
  import './chunk-JGD5TWQ2.js';
26
26
  import './chunk-Z5GEFMRW.js';
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { itemLabel, runWorkPr, WorkPrCommandError } from './chunk-23SPSYXZ.js';
4
- import { resolveCredentials } from './chunk-CQRIZNE6.js';
5
- import './chunk-3WZ5ECSM.js';
6
- import './chunk-SNQR2EYI.js';
3
+ import { itemLabel, runWorkPr, WorkPrCommandError } from './chunk-CLUUAX6O.js';
4
+ import { resolveCredentials } from './chunk-DZUANBKP.js';
5
+ import './chunk-FQCLEH34.js';
6
+ import './chunk-G2T4HCGT.js';
7
7
  import './chunk-BUP5N3X6.js';
8
8
  import './chunk-XSPA5ODY.js';
9
9
  import './chunk-GOSFARMS.js';
10
- import { defaultFetch } from './chunk-M4B6QKNZ.js';
10
+ import { defaultFetch } from './chunk-GJZEUQ6D.js';
11
11
  import './chunk-BJ3KTMDH.js';
12
12
  import './chunk-QE3UQAHK.js';
13
13
  import { C } from './chunk-ANPNT6PM.js';
@@ -21,8 +21,8 @@ import './chunk-RKOTJQVG.js';
21
21
  import './chunk-QZBXLLTV.js';
22
22
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
23
23
  import './chunk-RA3O54FC.js';
24
- import './chunk-ZODVSFI4.js';
25
- import './chunk-ZI2ZVWKT.js';
24
+ import './chunk-F6DIHHBS.js';
25
+ import './chunk-L4CW6LZQ.js';
26
26
  import './chunk-2K3TCQHW.js';
27
27
  import './chunk-JGD5TWQ2.js';
28
28
  import './chunk-Z5GEFMRW.js';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { WorkPrCommandError, itemLabel, runWorkPr } from './chunk-23SPSYXZ.js';
4
- import './chunk-3WZ5ECSM.js';
5
- import './chunk-SNQR2EYI.js';
3
+ export { WorkPrCommandError, itemLabel, runWorkPr } from './chunk-CLUUAX6O.js';
4
+ import './chunk-FQCLEH34.js';
5
+ import './chunk-G2T4HCGT.js';
6
6
  import './chunk-BUP5N3X6.js';
7
7
  import './chunk-XSPA5ODY.js';
8
8
  import './chunk-GOSFARMS.js';
9
- import './chunk-M4B6QKNZ.js';
9
+ import './chunk-GJZEUQ6D.js';
10
10
  import './chunk-BJ3KTMDH.js';
11
11
  import './chunk-QE3UQAHK.js';
12
12
  import './chunk-ANPNT6PM.js';
@@ -20,8 +20,8 @@ import './chunk-RKOTJQVG.js';
20
20
  import './chunk-QZBXLLTV.js';
21
21
  import './chunk-VNVZDWO3.js';
22
22
  import './chunk-RA3O54FC.js';
23
- import './chunk-ZODVSFI4.js';
24
- import './chunk-ZI2ZVWKT.js';
23
+ import './chunk-F6DIHHBS.js';
24
+ import './chunk-L4CW6LZQ.js';
25
25
  import './chunk-2K3TCQHW.js';
26
26
  import './chunk-JGD5TWQ2.js';
27
27
  import './chunk-Z5GEFMRW.js';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { resolveCredentials, postJson, WorkCommandError } from './chunk-CQRIZNE6.js';
4
- import './chunk-3WZ5ECSM.js';
5
- import './chunk-SNQR2EYI.js';
3
+ import { resolveCredentials, postJson, WorkCommandError } from './chunk-DZUANBKP.js';
4
+ import './chunk-FQCLEH34.js';
5
+ import './chunk-G2T4HCGT.js';
6
6
  import './chunk-BUP5N3X6.js';
7
7
  import './chunk-XSPA5ODY.js';
8
8
  import './chunk-GOSFARMS.js';
9
- import { defaultFetch } from './chunk-M4B6QKNZ.js';
9
+ import { defaultFetch } from './chunk-GJZEUQ6D.js';
10
10
  import './chunk-BJ3KTMDH.js';
11
11
  import './chunk-QE3UQAHK.js';
12
12
  import './chunk-ANPNT6PM.js';
@@ -19,8 +19,8 @@ import './chunk-RKOTJQVG.js';
19
19
  import './chunk-QZBXLLTV.js';
20
20
  import './chunk-VNVZDWO3.js';
21
21
  import './chunk-RA3O54FC.js';
22
- import './chunk-ZODVSFI4.js';
23
- import './chunk-ZI2ZVWKT.js';
22
+ import './chunk-F6DIHHBS.js';
23
+ import './chunk-L4CW6LZQ.js';
24
24
  import './chunk-2K3TCQHW.js';
25
25
  import './chunk-JGD5TWQ2.js';
26
26
  import './chunk-Z5GEFMRW.js';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@outerlayer/cli",
3
- "version": "0.25.1",
4
- "description": "OuterLayer CLI — commands: init, claude, connect, doctor, login, logout, sync, daemon (alias: watch), emit, work, spec, runner, hooks, mcp, import, context. Capture and sync coding-agent sessions, and record proof of factory work.",
3
+ "version": "0.26.0",
4
+ "description": "OuterLayer CLI — commands: init, claude, connect, doctor, login, logout, sync, daemon (alias: watch), emit, work, spec, runner, hooks, mcp, context. Capture and sync coding-agent sessions, and record proof of factory work.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Magu Studios, Inc.",
7
7
  "repository": {
@@ -1,73 +0,0 @@
1
- #!/usr/bin/env node
2
- import { createRequire } from 'node:module';
3
- import { C } from './chunk-ANPNT6PM.js';
4
- import { skillsBaseFor, isAgentsMdLayout } from './chunk-JKNYTNYD.js';
5
- import { loadMaintainedFiles, writeMaintainedFiles } from './chunk-HBISTTG3.js';
6
- import { cliInvocation } from './chunk-CRB3POP4.js';
7
- import './chunk-RKOTJQVG.js';
8
- import './chunk-QZBXLLTV.js';
9
- import './chunk-VNVZDWO3.js';
10
- import './chunk-RA3O54FC.js';
11
- import './chunk-Z5GEFMRW.js';
12
- import { statSync, existsSync, readFileSync, writeFileSync } from 'fs';
13
- import { join } from 'path';
14
-
15
- createRequire(import.meta.url);
16
- var ImportCaptureError = class extends Error {
17
- };
18
- var SNIPPET_FILE = "outerlayer-evidence/references/agents-snippet.md";
19
- var AGENTS_MD_MARKER = "<!-- outerlayer:capture-pack -->";
20
- function runImportCapture(opts = {}) {
21
- const cwd = opts.cwd ?? process.cwd();
22
- let cwdStat;
23
- try {
24
- cwdStat = statSync(cwd);
25
- } catch {
26
- throw new ImportCaptureError(`no such directory: ${cwd}`);
27
- }
28
- if (!cwdStat.isDirectory()) throw new ImportCaptureError(`not a directory: ${cwd}`);
29
- const base = skillsBaseFor(cwd);
30
- const SNIPPET_PATH = `${base}/${SNIPPET_FILE}`;
31
- const AGENTS_MD_PATH = isAgentsMdLayout(cwd) ? "AGENTS.md" : ".outerlayer/AGENTS.md";
32
- const bundle = loadMaintainedFiles(void 0, void 0, base);
33
- const { created: files, rewritten } = writeMaintainedFiles(cwd, bundle);
34
- const snippet = bundle.find((f) => f.path === SNIPPET_PATH)?.content ?? "";
35
- let appendedAgentsMd = false;
36
- const agentsMdAbs = join(cwd, AGENTS_MD_PATH);
37
- if (existsSync(agentsMdAbs)) {
38
- const existing = readFileSync(agentsMdAbs, "utf8");
39
- if (!existing.includes(AGENTS_MD_MARKER)) {
40
- writeFileSync(agentsMdAbs, existing + "\n" + snippet);
41
- appendedAgentsMd = true;
42
- }
43
- }
44
- let output;
45
- if (opts.json) {
46
- output = JSON.stringify({ files, rewritten, appendedAgentsMd });
47
- } else {
48
- const lines = [
49
- ...files.map((f) => `${C.green}\u2713${C.reset} wrote ${f}`),
50
- ...rewritten.map((f) => `${C.yellow}!${C.reset} rewrote ${f} to match this CLI's bundle (local edits were overwritten)`)
51
- ];
52
- if (appendedAgentsMd) lines.push(`${C.green}\u2713${C.reset} appended the evidence snippet to ${AGENTS_MD_PATH}`);
53
- if (files.length === 0 && rewritten.length === 0 && !appendedAgentsMd) {
54
- lines.push(`${C.dim}capture pack already installed \u2014 nothing to write${C.reset}`);
55
- }
56
- if (!isAgentsMdLayout(cwd)) {
57
- lines.push(`Run ${C.yellow}\`${cliInvocation()} context emit\`${C.reset} to compile the pack into your agent's native files.`);
58
- }
59
- output = lines.join("\n");
60
- }
61
- if (!opts.quiet) {
62
- process.stdout.write(output + "\n");
63
- if (!opts.json && !appendedAgentsMd && !existsSync(agentsMdAbs)) {
64
- process.stdout.write(
65
- `${C.dim} no ${AGENTS_MD_PATH} to append to \u2014 paste ${SNIPPET_PATH} into your instructions file if your harness reads no skills${C.reset}
66
- `
67
- );
68
- }
69
- }
70
- return { files, rewritten, appendedAgentsMd, output };
71
- }
72
-
73
- export { ImportCaptureError, runImportCapture };
@@ -1,173 +0,0 @@
1
- #!/usr/bin/env node
2
- import { createRequire } from 'node:module';
3
- import { C } from './chunk-ANPNT6PM.js';
4
- import './chunk-CRB3POP4.js';
5
- import { normalizePath } from './chunk-RKOTJQVG.js';
6
- import './chunk-QZBXLLTV.js';
7
- import './chunk-VNVZDWO3.js';
8
- import './chunk-Z5GEFMRW.js';
9
- import { existsSync, readdirSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
10
- import { join, dirname } from 'path';
11
-
12
- createRequire(import.meta.url);
13
- var SKIP_DIRS = /* @__PURE__ */ new Set(["node_modules", ".git"]);
14
- var ImportRulerError = class extends Error {
15
- };
16
- function toRepoRelative(base, name) {
17
- return normalizePath(`${base}/${name}`);
18
- }
19
- function discoverRulerDirs(repoRoot) {
20
- const out = [];
21
- walk(repoRoot, repoRoot, "", out);
22
- return out.sort();
23
- }
24
- function walk(dirAbs, repoRoot, dirRel, out) {
25
- let entries;
26
- try {
27
- entries = readdirSync(dirAbs, { withFileTypes: true });
28
- } catch {
29
- return;
30
- }
31
- for (const entry of entries) {
32
- if (entry.isSymbolicLink() || !entry.isDirectory()) continue;
33
- if (SKIP_DIRS.has(entry.name)) continue;
34
- const childRel = dirRel === "" ? entry.name : toRepoRelative(dirRel, entry.name);
35
- if (entry.name === ".ruler") {
36
- out.push(childRel);
37
- continue;
38
- }
39
- walk(join(dirAbs, entry.name), repoRoot, childRel, out);
40
- }
41
- }
42
- function collectFilesRecursively(dirAbs, dirRel) {
43
- const out = [];
44
- let entries;
45
- try {
46
- entries = readdirSync(dirAbs, { withFileTypes: true });
47
- } catch {
48
- return out;
49
- }
50
- for (const entry of entries) {
51
- if (entry.isSymbolicLink()) continue;
52
- const childRel = toRepoRelative(dirRel, entry.name);
53
- const childAbs = join(dirAbs, entry.name);
54
- if (entry.isDirectory()) out.push(...collectFilesRecursively(childAbs, childRel));
55
- else if (entry.isFile()) out.push(childRel);
56
- }
57
- return out;
58
- }
59
- function catalogRulerDir(repoRoot, rulerDirRel) {
60
- const abs = join(repoRoot, rulerDirRel);
61
- const catalog = { otherMd: [], unmapped: [] };
62
- const mdFilenames = [];
63
- let entries;
64
- try {
65
- entries = readdirSync(abs, { withFileTypes: true });
66
- } catch {
67
- entries = [];
68
- }
69
- for (const entry of entries) {
70
- if (entry.isSymbolicLink()) continue;
71
- const childRel = toRepoRelative(rulerDirRel, entry.name);
72
- if (entry.isDirectory()) {
73
- catalog.unmapped.push(...collectFilesRecursively(join(abs, entry.name), childRel));
74
- continue;
75
- }
76
- if (!entry.isFile()) continue;
77
- if (entry.name === "AGENTS.md") catalog.agentsMd = readFileSync(join(abs, entry.name), "utf8");
78
- else if (entry.name === "mcp.json") catalog.mcpJson = readFileSync(join(abs, entry.name), "utf8");
79
- else if (entry.name === "ruler.toml") catalog.rulerTomlPath = childRel;
80
- else if (entry.name.endsWith(".md")) mdFilenames.push(entry.name);
81
- else catalog.unmapped.push(childRel);
82
- }
83
- catalog.otherMd = mdFilenames.sort((a, b) => a.localeCompare(b)).map((filename) => ({ filename, content: readFileSync(join(abs, filename), "utf8") }));
84
- return catalog;
85
- }
86
- function scopeOf(rulerDirRel) {
87
- if (rulerDirRel === ".ruler") return "";
88
- return rulerDirRel.slice(0, rulerDirRel.length - "/.ruler".length);
89
- }
90
- function outerlayerDirFor(scopePath) {
91
- return scopePath === "" ? ".outerlayer" : `${scopePath}/.outerlayer`;
92
- }
93
- function writeOutFile(repoRoot, relPath, content) {
94
- const abs = join(repoRoot, relPath);
95
- mkdirSync(dirname(abs), { recursive: true });
96
- writeFileSync(abs, content);
97
- }
98
- function renderSuccess(scopes, warnings) {
99
- const warningSuffix = warnings.length > 0 ? `, ${warnings.length} warning${warnings.length === 1 ? "" : "s"}` : "";
100
- const lines = [`${C.green}\u2713${C.reset} imported ${scopes.length} .ruler/ scope${scopes.length === 1 ? "" : "s"}${warningSuffix}`];
101
- for (const s of scopes) {
102
- const written = [s.agentsMdWritten, s.mcpWritten].filter((p) => p !== void 0);
103
- lines.push(` ${C.dim}${s.scopePath === "" ? "(root)" : s.scopePath}${C.reset} \u2192 ${written.join(", ") || "nothing to import"}`);
104
- }
105
- return lines.join("\n");
106
- }
107
- function runImportRuler(opts = {}) {
108
- const cwd = opts.cwd ?? process.cwd();
109
- if (!existsSync(cwd)) throw new ImportRulerError(`no such directory: ${cwd}`);
110
- const rulerDirs = discoverRulerDirs(cwd);
111
- if (rulerDirs.length === 0) {
112
- const output2 = opts.json ? JSON.stringify({ scopes: [], warnings: [] }) : `${C.dim}no .ruler/ directories found \u2014 nothing to import${C.reset}`;
113
- if (!opts.quiet) process.stdout.write(output2 + "\n");
114
- return { scopes: [], warnings: [], output: output2, exitCode: 0 };
115
- }
116
- const conflicts = rulerDirs.map((rel) => outerlayerDirFor(scopeOf(rel))).filter((outerlayerRel) => existsSync(join(cwd, outerlayerRel)));
117
- if (conflicts.length > 0) {
118
- throw new ImportRulerError(
119
- `refusing to import \u2014 .outerlayer/ already exists at: ${conflicts.join(", ")} (never overwritten; remove it first to replace it)`
120
- );
121
- }
122
- const scopes = [];
123
- const warnings = [];
124
- for (const rulerDirRel of rulerDirs) {
125
- const scopePath = scopeOf(rulerDirRel);
126
- const outerlayerRel = outerlayerDirFor(scopePath);
127
- const catalog = catalogRulerDir(cwd, rulerDirRel);
128
- const scope = { scopePath };
129
- if (catalog.agentsMd !== void 0 || catalog.otherMd.length > 0) {
130
- let content = catalog.agentsMd ?? "";
131
- for (const { filename, content: mdContent } of catalog.otherMd) {
132
- content += `
133
-
134
- <!-- imported from .ruler/${filename} -->
135
-
136
- ${mdContent}`;
137
- }
138
- const agentsPath = toRepoRelative(outerlayerRel, "AGENTS.md");
139
- writeOutFile(cwd, agentsPath, content);
140
- scope.agentsMdWritten = agentsPath;
141
- }
142
- if (catalog.mcpJson !== void 0) {
143
- const mcpPath = toRepoRelative(outerlayerRel, "mcp.json");
144
- writeOutFile(cwd, mcpPath, catalog.mcpJson);
145
- scope.mcpWritten = mcpPath;
146
- }
147
- if (catalog.rulerTomlPath !== void 0) {
148
- warnings.push({
149
- code: "ruler_toml_not_imported",
150
- path: catalog.rulerTomlPath,
151
- message: `${catalog.rulerTomlPath} was not imported \u2014 target selection now lives in .outerlayer/config.json; per-tool config is superseded`
152
- });
153
- }
154
- for (const path of catalog.unmapped) {
155
- warnings.push({ code: "unmapped_file", path, message: `${path} has no .outerlayer/ equivalent \u2014 not imported` });
156
- }
157
- scopes.push(scope);
158
- }
159
- warnings.sort((a, b) => a.path.localeCompare(b.path));
160
- const output = opts.json ? JSON.stringify({ scopes, warnings }) : renderSuccess(scopes, warnings);
161
- if (!opts.quiet) {
162
- if (opts.json) {
163
- process.stdout.write(output + "\n");
164
- } else {
165
- process.stdout.write(output + "\n");
166
- for (const w of warnings) process.stderr.write(` ${C.yellow}!${C.reset} ${w.path}: ${w.message}
167
- `);
168
- }
169
- }
170
- return { scopes, warnings, output, exitCode: 0 };
171
- }
172
-
173
- export { ImportRulerError, runImportRuler };
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env node
2
- import { createRequire } from 'node:module';
3
- export { RUNNER_DIR_MODE, RUNNER_FILE_MODE, SHIM_DIR, attemptStamp, buildDir, contextHomeDir, deliveryDir, diskTemplatesDir, ghConfigDir, hostKeyPath, imagesDir, jobDir, jobsDir, mirrorDir, pidFilePath, repoCacheDir, rootfsDir, rootfsPathFor, runnerDir, runnerDirOfBuild, spoolDir, stagedContextDir, vmAssetsDir, vsockPath } from './chunk-ZI2ZVWKT.js';
4
- import './chunk-2K3TCQHW.js';
5
- import './chunk-JGD5TWQ2.js';
6
- import './chunk-Z5GEFMRW.js';
7
-
8
- createRequire(import.meta.url);