@bradygaster/squad-cli 0.9.2-insider.6 → 0.9.4-insider.1

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 (141) hide show
  1. package/README.md +33 -0
  2. package/dist/cli/commands/doctor.d.ts +2 -0
  3. package/dist/cli/commands/doctor.d.ts.map +1 -1
  4. package/dist/cli/commands/doctor.js +27 -5
  5. package/dist/cli/commands/doctor.js.map +1 -1
  6. package/dist/cli/commands/externalize.d.ts +27 -0
  7. package/dist/cli/commands/externalize.d.ts.map +1 -0
  8. package/dist/cli/commands/externalize.js +207 -0
  9. package/dist/cli/commands/externalize.js.map +1 -0
  10. package/dist/cli/commands/loop.d.ts +56 -0
  11. package/dist/cli/commands/loop.d.ts.map +1 -0
  12. package/dist/cli/commands/loop.js +352 -0
  13. package/dist/cli/commands/loop.js.map +1 -0
  14. package/dist/cli/commands/migrate.js +2 -2
  15. package/dist/cli/commands/migrate.js.map +1 -1
  16. package/dist/cli/commands/rc.js +2 -2
  17. package/dist/cli/commands/rc.js.map +1 -1
  18. package/dist/cli/commands/watch/capabilities/cleanup.d.ts +18 -0
  19. package/dist/cli/commands/watch/capabilities/cleanup.d.ts.map +1 -0
  20. package/dist/cli/commands/watch/capabilities/cleanup.js +135 -0
  21. package/dist/cli/commands/watch/capabilities/cleanup.js.map +1 -0
  22. package/dist/cli/commands/watch/capabilities/execute.d.ts +15 -3
  23. package/dist/cli/commands/watch/capabilities/execute.d.ts.map +1 -1
  24. package/dist/cli/commands/watch/capabilities/execute.js +106 -86
  25. package/dist/cli/commands/watch/capabilities/execute.js.map +1 -1
  26. package/dist/cli/commands/watch/capabilities/fleet-dispatch.d.ts +20 -0
  27. package/dist/cli/commands/watch/capabilities/fleet-dispatch.d.ts.map +1 -0
  28. package/dist/cli/commands/watch/capabilities/fleet-dispatch.js +144 -0
  29. package/dist/cli/commands/watch/capabilities/fleet-dispatch.js.map +1 -0
  30. package/dist/cli/commands/watch/capabilities/index.d.ts +0 -2
  31. package/dist/cli/commands/watch/capabilities/index.d.ts.map +1 -1
  32. package/dist/cli/commands/watch/capabilities/index.js +4 -12
  33. package/dist/cli/commands/watch/capabilities/index.js.map +1 -1
  34. package/dist/cli/commands/watch/capabilities/self-pull.d.ts +4 -1
  35. package/dist/cli/commands/watch/capabilities/self-pull.d.ts.map +1 -1
  36. package/dist/cli/commands/watch/capabilities/self-pull.js +53 -5
  37. package/dist/cli/commands/watch/capabilities/self-pull.js.map +1 -1
  38. package/dist/cli/commands/watch/config.d.ts +10 -15
  39. package/dist/cli/commands/watch/config.d.ts.map +1 -1
  40. package/dist/cli/commands/watch/config.js +14 -47
  41. package/dist/cli/commands/watch/config.js.map +1 -1
  42. package/dist/cli/commands/watch/health.d.ts +41 -0
  43. package/dist/cli/commands/watch/health.d.ts.map +1 -0
  44. package/dist/cli/commands/watch/health.js +141 -0
  45. package/dist/cli/commands/watch/health.js.map +1 -0
  46. package/dist/cli/commands/watch/index.d.ts +9 -16
  47. package/dist/cli/commands/watch/index.d.ts.map +1 -1
  48. package/dist/cli/commands/watch/index.js +117 -63
  49. package/dist/cli/commands/watch/index.js.map +1 -1
  50. package/dist/cli/commands/watch/types.d.ts +2 -0
  51. package/dist/cli/commands/watch/types.d.ts.map +1 -1
  52. package/dist/cli/commands/watch/verbose.d.ts +12 -0
  53. package/dist/cli/commands/watch/verbose.d.ts.map +1 -0
  54. package/dist/cli/commands/watch/verbose.js +28 -0
  55. package/dist/cli/commands/watch/verbose.js.map +1 -0
  56. package/dist/cli/core/detect-squad-dir.d.ts.map +1 -1
  57. package/dist/cli/core/detect-squad-dir.js +9 -12
  58. package/dist/cli/core/detect-squad-dir.js.map +1 -1
  59. package/dist/cli/core/email-scrub.js +2 -2
  60. package/dist/cli/core/email-scrub.js.map +1 -1
  61. package/dist/cli/core/init.d.ts.map +1 -1
  62. package/dist/cli/core/init.js +4 -1
  63. package/dist/cli/core/init.js.map +1 -1
  64. package/dist/cli/core/migrations.js +1 -1
  65. package/dist/cli/core/migrations.js.map +1 -1
  66. package/dist/cli/core/nap.js +2 -2
  67. package/dist/cli/core/nap.js.map +1 -1
  68. package/dist/cli/core/project-type.js +1 -1
  69. package/dist/cli/core/project-type.js.map +1 -1
  70. package/dist/cli/core/templates.d.ts.map +1 -1
  71. package/dist/cli/core/templates.js +48 -0
  72. package/dist/cli/core/templates.js.map +1 -1
  73. package/dist/cli/core/upgrade.d.ts +20 -0
  74. package/dist/cli/core/upgrade.d.ts.map +1 -1
  75. package/dist/cli/core/upgrade.js +141 -15
  76. package/dist/cli/core/upgrade.js.map +1 -1
  77. package/dist/cli/shell/session-store.js +2 -2
  78. package/dist/cli/shell/session-store.js.map +1 -1
  79. package/dist/cli-entry.js +201 -89
  80. package/dist/cli-entry.js.map +1 -1
  81. package/package.json +6 -2
  82. package/templates/casting-reference.md +104 -104
  83. package/templates/ceremonies.md +28 -0
  84. package/templates/fact-checker-charter.md +83 -0
  85. package/templates/issue-lifecycle.md +2 -1
  86. package/templates/loop.md +46 -0
  87. package/templates/ralph-triage.js +3 -1
  88. package/templates/scribe-charter.md +20 -1
  89. package/templates/skills/external-comms/SKILL.md +329 -329
  90. package/templates/skills/gh-auth-isolation/SKILL.md +183 -183
  91. package/templates/skills/humanizer/SKILL.md +105 -105
  92. package/templates/skills/pr-review-response/SKILL.md +268 -0
  93. package/templates/skills/pr-screenshots/SKILL.md +149 -149
  94. package/templates/skills/versioning-policy/SKILL.md +119 -0
  95. package/templates/squad.agent.md.template +9 -7
  96. package/templates/workflows/squad-triage.yml +4 -2
  97. package/templates/workflows/sync-squad-labels.yml +3 -1
  98. package/dist/cli/commands/watch/capabilities/budget-check.d.ts +0 -29
  99. package/dist/cli/commands/watch/capabilities/budget-check.d.ts.map +0 -1
  100. package/dist/cli/commands/watch/capabilities/budget-check.js +0 -38
  101. package/dist/cli/commands/watch/capabilities/budget-check.js.map +0 -1
  102. package/dist/cli/commands/watch/capabilities/circuit-breaker.d.ts +0 -52
  103. package/dist/cli/commands/watch/capabilities/circuit-breaker.d.ts.map +0 -1
  104. package/dist/cli/commands/watch/capabilities/circuit-breaker.js +0 -152
  105. package/dist/cli/commands/watch/capabilities/circuit-breaker.js.map +0 -1
  106. package/dist/cli/commands/watch/capabilities/health-check.d.ts +0 -29
  107. package/dist/cli/commands/watch/capabilities/health-check.d.ts.map +0 -1
  108. package/dist/cli/commands/watch/capabilities/health-check.js +0 -139
  109. package/dist/cli/commands/watch/capabilities/health-check.js.map +0 -1
  110. package/dist/cli/commands/watch/capabilities/heartbeat.d.ts +0 -48
  111. package/dist/cli/commands/watch/capabilities/heartbeat.d.ts.map +0 -1
  112. package/dist/cli/commands/watch/capabilities/heartbeat.js +0 -115
  113. package/dist/cli/commands/watch/capabilities/heartbeat.js.map +0 -1
  114. package/dist/cli/commands/watch/capabilities/lockfile.d.ts +0 -30
  115. package/dist/cli/commands/watch/capabilities/lockfile.d.ts.map +0 -1
  116. package/dist/cli/commands/watch/capabilities/lockfile.js +0 -100
  117. package/dist/cli/commands/watch/capabilities/lockfile.js.map +0 -1
  118. package/dist/cli/commands/watch/capabilities/machine-capabilities.d.ts +0 -30
  119. package/dist/cli/commands/watch/capabilities/machine-capabilities.d.ts.map +0 -1
  120. package/dist/cli/commands/watch/capabilities/machine-capabilities.js +0 -103
  121. package/dist/cli/commands/watch/capabilities/machine-capabilities.js.map +0 -1
  122. package/dist/cli/commands/watch/capabilities/post-failure.d.ts +0 -19
  123. package/dist/cli/commands/watch/capabilities/post-failure.d.ts.map +0 -1
  124. package/dist/cli/commands/watch/capabilities/post-failure.js +0 -58
  125. package/dist/cli/commands/watch/capabilities/post-failure.js.map +0 -1
  126. package/dist/cli/commands/watch/capabilities/priority.d.ts +0 -59
  127. package/dist/cli/commands/watch/capabilities/priority.d.ts.map +0 -1
  128. package/dist/cli/commands/watch/capabilities/priority.js +0 -101
  129. package/dist/cli/commands/watch/capabilities/priority.js.map +0 -1
  130. package/dist/cli/commands/watch/capabilities/rate-pool.d.ts +0 -67
  131. package/dist/cli/commands/watch/capabilities/rate-pool.d.ts.map +0 -1
  132. package/dist/cli/commands/watch/capabilities/rate-pool.js +0 -187
  133. package/dist/cli/commands/watch/capabilities/rate-pool.js.map +0 -1
  134. package/dist/cli/commands/watch/capabilities/stale-reclaim.d.ts +0 -23
  135. package/dist/cli/commands/watch/capabilities/stale-reclaim.d.ts.map +0 -1
  136. package/dist/cli/commands/watch/capabilities/stale-reclaim.js +0 -87
  137. package/dist/cli/commands/watch/capabilities/stale-reclaim.js.map +0 -1
  138. package/dist/cli/commands/watch/capabilities/webhook-alerts.d.ts +0 -29
  139. package/dist/cli/commands/watch/capabilities/webhook-alerts.d.ts.map +0 -1
  140. package/dist/cli/commands/watch/capabilities/webhook-alerts.js +0 -114
  141. package/dist/cli/commands/watch/capabilities/webhook-alerts.js.map +0 -1
package/dist/cli-entry.js CHANGED
@@ -93,6 +93,15 @@ const lazySquadSdk = () => import('@bradygaster/squad-sdk');
93
93
  const lazyRunShell = () => import('./cli/shell/index.js');
94
94
  // Use local version resolver instead of importing VERSION from squad-sdk
95
95
  const VERSION = getPackageVersion();
96
+ /**
97
+ * Return the starting directory for squad resolution.
98
+ * Respects --team-root / SQUAD_TEAM_ROOT env var so that subprocesses
99
+ * (e.g. Copilot CLI bang commands) can locate .squad/ even when their
100
+ * working directory differs from the interactive shell. (#734)
101
+ */
102
+ function getSquadStartDir() {
103
+ return process.env['SQUAD_TEAM_ROOT'] || process.cwd();
104
+ }
96
105
  async function main() {
97
106
  const args = process.argv.slice(2);
98
107
  // --team-root flag: override team root for resolution
@@ -111,6 +120,9 @@ async function main() {
111
120
  const rawCmd = args[0];
112
121
  const cmd = rawCmd?.trim() || '';
113
122
  // --version / -v / version
123
+ // Investigated: routing is correct — cmd matches 'version' directly.
124
+ // "Unknown command: version" reports may be shell-specific (e.g. alias/wrapper
125
+ // prepending flags so args[0] is no longer 'version'). No intercepting router found.
114
126
  if (cmd === '--version' || cmd === '-v' || cmd === 'version') {
115
127
  console.log(VERSION);
116
128
  return;
@@ -159,19 +171,14 @@ async function main() {
159
171
  console.log(` --wave-dispatch wave-based parallel sub-task dispatch`);
160
172
  console.log(` --retro enforce retrospective checks`);
161
173
  console.log(` --decision-hygiene auto-merge decision inbox`);
162
- console.log(` --health-check pre-round watchdog (auth, disk, branch)`);
163
- console.log(` --stale-reclaim reclaim stale assigned issues (>24h)`);
164
- console.log(` --heartbeat write heartbeat JSON + structured log`);
165
- console.log(` --webhook-alerts POST to webhook on consecutive failures`);
166
- console.log(` Resilience flags (#743):`);
167
- console.log(` --webhook-url <url> webhook for failure alerts`);
168
- console.log(` --alert-threshold <n> failures before alert (default 3)`);
169
- console.log(` --max-budget <n> max issues per round (default 5)`);
170
- console.log(` --capabilities <list> machine caps (e.g., gpu,docker)`);
171
174
  console.log(` Disable: --no-<capability> overrides config.json`);
172
- console.log(` ${BOLD}loop${RESET} Continuous work loop (Ralph mode)`);
173
- console.log(` Usage: loop [--filter <label>] [--interval <minutes>]`);
174
- console.log(` Default: checks every 10 minutes (Ctrl+C to stop)`);
175
+ console.log(` Logging: --log-file <path> tee output to file with timestamps`);
176
+ console.log(` ${BOLD}loop${RESET} Prompt-driven continuous work loop`);
177
+ console.log(` Usage: loop [--init] [--file <path>] [--interval <min>]`);
178
+ console.log(` Reads loop.md and runs it each cycle (no issues needed)`);
179
+ console.log(` Flags: --init (generate boilerplate loop.md)`);
180
+ console.log(` --file <path> (custom loop file)`);
181
+ console.log(` --monitor-email, --monitor-teams (add monitoring)`);
175
182
  console.log(` ${BOLD}hire${RESET} Team creation wizard`);
176
183
  console.log(` Usage: hire [--name <name>] [--role <role>]`);
177
184
  console.log(` ${BOLD}copilot${RESET} Add/remove the Copilot coding agent (@copilot)`);
@@ -286,17 +293,28 @@ async function main() {
286
293
  return;
287
294
  }
288
295
  if (cmd === 'upgrade') {
289
- const { runUpgrade } = await import('./cli/core/upgrade.js');
296
+ const { runUpgrade, selfUpgradeCli } = await import('./cli/core/upgrade.js');
290
297
  const { migrateDirectory } = await import('./cli/core/migrate-directory.js');
291
298
  const migrateDir = args.includes('--migrate-directory');
292
299
  const selfUpgrade = args.includes('--self');
293
300
  const forceUpgrade = args.includes('--force');
294
- const dest = hasGlobal ? (await lazySquadSdk()).resolveGlobalSquadPath() : process.cwd();
301
+ const insider = args.includes('--insider');
302
+ const dest = hasGlobal ? (await lazySquadSdk()).resolveGlobalSquadPath() : getSquadStartDir();
303
+ // Warn when --insider is used without --self (it has no effect on project upgrades)
304
+ if (insider && !selfUpgrade) {
305
+ console.warn('⚠️ --insider only applies with --self (squad upgrade --self --insider). Ignoring.');
306
+ }
295
307
  // Handle --migrate-directory flag
296
308
  if (migrateDir) {
297
309
  await migrateDirectory(dest);
298
310
  // Continue with regular upgrade after migration
299
311
  }
312
+ // Handle --self: upgrade the CLI package itself
313
+ if (selfUpgrade) {
314
+ await selfUpgradeCli({ insider, force: forceUpgrade });
315
+ console.log('✅ Upgraded. Please restart your terminal for changes to take effect.');
316
+ return;
317
+ }
300
318
  // Run upgrade
301
319
  await runUpgrade(dest, {
302
320
  migrateDirectory: migrateDir,
@@ -312,7 +330,13 @@ async function main() {
312
330
  const fromIdx = args.indexOf('--from');
313
331
  const from = (fromIdx !== -1 && args[fromIdx + 1]) ? args[fromIdx + 1] : undefined;
314
332
  const dryRun = args.includes('--dry-run');
315
- await runMigrate(process.cwd(), { to, from: from, dryRun });
333
+ await runMigrate(getSquadStartDir(), { to, from: from, dryRun });
334
+ return;
335
+ }
336
+ // --health flag: show watch instance status and exit
337
+ if (cmd === 'watch' && args.includes('--health')) {
338
+ const { getWatchHealth } = await import('./cli/commands/watch/health.js');
339
+ console.log(getWatchHealth(getSquadStartDir()));
316
340
  return;
317
341
  }
318
342
  if (cmd === 'triage' || cmd === 'watch') {
@@ -323,6 +347,7 @@ async function main() {
323
347
  ? parseInt(args[intervalIdx + 1], 10)
324
348
  : undefined;
325
349
  const execute = args.includes('--execute') ? true : undefined;
350
+ const verbose = args.includes('--verbose') || args.includes('-v');
326
351
  const copilotFlagsIdx = args.indexOf('--copilot-flags');
327
352
  const copilotFlags = (copilotFlagsIdx !== -1 && args[copilotFlagsIdx + 1])
328
353
  ? args[copilotFlagsIdx + 1]
@@ -339,6 +364,25 @@ async function main() {
339
364
  const timeout = (timeoutIdx !== -1 && args[timeoutIdx + 1])
340
365
  ? parseInt(args[timeoutIdx + 1], 10)
341
366
  : undefined;
367
+ // --dispatch-mode runtime validation: rejects invalid values with a clear error message
368
+ const dispatchModeIdx = args.indexOf('--dispatch-mode');
369
+ const rawDispatchMode = (dispatchModeIdx !== -1 && args[dispatchModeIdx + 1])
370
+ ? args[dispatchModeIdx + 1]
371
+ : undefined;
372
+ const validModes = ['task', 'fleet', 'hybrid'];
373
+ const dispatchMode = rawDispatchMode && validModes.includes(rawDispatchMode)
374
+ ? rawDispatchMode
375
+ : rawDispatchMode
376
+ ? (console.error(`⚠️ Invalid --dispatch-mode "${rawDispatchMode}". Valid: task, fleet, hybrid. Defaulting to task.`), undefined)
377
+ : undefined;
378
+ const logFileIdx = args.indexOf('--log-file');
379
+ const logFile = (logFileIdx !== -1 && args[logFileIdx + 1])
380
+ ? args[logFileIdx + 1]
381
+ : undefined;
382
+ const authUserIdx = args.indexOf('--auth-user');
383
+ const authUser = (authUserIdx !== -1 && args[authUserIdx + 1])
384
+ ? args[authUserIdx + 1]
385
+ : undefined;
342
386
  // Build capability overrides from CLI flags and --no-{cap} flags
343
387
  const capabilities = {};
344
388
  const registry = createDefaultRegistry();
@@ -356,75 +400,130 @@ async function main() {
356
400
  ? { ...existing, projectNumber: parseInt(args[boardProjectIdx + 1], 10) }
357
401
  : { projectNumber: parseInt(args[boardProjectIdx + 1], 10) };
358
402
  }
359
- // ── Watch parity CLI flags (#743) ────────────────────────────
360
- const webhookUrlIdx = args.indexOf('--webhook-url');
361
- const webhookUrl = (webhookUrlIdx !== -1 && args[webhookUrlIdx + 1])
362
- ? args[webhookUrlIdx + 1]
363
- : undefined;
364
- const alertThresholdIdx = args.indexOf('--alert-threshold');
365
- const alertThreshold = (alertThresholdIdx !== -1 && args[alertThresholdIdx + 1])
366
- ? parseInt(args[alertThresholdIdx + 1], 10)
367
- : undefined;
368
- const maxBudgetIdx = args.indexOf('--max-budget');
369
- const maxBudget = (maxBudgetIdx !== -1 && args[maxBudgetIdx + 1])
370
- ? parseInt(args[maxBudgetIdx + 1], 10)
371
- : undefined;
372
- const capabilitiesIdx = args.indexOf('--capabilities');
373
- const machineCapabilities = (capabilitiesIdx !== -1 && args[capabilitiesIdx + 1])
374
- ? args[capabilitiesIdx + 1].split(',').map(s => s.trim())
375
- : undefined;
376
- // ── Warn about unrecognised flags (#739) ───────────────────
377
- const knownValueFlags = new Set([
378
- '--interval', '--copilot-flags', '--agent-cmd', '--max-concurrent',
379
- '--timeout', '--board-project', '--webhook-url', '--alert-threshold',
380
- '--max-budget', '--capabilities',
381
- ]);
382
- const knownBoolFlags = new Set(['--execute']);
383
- for (const cap of registry.all()) {
384
- knownBoolFlags.add(`--${cap.name}`);
385
- knownBoolFlags.add(`--no-${cap.name}`);
386
- }
387
- for (let i = 0; i < args.length; i++) {
388
- const arg = args[i];
389
- if (!arg.startsWith('--'))
390
- continue;
391
- if (knownValueFlags.has(arg)) {
392
- i++;
393
- continue;
394
- } // skip its value
395
- if (knownBoolFlags.has(arg))
396
- continue;
397
- console.warn(`⚠ Unknown watch flag ignored: ${arg}`);
398
- }
399
403
  // Load config: .squad/config.json merged with CLI overrides
400
- const config = loadWatchConfig(process.cwd(), {
404
+ const config = loadWatchConfig(getSquadStartDir(), {
401
405
  interval,
402
406
  execute,
403
407
  maxConcurrent,
404
408
  timeout,
405
409
  copilotFlags,
406
410
  agentCmd,
411
+ verbose,
412
+ dispatchMode,
413
+ logFile,
414
+ authUser,
407
415
  capabilities: Object.keys(capabilities).length > 0 ? capabilities : undefined,
408
- webhookUrl,
409
- alertThreshold,
410
- maxBudget,
411
- machineCapabilities,
412
416
  });
413
- await runWatch(process.cwd(), config);
417
+ // After parsing all flags, check for positional args that look like prompts.
418
+ // Skip values that follow known value-flags (e.g. "--interval 5" → "5" is not positional).
419
+ const knownValueFlags = new Set([
420
+ '--interval', '--copilot-flags', '--agent-cmd', '--max-concurrent', '--timeout', '--board-project', '--auth-user',
421
+ ]);
422
+ const watchArgStart = args.indexOf(cmd) + 1;
423
+ const watchArgs = args.slice(watchArgStart);
424
+ const positionalArgs = [];
425
+ for (let i = 0; i < watchArgs.length; i++) {
426
+ const arg = watchArgs[i];
427
+ if (knownValueFlags.has(arg)) {
428
+ i++;
429
+ continue;
430
+ }
431
+ if (arg.startsWith('-'))
432
+ continue;
433
+ positionalArgs.push(arg);
434
+ }
435
+ if (positionalArgs.length > 0 && config.verbose) {
436
+ console.log(`[verbose] ⚠️ Positional args ignored by watch: "${positionalArgs.join(' ')}". Use --execute to process issues.`);
437
+ }
438
+ await runWatch(getSquadStartDir(), config);
414
439
  return;
415
440
  }
416
441
  if (cmd === 'loop') {
417
- const filterIdx = args.indexOf('--filter');
418
- const filter = (filterIdx !== -1 && args[filterIdx + 1]) ? args[filterIdx + 1] : undefined;
442
+ // --help
443
+ if (args.includes('--help') || args.includes('-h')) {
444
+ console.log(`\n${BOLD}squad loop${RESET} — Prompt-driven continuous work loop\n`);
445
+ console.log(`Usage: squad loop [options]\n`);
446
+ console.log(`Reads loop.md and runs it as a continuous work loop.\n`);
447
+ console.log(`Options:`);
448
+ console.log(` ${BOLD}--init${RESET} Generate a boilerplate loop.md`);
449
+ console.log(` ${BOLD}--file <path>${RESET} Path to loop file (default: loop.md)`);
450
+ console.log(` ${BOLD}--interval <min>${RESET} Override loop interval in minutes`);
451
+ console.log(` ${BOLD}--timeout <min>${RESET} Override max minutes per cycle`);
452
+ console.log(` ${BOLD}--copilot-flags "..."${RESET} Extra flags for Copilot CLI`);
453
+ console.log(` ${BOLD}--agent-cmd <cmd>${RESET} Override the agent command`);
454
+ console.log(`\nCapabilities (composable with the loop):`);
455
+ console.log(` ${BOLD}--self-pull${RESET} git fetch/pull at round start`);
456
+ console.log(` ${BOLD}--monitor-email${RESET} Scan email for actionable items`);
457
+ console.log(` ${BOLD}--monitor-teams${RESET} Scan Teams for actionable messages`);
458
+ console.log(` ${BOLD}--decision-hygiene${RESET} Auto-merge decision inbox`);
459
+ console.log(` ${BOLD}--retro${RESET} Enforce retrospective checks`);
460
+ console.log(`\nFrontmatter (in loop.md):`);
461
+ console.log(` configured: true ${DIM}(required — confirms intentional setup)${RESET}`);
462
+ console.log(` interval: 10 ${DIM}(minutes between cycles)${RESET}`);
463
+ console.log(` timeout: 30 ${DIM}(max minutes per cycle)${RESET}`);
464
+ console.log(` description: "..." ${DIM}(shown in status output)${RESET}`);
465
+ console.log(`\nExamples:`);
466
+ console.log(` squad loop ${DIM}# run loop.md${RESET}`);
467
+ console.log(` squad loop --init ${DIM}# generate boilerplate${RESET}`);
468
+ console.log(` squad loop --file ops/loop.md ${DIM}# custom loop file${RESET}`);
469
+ console.log(` squad loop --monitor-email ${DIM}# with email monitoring${RESET}`);
470
+ return;
471
+ }
472
+ const { runLoop, generateLoopFile } = await import('./cli/commands/loop.js');
473
+ // --init: scaffold a boilerplate loop.md
474
+ if (args.includes('--init')) {
475
+ const fileIdx = args.indexOf('--file');
476
+ const filePath = (fileIdx !== -1 && args[fileIdx + 1]) ? args[fileIdx + 1] : 'loop.md';
477
+ const { FSStorageProvider } = await import('@bradygaster/squad-sdk');
478
+ const storage = new FSStorageProvider();
479
+ const pathMod = await import('node:path');
480
+ const absPath = pathMod.default.resolve(getSquadStartDir(), filePath);
481
+ if (storage.existsSync(absPath)) {
482
+ console.log(`⚠️ ${filePath} already exists. Remove it first to regenerate.`);
483
+ }
484
+ else {
485
+ storage.writeSync(absPath, generateLoopFile());
486
+ console.log(`✅ Created ${filePath} — open it and set \`configured: true\` to activate.`);
487
+ }
488
+ return;
489
+ }
490
+ // Parse flags
491
+ const fileIdx = args.indexOf('--file');
492
+ const filePath = (fileIdx !== -1 && args[fileIdx + 1]) ? args[fileIdx + 1] : undefined;
419
493
  const intervalIdx = args.indexOf('--interval');
420
- const intervalMinutes = (intervalIdx !== -1 && args[intervalIdx + 1])
494
+ const interval = (intervalIdx !== -1 && args[intervalIdx + 1])
421
495
  ? parseInt(args[intervalIdx + 1], 10)
422
- : 10;
423
- console.log(`🔄 Squad loop starting... (full implementation pending)`);
424
- if (filter) {
425
- console.log(` Filter: ${filter}`);
496
+ : undefined;
497
+ const timeoutIdx = args.indexOf('--timeout');
498
+ const timeout = (timeoutIdx !== -1 && args[timeoutIdx + 1])
499
+ ? parseInt(args[timeoutIdx + 1], 10)
500
+ : undefined;
501
+ const copilotFlagsIdx = args.indexOf('--copilot-flags');
502
+ const copilotFlags = (copilotFlagsIdx !== -1 && args[copilotFlagsIdx + 1])
503
+ ? args[copilotFlagsIdx + 1]
504
+ : undefined;
505
+ const agentCmdIdx = args.indexOf('--agent-cmd');
506
+ const agentCmd = (agentCmdIdx !== -1 && args[agentCmdIdx + 1])
507
+ ? args[agentCmdIdx + 1]
508
+ : undefined;
509
+ // Capability flags
510
+ const { createDefaultRegistry: createReg } = await import('./cli/commands/watch/index.js');
511
+ const reg = createReg();
512
+ const capabilities = {};
513
+ for (const cap of reg.all()) {
514
+ if (args.includes(`--${cap.name}`))
515
+ capabilities[cap.name] = true;
516
+ if (args.includes(`--no-${cap.name}`))
517
+ capabilities[cap.name] = false;
426
518
  }
427
- console.log(` Interval: ${intervalMinutes} minutes`);
519
+ await runLoop(getSquadStartDir(), {
520
+ filePath,
521
+ interval,
522
+ timeout,
523
+ copilotFlags,
524
+ agentCmd,
525
+ capabilities,
526
+ });
428
527
  return;
429
528
  }
430
529
  if (cmd === 'hire') {
@@ -445,7 +544,7 @@ async function main() {
445
544
  const { runExport } = await import('./cli/commands/export.js');
446
545
  const outIdx = args.indexOf('--out');
447
546
  const outPath = (outIdx !== -1 && args[outIdx + 1]) ? args[outIdx + 1] : undefined;
448
- await runExport(process.cwd(), outPath);
547
+ await runExport(getSquadStartDir(), outPath);
449
548
  return;
450
549
  }
451
550
  if (cmd === 'import') {
@@ -455,19 +554,19 @@ async function main() {
455
554
  fatal('Usage: squad import <file> [--force]');
456
555
  }
457
556
  const hasForce = args.includes('--force');
458
- await runImport(process.cwd(), importFile, hasForce);
557
+ await runImport(getSquadStartDir(), importFile, hasForce);
459
558
  return;
460
559
  }
461
560
  if (cmd === 'plugin') {
462
561
  const { runPlugin } = await import('./cli/commands/plugin.js');
463
- await runPlugin(process.cwd(), args.slice(1));
562
+ await runPlugin(getSquadStartDir(), args.slice(1));
464
563
  return;
465
564
  }
466
565
  if (cmd === 'copilot') {
467
566
  const { runCopilot } = await import('./cli/commands/copilot.js');
468
567
  const isOff = args.includes('--off');
469
568
  const autoAssign = args.includes('--auto-assign');
470
- await runCopilot(process.cwd(), { off: isOff, autoAssign });
569
+ await runCopilot(getSquadStartDir(), { off: isOff, autoAssign });
471
570
  return;
472
571
  }
473
572
  if (cmd === 'scrub-emails') {
@@ -484,7 +583,7 @@ async function main() {
484
583
  }
485
584
  if (cmd === 'status') {
486
585
  const sdk = await lazySquadSdk();
487
- const repoSquad = sdk.resolveSquad(process.cwd());
586
+ const repoSquad = sdk.resolveSquad(getSquadStartDir());
488
587
  const globalPath = sdk.resolveGlobalSquadPath();
489
588
  const globalSquadDir = path.join(globalPath, '.squad');
490
589
  const storage = new FSStorageProvider();
@@ -518,7 +617,7 @@ async function main() {
518
617
  }
519
618
  if (cmd === 'cost') {
520
619
  const sdk = await lazySquadSdk();
521
- const localSquad = sdk.resolveSquad(process.cwd());
620
+ const localSquad = sdk.resolveSquad(getSquadStartDir());
522
621
  const globalPath = sdk.resolveGlobalSquadPath();
523
622
  const globalSquadDir = path.join(globalPath, '.squad');
524
623
  const storage = new FSStorageProvider();
@@ -536,12 +635,12 @@ async function main() {
536
635
  const hasCheck = args.includes('--check');
537
636
  const hasDryRun = args.includes('--dry-run');
538
637
  const hasWatch = args.includes('--watch');
539
- await runBuild(process.cwd(), { check: hasCheck, dryRun: hasDryRun, watch: hasWatch });
638
+ await runBuild(getSquadStartDir(), { check: hasCheck, dryRun: hasDryRun, watch: hasWatch });
540
639
  return;
541
640
  }
542
641
  if (cmd === 'subsquads' || cmd === 'workstreams' || cmd === 'streams') {
543
642
  const { runSubSquads } = await import('./cli/commands/streams.js');
544
- await runSubSquads(process.cwd(), args.slice(1));
643
+ await runSubSquads(getSquadStartDir(), args.slice(1));
545
644
  return;
546
645
  }
547
646
  if (cmd === 'start') {
@@ -554,16 +653,17 @@ async function main() {
554
653
  const customCmd = (cmdIdx !== -1 && args[cmdIdx + 1]) ? args[cmdIdx + 1] : undefined;
555
654
  const squadFlags = ['start', '--tunnel', '--port', port.toString(), '--command', customCmd || ''].filter(Boolean);
556
655
  const copilotArgs = args.slice(1).filter(a => !squadFlags.includes(a));
557
- await runStart(process.cwd(), { tunnel: hasTunnel, port, copilotArgs, command: customCmd });
656
+ await runStart(getSquadStartDir(), { tunnel: hasTunnel, port, copilotArgs, command: customCmd });
558
657
  return;
559
658
  }
560
659
  if (cmd === 'nap') {
561
660
  const { runNap, formatNapReport } = await import('./cli/core/nap.js');
562
661
  const sdk = await lazySquadSdk();
662
+ const startDir = getSquadStartDir();
563
663
  // resolveSquad() returns the .squad/ directory itself — use it directly (#207)
564
- const squadDir = sdk.resolveSquad(process.cwd());
664
+ const squadDir = sdk.resolveSquad(startDir);
565
665
  if (!squadDir) {
566
- fatal('No squad found. Run "squad init" first.');
666
+ fatal(`No squad found (searched from ${startDir}). Run "squad init" first, or use --team-root to specify the project directory.`);
567
667
  }
568
668
  const deep = args.includes('--deep');
569
669
  const dryRun = args.includes('--dry-run');
@@ -578,12 +678,12 @@ async function main() {
578
678
  }
579
679
  if (cmd === 'consult') {
580
680
  const { runConsult } = await import('./cli/commands/consult.js');
581
- await runConsult(process.cwd(), args.slice(1));
681
+ await runConsult(getSquadStartDir(), args.slice(1));
582
682
  return;
583
683
  }
584
684
  if (cmd === 'extract') {
585
685
  const { runExtract } = await import('./cli/commands/extract.js');
586
- await runExtract(process.cwd(), args.slice(1));
686
+ await runExtract(getSquadStartDir(), args.slice(1));
587
687
  return;
588
688
  }
589
689
  if (cmd === 'aspire') {
@@ -600,7 +700,19 @@ async function main() {
600
700
  if (!teamPath) {
601
701
  fatal('Usage: squad link <team-repo-path>');
602
702
  }
603
- runLink(process.cwd(), teamPath);
703
+ runLink(getSquadStartDir(), teamPath);
704
+ return;
705
+ }
706
+ if (cmd === 'externalize') {
707
+ const { runExternalize } = await import('./cli/commands/externalize.js');
708
+ const rawKey = args.includes('--key') ? args[args.indexOf('--key') + 1] : undefined;
709
+ const projectKey = rawKey ? rawKey.replace(/[\/\\\.]/g, '_') : undefined;
710
+ runExternalize(process.cwd(), projectKey);
711
+ return;
712
+ }
713
+ if (cmd === 'internalize') {
714
+ const { runInternalize } = await import('./cli/commands/externalize.js');
715
+ runInternalize(process.cwd());
604
716
  return;
605
717
  }
606
718
  if (cmd === 'rc' || cmd === 'remote-control') {
@@ -610,7 +722,7 @@ async function main() {
610
722
  const port = (portIdx !== -1 && args[portIdx + 1]) ? parseInt(args[portIdx + 1], 10) : 0;
611
723
  const pathIdx = args.indexOf('--path');
612
724
  const rcPath = (pathIdx !== -1 && args[pathIdx + 1]) ? args[pathIdx + 1] : undefined;
613
- await runRC(rcPath || process.cwd(), { tunnel: hasTunnel, port });
725
+ await runRC(rcPath || getSquadStartDir(), { tunnel: hasTunnel, port });
614
726
  return;
615
727
  }
616
728
  if (cmd === 'copilot-bridge') {
@@ -648,18 +760,18 @@ async function main() {
648
760
  if (cmd === 'schedule') {
649
761
  const { runSchedule } = await import('./cli/commands/schedule.js');
650
762
  const subcommand = args[1] || 'list';
651
- await runSchedule(process.cwd(), subcommand, args.slice(2));
763
+ await runSchedule(getSquadStartDir(), subcommand, args.slice(2));
652
764
  return;
653
765
  }
654
766
  if (cmd === 'personal') {
655
767
  const { runPersonal } = await import('./cli/commands/personal.js');
656
768
  const subcommand = args[1] || 'list';
657
- await runPersonal(process.cwd(), subcommand, args.slice(2));
769
+ await runPersonal(getSquadStartDir(), subcommand, args.slice(2));
658
770
  return;
659
771
  }
660
772
  if (cmd === 'cast') {
661
773
  const { runCast } = await import('./cli/commands/cast.js');
662
- await runCast(process.cwd());
774
+ await runCast(getSquadStartDir());
663
775
  return;
664
776
  }
665
777
  if (cmd === 'upstream') {
@@ -679,12 +791,12 @@ async function main() {
679
791
  }
680
792
  if (cmd === 'economy') {
681
793
  const { runEconomy } = await import('./cli/commands/economy.js');
682
- await runEconomy(process.cwd(), args.slice(1));
794
+ await runEconomy(getSquadStartDir(), args.slice(1));
683
795
  return;
684
796
  }
685
797
  if (cmd === 'config') {
686
798
  const { runConfig } = await import('./cli/commands/config.js');
687
- await runConfig(process.cwd(), args.slice(1));
799
+ await runConfig(getSquadStartDir(), args.slice(1));
688
800
  return;
689
801
  }
690
802
  // Unknown command
@@ -1 +1 @@
1
- {"version":3,"file":"cli-entry.js","sourceRoot":"","sources":["../src/cli-entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-entry.js","sourceRoot":"","sources":["../src/cli-entry.ts"],"names":[],"mappings":"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"}