millhouse 0.1.0 → 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.
- package/README.md +40 -27
- package/dist/analysis/issue-analyzer.d.ts.map +1 -1
- package/dist/analysis/issue-analyzer.js +3 -35
- package/dist/analysis/issue-analyzer.js.map +1 -1
- package/dist/analysis/plan-parser.d.ts.map +1 -1
- package/dist/analysis/plan-parser.js +3 -46
- package/dist/analysis/plan-parser.js.map +1 -1
- package/dist/cli/commands/run.d.ts +1 -0
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +4 -0
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/core/orchestrator.d.ts +5 -0
- package/dist/core/orchestrator.d.ts.map +1 -1
- package/dist/core/orchestrator.js +61 -1
- package/dist/core/orchestrator.js.map +1 -1
- package/dist/execution/claude-runner.d.ts +2 -2
- package/dist/execution/claude-runner.d.ts.map +1 -1
- package/dist/execution/claude-runner.js +17 -51
- package/dist/execution/claude-runner.js.map +1 -1
- package/dist/execution/project-scanner.d.ts +9 -0
- package/dist/execution/project-scanner.d.ts.map +1 -0
- package/dist/execution/project-scanner.js +41 -0
- package/dist/execution/project-scanner.js.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/template-loader.d.ts +6 -0
- package/dist/utils/template-loader.d.ts.map +1 -0
- package/dist/utils/template-loader.js +34 -0
- package/dist/utils/template-loader.js.map +1 -0
- package/package.json +3 -2
- package/prompts/implementation.prompt.md +159 -0
- package/prompts/issue-analysis.prompt.md +34 -0
- package/prompts/plan-analysis.prompt.md +45 -0
- package/prompts/project-scan.prompt.md +33 -0
package/README.md
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
# Millhouse
|
|
2
2
|
|
|
3
|
+
<div>
|
|
4
|
+
<img src="millhouse.jpg" alt="Millhouse">
|
|
5
|
+
<p align="right"><sub><a href="https://www.reddit.com/r/simpsonsshitposting/s/ZB5cDcwnqU">Unedited artwork</a> by <a href="https://www.shlives.net/">shlives</a></sub></p>
|
|
6
|
+
</div>
|
|
7
|
+
|
|
3
8
|
Millhouse orchestrates parallel Claude Code instances to automatically implement work items. It supports two modes:
|
|
4
9
|
|
|
5
|
-
- **GitHub Mode:** Point it at GitHub issues and it discovers related issues, analyzes dependencies, and creates a PR with all changes
|
|
6
|
-
- **Plan Mode:** Give it any plan file (markdown, text) and it breaks it into work items automatically
|
|
10
|
+
- **GitHub Mode:** Point it at GitHub issues and it discovers related issues, analyzes dependencies, executes and creates a PR with all changes.
|
|
11
|
+
- **Plan Mode:** Give it any plan file (markdown, text) and it breaks it into work items automatically, analyzes dependencies and executes.
|
|
7
12
|
|
|
8
13
|
In both modes, Millhouse executes work items in parallel where possible, respecting dependency order.
|
|
9
14
|
|
|
@@ -18,7 +23,6 @@ In Claude Code:
|
|
|
18
23
|
... then exit Claude Code and run at the command line:
|
|
19
24
|
```bash
|
|
20
25
|
millhouse run # Execute the most recent plan
|
|
21
|
-
millhouse run plan.md # Execute a specific plan file
|
|
22
26
|
```
|
|
23
27
|
|
|
24
28
|
### GitHub Issues Mode
|
|
@@ -32,7 +36,18 @@ In Claude Code:
|
|
|
32
36
|
```bash
|
|
33
37
|
millhouse run issues # Run all open GitHub issues
|
|
34
38
|
millhouse run issues 5 # Run issue #5 and linked issues
|
|
35
|
-
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Installation
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npm install -g millhouse
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Then install the `/millhouse` slash command for Claude Code:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
millhouse setup --global
|
|
36
51
|
```
|
|
37
52
|
|
|
38
53
|
## Slash Commands
|
|
@@ -56,7 +71,7 @@ This transforms your plan to have:
|
|
|
56
71
|
|
|
57
72
|
### /millhouse issues
|
|
58
73
|
|
|
59
|
-
Creates GitHub issues from a plan.
|
|
74
|
+
Creates GitHub issues from a plan. Remember to first run `/millhouse plan` to get the plan optimized for running with millhouse.
|
|
60
75
|
|
|
61
76
|
```
|
|
62
77
|
/millhouse issues # Create issues from the current plan
|
|
@@ -65,6 +80,16 @@ Creates GitHub issues from a plan. Use this for GitHub mode.
|
|
|
65
80
|
|
|
66
81
|
## How It Works
|
|
67
82
|
|
|
83
|
+
### Project Scanning
|
|
84
|
+
|
|
85
|
+
Before workers start, Millhouse scans your project with Claude to generate a comprehensive summary including:
|
|
86
|
+
- Project structure and architecture
|
|
87
|
+
- Key files and what they do
|
|
88
|
+
- Coding conventions and patterns
|
|
89
|
+
- Build system and dependencies
|
|
90
|
+
|
|
91
|
+
This summary is passed to each worker, giving them essential context even if your project lacks documentation. Use `--no-scan` to skip this step for projects with comprehensive docs.
|
|
92
|
+
|
|
68
93
|
### Dependency Analysis
|
|
69
94
|
|
|
70
95
|
When you run millhouse, it sends your work items to Claude to analyze dependencies. It understands:
|
|
@@ -113,19 +138,20 @@ millhouse run issues 5 # Run issue #5 and linked issues
|
|
|
113
138
|
millhouse run issues 1,2,3 # Run these issues and linked issues
|
|
114
139
|
|
|
115
140
|
# Options (work with both modes)
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
141
|
+
--dry-run # Preview without executing
|
|
142
|
+
--no-scan # Skip project scanning (see below)
|
|
143
|
+
-n 16 # Set parallel workers (default: 8)
|
|
144
|
+
-d detailed # Start in detailed view (default: compact)
|
|
145
|
+
--dangerously-skip-permissions # Unattended execution
|
|
120
146
|
```
|
|
121
147
|
|
|
122
148
|
### Other Commands
|
|
123
149
|
|
|
124
150
|
```bash
|
|
125
|
-
millhouse status
|
|
126
|
-
millhouse status --run-id X
|
|
127
|
-
millhouse resume <run-id>
|
|
128
|
-
millhouse clean
|
|
151
|
+
millhouse status # Show all runs
|
|
152
|
+
millhouse status --run-id X # Show specific run
|
|
153
|
+
millhouse resume <run-id> # Resume interrupted run
|
|
154
|
+
millhouse clean # Clean up leftover state
|
|
129
155
|
```
|
|
130
156
|
|
|
131
157
|
## Writing Good Plans
|
|
@@ -164,18 +190,6 @@ Run `npm run build` - should compile without errors.
|
|
|
164
190
|
- [ ] TypeScript compiles with strict mode
|
|
165
191
|
```
|
|
166
192
|
|
|
167
|
-
## Installation
|
|
168
|
-
|
|
169
|
-
```bash
|
|
170
|
-
npm install -g millhouse
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
Then install the `/millhouse` slash command for Claude Code:
|
|
174
|
-
|
|
175
|
-
```bash
|
|
176
|
-
millhouse setup --global
|
|
177
|
-
```
|
|
178
|
-
|
|
179
193
|
### Development Install
|
|
180
194
|
|
|
181
195
|
If you want to contribute or modify millhouse:
|
|
@@ -188,7 +202,6 @@ npm run build
|
|
|
188
202
|
npm link
|
|
189
203
|
```
|
|
190
204
|
|
|
191
|
-
|
|
192
205
|
## Prerequisites
|
|
193
206
|
|
|
194
207
|
- Node.js 20+
|
|
@@ -235,7 +248,7 @@ Millhouse automatically manages labels to show progress:
|
|
|
235
248
|
|
|
236
249
|
## Troubleshooting
|
|
237
250
|
|
|
238
|
-
**Worktree errors after interrupted run
|
|
251
|
+
**Worktree errors after interrupted run?**
|
|
239
252
|
```bash
|
|
240
253
|
millhouse clean
|
|
241
254
|
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue-analyzer.d.ts","sourceRoot":"","sources":["../../src/analysis/issue-analyzer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"issue-analyzer.d.ts","sourceRoot":"","sources":["../../src/analysis/issue-analyzer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG9D,qBAAa,aAAa;IACxB;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAwFpE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAa7B"}
|
|
@@ -1,39 +1,6 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { query } from '@anthropic-ai/claude-code';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
## Issues to Analyze
|
|
6
|
-
|
|
7
|
-
{{issuesList}}
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Your Task
|
|
12
|
-
|
|
13
|
-
Analyze each issue and determine:
|
|
14
|
-
1. **dependencies**: Which issues MUST be completed BEFORE this issue can start
|
|
15
|
-
2. **affectedPaths**: File paths this issue will likely create or modify
|
|
16
|
-
|
|
17
|
-
Respond with ONLY a JSON array (no markdown, no explanation):
|
|
18
|
-
[
|
|
19
|
-
{
|
|
20
|
-
"issueNumber": 1,
|
|
21
|
-
"dependencies": [],
|
|
22
|
-
"affectedPaths": ["src/path/to/file.ts"]
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"issueNumber": 2,
|
|
26
|
-
"dependencies": [1],
|
|
27
|
-
"affectedPaths": ["src/other/file.ts"]
|
|
28
|
-
}
|
|
29
|
-
]
|
|
30
|
-
|
|
31
|
-
Rules:
|
|
32
|
-
- Look for explicit dependency mentions: "depends on #X", "after #X", "blocked by #X", "requires #X"
|
|
33
|
-
- Also infer logical dependencies (e.g., if issue B imports from a file that issue A creates)
|
|
34
|
-
- Only include dependencies between issues in this list
|
|
35
|
-
- affectedPaths should be specific file paths mentioned or implied
|
|
36
|
-
- Respond with ONLY valid JSON, nothing else`;
|
|
3
|
+
import { loadTemplate } from '../utils/template-loader.js';
|
|
37
4
|
export class IssueAnalyzer {
|
|
38
5
|
/**
|
|
39
6
|
* Analyze all issues in a single Claude call to determine dependencies.
|
|
@@ -44,7 +11,8 @@ export class IssueAnalyzer {
|
|
|
44
11
|
const allIssueNumbers = issues.map(i => i.number);
|
|
45
12
|
// Build the issues list for the prompt
|
|
46
13
|
const issuesList = issues.map(issue => `### Issue #${issue.number}: ${issue.title}\n${issue.body || '(No description)'}`).join('\n\n');
|
|
47
|
-
const
|
|
14
|
+
const template = await loadTemplate('issue-analysis.prompt.md');
|
|
15
|
+
const prompt = template.replace('{{issuesList}}', issuesList);
|
|
48
16
|
console.log(chalk.gray(` Sending ${issues.length} issues to Claude for analysis...`));
|
|
49
17
|
try {
|
|
50
18
|
const iterator = query({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue-analyzer.js","sourceRoot":"","sources":["../../src/analysis/issue-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"issue-analyzer.js","sourceRoot":"","sources":["../../src/analysis/issue-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-parser.d.ts","sourceRoot":"","sources":["../../src/analysis/plan-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"plan-parser.d.ts","sourceRoot":"","sources":["../../src/analysis/plan-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,qBAAa,UAAU;IACrB;;OAEG;IACG,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CA8E3D"}
|
|
@@ -1,56 +1,13 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { query } from '@anthropic-ai/claude-code';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
## Plan
|
|
6
|
-
|
|
7
|
-
{{plan}}
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Your Task
|
|
12
|
-
|
|
13
|
-
Break this plan into discrete work items that can be implemented independently (but may have dependencies on each other).
|
|
14
|
-
|
|
15
|
-
For each work item, provide:
|
|
16
|
-
1. **id**: Sequential number starting from 1
|
|
17
|
-
2. **title**: Short descriptive title
|
|
18
|
-
3. **body**: Full implementation details including:
|
|
19
|
-
- What to create/modify
|
|
20
|
-
- Specific file paths
|
|
21
|
-
- Function signatures or interfaces
|
|
22
|
-
- Testing instructions
|
|
23
|
-
- Acceptance criteria
|
|
24
|
-
4. **dependencies**: IDs of work items that MUST be completed before this one
|
|
25
|
-
|
|
26
|
-
Respond with ONLY a JSON array (no markdown, no explanation):
|
|
27
|
-
[
|
|
28
|
-
{
|
|
29
|
-
"id": 1,
|
|
30
|
-
"title": "Initialize project",
|
|
31
|
-
"body": "Create the project structure...\\n\\n## Implementation\\n...",
|
|
32
|
-
"dependencies": []
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
"id": 2,
|
|
36
|
-
"title": "Create utilities",
|
|
37
|
-
"body": "Create utility functions...\\n\\n**Depends on #1**\\n\\n## Implementation\\n...",
|
|
38
|
-
"dependencies": [1]
|
|
39
|
-
}
|
|
40
|
-
]
|
|
41
|
-
|
|
42
|
-
Rules:
|
|
43
|
-
- Each work item should be self-contained with all context needed to implement it
|
|
44
|
-
- Include "**Depends on #N**" in the body text for any dependencies
|
|
45
|
-
- Work items should be small enough to implement in one session
|
|
46
|
-
- Include specific file paths, function signatures, and acceptance criteria
|
|
47
|
-
- Respond with ONLY valid JSON, nothing else`;
|
|
3
|
+
import { loadTemplate } from '../utils/template-loader.js';
|
|
48
4
|
export class PlanParser {
|
|
49
5
|
/**
|
|
50
6
|
* Parse a plan into discrete work items with dependencies.
|
|
51
7
|
*/
|
|
52
8
|
async parse(planContent) {
|
|
53
|
-
const
|
|
9
|
+
const template = await loadTemplate('plan-analysis.prompt.md');
|
|
10
|
+
const prompt = template.replace('{{plan}}', planContent);
|
|
54
11
|
console.log(chalk.gray(' Sending plan to Claude for analysis...'));
|
|
55
12
|
try {
|
|
56
13
|
const iterator = query({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-parser.js","sourceRoot":"","sources":["../../src/analysis/plan-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"plan-parser.js","sourceRoot":"","sources":["../../src/analysis/plan-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AA0BA,UAAU,UAAU;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAqKD,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AA0BA,UAAU,UAAU;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAqKD,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA2FjG;AAGD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA8HtG"}
|
package/dist/cli/commands/run.js
CHANGED
|
@@ -203,6 +203,8 @@ export async function runPlanCommand(plan, options) {
|
|
|
203
203
|
claudeRunner,
|
|
204
204
|
scheduler,
|
|
205
205
|
progressDisplay,
|
|
206
|
+
scanProject: options.scan !== false && !options.dryRun,
|
|
207
|
+
dangerouslySkipPermissions: options.dangerouslySkipPermissions,
|
|
206
208
|
});
|
|
207
209
|
// Build graph
|
|
208
210
|
console.log(chalk.blue('\n🔗 Building dependency graph...'));
|
|
@@ -302,6 +304,8 @@ export async function runIssuesCommand(numbers, options) {
|
|
|
302
304
|
claudeRunner,
|
|
303
305
|
scheduler,
|
|
304
306
|
progressDisplay,
|
|
307
|
+
scanProject: options.scan !== false && !options.dryRun,
|
|
308
|
+
dangerouslySkipPermissions: options.dangerouslySkipPermissions,
|
|
305
309
|
});
|
|
306
310
|
// Discover issues (always recursive to find linked issues)
|
|
307
311
|
console.log(chalk.blue('\n📋 Discovering issues...'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@ interface OrchestratorOptions {
|
|
|
21
21
|
issueDiscoverer?: IssueDiscoverer;
|
|
22
22
|
issueAnalyzer?: IssueAnalyzer;
|
|
23
23
|
progressDisplay?: ProgressDisplay;
|
|
24
|
+
scanProject?: boolean;
|
|
25
|
+
dangerouslySkipPermissions?: boolean;
|
|
24
26
|
}
|
|
25
27
|
export declare class Orchestrator {
|
|
26
28
|
private config;
|
|
@@ -38,6 +40,9 @@ export declare class Orchestrator {
|
|
|
38
40
|
private graph;
|
|
39
41
|
private isShuttingDown;
|
|
40
42
|
private originalBranch;
|
|
43
|
+
private shouldScanProject;
|
|
44
|
+
private dangerouslySkipPermissions;
|
|
45
|
+
private projectSummary;
|
|
41
46
|
constructor(options: OrchestratorOptions);
|
|
42
47
|
private setupShutdownHandlers;
|
|
43
48
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/core/orchestrator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/core/orchestrator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAQ,MAAM,aAAa,CAAC;AACtF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAmB,MAAM,8BAA8B,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAGlE,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;IAErB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,SAAS,CAAY;IAE7B,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,eAAe,CAAC,CAAkB;IAE1C,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,iBAAiB,CAAU;IACnC,OAAO,CAAC,0BAA0B,CAAU;IAC5C,OAAO,CAAC,cAAc,CAAuB;gBAEjC,OAAO,EAAE,mBAAmB;IAqBxC,OAAO,CAAC,qBAAqB;IA2B7B;;;OAGG;IACG,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOxF;;;OAGG;IACG,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAOpE;;OAEG;IACG,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;IAuF7D;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IA6BnD;;OAEG;YACW,gBAAgB;IAwK9B;;OAEG;YACW,oBAAoB;IAqElC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;OAEG;YACW,aAAa;CAuC5B"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
+
import { promises as fs } from 'node:fs';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { scanProject } from '../execution/project-scanner.js';
|
|
2
5
|
export class Orchestrator {
|
|
3
6
|
config;
|
|
4
7
|
store;
|
|
@@ -16,6 +19,9 @@ export class Orchestrator {
|
|
|
16
19
|
graph = null;
|
|
17
20
|
isShuttingDown = false;
|
|
18
21
|
originalBranch = null;
|
|
22
|
+
shouldScanProject;
|
|
23
|
+
dangerouslySkipPermissions;
|
|
24
|
+
projectSummary = null;
|
|
19
25
|
constructor(options) {
|
|
20
26
|
this.config = options.config;
|
|
21
27
|
this.store = options.store;
|
|
@@ -29,6 +35,9 @@ export class Orchestrator {
|
|
|
29
35
|
this.issueDiscoverer = options.issueDiscoverer;
|
|
30
36
|
this.issueAnalyzer = options.issueAnalyzer;
|
|
31
37
|
this.progressDisplay = options.progressDisplay;
|
|
38
|
+
// Project scanning
|
|
39
|
+
this.shouldScanProject = options.scanProject ?? true;
|
|
40
|
+
this.dangerouslySkipPermissions = options.dangerouslySkipPermissions ?? false;
|
|
32
41
|
// Handle graceful shutdown
|
|
33
42
|
this.setupShutdownHandlers();
|
|
34
43
|
}
|
|
@@ -80,6 +89,21 @@ export class Orchestrator {
|
|
|
80
89
|
async run(analyzedIssues) {
|
|
81
90
|
// Save original branch to restore later
|
|
82
91
|
this.originalBranch = await this.worktreeManager.getCurrentBranch();
|
|
92
|
+
// Scan project if enabled
|
|
93
|
+
if (this.shouldScanProject) {
|
|
94
|
+
console.log(chalk.blue(' Scanning project structure...'));
|
|
95
|
+
const scanResult = await scanProject(process.cwd(), {
|
|
96
|
+
dangerouslySkipPermissions: this.dangerouslySkipPermissions,
|
|
97
|
+
});
|
|
98
|
+
if (scanResult.success && scanResult.summary) {
|
|
99
|
+
this.projectSummary = scanResult.summary;
|
|
100
|
+
console.log(chalk.green(' ✓ Project summary generated'));
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
console.log(chalk.yellow(` ⚠ Project scan failed: ${scanResult.error}`));
|
|
104
|
+
// Continue without summary - it's not critical
|
|
105
|
+
}
|
|
106
|
+
}
|
|
83
107
|
// Create run state
|
|
84
108
|
const runId = this.store.generateRunId();
|
|
85
109
|
const baseBranch = this.config.execution.baseBranch;
|
|
@@ -188,6 +212,30 @@ export class Orchestrator {
|
|
|
188
212
|
}
|
|
189
213
|
const worktree = await this.worktreeManager.createWorktree(runId, issueNumber, runBranch);
|
|
190
214
|
await this.store.saveWorktree(worktree);
|
|
215
|
+
// Copy project summary if available
|
|
216
|
+
if (this.projectSummary) {
|
|
217
|
+
const projectSummaryPath = path.join(worktree.path, 'MILLHOUSE_PROJECT.md');
|
|
218
|
+
await fs.writeFile(projectSummaryPath, this.projectSummary);
|
|
219
|
+
}
|
|
220
|
+
// Check for prior work from dependencies
|
|
221
|
+
const dependencies = this.graph.getDependencies(issueNumber);
|
|
222
|
+
const completedDeps = dependencies
|
|
223
|
+
.map(depNum => this.runState.tasks.find(t => t.issueNumber === depNum))
|
|
224
|
+
.filter((task) => !!task && !!task.summary);
|
|
225
|
+
let hasPriorWork = false;
|
|
226
|
+
if (completedDeps.length > 0) {
|
|
227
|
+
// Write MILLHOUSE_PRIOR_WORK.md to the worktree
|
|
228
|
+
const content = completedDeps.map(task => {
|
|
229
|
+
const depIssue = issueMap.get(task.issueNumber);
|
|
230
|
+
return `# #${task.issueNumber}: ${depIssue?.title || 'Unknown'}\n\n${task.summary}`;
|
|
231
|
+
}).join('\n\n---\n\n');
|
|
232
|
+
const priorWorkPath = path.join(worktree.path, 'MILLHOUSE_PRIOR_WORK.md');
|
|
233
|
+
await fs.writeFile(priorWorkPath, content);
|
|
234
|
+
hasPriorWork = true;
|
|
235
|
+
if (this.progressDisplay) {
|
|
236
|
+
this.progressDisplay.logDetailed(issueNumber, `Loaded ${completedDeps.length} prior work summary(ies)`);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
191
239
|
// Run Claude
|
|
192
240
|
if (this.progressDisplay) {
|
|
193
241
|
this.progressDisplay.logDetailed(issueNumber, 'Running Claude...');
|
|
@@ -195,8 +243,20 @@ export class Orchestrator {
|
|
|
195
243
|
else {
|
|
196
244
|
console.log(chalk.blue(` Running Claude for #${issueNumber}...`));
|
|
197
245
|
}
|
|
198
|
-
const result = await this.claudeRunner.run(issue, runId, worktree.path);
|
|
246
|
+
const result = await this.claudeRunner.run(issue, runId, worktree.path, hasPriorWork);
|
|
199
247
|
if (result.success) {
|
|
248
|
+
// Read summary file if it exists
|
|
249
|
+
const summaryPath = path.join(worktree.path, 'MILLHOUSE_SUMMARY.md');
|
|
250
|
+
try {
|
|
251
|
+
const summary = await fs.readFile(summaryPath, 'utf-8');
|
|
252
|
+
const task = this.runState.tasks.find(t => t.issueNumber === issueNumber);
|
|
253
|
+
if (task) {
|
|
254
|
+
task.summary = summary;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
catch {
|
|
258
|
+
// Summary file is optional - worker may not have created one
|
|
259
|
+
}
|
|
200
260
|
// Merge changes back
|
|
201
261
|
if (this.progressDisplay) {
|
|
202
262
|
this.progressDisplay.logDetailed(issueNumber, 'Merging changes...');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/core/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/core/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,11 +22,11 @@ export declare class ClaudeRunner {
|
|
|
22
22
|
/**
|
|
23
23
|
* Build the prompt for Claude to implement an issue.
|
|
24
24
|
*/
|
|
25
|
-
buildPrompt(issue: AnalyzedIssue, runId: string): Promise<string>;
|
|
25
|
+
buildPrompt(issue: AnalyzedIssue, runId: string, hasPriorWork?: boolean): Promise<string>;
|
|
26
26
|
/**
|
|
27
27
|
* Run Claude to implement an issue in the given worktree.
|
|
28
28
|
*/
|
|
29
|
-
run(issue: AnalyzedIssue, runId: string, worktreePath: string): Promise<RunResult>;
|
|
29
|
+
run(issue: AnalyzedIssue, runId: string, worktreePath: string, hasPriorWork?: boolean): Promise<RunResult>;
|
|
30
30
|
/**
|
|
31
31
|
* Get all commit hashes in the worktree.
|
|
32
32
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-runner.d.ts","sourceRoot":"","sources":["../../src/execution/claude-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMzD,UAAU,SAAS;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAEzE,UAAU,mBAAmB;IAC3B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,0BAA0B,CAAU;IAC5C,OAAO,CAAC,KAAK,CAAc;gBAEf,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB;IAO9D;;OAEG;YACW,kBAAkB;IAyBhC;;OAEG;IACG,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-runner.d.ts","sourceRoot":"","sources":["../../src/execution/claude-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMzD,UAAU,SAAS;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAEzE,UAAU,mBAAmB;IAC3B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,0BAA0B,CAAU;IAC5C,OAAO,CAAC,KAAK,CAAc;gBAEf,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB;IAO9D;;OAEG;YACW,kBAAkB;IAyBhC;;OAEG;IACG,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBtG;;OAEG;IACG,GAAG,CACP,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,SAAS,CAAC;IAmGrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;;OAGG;YACW,aAAa;CAgC5B"}
|
|
@@ -25,8 +25,8 @@ export class ClaudeRunner {
|
|
|
25
25
|
}
|
|
26
26
|
// Try to load from templates directory
|
|
27
27
|
const templatePaths = [
|
|
28
|
-
path.join(process.cwd(), '
|
|
29
|
-
path.join(__dirname, '..', '..', '
|
|
28
|
+
path.join(process.cwd(), 'prompts', 'implementation.prompt.md'),
|
|
29
|
+
path.join(__dirname, '..', '..', 'prompts', 'implementation.prompt.md'),
|
|
30
30
|
];
|
|
31
31
|
for (const templatePath of templatePaths) {
|
|
32
32
|
try {
|
|
@@ -37,15 +37,23 @@ export class ClaudeRunner {
|
|
|
37
37
|
// Try next path
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
|
|
41
|
-
this.promptTemplate = DEFAULT_PROMPT_TEMPLATE;
|
|
42
|
-
return this.promptTemplate;
|
|
40
|
+
throw new Error(`Could not find implementation.prompt.md template. Searched: ${templatePaths.join(', ')}`);
|
|
43
41
|
}
|
|
44
42
|
/**
|
|
45
43
|
* Build the prompt for Claude to implement an issue.
|
|
46
44
|
*/
|
|
47
|
-
async buildPrompt(issue, runId) {
|
|
48
|
-
|
|
45
|
+
async buildPrompt(issue, runId, hasPriorWork = false) {
|
|
46
|
+
let template = await this.loadPromptTemplate();
|
|
47
|
+
// Handle conditional sections
|
|
48
|
+
if (hasPriorWork) {
|
|
49
|
+
// Keep the content inside {{#if hasPriorWork}}...{{/if}}
|
|
50
|
+
template = template.replace(/\{\{#if hasPriorWork\}\}/g, '');
|
|
51
|
+
template = template.replace(/\{\{\/if\}\}/g, '');
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// Remove the entire {{#if hasPriorWork}}...{{/if}} block
|
|
55
|
+
template = template.replace(/\{\{#if hasPriorWork\}\}[\s\S]*?\{\{\/if\}\}/g, '');
|
|
56
|
+
}
|
|
49
57
|
return template
|
|
50
58
|
.replace(/\{\{issue\.number\}\}/g, String(issue.number))
|
|
51
59
|
.replace(/\{\{issue\.title\}\}/g, issue.title)
|
|
@@ -56,8 +64,8 @@ export class ClaudeRunner {
|
|
|
56
64
|
/**
|
|
57
65
|
* Run Claude to implement an issue in the given worktree.
|
|
58
66
|
*/
|
|
59
|
-
async run(issue, runId, worktreePath) {
|
|
60
|
-
const prompt = await this.buildPrompt(issue, runId);
|
|
67
|
+
async run(issue, runId, worktreePath, hasPriorWork = false) {
|
|
68
|
+
const prompt = await this.buildPrompt(issue, runId, hasPriorWork);
|
|
61
69
|
try {
|
|
62
70
|
// Get commits before running Claude
|
|
63
71
|
const commitsBefore = this.getCommitHashes(worktreePath);
|
|
@@ -196,46 +204,4 @@ export class ClaudeRunner {
|
|
|
196
204
|
}
|
|
197
205
|
}
|
|
198
206
|
}
|
|
199
|
-
const DEFAULT_PROMPT_TEMPLATE = `# Your Task
|
|
200
|
-
|
|
201
|
-
Implement GitHub issue #{{issue.number}}: {{issue.title}}
|
|
202
|
-
|
|
203
|
-
## Issue Description
|
|
204
|
-
{{issue.body}}
|
|
205
|
-
|
|
206
|
-
## Likely Affected Files
|
|
207
|
-
{{affectedPaths}}
|
|
208
|
-
|
|
209
|
-
## Instructions
|
|
210
|
-
|
|
211
|
-
1. **Understand**: Read the issue carefully, especially any **acceptance criteria**
|
|
212
|
-
2. **Implement**: Make the necessary changes to resolve this issue
|
|
213
|
-
3. **Test and Verify - CRITICAL**:
|
|
214
|
-
- Run all existing tests to ensure nothing is broken
|
|
215
|
-
- Think deeply about how to test the acceptance criteria
|
|
216
|
-
- Run any test commands specified in the issue
|
|
217
|
-
- If tests fail or acceptance criteria aren't met, fix and repeat
|
|
218
|
-
- If stuck in a loop or need human input, exit with an error
|
|
219
|
-
- **DO NOT SUCCEED IF TESTS FAIL OR ACCEPTANCE CRITERIA ARE NOT MET**
|
|
220
|
-
4. **Commit**: Create a single commit with a comprehensive message:
|
|
221
|
-
- Summary line describing the change
|
|
222
|
-
- Body with: what was implemented, files changed, how acceptance criteria were met
|
|
223
|
-
- End with "Fixes #{{issue.number}}"
|
|
224
|
-
|
|
225
|
-
## Important Rules
|
|
226
|
-
- You are working in a git worktree on branch \`millhouse/run-{{runId}}\`
|
|
227
|
-
- Do NOT create a pull request - the orchestrator handles that
|
|
228
|
-
- If you encounter blocking issues that need human input, exit with an error
|
|
229
|
-
- Your changes will be merged with other parallel tasks
|
|
230
|
-
- Focus only on this issue - don't fix unrelated problems
|
|
231
|
-
- Keep changes minimal and focused
|
|
232
|
-
|
|
233
|
-
## Git Commands
|
|
234
|
-
- Use \`git add <files>\` to stage specific files
|
|
235
|
-
- Use \`git commit -m "message"\` to commit
|
|
236
|
-
- Do NOT use \`git push\` - the orchestrator handles that
|
|
237
|
-
|
|
238
|
-
## When You're Done
|
|
239
|
-
Summarize what you changed, test results, and verification of acceptance criteria.
|
|
240
|
-
`;
|
|
241
207
|
//# sourceMappingURL=claude-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-runner.js","sourceRoot":"","sources":["../../src/execution/claude-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,qCAAqC;AACrC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAgB3C,MAAM,OAAO,YAAY;IACf,cAAc,GAAkB,IAAI,CAAC;IACrC,0BAA0B,CAAU;IACpC,KAAK,CAAc;IAE3B,YAAY,OAAe,EAAE,UAA+B,EAAE;QAC5D,IAAI,CAAC,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,IAAI,KAAK,CAAC;QAC9E,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE;YACtD,OAAO,CAAC,GAAG,CAAC,QAAQ,WAAW,KAAK,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAED,uCAAuC;QACvC,MAAM,aAAa,GAAG;YACpB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"claude-runner.js","sourceRoot":"","sources":["../../src/execution/claude-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface ProjectScanResult {
|
|
2
|
+
success: boolean;
|
|
3
|
+
summary?: string;
|
|
4
|
+
error?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function scanProject(projectPath: string, options?: {
|
|
7
|
+
dangerouslySkipPermissions?: boolean;
|
|
8
|
+
}): Promise<ProjectScanResult>;
|
|
9
|
+
//# sourceMappingURL=project-scanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-scanner.d.ts","sourceRoot":"","sources":["../../src/execution/project-scanner.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,0BAA0B,CAAC,EAAE,OAAO,CAAA;CAAO,GACrD,OAAO,CAAC,iBAAiB,CAAC,CAoC5B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { query } from '@anthropic-ai/claude-code';
|
|
2
|
+
import { promises as fs } from 'node:fs';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { loadTemplate } from '../utils/template-loader.js';
|
|
5
|
+
export async function scanProject(projectPath, options = {}) {
|
|
6
|
+
try {
|
|
7
|
+
const permissionMode = options.dangerouslySkipPermissions ? 'bypassPermissions' : 'acceptEdits';
|
|
8
|
+
const prompt = await loadTemplate('project-scan.prompt.md');
|
|
9
|
+
const iterator = query({
|
|
10
|
+
prompt,
|
|
11
|
+
options: {
|
|
12
|
+
cwd: projectPath,
|
|
13
|
+
model: 'claude-sonnet-4-20250514',
|
|
14
|
+
permissionMode,
|
|
15
|
+
maxTurns: 20,
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
|
+
// Consume the iterator
|
|
19
|
+
for await (const _message of iterator) {
|
|
20
|
+
// Just wait for completion
|
|
21
|
+
}
|
|
22
|
+
// Check if summary was created
|
|
23
|
+
const summaryPath = path.join(projectPath, 'MILLHOUSE_PROJECT.md');
|
|
24
|
+
try {
|
|
25
|
+
const summary = await fs.readFile(summaryPath, 'utf-8');
|
|
26
|
+
// Clean up the file from main repo (it will be copied to worktrees)
|
|
27
|
+
await fs.unlink(summaryPath);
|
|
28
|
+
return { success: true, summary };
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return { success: false, error: 'Summary file was not created' };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
return {
|
|
36
|
+
success: false,
|
|
37
|
+
error: error instanceof Error ? error.message : String(error),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=project-scanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-scanner.js","sourceRoot":"","sources":["../../src/execution/project-scanner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAQ3D,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,UAAoD,EAAE;IAEtD,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,CAAC;QAChG,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,wBAAwB,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,KAAK,CAAC;YACrB,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,0BAA0B;gBACjC,cAAc;gBACd,QAAQ,EAAE,EAAE;aACb;SACF,CAAC,CAAC;QAEH,uBAAuB;QACvB,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACtC,2BAA2B;QAC7B,CAAC;QAED,+BAA+B;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;QACnE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxD,oEAAoE;YACpE,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;QACnE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -18,6 +18,8 @@ const runCmd = program
|
|
|
18
18
|
.option('-n, --concurrency <number>', 'Number of parallel workers', '8')
|
|
19
19
|
.option('-d, --display <mode>', 'Display mode: compact or detailed', 'compact')
|
|
20
20
|
.option('--dry-run', 'Analyze and plan without executing')
|
|
21
|
+
.option('--scan', 'Scan project and generate summary before running (default: true)', true)
|
|
22
|
+
.option('--no-scan', 'Skip project scanning')
|
|
21
23
|
.option('--dangerously-skip-permissions', 'Skip permission prompts in spawned Claude instances')
|
|
22
24
|
.action(runPlanCommand);
|
|
23
25
|
// Subcommand for GitHub issues mode
|
|
@@ -28,6 +30,8 @@ runCmd
|
|
|
28
30
|
.option('-n, --concurrency <number>', 'Number of parallel workers', '8')
|
|
29
31
|
.option('-d, --display <mode>', 'Display mode: compact or detailed', 'compact')
|
|
30
32
|
.option('--dry-run', 'Analyze and plan without executing')
|
|
33
|
+
.option('--scan', 'Scan project and generate summary before running (default: true)', true)
|
|
34
|
+
.option('--no-scan', 'Skip project scanning')
|
|
31
35
|
.option('--dangerously-skip-permissions', 'Skip permission prompts in spawned Claude instances')
|
|
32
36
|
.action(runIssuesCommand);
|
|
33
37
|
program
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,6FAA6F,CAAC;KAC1G,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,2CAA2C;AAC3C,MAAM,MAAM,GAAG,OAAO;KACnB,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,gDAAgD,CAAC;KAC7D,QAAQ,CAAC,QAAQ,EAAE,8DAA8D,CAAC;KAClF,MAAM,CAAC,4BAA4B,EAAE,4BAA4B,EAAE,GAAG,CAAC;KACvE,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,EAAE,SAAS,CAAC;KAC9E,MAAM,CAAC,WAAW,EAAE,oCAAoC,CAAC;KACzD,MAAM,CAAC,gCAAgC,EAAE,qDAAqD,CAAC;KAC/F,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,oCAAoC;AACpC,MAAM;KACH,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,uBAAuB,CAAC;KACpC,QAAQ,CAAC,WAAW,EAAE,6DAA6D,CAAC;KACpF,MAAM,CAAC,4BAA4B,EAAE,4BAA4B,EAAE,GAAG,CAAC;KACvE,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,EAAE,SAAS,CAAC;KAC9E,MAAM,CAAC,WAAW,EAAE,oCAAoC,CAAC;KACzD,MAAM,CAAC,gCAAgC,EAAE,qDAAqD,CAAC;KAC/F,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC;KACvD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,2BAA2B,CAAC;KACxC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC;KAC5C,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,cAAc,EAAE,+DAA+D,CAAC;KACvF,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,wEAAwE,CAAC;KACrF,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,6FAA6F,CAAC;KAC1G,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,2CAA2C;AAC3C,MAAM,MAAM,GAAG,OAAO;KACnB,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,gDAAgD,CAAC;KAC7D,QAAQ,CAAC,QAAQ,EAAE,8DAA8D,CAAC;KAClF,MAAM,CAAC,4BAA4B,EAAE,4BAA4B,EAAE,GAAG,CAAC;KACvE,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,EAAE,SAAS,CAAC;KAC9E,MAAM,CAAC,WAAW,EAAE,oCAAoC,CAAC;KACzD,MAAM,CAAC,QAAQ,EAAE,kEAAkE,EAAE,IAAI,CAAC;KAC1F,MAAM,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC5C,MAAM,CAAC,gCAAgC,EAAE,qDAAqD,CAAC;KAC/F,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,oCAAoC;AACpC,MAAM;KACH,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,uBAAuB,CAAC;KACpC,QAAQ,CAAC,WAAW,EAAE,6DAA6D,CAAC;KACpF,MAAM,CAAC,4BAA4B,EAAE,4BAA4B,EAAE,GAAG,CAAC;KACvE,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,EAAE,SAAS,CAAC;KAC9E,MAAM,CAAC,WAAW,EAAE,oCAAoC,CAAC;KACzD,MAAM,CAAC,QAAQ,EAAE,kEAAkE,EAAE,IAAI,CAAC;KAC1F,MAAM,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC5C,MAAM,CAAC,gCAAgC,EAAE,qDAAqD,CAAC;KAC/F,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC;KACvD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,2BAA2B,CAAC;KACxC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC;KAC5C,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,cAAc,EAAE,+DAA+D,CAAC;KACvF,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,wEAAwE,CAAC;KACrF,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
package/dist/types.d.ts
CHANGED
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAGD,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAChD,UAAU,EAAE,MAAM,CAAC;CACpB;AAOD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAStE;AAGD,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,aAAa,GACb,WAAW,GACX,QAAQ,CAAC;AAGb,MAAM,WAAW,IAAI;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0CxB,4CAA4C;AAC5C,MAAM,UAAU,eAAe,CAAC,KAAoB;IAClD,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,MAAM;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC;AACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0CxB,4CAA4C;AAC5C,MAAM,UAAU,eAAe,CAAC,KAAoB;IAClD,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,MAAM;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC;AACJ,CAAC;AAgDD,uBAAuB;AACvB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;QAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QACtC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;QACrD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACpD,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;KAC3C,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACd,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;QACrB,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QACxC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACtE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC;KACrD,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACf,CAAC,CAAC;AAIH,mBAAmB;AACnB,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,kBAAkB;IAC1B,WAAW,EAAE,uBAAuB;IACpC,OAAO,EAAE,mBAAmB;IAC5B,MAAM,EAAE,kBAAkB;IAC1B,IAAI,EAAE,gBAAgB;CACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-loader.d.ts","sourceRoot":"","sources":["../../src/utils/template-loader.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0BxE"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { promises as fs } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
5
|
+
const __dirname = path.dirname(__filename);
|
|
6
|
+
const templateCache = new Map();
|
|
7
|
+
/**
|
|
8
|
+
* Load a prompt template from the templates directory.
|
|
9
|
+
* Caches templates after first load.
|
|
10
|
+
*/
|
|
11
|
+
export async function loadTemplate(templateName) {
|
|
12
|
+
// Check cache first
|
|
13
|
+
const cached = templateCache.get(templateName);
|
|
14
|
+
if (cached) {
|
|
15
|
+
return cached;
|
|
16
|
+
}
|
|
17
|
+
// Try to load from templates directory
|
|
18
|
+
const templatePaths = [
|
|
19
|
+
path.join(process.cwd(), 'prompts', templateName),
|
|
20
|
+
path.join(__dirname, '..', '..', 'prompts', templateName),
|
|
21
|
+
];
|
|
22
|
+
for (const templatePath of templatePaths) {
|
|
23
|
+
try {
|
|
24
|
+
const content = await fs.readFile(templatePath, 'utf-8');
|
|
25
|
+
templateCache.set(templateName, content);
|
|
26
|
+
return content;
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
// Try next path
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
throw new Error(`Could not find template: ${templateName}. Searched: ${templatePaths.join(', ')}`);
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=template-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-loader.js","sourceRoot":"","sources":["../../src/utils/template-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEhD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,YAAoB;IACrD,oBAAoB;IACpB,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uCAAuC;IACvC,MAAM,aAAa,GAAG;QACpB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,YAAY,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC;KAC1D,CAAC;IAEF,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzD,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB;QAClB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,4BAA4B,YAAY,eAAe,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "millhouse",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Orchestrate parallel Claude Code instances to implement GitHub issues or plan files",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
},
|
|
10
10
|
"files": [
|
|
11
11
|
"dist",
|
|
12
|
-
"commands"
|
|
12
|
+
"commands",
|
|
13
|
+
"prompts"
|
|
13
14
|
],
|
|
14
15
|
"scripts": {
|
|
15
16
|
"build": "tsc",
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
# Your Task
|
|
2
|
+
|
|
3
|
+
Implement task #{{issue.number}}: {{issue.title}}
|
|
4
|
+
|
|
5
|
+
## Description
|
|
6
|
+
|
|
7
|
+
{{issue.body}}
|
|
8
|
+
|
|
9
|
+
## Likely Affected Files
|
|
10
|
+
|
|
11
|
+
{{affectedPaths}}
|
|
12
|
+
|
|
13
|
+
## Project Context
|
|
14
|
+
|
|
15
|
+
A summary of the project structure is available in `MILLHOUSE_PROJECT.md` in the repository root. **Read this file first** to understand the codebase architecture, conventions, and where different types of code belong.
|
|
16
|
+
{{#if hasPriorWork}}
|
|
17
|
+
|
|
18
|
+
## Prior Work
|
|
19
|
+
|
|
20
|
+
This task depends on work that has already been completed. Summaries of that prior work are available in `MILLHOUSE_PRIOR_WORK.md` in the repository root. **Read this file first** to understand what has already been implemented before starting your work.
|
|
21
|
+
{{/if}}
|
|
22
|
+
|
|
23
|
+
## Instructions
|
|
24
|
+
|
|
25
|
+
You are an expert software engineer implementing a specific task. Follow these steps:
|
|
26
|
+
|
|
27
|
+
### 1. Understand the Context
|
|
28
|
+
- Read the task description carefully, paying close attention to any **acceptance criteria**
|
|
29
|
+
- Explore the relevant code paths mentioned in "Likely Affected Files"
|
|
30
|
+
- Understand the existing patterns and conventions in the codebase
|
|
31
|
+
- If the task references other tasks or PRs, consider their context
|
|
32
|
+
|
|
33
|
+
### 2. Plan Your Implementation
|
|
34
|
+
- Identify all files that need to be modified
|
|
35
|
+
- Consider edge cases and error handling
|
|
36
|
+
- Think about backward compatibility if relevant
|
|
37
|
+
- Keep changes minimal and focused on the task
|
|
38
|
+
|
|
39
|
+
### 3. Implement the Solution
|
|
40
|
+
- Make the necessary code changes
|
|
41
|
+
- Follow the existing code style and patterns
|
|
42
|
+
- Add appropriate error handling
|
|
43
|
+
- Update or add tests if the codebase has them
|
|
44
|
+
|
|
45
|
+
### 4. Test and Verify - CRITICAL
|
|
46
|
+
|
|
47
|
+
**You MUST verify your implementation before completing:**
|
|
48
|
+
|
|
49
|
+
1. Run all existing tests to ensure nothing is broken
|
|
50
|
+
2. Think deeply about how to fully test the acceptance criteria from the task
|
|
51
|
+
3. Run any test commands specified in the task
|
|
52
|
+
4. Verify each acceptance criterion is satisfied
|
|
53
|
+
|
|
54
|
+
**If any tests fail or acceptance criteria are not met:**
|
|
55
|
+
- Analyze the failure and make corrections
|
|
56
|
+
- Re-run tests and re-verify
|
|
57
|
+
- Repeat until ALL tests pass and ALL acceptance criteria are satisfied
|
|
58
|
+
|
|
59
|
+
**If you cannot make progress:**
|
|
60
|
+
- If you've made several attempts without progress, or you detect you're in a loop, exit with an error explaining the situation
|
|
61
|
+
- If human input is required to proceed, exit with an error explaining what's needed
|
|
62
|
+
|
|
63
|
+
**DO NOT REPORT SUCCESS IF ANY TESTS FAIL OR ANY ACCEPTANCE CRITERIA ARE NOT MET.**
|
|
64
|
+
|
|
65
|
+
### 5. Commit Your Changes
|
|
66
|
+
- Stage your changes with `git add <files>`
|
|
67
|
+
- Create a single commit with a comprehensive message that includes:
|
|
68
|
+
- A clear summary line describing the change
|
|
69
|
+
- A detailed body explaining:
|
|
70
|
+
- What was implemented
|
|
71
|
+
- Key files added or modified
|
|
72
|
+
- How acceptance criteria were satisfied
|
|
73
|
+
- Any important implementation decisions
|
|
74
|
+
- End with "Fixes #{{issue.number}}"
|
|
75
|
+
|
|
76
|
+
## Important Rules
|
|
77
|
+
|
|
78
|
+
1. **You are working in a git worktree** on branch `millhouse/run-{{runId}}`
|
|
79
|
+
- Your working directory is isolated from other parallel tasks
|
|
80
|
+
- Commit your changes but do NOT push
|
|
81
|
+
|
|
82
|
+
2. **Do NOT create a pull request**
|
|
83
|
+
- The orchestrator handles PR creation after all tasks complete
|
|
84
|
+
- Just commit your changes with proper messages
|
|
85
|
+
|
|
86
|
+
3. **Stay focused on this task**
|
|
87
|
+
- Don't fix unrelated problems you notice
|
|
88
|
+
- Don't refactor code beyond what's needed for this task
|
|
89
|
+
- If you notice important problems, mention them in your summary
|
|
90
|
+
|
|
91
|
+
4. **Handle blockers appropriately**
|
|
92
|
+
- If you encounter a blocker that requires human input, exit with an error
|
|
93
|
+
- Don't try to work around fundamental problems
|
|
94
|
+
|
|
95
|
+
5. **Keep changes minimal**
|
|
96
|
+
- Your changes will be merged with other parallel tasks
|
|
97
|
+
- Minimize the chance of merge conflicts by changing only what's necessary
|
|
98
|
+
|
|
99
|
+
## Git Commands Reference
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
# Stage specific files
|
|
103
|
+
git add src/path/to/file.ts
|
|
104
|
+
|
|
105
|
+
# Stage all changes (use with caution)
|
|
106
|
+
git add -A
|
|
107
|
+
|
|
108
|
+
# Commit with comprehensive message
|
|
109
|
+
git commit -m "feat: add math utility functions
|
|
110
|
+
|
|
111
|
+
Implemented add() and multiply() functions in src/utils/math.ts.
|
|
112
|
+
|
|
113
|
+
Changes:
|
|
114
|
+
- Created src/utils/math.ts with exported functions
|
|
115
|
+
- Added input validation for edge cases
|
|
116
|
+
- Verified TypeScript compilation passes
|
|
117
|
+
|
|
118
|
+
Acceptance criteria satisfied:
|
|
119
|
+
- [x] Functions exported correctly
|
|
120
|
+
- [x] No type errors
|
|
121
|
+
|
|
122
|
+
Fixes #{{issue.number}}"
|
|
123
|
+
|
|
124
|
+
# Check status
|
|
125
|
+
git status
|
|
126
|
+
|
|
127
|
+
# View changes
|
|
128
|
+
git diff
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
## When You're Done
|
|
132
|
+
|
|
133
|
+
**Create a summary file** called `MILLHOUSE_SUMMARY.md` in the repository root with the following format:
|
|
134
|
+
|
|
135
|
+
```markdown
|
|
136
|
+
## Summary
|
|
137
|
+
[2-3 sentence description of what was accomplished]
|
|
138
|
+
|
|
139
|
+
## Files Changed
|
|
140
|
+
- path/to/file1.ts (created|modified|deleted)
|
|
141
|
+
- path/to/file2.ts (created|modified|deleted)
|
|
142
|
+
|
|
143
|
+
## Key Changes
|
|
144
|
+
- [Important change 1]
|
|
145
|
+
- [Important change 2]
|
|
146
|
+
- [Important change 3]
|
|
147
|
+
|
|
148
|
+
## Test Status
|
|
149
|
+
[passed|failed|skipped] - [brief note if relevant]
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
This summary will be passed to any dependent tasks that run after you.
|
|
153
|
+
|
|
154
|
+
Then provide a final message that includes:
|
|
155
|
+
1. What you changed and why
|
|
156
|
+
2. Any important implementation decisions
|
|
157
|
+
3. Test results and verification of acceptance criteria
|
|
158
|
+
4. Any notes for reviewers
|
|
159
|
+
5. Any potential concerns or follow-up items
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
Analyze these GitHub issues and determine their dependencies and execution order.
|
|
2
|
+
|
|
3
|
+
## Issues to Analyze
|
|
4
|
+
|
|
5
|
+
{{issuesList}}
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Your Task
|
|
10
|
+
|
|
11
|
+
Analyze each issue and determine:
|
|
12
|
+
1. **dependencies**: Which issues MUST be completed BEFORE this issue can start
|
|
13
|
+
2. **affectedPaths**: File paths this issue will likely create or modify
|
|
14
|
+
|
|
15
|
+
Respond with ONLY a JSON array (no markdown, no explanation):
|
|
16
|
+
[
|
|
17
|
+
{
|
|
18
|
+
"issueNumber": 1,
|
|
19
|
+
"dependencies": [],
|
|
20
|
+
"affectedPaths": ["src/path/to/file.ts"]
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"issueNumber": 2,
|
|
24
|
+
"dependencies": [1],
|
|
25
|
+
"affectedPaths": ["src/other/file.ts"]
|
|
26
|
+
}
|
|
27
|
+
]
|
|
28
|
+
|
|
29
|
+
Rules:
|
|
30
|
+
- Look for explicit dependency mentions: "depends on #X", "after #X", "blocked by #X", "requires #X"
|
|
31
|
+
- Also infer logical dependencies (e.g., if issue B imports from a file that issue A creates)
|
|
32
|
+
- Only include dependencies between issues in this list
|
|
33
|
+
- affectedPaths should be specific file paths mentioned or implied
|
|
34
|
+
- Respond with ONLY valid JSON, nothing else
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
Analyze this plan and break it into discrete, implementable work items.
|
|
2
|
+
|
|
3
|
+
## Plan
|
|
4
|
+
|
|
5
|
+
{{plan}}
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Your Task
|
|
10
|
+
|
|
11
|
+
Break this plan into discrete work items that can be implemented independently (but may have dependencies on each other).
|
|
12
|
+
|
|
13
|
+
For each work item, provide:
|
|
14
|
+
1. **id**: Sequential number starting from 1
|
|
15
|
+
2. **title**: Short descriptive title
|
|
16
|
+
3. **body**: Full implementation details including:
|
|
17
|
+
- What to create/modify
|
|
18
|
+
- Specific file paths
|
|
19
|
+
- Function signatures or interfaces
|
|
20
|
+
- Testing instructions
|
|
21
|
+
- Acceptance criteria
|
|
22
|
+
4. **dependencies**: IDs of work items that MUST be completed before this one
|
|
23
|
+
|
|
24
|
+
Respond with ONLY a JSON array (no markdown, no explanation):
|
|
25
|
+
[
|
|
26
|
+
{
|
|
27
|
+
"id": 1,
|
|
28
|
+
"title": "Initialize project",
|
|
29
|
+
"body": "Create the project structure...\n\n## Implementation\n...",
|
|
30
|
+
"dependencies": []
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": 2,
|
|
34
|
+
"title": "Create utilities",
|
|
35
|
+
"body": "Create utility functions...\n\n**Depends on #1**\n\n## Implementation\n...",
|
|
36
|
+
"dependencies": [1]
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
|
|
40
|
+
Rules:
|
|
41
|
+
- Each work item should be self-contained with all context needed to implement it
|
|
42
|
+
- Include "**Depends on #N**" in the body text for any dependencies
|
|
43
|
+
- Work items should be small enough to implement in one session
|
|
44
|
+
- Include specific file paths, function signatures, and acceptance criteria
|
|
45
|
+
- Respond with ONLY valid JSON, nothing else
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
Analyze this codebase and create a comprehensive summary for developers who need to implement features. Write your findings to a file called MILLHOUSE_PROJECT.md in the repository root.
|
|
2
|
+
|
|
3
|
+
The summary should include:
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
- What this project does (1-2 paragraphs)
|
|
7
|
+
- Key technologies and frameworks used
|
|
8
|
+
|
|
9
|
+
## Directory Structure
|
|
10
|
+
- Purpose of each top-level directory
|
|
11
|
+
- Where different types of code live (components, utils, tests, etc.)
|
|
12
|
+
|
|
13
|
+
## Architecture
|
|
14
|
+
- High-level architecture and data flow
|
|
15
|
+
- Key modules and how they interact
|
|
16
|
+
- Important patterns used (e.g., MVC, event-driven, etc.)
|
|
17
|
+
|
|
18
|
+
## Key Files
|
|
19
|
+
- Entry points (main files, index files)
|
|
20
|
+
- Configuration files and what they control
|
|
21
|
+
- Important utility modules
|
|
22
|
+
|
|
23
|
+
## Conventions
|
|
24
|
+
- Naming conventions observed
|
|
25
|
+
- Code organization patterns
|
|
26
|
+
- Testing approach
|
|
27
|
+
|
|
28
|
+
## Build & Development
|
|
29
|
+
- How to build/run the project
|
|
30
|
+
- Key scripts in package.json (or equivalent)
|
|
31
|
+
- Environment setup requirements
|
|
32
|
+
|
|
33
|
+
Keep the summary concise but comprehensive - aim for 200-400 lines. Focus on information that helps someone implement new features correctly.
|