@slowcook-ai/cli 0.19.5 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/README.md +192 -28
  2. package/dist/cli.js +65 -73
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/brew/fidelity-loop.d.ts +71 -0
  5. package/dist/commands/brew/fidelity-loop.d.ts.map +1 -0
  6. package/dist/commands/brew/fidelity-loop.js +108 -0
  7. package/dist/commands/brew/fidelity-loop.js.map +1 -0
  8. package/dist/commands/brew/fidelity-phase.d.ts +49 -0
  9. package/dist/commands/brew/fidelity-phase.d.ts.map +1 -0
  10. package/dist/commands/brew/fidelity-phase.js +75 -0
  11. package/dist/commands/brew/fidelity-phase.js.map +1 -0
  12. package/dist/commands/eye/index.d.ts +2 -0
  13. package/dist/commands/eye/index.d.ts.map +1 -0
  14. package/dist/commands/eye/index.js +64 -0
  15. package/dist/commands/eye/index.js.map +1 -0
  16. package/dist/commands/eye/plan.d.ts +61 -0
  17. package/dist/commands/eye/plan.d.ts.map +1 -0
  18. package/dist/commands/eye/plan.js +81 -0
  19. package/dist/commands/eye/plan.js.map +1 -0
  20. package/dist/commands/eye/run.d.ts +19 -0
  21. package/dist/commands/eye/run.d.ts.map +1 -0
  22. package/dist/commands/eye/run.js +47 -0
  23. package/dist/commands/eye/run.js.map +1 -0
  24. package/dist/commands/eye/spec-modes.d.ts +5 -0
  25. package/dist/commands/eye/spec-modes.d.ts.map +1 -0
  26. package/dist/commands/eye/spec-modes.js +36 -0
  27. package/dist/commands/eye/spec-modes.js.map +1 -0
  28. package/dist/commands/gate/github.d.ts +27 -0
  29. package/dist/commands/gate/github.d.ts.map +1 -0
  30. package/dist/commands/gate/github.js +46 -0
  31. package/dist/commands/gate/github.js.map +1 -0
  32. package/dist/commands/gate/index.d.ts +2 -0
  33. package/dist/commands/gate/index.d.ts.map +1 -0
  34. package/dist/commands/gate/index.js +68 -0
  35. package/dist/commands/gate/index.js.map +1 -0
  36. package/dist/commands/gate/model.d.ts +55 -0
  37. package/dist/commands/gate/model.d.ts.map +1 -0
  38. package/dist/commands/gate/model.js +64 -0
  39. package/dist/commands/gate/model.js.map +1 -0
  40. package/dist/commands/gate/reviewers.d.ts +24 -0
  41. package/dist/commands/gate/reviewers.d.ts.map +1 -0
  42. package/dist/commands/gate/reviewers.js +69 -0
  43. package/dist/commands/gate/reviewers.js.map +1 -0
  44. package/dist/commands/recon/shape-preserve.d.ts +38 -0
  45. package/dist/commands/recon/shape-preserve.d.ts.map +1 -1
  46. package/dist/commands/recon/shape-preserve.js +112 -1
  47. package/dist/commands/recon/shape-preserve.js.map +1 -1
  48. package/dist/commands/refine/spec-yaml.d.ts +3 -0
  49. package/dist/commands/refine/spec-yaml.d.ts.map +1 -1
  50. package/dist/commands/refine/spec-yaml.js +4 -0
  51. package/dist/commands/refine/spec-yaml.js.map +1 -1
  52. package/dist/commands/serve/config.d.ts +159 -0
  53. package/dist/commands/serve/config.d.ts.map +1 -0
  54. package/dist/commands/serve/config.js +216 -0
  55. package/dist/commands/serve/config.js.map +1 -0
  56. package/dist/commands/serve/detect.d.ts +31 -0
  57. package/dist/commands/serve/detect.d.ts.map +1 -0
  58. package/dist/commands/serve/detect.js +56 -0
  59. package/dist/commands/serve/detect.js.map +1 -0
  60. package/dist/commands/serve/dev.d.ts +46 -0
  61. package/dist/commands/serve/dev.d.ts.map +1 -0
  62. package/dist/commands/serve/dev.js +122 -0
  63. package/dist/commands/serve/dev.js.map +1 -0
  64. package/dist/commands/serve/index.d.ts +28 -0
  65. package/dist/commands/serve/index.d.ts.map +1 -0
  66. package/dist/commands/serve/index.js +224 -0
  67. package/dist/commands/serve/index.js.map +1 -0
  68. package/dist/commands/serve/mock.d.ts +24 -0
  69. package/dist/commands/serve/mock.d.ts.map +1 -0
  70. package/dist/commands/serve/mock.js +111 -0
  71. package/dist/commands/serve/mock.js.map +1 -0
  72. package/dist/commands/serve/runner.d.ts +52 -0
  73. package/dist/commands/serve/runner.d.ts.map +1 -0
  74. package/dist/commands/serve/runner.js +53 -0
  75. package/dist/commands/serve/runner.js.map +1 -0
  76. package/dist/commands/serve/staging.d.ts +28 -0
  77. package/dist/commands/serve/staging.d.ts.map +1 -0
  78. package/dist/commands/serve/staging.js +152 -0
  79. package/dist/commands/serve/staging.js.map +1 -0
  80. package/dist/commands/stories/index.d.ts +15 -0
  81. package/dist/commands/stories/index.d.ts.map +1 -0
  82. package/dist/commands/stories/index.js +280 -0
  83. package/dist/commands/stories/index.js.map +1 -0
  84. package/dist/commands/stories/status.d.ts +74 -0
  85. package/dist/commands/stories/status.d.ts.map +1 -0
  86. package/dist/commands/stories/status.js +176 -0
  87. package/dist/commands/stories/status.js.map +1 -0
  88. package/dist/commands/upsert-agent-docs.d.ts.map +1 -1
  89. package/dist/commands/upsert-agent-docs.js +12 -0
  90. package/dist/commands/upsert-agent-docs.js.map +1 -1
  91. package/dist/commands.manifest.d.ts +37 -0
  92. package/dist/commands.manifest.d.ts.map +1 -0
  93. package/dist/commands.manifest.js +301 -0
  94. package/dist/commands.manifest.js.map +1 -0
  95. package/dist/help.d.ts +43 -0
  96. package/dist/help.d.ts.map +1 -0
  97. package/dist/help.js +131 -0
  98. package/dist/help.js.map +1 -0
  99. package/package.json +8 -6
package/dist/help.js ADDED
@@ -0,0 +1,131 @@
1
+ /**
2
+ * `packages/cli/src/help.ts` — render the command manifest into the
3
+ * two surfaces consumers see:
4
+ *
5
+ * 1. `slowcook help` — plain-text terminal output (what `cli.ts` emits)
6
+ * 2. README catalog block — markdown spliced into packages/cli/README.md
7
+ *
8
+ * Both come from `COMMANDS` in `./commands.manifest.ts`. Adding a
9
+ * command in one place updates both surfaces.
10
+ */
11
+ import { visibleCommands, findCommand } from "./commands.manifest.js";
12
+ const GROUP_ORDER = [
13
+ "pipeline",
14
+ "checks",
15
+ "plumbing",
16
+ "knowledge",
17
+ "ops",
18
+ "experimental",
19
+ ];
20
+ const GROUP_LABELS = {
21
+ pipeline: "Pipeline (agent-driven)",
22
+ checks: "Checks + guards",
23
+ plumbing: "Setup + lifecycle plumbing",
24
+ knowledge: "Knowledge + accounting",
25
+ ops: "Ops (preview, dev-env, etc.)",
26
+ experimental: "Experimental",
27
+ };
28
+ function statusBadge(status) {
29
+ switch (status) {
30
+ case "alpha": return " [alpha]";
31
+ case "experimental": return " [experimental]";
32
+ case "deprecated": return " [DEPRECATED]";
33
+ case "stable":
34
+ case undefined:
35
+ default: return "";
36
+ }
37
+ }
38
+ function groupBy(cmds) {
39
+ const out = {
40
+ pipeline: [], checks: [], plumbing: [], knowledge: [], ops: [], experimental: [],
41
+ };
42
+ for (const c of cmds)
43
+ out[c.group].push(c);
44
+ return out;
45
+ }
46
+ /**
47
+ * Plain-text help block for `slowcook help`.
48
+ *
49
+ * Format (preserves the existing 0.19 shape — backward compat with any
50
+ * tool that greps `slowcook help` output):
51
+ *
52
+ * slowcook — TDD-first agentic development harness
53
+ *
54
+ * Usage:
55
+ * <usage lines>
56
+ *
57
+ * Commands available in <version>:
58
+ * <name> <description>
59
+ *
60
+ * Docs: https://github.com/aminazar/slowcook
61
+ */
62
+ export function renderHelp(version) {
63
+ const cmds = visibleCommands();
64
+ const usageLines = cmds.map((c) => ` ${c.usage}`).join("\n");
65
+ // Description block: align names in a column. Longest visible name width.
66
+ const nameWidth = Math.max(...cmds.map((c) => c.name.length)) + 2;
67
+ const descLines = cmds
68
+ .map((c) => ` ${c.name.padEnd(nameWidth)}${c.description}${statusBadge(c.status)}`)
69
+ .join("\n");
70
+ return `
71
+ slowcook — TDD-first agentic development harness
72
+
73
+ Usage:
74
+ ${usageLines}
75
+
76
+ Commands available in ${version}:
77
+ ${descLines}
78
+
79
+ For per-command details: slowcook help <command> or slowcook <command> --help
80
+
81
+ Docs: https://github.com/aminazar/slowcook
82
+ `;
83
+ }
84
+ /**
85
+ * Per-command help (shown by `slowcook help <cmd>` or future
86
+ * standardized `slowcook <cmd> --help` shims). Returns `undefined`
87
+ * if the name is unknown so the caller can decide on the fallback.
88
+ */
89
+ export function renderCommandHelp(nameOrAlias) {
90
+ const cmd = findCommand(nameOrAlias);
91
+ if (!cmd)
92
+ return undefined;
93
+ const aliases = cmd.aliases?.length ? `\nAliases: ${cmd.aliases.join(", ")}` : "";
94
+ return `
95
+ slowcook ${cmd.name}${statusBadge(cmd.status)}
96
+
97
+ ${cmd.description}
98
+
99
+ Usage:
100
+ ${cmd.usage}${aliases}
101
+
102
+ Group: ${GROUP_LABELS[cmd.group]}
103
+ `;
104
+ }
105
+ /**
106
+ * Markdown catalog block spliced into packages/cli/README.md between
107
+ * `<!-- COMMANDS BLOCK BEGIN -->` and `<!-- COMMANDS BLOCK END -->` by
108
+ * `scripts/sync-readme-help.sh`.
109
+ *
110
+ * Grouped by `CommandGroup`; one bullet per command with name + usage
111
+ * + description. Hidden commands (version, help) excluded.
112
+ */
113
+ export function renderReadmeBlock() {
114
+ const grouped = groupBy(visibleCommands());
115
+ const sections = [];
116
+ for (const g of GROUP_ORDER) {
117
+ const entries = grouped[g];
118
+ if (entries.length === 0)
119
+ continue;
120
+ sections.push(`### ${GROUP_LABELS[g]}\n`);
121
+ for (const c of entries) {
122
+ sections.push(`- **\`${c.name}\`**${statusBadge(c.status)} — ${c.description}`);
123
+ sections.push(` \`\`\``);
124
+ sections.push(` ${c.usage}`);
125
+ sections.push(` \`\`\``);
126
+ }
127
+ sections.push("");
128
+ }
129
+ return sections.join("\n");
130
+ }
131
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slowcook-ai/cli",
3
- "version": "0.19.5",
3
+ "version": "0.20.0",
4
4
  "description": "CLI for the slowcook brewing harness",
5
5
  "license": "MIT",
6
6
  "author": "aminazar",
@@ -35,17 +35,19 @@
35
35
  "AGENTS.md"
36
36
  ],
37
37
  "dependencies": {
38
- "@anthropic-ai/sdk": "^0.98.0",
38
+ "@anthropic-ai/sdk": "^0.100.1",
39
39
  "@octokit/rest": "^22.0.1",
40
+ "@playwright/test": "^1.40.0",
40
41
  "ts-morph": "^28.0.0",
41
42
  "yaml": "^2.9.0",
42
43
  "zod": "^4.4.3",
43
44
  "@slowcook-ai/core": "^0.14.0",
44
45
  "@slowcook-ai/stack-ts": "^0.9.9",
45
- "@slowcook-ai/forge-github": "^0.12.3",
46
- "@slowcook-ai/llm-anthropic": "^0.16.3",
47
- "@slowcook-ai/review-overlay": "^0.5.5",
48
- "@slowcook-ai/recorder": "^0.9.1"
46
+ "@slowcook-ai/forge-github": "^0.13.0",
47
+ "@slowcook-ai/llm-anthropic": "^0.17.0",
48
+ "@slowcook-ai/recorder": "^0.9.1",
49
+ "@slowcook-ai/gates": "^0.11.0",
50
+ "@slowcook-ai/review-overlay": "^0.5.5"
49
51
  },
50
52
  "devDependencies": {
51
53
  "@types/node": "^25.9.1"