my-dev-kit-orchestrator 0.2.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 (58) hide show
  1. package/README.md +206 -0
  2. package/dist/cli.d.ts +3 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +7 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/commands/init.d.ts +3 -0
  7. package/dist/commands/init.d.ts.map +1 -0
  8. package/dist/commands/init.js +59 -0
  9. package/dist/commands/init.js.map +1 -0
  10. package/dist/commands/list.d.ts +3 -0
  11. package/dist/commands/list.d.ts.map +1 -0
  12. package/dist/commands/list.js +101 -0
  13. package/dist/commands/list.js.map +1 -0
  14. package/dist/commands/prompt.d.ts +3 -0
  15. package/dist/commands/prompt.d.ts.map +1 -0
  16. package/dist/commands/prompt.js +122 -0
  17. package/dist/commands/prompt.js.map +1 -0
  18. package/dist/commands/start.d.ts +3 -0
  19. package/dist/commands/start.d.ts.map +1 -0
  20. package/dist/commands/start.js +75 -0
  21. package/dist/commands/start.js.map +1 -0
  22. package/dist/commands/status.d.ts +3 -0
  23. package/dist/commands/status.d.ts.map +1 -0
  24. package/dist/commands/status.js +120 -0
  25. package/dist/commands/status.js.map +1 -0
  26. package/dist/index.d.ts +4 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +9 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/program.d.ts +3 -0
  31. package/dist/program.d.ts.map +1 -0
  32. package/dist/program.js +27 -0
  33. package/dist/program.js.map +1 -0
  34. package/dist/promptGenerator.d.ts +4 -0
  35. package/dist/promptGenerator.d.ts.map +1 -0
  36. package/dist/promptGenerator.js +1332 -0
  37. package/dist/promptGenerator.js.map +1 -0
  38. package/dist/run.d.ts +26 -0
  39. package/dist/run.d.ts.map +1 -0
  40. package/dist/run.js +139 -0
  41. package/dist/run.js.map +1 -0
  42. package/dist/stageDetector.d.ts +18 -0
  43. package/dist/stageDetector.d.ts.map +1 -0
  44. package/dist/stageDetector.js +88 -0
  45. package/dist/stageDetector.js.map +1 -0
  46. package/dist/types.d.ts +11 -0
  47. package/dist/types.d.ts.map +1 -0
  48. package/dist/types.js +9 -0
  49. package/dist/types.js.map +1 -0
  50. package/dist/workflows.d.ts +15 -0
  51. package/dist/workflows.d.ts.map +1 -0
  52. package/dist/workflows.js +140 -0
  53. package/dist/workflows.js.map +1 -0
  54. package/dist/workspace.d.ts +13 -0
  55. package/dist/workspace.d.ts.map +1 -0
  56. package/dist/workspace.js +70 -0
  57. package/dist/workspace.js.map +1 -0
  58. package/package.json +44 -0
package/README.md ADDED
@@ -0,0 +1,206 @@
1
+ # my-dev-kit-orchestrator
2
+
3
+ `my-dev-kit-orchestrator` is a CLI-first workflow shell for design-first software development with coding agents.
4
+
5
+ It is for teams or individual developers who want a coding agent to work through a bounded sequence of design, pseudocode, testing, implementation, and verification steps instead of jumping straight from a raw request to code.
6
+
7
+ ## Capabilities
8
+
9
+ `v0.1.0` provided the workflow shell:
10
+
11
+ - a small CLI command surface
12
+ - five workflow modes: `feature`, `repair`, `test`, `refactor`, `harden`
13
+ - local run folders under `.my-dev-kit-orchestrator/runs/`
14
+ - stage-specific prompt generation
15
+ - plain-text prompt and artifact files
16
+ - simple stage advancement based on expected artifact file existence
17
+
18
+ `v0.2.0` added graph-guided architecture context support:
19
+
20
+ - architecture-context stage prompt now guides the coding agent through graph-guided context acquisition with `my-dev-kit`
21
+ - generated prompt includes the full retrieval sequence, retrieval evidence report template, and ArchitectureContextPacket template
22
+ - `status` command shows supporting report presence for the architecture-context stage
23
+ - stage progression remains based on required artifact presence only
24
+
25
+ The CLI owns workflow order and prompt generation. Each run advances as the expected artifact files appear on disk.
26
+
27
+ ## How it works with my-dev-kit
28
+
29
+ `my-dev-kit` and `my-dev-kit-orchestrator` have different responsibilities.
30
+
31
+ - `my-dev-kit` retrieves bounded project context through graph-guided architecture context workflows such as indexing, search, lookup, slice generation, source retrieval, and optional semantic inspection
32
+ - `my-dev-kit-orchestrator` organizes the staged design-to-code workflow after context acquisition
33
+ - the coding agent records retrieval evidence in `reports/architecture-context-retrieval-report.txt`
34
+ - the coding agent synthesizes that evidence into `artifacts/architecture-context-packet.txt`
35
+ - downstream stages consume the ArchitectureContextPacket rather than raw retrieval output
36
+
37
+ See [ARCHITECTURE.md](docs/ARCHITECTURE.md), [docs/WORKFLOWS.md](docs/WORKFLOWS.md), and [docs/ARTIFACTS.md](docs/ARTIFACTS.md) for the detailed design.
38
+
39
+ ## Non-goals for v0.1.0
40
+
41
+ Version `0.1.0` does not include:
42
+
43
+ - direct LLM execution
44
+ - automatic coding-agent execution
45
+ - automatic `my-dev-kit` command execution
46
+ - full JSON schema validation for artifacts
47
+ - automatic judge routing
48
+ - design-map generation
49
+ - extra low-level CLI commands beyond `init`, `start`, `status`, `prompt`, and `list`
50
+
51
+ Architecture-context prompts may suggest use of `my-dev-kit` when it is available, but `my-dev-kit-orchestrator` does not run `my-dev-kit` automatically.
52
+
53
+ ## Command surface
54
+
55
+ ```text
56
+ my-dev-kit-orchestrator init
57
+ my-dev-kit-orchestrator start "<request>"
58
+ my-dev-kit-orchestrator start --mode <feature|repair|test|refactor|harden> "<request>"
59
+ my-dev-kit-orchestrator status
60
+ my-dev-kit-orchestrator status --run <run-id>
61
+ my-dev-kit-orchestrator prompt
62
+ my-dev-kit-orchestrator prompt <stage>
63
+ my-dev-kit-orchestrator prompt <stage> --run <run-id>
64
+ my-dev-kit-orchestrator list
65
+ my-dev-kit-orchestrator list --mode <mode>
66
+ ```
67
+
68
+ Common flags:
69
+
70
+ - `--root <path>`: use a specific project root
71
+ - `--mode <mode>`: choose the workflow mode for `start`
72
+ - `--name <run-name>`: use a readable suffix in the run ID
73
+ - `--run <run-id>`: target a specific run for `status` or `prompt`
74
+ - `--output-dir <path>`: write runs outside the default workspace
75
+
76
+ ## Quick start
77
+
78
+ 1. Install dependencies and build the CLI:
79
+
80
+ ```bash
81
+ npm install
82
+ npm run build
83
+ ```
84
+
85
+ 2. Initialize the workspace in your project:
86
+
87
+ ```bash
88
+ node dist/cli.js init
89
+ ```
90
+
91
+ 3. Start a workflow run:
92
+
93
+ ```bash
94
+ node dist/cli.js start "add audit logging to the export command"
95
+ ```
96
+
97
+ 4. Print the next stage prompt:
98
+
99
+ ```bash
100
+ node dist/cli.js prompt
101
+ ```
102
+
103
+ 5. Paste the prompt into your coding tool of choice and save the returned artifact into the run folder.
104
+
105
+ 6. Continue stage by stage:
106
+
107
+ ```bash
108
+ node dist/cli.js status
109
+ node dist/cli.js prompt
110
+ node dist/cli.js list
111
+ ```
112
+
113
+ If you link the package locally, you can use the installed command directly:
114
+
115
+ ```bash
116
+ npm link
117
+ my-dev-kit-orchestrator --help
118
+ ```
119
+
120
+ ## Supported modes
121
+
122
+ ### `feature`
123
+
124
+ Use for new behavior or intentional behavior changes.
125
+
126
+ Stage order:
127
+ `request-brief -> architecture-context -> behavior-model -> pseudocode-packet -> test-strategy -> implementation -> test-implementation -> verification -> judge -> final-report`
128
+
129
+ ### `repair`
130
+
131
+ Use when observed behavior diverges from intended design.
132
+
133
+ Stage order:
134
+ `observed-behavior-report -> architecture-context -> behavior-trace -> divergence-report -> correction-design -> regression-test-strategy -> implementation -> test-implementation -> verification -> judge -> final-report`
135
+
136
+ ### `test`
137
+
138
+ Use for behavior-derived test design or test implementation for existing behavior.
139
+
140
+ Stage order:
141
+ `test-target-brief -> architecture-context -> behavior-reconstruction -> pseudocode-summary -> test-strategy -> test-implementation -> verification -> judge -> final-report`
142
+
143
+ ### `refactor`
144
+
145
+ Use for structure changes that must preserve behavior.
146
+
147
+ Stage order:
148
+ `refactor-brief -> architecture-context -> existing-behavior-map -> preserved-invariant-list -> compatibility-test-strategy -> refactor-pseudocode-packet -> implementation -> test-implementation -> verification -> judge -> final-report`
149
+
150
+ ### `harden`
151
+
152
+ Use for validation, guard, resilience, and failure-handling work.
153
+
154
+ Stage order:
155
+ `hardening-brief -> architecture-context -> assumption-report -> failure-mode-matrix -> guard-pseudocode-packet -> resilience-test-strategy -> implementation -> test-implementation -> verification -> judge -> final-report`
156
+
157
+ ## Run folder layout
158
+
159
+ Each run lives under `.my-dev-kit-orchestrator/runs/<run-id>/`.
160
+
161
+ ```text
162
+ .my-dev-kit-orchestrator/
163
+ config.json
164
+ runs/
165
+ <run-id>/
166
+ 00-request.txt
167
+ run.json
168
+ prompts/
169
+ artifacts/
170
+ reports/
171
+ ```
172
+
173
+ Key files and folders:
174
+
175
+ - `00-request.txt`: the original request passed to `start`
176
+ - `run.json`: run metadata, mode, and ordered stage definitions
177
+ - `prompts/`: generated stage prompt files such as `01-request-brief.prompt.txt`
178
+ - `artifacts/`: stage outputs such as `request-brief.txt` and `pseudocode-packet.txt`
179
+ - `reports/`: reserved run folder for report-oriented outputs and future expansion
180
+
181
+ The next stage is determined by the first expected artifact file that is missing for the current workflow.
182
+
183
+ ## Install, build, test
184
+
185
+ ```bash
186
+ npm install
187
+ npm run build
188
+ npx tsc --noEmit
189
+ npm test
190
+ ```
191
+
192
+ Optional local lint check:
193
+
194
+ ```bash
195
+ npm run lint
196
+ ```
197
+
198
+ ## Documentation
199
+
200
+ - [ARCHITECTURE.md](docs/ARCHITECTURE.md)
201
+ - [docs/USAGE.md](docs/USAGE.md)
202
+ - [docs/WORKFLOWS.md](docs/WORKFLOWS.md)
203
+ - [docs/ARTIFACTS.md](docs/ARTIFACTS.md)
204
+ - [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md)
205
+ - [CHANGELOG.md](CHANGELOG.md)
206
+ - [ROADMAP.md](docs/ROADMAP.md)
package/dist/cli.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
package/dist/cli.js ADDED
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const program_1 = require("./program");
5
+ const program = (0, program_1.createProgram)();
6
+ program.parse(process.argv);
7
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AACA,uCAA0C;AAE1C,MAAM,OAAO,GAAG,IAAA,uBAAa,GAAE,CAAC;AAChC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function makeInitCommand(): Command;
3
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,eAAe,IAAI,OAAO,CAmBzC"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.makeInitCommand = makeInitCommand;
37
+ const commander_1 = require("commander");
38
+ const path = __importStar(require("path"));
39
+ const workspace_1 = require("../workspace");
40
+ function makeInitCommand() {
41
+ const cmd = new commander_1.Command('init');
42
+ cmd
43
+ .description('Initialize the my-dev-kit-orchestrator workspace inside the current project')
44
+ .option('--root <path>', 'project root directory (default: current working directory)')
45
+ .action((options) => {
46
+ const projectRoot = path.resolve(options.root ?? process.cwd());
47
+ const alreadyExists = (0, workspace_1.workspaceExists)(projectRoot);
48
+ (0, workspace_1.initWorkspace)(projectRoot);
49
+ const wsDir = (0, workspace_1.getWorkspaceRoot)(projectRoot);
50
+ if (alreadyExists) {
51
+ console.log(`Workspace already initialized at:\n${wsDir}`);
52
+ }
53
+ else {
54
+ console.log(`Initialized my-dev-kit-orchestrator workspace.\n\nWorkspace:\n${wsDir}\n\nNext:\n my-dev-kit-orchestrator start "<software change request>"`);
55
+ }
56
+ });
57
+ return cmd;
58
+ }
59
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,0CAmBC;AAvBD,yCAAoC;AACpC,2CAA6B;AAC7B,4CAAgF;AAEhF,SAAgB,eAAe;IAC7B,MAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC,CAAC;IAChC,GAAG;SACA,WAAW,CAAC,6EAA6E,CAAC;SAC1F,MAAM,CAAC,eAAe,EAAE,6DAA6D,CAAC;SACtF,MAAM,CAAC,CAAC,OAA0B,EAAE,EAAE;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChE,MAAM,aAAa,GAAG,IAAA,2BAAe,EAAC,WAAW,CAAC,CAAC;QAEnD,IAAA,yBAAa,EAAC,WAAW,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,IAAA,4BAAgB,EAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,iEAAiE,KAAK,wEAAwE,CAAC,CAAC;QAC9J,CAAC;IACH,CAAC,CAAC,CAAC;IACL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function makeListCommand(): Command;
3
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,eAAe,IAAI,OAAO,CAgEzC"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.makeListCommand = makeListCommand;
37
+ const commander_1 = require("commander");
38
+ const path = __importStar(require("path"));
39
+ const types_1 = require("../types");
40
+ const run_1 = require("../run");
41
+ const stageDetector_1 = require("../stageDetector");
42
+ function makeListCommand() {
43
+ const cmd = new commander_1.Command('list');
44
+ cmd
45
+ .description('List previous workflow runs')
46
+ .option('--mode <mode>', `filter by workflow mode (${types_1.VALID_MODES.join(' | ')})`)
47
+ .option('--root <path>', 'project root directory (default: current working directory)')
48
+ .action((options) => {
49
+ if (options.mode !== undefined && !(0, types_1.isValidMode)(options.mode)) {
50
+ console.error(`Error: invalid mode "${options.mode}". Allowed values: ${types_1.VALID_MODES.join(', ')}`);
51
+ process.exit(1);
52
+ }
53
+ const projectRoot = path.resolve(options.root ?? process.cwd());
54
+ const folders = (0, run_1.listRunFolders)(projectRoot);
55
+ if (folders.length === 0) {
56
+ console.log('No runs found.\n\nNext:\n my-dev-kit-orchestrator start "<software change request>"');
57
+ return;
58
+ }
59
+ const runs = folders
60
+ .map((folder) => {
61
+ try {
62
+ return (0, run_1.loadRun)(folder);
63
+ }
64
+ catch {
65
+ return null;
66
+ }
67
+ })
68
+ .filter((r) => r !== null);
69
+ const filtered = options.mode
70
+ ? runs.filter((r) => r.mode === options.mode)
71
+ : runs;
72
+ if (filtered.length === 0) {
73
+ console.log(`No runs found for mode: ${options.mode}`);
74
+ return;
75
+ }
76
+ const lines = [];
77
+ for (const meta of filtered) {
78
+ if (!meta)
79
+ continue;
80
+ const nextStage = (0, stageDetector_1.getNextStage)(meta);
81
+ const requestLabel = meta.request.length > 60
82
+ ? meta.request.slice(0, 57) + '...'
83
+ : meta.request;
84
+ const status = nextStage ? 'in_progress' : 'complete';
85
+ const currentStage = nextStage ? nextStage.name : '(complete)';
86
+ lines.push(`─────────────────────────────────────────────`);
87
+ lines.push(`Run ID: ${meta.runId}`);
88
+ lines.push(`Mode: ${meta.mode}`);
89
+ lines.push(`Request: ${requestLabel}`);
90
+ lines.push(`Status: ${status}`);
91
+ lines.push(`Created: ${meta.createdAt}`);
92
+ lines.push(`Next stage: ${currentStage}`);
93
+ lines.push(`Run folder: ${meta.runFolder}`);
94
+ }
95
+ lines.push(`─────────────────────────────────────────────`);
96
+ lines.push(`Total: ${filtered.length} run(s)`);
97
+ console.log(lines.join('\n'));
98
+ });
99
+ return cmd;
100
+ }
101
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function makePromptCommand(): Command;
3
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/commands/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,iBAAiB,IAAI,OAAO,CAmF3C"}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.makePromptCommand = makePromptCommand;
37
+ const commander_1 = require("commander");
38
+ const path = __importStar(require("path"));
39
+ const fs = __importStar(require("fs"));
40
+ const run_1 = require("../run");
41
+ const promptGenerator_1 = require("../promptGenerator");
42
+ const stageDetector_1 = require("../stageDetector");
43
+ function makePromptCommand() {
44
+ const cmd = new commander_1.Command('prompt');
45
+ cmd
46
+ .description('Print the next stage prompt for the active or selected run')
47
+ .argument('[stage]', 'specific stage name in lowercase kebab-case (optional)')
48
+ .option('--run <run-id>', 'select a specific workflow run by ID')
49
+ .option('--root <path>', 'project root directory (default: current working directory)')
50
+ .action((stage, options) => {
51
+ const projectRoot = path.resolve(options.root ?? process.cwd());
52
+ let meta;
53
+ if (options.run) {
54
+ const runFolder = (0, run_1.getRunFolder)(projectRoot, options.run);
55
+ if (!fs.existsSync(runFolder)) {
56
+ console.error(`Error: run not found: ${options.run}`);
57
+ process.exit(1);
58
+ }
59
+ try {
60
+ meta = (0, run_1.loadRun)(runFolder);
61
+ }
62
+ catch {
63
+ console.error(`Error: could not load run: ${options.run}`);
64
+ process.exit(1);
65
+ }
66
+ }
67
+ else {
68
+ meta = (0, run_1.getMostRecentRun)(projectRoot);
69
+ if (!meta) {
70
+ console.error('No runs found. Run: my-dev-kit-orchestrator start "<request>"');
71
+ process.exit(1);
72
+ }
73
+ }
74
+ if (stage) {
75
+ const stageExists = meta.stages.some((s) => s.name === stage);
76
+ if (!stageExists) {
77
+ const available = meta.stages.map((s) => s.name).join(', ');
78
+ console.error(`Error: stage "${stage}" does not exist in ${meta.mode} workflow.\nAvailable stages: ${available}`);
79
+ process.exit(1);
80
+ }
81
+ const missingPrior = (0, stageDetector_1.getMissingPriorArtifacts)(meta, stage);
82
+ if (missingPrior.length > 0) {
83
+ console.error(`Warning: the following required prior artifacts are missing:\n` +
84
+ missingPrior.map((f) => ` - ${f}`).join('\n') +
85
+ `\n\nReturn to the stage that produces the missing artifact before continuing.\n` +
86
+ `Next missing stage: ${(0, stageDetector_1.getNextStage)(meta)?.name ?? 'none'}`);
87
+ process.exit(1);
88
+ }
89
+ try {
90
+ const promptText = (0, promptGenerator_1.generateStagePrompt)(meta, stage);
91
+ process.stdout.write(promptText);
92
+ }
93
+ catch (err) {
94
+ console.error(`Error generating prompt: ${err.message}`);
95
+ process.exit(1);
96
+ }
97
+ }
98
+ else {
99
+ if ((0, stageDetector_1.isRunComplete)(meta)) {
100
+ console.log(`Run ${meta.runId} is complete — all expected artifacts are present.\n\n` +
101
+ `To view the final report:\n ${path.join(meta.runFolder, 'artifacts/final-report.txt')}\n\n` +
102
+ `To inspect run status:\n my-dev-kit-orchestrator status`);
103
+ return;
104
+ }
105
+ const nextStage = (0, stageDetector_1.getNextStage)(meta);
106
+ if (!nextStage) {
107
+ console.log('No missing stage artifact remains.');
108
+ return;
109
+ }
110
+ try {
111
+ const promptText = (0, promptGenerator_1.generateStagePrompt)(meta, nextStage.name);
112
+ process.stdout.write(promptText);
113
+ }
114
+ catch (err) {
115
+ console.error(`Error generating prompt: ${err.message}`);
116
+ process.exit(1);
117
+ }
118
+ }
119
+ });
120
+ return cmd;
121
+ }
122
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/commands/prompt.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,8CAmFC;AA1FD,yCAAoC;AACpC,2CAA6B;AAC7B,uCAAyB;AACzB,gCAAiE;AACjE,wDAAyD;AACzD,oDAAyF;AAEzF,SAAgB,iBAAiB;IAC/B,MAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG;SACA,WAAW,CAAC,4DAA4D,CAAC;SACzE,QAAQ,CAAC,SAAS,EAAE,wDAAwD,CAAC;SAC7E,MAAM,CAAC,gBAAgB,EAAE,sCAAsC,CAAC;SAChE,MAAM,CAAC,eAAe,EAAE,6DAA6D,CAAC;SACtF,MAAM,CAAC,CAAC,KAAyB,EAAE,OAAwC,EAAE,EAAE;QAC9E,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAEhE,IAAI,IAAI,CAAC;QACT,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,SAAS,GAAG,IAAA,kBAAY,EAAC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,yBAAyB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,8BAA8B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAA,sBAAgB,EAAC,WAAW,CAAC,CAAC;YACrC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;gBAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;YAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5D,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,uBAAuB,IAAI,CAAC,IAAI,iCAAiC,SAAS,EAAE,CAAC,CAAC;gBAClH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,YAAY,GAAG,IAAA,wCAAwB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC3D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,KAAK,CACX,gEAAgE;oBAChE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC9C,iFAAiF;oBACjF,uBAAuB,IAAA,4BAAY,EAAC,IAAI,CAAC,EAAE,IAAI,IAAI,MAAM,EAAE,CAC5D,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,IAAA,qCAAmB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,4BAA6B,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,IAAA,6BAAa,EAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CACT,OAAO,IAAI,CAAC,KAAK,wDAAwD;oBACzE,gCAAgC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,MAAM;oBAC7F,0DAA0D,CAC3D,CAAC;gBACF,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAA,4BAAY,EAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;gBAClD,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,IAAA,qCAAmB,EAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,4BAA6B,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function makeStartCommand(): Command;
3
+ //# sourceMappingURL=start.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,gBAAgB,IAAI,OAAO,CAoC1C"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.makeStartCommand = makeStartCommand;
37
+ const commander_1 = require("commander");
38
+ const path = __importStar(require("path"));
39
+ const types_1 = require("../types");
40
+ const run_1 = require("../run");
41
+ const workspace_1 = require("../workspace");
42
+ function makeStartCommand() {
43
+ const cmd = new commander_1.Command('start');
44
+ cmd
45
+ .description('Start a new workflow run')
46
+ .argument('<request>', 'the software change request or description')
47
+ .option('--mode <mode>', `workflow mode (${types_1.VALID_MODES.join(' | ')})`, 'feature')
48
+ .option('--root <path>', 'project root directory (default: current working directory)')
49
+ .option('--name <run-name>', 'readable name to include in the run ID')
50
+ .option('--output-dir <path>', 'custom run output directory')
51
+ .action((request, options) => {
52
+ if (!(0, types_1.isValidMode)(options.mode)) {
53
+ console.error(`Error: invalid mode "${options.mode}". Allowed values: ${types_1.VALID_MODES.join(', ')}`);
54
+ process.exit(1);
55
+ }
56
+ const projectRoot = path.resolve(options.root ?? process.cwd());
57
+ (0, workspace_1.initWorkspace)(projectRoot);
58
+ try {
59
+ const meta = (0, run_1.createRun)({
60
+ request,
61
+ mode: options.mode,
62
+ projectRoot,
63
+ name: options.name,
64
+ outputDir: options.outputDir ? path.resolve(options.outputDir) : undefined,
65
+ });
66
+ console.log(`Created workflow run:\n${meta.runFolder}\n\nMode:\n${meta.mode}\n\nNext:\n my-dev-kit-orchestrator prompt`);
67
+ }
68
+ catch (err) {
69
+ console.error(`Error: ${err.message}`);
70
+ process.exit(1);
71
+ }
72
+ });
73
+ return cmd;
74
+ }
75
+ //# sourceMappingURL=start.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,4CAoCC;AA1CD,yCAAoC;AACpC,2CAA6B;AAC7B,oCAAoD;AACpD,gCAAmC;AACnC,4CAA6C;AAE7C,SAAgB,gBAAgB;IAC9B,MAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC,CAAC;IACjC,GAAG;SACA,WAAW,CAAC,0BAA0B,CAAC;SACvC,QAAQ,CAAC,WAAW,EAAE,4CAA4C,CAAC;SACnE,MAAM,CAAC,eAAe,EAAE,kBAAkB,mBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC;SAChF,MAAM,CAAC,eAAe,EAAE,6DAA6D,CAAC;SACtF,MAAM,CAAC,mBAAmB,EAAE,wCAAwC,CAAC;SACrE,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,CAAC,OAAe,EAAE,OAA2E,EAAE,EAAE;QACvG,IAAI,CAAC,IAAA,mBAAW,EAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,sBAAsB,mBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChE,IAAA,yBAAa,EAAC,WAAW,CAAC,CAAC;QAE3B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAA,eAAS,EAAC;gBACrB,OAAO;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,WAAW;gBACX,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;aAC3E,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CACT,0BAA0B,IAAI,CAAC,SAAS,cAAc,IAAI,CAAC,IAAI,6CAA6C,CAC7G,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function makeStatusCommand(): Command;
3
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,iBAAiB,IAAI,OAAO,CA+E3C"}