@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.
Files changed (2) hide show
  1. package/dist/arbor.js +38 -15
  2. 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.7",
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: looseObject({
9772
- stdout: string2().optional(),
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lambdacurry/arbor",
3
- "version": "0.23.7",
3
+ "version": "0.23.8",
4
4
  "description": "The Arbor CLI — a shared workspace for people and agents. The human + headless-agent write path over Arbor's guarded operation surface.",
5
5
  "keywords": [
6
6
  "agents",