@locusai/cli 0.23.2 → 0.23.4
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/bin/locus.js +17 -10
- package/package.json +2 -2
package/bin/locus.js
CHANGED
|
@@ -11399,7 +11399,7 @@ ${bold2("locus plan")} — AI-powered sprint planning
|
|
|
11399
11399
|
|
|
11400
11400
|
${bold2("Usage:")}
|
|
11401
11401
|
locus plan "<directive>" ${dim2("# AI creates a plan file")}
|
|
11402
|
-
locus plan approve <id>
|
|
11402
|
+
locus plan approve <id> <sprintname> ${dim2("# Create GitHub issues from saved plan")}
|
|
11403
11403
|
locus plan list ${dim2("# List saved plans")}
|
|
11404
11404
|
locus plan show <id> ${dim2("# Show a saved plan")}
|
|
11405
11405
|
locus plan --from-issues --sprint <name> ${dim2("# Organize existing issues")}
|
|
@@ -11412,8 +11412,7 @@ ${bold2("Options:")}
|
|
|
11412
11412
|
${bold2("Examples:")}
|
|
11413
11413
|
locus plan "Build user authentication with OAuth"
|
|
11414
11414
|
locus plan "Improve API performance" --sprint "Sprint 3"
|
|
11415
|
-
locus plan approve abc123
|
|
11416
|
-
locus plan approve abc123 --sprint "Sprint 3"
|
|
11415
|
+
locus plan approve abc123 "Sprint 3"
|
|
11417
11416
|
locus plan list
|
|
11418
11417
|
locus plan --from-issues --sprint "Sprint 2"
|
|
11419
11418
|
|
|
@@ -11463,7 +11462,15 @@ async function planCommand(projectRoot, args, flags = {}) {
|
|
|
11463
11462
|
}
|
|
11464
11463
|
if (args[0] === "approve") {
|
|
11465
11464
|
const approveArgs = parsePlanArgs(args.slice(2));
|
|
11466
|
-
|
|
11465
|
+
const sprintName2 = approveArgs.sprintName ?? (approveArgs.directive || undefined);
|
|
11466
|
+
if (!sprintName2) {
|
|
11467
|
+
process.stderr.write(`${red2("✗")} Sprint name is required for plan approval.
|
|
11468
|
+
`);
|
|
11469
|
+
process.stderr.write(` Usage: ${bold2("locus plan approve <id> <sprintname>")}
|
|
11470
|
+
`);
|
|
11471
|
+
return;
|
|
11472
|
+
}
|
|
11473
|
+
return handleApprovePlan(projectRoot, args[1], { ...flags, dryRun: flags.dryRun || approveArgs.dryRun }, sprintName2);
|
|
11467
11474
|
}
|
|
11468
11475
|
const parsedArgs = parsePlanArgs(args);
|
|
11469
11476
|
if (parsedArgs.error) {
|
|
@@ -11521,7 +11528,7 @@ ${bold2("Saved Plans:")}
|
|
|
11521
11528
|
}
|
|
11522
11529
|
process.stderr.write(`
|
|
11523
11530
|
`);
|
|
11524
|
-
process.stderr.write(` Approve a plan: ${bold2("locus plan approve <id>
|
|
11531
|
+
process.stderr.write(` Approve a plan: ${bold2("locus plan approve <id> <sprintname>")}
|
|
11525
11532
|
|
|
11526
11533
|
`);
|
|
11527
11534
|
}
|
|
@@ -11562,7 +11569,7 @@ ${bold2("Plan:")} ${cyan2(plan.directive)}
|
|
|
11562
11569
|
}
|
|
11563
11570
|
process.stderr.write(`
|
|
11564
11571
|
`);
|
|
11565
|
-
process.stderr.write(` Approve: ${bold2(`locus plan approve ${plan.id.slice(0, 8)}
|
|
11572
|
+
process.stderr.write(` Approve: ${bold2(`locus plan approve ${plan.id.slice(0, 8)} <sprintname>`)}
|
|
11566
11573
|
|
|
11567
11574
|
`);
|
|
11568
11575
|
}
|
|
@@ -11570,7 +11577,7 @@ async function handleApprovePlan(projectRoot, id, flags, sprintOverride) {
|
|
|
11570
11577
|
if (!id) {
|
|
11571
11578
|
process.stderr.write(`${red2("✗")} Please provide a plan ID.
|
|
11572
11579
|
`);
|
|
11573
|
-
process.stderr.write(` Usage: ${bold2("locus plan approve <id>")}
|
|
11580
|
+
process.stderr.write(` Usage: ${bold2("locus plan approve <id> <sprintname>")}
|
|
11574
11581
|
`);
|
|
11575
11582
|
process.stderr.write(` List plans with: ${bold2("locus plan list")}
|
|
11576
11583
|
`);
|
|
@@ -11710,12 +11717,12 @@ ${bold2("Plan saved:")} ${cyan2(id)}
|
|
|
11710
11717
|
if (flags.dryRun) {
|
|
11711
11718
|
process.stderr.write(`${yellow2("⚠")} ${bold2("Dry run")} — no issues created.
|
|
11712
11719
|
`);
|
|
11713
|
-
process.stderr.write(` Approve later with: ${bold2(`locus plan approve ${id.slice(0, 8)}
|
|
11720
|
+
process.stderr.write(` Approve later with: ${bold2(`locus plan approve ${id.slice(0, 8)} <sprintname>`)}
|
|
11714
11721
|
|
|
11715
11722
|
`);
|
|
11716
11723
|
return;
|
|
11717
11724
|
}
|
|
11718
|
-
process.stderr.write(` To create these issues: ${bold2(`locus plan approve ${id.slice(0, 8)}
|
|
11725
|
+
process.stderr.write(` To create these issues: ${bold2(`locus plan approve ${id.slice(0, 8)} <sprintname>`)}
|
|
11719
11726
|
|
|
11720
11727
|
`);
|
|
11721
11728
|
}
|
|
@@ -14336,7 +14343,7 @@ ${bold2("Examples:")}
|
|
|
14336
14343
|
locus exec ${dim2("# Start interactive REPL")}
|
|
14337
14344
|
locus issue create "Fix login bug" ${dim2("# Create a new issue")}
|
|
14338
14345
|
locus plan "Build auth system" ${dim2("# AI creates a plan file")}
|
|
14339
|
-
locus plan approve <id>
|
|
14346
|
+
locus plan approve <id> <sprint> ${dim2("# Create issues from saved plan")}
|
|
14340
14347
|
locus run ${dim2("# Execute active sprint")}
|
|
14341
14348
|
locus run 42 43 ${dim2("# Run issues in parallel")}
|
|
14342
14349
|
locus run 42 --no-sandbox ${dim2("# Run without sandbox")}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@locusai/cli",
|
|
3
|
-
"version": "0.23.
|
|
3
|
+
"version": "0.23.4",
|
|
4
4
|
"description": "GitHub-native AI engineering assistant",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"license": "MIT",
|
|
37
37
|
"dependencies": {},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@locusai/sdk": "^0.23.
|
|
39
|
+
"@locusai/sdk": "^0.23.4",
|
|
40
40
|
"@types/bun": "latest",
|
|
41
41
|
"typescript": "^5.8.3"
|
|
42
42
|
},
|