@bradtaylorsf/alpha-loop 1.14.2 → 1.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -18
- package/dist/cli.js +12 -10
- package/dist/cli.js.map +1 -1
- package/dist/commands/init.d.ts +5 -1
- package/dist/commands/init.js +409 -29
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/roadmap.js +29 -21
- package/dist/commands/roadmap.js.map +1 -1
- package/dist/commands/run.d.ts +4 -0
- package/dist/commands/run.js +240 -54
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/triage.js +168 -23
- package/dist/commands/triage.js.map +1 -1
- package/dist/lib/cli-args.d.ts +9 -0
- package/dist/lib/cli-args.js +14 -0
- package/dist/lib/cli-args.js.map +1 -0
- package/dist/lib/epics.d.ts +15 -0
- package/dist/lib/epics.js +55 -0
- package/dist/lib/epics.js.map +1 -1
- package/dist/lib/github.d.ts +40 -3
- package/dist/lib/github.js +112 -13
- package/dist/lib/github.js.map +1 -1
- package/dist/lib/init-scan.d.ts +38 -0
- package/dist/lib/init-scan.js +179 -0
- package/dist/lib/init-scan.js.map +1 -0
- package/dist/lib/pipeline.d.ts +6 -2
- package/dist/lib/pipeline.js +38 -42
- package/dist/lib/pipeline.js.map +1 -1
- package/dist/lib/planning.d.ts +40 -1
- package/dist/lib/planning.js +220 -11
- package/dist/lib/planning.js.map +1 -1
- package/dist/lib/prompts.d.ts +32 -1
- package/dist/lib/prompts.js +127 -18
- package/dist/lib/prompts.js.map +1 -1
- package/dist/lib/verify.d.ts +3 -0
- package/dist/lib/verify.js +4 -1
- package/dist/lib/verify.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/init.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Init Command — full project onboarding for alpha-loop.
|
|
3
3
|
*
|
|
4
4
|
* Steps:
|
|
5
|
-
* 1.
|
|
5
|
+
* 1. Scan codebase + run setup wizard, then write config (.alpha-loop.yaml)
|
|
6
6
|
* 2. Set up .gitignore
|
|
7
7
|
* 3. Detect and migrate legacy layout (skills/ at root, .claude/agents/)
|
|
8
8
|
* 4. Seed .alpha-loop/templates/ from distribution (fills gaps only)
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* 6. Run vision (interactive, if TTY)
|
|
11
11
|
* 7. Run scan (generates context + instructions)
|
|
12
12
|
* 8. Sync templates to configured harnesses
|
|
13
|
-
* 9. Install GitHub issue
|
|
13
|
+
* 9. Install GitHub issue templates
|
|
14
14
|
* 10. Commit generated files
|
|
15
15
|
*/
|
|
16
16
|
import { existsSync, writeFileSync, readFileSync, readdirSync, copyFileSync, mkdirSync } from 'node:fs';
|
|
@@ -23,8 +23,9 @@ import { log } from '../lib/logger.js';
|
|
|
23
23
|
import { syncAgentAssets, migrateToTemplates, resolveHarnesses } from './sync.js';
|
|
24
24
|
import { findDistributionTemplatesDir } from '../lib/templates.js';
|
|
25
25
|
import { shouldOfferLocalMode, getTotalMemoryGB } from '../lib/hardware.js';
|
|
26
|
+
import { scanProject } from '../lib/init-scan.js';
|
|
26
27
|
const CONFIG_FILE = '.alpha-loop.yaml';
|
|
27
|
-
const
|
|
28
|
+
const AGENT_READY_ISSUE_TEMPLATE = `name: Agent-Ready Task
|
|
28
29
|
description: A well-structured task for the automated agent loop to implement
|
|
29
30
|
title: ""
|
|
30
31
|
labels: ["ready"]
|
|
@@ -92,27 +93,378 @@ body:
|
|
|
92
93
|
label: Additional Context
|
|
93
94
|
description: Any background, constraints, or references the agent should know
|
|
94
95
|
`;
|
|
95
|
-
|
|
96
|
+
const EPIC_ISSUE_TEMPLATE = `name: Epic
|
|
97
|
+
description: Group ordered agent-ready sub-issues into one deliverable
|
|
98
|
+
title: "[Epic] "
|
|
99
|
+
labels: ["epic"]
|
|
100
|
+
body:
|
|
101
|
+
- type: markdown
|
|
102
|
+
attributes:
|
|
103
|
+
value: |
|
|
104
|
+
This template creates an Alpha Loop epic. The \`epic\` label is required and is applied automatically by this template.
|
|
105
|
+
If GitHub does not apply template labels in your repository, add \`epic\` manually before running \`alpha-loop run --epic <number>\`.
|
|
106
|
+
Put sub-issues in the exact order Alpha Loop should process them, one per task-list line: \`- [ ] #123 Short description\`.
|
|
107
|
+
|
|
108
|
+
- type: textarea
|
|
109
|
+
id: goal
|
|
110
|
+
attributes:
|
|
111
|
+
label: Goal
|
|
112
|
+
description: The outcome this epic should deliver
|
|
113
|
+
placeholder: Describe the end-to-end capability or user value this epic delivers...
|
|
114
|
+
validations:
|
|
115
|
+
required: true
|
|
116
|
+
|
|
117
|
+
- type: textarea
|
|
118
|
+
id: sub-issues
|
|
119
|
+
attributes:
|
|
120
|
+
label: Sub-issues
|
|
121
|
+
description: Ordered task-list of issue numbers. Alpha Loop processes these from top to bottom.
|
|
122
|
+
placeholder: |
|
|
123
|
+
- [ ] #123 First agent-ready task
|
|
124
|
+
- [ ] #124 Second agent-ready task
|
|
125
|
+
- [ ] #125 Third agent-ready task
|
|
126
|
+
validations:
|
|
127
|
+
required: true
|
|
128
|
+
|
|
129
|
+
- type: textarea
|
|
130
|
+
id: acceptance-criteria
|
|
131
|
+
attributes:
|
|
132
|
+
label: Acceptance Criteria
|
|
133
|
+
description: Epic-level criteria that define done across all sub-issues
|
|
134
|
+
placeholder: |
|
|
135
|
+
- [ ] End-to-end workflow is complete
|
|
136
|
+
- [ ] Required docs are updated
|
|
137
|
+
- [ ] All sub-issue acceptance criteria are satisfied
|
|
138
|
+
validations:
|
|
139
|
+
required: true
|
|
140
|
+
|
|
141
|
+
- type: textarea
|
|
142
|
+
id: dependencies
|
|
143
|
+
attributes:
|
|
144
|
+
label: Dependencies
|
|
145
|
+
description: External blockers, prerequisite decisions, or upstream work
|
|
146
|
+
placeholder: |
|
|
147
|
+
- Depends on...
|
|
148
|
+
- Blocked by...
|
|
149
|
+
|
|
150
|
+
- type: textarea
|
|
151
|
+
id: sequencing-notes
|
|
152
|
+
attributes:
|
|
153
|
+
label: Sequencing Notes
|
|
154
|
+
description: Notes about ordering, coupling, or handoff between sub-issues
|
|
155
|
+
placeholder: Describe why the checklist order matters or where parallel work is safe...
|
|
156
|
+
|
|
157
|
+
- type: textarea
|
|
158
|
+
id: verification-expectations
|
|
159
|
+
attributes:
|
|
160
|
+
label: Verification Expectations
|
|
161
|
+
description: What the final epic verification pass should confirm
|
|
162
|
+
placeholder: |
|
|
163
|
+
- Verify merged PRs satisfy each sub-issue's acceptance criteria
|
|
164
|
+
- Confirm the integrated workflow works end to end
|
|
165
|
+
- Note any manual checks required before closing the epic
|
|
166
|
+
validations:
|
|
167
|
+
required: true
|
|
168
|
+
`;
|
|
169
|
+
const ISSUE_TEMPLATES = [
|
|
170
|
+
{
|
|
171
|
+
filename: 'agent-ready.yml',
|
|
172
|
+
description: 'agent-ready task',
|
|
173
|
+
content: AGENT_READY_ISSUE_TEMPLATE,
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
filename: 'epic.yml',
|
|
177
|
+
description: 'epic',
|
|
178
|
+
content: EPIC_ISSUE_TEMPLATE,
|
|
179
|
+
},
|
|
180
|
+
];
|
|
181
|
+
/**
|
|
182
|
+
* Build the full annotated `.alpha-loop.yaml` for a fresh project. Active
|
|
183
|
+
* settings get values from the wizard/scan; everything else is commented out
|
|
184
|
+
* so users can see all available options at a glance.
|
|
185
|
+
*/
|
|
186
|
+
function configTemplate(repo, scan, answers) {
|
|
187
|
+
const stackHint = scan.framework
|
|
188
|
+
? `${scan.language} / ${scan.framework}`
|
|
189
|
+
: scan.language;
|
|
190
|
+
const harness = harnessForAgent(answers.agent);
|
|
96
191
|
return `# Alpha Loop configuration
|
|
192
|
+
# ----------------------------------------------------------------------------
|
|
193
|
+
# Detected stack: ${stackHint || 'unknown'} (package manager: ${scan.packageManager})
|
|
194
|
+
# Docs: https://github.com/bradtaylorsf/alpha-loop#configuration
|
|
195
|
+
#
|
|
196
|
+
# Most settings have sensible defaults. Uncomment and edit anything you want
|
|
197
|
+
# to override. Settings are grouped by section — read top-to-bottom on first
|
|
198
|
+
# setup, then come back to tune the advanced sections later.
|
|
199
|
+
# ----------------------------------------------------------------------------
|
|
200
|
+
|
|
201
|
+
# === Project ================================================================
|
|
202
|
+
# Identifies the GitHub repo + project board the loop reads from.
|
|
97
203
|
repo: ${repo}
|
|
98
|
-
project: 0
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
204
|
+
# project: 0 # GitHub Project number (from project URL: /projects/N)
|
|
205
|
+
# milestone: "" # Process this milestone's scheduled epic, or ready flat issues if none
|
|
206
|
+
|
|
207
|
+
# === Agent ==================================================================
|
|
208
|
+
# The CLI agent that drives Plan/Build/Test/Review. Supported values:
|
|
209
|
+
# claude — Anthropic Claude Code (recommended, best tool-use support)
|
|
210
|
+
# codex — OpenAI Codex CLI
|
|
211
|
+
# opencode — Open-source coding harness
|
|
212
|
+
# lmstudio — LM Studio (local models, requires running server)
|
|
213
|
+
# ollama — Ollama (local models, requires running daemon)
|
|
214
|
+
agent: ${answers.agent}
|
|
215
|
+
# model: "" # Override default model (e.g., opus, sonnet, gpt-5.4)
|
|
216
|
+
# review_model: "" # Different model for review step (defaults to model)
|
|
217
|
+
# agent_timeout: 1800 # Agent call timeout in seconds (default: 30 min)
|
|
106
218
|
|
|
107
|
-
#
|
|
219
|
+
# === Workflow ===============================================================
|
|
220
|
+
# Branch and label conventions for the loop.
|
|
221
|
+
base_branch: ${answers.baseBranch}
|
|
222
|
+
label: ready # Issues with this label are queued for the loop
|
|
223
|
+
auto_merge: ${answers.autoMerge} # Auto-merge PRs to session branch when checks pass
|
|
224
|
+
# merge_to: "" # Reuse an existing session branch instead of creating one
|
|
225
|
+
# auto_cleanup: true # Delete worktrees and branches after success
|
|
226
|
+
# prefer_epics: false # Auto-pick a single open epic instead of prompting
|
|
227
|
+
|
|
228
|
+
# === Testing ================================================================
|
|
229
|
+
# Commands the loop runs to verify changes.
|
|
230
|
+
test_command: ${answers.testCommand}
|
|
231
|
+
dev_command: ${answers.devCommand}
|
|
232
|
+
# setup_command: "" # Run once before the session (e.g., "pnpm install")
|
|
233
|
+
# smoke_test: "" # Final smoke command after review (e.g., "curl localhost:3000/health")
|
|
234
|
+
# max_test_retries: 3 # How many times to let the agent fix failing tests
|
|
235
|
+
# skip_tests: false # Skip test execution entirely (not recommended)
|
|
236
|
+
# skip_review: false # Skip the code review step
|
|
237
|
+
# skip_e2e: false # Skip end-to-end tests (Playwright, etc.)
|
|
238
|
+
# skip_preflight: false # Skip pre-session validation
|
|
239
|
+
# skip_verify: false # Skip the verify step (epic mode)
|
|
240
|
+
# skip_learn: false # Skip learning extraction
|
|
241
|
+
# skip_install: false # Skip auto-running setup_command on session start
|
|
242
|
+
|
|
243
|
+
# === Safety limits ==========================================================
|
|
244
|
+
# Caps to keep an unattended loop from running away. 0 = unlimited.
|
|
245
|
+
max_issues: ${answers.maxIssues}
|
|
246
|
+
max_session_duration: 7200 # Total session wall-clock budget, in seconds (2h)
|
|
247
|
+
# poll_interval: 60 # Seconds between issue queue polls when running continuously
|
|
248
|
+
|
|
249
|
+
# === Harnesses ==============================================================
|
|
250
|
+
# Coding harnesses to sync skills/agents to. When empty, alpha-loop picks one
|
|
251
|
+
# based on \`agent\` above. Set explicitly if you use multiple harnesses.
|
|
108
252
|
harnesses:
|
|
109
|
-
-
|
|
253
|
+
- ${harness}
|
|
254
|
+
|
|
255
|
+
# === Pipeline overrides (advanced) ==========================================
|
|
256
|
+
# Use a different agent or model for specific pipeline steps. Useful for
|
|
257
|
+
# routing cheap models to grunt work and reserving the expensive ones for
|
|
258
|
+
# planning and review. Each step accepts { agent?, model? }.
|
|
259
|
+
# pipeline:
|
|
260
|
+
# plan:
|
|
261
|
+
# agent: claude
|
|
262
|
+
# model: opus
|
|
263
|
+
# implement:
|
|
264
|
+
# agent: claude
|
|
265
|
+
# model: sonnet
|
|
266
|
+
# test_fix:
|
|
267
|
+
# model: haiku
|
|
268
|
+
# review:
|
|
269
|
+
# model: opus
|
|
270
|
+
# verify:
|
|
271
|
+
# model: sonnet
|
|
272
|
+
# learn:
|
|
273
|
+
# model: haiku
|
|
274
|
+
|
|
275
|
+
# === Routing (advanced, hybrid local/cloud) =================================
|
|
276
|
+
# Route Loop stages to specific models on specific endpoints. Powerful for
|
|
277
|
+
# hybrid setups (e.g., local 30B coder for build/test, cloud Opus for plan/
|
|
278
|
+
# review). See docs/routing-profiles.md for ready-to-paste profiles.
|
|
279
|
+
# routing:
|
|
280
|
+
# profile: hybrid-v1 # Or list for A/B: [hybrid-v1, cloud-only]
|
|
281
|
+
# endpoints:
|
|
282
|
+
# local:
|
|
283
|
+
# type: openai_compat
|
|
284
|
+
# base_url: http://localhost:1234/v1
|
|
285
|
+
# cloud:
|
|
286
|
+
# type: anthropic
|
|
287
|
+
# base_url: https://api.anthropic.com
|
|
288
|
+
# stages:
|
|
289
|
+
# plan: { model: claude-opus-4-6, endpoint: cloud }
|
|
290
|
+
# build: { model: qwen3-coder-30b-a3b, endpoint: local }
|
|
291
|
+
# test_write: { model: qwen3-coder-30b-a3b, endpoint: local }
|
|
292
|
+
# test_exec: { model: qwen3-coder-30b-a3b, endpoint: local }
|
|
293
|
+
# review: { model: claude-opus-4-6, endpoint: cloud }
|
|
294
|
+
# summary: { model: claude-haiku-4-5, endpoint: cloud }
|
|
295
|
+
# fallback:
|
|
296
|
+
# on_tool_error: escalate # escalate | retry | fail
|
|
297
|
+
# escalate_to: { model: claude-sonnet-4-6, endpoint: cloud }
|
|
298
|
+
# escalation_window_issues: 10 # Rolling window for error-rate guardrail
|
|
299
|
+
# escalation_error_threshold: 0.08
|
|
300
|
+
# escalation_revert_ms: 86400000 # 24h
|
|
110
301
|
|
|
111
|
-
#
|
|
112
|
-
|
|
113
|
-
|
|
302
|
+
# === Batch mode (advanced) ==================================================
|
|
303
|
+
# Process multiple issues in a single agent call. Faster + fewer tokens, but
|
|
304
|
+
# less isolation between issues — best for small, mechanical tasks.
|
|
305
|
+
# batch: false
|
|
306
|
+
# batch_size: 5
|
|
307
|
+
|
|
308
|
+
# === Evaluation =============================================================
|
|
309
|
+
# Settings for the eval harness used by \`alpha-loop review\` and CI eval runs.
|
|
310
|
+
# eval_dir: .alpha-loop/evals
|
|
311
|
+
# eval_model: "" # Defaults to the top-level model
|
|
312
|
+
# eval_timeout: 300 # Per-case timeout in seconds
|
|
313
|
+
# skip_eval: false
|
|
314
|
+
# auto_capture: true # Capture session failures as eval cases automatically
|
|
315
|
+
# eval:
|
|
316
|
+
# include_agent_prompts: true # Mirror this repo's agent prompts during eval
|
|
317
|
+
# include_skills: true # Mirror this repo's skills during eval
|
|
318
|
+
|
|
319
|
+
# === Post-session review ====================================================
|
|
320
|
+
# Holistic code review and security scan after the session completes.
|
|
321
|
+
# post_session:
|
|
322
|
+
# review: true
|
|
323
|
+
# security_scan: true
|
|
324
|
+
|
|
325
|
+
# === Logging ================================================================
|
|
326
|
+
# log_dir: logs
|
|
327
|
+
# verbose: false
|
|
328
|
+
# dry_run: false # Preview without making changes (overridable via --dry-run)
|
|
329
|
+
|
|
330
|
+
# === Pricing (cost tracking) ================================================
|
|
331
|
+
# Per-million-token pricing for cost reports. Defaults cover Anthropic + OpenAI
|
|
332
|
+
# common models; add your own here.
|
|
333
|
+
# pricing:
|
|
334
|
+
# claude-opus-4-6: { input: 15.0, output: 75.0 }
|
|
335
|
+
# claude-sonnet-4-6: { input: 3.0, output: 15.0 }
|
|
336
|
+
# claude-haiku-4-5: { input: 0.80, output: 4.0 }
|
|
337
|
+
# gpt-4o: { input: 2.50, output: 10.0 }
|
|
338
|
+
# gpt-4o-mini: { input: 0.15, output: 0.60 }
|
|
114
339
|
`;
|
|
115
340
|
}
|
|
341
|
+
/** Map an agent CLI to its default harness directory name. */
|
|
342
|
+
function harnessForAgent(agent) {
|
|
343
|
+
switch (agent) {
|
|
344
|
+
case 'codex':
|
|
345
|
+
return 'codex';
|
|
346
|
+
case 'opencode':
|
|
347
|
+
return 'opencode';
|
|
348
|
+
case 'lmstudio':
|
|
349
|
+
case 'ollama':
|
|
350
|
+
case 'claude':
|
|
351
|
+
default:
|
|
352
|
+
return 'claude-code';
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Read a YAML file as text and return the set of top-level keys present.
|
|
357
|
+
* Comment-aware (skips `#` lines) but doesn't try to parse — we just want to
|
|
358
|
+
* know which keys the user has already touched so we don't trample them.
|
|
359
|
+
*/
|
|
360
|
+
function existingTopLevelKeys(yamlPath) {
|
|
361
|
+
if (!existsSync(yamlPath))
|
|
362
|
+
return new Set();
|
|
363
|
+
const keys = new Set();
|
|
364
|
+
const text = readFileSync(yamlPath, 'utf-8');
|
|
365
|
+
for (const line of text.split('\n')) {
|
|
366
|
+
if (line.startsWith(' ') || line.startsWith('\t') || line.startsWith('#'))
|
|
367
|
+
continue;
|
|
368
|
+
const match = line.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\s*:/);
|
|
369
|
+
if (match)
|
|
370
|
+
keys.add(match[1]);
|
|
371
|
+
}
|
|
372
|
+
return keys;
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Append commented-out hints for top-level keys missing from an existing
|
|
376
|
+
* config. Preserves all user content and writes only at end-of-file.
|
|
377
|
+
*
|
|
378
|
+
* The hints come from the same fresh template, so users see the same
|
|
379
|
+
* documentation comments they'd see on a fresh init.
|
|
380
|
+
*/
|
|
381
|
+
function mergeMissingKeys(yamlPath, freshTemplate) {
|
|
382
|
+
const existing = readFileSync(yamlPath, 'utf-8');
|
|
383
|
+
const existingKeys = existingTopLevelKeys(yamlPath);
|
|
384
|
+
// Pull each top-level setting block out of the fresh template
|
|
385
|
+
const blocks = [];
|
|
386
|
+
const freshLines = freshTemplate.split('\n');
|
|
387
|
+
let current = null;
|
|
388
|
+
for (const line of freshLines) {
|
|
389
|
+
const match = line.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\s*:/);
|
|
390
|
+
if (match) {
|
|
391
|
+
if (current)
|
|
392
|
+
blocks.push(current);
|
|
393
|
+
current = { key: match[1], lines: [line] };
|
|
394
|
+
}
|
|
395
|
+
else if (current && (line.startsWith(' ') || line.startsWith('\t') || line === '')) {
|
|
396
|
+
current.lines.push(line);
|
|
397
|
+
}
|
|
398
|
+
else if (current) {
|
|
399
|
+
blocks.push(current);
|
|
400
|
+
current = null;
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
if (current)
|
|
404
|
+
blocks.push(current);
|
|
405
|
+
const missing = blocks.filter((b) => !existingKeys.has(b.key));
|
|
406
|
+
if (missing.length === 0)
|
|
407
|
+
return [];
|
|
408
|
+
const addedKeys = [];
|
|
409
|
+
let appendix = '\n# === Added by alpha-loop init (new settings) ===\n';
|
|
410
|
+
appendix += '# These options were added in a newer alpha-loop release. They\'re commented out\n';
|
|
411
|
+
appendix += '# so your current behavior is unchanged — uncomment to opt in.\n\n';
|
|
412
|
+
for (const block of missing) {
|
|
413
|
+
addedKeys.push(block.key);
|
|
414
|
+
// Re-emit each line as a comment so the merge is non-destructive
|
|
415
|
+
for (const line of block.lines) {
|
|
416
|
+
appendix += line === '' ? '#\n' : `# ${line}\n`;
|
|
417
|
+
}
|
|
418
|
+
appendix += '\n';
|
|
419
|
+
}
|
|
420
|
+
const suffix = existing.endsWith('\n') ? '' : '\n';
|
|
421
|
+
writeFileSync(yamlPath, existing + suffix + appendix);
|
|
422
|
+
return addedKeys;
|
|
423
|
+
}
|
|
424
|
+
/**
|
|
425
|
+
* Smart-defaults setup wizard. Asks 4-6 short questions, accepts any blank
|
|
426
|
+
* answer to fall through to the auto-detected default. Skips silently when
|
|
427
|
+
* --yes is set or stdin is not a TTY.
|
|
428
|
+
*/
|
|
429
|
+
async function runWizard(scan, opts) {
|
|
430
|
+
const defaults = {
|
|
431
|
+
agent: 'claude',
|
|
432
|
+
baseBranch: scan.baseBranch,
|
|
433
|
+
testCommand: scan.testCommand,
|
|
434
|
+
devCommand: scan.devCommand,
|
|
435
|
+
autoMerge: true,
|
|
436
|
+
maxIssues: 20,
|
|
437
|
+
};
|
|
438
|
+
if (opts.yes || !process.stdin.isTTY)
|
|
439
|
+
return defaults;
|
|
440
|
+
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
|
|
441
|
+
const ask = (prompt) => new Promise((resolve) => rl.question(prompt, (a) => resolve(a.trim())));
|
|
442
|
+
log.info('Setup wizard — press Enter to accept the default in [brackets].');
|
|
443
|
+
const agentAns = (await ask(` AI agent (claude/codex/opencode) [${defaults.agent}]: `)) || defaults.agent;
|
|
444
|
+
const baseAns = (await ask(` Base branch [${defaults.baseBranch}]: `)) || defaults.baseBranch;
|
|
445
|
+
const testAns = (await ask(` Test command [${defaults.testCommand}]: `)) || defaults.testCommand;
|
|
446
|
+
const devAns = (await ask(` Dev command [${defaults.devCommand}]: `)) || defaults.devCommand;
|
|
447
|
+
const mergeAns = (await ask(` Auto-merge PRs to session branch? (y/n) [${defaults.autoMerge ? 'y' : 'n'}]: `)).toLowerCase();
|
|
448
|
+
const maxAns = (await ask(` Max issues per session (0 = unlimited) [${defaults.maxIssues}]: `)) || String(defaults.maxIssues);
|
|
449
|
+
rl.close();
|
|
450
|
+
const validAgents = ['claude', 'codex', 'opencode'];
|
|
451
|
+
const agent = validAgents.includes(agentAns)
|
|
452
|
+
? agentAns
|
|
453
|
+
: defaults.agent;
|
|
454
|
+
if (agent !== agentAns) {
|
|
455
|
+
log.warn(`Unknown agent "${agentAns}" — falling back to ${defaults.agent}`);
|
|
456
|
+
}
|
|
457
|
+
const maxParsed = Number.parseInt(maxAns, 10);
|
|
458
|
+
const maxIssues = Number.isFinite(maxParsed) && maxParsed >= 0 ? maxParsed : defaults.maxIssues;
|
|
459
|
+
return {
|
|
460
|
+
agent,
|
|
461
|
+
baseBranch: baseAns,
|
|
462
|
+
testCommand: testAns,
|
|
463
|
+
devCommand: devAns,
|
|
464
|
+
autoMerge: mergeAns === '' ? defaults.autoMerge : mergeAns === 'y' || mergeAns === 'yes',
|
|
465
|
+
maxIssues,
|
|
466
|
+
};
|
|
467
|
+
}
|
|
116
468
|
function copyDir(src, dest) {
|
|
117
469
|
mkdirSync(dest, { recursive: true });
|
|
118
470
|
exec(`cp -R "${src}/"* "${dest}/" 2>/dev/null || true`);
|
|
@@ -330,12 +682,33 @@ export async function ensureProjectStatuses(repoOwner, project) {
|
|
|
330
682
|
log.info(`Please add these statuses manually in your project settings: ${missing.join(', ')}`);
|
|
331
683
|
}
|
|
332
684
|
}
|
|
333
|
-
export async function initCommand() {
|
|
685
|
+
export async function initCommand(options = {}) {
|
|
334
686
|
const projectDir = process.cwd();
|
|
335
|
-
// --- Step 1:
|
|
687
|
+
// --- Step 1: Scan + wizard + create/merge config ---
|
|
336
688
|
log.step('Step 1: Configuration');
|
|
689
|
+
const scan = scanProject(projectDir);
|
|
690
|
+
log.info(`Detected ${scan.language || 'unknown stack'}${scan.framework ? ` / ${scan.framework}` : ''}, ` +
|
|
691
|
+
`package manager: ${scan.packageManager}, base branch: ${scan.baseBranch}`);
|
|
337
692
|
if (existsSync(CONFIG_FILE)) {
|
|
338
|
-
|
|
693
|
+
// Existing config: don't trample user values, just expose any new options
|
|
694
|
+
// they don't have yet by appending commented-out blocks at the end.
|
|
695
|
+
let repo = detectRepo() ?? 'owner/repo';
|
|
696
|
+
const placeholder = {
|
|
697
|
+
agent: 'claude',
|
|
698
|
+
baseBranch: scan.baseBranch,
|
|
699
|
+
testCommand: scan.testCommand,
|
|
700
|
+
devCommand: scan.devCommand,
|
|
701
|
+
autoMerge: true,
|
|
702
|
+
maxIssues: 20,
|
|
703
|
+
};
|
|
704
|
+
const fresh = configTemplate(repo, scan, placeholder);
|
|
705
|
+
const added = mergeMissingKeys(CONFIG_FILE, fresh);
|
|
706
|
+
if (added.length > 0) {
|
|
707
|
+
log.success(`Added ${added.length} new commented option(s) to ${CONFIG_FILE}: ${added.join(', ')}`);
|
|
708
|
+
}
|
|
709
|
+
else {
|
|
710
|
+
log.info(`${CONFIG_FILE} is already up to date`);
|
|
711
|
+
}
|
|
339
712
|
}
|
|
340
713
|
else {
|
|
341
714
|
let repo = detectRepo();
|
|
@@ -346,7 +719,8 @@ export async function initCommand() {
|
|
|
346
719
|
repo = 'owner/repo';
|
|
347
720
|
log.warn('Could not auto-detect repo from git remote. Using placeholder.');
|
|
348
721
|
}
|
|
349
|
-
|
|
722
|
+
const answers = await runWizard(scan, options);
|
|
723
|
+
writeFileSync(CONFIG_FILE, configTemplate(repo, scan, answers));
|
|
350
724
|
log.success(`Created ${CONFIG_FILE}`);
|
|
351
725
|
}
|
|
352
726
|
await maybeOfferLocalMode();
|
|
@@ -443,17 +817,23 @@ export async function initCommand() {
|
|
|
443
817
|
if (syncResult.synced) {
|
|
444
818
|
log.success(`Synced templates to ${harnesses.join(', ')}`);
|
|
445
819
|
}
|
|
446
|
-
// --- Step 9: GitHub issue
|
|
447
|
-
log.step('Step 9: Issue
|
|
820
|
+
// --- Step 9: GitHub issue templates ---
|
|
821
|
+
log.step('Step 9: Issue templates');
|
|
448
822
|
const templateDir = join('.github', 'ISSUE_TEMPLATE');
|
|
449
|
-
const
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
823
|
+
const createdTemplates = [];
|
|
824
|
+
for (const template of ISSUE_TEMPLATES) {
|
|
825
|
+
const templateFile = join(templateDir, template.filename);
|
|
826
|
+
if (!existsSync(templateFile)) {
|
|
827
|
+
mkdirSync(templateDir, { recursive: true });
|
|
828
|
+
writeFileSync(templateFile, template.content);
|
|
829
|
+
createdTemplates.push(template.description);
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
if (createdTemplates.length > 0) {
|
|
833
|
+
log.success(`Created GitHub issue template(s): ${createdTemplates.join(', ')}`);
|
|
454
834
|
}
|
|
455
835
|
else {
|
|
456
|
-
log.info('Issue
|
|
836
|
+
log.info('Issue templates already exist');
|
|
457
837
|
}
|
|
458
838
|
// --- Step 10: GitHub labels ---
|
|
459
839
|
log.step('Step 10: GitHub labels');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|