@sandagent/runner-cli 0.8.3 → 0.8.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/dist/__tests__/runner.test.js +0 -1
- package/dist/__tests__/runner.test.js.map +1 -1
- package/dist/build-image.js +1 -1
- package/dist/build-image.js.map +1 -1
- package/dist/bundle.mjs +55 -81
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runner.d.ts +4 -25
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +5 -92
- package/dist/runner.js.map +1 -1
- package/package.json +5 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.test.js","sourceRoot":"","sources":["../../src/__tests__/runner.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEzE,gCAAgC;AAChC,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QAC1C,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;YAC7C,MAAM,wBAAwB,CAAC;QACjC,CAAC,CAAC;KACH,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAAC,CAAC;IACxC,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QACzC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;YAC7C,MAAM,sBAAsB,CAAC;YAC7B,MAAM,8BAA8B,CAAC;QACvC,CAAC,CAAC;KACH,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QAC1C,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;YAC7C,MAAM,uBAAuB,CAAC;YAC9B,MAAM,8BAA8B,CAAC;QACvC,CAAC,CAAC;KACH,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,IAAI,aAA0C,CAAC;IAC/C,IAAI,WAAqB,CAAC;IAE1B,UAAU,CAAC,GAAG,EAAE;QACd,WAAW,GAAG,EAAE,CAAC;QACjB,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QACrC,
|
|
1
|
+
{"version":3,"file":"runner.test.js","sourceRoot":"","sources":["../../src/__tests__/runner.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEzE,gCAAgC;AAChC,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QAC1C,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;YAC7C,MAAM,wBAAwB,CAAC;QACjC,CAAC,CAAC;KACH,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAAC,CAAC;IACxC,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QACzC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;YAC7C,MAAM,sBAAsB,CAAC;YAC7B,MAAM,8BAA8B,CAAC;QACvC,CAAC,CAAC;KACH,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,CAAC;IACzC,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QAC1C,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;YAC7C,MAAM,uBAAuB,CAAC;YAC9B,MAAM,8BAA8B,CAAC;QACvC,CAAC,CAAC;KACH,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,IAAI,aAA0C,CAAC;IAC/C,IAAI,WAAqB,CAAC;IAE1B,UAAU,CAAC,GAAG,EAAE;QACd,WAAW,GAAG,EAAE,CAAC;QACjB,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QACrC,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE;YAC5C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC;QACrC,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,QAAQ,CAAC;YACb,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,0BAA0B;YACjC,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAC;QAEH,0DAA0D;QAC1D,MAAM,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACxD,uDAAuD;QACvD,uCAAuC;QACvC,MAAM,CACJ,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,CACzE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,QAAQ,CAAC;YACb,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,0BAA0B;YACjC,SAAS,EAAE,eAAe;YAC1B,YAAY,EAAE,6BAA6B;YAC3C,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;SACrC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,MAAM,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,CAC7C,MAAM,CAAC,gBAAgB,CAAC;YACtB,KAAK,EAAE,0BAA0B;YACjC,YAAY,EAAE,6BAA6B;YAC3C,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;SACrC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,QAAQ,CAAC;YACb,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,0BAA0B;YACjC,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;QAC5E,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,UAAU,GAAG;YACjB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;gBAC7C,MAAM,MAAM,CAAC;YACf,CAAC,CAAC;SACH,CAAC;QACF,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAE1D,MAAM,QAAQ,CAAC;YACb,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,0BAA0B;YACjC,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAC;QAEH,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,QAAQ,CAAC;YACb,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,qBAAqB;SACjC,CAAC,CAAC;QAEH,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAC5C,MAAM,CAAC,gBAAgB,CAAC;YACtB,KAAK,EAAE,aAAa;SACrB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,QAAQ,CAAC;YACb,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,qBAAqB;SACjC,CAAC,CAAC;QAEH,MAAM,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,CAC7C,MAAM,CAAC,gBAAgB,CAAC;YACtB,KAAK,EAAE,gBAAgB;SACxB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/build-image.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { execSync } from "node:child_process";
|
|
2
|
-
import { copyFileSync, existsSync, mkdirSync,
|
|
2
|
+
import { copyFileSync, existsSync, mkdirSync, readdirSync, readFileSync, statSync, writeFileSync, } from "node:fs";
|
|
3
3
|
import { basename, dirname, join, resolve } from "node:path";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
// ---------------------------------------------------------------------------
|
package/dist/build-image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-image.js","sourceRoot":"","sources":["../src/build-image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"build-image.js","sourceRoot":"","sources":["../src/build-image.ts"],"names":[],"mappings":"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"}
|
package/dist/bundle.mjs
CHANGED
|
@@ -11,8 +11,8 @@ import {
|
|
|
11
11
|
copyFileSync,
|
|
12
12
|
existsSync,
|
|
13
13
|
mkdirSync,
|
|
14
|
-
readFileSync,
|
|
15
14
|
readdirSync,
|
|
15
|
+
readFileSync,
|
|
16
16
|
statSync,
|
|
17
17
|
writeFileSync
|
|
18
18
|
} from "node:fs";
|
|
@@ -1199,7 +1199,7 @@ function createOpenCodeRunner(options = {}) {
|
|
|
1199
1199
|
import { appendFileSync as appendFileSync2, existsSync as existsSync3, unlinkSync as unlinkSync3 } from "node:fs";
|
|
1200
1200
|
import { join as join5 } from "node:path";
|
|
1201
1201
|
import { getModel } from "@mariozechner/pi-ai";
|
|
1202
|
-
import { AuthStorage, ModelRegistry, SessionManager
|
|
1202
|
+
import { AuthStorage, createAgentSession, ModelRegistry, SessionManager } from "@mariozechner/pi-coding-agent";
|
|
1203
1203
|
|
|
1204
1204
|
// ../../packages/runner-pi/dist/sandagent-resource-loader.js
|
|
1205
1205
|
import { homedir } from "node:os";
|
|
@@ -1462,7 +1462,7 @@ function createPiRunner(options = {}) {
|
|
|
1462
1462
|
try {
|
|
1463
1463
|
traceRawMessage(cwd, null, true);
|
|
1464
1464
|
let promptText = userInput;
|
|
1465
|
-
let images
|
|
1465
|
+
let images;
|
|
1466
1466
|
try {
|
|
1467
1467
|
if (userInput.startsWith("[") && userInput.endsWith("]")) {
|
|
1468
1468
|
const parsed = JSON.parse(userInput);
|
|
@@ -1545,15 +1545,15 @@ function createPiRunner(options = {}) {
|
|
|
1545
1545
|
}
|
|
1546
1546
|
}
|
|
1547
1547
|
} else if (event.type === "tool_execution_start") {
|
|
1548
|
-
yield `data: ${JSON.stringify({ type: "tool-input-start", toolCallId: event.toolCallId, toolName: event.toolName, dynamic: true })}
|
|
1548
|
+
yield `data: ${JSON.stringify({ type: "tool-input-start", toolCallId: event.toolCallId, toolName: event.toolName, dynamic: true, providerExecuted: true })}
|
|
1549
1549
|
|
|
1550
1550
|
`;
|
|
1551
|
-
yield `data: ${JSON.stringify({ type: "tool-input-available", toolCallId: event.toolCallId, toolName: event.toolName, input: event.args, dynamic: true })}
|
|
1551
|
+
yield `data: ${JSON.stringify({ type: "tool-input-available", toolCallId: event.toolCallId, toolName: event.toolName, input: event.args, dynamic: true, providerExecuted: true })}
|
|
1552
1552
|
|
|
1553
1553
|
`;
|
|
1554
1554
|
} else if (event.type === "tool_execution_end") {
|
|
1555
1555
|
const output = extractToolResultText(event.result);
|
|
1556
|
-
yield `data: ${JSON.stringify({ type: "tool-output-available", toolCallId: event.toolCallId, output, isError: event.isError, dynamic: true })}
|
|
1556
|
+
yield `data: ${JSON.stringify({ type: "tool-output-available", toolCallId: event.toolCallId, output, isError: event.isError, dynamic: true, providerExecuted: true })}
|
|
1557
1557
|
|
|
1558
1558
|
`;
|
|
1559
1559
|
} else if (event.type === "agent_end") {
|
|
@@ -1609,87 +1609,61 @@ function createPiRunner(options = {}) {
|
|
|
1609
1609
|
};
|
|
1610
1610
|
}
|
|
1611
1611
|
|
|
1612
|
+
// ../../packages/runner-core/dist/index.js
|
|
1613
|
+
function createRunner(options) {
|
|
1614
|
+
const cwd = options.cwd ?? process.cwd();
|
|
1615
|
+
const env = options.env ?? process.env;
|
|
1616
|
+
const abortController = options.abortController ?? new AbortController();
|
|
1617
|
+
const base = {
|
|
1618
|
+
model: options.model,
|
|
1619
|
+
systemPrompt: options.systemPrompt,
|
|
1620
|
+
maxTurns: options.maxTurns,
|
|
1621
|
+
allowedTools: options.allowedTools,
|
|
1622
|
+
resume: options.resume,
|
|
1623
|
+
env,
|
|
1624
|
+
abortController
|
|
1625
|
+
};
|
|
1626
|
+
switch (options.runner) {
|
|
1627
|
+
case "claude":
|
|
1628
|
+
return createClaudeRunner(base).run(options.userInput);
|
|
1629
|
+
case "codex":
|
|
1630
|
+
return createCodexRunner({ ...base, cwd }).run(options.userInput);
|
|
1631
|
+
case "gemini":
|
|
1632
|
+
return createGeminiRunner({
|
|
1633
|
+
model: options.model,
|
|
1634
|
+
cwd,
|
|
1635
|
+
env,
|
|
1636
|
+
abortController
|
|
1637
|
+
}).run(options.userInput);
|
|
1638
|
+
case "pi":
|
|
1639
|
+
return createPiRunner({
|
|
1640
|
+
...base,
|
|
1641
|
+
cwd,
|
|
1642
|
+
sessionId: options.resume,
|
|
1643
|
+
skillPaths: options.skillPaths
|
|
1644
|
+
}).run(options.userInput);
|
|
1645
|
+
case "opencode":
|
|
1646
|
+
return createOpenCodeRunner({
|
|
1647
|
+
model: options.model,
|
|
1648
|
+
cwd,
|
|
1649
|
+
env,
|
|
1650
|
+
abortController
|
|
1651
|
+
}).run(options.userInput);
|
|
1652
|
+
case "copilot":
|
|
1653
|
+
throw new Error("Copilot runner not yet implemented");
|
|
1654
|
+
default:
|
|
1655
|
+
throw new Error(`Unknown runner: ${options.runner}`);
|
|
1656
|
+
}
|
|
1657
|
+
}
|
|
1658
|
+
|
|
1612
1659
|
// src/runner.ts
|
|
1613
1660
|
async function runAgent(options) {
|
|
1614
1661
|
const abortController = new AbortController();
|
|
1615
|
-
const signalHandler =
|
|
1616
|
-
console.error("[Runner] Received termination signal, stopping...");
|
|
1617
|
-
abortController.abort();
|
|
1618
|
-
console.error(
|
|
1619
|
-
"[Runner] AbortController.abort() completed (listeners triggered)"
|
|
1620
|
-
);
|
|
1621
|
-
};
|
|
1662
|
+
const signalHandler = () => abortController.abort();
|
|
1622
1663
|
process.on("SIGTERM", signalHandler);
|
|
1623
1664
|
process.on("SIGINT", signalHandler);
|
|
1624
|
-
console.error("[Runner] Signal handlers registered");
|
|
1625
1665
|
try {
|
|
1626
|
-
|
|
1627
|
-
switch (options.runner) {
|
|
1628
|
-
case "claude": {
|
|
1629
|
-
runner = createClaudeRunner({
|
|
1630
|
-
model: options.model,
|
|
1631
|
-
systemPrompt: options.systemPrompt,
|
|
1632
|
-
maxTurns: options.maxTurns,
|
|
1633
|
-
allowedTools: options.allowedTools,
|
|
1634
|
-
resume: options.resume,
|
|
1635
|
-
env: process.env,
|
|
1636
|
-
abortController
|
|
1637
|
-
});
|
|
1638
|
-
break;
|
|
1639
|
-
}
|
|
1640
|
-
case "codex": {
|
|
1641
|
-
runner = createCodexRunner({
|
|
1642
|
-
model: options.model,
|
|
1643
|
-
systemPrompt: options.systemPrompt,
|
|
1644
|
-
maxTurns: options.maxTurns,
|
|
1645
|
-
allowedTools: options.allowedTools,
|
|
1646
|
-
resume: options.resume,
|
|
1647
|
-
cwd: process.cwd(),
|
|
1648
|
-
env: process.env,
|
|
1649
|
-
abortController
|
|
1650
|
-
});
|
|
1651
|
-
break;
|
|
1652
|
-
}
|
|
1653
|
-
case "copilot":
|
|
1654
|
-
throw new Error(
|
|
1655
|
-
"Copilot runner not yet implemented. Use --runner=claude for now."
|
|
1656
|
-
);
|
|
1657
|
-
case "gemini": {
|
|
1658
|
-
runner = createGeminiRunner({
|
|
1659
|
-
model: options.model,
|
|
1660
|
-
cwd: process.cwd(),
|
|
1661
|
-
env: process.env,
|
|
1662
|
-
abortController
|
|
1663
|
-
});
|
|
1664
|
-
break;
|
|
1665
|
-
}
|
|
1666
|
-
case "pi": {
|
|
1667
|
-
runner = createPiRunner({
|
|
1668
|
-
model: options.model,
|
|
1669
|
-
systemPrompt: options.systemPrompt,
|
|
1670
|
-
cwd: process.cwd(),
|
|
1671
|
-
env: process.env,
|
|
1672
|
-
abortController,
|
|
1673
|
-
sessionId: options.resume,
|
|
1674
|
-
skillPaths: options.skillPaths
|
|
1675
|
-
});
|
|
1676
|
-
break;
|
|
1677
|
-
}
|
|
1678
|
-
case "opencode": {
|
|
1679
|
-
runner = createOpenCodeRunner({
|
|
1680
|
-
model: options.model,
|
|
1681
|
-
cwd: process.cwd(),
|
|
1682
|
-
env: process.env,
|
|
1683
|
-
abortController
|
|
1684
|
-
});
|
|
1685
|
-
break;
|
|
1686
|
-
}
|
|
1687
|
-
default:
|
|
1688
|
-
throw new Error(
|
|
1689
|
-
`Unknown runner: ${options.runner}. Supported runners: claude, codex, gemini, opencode, copilot, pi`
|
|
1690
|
-
);
|
|
1691
|
-
}
|
|
1692
|
-
for await (const chunk of runner.run(options.userInput)) {
|
|
1666
|
+
for await (const chunk of createRunner({ ...options, abortController })) {
|
|
1693
1667
|
process.stdout.write(chunk);
|
|
1694
1668
|
}
|
|
1695
1669
|
} finally {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
1
|
+
export { type BuildImageOptions, buildImage } from "./build-image.js";
|
|
2
|
+
export { type RunAgentOptions, runAgent } from "./runner.js";
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,KAAK,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAwB,QAAQ,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/runner.d.ts
CHANGED
|
@@ -1,29 +1,8 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type RunnerCoreOptions } from "@sandagent/runner-core";
|
|
2
|
+
export type RunAgentOptions = RunnerCoreOptions;
|
|
2
3
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
export interface RunAgentOptions extends BaseRunnerOptions {
|
|
7
|
-
/** Which runner to use: claude, codex, gemini, opencode, copilot, pi */
|
|
8
|
-
runner: string;
|
|
9
|
-
/** User input/task */
|
|
10
|
-
userInput: string;
|
|
11
|
-
/** Template to use (e.g., "default", "coder", "analyst", "researcher") */
|
|
12
|
-
template?: string;
|
|
13
|
-
/** Additional skill paths (for pi runner) */
|
|
14
|
-
skillPaths?: string[];
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Run the agent and stream AI SDK UI messages to stdout.
|
|
18
|
-
*
|
|
19
|
-
* This function:
|
|
20
|
-
* 1. Uses process.cwd() as project directory (set by cli.ts via --cwd)
|
|
21
|
-
* 2. Creates a Claude runner with settingSources: ["project"]
|
|
22
|
-
* 3. SDK automatically loads CLAUDE.md, .claude/settings.json, .claude/skills/*.skill.md
|
|
23
|
-
* 4. Streams messages directly to stdout
|
|
24
|
-
* 5. Handles SIGTERM/SIGINT signals to gracefully stop the runner
|
|
25
|
-
*
|
|
26
|
-
* The output is a valid AI SDK UI stream.
|
|
4
|
+
* Run the agent, stream AI SDK UI messages to stdout.
|
|
5
|
+
* Handles SIGTERM/SIGINT signals.
|
|
27
6
|
*/
|
|
28
7
|
export declare function runAgent(options: RunAgentOptions): Promise<void>;
|
|
29
8
|
//# sourceMappingURL=runner.d.ts.map
|
package/dist/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,MAAM,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAEhD;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CActE"}
|
package/dist/runner.js
CHANGED
|
@@ -1,106 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { createCodexRunner } from "@sandagent/runner-codex";
|
|
3
|
-
import { createGeminiRunner } from "@sandagent/runner-gemini";
|
|
4
|
-
import { createOpenCodeRunner } from "@sandagent/runner-opencode";
|
|
5
|
-
import { createPiRunner } from "@sandagent/runner-pi";
|
|
1
|
+
import { createRunner } from "@sandagent/runner-core";
|
|
6
2
|
/**
|
|
7
|
-
* Run the agent
|
|
8
|
-
*
|
|
9
|
-
* This function:
|
|
10
|
-
* 1. Uses process.cwd() as project directory (set by cli.ts via --cwd)
|
|
11
|
-
* 2. Creates a Claude runner with settingSources: ["project"]
|
|
12
|
-
* 3. SDK automatically loads CLAUDE.md, .claude/settings.json, .claude/skills/*.skill.md
|
|
13
|
-
* 4. Streams messages directly to stdout
|
|
14
|
-
* 5. Handles SIGTERM/SIGINT signals to gracefully stop the runner
|
|
15
|
-
*
|
|
16
|
-
* The output is a valid AI SDK UI stream.
|
|
3
|
+
* Run the agent, stream AI SDK UI messages to stdout.
|
|
4
|
+
* Handles SIGTERM/SIGINT signals.
|
|
17
5
|
*/
|
|
18
6
|
export async function runAgent(options) {
|
|
19
|
-
// Create an AbortController to handle process signals
|
|
20
7
|
const abortController = new AbortController();
|
|
21
|
-
|
|
22
|
-
const signalHandler = async () => {
|
|
23
|
-
console.error("[Runner] Received termination signal, stopping...");
|
|
24
|
-
// Note: abort() synchronously triggers all abort event listeners,
|
|
25
|
-
abortController.abort();
|
|
26
|
-
console.error("[Runner] AbortController.abort() completed (listeners triggered)");
|
|
27
|
-
};
|
|
8
|
+
const signalHandler = () => abortController.abort();
|
|
28
9
|
process.on("SIGTERM", signalHandler);
|
|
29
10
|
process.on("SIGINT", signalHandler);
|
|
30
|
-
console.error("[Runner] Signal handlers registered");
|
|
31
11
|
try {
|
|
32
|
-
|
|
33
|
-
let runner;
|
|
34
|
-
switch (options.runner) {
|
|
35
|
-
case "claude": {
|
|
36
|
-
runner = createClaudeRunner({
|
|
37
|
-
model: options.model,
|
|
38
|
-
systemPrompt: options.systemPrompt,
|
|
39
|
-
maxTurns: options.maxTurns,
|
|
40
|
-
allowedTools: options.allowedTools,
|
|
41
|
-
resume: options.resume,
|
|
42
|
-
env: process.env,
|
|
43
|
-
abortController,
|
|
44
|
-
});
|
|
45
|
-
break;
|
|
46
|
-
}
|
|
47
|
-
case "codex": {
|
|
48
|
-
runner = createCodexRunner({
|
|
49
|
-
model: options.model,
|
|
50
|
-
systemPrompt: options.systemPrompt,
|
|
51
|
-
maxTurns: options.maxTurns,
|
|
52
|
-
allowedTools: options.allowedTools,
|
|
53
|
-
resume: options.resume,
|
|
54
|
-
cwd: process.cwd(),
|
|
55
|
-
env: process.env,
|
|
56
|
-
abortController,
|
|
57
|
-
});
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
case "copilot":
|
|
61
|
-
throw new Error("Copilot runner not yet implemented. Use --runner=claude for now.");
|
|
62
|
-
case "gemini": {
|
|
63
|
-
runner = createGeminiRunner({
|
|
64
|
-
model: options.model,
|
|
65
|
-
cwd: process.cwd(),
|
|
66
|
-
env: process.env,
|
|
67
|
-
abortController,
|
|
68
|
-
});
|
|
69
|
-
break;
|
|
70
|
-
}
|
|
71
|
-
case "pi": {
|
|
72
|
-
runner = createPiRunner({
|
|
73
|
-
model: options.model,
|
|
74
|
-
systemPrompt: options.systemPrompt,
|
|
75
|
-
cwd: process.cwd(),
|
|
76
|
-
env: process.env,
|
|
77
|
-
abortController,
|
|
78
|
-
sessionId: options.resume,
|
|
79
|
-
skillPaths: options.skillPaths,
|
|
80
|
-
});
|
|
81
|
-
break;
|
|
82
|
-
}
|
|
83
|
-
case "opencode": {
|
|
84
|
-
runner = createOpenCodeRunner({
|
|
85
|
-
model: options.model,
|
|
86
|
-
cwd: process.cwd(),
|
|
87
|
-
env: process.env,
|
|
88
|
-
abortController,
|
|
89
|
-
});
|
|
90
|
-
break;
|
|
91
|
-
}
|
|
92
|
-
default:
|
|
93
|
-
throw new Error(`Unknown runner: ${options.runner}. Supported runners: claude, codex, gemini, opencode, copilot, pi`);
|
|
94
|
-
}
|
|
95
|
-
// Stream AI SDK UI messages to stdout
|
|
96
|
-
for await (const chunk of runner.run(options.userInput)) {
|
|
97
|
-
// Write directly to stdout without modification
|
|
98
|
-
// This ensures the stream is a valid AI SDK UI stream
|
|
12
|
+
for await (const chunk of createRunner({ ...options, abortController })) {
|
|
99
13
|
process.stdout.write(chunk);
|
|
100
14
|
}
|
|
101
15
|
}
|
|
102
16
|
finally {
|
|
103
|
-
// Clean up signal handlers
|
|
104
17
|
process.off("SIGTERM", signalHandler);
|
|
105
18
|
process.off("SIGINT", signalHandler);
|
|
106
19
|
}
|
package/dist/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,wBAAwB,CAAC;AAI9E;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IACrD,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAC9C,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IACpD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEpC,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sandagent/runner-cli",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.4",
|
|
4
4
|
"description": "SandAgent Runner CLI - Like gemini-cli or claude-code, runs in your local terminal with AI SDK UI streaming",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
"@mariozechner/pi-ai": "^0.56.1",
|
|
47
47
|
"@mariozechner/pi-coding-agent": "^0.56.1",
|
|
48
48
|
"dotenv": "^17.3.1",
|
|
49
|
-
"zod": "^4.0.0"
|
|
49
|
+
"zod": "^4.0.0",
|
|
50
|
+
"@sandagent/runner-core": "0.1.0"
|
|
50
51
|
},
|
|
51
52
|
"devDependencies": {
|
|
52
53
|
"@types/node": "^20.10.0",
|
|
@@ -54,10 +55,10 @@
|
|
|
54
55
|
"typescript": "^5.3.0",
|
|
55
56
|
"vitest": "^1.6.1",
|
|
56
57
|
"@sandagent/runner-claude": "0.6.2",
|
|
57
|
-
"@sandagent/runner-codex": "0.6.2",
|
|
58
58
|
"@sandagent/runner-gemini": "0.6.2",
|
|
59
59
|
"@sandagent/runner-opencode": "0.6.2",
|
|
60
|
-
"@sandagent/runner-pi": "0.6.3"
|
|
60
|
+
"@sandagent/runner-pi": "0.6.3",
|
|
61
|
+
"@sandagent/runner-codex": "0.6.2"
|
|
61
62
|
},
|
|
62
63
|
"scripts": {
|
|
63
64
|
"build": "tsc && pnpm bundle",
|