@locusai/cli 0.11.0 → 0.11.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/bin/agent/worker.js +5 -12
- package/bin/locus.js +29 -14
- package/package.json +2 -2
package/bin/agent/worker.js
CHANGED
|
@@ -15530,14 +15530,13 @@ class CodexRunner {
|
|
|
15530
15530
|
type: "tool_use",
|
|
15531
15531
|
tool: line.replace(/^[→•✓]\s*/, "")
|
|
15532
15532
|
});
|
|
15533
|
-
} else {
|
|
15534
|
-
enqueueChunk({ type: "text_delta", content: `${line}
|
|
15535
|
-
` });
|
|
15536
15533
|
}
|
|
15537
15534
|
}
|
|
15538
15535
|
};
|
|
15539
15536
|
codex.stdout.on("data", processOutput);
|
|
15540
|
-
codex.stderr.on("data",
|
|
15537
|
+
codex.stderr.on("data", (data) => {
|
|
15538
|
+
finalOutput += data.toString();
|
|
15539
|
+
});
|
|
15541
15540
|
codex.on("error", (err) => {
|
|
15542
15541
|
errorMessage = `Failed to start Codex CLI: ${err.message}. Ensure 'codex' is installed and available in PATH.`;
|
|
15543
15542
|
this.eventEmitter?.emitErrorOccurred(errorMessage, "SPAWN_ERROR");
|
|
@@ -15673,6 +15672,7 @@ class CodexRunner {
|
|
|
15673
15672
|
"exec",
|
|
15674
15673
|
"--full-auto",
|
|
15675
15674
|
"--skip-git-repo-check",
|
|
15675
|
+
"--quiet",
|
|
15676
15676
|
"--output-last-message",
|
|
15677
15677
|
outputPath
|
|
15678
15678
|
];
|
|
@@ -15693,12 +15693,7 @@ class CodexRunner {
|
|
|
15693
15693
|
}
|
|
15694
15694
|
}
|
|
15695
15695
|
shouldDisplay(line) {
|
|
15696
|
-
return
|
|
15697
|
-
/^thinking\b/,
|
|
15698
|
-
/^\*\*/,
|
|
15699
|
-
/^Plan update\b/,
|
|
15700
|
-
/^[→•✓]/
|
|
15701
|
-
].some((pattern) => pattern.test(line));
|
|
15696
|
+
return /^Plan update\b/.test(line);
|
|
15702
15697
|
}
|
|
15703
15698
|
readOutput(outputPath, fallback) {
|
|
15704
15699
|
if (existsSync2(outputPath)) {
|
|
@@ -31935,7 +31930,6 @@ class TaskExecutor {
|
|
|
31935
31930
|
this.deps.log(`Executing: ${task2.title}`, "info");
|
|
31936
31931
|
const basePrompt = await this.promptBuilder.build(task2);
|
|
31937
31932
|
try {
|
|
31938
|
-
this.deps.log("Starting Execution...", "info");
|
|
31939
31933
|
const output = await this.deps.aiRunner.run(basePrompt);
|
|
31940
31934
|
const summary = this.extractSummary(output);
|
|
31941
31935
|
return { success: true, summary };
|
|
@@ -32154,7 +32148,6 @@ class AgentWorker {
|
|
|
32154
32148
|
role: "assistant",
|
|
32155
32149
|
content: summary
|
|
32156
32150
|
});
|
|
32157
|
-
this.log(`Updated progress.md: ${task2.title}`, "info");
|
|
32158
32151
|
} catch (err) {
|
|
32159
32152
|
this.log(`Failed to update progress: ${err instanceof Error ? err.message : String(err)}`, "warn");
|
|
32160
32153
|
}
|
package/bin/locus.js
CHANGED
|
@@ -7626,14 +7626,13 @@ class CodexRunner {
|
|
|
7626
7626
|
type: "tool_use",
|
|
7627
7627
|
tool: line.replace(/^[→•✓]\s*/, "")
|
|
7628
7628
|
});
|
|
7629
|
-
} else {
|
|
7630
|
-
enqueueChunk({ type: "text_delta", content: `${line}
|
|
7631
|
-
` });
|
|
7632
7629
|
}
|
|
7633
7630
|
}
|
|
7634
7631
|
};
|
|
7635
7632
|
codex.stdout.on("data", processOutput);
|
|
7636
|
-
codex.stderr.on("data",
|
|
7633
|
+
codex.stderr.on("data", (data) => {
|
|
7634
|
+
finalOutput += data.toString();
|
|
7635
|
+
});
|
|
7637
7636
|
codex.on("error", (err) => {
|
|
7638
7637
|
errorMessage = `Failed to start Codex CLI: ${err.message}. Ensure 'codex' is installed and available in PATH.`;
|
|
7639
7638
|
this.eventEmitter?.emitErrorOccurred(errorMessage, "SPAWN_ERROR");
|
|
@@ -7769,6 +7768,7 @@ class CodexRunner {
|
|
|
7769
7768
|
"exec",
|
|
7770
7769
|
"--full-auto",
|
|
7771
7770
|
"--skip-git-repo-check",
|
|
7771
|
+
"--quiet",
|
|
7772
7772
|
"--output-last-message",
|
|
7773
7773
|
outputPath
|
|
7774
7774
|
];
|
|
@@ -7789,12 +7789,7 @@ class CodexRunner {
|
|
|
7789
7789
|
}
|
|
7790
7790
|
}
|
|
7791
7791
|
shouldDisplay(line) {
|
|
7792
|
-
return
|
|
7793
|
-
/^thinking\b/,
|
|
7794
|
-
/^\*\*/,
|
|
7795
|
-
/^Plan update\b/,
|
|
7796
|
-
/^[→•✓]/
|
|
7797
|
-
].some((pattern) => pattern.test(line));
|
|
7792
|
+
return /^Plan update\b/.test(line);
|
|
7798
7793
|
}
|
|
7799
7794
|
readOutput(outputPath, fallback) {
|
|
7800
7795
|
if (existsSync4(outputPath)) {
|
|
@@ -38868,7 +38863,6 @@ class TaskExecutor {
|
|
|
38868
38863
|
this.deps.log(`Executing: ${task2.title}`, "info");
|
|
38869
38864
|
const basePrompt = await this.promptBuilder.build(task2);
|
|
38870
38865
|
try {
|
|
38871
|
-
this.deps.log("Starting Execution...", "info");
|
|
38872
38866
|
const output = await this.deps.aiRunner.run(basePrompt);
|
|
38873
38867
|
const summary = this.extractSummary(output);
|
|
38874
38868
|
return { success: true, summary };
|
|
@@ -39087,7 +39081,6 @@ class AgentWorker {
|
|
|
39087
39081
|
role: "assistant",
|
|
39088
39082
|
content: summary
|
|
39089
39083
|
});
|
|
39090
|
-
this.log(`Updated progress.md: ${task2.title}`, "info");
|
|
39091
39084
|
} catch (err) {
|
|
39092
39085
|
this.log(`Failed to update progress: ${err instanceof Error ? err.message : String(err)}`, "warn");
|
|
39093
39086
|
}
|
|
@@ -40348,10 +40341,32 @@ ${c.primary("\uD83E\uDD16 Locus Agent Orchestrator")}`);
|
|
|
40348
40341
|
}
|
|
40349
40342
|
});
|
|
40350
40343
|
proc.stdout?.on("data", (data) => {
|
|
40351
|
-
|
|
40344
|
+
const text = data.toString();
|
|
40345
|
+
for (const line of text.split(`
|
|
40346
|
+
`)) {
|
|
40347
|
+
const trimmed = line.trim();
|
|
40348
|
+
if (!trimmed)
|
|
40349
|
+
continue;
|
|
40350
|
+
if (/[✓✗⚠]/.test(trimmed) || /\b(Claimed|Completed|Failed|error|PR created)\b/i.test(trimmed)) {
|
|
40351
|
+
process.stdout.write(`${line}
|
|
40352
|
+
`);
|
|
40353
|
+
}
|
|
40354
|
+
}
|
|
40352
40355
|
});
|
|
40353
40356
|
proc.stderr?.on("data", (data) => {
|
|
40354
|
-
|
|
40357
|
+
const text = data.toString();
|
|
40358
|
+
for (const line of text.split(`
|
|
40359
|
+
`)) {
|
|
40360
|
+
const trimmed = line.trim();
|
|
40361
|
+
if (!trimmed)
|
|
40362
|
+
continue;
|
|
40363
|
+
if (/^\[\d{2}:\d{2}:\d{2}\]/.test(trimmed))
|
|
40364
|
+
continue;
|
|
40365
|
+
if (trimmed.length < 20)
|
|
40366
|
+
continue;
|
|
40367
|
+
process.stderr.write(`${line}
|
|
40368
|
+
`);
|
|
40369
|
+
}
|
|
40355
40370
|
});
|
|
40356
40371
|
proc.on("exit", (code) => {
|
|
40357
40372
|
console.log(`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@locusai/cli",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.1",
|
|
4
4
|
"description": "CLI for Locus - AI-native project management platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"author": "",
|
|
34
34
|
"license": "MIT",
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@locusai/sdk": "^0.11.
|
|
36
|
+
"@locusai/sdk": "^0.11.1"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {}
|
|
39
39
|
}
|