@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/README.md CHANGED
@@ -221,6 +221,39 @@ When you run `squad init`, Squad creates a `.squad/` directory with this structu
221
221
  - All database queries through Prisma, no raw SQL
222
222
  ```
223
223
 
224
+ ## Built-in Skills
225
+
226
+ When you run `squad init`, Squad installs **8 curated skills** into `.copilot/skills/`. These skills teach your agents best practices and conventions:
227
+
228
+ | Skill | Purpose |
229
+ |-------|---------|
230
+ | `squad-conventions` | Squad behavioral conventions |
231
+ | `error-recovery` | Graceful error recovery patterns |
232
+ | `secret-handling` | Secrets management and credential safety |
233
+ | `git-workflow` | Git workflow conventions and branch management |
234
+ | `session-recovery` | Session checkpoint and recovery patterns |
235
+ | `reviewer-protocol` | Code review protocol and reviewer gate patterns |
236
+ | `test-discipline` | Test-first discipline and coverage expectations |
237
+ | `agent-collaboration` | Multi-agent collaboration and handoff patterns |
238
+
239
+ Each skill is a `SKILL.md` file inside `.copilot/skills/<skill-name>/`.
240
+
241
+ ### Skill lifecycle
242
+
243
+ - **`squad init`** — Installs the 8 manifest skills on first run. If `.copilot/skills/` already has content, init skips skill installation (idempotent).
244
+ - **`squad upgrade`** — Refreshes manifest skills to their latest versions. Skills marked `overwriteOnUpgrade: true` (all built-in skills) are always updated to pick up fixes and improvements.
245
+
246
+ ### Adding custom skills
247
+
248
+ You can add your own skills by creating a new directory under `.copilot/skills/`:
249
+
250
+ ```
251
+ .copilot/skills/my-custom-skill/
252
+ └── SKILL.md
253
+ ```
254
+
255
+ Custom skills are not overwritten during upgrade because they are not part of the built-in manifest.
256
+
224
257
  ## Configuration
225
258
 
226
259
  ### .squadrc / config.json
@@ -14,6 +14,8 @@ export interface DoctorCheck {
14
14
  name: string;
15
15
  status: 'pass' | 'fail' | 'warn';
16
16
  message: string;
17
+ /** Optional severity hint for display; keeps the status union stable. */
18
+ severity?: 'info';
17
19
  }
18
20
  /** Detected squad layout mode. */
19
21
  export type DoctorMode = 'local' | 'remote' | 'hub';
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,2CAA2C;AAC3C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,kCAAkC;AAClC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAoPpD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,WAAW,CAalE;AAiID;;;GAGG;AACH,wBAAsB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CA2CpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,CAEtD;AAUD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAc/E;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK/D"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,2CAA2C;AAC3C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,kCAAkC;AAClC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAoPpD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,WAAW,CAalE;AAuJD;;;GAGG;AACH,wBAAsB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CA2CpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,CAEtD;AAUD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAgB/E;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK/D"}
@@ -274,10 +274,20 @@ function checkVscodeJsonrpcExports(cwd) {
274
274
  message: 'missing exports field — run postinstall or reinstall (see #449)',
275
275
  };
276
276
  }
277
+ // Detect whether we're in a local dev context (node_modules exists) or global install
278
+ const hasNodeModules = isDirectory(path.join(cwd, 'node_modules'));
279
+ if (hasNodeModules) {
280
+ return {
281
+ name: 'vscode-jsonrpc exports field',
282
+ status: 'warn',
283
+ message: 'not found in node_modules — run npm install or check dependencies',
284
+ };
285
+ }
277
286
  return {
278
287
  name: 'vscode-jsonrpc exports field',
279
288
  status: 'warn',
280
- message: 'vscode-jsonrpc not found in node_modules — expected for global CLI installs. For local development, run: npm install',
289
+ severity: 'info',
290
+ message: 'not found in node_modules (expected for global installs)',
281
291
  };
282
292
  }
283
293
  /**
@@ -315,10 +325,20 @@ function checkCopilotSdkSessionPatch(cwd) {
315
325
  };
316
326
  }
317
327
  }
328
+ // Detect whether we're in a local dev context (node_modules exists) or global install
329
+ const hasNodeModules = isDirectory(path.join(cwd, 'node_modules'));
330
+ if (hasNodeModules) {
331
+ return {
332
+ name: 'copilot-sdk session.js ESM patch',
333
+ status: 'warn',
334
+ message: 'not found in node_modules — run npm install or check dependencies',
335
+ };
336
+ }
318
337
  return {
319
338
  name: 'copilot-sdk session.js ESM patch',
320
339
  status: 'warn',
321
- message: '@github/copilot-sdk not found in node_modules — expected for global CLI installs. For local development, run: npm install',
340
+ severity: 'info',
341
+ message: 'not found in node_modules (expected for global installs)',
322
342
  };
323
343
  }
324
344
  function checkSquadAgentMd(cwd) {
@@ -417,12 +437,14 @@ export function printDoctorReport(checks, mode) {
417
437
  console.log('═══════════════\n');
418
438
  console.log(`Mode: ${mode}\n`);
419
439
  for (const c of checks) {
420
- console.log(`${STATUS_ICON[c.status]} ${c.name} — ${c.message}`);
440
+ const icon = c.severity === 'info' ? 'ℹ️' : STATUS_ICON[c.status];
441
+ console.log(`${icon} ${c.name} — ${c.message}`);
421
442
  }
422
443
  const passed = checks.filter(c => c.status === 'pass').length;
423
444
  const failed = checks.filter(c => c.status === 'fail').length;
424
- const warned = checks.filter(c => c.status === 'warn').length;
425
- console.log(`\nSummary: ${passed} passed, ${failed} failed, ${warned} warnings\n`);
445
+ const warned = checks.filter(c => c.status === 'warn' && c.severity !== 'info').length;
446
+ const infos = checks.filter(c => c.severity === 'info').length;
447
+ console.log(`\nSummary: ${passed} passed, ${failed} failed, ${warned} warnings, ${infos} info\n`);
426
448
  }
427
449
  /**
428
450
  * CLI entry point — run doctor and print results.
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * squad externalize — move .squad/ state out of the working tree.
3
+ *
4
+ * Moves all squad state to `{resolveGlobalSquadPath()}/projects/{projectKey}/`
5
+ * (platform-specific: `%APPDATA%/squad/` on Windows, `~/Library/Application Support/squad/`
6
+ * on macOS, `$XDG_CONFIG_HOME/squad/` on Linux) and writes a thin `.squad/config.json`
7
+ * marker in the repo. After externalization:
8
+ * - State survives branch switches (not tied to the working tree)
9
+ * - State is invisible to `git status` and never pollutes PRs
10
+ * - A `.squad/config.json` marker lets the walk-up resolver find state
11
+ *
12
+ * To restore local state, run `squad internalize`.
13
+ *
14
+ * @module cli/commands/externalize
15
+ */
16
+ /**
17
+ * Move .squad/ state to the external directory.
18
+ *
19
+ * @param projectDir - Absolute path to the project root (where .squad/ lives).
20
+ * @param projectKey - Optional explicit project key. Defaults to repo basename slug.
21
+ */
22
+ export declare function runExternalize(projectDir: string, projectKey?: string): void;
23
+ /**
24
+ * Move externalized state back into the working tree.
25
+ */
26
+ export declare function runInternalize(projectDir: string): void;
27
+ //# sourceMappingURL=externalize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externalize.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/externalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAoBH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAyE5E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAgFvD"}
@@ -0,0 +1,207 @@
1
+ /**
2
+ * squad externalize — move .squad/ state out of the working tree.
3
+ *
4
+ * Moves all squad state to `{resolveGlobalSquadPath()}/projects/{projectKey}/`
5
+ * (platform-specific: `%APPDATA%/squad/` on Windows, `~/Library/Application Support/squad/`
6
+ * on macOS, `$XDG_CONFIG_HOME/squad/` on Linux) and writes a thin `.squad/config.json`
7
+ * marker in the repo. After externalization:
8
+ * - State survives branch switches (not tied to the working tree)
9
+ * - State is invisible to `git status` and never pollutes PRs
10
+ * - A `.squad/config.json` marker lets the walk-up resolver find state
11
+ *
12
+ * To restore local state, run `squad internalize`.
13
+ *
14
+ * @module cli/commands/externalize
15
+ */
16
+ import path from 'node:path';
17
+ import { FSStorageProvider, resolveExternalStateDir, deriveProjectKey } from '@bradygaster/squad-sdk';
18
+ import { fatal } from '../core/errors.js';
19
+ const storage = new FSStorageProvider();
20
+ /** Directories under .squad/ that hold the actual state */
21
+ const STATE_DIRS = [
22
+ 'agents', 'casting', 'decisions', 'identity', 'orchestration-log',
23
+ 'log', 'plugins', 'templates', 'skills', 'sessions', '.scratch',
24
+ ];
25
+ /** Files under .squad/ that hold state (not config.json — that stays) */
26
+ const STATE_FILES = [
27
+ 'team.md', 'routing.md', 'ceremonies.md', 'decisions.md',
28
+ 'decisions-archive.md', '.first-run',
29
+ ];
30
+ /**
31
+ * Move .squad/ state to the external directory.
32
+ *
33
+ * @param projectDir - Absolute path to the project root (where .squad/ lives).
34
+ * @param projectKey - Optional explicit project key. Defaults to repo basename slug.
35
+ */
36
+ export function runExternalize(projectDir, projectKey) {
37
+ const squadDir = path.join(projectDir, '.squad');
38
+ if (!storage.existsSync(squadDir)) {
39
+ fatal('.squad/ directory not found. Run `squad init` first.');
40
+ }
41
+ // Derive project key
42
+ const key = projectKey || deriveProjectKey(projectDir);
43
+ const externalDir = resolveExternalStateDir(key, true);
44
+ console.log(`📦 Externalizing .squad/ state to: ${externalDir}`);
45
+ let movedCount = 0;
46
+ // Move directories
47
+ for (const dir of STATE_DIRS) {
48
+ const src = path.join(squadDir, dir);
49
+ if (!storage.existsSync(src))
50
+ continue;
51
+ const dest = path.join(externalDir, dir);
52
+ // Copy contents into the external state directory. If destination files
53
+ // already exist, they may be overwritten by copyDirRecursive().
54
+ copyDirRecursive(src, dest);
55
+ storage.deleteDirSync?.(src);
56
+ movedCount++;
57
+ }
58
+ // Move files
59
+ for (const file of STATE_FILES) {
60
+ const src = path.join(squadDir, file);
61
+ if (!storage.existsSync(src))
62
+ continue;
63
+ const dest = path.join(externalDir, file);
64
+ const content = storage.readSync(src);
65
+ if (content != null) {
66
+ storage.mkdirSync(path.dirname(dest), { recursive: true });
67
+ storage.writeSync(dest, content);
68
+ }
69
+ storage.deleteSync?.(src);
70
+ movedCount++;
71
+ }
72
+ // Write thin config.json marker, preserving any existing config fields
73
+ const configPath = path.join(squadDir, 'config.json');
74
+ let existingConfig = {};
75
+ if (storage.existsSync(configPath)) {
76
+ try {
77
+ const raw = storage.readSync(configPath);
78
+ if (raw != null) {
79
+ const parsed = JSON.parse(raw);
80
+ if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
81
+ existingConfig = parsed;
82
+ }
83
+ }
84
+ }
85
+ catch { /* start fresh if config is malformed */ }
86
+ }
87
+ const config = {
88
+ ...existingConfig,
89
+ version: 1,
90
+ teamRoot: '.',
91
+ projectKey: key,
92
+ stateLocation: 'external',
93
+ };
94
+ storage.writeSync(configPath, JSON.stringify(config, null, 2) + '\n');
95
+ // Ensure config.json is gitignored (it's machine-local)
96
+ ensureGitignored(projectDir, '.squad/config.json');
97
+ console.log(`✅ Externalized ${movedCount} items. State now at: ${externalDir}`);
98
+ console.log(` .squad/config.json marker left in repo (gitignored).`);
99
+ console.log(` Run \`squad internalize\` to move state back.`);
100
+ }
101
+ /**
102
+ * Move externalized state back into the working tree.
103
+ */
104
+ export function runInternalize(projectDir) {
105
+ const squadDir = path.join(projectDir, '.squad');
106
+ const configPath = path.join(squadDir, 'config.json');
107
+ if (!storage.existsSync(configPath)) {
108
+ fatal('.squad/config.json not found. State is already local or not initialized.');
109
+ }
110
+ let config;
111
+ try {
112
+ config = JSON.parse(storage.readSync(configPath) ?? '{}');
113
+ }
114
+ catch {
115
+ fatal('.squad/config.json is malformed.');
116
+ return;
117
+ }
118
+ if (config.stateLocation !== 'external') {
119
+ fatal('State is already local (stateLocation is not "external").');
120
+ }
121
+ const key = config.projectKey || deriveProjectKey(projectDir);
122
+ const externalDir = resolveExternalStateDir(key, false);
123
+ if (!storage.existsSync(externalDir)) {
124
+ fatal(`External state directory not found: ${externalDir}`);
125
+ }
126
+ console.log(`📥 Internalizing state from: ${externalDir}`);
127
+ let movedCount = 0;
128
+ // Copy directories back
129
+ for (const dir of STATE_DIRS) {
130
+ const src = path.join(externalDir, dir);
131
+ if (!storage.existsSync(src))
132
+ continue;
133
+ const dest = path.join(squadDir, dir);
134
+ copyDirRecursive(src, dest);
135
+ movedCount++;
136
+ }
137
+ // Copy files back
138
+ for (const file of STATE_FILES) {
139
+ const src = path.join(externalDir, file);
140
+ if (!storage.existsSync(src))
141
+ continue;
142
+ const content = storage.readSync(src);
143
+ if (content != null) {
144
+ storage.writeSync(path.join(squadDir, file), content);
145
+ }
146
+ movedCount++;
147
+ }
148
+ // Remove external-state fields from config.json (stateLocation, teamRoot,
149
+ // projectKey) to restore true local mode. Preserve any other settings
150
+ // (e.g. consult, stateBackend). If nothing meaningful remains, delete the file
151
+ // so loadDirConfig() returns null and resolveSquadPaths() falls through to
152
+ // local mode.
153
+ let fullConfig = {};
154
+ try {
155
+ const raw = storage.readSync(configPath);
156
+ if (raw != null) {
157
+ const parsed = JSON.parse(raw);
158
+ if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
159
+ fullConfig = parsed;
160
+ }
161
+ }
162
+ }
163
+ catch { /* treat malformed as empty */ }
164
+ delete fullConfig.stateLocation;
165
+ delete fullConfig.teamRoot;
166
+ delete fullConfig.projectKey;
167
+ // Check if any meaningful fields remain beyond version
168
+ const { version: _v, ...rest } = fullConfig;
169
+ if (Object.keys(rest).length > 0) {
170
+ storage.writeSync(configPath, JSON.stringify(fullConfig, null, 2) + '\n');
171
+ }
172
+ else {
173
+ storage.deleteSync?.(configPath);
174
+ }
175
+ console.log(`✅ Internalized ${movedCount} items. State is back in .squad/.`);
176
+ }
177
+ function copyDirRecursive(src, dest) {
178
+ storage.mkdirSync(dest, { recursive: true });
179
+ const entries = storage.listSync?.(src) ?? [];
180
+ for (const entry of entries) {
181
+ const srcPath = path.join(src, entry);
182
+ const destPath = path.join(dest, entry);
183
+ if (storage.isDirectorySync(srcPath)) {
184
+ copyDirRecursive(srcPath, destPath);
185
+ }
186
+ else {
187
+ const content = storage.readSync(srcPath);
188
+ if (content != null) {
189
+ storage.writeSync(destPath, content);
190
+ }
191
+ }
192
+ }
193
+ }
194
+ function ensureGitignored(projectDir, entry) {
195
+ const gitignorePath = path.join(projectDir, '.gitignore');
196
+ let existing = '';
197
+ if (storage.existsSync(gitignorePath)) {
198
+ existing = storage.readSync(gitignorePath) ?? '';
199
+ }
200
+ if (!existing.includes(entry)) {
201
+ const block = (existing && !existing.endsWith('\n') ? '\n' : '')
202
+ + '# Squad: local config (machine-specific, never commit)\n'
203
+ + entry + '\n';
204
+ storage.appendSync(gitignorePath, block);
205
+ }
206
+ }
207
+ //# sourceMappingURL=externalize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externalize.js","sourceRoot":"","sources":["../../../src/cli/commands/externalize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Loop command — prompt-driven continuous work loop.
3
+ *
4
+ * Reads a loop.md file (YAML frontmatter + prompt body) and runs it on a
5
+ * fixed interval without requiring GitHub issues. Think of it as Ralph in
6
+ * "free-run" mode: the prompt IS the work driver.
7
+ */
8
+ export interface LoopFrontmatter {
9
+ /**
10
+ * Onboarding-mode switch, not a safety gate.
11
+ * - `configured: false` (or missing) → run the onboarding flow
12
+ * - `configured: true` → run the normal loop flow
13
+ * Do not reintroduce an early-return guard based on this flag.
14
+ */
15
+ configured: boolean;
16
+ /** Minutes between cycles (default: 10). */
17
+ interval: number;
18
+ /** Max minutes per cycle (default: 30). */
19
+ timeout: number;
20
+ /** Human description shown in status output. */
21
+ description?: string;
22
+ }
23
+ export interface LoopConfig {
24
+ /** Path to loop file (default: loop.md in cwd). */
25
+ filePath?: string;
26
+ /** Override interval from frontmatter. */
27
+ interval?: number;
28
+ /** Override timeout from frontmatter. */
29
+ timeout?: number;
30
+ /** Extra flags passed to `gh copilot`. */
31
+ copilotFlags?: string;
32
+ /** Fully override the agent command (e.g., `gh copilot --yolo`). */
33
+ agentCmd?: string;
34
+ /** Capability overrides, keyed by capability name. */
35
+ capabilities: Record<string, boolean | Record<string, unknown>>;
36
+ }
37
+ /**
38
+ * Parse a loop.md string into validated frontmatter + prompt body.
39
+ *
40
+ * Frontmatter is the YAML block between the first two `---` delimiters.
41
+ * Only simple `key: value` pairs are supported — no yaml dependency needed.
42
+ */
43
+ export declare function parseLoopFile(content: string): {
44
+ frontmatter: LoopFrontmatter;
45
+ prompt: string;
46
+ };
47
+ /** Returns the content of a starter loop.md for --init. */
48
+ export declare function generateLoopFile(): string;
49
+ /**
50
+ * Run the loop command.
51
+ *
52
+ * @param dest - Working directory (typically process.cwd()).
53
+ * @param options - CLI-parsed config overrides.
54
+ */
55
+ export declare function runLoop(dest: string, options: LoopConfig): Promise<void>;
56
+ //# sourceMappingURL=loop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/loop.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqBH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACjE;AAID;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,WAAW,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAoD/F;AAID,2DAA2D;AAC3D,wBAAgB,gBAAgB,IAAI,MAAM,CAKzC;AAkID;;;;;GAKG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiM9E"}