@lambdacurry/arbor 0.23.9 → 0.23.11

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 +55 -2
  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.9",
5
+ version: "0.23.11",
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",
@@ -8012,6 +8012,17 @@ var COMPUTER_WORKSPACE_RECOVERY_LEASE_MS = COMPUTER_WORKSPACE_RECOVERY_CHECKPOIN
8012
8012
 
8013
8013
  // ../core/src/queries/artifact-base.ts
8014
8014
  var eventChronology = sql`_rowid_`;
8015
+ var SPACE_ARTIFACT_STATUSES = [
8016
+ "draft",
8017
+ "proposed",
8018
+ "active",
8019
+ "promoted",
8020
+ "needs-review",
8021
+ "superseded",
8022
+ "deprecated",
8023
+ "archived"
8024
+ ];
8025
+ var artifactUpdatedAt = sql`coalesce((select max(${events.createdAt}) from ${events} where ${events.objectType} = 'artifact' and ${events.objectId} = ${artifacts.id}), ${artifacts.createdAt})`;
8015
8026
  // ../core/src/ops/request.ts
8016
8027
  var REQUEST_TTL_MS = 14 * 24 * 60 * 60 * 1000;
8017
8028
 
@@ -9336,6 +9347,21 @@ var MCP_OUTPUT_SCHEMAS = {
9336
9347
  threadId: id.nullable().optional(),
9337
9348
  changed: boolean2().optional()
9338
9349
  }),
9350
+ artifact_list: looseObject({
9351
+ artifacts: array(object({
9352
+ id,
9353
+ title: string2(),
9354
+ type: string2(),
9355
+ status: string2(),
9356
+ topicId: id,
9357
+ topicTitle: string2(),
9358
+ threadId: id,
9359
+ threadTitle: string2(),
9360
+ updatedAt: timestamp
9361
+ })),
9362
+ total: number2().int().nonnegative(),
9363
+ nextCursor: string2().optional()
9364
+ }),
9339
9365
  artifact_get: object({
9340
9366
  id,
9341
9367
  title: string2(),
@@ -10394,6 +10420,7 @@ var MCP_TOOL_ANNOTATIONS = {
10394
10420
  curation: additive,
10395
10421
  artifact: additive,
10396
10422
  artifact_get: readOnly,
10423
+ artifact_list: readOnly,
10397
10424
  tldraw_create: idempotent,
10398
10425
  tldraw_import: idempotent,
10399
10426
  tldraw_get: readOnly,
@@ -10836,6 +10863,14 @@ var PAGINATION_INPUT = {
10836
10863
  cursor: string2().optional().describe("opaque cursor from a prior response's nextCursor (use with --limit)"),
10837
10864
  all: boolean2().optional().describe("explicit complete retrieval — skip the bounded default page. Prefer limit+cursor unless you need the whole collection")
10838
10865
  };
10866
+ var ARTIFACT_LIST_DESCRIPTION = "List one Space's Artifacts, most recently updated first, one page at a time. Topic, type, and status filters run before the page; deleted Artifacts stay out, and this read cannot edit one.";
10867
+ var ARTIFACT_LIST_INPUT = {
10868
+ spaceId: string2().describe("the Space, spc_…"),
10869
+ topicId: union([string2().min(1), array(string2().min(1)).min(1)]).optional().describe("source Topic ids, top_…. One or more. Filters before the page. Omit for every Topic in the Space."),
10870
+ type: union([_enum(ARTIFACT_TYPES), array(_enum(ARTIFACT_TYPES)).min(1)]).optional().describe("existing Artifact type. One or more. Filters before the page."),
10871
+ status: union([_enum(SPACE_ARTIFACT_STATUSES), array(_enum(SPACE_ARTIFACT_STATUSES)).min(1)]).optional().describe("lifecycle: draft, proposed, active, promoted, needs-review, superseded, deprecated, or archived. One or more. Deleted stays out. Omit for every non-deleted Artifact. Filters before the page."),
10872
+ ...PAGINATION_INPUT
10873
+ };
10839
10874
  var WORKFLOW_LABEL_INPUT = object({
10840
10875
  key: string2().min(1).describe("stable id within this workflow"),
10841
10876
  name: string2().min(1).describe("room-facing column name"),
@@ -11351,7 +11386,7 @@ var ACTION_DEFINITIONS = [
11351
11386
  assignee: union([string2(), array(string2()).min(1).max(5)]).optional().describe("`me` (default), a profile id (prof_…), a list (assigned to ALL of them), or `any` (every Thread in the required spaceId)"),
11352
11387
  unassigned: boolean2().optional().describe("threads with no assignee — requires spaceId or topicId"),
11353
11388
  spaceId: string2().optional().describe("one space, spc_… — required for assignee=any; unassigned needs spaceId or topicId"),
11354
- topicId: string2().optional().describe("narrow to one topic, top_…"),
11389
+ topicId: union([string2(), array(string2()).min(1)]).optional().describe("one topic (top_…) or a list — narrows the page in SQL before the limit; omit for every topic in scope"),
11355
11390
  status: _enum([
11356
11391
  "current",
11357
11392
  "all",
@@ -11900,6 +11935,15 @@ var ACTION_DEFINITIONS = [
11900
11935
  toolset: "artifacts",
11901
11936
  run: forward("artifact.get")
11902
11937
  },
11938
+ {
11939
+ name: "list_artifacts",
11940
+ title: "List a Space's Artifacts",
11941
+ description: ARTIFACT_LIST_DESCRIPTION,
11942
+ inputSchema: ARTIFACT_LIST_INPUT,
11943
+ surfaces: ["cli"],
11944
+ toolset: "artifacts",
11945
+ run: forward("artifact.listBySpace")
11946
+ },
11903
11947
  {
11904
11948
  name: "edit_artifact",
11905
11949
  title: "Edit a text artifact",
@@ -12916,6 +12960,15 @@ var ACTION_DEFINITIONS = [
12916
12960
  toolset: "artifacts",
12917
12961
  run: forward("artifact.get")
12918
12962
  },
12963
+ {
12964
+ name: "artifact_list",
12965
+ title: "List a Space's Artifacts",
12966
+ description: ARTIFACT_LIST_DESCRIPTION,
12967
+ inputSchema: ARTIFACT_LIST_INPUT,
12968
+ surfaces: ["mcp"],
12969
+ toolset: "artifacts",
12970
+ run: forward("artifact.listBySpace")
12971
+ },
12919
12972
  {
12920
12973
  name: "artifact_transition",
12921
12974
  title: "Change an Artifact's lifecycle",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lambdacurry/arbor",
3
- "version": "0.23.9",
3
+ "version": "0.23.11",
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",