@lambdacurry/arbor 0.21.13 → 0.21.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.
- package/dist/arbor.js +60 -29
- package/package.json +1 -1
package/dist/arbor.js
CHANGED
|
@@ -17211,6 +17211,9 @@ config(en_default());
|
|
|
17211
17211
|
var EXTERNAL_DEFAULT_PAGE_SIZE = 50;
|
|
17212
17212
|
var EXTERNAL_DEFAULT_CONTRIB_LIMIT = 50;
|
|
17213
17213
|
var EXTERNAL_DEFAULT_THREAD_VIEW = "compact";
|
|
17214
|
+
var EXTERNAL_DEFAULT_ARTIFACT_VIEW = "card";
|
|
17215
|
+
var ARTIFACT_SOURCE_WINDOW_DEFAULT = 80;
|
|
17216
|
+
var ARTIFACT_SOURCE_WINDOW_MAX = 200;
|
|
17214
17217
|
var EXTERNAL_READ_DEFAULTS_BY_OPERATION = {};
|
|
17215
17218
|
function recordExternalReadDefaults(operation, defaults) {
|
|
17216
17219
|
if (!operation || !defaults)
|
|
@@ -17957,6 +17960,13 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
17957
17960
|
nextCursor: exports_external.string().nullable().optional(),
|
|
17958
17961
|
hasMore: exports_external.boolean().optional()
|
|
17959
17962
|
}),
|
|
17963
|
+
github_refresh_installation: exports_external.looseObject({
|
|
17964
|
+
installationId: id,
|
|
17965
|
+
accountLogin: exports_external.string(),
|
|
17966
|
+
repositorySelection: exports_external.enum(["all", "selected"]),
|
|
17967
|
+
repositoryCount: exports_external.number().int().min(0),
|
|
17968
|
+
lastSyncedAt: timestamp
|
|
17969
|
+
}),
|
|
17960
17970
|
github_connect_repository: exports_external.looseObject({
|
|
17961
17971
|
repositoryId: id,
|
|
17962
17972
|
scope: exports_external.enum(["organization", "space", "topic", "thread"]),
|
|
@@ -18007,7 +18017,11 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
18007
18017
|
unchanged: exports_external.boolean().optional()
|
|
18008
18018
|
}),
|
|
18009
18019
|
tree: exports_external.looseObject({ spaces: exports_external.array(treeSpace) }),
|
|
18010
|
-
members: exports_external.looseObject({
|
|
18020
|
+
members: exports_external.looseObject({
|
|
18021
|
+
members: exports_external.array(orgMember),
|
|
18022
|
+
total: exports_external.number().optional(),
|
|
18023
|
+
nextCursor: exports_external.string().optional()
|
|
18024
|
+
}),
|
|
18011
18025
|
space_create: exports_external.looseObject({ spaceId: id, visibility: exports_external.string() }),
|
|
18012
18026
|
space_update: exports_external.looseObject({
|
|
18013
18027
|
id,
|
|
@@ -18093,7 +18107,9 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
18093
18107
|
watching: exports_external.boolean()
|
|
18094
18108
|
}),
|
|
18095
18109
|
watch_list: exports_external.looseObject({
|
|
18096
|
-
watches: exports_external.array(jsonObject).optional()
|
|
18110
|
+
watches: exports_external.array(jsonObject).optional(),
|
|
18111
|
+
total: exports_external.number().int().min(0),
|
|
18112
|
+
nextCursor: exports_external.string().optional()
|
|
18097
18113
|
}),
|
|
18098
18114
|
curation: exports_external.looseObject({
|
|
18099
18115
|
contributionId: id.optional(),
|
|
@@ -18126,21 +18142,19 @@ var MCP_OUTPUT_SCHEMAS = {
|
|
|
18126
18142
|
threadId: id.nullable().optional(),
|
|
18127
18143
|
changed: exports_external.boolean().optional()
|
|
18128
18144
|
}),
|
|
18129
|
-
artifact_get: exports_external.
|
|
18145
|
+
artifact_get: exports_external.object({
|
|
18130
18146
|
id,
|
|
18131
18147
|
title: exports_external.string(),
|
|
18132
18148
|
kind: exports_external.string(),
|
|
18133
|
-
|
|
18134
|
-
|
|
18135
|
-
|
|
18136
|
-
|
|
18137
|
-
|
|
18138
|
-
|
|
18139
|
-
|
|
18140
|
-
|
|
18141
|
-
|
|
18142
|
-
watching: exports_external.boolean(),
|
|
18143
|
-
url: exports_external.string()
|
|
18149
|
+
version: exports_external.number().int().nonnegative(),
|
|
18150
|
+
lineCount: exports_external.number().int().nonnegative(),
|
|
18151
|
+
byteLength: exports_external.number().int().nonnegative(),
|
|
18152
|
+
outline: exports_external.array(exports_external.object({ title: exports_external.string(), startLine: exports_external.number().int().min(1) })),
|
|
18153
|
+
source: exports_external.string().optional(),
|
|
18154
|
+
startLine: exports_external.number().int().min(0).optional(),
|
|
18155
|
+
endLine: exports_external.number().int().min(0).optional(),
|
|
18156
|
+
nextLine: exports_external.number().int().min(1).nullable().optional(),
|
|
18157
|
+
totalLines: exports_external.number().int().nonnegative().optional()
|
|
18144
18158
|
}),
|
|
18145
18159
|
artifact_transition: exports_external.looseObject({
|
|
18146
18160
|
artifactId: id,
|
|
@@ -18864,6 +18878,7 @@ var MCP_TOOL_ANNOTATIONS = {
|
|
|
18864
18878
|
app_archive: additive,
|
|
18865
18879
|
charter: destructive,
|
|
18866
18880
|
github_repositories: readOnly,
|
|
18881
|
+
github_refresh_installation: openWorld,
|
|
18867
18882
|
github_connect_repository: idempotent,
|
|
18868
18883
|
computer_open: additive,
|
|
18869
18884
|
computer_reprovision: destructiveIdempotent,
|
|
@@ -18930,7 +18945,7 @@ Arbor Computer is the complete software execution platform attached to Arbor's d
|
|
|
18930
18945
|
|
|
18931
18946
|
${ARBOR_FEEDBACK_GUIDANCE}
|
|
18932
18947
|
|
|
18933
|
-
1. ORIENT, CONFIGURE, AND AUTHORIZE. Start with get_computer(threadId) to inspect the effective inherited recipe, repository authorization, compatibility, and durable lineage. Use set_organization_computer, set_space_computer, set_topic_computer, or set_thread_computer only when the corresponding complete sparse layer must be replaced; use github_repositories then github_connect_repository to authorize repositories at the narrowest scope that should inherit them. attach_computer mints durable protocol identity without starting a runtime; computer_open attaches as needed and starts or resumes the project environment. Each returned repository entry includes verified root instruction pointers when that repo has an AGENTS.md: read surfaced repository instructions before substantial edits or verification, then check for a nearer nested AGENTS.md once the target path is known. Repo-local instructions/scripts/config beat guessed formatter, test, lint, or build commands.
|
|
18948
|
+
1. ORIENT, CONFIGURE, AND AUTHORIZE. Start with get_computer(threadId) to inspect the effective inherited recipe, repository authorization, compatibility, and durable lineage. Use set_organization_computer, set_space_computer, set_topic_computer, or set_thread_computer only when the corresponding complete sparse layer must be replaced; use github_repositories then github_connect_repository to authorize repositories at the narrowest scope that should inherit them. If github_repositories looks stale, github_refresh_installation reconciles the cached inventory from GitHub. attach_computer mints durable protocol identity without starting a runtime; computer_open attaches as needed and starts or resumes the project environment. Each returned repository entry includes verified root instruction pointers when that repo has an AGENTS.md: read surfaced repository instructions before substantial edits or verification, then check for a nearer nested AGENTS.md once the target path is known. Repo-local instructions/scripts/config beat guessed formatter, test, lint, or build commands.
|
|
18934
18949
|
2. READ THE CAPABILITIES CARD, NOT THE BACKEND. computer_open and computer_status describe the live PARENT Thread Computer and return the exact computerSessionId for parent filesystem, command, checkpoint, Preview, bundle, and stop operations. computer_status does not establish isolated Run activity; use computer_run_receipt(runId) and computer_process_read for Run-owned work. Command-line utilities, including Git and package managers, run through computer_exec; check unfamiliar binaries with command -v.
|
|
18935
18950
|
3. ONE RUN PER TASK. A write Run defaults to an isolated execution environment with its own filesystem, processes, ports, and /tmp while preserving /workspace paths; a read Run shares the parent. Pass runId to Run-aware tools. If a response is lost, recover the durable operation/process identity from computer_run_receipt and read it before retrying. Once every operation is settled, computer_run_suspend publishes the exact workspace and releases the provider during an external wait; the next Run-aware operation restores that checkpoint under the same runId automatically. Suspension refuses active processes or unsettled outcomes and never replays unknown work, so reconcile process and Git/publication evidence first. An isolated local commit or Preview is not Git publication; push coherent work and prove it with computer_repo_work_status before computer_run_finish destroys the final placement. discard=true is the explicit choice to destroy proven non-durable work.
|
|
18936
18951
|
4. CHECKPOINT COMPLETE PARENT UNITS. computer_checkpoint advances immutable parent lineage after an intermediate complete unit; computer_stop performs the final checkpoint before teardown. An isolated Run Preview is durable review output, not adoption or a checkpoint. The internal provider-handle publication operations are not agent tools.
|
|
@@ -19012,6 +19027,15 @@ function runAdminFeedback(ex, input) {
|
|
|
19012
19027
|
return Promise.reject(new Error(`unknown verb "${verb ?? ""}" — expected one of: ${ADMIN_FEEDBACK_VERB_HELP}`));
|
|
19013
19028
|
}
|
|
19014
19029
|
var NOTIFICATION_TRIAGE_DESCRIPTION = "List your awareness feed newest first with unseen count and derived triage class: `settled-context` = settled Thread context; `owed-by-me` = an open request pointing to `inbox`; `judgment-available` = live engagement inviting judgment; `closed-loop` = your request completed; `room-motion` = ambient activity. Notifications are FYI, not a second obligation surface: `inbox` alone contains work owed by you; this cannot mark notifications read or modify inbox obligations.";
|
|
19030
|
+
var ARTIFACT_GET_INPUT = {
|
|
19031
|
+
artifactId: exports_external.string().describe("the Artifact, art_…"),
|
|
19032
|
+
version: exports_external.number().int().min(1).optional().describe("read this old snapshot instead of the current"),
|
|
19033
|
+
startLine: exports_external.number().int().min(1).optional().describe("1-indexed source window start; omit with heading for a section window"),
|
|
19034
|
+
limit: exports_external.number().int().min(1).max(ARTIFACT_SOURCE_WINDOW_MAX).optional().describe(`source window size when startLine or heading is set (default ${ARTIFACT_SOURCE_WINDOW_DEFAULT}, max ${ARTIFACT_SOURCE_WINDOW_MAX}). This is not a list page size`),
|
|
19035
|
+
heading: exports_external.string().min(1).optional().describe("first ##/### title that matches exactly, else the first prefix match"),
|
|
19036
|
+
all: exports_external.boolean().optional().describe("explicit complete source. Cannot combine with startLine, heading, or limit; prefer a window unless you need every line")
|
|
19037
|
+
};
|
|
19038
|
+
var ARTIFACT_GET_DESCRIPTION = `Read an Artifact as a compact card (id, title, kind, version, lineCount, byteLength, ##/### outline with startLine) so a plan can be oriented without loading source; pass startLine+limit (default ${ARTIFACT_SOURCE_WINDOW_DEFAULT}, max ${ARTIFACT_SOURCE_WINDOW_MAX}) or heading (first ##/### exact or prefix) for a source window, or all=true/--all for the full source. Pass version for an older snapshot; this read cannot edit content, bind a surface, change lifecycle, or delete.`;
|
|
19015
19039
|
var PAGINATION_INPUT = {
|
|
19016
19040
|
limit: exports_external.number().int().min(1).optional().describe(`max items to return. MCP/CLI/API default to ${EXTERNAL_DEFAULT_PAGE_SIZE} and return nextCursor when more remain; pass all=true/--all for the complete list. In-process web omit is still a compatibility full read`),
|
|
19017
19041
|
cursor: exports_external.string().optional().describe("opaque cursor from a prior response's nextCursor (use with --limit)"),
|
|
@@ -19038,12 +19062,23 @@ var ACTION_DEFINITIONS = [
|
|
|
19038
19062
|
{
|
|
19039
19063
|
name: "github_repositories",
|
|
19040
19064
|
title: "List installed GitHub repositories",
|
|
19041
|
-
description: "List repositories covered by this organization's verified Arbor Computer GitHub App
|
|
19065
|
+
description: "List repositories covered by this organization's verified Arbor Computer GitHub App (ids and metadata, never credentials); listing alone grants no Computer access. Use github_connect_repository to authorize one at an Arbor scope, or github_refresh_installation when the cached inventory looks stale.",
|
|
19042
19066
|
inputSchema: { ...PAGINATION_INPUT },
|
|
19043
19067
|
surfaces: ["computer-mcp", "cli"],
|
|
19044
19068
|
toolset: "projects",
|
|
19045
19069
|
run: forward("github.repositories")
|
|
19046
19070
|
},
|
|
19071
|
+
{
|
|
19072
|
+
name: "github_refresh_installation",
|
|
19073
|
+
title: "Refresh a GitHub installation inventory",
|
|
19074
|
+
description: "Reconcile one claimed GitHub App installation's cached repository inventory from GitHub without connecting repositories or changing App permissions. Org owner/admin only; pass installationId from github_repositories.",
|
|
19075
|
+
inputSchema: {
|
|
19076
|
+
installationId: exports_external.string().describe("claimed installation id from github_repositories, ghi_…")
|
|
19077
|
+
},
|
|
19078
|
+
surfaces: ["computer-mcp", "cli"],
|
|
19079
|
+
toolset: "projects",
|
|
19080
|
+
run: forward("github.refresh_installation")
|
|
19081
|
+
},
|
|
19047
19082
|
{
|
|
19048
19083
|
name: "github_connect_repository",
|
|
19049
19084
|
title: "Connect a GitHub repository",
|
|
@@ -19955,11 +19990,9 @@ var ACTION_DEFINITIONS = [
|
|
|
19955
19990
|
{
|
|
19956
19991
|
name: "get_artifact",
|
|
19957
19992
|
title: "Read an artifact",
|
|
19958
|
-
description:
|
|
19959
|
-
inputSchema:
|
|
19960
|
-
|
|
19961
|
-
version: exports_external.number().optional().describe("read this old snapshot instead of the current")
|
|
19962
|
-
},
|
|
19993
|
+
description: ARTIFACT_GET_DESCRIPTION,
|
|
19994
|
+
inputSchema: ARTIFACT_GET_INPUT,
|
|
19995
|
+
externalReadDefaults: { view: EXTERNAL_DEFAULT_ARTIFACT_VIEW },
|
|
19963
19996
|
surfaces: ["cli"],
|
|
19964
19997
|
toolset: "artifacts",
|
|
19965
19998
|
run: forward("artifact.get")
|
|
@@ -20285,7 +20318,7 @@ var ACTION_DEFINITIONS = [
|
|
|
20285
20318
|
name: "members",
|
|
20286
20319
|
title: "List the people + agents in your org",
|
|
20287
20320
|
description: "List everyone in your org with profile id, human/agent identity, role, charter, and capabilities needed for routing. Use it to resolve profile ids for mentions or targeted requests; it cannot modify membership.",
|
|
20288
|
-
inputSchema: {},
|
|
20321
|
+
inputSchema: { ...PAGINATION_INPUT },
|
|
20289
20322
|
surfaces: ["mcp", "cli"],
|
|
20290
20323
|
toolset: "loop",
|
|
20291
20324
|
run: forward("org.members")
|
|
@@ -20771,7 +20804,7 @@ var ACTION_DEFINITIONS = [
|
|
|
20771
20804
|
name: "watch_list",
|
|
20772
20805
|
title: "List your watches",
|
|
20773
20806
|
description: "List every Thread, Artifact, and Topic you currently watch. It cannot start or stop a watch or change notifications.",
|
|
20774
|
-
inputSchema: {},
|
|
20807
|
+
inputSchema: { ...PAGINATION_INPUT },
|
|
20775
20808
|
surfaces: ["mcp"],
|
|
20776
20809
|
toolset: "loop",
|
|
20777
20810
|
run: forward("watch.list")
|
|
@@ -20804,7 +20837,7 @@ var ACTION_DEFINITIONS = [
|
|
|
20804
20837
|
name: "watches",
|
|
20805
20838
|
title: "List what you watch",
|
|
20806
20839
|
description: "List every thread/artifact/topic you're watching (AD-202), newest first.",
|
|
20807
|
-
inputSchema: {},
|
|
20840
|
+
inputSchema: { ...PAGINATION_INPUT },
|
|
20808
20841
|
surfaces: ["cli"],
|
|
20809
20842
|
toolset: "loop",
|
|
20810
20843
|
run: forward("watch.list")
|
|
@@ -20864,11 +20897,9 @@ var ACTION_DEFINITIONS = [
|
|
|
20864
20897
|
{
|
|
20865
20898
|
name: "artifact_get",
|
|
20866
20899
|
title: "Read an Artifact",
|
|
20867
|
-
description:
|
|
20868
|
-
inputSchema:
|
|
20869
|
-
|
|
20870
|
-
version: exports_external.number().optional().describe("read this old snapshot instead of the current")
|
|
20871
|
-
},
|
|
20900
|
+
description: ARTIFACT_GET_DESCRIPTION,
|
|
20901
|
+
inputSchema: ARTIFACT_GET_INPUT,
|
|
20902
|
+
externalReadDefaults: { view: EXTERNAL_DEFAULT_ARTIFACT_VIEW },
|
|
20872
20903
|
surfaces: ["mcp"],
|
|
20873
20904
|
toolset: "artifacts",
|
|
20874
20905
|
run: forward("artifact.get")
|
package/package.json
CHANGED