@lambdacurry/arbor 0.22.14 → 0.22.15

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 +40 -7
  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.22.14",
5
+ version: "0.22.15",
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",
@@ -8382,13 +8382,13 @@ var MCP_OUTPUT_SCHEMAS = {
8382
8382
  reacted: boolean2(),
8383
8383
  reactions: array(reactionCount)
8384
8384
  }),
8385
- create_topic: looseObject({ topicId: id }),
8385
+ create_topic: looseObject({ topicId: id, url: string2().optional() }),
8386
8386
  topic_update: looseObject({
8387
8387
  id,
8388
8388
  title: string2().optional(),
8389
8389
  purpose: nullableString.optional()
8390
8390
  }),
8391
- create_thread: looseObject({ threadId: id }),
8391
+ create_thread: looseObject({ threadId: id, url: string2().optional() }),
8392
8392
  thread_update: looseObject({
8393
8393
  id,
8394
8394
  title: string2().optional(),
@@ -8684,6 +8684,7 @@ var MCP_OUTPUT_SCHEMAS = {
8684
8684
  artifact_get: object({
8685
8685
  id,
8686
8686
  title: string2(),
8687
+ url: string2().optional(),
8687
8688
  kind: string2(),
8688
8689
  version: number2().int().nonnegative(),
8689
8690
  lineCount: number2().int().nonnegative(),
@@ -8695,6 +8696,16 @@ var MCP_OUTPUT_SCHEMAS = {
8695
8696
  nextLine: number2().int().min(1).nullable().optional(),
8696
8697
  totalLines: number2().int().nonnegative().optional()
8697
8698
  }),
8699
+ tldraw_create: looseObject({
8700
+ artifactId: id,
8701
+ artifactVersionId: id,
8702
+ version: number2().int().min(1),
8703
+ sourceAttachmentId: id,
8704
+ sourceSha256: string2(),
8705
+ documentClock: number2().int().min(0),
8706
+ replayed: boolean2(),
8707
+ url: string2().optional()
8708
+ }),
8698
8709
  tldraw_import: looseObject({
8699
8710
  artifactId: id,
8700
8711
  artifactVersionId: id,
@@ -8717,7 +8728,8 @@ var MCP_OUTPUT_SCHEMAS = {
8717
8728
  source: jsonObject,
8718
8729
  current: jsonObject,
8719
8730
  versionRefs: array(jsonObject),
8720
- script: jsonObject
8731
+ script: jsonObject,
8732
+ url: string2().optional()
8721
8733
  }),
8722
8734
  tldraw_workbench: looseObject({
8723
8735
  artifactId: id,
@@ -9302,8 +9314,14 @@ var OUTPUT_SHAPERS = {
9302
9314
  ["reacted", result.reacted],
9303
9315
  ["reactions", result.reactions]
9304
9316
  ]),
9305
- create_topic: (result) => defined([["topicId", result.id]]),
9306
- create_thread: (result) => defined([["threadId", result.id]]),
9317
+ create_topic: (result) => defined([
9318
+ ["topicId", result.id],
9319
+ ["url", result.url]
9320
+ ]),
9321
+ create_thread: (result) => defined([
9322
+ ["threadId", result.id],
9323
+ ["url", result.url]
9324
+ ]),
9307
9325
  space_create: (result) => defined([
9308
9326
  ["spaceId", result.id],
9309
9327
  ["visibility", result.visibility]
@@ -9618,6 +9636,7 @@ var MCP_TOOL_ANNOTATIONS = {
9618
9636
  curation: additive,
9619
9637
  artifact: additive,
9620
9638
  artifact_get: readOnly,
9639
+ tldraw_create: idempotent,
9621
9640
  tldraw_import: idempotent,
9622
9641
  tldraw_get: readOnly,
9623
9642
  tldraw_workbench: destructive,
@@ -11926,10 +11945,24 @@ var ACTION_DEFINITIONS = [
11926
11945
  toolset: "artifacts",
11927
11946
  run: forward("artifact.transition")
11928
11947
  },
11948
+ {
11949
+ name: "tldraw_create",
11950
+ title: "Create a blank tldraw board",
11951
+ description: "Create a durable blank native tldraw Artifact on a Thread, entering the same source/version/room/checkpoint lifecycle as an imported board. Retries with the same idempotencyKey return the original Artifact; observe before editing.",
11952
+ inputSchema: {
11953
+ title: string2().min(1).max(200).describe("the board title"),
11954
+ summary: string2().min(1).max(500).describe("one-line description of the board"),
11955
+ sourceThreadId: string2().describe("Thread that owns the board, thr_…"),
11956
+ idempotencyKey: string2().min(1).max(200).describe("stable key for this create request")
11957
+ },
11958
+ surfaces: ["mcp", "cli"],
11959
+ toolset: "artifacts",
11960
+ run: forward("tldraw.create")
11961
+ },
11929
11962
  {
11930
11963
  name: "tldraw_import",
11931
11964
  title: "Import a tldraw board",
11932
- description: "Create a durable tldraw Artifact from one uploaded .tldr source after Arbor validates the stored bytes and source thread. Retries with the same idempotencyKey return the original Artifact version.",
11965
+ description: "Import an external .tldr into a durable tldraw Artifact after Arbor validates the stored bytes and source Thread. For a new blank board use tldraw_create; retries with the same idempotencyKey return the original Artifact version, then observe before editing.",
11933
11966
  inputSchema: {
11934
11967
  sourceAttachmentId: string2().describe("uploaded .tldr Attachment, att_…"),
11935
11968
  title: string2().min(1).max(200).describe("the board title"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lambdacurry/arbor",
3
- "version": "0.22.14",
3
+ "version": "0.22.15",
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",