@lambdacurry/arbor 0.22.8 → 0.22.10
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 +62 -61
- 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.22.
|
|
5
|
+
version: "0.22.10",
|
|
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",
|
|
@@ -9252,6 +9252,13 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
9252
9252
|
function outputSchemaFor(actionName) {
|
|
9253
9253
|
return MCP_OUTPUT_SCHEMAS[actionName];
|
|
9254
9254
|
}
|
|
9255
|
+
|
|
9256
|
+
// ../actions/src/agent-guides.ts
|
|
9257
|
+
var AGENT_GUIDE_URLS = {
|
|
9258
|
+
tldraw: "https://arborthreads.com/docs/agents/tldraw",
|
|
9259
|
+
computer: "https://arborthreads.com/docs/agents/computer",
|
|
9260
|
+
apps: "https://arborthreads.com/docs/agents/apps"
|
|
9261
|
+
};
|
|
9255
9262
|
// ../actions/src/output-shaping.ts
|
|
9256
9263
|
function record2(value) {
|
|
9257
9264
|
return value !== null && typeof value === "object" && !Array.isArray(value) ? value : null;
|
|
@@ -9675,6 +9682,54 @@ function mcpAnnotationsFor(name) {
|
|
|
9675
9682
|
return annotations;
|
|
9676
9683
|
}
|
|
9677
9684
|
|
|
9685
|
+
// ../actions/src/skill.ts
|
|
9686
|
+
var ARBOR_SKILL_NAME = "arbor";
|
|
9687
|
+
var ARBOR_SKILL_DESCRIPTION = "Work in Arbor (arborthreads.com), the team's deliberation room and shared memory for people and agents. " + "Use when you need to decide something with teammates or agents, record what was settled, check what you owe (inbox, requests, reviews), " + "recall prior decisions before re-deriving them, post evidence or a proposal to a Thread, keep a durable output as an Artifact, " + "or run software work on a Thread's Computer. Reach Arbor through its MCP tools or the arbor CLI (npx -y @lambdacurry/arbor@latest).";
|
|
9688
|
+
var ARBOR_SKILL_FRONTMATTER = {
|
|
9689
|
+
name: ARBOR_SKILL_NAME,
|
|
9690
|
+
description: ARBOR_SKILL_DESCRIPTION,
|
|
9691
|
+
license: "MIT"
|
|
9692
|
+
};
|
|
9693
|
+
var ORIGIN = "https://arborthreads.com";
|
|
9694
|
+
function renderArborSkill(orientation) {
|
|
9695
|
+
const base = ORIGIN;
|
|
9696
|
+
const fm = ARBOR_SKILL_FRONTMATTER;
|
|
9697
|
+
return `---
|
|
9698
|
+
name: ${fm.name}
|
|
9699
|
+
description: "${fm.description}"
|
|
9700
|
+
license: ${fm.license}
|
|
9701
|
+
---
|
|
9702
|
+
|
|
9703
|
+
# Arbor
|
|
9704
|
+
|
|
9705
|
+
Arbor is the team's deliberation room and shared memory: people and agents settle typed work in
|
|
9706
|
+
Spaces → Topics → Threads, review each other's contributions, and promote the durable ones into
|
|
9707
|
+
Artifacts Arbor keeps current. Use it to decide things with others and to remember what was decided.
|
|
9708
|
+
|
|
9709
|
+
## Reaching Arbor
|
|
9710
|
+
|
|
9711
|
+
- **MCP** — two servers over one identity. \`${base}/mcp\` is collaboration + durable knowledge
|
|
9712
|
+
(Spaces, Topics, Threads, contributions, requests, reviews, Goals, Artifacts, recall, inbox).
|
|
9713
|
+
\`${base}/computer/mcp\` is Arbor Computer, the software workflow (open, run, verify, package,
|
|
9714
|
+
deploy, operate). If the tools are already connected in this session, use them directly.
|
|
9715
|
+
- **CLI** — \`npx -y @lambdacurry/arbor@latest <command>\` (or \`arbor <command>\` when installed). The
|
|
9716
|
+
same actions as MCP; \`arbor help\` lists every command with a when-to-use and an example, and
|
|
9717
|
+
\`arbor <command> --help\` gives that command's flags. Long bodies go in via \`--body-file -\` (stdin).
|
|
9718
|
+
Add \`--json\` for a structured envelope.
|
|
9719
|
+
- **Auth** — a personal access token (acts as its human) or an agent key (acts as the agent), sent as
|
|
9720
|
+
a Bearer header to MCP or as \`ARBOR_TOKEN\` / \`arbor auth <token>\` for the CLI. Identity is resolved
|
|
9721
|
+
server-side from the credential; never assert who you are. Not connected yet? \`${base}/connect.md\`
|
|
9722
|
+
walks the setup for each client.
|
|
9723
|
+
- **Start** with \`whoami\` (confirm who you are acting as) and \`inbox\` (what you owe). Then follow the
|
|
9724
|
+
etiquette below — it is the same text Arbor sends as MCP \`instructions\` at connect and prints from
|
|
9725
|
+
\`arbor orient\`.
|
|
9726
|
+
|
|
9727
|
+
## How to work well in Arbor
|
|
9728
|
+
|
|
9729
|
+
${orientation}
|
|
9730
|
+
`;
|
|
9731
|
+
}
|
|
9732
|
+
|
|
9678
9733
|
// ../actions/src/tldraw-agent.ts
|
|
9679
9734
|
var TLDRAW_EXEC_MAX_OPERATIONS = 100;
|
|
9680
9735
|
var shapeId = string2().regex(/^shape:[A-Za-z0-9_-]{1,128}$/).describe("stable tldraw shape id, shape:…");
|
|
@@ -9755,61 +9810,7 @@ var TLDRAW_EXEC_OPERATIONS_SCHEMA = array(TLDRAW_EXEC_OPERATION_SCHEMA).min(1).m
|
|
|
9755
9810
|
});
|
|
9756
9811
|
}
|
|
9757
9812
|
});
|
|
9758
|
-
}).describe("preferred declarative edits, applied in order; mutually exclusive with code
|
|
9759
|
-
|
|
9760
|
-
// ../actions/src/skill.ts
|
|
9761
|
-
var ARBOR_SKILL_NAME = "arbor";
|
|
9762
|
-
var ARBOR_SKILL_DESCRIPTION = "Work in Arbor (arborthreads.com), the team's deliberation room and shared memory for people and agents. " + "Use when you need to decide something with teammates or agents, record what was settled, check what you owe (inbox, requests, reviews), " + "recall prior decisions before re-deriving them, post evidence or a proposal to a Thread, keep a durable output as an Artifact, " + "or run software work on a Thread's Computer. Reach Arbor through its MCP tools or the arbor CLI (npx -y @lambdacurry/arbor@latest).";
|
|
9763
|
-
var ARBOR_SKILL_FRONTMATTER = {
|
|
9764
|
-
name: ARBOR_SKILL_NAME,
|
|
9765
|
-
description: ARBOR_SKILL_DESCRIPTION,
|
|
9766
|
-
license: "MIT"
|
|
9767
|
-
};
|
|
9768
|
-
var ORIGIN = "https://arborthreads.com";
|
|
9769
|
-
function renderArborSkill(orientation) {
|
|
9770
|
-
const base = ORIGIN;
|
|
9771
|
-
const fm = ARBOR_SKILL_FRONTMATTER;
|
|
9772
|
-
return `---
|
|
9773
|
-
name: ${fm.name}
|
|
9774
|
-
description: "${fm.description}"
|
|
9775
|
-
license: ${fm.license}
|
|
9776
|
-
---
|
|
9777
|
-
|
|
9778
|
-
# Arbor
|
|
9779
|
-
|
|
9780
|
-
Arbor is the team's deliberation room and shared memory: people and agents settle typed work in
|
|
9781
|
-
Spaces → Topics → Threads, review each other's contributions, and promote the durable ones into
|
|
9782
|
-
Artifacts Arbor keeps current. Use it to decide things with others and to remember what was decided.
|
|
9783
|
-
|
|
9784
|
-
## Reaching Arbor
|
|
9785
|
-
|
|
9786
|
-
- **MCP** — two servers over one identity. \`${base}/mcp\` is collaboration + durable knowledge
|
|
9787
|
-
(Spaces, Topics, Threads, contributions, requests, reviews, Goals, Artifacts, recall, inbox).
|
|
9788
|
-
\`${base}/computer/mcp\` is Arbor Computer, the software workflow (open, run, verify, package,
|
|
9789
|
-
deploy, operate). If the tools are already connected in this session, use them directly.
|
|
9790
|
-
- **CLI** — \`npx -y @lambdacurry/arbor@latest <command>\` (or \`arbor <command>\` when installed). The
|
|
9791
|
-
same actions as MCP; \`arbor help\` lists every command with a when-to-use and an example, and
|
|
9792
|
-
\`arbor <command> --help\` gives that command's flags. Long bodies go in via \`--body-file -\` (stdin).
|
|
9793
|
-
Add \`--json\` for a structured envelope.
|
|
9794
|
-
- **Auth** — a personal access token (acts as its human) or an agent key (acts as the agent), sent as
|
|
9795
|
-
a Bearer header to MCP or as \`ARBOR_TOKEN\` / \`arbor auth <token>\` for the CLI. Identity is resolved
|
|
9796
|
-
server-side from the credential; never assert who you are. Not connected yet? \`${base}/connect.md\`
|
|
9797
|
-
walks the setup for each client.
|
|
9798
|
-
- **Start** with \`whoami\` (confirm who you are acting as) and \`inbox\` (what you owe). Then follow the
|
|
9799
|
-
etiquette below — it is the same text Arbor sends as MCP \`instructions\` at connect and prints from
|
|
9800
|
-
\`arbor orient\`.
|
|
9801
|
-
|
|
9802
|
-
## How to work well in Arbor
|
|
9803
|
-
|
|
9804
|
-
${orientation}
|
|
9805
|
-
|
|
9806
|
-
## Native tldraw
|
|
9807
|
-
|
|
9808
|
-
Before creating or modifying a native tldraw Artifact, read the bundled
|
|
9809
|
-
references/tldraw.md. Over MCP it is skill://arbor/references/tldraw.md; when only the CLI or web is
|
|
9810
|
-
available, read ${base}/skill/tldraw.md.
|
|
9811
|
-
`;
|
|
9812
|
-
}
|
|
9813
|
+
}).describe("preferred declarative edits, applied in order; mutually exclusive with code");
|
|
9813
9814
|
// ../actions/src/index.ts
|
|
9814
9815
|
var ARBOR_FEEDBACK_INPUT_TYPES = [...ARBOR_FEEDBACK_TYPES, "friction"];
|
|
9815
9816
|
var CONTRIBUTION_ADD_LINK_RELS = [
|
|
@@ -10582,7 +10583,7 @@ var ACTION_DEFINITIONS = [
|
|
|
10582
10583
|
{
|
|
10583
10584
|
name: "computer_run_start",
|
|
10584
10585
|
title: "Start a run",
|
|
10585
|
-
description:
|
|
10586
|
+
description: `Start one bounded unit of work by threadId, no computer_open first: write defaults to an isolated Run from the Thread snapshot without booting the parent; shared/read Runs use the live parent; idempotencyKey recovers zero-or-one Run after response loss, and failures return runId for computer_run_receipt. First use: read the Computer guide at ${AGENT_GUIDE_URLS.computer}.`,
|
|
10586
10587
|
inputSchema: {
|
|
10587
10588
|
threadId: string2().optional().describe("the Thread whose Computer this Run works in, thr_…; the front door — no computer_open first"),
|
|
10588
10589
|
computerSessionId: string2().optional().describe("alternative to threadId: an existing computerSessionId from computer_open, cms_… (parent already open)"),
|
|
@@ -10861,7 +10862,7 @@ var ACTION_DEFINITIONS = [
|
|
|
10861
10862
|
{
|
|
10862
10863
|
name: "computer_publish_app_bundle",
|
|
10863
10864
|
title: "Publish an immutable AppBundle",
|
|
10864
|
-
description:
|
|
10865
|
+
description: `Publish an immutable AppBundle from parent bytes behind a shared write Run after a green build; Arbor acquires compatible bun-typescript-v1 execution, verifies bytes against ArtifactVersion, captures provenance/assets, and returns bundleId; isolated Runs are refused, so push then start shared first. First use: read the Apps guide at ${AGENT_GUIDE_URLS.apps}.`,
|
|
10865
10866
|
inputSchema: {
|
|
10866
10867
|
runId: string2().optional().describe("an active shared write Run on the parent whose bytes to publish, run_…"),
|
|
10867
10868
|
computerSessionId: string2().optional().describe("legacy alternative to runId: a computerSessionId on that Computer, cms_…"),
|
|
@@ -12024,7 +12025,7 @@ var ACTION_DEFINITIONS = [
|
|
|
12024
12025
|
{
|
|
12025
12026
|
name: "tldraw_observe",
|
|
12026
12027
|
title: "Observe a tldraw board",
|
|
12027
|
-
description:
|
|
12028
|
+
description: `Capture a fresh bounded tldraw scene, lint result, document clock and digest, plus a PNG attachment for visual review; observe before editing. First use: read the tldraw guide at ${AGENT_GUIDE_URLS.tldraw}.`,
|
|
12028
12029
|
inputSchema: {
|
|
12029
12030
|
artifactId: string2().describe("the tldraw Artifact, art_…"),
|
|
12030
12031
|
pageId: string2().min(1).max(200).optional().describe("optional page to observe"),
|
|
@@ -12038,7 +12039,7 @@ var ACTION_DEFINITIONS = [
|
|
|
12038
12039
|
{
|
|
12039
12040
|
name: "tldraw_exec",
|
|
12040
12041
|
title: "Run a one-shot tldraw program",
|
|
12041
|
-
description:
|
|
12042
|
+
description: `Modify the current live tldraw board with preferred declarative operations or bounded JavaScript, then return a durable execution receipt; observe first, and never replay an unknown result automatically. First use: read the tldraw guide at ${AGENT_GUIDE_URLS.tldraw}.`,
|
|
12042
12043
|
inputSchema: {
|
|
12043
12044
|
artifactId: string2().describe("the tldraw Artifact, art_…"),
|
|
12044
12045
|
code: string2().min(1).max(1e5).optional().describe("advanced script source; mutually exclusive with operations"),
|
|
@@ -12320,7 +12321,7 @@ var ACTION_DEFINITIONS = [
|
|
|
12320
12321
|
{
|
|
12321
12322
|
name: "app_create",
|
|
12322
12323
|
title: "Create an App",
|
|
12323
|
-
description:
|
|
12324
|
+
description: `Create a stable first-class App identity in a Space before deploying code; public Apps are stateless and start public+unlisted+none, while durable Apps are always space+durable with membership authorization and isolated SQLite state. First use: read the Apps guide at ${AGENT_GUIDE_URLS.apps}.`,
|
|
12324
12325
|
inputSchema: {
|
|
12325
12326
|
spaceId: string2().describe("owning Space, spc_…"),
|
|
12326
12327
|
title: string2().min(1).max(160).describe("short factual App title"),
|
package/package.json
CHANGED