@lambdacurry/arbor 0.21.56 → 0.21.58
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 +41 -15
- package/package.json +1 -1
package/dist/arbor.js
CHANGED
|
@@ -16,7 +16,7 @@ var __export = (target, all) => {
|
|
|
16
16
|
// package.json
|
|
17
17
|
var package_default = {
|
|
18
18
|
name: "@lambdacurry/arbor",
|
|
19
|
-
version: "0.21.
|
|
19
|
+
version: "0.21.58",
|
|
20
20
|
description: "The Arbor CLI — a shared workspace for people and agents. The human + headless-agent write path over Arbor's guarded operation surface.",
|
|
21
21
|
keywords: [
|
|
22
22
|
"agents",
|
|
@@ -18037,6 +18037,12 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
18037
18037
|
purpose: nullableString.optional()
|
|
18038
18038
|
}),
|
|
18039
18039
|
create_thread: exports_external.looseObject({ threadId: id }),
|
|
18040
|
+
thread_update: exports_external.looseObject({
|
|
18041
|
+
id,
|
|
18042
|
+
title: exports_external.string().optional(),
|
|
18043
|
+
objective: exports_external.string().optional(),
|
|
18044
|
+
topicId: exports_external.string().optional()
|
|
18045
|
+
}),
|
|
18040
18046
|
set_organization_computer: exports_external.looseObject({ config: computerConfigLayer.nullable() }),
|
|
18041
18047
|
set_space_computer: exports_external.looseObject({ config: computerConfigLayer.nullable() }),
|
|
18042
18048
|
set_topic_computer: exports_external.looseObject({ config: computerConfigLayer.nullable() }),
|
|
@@ -19045,6 +19051,7 @@ var MCP_TOOL_ANNOTATIONS = {
|
|
|
19045
19051
|
create_topic: additive,
|
|
19046
19052
|
topic_update: additive,
|
|
19047
19053
|
create_thread: additive,
|
|
19054
|
+
thread_update: additive,
|
|
19048
19055
|
set_organization_computer: destructiveIdempotent,
|
|
19049
19056
|
set_space_computer: destructiveIdempotent,
|
|
19050
19057
|
set_topic_computer: destructiveIdempotent,
|
|
@@ -19672,11 +19679,11 @@ var ACTION_DEFINITIONS = [
|
|
|
19672
19679
|
{
|
|
19673
19680
|
name: "create_topic",
|
|
19674
19681
|
title: "Create a topic",
|
|
19675
|
-
description: "
|
|
19682
|
+
description: "Create a Topic for a durable sub-area that will hold multiple Threads (check tree first so structure stays scarce); otherwise keep the work in a Thread. Give it one primary operating role so future contributors know what normally happens there.",
|
|
19676
19683
|
inputSchema: {
|
|
19677
19684
|
spaceId: exports_external.string().describe("the space to create the topic in, spc_…"),
|
|
19678
19685
|
title: exports_external.string().min(1).describe("the topic's name — an area of work, not a question"),
|
|
19679
|
-
purpose: exports_external.string().optional().describe("
|
|
19686
|
+
purpose: exports_external.string().optional().describe("what this Topic accomplishes and what belongs here, leading with its primary role — Direction, Delivery, Operations, Intake, Coordination, or Learning; name an external or split source of truth or a handoff boundary only when it materially matters")
|
|
19680
19687
|
},
|
|
19681
19688
|
surfaces: ["mcp", "cli"],
|
|
19682
19689
|
toolset: "structure",
|
|
@@ -19689,7 +19696,7 @@ var ACTION_DEFINITIONS = [
|
|
|
19689
19696
|
inputSchema: {
|
|
19690
19697
|
topicId: exports_external.string().describe("the topic to edit, top_…"),
|
|
19691
19698
|
title: exports_external.string().min(1).optional().describe("a new title — an area of work, not a question"),
|
|
19692
|
-
purpose: exports_external.string().optional().describe("a new
|
|
19699
|
+
purpose: exports_external.string().optional().describe("a new purpose — what this Topic accomplishes and what belongs here, leading with its primary role (Direction, Delivery, Operations, Intake, Coordination, or Learning); name an external or split source of truth or a handoff boundary only when it materially matters")
|
|
19693
19700
|
},
|
|
19694
19701
|
surfaces: ["mcp", "cli"],
|
|
19695
19702
|
toolset: "spaces",
|
|
@@ -19698,7 +19705,7 @@ var ACTION_DEFINITIONS = [
|
|
|
19698
19705
|
{
|
|
19699
19706
|
name: "set_topic_guidance",
|
|
19700
19707
|
title: "Set a topic's guidance",
|
|
19701
|
-
description: "Set a topic's SOFT guidance — the local how-we-work norms for this topic (culture/quality, AD-063), e.g. 'recall before re-deriving', 'one typed point per contribution'. Soft norms only; hard governance (permissions, rate, join) lives at the space, and FACTS about the area (where its code lives, what it covers) belong in the topic's purpose — `topic_update`, not here. You READ guidance to learn the room's habits — it's distinct from `set_ways_to_help` (what's open on a thread) and `request` (obligations). Replaces the whole list; pass [] to clear.
|
|
19708
|
+
description: "Set a topic's SOFT guidance — the local how-we-work norms for this topic (culture/quality, AD-063), e.g. 'recall before re-deriving', 'one typed point per contribution'. Soft norms only; hard governance (permissions, rate, join) lives at the space, and FACTS about the area (where its code lives, what it covers) belong in the topic's purpose — `topic_update`, not here. You READ guidance to learn the room's habits — it's distinct from `set_ways_to_help` (what's open on a thread) and `request` (obligations). Replaces the whole list; pass [] to clear.",
|
|
19702
19709
|
inputSchema: {
|
|
19703
19710
|
topicId: exports_external.string().describe("the topic, top_…"),
|
|
19704
19711
|
guidance: proseList("the full guidance list — replaces the existing one; [] clears it")
|
|
@@ -19710,7 +19717,7 @@ var ACTION_DEFINITIONS = [
|
|
|
19710
19717
|
{
|
|
19711
19718
|
name: "set_space_guidance",
|
|
19712
19719
|
title: "Set a space's guidance",
|
|
19713
|
-
description: "Set a SPACE's SOFT guidance — the how-we-work-here norms for the whole space (culture/quality, AD-062/063), e.g. 'recall before re-deriving', 'promote the standout, sparingly'. Soft norms only, read not enforced; hard governance (permissions, rate, join) is separate. Members READ it (via space_get) to learn how the room operates — it's broader than `set_topic_guidance` (one topic's habits) and distinct from `request` (obligations). Replaces the whole list; pass [] to clear.
|
|
19720
|
+
description: "Set a SPACE's SOFT guidance — the how-we-work-here norms for the whole space (culture/quality, AD-062/063), e.g. 'recall before re-deriving', 'promote the standout, sparingly'. Soft norms only, read not enforced; hard governance (permissions, rate, join) is separate. Members READ it (via space_get) to learn how the room operates — it's broader than `set_topic_guidance` (one topic's habits) and distinct from `request` (obligations). Replaces the whole list; pass [] to clear.",
|
|
19714
19721
|
inputSchema: {
|
|
19715
19722
|
spaceId: exports_external.string().describe("the space, spc_…"),
|
|
19716
19723
|
guidance: proseList("the full guidance list — replaces the existing one; [] clears it")
|
|
@@ -19746,17 +19753,31 @@ var ACTION_DEFINITIONS = [
|
|
|
19746
19753
|
{
|
|
19747
19754
|
name: "create_thread",
|
|
19748
19755
|
title: "Open a thread",
|
|
19749
|
-
description: "Open a
|
|
19756
|
+
description: "Open a Thread for one focused unit of work that does not fit an existing Thread (check tree first), then make the first contribution and set waysToHelp; link an existing Goal when it serves one, or create one only when 2+ Threads share an outcome. Choose the working recipe — Decide a question, Deliver an outcome, Investigate evidence, Manage one instance, or Maintain a standing concern — and make done clear for finite work.",
|
|
19750
19757
|
inputSchema: {
|
|
19751
19758
|
spaceId: exports_external.string().describe("the space, spc_…"),
|
|
19752
19759
|
topicId: exports_external.string().describe("the topic to file it under, top_…"),
|
|
19753
|
-
title: exports_external.string().min(1).describe("the
|
|
19754
|
-
objective: exports_external.string().min(1).describe("what
|
|
19760
|
+
title: exports_external.string().min(1).describe("name the question, outcome, investigation, instance, or standing concern — not a status"),
|
|
19761
|
+
objective: exports_external.string().min(1).describe("what this Thread should accomplish; for finite work, state what done means")
|
|
19755
19762
|
},
|
|
19756
19763
|
surfaces: ["mcp", "cli"],
|
|
19757
19764
|
toolset: "loop",
|
|
19758
19765
|
run: forward("thread.create")
|
|
19759
19766
|
},
|
|
19767
|
+
{
|
|
19768
|
+
name: "thread_update",
|
|
19769
|
+
title: "Edit a thread's title, objective, or topic",
|
|
19770
|
+
description: "Correct a Thread's title or objective, or move it under another Topic of the same Space, patching only supplied fields; use it to make done clear or refile misfiled work instead of archiving and reopening. Status moves stay with `transition_thread`, and the temporary help list with `charter` ways_to_help.",
|
|
19771
|
+
inputSchema: {
|
|
19772
|
+
threadId: exports_external.string().describe("the thread to edit, thr_…"),
|
|
19773
|
+
title: exports_external.string().min(1).optional().describe("a new title — the question, outcome, investigation, instance, or standing concern"),
|
|
19774
|
+
objective: exports_external.string().min(1).optional().describe("a new objective — what this Thread should accomplish; for finite work, what done means"),
|
|
19775
|
+
topicId: exports_external.string().optional().describe("move the thread under this topic of the same space, top_…")
|
|
19776
|
+
},
|
|
19777
|
+
surfaces: ["mcp", "cli"],
|
|
19778
|
+
toolset: "loop",
|
|
19779
|
+
run: forward("thread.setConfig")
|
|
19780
|
+
},
|
|
19760
19781
|
{
|
|
19761
19782
|
name: "set_organization_computer",
|
|
19762
19783
|
title: "Replace organization computer defaults",
|
|
@@ -20216,7 +20237,7 @@ var ACTION_DEFINITIONS = [
|
|
|
20216
20237
|
{
|
|
20217
20238
|
name: "transition_thread",
|
|
20218
20239
|
title: "Move a thread's lifecycle",
|
|
20219
|
-
description: "Move a Thread among active, needs-review, stuck, standing, resolved, or archived with an optional reason; illegal lifecycle jumps are rejected. Resolve
|
|
20240
|
+
description: "Move a Thread among active, needs-review, stuck, standing, resolved, or archived with an optional reason; illegal lifecycle jumps are rejected. Resolve finite Decide/Deliver/Investigate/Manage work once its outcome is in, archive retired work (refile misfiled work with `thread_update` instead), use standing only for intentionally open-ended concerns, and curate standout outputs separately.",
|
|
20220
20241
|
inputSchema: {
|
|
20221
20242
|
threadId: exports_external.string().describe("the thread to move, thr_…"),
|
|
20222
20243
|
to: exports_external.string().describe("target status: active|needs-review|stuck|standing|resolved|archived"),
|
|
@@ -20776,10 +20797,10 @@ var ACTION_DEFINITIONS = [
|
|
|
20776
20797
|
{
|
|
20777
20798
|
name: "space_create",
|
|
20778
20799
|
title: "Create a space",
|
|
20779
|
-
description: "Create a
|
|
20800
|
+
description: "Create a Space when work needs its own durable collaboration/governance boundary — its own membership, visibility, shared norms, and multiple durable areas; you become its first admin (org owner/admins always can, other members only when enabled), with open/private visibility and optional seeded members. If the work can live under an existing Space with the same people and governance, use a Topic instead.",
|
|
20780
20801
|
inputSchema: {
|
|
20781
20802
|
title: exports_external.string().min(1).describe("the space title"),
|
|
20782
|
-
purpose: exports_external.string().optional().describe("
|
|
20803
|
+
purpose: exports_external.string().optional().describe("why this boundary exists and what it is around — commonly a Product/System, Program/Function, Portfolio/Network, or Practice/Community — plus its dominant work modes (Build, Operate, Coordinate, Discuss, Share) when that helps; plain prose, not metadata syntax"),
|
|
20783
20804
|
visibility: exports_external.enum(["open", "private"]).optional().describe("open (default) or private (invite-only)"),
|
|
20784
20805
|
memberProfileIds: exports_external.array(exports_external.string()).optional().describe("org profile ids to seed as members — agents added directly, humans get a pending invite")
|
|
20785
20806
|
},
|
|
@@ -20793,7 +20814,7 @@ var ACTION_DEFINITIONS = [
|
|
|
20793
20814
|
description: "Edit a Space's purpose, title, or visibility; org owner/admin or that Space's admin only, and only supplied fields are patched. Use this for factual room metadata, including open/private; collaboration norms belong in Space guidance.",
|
|
20794
20815
|
inputSchema: {
|
|
20795
20816
|
spaceId: exports_external.string().describe("the space, spc_…"),
|
|
20796
|
-
purpose: exports_external.string().optional().describe("
|
|
20817
|
+
purpose: exports_external.string().optional().describe("why this boundary exists and what it is around — commonly a Product/System, Program/Function, Portfolio/Network, or Practice/Community — plus its dominant work modes (Build, Operate, Coordinate, Discuss, Share) when that helps; plain prose, not metadata syntax"),
|
|
20797
20818
|
title: exports_external.string().optional().describe("a new title for the space"),
|
|
20798
20819
|
visibility: exports_external.enum(["open", "private"]).optional().describe("open or private (invite-only)")
|
|
20799
20820
|
},
|
|
@@ -21637,7 +21658,7 @@ var ACTION_DEFINITIONS = [
|
|
|
21637
21658
|
{
|
|
21638
21659
|
name: "charter",
|
|
21639
21660
|
title: "Set the guidance surfaces",
|
|
21640
|
-
description: "Write collaboration guidance: space_charter for a member's per-Space operating charter, space/topic guidance for
|
|
21661
|
+
description: "Write collaboration guidance: space_charter for a member's per-Space operating charter, space/topic guidance for durable how-we-work-here norms, space/topic lanes for the durable kinds of help welcome there, or ways_to_help for one Thread's temporary needs. Each write replaces the selected value/list (empty clears).",
|
|
21641
21662
|
inputSchema: {
|
|
21642
21663
|
verb: exports_external.enum([
|
|
21643
21664
|
"space_charter",
|
|
@@ -22849,7 +22870,12 @@ var KNOWN_MISREACHES = [
|
|
|
22849
22870
|
{ tried: "topics", use: "tree --depth topics", why: "topics are a tree depth" },
|
|
22850
22871
|
{ tried: "search", use: "recall <query>", why: "recall is the search surface" },
|
|
22851
22872
|
{ tried: "update topic", use: "topic update --topic-id top_…", why: "this command is noun-verb" },
|
|
22852
|
-
{ tried: "update space", use: "space update --space-id spc_…", why: "this command is noun-verb" }
|
|
22873
|
+
{ tried: "update space", use: "space update --space-id spc_…", why: "this command is noun-verb" },
|
|
22874
|
+
{
|
|
22875
|
+
tried: "update thread",
|
|
22876
|
+
use: "thread update --thread-id thr_…",
|
|
22877
|
+
why: "this command is noun-verb"
|
|
22878
|
+
}
|
|
22853
22879
|
];
|
|
22854
22880
|
function familyHelp(positionals) {
|
|
22855
22881
|
if (positionals.length !== 1)
|
package/package.json
CHANGED