@lambdacurry/arbor 0.23.7 → 0.23.8
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/arbor.js +38 -15
- package/package.json +1 -1
package/dist/arbor.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// package.json
|
|
3
3
|
var package_default = {
|
|
4
4
|
name: "@lambdacurry/arbor",
|
|
5
|
-
version: "0.23.
|
|
5
|
+
version: "0.23.8",
|
|
6
6
|
description: "The Arbor CLI — a shared workspace for people and agents. The human + headless-agent write path over Arbor's guarded operation surface.",
|
|
7
7
|
keywords: [
|
|
8
8
|
"agents",
|
|
@@ -8438,6 +8438,19 @@ var computerRunFinishRequest = looseObject({
|
|
|
8438
8438
|
providerGeneration: number2().int().nonnegative().nullable(),
|
|
8439
8439
|
releasedSnapshotId: id.nullable()
|
|
8440
8440
|
});
|
|
8441
|
+
var computerExecOutput = looseObject({
|
|
8442
|
+
stdout: string2().optional(),
|
|
8443
|
+
stderr: string2().optional(),
|
|
8444
|
+
exitCode: number2().optional(),
|
|
8445
|
+
processId: string2().optional(),
|
|
8446
|
+
status: string2().optional(),
|
|
8447
|
+
timedOut: boolean2().optional(),
|
|
8448
|
+
truncated: boolean2().optional().describe("true when returned stdout/stderr is partial and more output remains"),
|
|
8449
|
+
nextCursor: string2().optional().describe("opaque cursor for continuing partial output with computer_process_read"),
|
|
8450
|
+
cwd: string2().optional(),
|
|
8451
|
+
execution: _enum(["completed", "running"]).optional(),
|
|
8452
|
+
nextAction: literal("computer_process_read").optional()
|
|
8453
|
+
});
|
|
8441
8454
|
var computerRunReceipt2 = looseObject({
|
|
8442
8455
|
runId: id,
|
|
8443
8456
|
threadId: id,
|
|
@@ -9768,19 +9781,8 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
9768
9781
|
failureCode: string2().nullable(),
|
|
9769
9782
|
reason: string2()
|
|
9770
9783
|
}),
|
|
9771
|
-
computer_exec:
|
|
9772
|
-
|
|
9773
|
-
stderr: string2().optional(),
|
|
9774
|
-
exitCode: number2().optional(),
|
|
9775
|
-
processId: string2().optional(),
|
|
9776
|
-
status: string2().optional(),
|
|
9777
|
-
timedOut: boolean2().optional(),
|
|
9778
|
-
truncated: boolean2().optional().describe("true when returned stdout/stderr is partial and more output remains"),
|
|
9779
|
-
nextCursor: string2().optional().describe("opaque cursor for continuing partial output with computer_process_read"),
|
|
9780
|
-
cwd: string2().optional(),
|
|
9781
|
-
execution: _enum(["completed", "running"]).optional(),
|
|
9782
|
-
nextAction: literal("computer_process_read").optional()
|
|
9783
|
-
}),
|
|
9784
|
+
computer_exec: computerExecOutput,
|
|
9785
|
+
computer_run_setup: computerExecOutput,
|
|
9784
9786
|
computer_process_read: looseObject({
|
|
9785
9787
|
processId: string2(),
|
|
9786
9788
|
status: string2(),
|
|
@@ -10308,6 +10310,12 @@ var openWorld = {
|
|
|
10308
10310
|
idempotentHint: false,
|
|
10309
10311
|
openWorldHint: true
|
|
10310
10312
|
};
|
|
10313
|
+
var destructiveIdempotentOpenWorld = {
|
|
10314
|
+
readOnlyHint: false,
|
|
10315
|
+
destructiveHint: true,
|
|
10316
|
+
idempotentHint: true,
|
|
10317
|
+
openWorldHint: true
|
|
10318
|
+
};
|
|
10311
10319
|
var destructiveOpenWorld = {
|
|
10312
10320
|
readOnlyHint: false,
|
|
10313
10321
|
destructiveHint: true,
|
|
@@ -10429,6 +10437,7 @@ var MCP_TOOL_ANNOTATIONS = {
|
|
|
10429
10437
|
computer_run_receipt: readOnly,
|
|
10430
10438
|
computer_runs: readOnly,
|
|
10431
10439
|
computer_exec: destructiveOpenWorld,
|
|
10440
|
+
computer_run_setup: destructiveIdempotentOpenWorld,
|
|
10432
10441
|
computer_process_read: readOnly,
|
|
10433
10442
|
computer_process_terminate: destructiveOpenWorld,
|
|
10434
10443
|
computer_status: readOnly,
|
|
@@ -11519,7 +11528,7 @@ var ACTION_DEFINITIONS = [
|
|
|
11519
11528
|
{
|
|
11520
11529
|
name: "computer_run_receipt",
|
|
11521
11530
|
title: "Read a run receipt",
|
|
11522
|
-
description: "Read with exactly one of runId or runStartId: observe pending admission, finish continuation, Run-owned operation/activity state, and providerLifecycle instead of parent computer_status. Reads never drive admission or finish; the existing lifecycle owner continues independently.",
|
|
11531
|
+
description: "Read with exactly one of runId or runStartId: observe pending admission, finish continuation, Run-owned operation/activity state, and providerLifecycle instead of parent computer_status. Reads never drive admission or finish; the existing lifecycle owner continues independently. setupReadiness says whether declared setup still matches this workspace; computer_run_setup is what makes it ready.",
|
|
11523
11532
|
inputSchema: {
|
|
11524
11533
|
runId: string2().optional().describe("the Run to read, run_…; provide exactly one of runId or runStartId"),
|
|
11525
11534
|
runStartId: string2().optional().describe("the pending or linked RunStart to read, rsr_…; alternative to runId")
|
|
@@ -11528,6 +11537,20 @@ var ACTION_DEFINITIONS = [
|
|
|
11528
11537
|
toolset: "loop",
|
|
11529
11538
|
run: forward("computer_runtime.run_receipt")
|
|
11530
11539
|
},
|
|
11540
|
+
{
|
|
11541
|
+
name: "computer_run_setup",
|
|
11542
|
+
title: "Run the declared setup",
|
|
11543
|
+
description: "Run this Run's own declared project setup once, explicitly — Arbor resolves the authoritative recipe internally, so you neither supply nor see the command, and reusing the same idempotencyKey recovers a lost response instead of installing twice. Nothing runs it for you: a successful run is what makes setupReadiness ready, and it is refused unless the Run is isolated and a setup is declared.",
|
|
11544
|
+
inputSchema: {
|
|
11545
|
+
runId: string2().describe("the Run whose declared setup should run, run_…"),
|
|
11546
|
+
idempotencyKey: string2().describe("stable key for this ONE logical setup request; reuse it unchanged for retries"),
|
|
11547
|
+
background: boolean2().optional().describe("return a processId immediately instead of waiting; read it with computer_process_read"),
|
|
11548
|
+
timeout: number2().int().optional().describe("process kill deadline in milliseconds")
|
|
11549
|
+
},
|
|
11550
|
+
surfaces: ["computer-mcp", "computer-cli"],
|
|
11551
|
+
toolset: "loop",
|
|
11552
|
+
run: forward("computer_runtime.run_setup")
|
|
11553
|
+
},
|
|
11531
11554
|
{
|
|
11532
11555
|
name: "computer_runs",
|
|
11533
11556
|
title: "List runs",
|
package/package.json
CHANGED