@lambdacurry/arbor 0.20.6 → 0.20.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 +14 -14
  2. package/package.json +1 -1
package/dist/arbor.js CHANGED
@@ -17744,10 +17744,10 @@ var MCP_TOOL_ANNOTATIONS = {
17744
17744
  create_topic: additive,
17745
17745
  topic_update: additive,
17746
17746
  create_thread: additive,
17747
- set_organization_computer: additive,
17748
- set_space_computer: additive,
17749
- set_topic_computer: additive,
17750
- set_thread_computer: additive,
17747
+ set_organization_computer: destructiveIdempotent,
17748
+ set_space_computer: destructiveIdempotent,
17749
+ set_topic_computer: destructiveIdempotent,
17750
+ set_thread_computer: destructiveIdempotent,
17751
17751
  attach_computer: additive,
17752
17752
  get_computer: readOnly,
17753
17753
  computer_inventory: readOnly,
@@ -18118,8 +18118,8 @@ var ACTION_DEFINITIONS = [
18118
18118
  },
18119
18119
  {
18120
18120
  name: "set_organization_computer",
18121
- title: "Set organization computer defaults",
18122
- description: "Replace your organization's sparse computer-default layer without allocating runtime state. Omitted/null values fall back to provider defaults; Space, Topic, and Thread layers may override individual fields.",
18121
+ title: "Replace organization computer defaults",
18122
+ description: "DESTRUCTIVE REPLACE: replace your organization's entire sparse computer-default layer without allocating runtime state. Any field omitted from this call is removed from this layer and falls back to provider defaults; Space, Topic, and Thread layers may override individual fields. Repeating the same full layer is idempotent.",
18123
18123
  inputSchema: {
18124
18124
  backend: exports_external.enum(["worker-shell", "container"]).nullable().optional().describe("default execution tier, or null to use worker-shell"),
18125
18125
  containerProfile: exports_external.string().nullable().optional().describe("logical container profile; bun-typescript-v1 guarantees Bash, Git, GitHub CLI (gh), Bun 1.3.3, bunx, Node 26.5.1, pnpm 10.33.0, Python 3.13.15 (python/python3), jq, and ripgrep (rg), or null to clear"),
@@ -18132,8 +18132,8 @@ var ACTION_DEFINITIONS = [
18132
18132
  },
18133
18133
  {
18134
18134
  name: "set_space_computer",
18135
- title: "Set a Space computer",
18136
- description: "Replace a Space's sparse computer override without allocating anything. Omitted/null fields inherit organization defaults; the default backend is image-free worker-shell, and a reusable base materializes lazily only when needed.",
18135
+ title: "Replace a Space computer override",
18136
+ description: "DESTRUCTIVE REPLACE: replace this Space's entire sparse computer override without allocating anything. Any field omitted from this call is removed from the Space layer and inherits organization defaults; the default backend is image-free worker-shell, and a reusable base materializes lazily only when needed. Repeating the same full layer is idempotent.",
18137
18137
  inputSchema: {
18138
18138
  spaceId: exports_external.string().describe("the Space, spc_…"),
18139
18139
  backend: exports_external.enum(["worker-shell", "container"]).nullable().optional().describe("override execution tier, or null to inherit"),
@@ -18147,8 +18147,8 @@ var ACTION_DEFINITIONS = [
18147
18147
  },
18148
18148
  {
18149
18149
  name: "set_topic_computer",
18150
- title: "Override a Topic computer",
18151
- description: "Replace a Topic's sparse computer override; omitted/null fields inherit Space/organization policy, and no runtime is allocated. A material change gets a semantic config key so the next attachment materializes matching state lazily.",
18150
+ title: "Replace a Topic computer override",
18151
+ description: "DESTRUCTIVE REPLACE: replace this Topic's entire sparse computer override. Any field omitted from this call is removed from the Topic layer and inherits Space/organization policy; no runtime is allocated. A material change gets a semantic config key so the next attachment materializes matching state lazily. Repeating the same full layer is idempotent.",
18152
18152
  inputSchema: {
18153
18153
  topicId: exports_external.string().describe("the Topic, top_…"),
18154
18154
  backend: exports_external.enum(["worker-shell", "container"]).nullable().optional().describe("override execution tier, or null to inherit"),
@@ -18162,8 +18162,8 @@ var ACTION_DEFINITIONS = [
18162
18162
  },
18163
18163
  {
18164
18164
  name: "set_thread_computer",
18165
- title: "Override a Thread computer",
18166
- description: "Replace one Thread's sparse computer override. This is config only: the stable computer is still created lazily on first authorized collaborator attachment, and an existing computer cannot switch provider.",
18165
+ title: "Replace a Thread computer override",
18166
+ description: "DESTRUCTIVE REPLACE: replace this Thread's entire sparse computer override. Any field omitted from this call is removed from the Thread layer and inherits Topic/Space/organization policy. This is config only: the stable computer is still created lazily on first authorized collaborator attachment, and an existing computer cannot switch provider. Repeating the same full layer is idempotent.",
18167
18167
  inputSchema: {
18168
18168
  threadId: exports_external.string().describe("the Thread, thr_…"),
18169
18169
  backend: exports_external.enum(["worker-shell", "container"]).nullable().optional().describe("override execution tier, or null to inherit"),
@@ -18202,13 +18202,13 @@ var ACTION_DEFINITIONS = [
18202
18202
  {
18203
18203
  name: "computer_reprovision",
18204
18204
  title: "Replace a Thread computer",
18205
- description: "Explicitly replace an incompatible active Computer generation from the Thread's effective recipe. The old generation remains authoritative unless the successor restores supported state and passes health. Same-provider worker-shell→container migration is supported; container→worker-shell and cross-provider migration fail explicitly. Reuse one idempotencyKey only for the same replacement request.",
18205
+ description: "DESTRUCTIVE RECOVERY: explicitly replace an incompatible active Computer generation from the Thread's effective recipe. This one recovery action is also available on the normal Arbor MCP so a structurally stale Computer can be replaced before Computer MCP attachment is possible. The old generation remains authoritative unless the successor restores supported state and passes health. Same-provider worker-shell→container migration is supported; container→worker-shell and cross-provider migration fail explicitly. Reuse one idempotencyKey only for the same replacement request.",
18206
18206
  inputSchema: {
18207
18207
  threadId: exports_external.string().describe("the Thread whose active Computer generation is replaced, thr_…"),
18208
18208
  idempotencyKey: exports_external.string().min(1).max(200).describe("stable key for this ONE replacement request; reuse it unchanged for retries"),
18209
18209
  reason: exports_external.string().min(1).max(500).describe("concise auditable reason for replacing the active generation")
18210
18210
  },
18211
- surfaces: ["computer-mcp", "computer-cli"],
18211
+ surfaces: ["mcp", "computer-mcp", "computer-cli"],
18212
18212
  toolset: "loop",
18213
18213
  run: forward("computer_runtime.reprovision")
18214
18214
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lambdacurry/arbor",
3
- "version": "0.20.6",
3
+ "version": "0.20.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",