looply-cli 0.5.3 → 0.5.5

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 (122) hide show
  1. package/dist/.src-hash +1 -1
  2. package/dist/agent-exec.d.ts +10 -5
  3. package/dist/agent-exec.d.ts.map +1 -1
  4. package/dist/agent-exec.js.map +1 -1
  5. package/dist/autonomy-controller.d.ts +14 -1
  6. package/dist/autonomy-controller.d.ts.map +1 -1
  7. package/dist/autonomy-controller.js +55 -2
  8. package/dist/autonomy-controller.js.map +1 -1
  9. package/dist/autonomy-store.d.ts +35 -2
  10. package/dist/autonomy-store.d.ts.map +1 -1
  11. package/dist/autonomy-store.js +27 -2
  12. package/dist/autonomy-store.js.map +1 -1
  13. package/dist/autonomy-tick.d.ts +25 -2
  14. package/dist/autonomy-tick.d.ts.map +1 -1
  15. package/dist/autonomy-tick.js +145 -4
  16. package/dist/autonomy-tick.js.map +1 -1
  17. package/dist/bin.d.ts.map +1 -1
  18. package/dist/bin.js +112 -82
  19. package/dist/bin.js.map +1 -1
  20. package/dist/checkout-carry.d.ts.map +1 -1
  21. package/dist/checkout-carry.js +12 -0
  22. package/dist/checkout-carry.js.map +1 -1
  23. package/dist/config.d.ts +41 -0
  24. package/dist/config.d.ts.map +1 -1
  25. package/dist/config.js +64 -8
  26. package/dist/config.js.map +1 -1
  27. package/dist/coordinator-state.d.ts +14 -0
  28. package/dist/coordinator-state.d.ts.map +1 -1
  29. package/dist/coordinator-state.js +29 -0
  30. package/dist/coordinator-state.js.map +1 -1
  31. package/dist/daemon-cmd.d.ts +1 -1
  32. package/dist/daemon-cmd.d.ts.map +1 -1
  33. package/dist/daemon-cmd.js +69 -33
  34. package/dist/daemon-cmd.js.map +1 -1
  35. package/dist/daemon.d.ts +15 -1
  36. package/dist/daemon.d.ts.map +1 -1
  37. package/dist/daemon.js +21 -3
  38. package/dist/daemon.js.map +1 -1
  39. package/dist/git-driver.d.ts +6 -0
  40. package/dist/git-driver.d.ts.map +1 -1
  41. package/dist/git-driver.js +12 -0
  42. package/dist/git-driver.js.map +1 -1
  43. package/dist/index-for-head.js +1 -1
  44. package/dist/index-for-head.js.map +1 -1
  45. package/dist/init-detect.d.ts.map +1 -1
  46. package/dist/init-detect.js +1 -1
  47. package/dist/init-detect.js.map +1 -1
  48. package/dist/machine-run-slots.d.ts +59 -0
  49. package/dist/machine-run-slots.d.ts.map +1 -0
  50. package/dist/machine-run-slots.js +140 -0
  51. package/dist/machine-run-slots.js.map +1 -0
  52. package/dist/model-routing.d.ts +52 -7
  53. package/dist/model-routing.d.ts.map +1 -1
  54. package/dist/model-routing.js +84 -14
  55. package/dist/model-routing.js.map +1 -1
  56. package/dist/model-settings.d.ts +67 -0
  57. package/dist/model-settings.d.ts.map +1 -0
  58. package/dist/model-settings.js +177 -0
  59. package/dist/model-settings.js.map +1 -0
  60. package/dist/model-transport.d.ts +8 -0
  61. package/dist/model-transport.d.ts.map +1 -1
  62. package/dist/model-transport.js +6 -3
  63. package/dist/model-transport.js.map +1 -1
  64. package/dist/programme-mode.d.ts +6 -0
  65. package/dist/programme-mode.d.ts.map +1 -1
  66. package/dist/programme-mode.js +23 -0
  67. package/dist/programme-mode.js.map +1 -1
  68. package/dist/project-index-store.d.ts +19 -1
  69. package/dist/project-index-store.d.ts.map +1 -1
  70. package/dist/project-index-store.js +40 -5
  71. package/dist/project-index-store.js.map +1 -1
  72. package/dist/project-terminal.d.ts +25 -0
  73. package/dist/project-terminal.d.ts.map +1 -0
  74. package/dist/project-terminal.js +46 -0
  75. package/dist/project-terminal.js.map +1 -0
  76. package/dist/provider-cmd.d.ts +13 -4
  77. package/dist/provider-cmd.d.ts.map +1 -1
  78. package/dist/provider-cmd.js +111 -11
  79. package/dist/provider-cmd.js.map +1 -1
  80. package/dist/provider-ready.d.ts +15 -2
  81. package/dist/provider-ready.d.ts.map +1 -1
  82. package/dist/provider-ready.js +46 -2
  83. package/dist/provider-ready.js.map +1 -1
  84. package/dist/providers.d.ts.map +1 -1
  85. package/dist/providers.js +4 -0
  86. package/dist/providers.js.map +1 -1
  87. package/dist/pursuit-ending.d.ts +57 -0
  88. package/dist/pursuit-ending.d.ts.map +1 -0
  89. package/dist/pursuit-ending.js +128 -0
  90. package/dist/pursuit-ending.js.map +1 -0
  91. package/dist/run-base.d.ts +84 -0
  92. package/dist/run-base.d.ts.map +1 -0
  93. package/dist/run-base.js +142 -0
  94. package/dist/run-base.js.map +1 -0
  95. package/dist/run-cmd.d.ts.map +1 -1
  96. package/dist/run-cmd.js +46 -5
  97. package/dist/run-cmd.js.map +1 -1
  98. package/dist/run-ended.d.ts +16 -0
  99. package/dist/run-ended.d.ts.map +1 -1
  100. package/dist/run-ended.js +30 -0
  101. package/dist/run-ended.js.map +1 -1
  102. package/dist/run-ending-locator.d.ts +10 -0
  103. package/dist/run-ending-locator.d.ts.map +1 -1
  104. package/dist/run-ending-locator.js +45 -0
  105. package/dist/run-ending-locator.js.map +1 -1
  106. package/dist/run-launcher.d.ts +30 -1
  107. package/dist/run-launcher.d.ts.map +1 -1
  108. package/dist/run-launcher.js +60 -2
  109. package/dist/run-launcher.js.map +1 -1
  110. package/dist/server-client.d.ts +16 -2
  111. package/dist/server-client.d.ts.map +1 -1
  112. package/dist/server-client.js +9 -0
  113. package/dist/server-client.js.map +1 -1
  114. package/dist/setup.d.ts.map +1 -1
  115. package/dist/setup.js +17 -0
  116. package/dist/setup.js.map +1 -1
  117. package/dist/workspace-provisioner.d.ts +2 -0
  118. package/dist/workspace-provisioner.d.ts.map +1 -1
  119. package/dist/workspace-provisioner.js +27 -1
  120. package/dist/workspace-provisioner.js.map +1 -1
  121. package/package.json +54 -54
  122. package/win/HandleProbe.cs +116 -116
@@ -3,6 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.decideAutonomyTick = exports.MAX_CONTROLLERS_PER_TICK = exports.WaitReasonLog = void 0;
4
4
  exports.providerHoldReason = providerHoldReason;
5
5
  exports.autonomyTick = autonomyTick;
6
+ exports.storedEnding = storedEnding;
7
+ const node_os_1 = require("node:os");
8
+ const pursuit_ending_1 = require("./pursuit-ending");
6
9
  const autonomy_controller_1 = require("./autonomy-controller");
7
10
  Object.defineProperty(exports, "decideAutonomyTick", { enumerable: true, get: function () { return autonomy_controller_1.decideAutonomyTick; } });
8
11
  const autonomy_store_1 = require("./autonomy-store");
@@ -226,8 +229,19 @@ async function autonomyTick(deps) {
226
229
  deferred ??= candidate;
227
230
  continue;
228
231
  }
232
+ /**
233
+ * A GOAL THAT WAITS ON ANOTHER GOAL IS NOT LAUNCHED, coordinator or not. Deferred like an
234
+ * unplaced goal — before any try is spent — and reported with the goals it waits for.
235
+ * Absent: nothing is gated here (the coordinator's own dependency rule still applies).
236
+ */
237
+ const waitsOn = action.kind === 'execute-attempt' ? deps.dependencyWait?.(candidate.goalId) ?? null : null;
238
+ if (waitsOn !== null) {
239
+ deps.onWaitReason?.(candidate.goalId, waitsOn);
240
+ deferred ??= candidate;
241
+ continue;
242
+ }
229
243
  deps.onWaitReason?.(candidate.goalId, null);
230
- const outcome = { controllerId: candidate.controllerId, ...(await perform(deps, candidate, action)) };
244
+ const outcome = { controllerId: candidate.controllerId, ...(await perform(deps, candidate, action, facts)) };
231
245
  // Anything that is not a launch is the tick's one transition, as before.
232
246
  if (action.kind !== 'execute-attempt')
233
247
  return outcome;
@@ -431,7 +445,9 @@ async function loadFacts(deps, grant) {
431
445
  };
432
446
  }
433
447
  /** Carry out the one action, and nothing beyond it. */
434
- async function perform(deps, grant, action) {
448
+ async function perform(deps, grant, action,
449
+ /** What the decision was made from. Read only to explain an ending to a person. */
450
+ facts) {
435
451
  switch (action.kind) {
436
452
  case 'reserve-ordinal': {
437
453
  // Racing daemons converge here through the exclusive receipt: one wins the
@@ -509,6 +525,29 @@ async function perform(deps, grant, action) {
509
525
  return { action, started: { kind: 'blocked', reason: peek.because } };
510
526
  }
511
527
  }
528
+ /**
529
+ * ⚠️ A BUSY CHECKOUT IS A QUEUE, NOT A FAILED TRY. Asked before
530
+ * `reserveLaunch` for the same reason the envelope is: the launcher's
531
+ * clash answers are pre-spawn, so asking after the reservation spent one
532
+ * of three tries per cadence while another goal's run held the tree —
533
+ * and seven goals assigned together all ended "attempted 3 times and
534
+ * never began" before the first had finished. Nothing is spent here;
535
+ * the next cadence asks again.
536
+ */
537
+ if (deps.starter.busyFor !== undefined) {
538
+ const workspace = deps.workspaceFor?.(grant.goalId);
539
+ const busy = await deps.starter.busyFor({
540
+ requestId: action.requestId,
541
+ origin: { kind: 'autonomy', controllerId: grant.controllerId, ordinal: action.ordinal, attempt: action.attempt },
542
+ goalId: grant.goalId,
543
+ goalVersion: grant.goalVersion,
544
+ ...(workspace === undefined ? {} : { workspace }),
545
+ });
546
+ if (busy !== null) {
547
+ deps.log(`autonomy: Start ${action.ordinal} waits its turn — ${busy}; no try spent.`);
548
+ return { action: { kind: 'hold', because: busy } };
549
+ }
550
+ }
512
551
  const reserved = await deps.attempts.reserveLaunch(action.requestId, action.attempt);
513
552
  if (!reserved.ok) {
514
553
  deps.log(`autonomy: Start ${action.ordinal} attempt ${action.attempt} — ${reserved.because}.`);
@@ -572,6 +611,7 @@ async function perform(deps, grant, action) {
572
611
  }
573
612
  catch (e) {
574
613
  await deps.attempts.noteSpawn(action.requestId, action.attempt, { spawned: false });
614
+ await noteQuietly(deps, grant, { lastLaunchNote: `the run could not be launched (${e.message})` });
575
615
  deps.log(`autonomy: Start ${action.ordinal} attempt ${action.attempt} — could not be asked for (${e.message}).`);
576
616
  return { action, started: { kind: 'failed', reason: e.message } };
577
617
  }
@@ -609,11 +649,33 @@ async function perform(deps, grant, action) {
609
649
  if (result.kind === 'run-started') {
610
650
  await deps.autonomy.noteRun(grant.controllerId, action.ordinal, result.runId);
611
651
  }
652
+ // What the launcher said when it did not start anything — the words a
653
+ // person needs if every try ends this way ("tried 3 times and it never
654
+ // began: …"). A pending child has said nothing yet, so nothing is noted.
655
+ if (result.kind === 'blocked' || result.kind === 'failed') {
656
+ await noteQuietly(deps, grant, { lastLaunchNote: result.reason });
657
+ }
612
658
  deps.log(`autonomy: Start ${action.ordinal} attempt ${action.attempt} — ${result.kind}.`);
613
659
  return { action, started: result };
614
660
  }
615
661
  case 'finish-ordinal': {
616
662
  await deps.autonomy.finishStart(grant.controllerId, action.ordinal);
663
+ // What this Start said on its way out — or that it said nothing, so an
664
+ // older Start's words are not later quoted as the latest. Explanation only.
665
+ const attempt = facts?.attempt;
666
+ let said;
667
+ if (attempt?.kind === 'refused')
668
+ said = attempt.reason;
669
+ else if (action.runId !== '' && deps.runHaltedNote !== undefined) {
670
+ try {
671
+ said = (await deps.runHaltedNote(action.runId)) ?? '';
672
+ }
673
+ catch {
674
+ said = undefined;
675
+ }
676
+ }
677
+ if (said !== undefined)
678
+ await noteQuietly(deps, grant, { lastRunNote: said });
617
679
  deps.log(`autonomy: Start ${action.ordinal} is over.`);
618
680
  return { action };
619
681
  }
@@ -621,8 +683,14 @@ async function perform(deps, grant, action) {
621
683
  // Local terminal truth, written durably, so a restarted daemon stops
622
684
  // without needing the server to tell it again. Projecting it onward is
623
685
  // 6D2F's job; stopping is this slice's.
624
- await deps.autonomy.settle(grant.controllerId, action.state);
686
+ //
687
+ // WITH ITS REASON. The state alone reached the ticket as "this pursuit
688
+ // ended as human_required"; the sentence written here is what the report
689
+ // carries instead — what happened, on which machine, and what was tried.
690
+ const ending = (0, pursuit_ending_1.describePursuitEnding)(endingContext(deps, grant, action, facts));
691
+ await deps.autonomy.settle(grant.controllerId, action.state, ending);
625
692
  deps.log(`autonomy: ${grant.goalId} — ${action.state}: ${action.because}`);
693
+ deps.log(`autonomy: ${grant.goalId} — what a person is told (${ending.code}): ${ending.because}`);
626
694
  return { action };
627
695
  }
628
696
  case 'accept-server-ending': {
@@ -634,7 +702,10 @@ async function perform(deps, grant, action) {
634
702
  return { action };
635
703
  }
636
704
  case 'project-terminal': {
637
- const out = await deps.projectTerminal(grant, action.state, action.because);
705
+ // The reason written when it ended, not the controller's restatement of
706
+ // the state. An ending written before reasons were kept says what it can.
707
+ const told = storedEnding(grant, action.state);
708
+ const out = await deps.projectTerminal(grant, action.state, told.because, told.code);
638
709
  if (out.ok) {
639
710
  // Only after it got through. A crash between the report and this mark
640
711
  // costs one repeated report, which the server answers idempotently;
@@ -655,4 +726,74 @@ async function perform(deps, grant, action) {
655
726
  }
656
727
  }
657
728
  }
729
+ /**
730
+ * Remember what a Start or a launcher said, for the sentence an ending may need.
731
+ *
732
+ * NEVER FATAL. These notes explain; they decide nothing, and a tick that failed
733
+ * because a note could not be written would be the explanation costing the work.
734
+ */
735
+ async function noteQuietly(deps, grant, notes) {
736
+ try {
737
+ await deps.autonomy.note?.(grant.controllerId, notes);
738
+ }
739
+ catch (e) {
740
+ deps.log(`autonomy: could not note what ${grant.goalId}'s last try said (${e.message}).`);
741
+ }
742
+ }
743
+ /** Everything this machine knows about an ending, gathered for `describePursuitEnding`. */
744
+ function endingContext(deps, grant, action, facts) {
745
+ const attempt = facts?.attempt;
746
+ // Asked only for an ending that ran out: then "the AI tool was never ready"
747
+ // is the real reason nothing got done, and nowhere else is it.
748
+ const ranOut = action.end === 'out_of_time' || action.end === 'budget_exhausted';
749
+ const provider = ranOut ? deps.providerReady?.() : undefined;
750
+ let machine;
751
+ try {
752
+ machine = deps.machineName?.() ?? (0, node_os_1.hostname)();
753
+ }
754
+ catch {
755
+ machine = 'this machine';
756
+ }
757
+ return {
758
+ state: action.state,
759
+ end: action.end,
760
+ because: action.because,
761
+ machine: machine === '' ? 'this machine' : machine,
762
+ maxStarts: grant.maxStarts,
763
+ ...(attempt?.kind === 'exhausted' ? { attempts: attempt.attempts } : {}),
764
+ ...(attempt?.kind === 'refused' ? { refusal: attempt.reason } : {}),
765
+ ...(grant.lastRunNote === undefined ? {} : { lastRunNote: grant.lastRunNote }),
766
+ ...(grant.lastLaunchNote === undefined ? {} : { lastLaunchNote: grant.lastLaunchNote }),
767
+ ...(ranOut && facts?.loopSafety?.held === true ? { safetyBrake: facts.loopSafety.because } : {}),
768
+ ...(provider !== undefined && !provider.ready ? { providerNotReady: provider.because } : {}),
769
+ };
770
+ }
771
+ /**
772
+ * The ending a report carries: the one written when the pursuit ended, or —
773
+ * for an ending written before reasons were kept — a plain sentence that at
774
+ * least does not restate the state word.
775
+ */
776
+ function storedEnding(grant, state) {
777
+ if (grant.endReason !== undefined && grant.endReason !== '' && grant.endCode !== undefined) {
778
+ return { code: grant.endCode, because: grant.endReason };
779
+ }
780
+ switch (state) {
781
+ case 'satisfied':
782
+ return { code: 'goal_met', because: 'The goal was met.' };
783
+ case 'budget_exhausted':
784
+ return {
785
+ code: 'budget_exhausted',
786
+ because: 'Looply used the tries or the time it was given on this goal and it is still not done. Someone needs to look at what was done and decide whether to start it again.',
787
+ };
788
+ case 'superseded':
789
+ return { code: 'superseded', because: 'The goal was changed, so this pursuit of the earlier wording stopped.' };
790
+ case 'abandoned':
791
+ return { code: 'abandoned', because: 'The goal was given up.' };
792
+ default:
793
+ return {
794
+ code: 'other',
795
+ because: 'Looply stopped and needs a person to look at this goal; this machine did not record why. Its daemon log says more.',
796
+ };
797
+ }
798
+ }
658
799
  //# sourceMappingURL=autonomy-tick.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"autonomy-tick.js","sourceRoot":"","sources":["../src/autonomy-tick.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autonomy-tick.js","sourceRoot":"","sources":["../src/autonomy-tick.ts"],"names":[],"mappings":"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"}
package/dist/bin.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AAkzFA,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAuE1D"}
1
+ {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AA80FA,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAuE1D"}
package/dist/bin.js CHANGED
@@ -24,6 +24,7 @@ const provider_discovery_1 = require("./provider-discovery");
24
24
  const provider_cmd_1 = require("./provider-cmd");
25
25
  const exec_domains_1 = require("./exec-domains");
26
26
  const model_transport_1 = require("./model-transport");
27
+ const model_settings_1 = require("./model-settings");
27
28
  const provider_state_1 = require("./provider-state");
28
29
  const providers_1 = require("./providers");
29
30
  const provider_preflight_1 = require("./provider-preflight");
@@ -80,72 +81,73 @@ const integration_1 = require("./integration");
80
81
  * "not implemented yet" is worse than one that does not exist, because it looks
81
82
  * like a broken feature rather than an unbuilt one.
82
83
  */
83
- const USAGE = `looply — an autonomous build loop you drive from your phone
84
-
85
- usage:
86
- looply connect [--root <dir>]... [--yes] [--no-start]
87
- once per machine: pair it (if needed), then set up and serve every git
88
- repository under each root; new ones there, and clones you ask for, follow
89
- looply pair [--server <url>] pair this machine with your phone
90
- looply daemon [--once] [--yes] stay connected: presence, and ship the ledger
91
- looply serve add [path] serve this repository (or <path>) from one machine-wide supervisor
92
- looply serve remove <path> stop serving a repository
93
- looply serve list the served repositories, and whether each still has .looply/config.yaml
94
- looply serve run the supervisor: one daemon per served repository, restarted if it stops
95
- looply serve install | uninstall start the supervisor at login (Windows); prints a service template elsewhere
96
- looply provider [status] is Claude Code installed, and is Looply signed in to it? (where it was found)
97
- looply provider install [--yes] install Claude Code globally with npm
98
- looply provider login sign Looply's own Claude Code profile in
99
- looply init profile the repo and draft .looply/config.yaml
100
- looply init --refresh-gates [--yes] re-draft only the gates of an existing config: shows the diff,
101
- writes on y (or --yes); every other section is kept
102
- looply doctor [--config <path>] [--provider]
103
- validate the config and run one full gate pass; --provider also asks the model to answer once
104
- looply scan [--lens a,b] [--dry-run] read the code through several lenses and fill the queue
105
- looply verify [--max N] check unverified items against the code, so a run can pick them
106
- looply queue [--all] everything waiting, and why
107
- looply integrate --init <ref> create looply/integration from a base you name
108
- looply integrate --branch <name> [--goal <id>]
109
- offer one finished branch to the integration queue:
110
- fast-forward or nothing, checked at the commit that
111
- would actually be published (needs run.integration)
112
- looply runs [--reap] what this project is running; --reap retires proven-dead leftovers
113
- looply runs --release <runId|slot-N|claim-lock>
114
- clear a leftover a recycled pid makes look alive
115
- looply source add <file> [--name <n>]
116
- hand a Markdown (.md) or plain-text (.txt) document to
117
- this project, verbatim, from the machine that holds it
118
- looply source list what this project has been given
119
- looply source show <id> one source: its statements, what each IS, where each came from,
120
- and where each requirement stands against this repository
121
- looply source reconcile <id> measure where each requirement stands against this repository
122
- (HEAD's tree, by name — a place to look, never "implemented"), and record it
123
- looply source coverage <id> which requirements no goal serves, which are served, and which a person
124
- evidenced — a finished queue is not coverage
125
- looply stop finish the round in flight, then stop
126
- looply pause | looply resume hold between rounds, and let it go again
127
- looply run [--hours N] [--dry-run] [--in <workspace> | --new-workspace]
128
- start a run: pick, implement, gate, prove, keep or discard
129
- --in runs it in another checkout of this repository, so two
130
- runs can work at once without sharing a tree
131
- --try-once-more spends a stopped goal's ONE retry (never
132
- turns the brake off; the next failure stops it again)
133
- looply status one-screen snapshot from .looply/state/status.json
134
- looply report run report from the local ledger, alerts first
135
- looply goal <id> one goal from this machine's records: the grant and the lane's answer,
136
- compiles, proposals, the lane's attempts, each run's rounds — read-only
137
- looply goals every mirrored goal, one line each, with its grant's standing
138
- looply repos [--accept] [--published <repo>]
139
- the other repositories this programme spans: where each one is,
140
- and whether the revisions somebody accepted together still hold
141
- looply evidence what this project has accumulated, and what the retention
142
- policy would do with it. It deletes nothing.
143
- looply sessions [--offer <file>] [--ack <id>]
144
- sessions this machine did not start, asking to be managed;
145
- observe-only — authorizing control is the server's to give
146
- looply version
147
-
148
- not built yet: item
84
+ const USAGE = `looply — an autonomous build loop you drive from your phone
85
+
86
+ usage:
87
+ looply connect [--root <dir>]... [--yes] [--no-start]
88
+ once per machine: pair it (if needed), then set up and serve every git
89
+ repository under each root; new ones there, and clones you ask for, follow
90
+ looply pair [--server <url>] pair this machine with your phone
91
+ looply daemon [--once] [--yes] stay connected: presence, and ship the ledger
92
+ looply serve add [path] serve this repository (or <path>) from one machine-wide supervisor
93
+ looply serve remove <path> stop serving a repository
94
+ looply serve list the served repositories, and whether each still has .looply/config.yaml
95
+ looply serve run the supervisor: one daemon per served repository, restarted if it stops
96
+ looply serve install | uninstall start the supervisor at login (Windows); prints a service template elsewhere
97
+ looply provider [status] is Claude Code installed, and is Looply signed in to it? (where it was found)
98
+ looply provider install [--yes] install Claude Code globally with npm
99
+ looply provider update [--yes] update Claude Code with npm (an old one cannot use the configured models)
100
+ looply provider login sign Looply's own Claude Code profile in
101
+ looply init profile the repo and draft .looply/config.yaml
102
+ looply init --refresh-gates [--yes] re-draft only the gates of an existing config: shows the diff,
103
+ writes on y (or --yes); every other section is kept
104
+ looply doctor [--config <path>] [--provider]
105
+ validate the config and run one full gate pass; --provider also asks the model to answer once
106
+ looply scan [--lens a,b] [--dry-run] read the code through several lenses and fill the queue
107
+ looply verify [--max N] check unverified items against the code, so a run can pick them
108
+ looply queue [--all] everything waiting, and why
109
+ looply integrate --init <ref> create looply/integration from a base you name
110
+ looply integrate --branch <name> [--goal <id>]
111
+ offer one finished branch to the integration queue:
112
+ fast-forward or nothing, checked at the commit that
113
+ would actually be published (needs run.integration)
114
+ looply runs [--reap] what this project is running; --reap retires proven-dead leftovers
115
+ looply runs --release <runId|slot-N|claim-lock>
116
+ clear a leftover a recycled pid makes look alive
117
+ looply source add <file> [--name <n>]
118
+ hand a Markdown (.md) or plain-text (.txt) document to
119
+ this project, verbatim, from the machine that holds it
120
+ looply source list what this project has been given
121
+ looply source show <id> one source: its statements, what each IS, where each came from,
122
+ and where each requirement stands against this repository
123
+ looply source reconcile <id> measure where each requirement stands against this repository
124
+ (HEAD's tree, by name — a place to look, never "implemented"), and record it
125
+ looply source coverage <id> which requirements no goal serves, which are served, and which a person
126
+ evidenced — a finished queue is not coverage
127
+ looply stop finish the round in flight, then stop
128
+ looply pause | looply resume hold between rounds, and let it go again
129
+ looply run [--hours N] [--dry-run] [--in <workspace> | --new-workspace]
130
+ start a run: pick, implement, gate, prove, keep or discard
131
+ --in runs it in another checkout of this repository, so two
132
+ runs can work at once without sharing a tree
133
+ --try-once-more spends a stopped goal's ONE retry (never
134
+ turns the brake off; the next failure stops it again)
135
+ looply status one-screen snapshot from .looply/state/status.json
136
+ looply report run report from the local ledger, alerts first
137
+ looply goal <id> one goal from this machine's records: the grant and the lane's answer,
138
+ compiles, proposals, the lane's attempts, each run's rounds — read-only
139
+ looply goals every mirrored goal, one line each, with its grant's standing
140
+ looply repos [--accept] [--published <repo>]
141
+ the other repositories this programme spans: where each one is,
142
+ and whether the revisions somebody accepted together still hold
143
+ looply evidence what this project has accumulated, and what the retention
144
+ policy would do with it. It deletes nothing.
145
+ looply sessions [--offer <file>] [--ack <id>]
146
+ sessions this machine did not start, asking to be managed;
147
+ observe-only — authorizing control is the server's to give
148
+ looply version
149
+
150
+ not built yet: item
149
151
  `;
150
152
  function loadConfig(path) {
151
153
  const full = (0, path_1.resolve)(path);
@@ -158,6 +160,20 @@ function loadConfig(path) {
158
160
  }
159
161
  return (0, config_1.parseConfig)(text);
160
162
  }
163
+ /**
164
+ * Per role: the model, the effort, and where each came from (config.yaml,
165
+ * the project's remote settings as the daemon last cached them, or the
166
+ * built-in default). The logic lives in `model-settings.ts`.
167
+ */
168
+ /* istanbul ignore next — real fs; the logic lives in model-settings.ts */
169
+ function modelRoutingLines(cfg) {
170
+ const resolved = (0, providers_1.resolveProvider)({
171
+ ...(cfg.provider === undefined ? {} : { provider: cfg.provider }),
172
+ spec: cfg.agent,
173
+ });
174
+ const spec = 'spec' in resolved ? resolved.spec : cfg.agent;
175
+ return (0, model_settings_1.describeModelRouting)(spec, (0, model_transport_1.isBuiltInProvider)(spec), (0, model_settings_1.remoteAgentSettingsFor)(process.cwd()));
176
+ }
161
177
  /* istanbul ignore next — real fs and env; the logic lives in doctor.ts */
162
178
  function nodeDoctorDeps() {
163
179
  // Lifted to integration-deps.ts (M5-1) so doctor, the integrate command and the daemon ask the same questions.
@@ -270,6 +286,9 @@ async function doctor(argv) {
270
286
  }
271
287
  process.stdout.write(`rails : ${cfg.rails.forbiddenPaths.join(', ') || '(none)'}\n`);
272
288
  process.stdout.write(`mode : ${(0, programme_mode_1.describeProgramme)(cfg)}\n`);
289
+ process.stdout.write(`${(0, programme_mode_1.describeParallel)(cfg)}\n`);
290
+ for (const line of modelRoutingLines(cfg))
291
+ process.stdout.write(line + String.fromCharCode(10));
273
292
  /**
274
293
  * WHAT THE LAST WINDOW COST IN TOKENS, WHICH NOTHING HAS EVER SHOWN.
275
294
  *
@@ -426,6 +445,17 @@ function status() {
426
445
  }
427
446
  const { out, code } = (0, status_cmd_1.renderStatus)(text, Date.now());
428
447
  (code === 0 ? process.stdout : process.stderr).write(out);
448
+ // Which model each role would run here. Best-effort: status answers without
449
+ // a readable config, and then simply says nothing about models.
450
+ try {
451
+ const cfg = loadConfig('.looply/config.yaml');
452
+ process.stdout.write((0, programme_mode_1.describeParallel)(cfg) + String.fromCharCode(10));
453
+ for (const line of modelRoutingLines(cfg))
454
+ process.stdout.write(line + String.fromCharCode(10));
455
+ }
456
+ catch {
457
+ /* no readable config — nothing to say about models */
458
+ }
429
459
  return code;
430
460
  }
431
461
  /* istanbul ignore next — real fs; the logic lives in report-cmd.ts */
@@ -1541,7 +1571,7 @@ async function runs(argv) {
1541
1571
  'claim lock',
1542
1572
  `held by ${who} ${(0, ui_1.dim)(lock.liveness === 'dead' ? 'the next start will break it' : '`looply runs --release claim-lock` clears it')}`,
1543
1573
  ],
1544
- ]), { title: 'starting' })}
1574
+ ]), { title: 'starting' })}
1545
1575
  `);
1546
1576
  }
1547
1577
  if (slots.length > 0) {
@@ -1601,9 +1631,9 @@ async function runs(argv) {
1601
1631
  ];
1602
1632
  }),
1603
1633
  ];
1604
- process.stdout.write(`${(0, ui_1.box)((0, ui_1.fields)(rows), { title: 'workspaces' })}
1634
+ process.stdout.write(`${(0, ui_1.box)((0, ui_1.fields)(rows), { title: 'workspaces' })}
1605
1635
  `);
1606
- process.stdout.write(` ${(0, ui_1.dim)(`… = ${wsRootShown}`)}
1636
+ process.stdout.write(` ${(0, ui_1.dim)(`… = ${wsRootShown}`)}
1607
1637
  `);
1608
1638
  }
1609
1639
  /**
@@ -1645,16 +1675,16 @@ async function runs(argv) {
1645
1675
  if (lock !== null && lock.liveness !== 'dead') {
1646
1676
  const how = lock.liveness === 'alive' ? 'answers' : 'cannot be judged';
1647
1677
  process.stdout.write(` ${(0, ui_1.warn)('note')} — pid ${lock.pid ?? '?'} ${how}. If that is a start still deciding, ` +
1648
- `clearing this lets another one decide alongside it.
1678
+ `clearing this lets another one decide alongside it.
1649
1679
  `);
1650
1680
  }
1651
1681
  const cleared = registry.forgetClaimLock();
1652
1682
  process.stdout.write(cleared
1653
- ? ` claim-lock: cleared — the next start decides for itself
1654
-
1683
+ ? ` claim-lock: cleared — the next start decides for itself
1684
+
1655
1685
  `
1656
- : ` claim-lock: nothing to clear
1657
-
1686
+ : ` claim-lock: nothing to clear
1687
+
1658
1688
  `);
1659
1689
  return cleared ? 0 : 2;
1660
1690
  }
@@ -1672,7 +1702,7 @@ async function runs(argv) {
1672
1702
  const holder = slots.find((sl) => sl.slot === n)?.record ?? null;
1673
1703
  if (holder !== null && (0, workspace_1.nodeProbe)(holder.pid) !== 'dead') {
1674
1704
  process.stdout.write(` ${(0, ui_1.warn)('note')} — slot-${n} names ${holder.runId}, pid ${holder.pid}, which answers. ` +
1675
- `Clearing it lets another execution start alongside it.
1705
+ `Clearing it lets another execution start alongside it.
1676
1706
  `);
1677
1707
  }
1678
1708
  const cleared = registry.forgetSlot(n);
@@ -1810,7 +1840,7 @@ async function runs(argv) {
1810
1840
  : ` ${(0, ui_1.dim)(`${orphans.length} orphaned, none in a checkout looply made — looply runs --release <runId>`)}\n`);
1811
1841
  }
1812
1842
  if (abandoned.length > 0) {
1813
- process.stdout.write(` ${(0, ui_1.dim)(`${abandoned.length} checkout(s) nothing accounts for — \`looply runs --reap\` retires those it can`)}
1843
+ process.stdout.write(` ${(0, ui_1.dim)(`${abandoned.length} checkout(s) nothing accounts for — \`looply runs --reap\` retires those it can`)}
1814
1844
  `);
1815
1845
  }
1816
1846
  /**
@@ -1847,9 +1877,9 @@ async function runs(argv) {
1847
1877
  for (const w of abandoned) {
1848
1878
  const out = await (0, workspace_1.reapAbandoned)(git, process.cwd(), w, undefined, undefined, undefined, carried);
1849
1879
  process.stdout.write(out.reaped
1850
- ? ` ${(0, path_1.basename)(w)}: retired — no execution accounted for it
1880
+ ? ` ${(0, path_1.basename)(w)}: retired — no execution accounted for it
1851
1881
  `
1852
- : ` ${(0, path_1.basename)(w)}: ${(0, ui_1.warn)('kept')} — ${out.because ?? 'unknown'}
1882
+ : ` ${(0, path_1.basename)(w)}: ${(0, ui_1.warn)('kept')} — ${out.because ?? 'unknown'}
1853
1883
  `);
1854
1884
  }
1855
1885
  for (const e of entries) {
@@ -1987,12 +2017,12 @@ async function stop(argv, kind = 'stop') {
1987
2017
  * the one place a person looks to check the brake reached everything.
1988
2018
  */
1989
2019
  const told = kind === 'resume' ? 'were told to carry on' : `were told to ${kind}`;
1990
- process.stdout.write(`
1991
- ${(0, ui_1.dim)(`${addressed.length} of ${running.length} running executions ${told}.`)}
2020
+ process.stdout.write(`
2021
+ ${(0, ui_1.dim)(`${addressed.length} of ${running.length} running executions ${told}.`)}
1992
2022
  `);
1993
2023
  }
1994
2024
  if (unreachable.length > 0) {
1995
- process.stdout.write(` ${(0, ui_1.warn)('could not reach')} ${unreachable.join(', ')} — their state directories could not be written
2025
+ process.stdout.write(` ${(0, ui_1.warn)('could not reach')} ${unreachable.join(', ')} — their state directories could not be written
1996
2026
  `);
1997
2027
  }
1998
2028
  process.stdout.write('\n ' + (0, queue_view_1.stopMessage)(live, kind) + '\n');
@@ -2519,7 +2549,7 @@ async function run(argv) {
2519
2549
  // the daemon that spawned this cannot, because it spawns with
2520
2550
  // `stdio: 'ignore'` on a detached child, so the words go nowhere. Both are
2521
2551
  // told, by the channel each can actually hear.
2522
- process.stderr.write(`${e.message}
2552
+ process.stderr.write(`${e.message}
2523
2553
  `);
2524
2554
  // Only when something asked. A hand-typed `looply run` has no request to
2525
2555
  // answer, and writing a mark nobody will ever look up would make this file