@amalgm/shell 0.1.164-preview.34748858861 → 0.1.164-preview.34945470121

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/PURPOSE.md CHANGED
@@ -47,6 +47,15 @@ gap to resolve at its owning SDK, not a reason to perpetuate the violation.
47
47
 
48
48
  ## Axioms
49
49
 
50
+ Registry acceptance and public installability are separate states; publication
51
+ waits for the exact examined bytes to become readable before recording success.
52
+
53
+ Shell composes Channels' local-media adapter around its authenticated client.
54
+ That adapter captures referenced file bytes before durable hosted admission;
55
+ Shell owns neither email rendering nor a second media parser. The same client
56
+ serves MCP, CLI, and automation sends, so all local entry points capture media
57
+ through one contract.
58
+
50
59
  A materialized row proves local observation, not completed official delivery.
51
60
  An independent later observation starts from a settled basis only after earlier
52
61
  mutations are accepted, their matching Inbox records resolve, and Apply releases
@@ -1109,10 +1118,18 @@ writable state; format-1 and format-2 runtimes cannot recover after adoption.
1109
1118
  ACP `McpServer[]`; no product receives ambient injection. An undeclared
1110
1119
  product adapter may initialize only after explicit tool selection, never as
1111
1120
  a login side effect.
1112
- Selected CLI/API actions execute through Tools' captured read-only view on
1113
- a runtime-admitted Chat auxiliary MCP route. Their descriptions and schemas
1114
- enter the prepared instruction bundle. A narrower MCP action selection
1115
- must be enforced or rejected; it can never grant the whole connection.
1121
+ Every tool type enters through one Tools-owned scoped MCP mount; Shell
1122
+ owns upstream processes, sockets, and the encrypted credential vault.
1123
+ The prepared selection can narrow an exact agent revision's grant but
1124
+ cannot widen it or change hidden/searchable actions into direct actions.
1125
+ Disconnect revokes the parent tool even in a prepared execution; saved
1126
+ schemas and immutable deployments remain available for reconnection.
1127
+ All selected CLI/API/GraphQL/MCP actions execute through Tools' captured
1128
+ read-only view on one runtime-admitted Chat auxiliary MCP route. Only direct
1129
+ descriptors and scoped search/call entry points enter the prepared bundle.
1130
+ Tools owns connection admission and exposure; Shell supplies one official
1131
+ MCP client effect and Core's encrypted credential vault. Upstream endpoints
1132
+ and credentials never bypass that scoped action boundary.
1116
1133
 
1117
1134
  69. **The MCP relay authenticates as the composed runtime.** Shell supplies
1118
1135
  its runtime-admission token explicitly to Chat's native host. Chat gives it
@@ -1145,8 +1162,13 @@ writable state; format-1 and format-2 runtimes cannot recover after adoption.
1145
1162
  `channels.notify_user` is one registered automation action, never a special
1146
1163
  scheduling path. Gateway is not a product relay, and Shell stores no
1147
1164
  portable Automations or Channels database.
1148
- Channels inbound work stays hosted only until Chat durably admits its turn;
1149
- the machine reconciles on every event-stream connection, so a wakeup is
1165
+ Channels inbound work stays hosted only until Chat durably admits its turn.
1166
+ A new email conversation inherits the latest local Chat turn's complete
1167
+ execution selection, including its model and authentication; an agent id
1168
+ alone is not an executable selection. With no prior turn, Shell requires
1169
+ an installed agent with an explicit model. Replies resume their own saved
1170
+ execution. Channels adds its reply tool through the current Toolbox catalog.
1171
+ The machine reconciles on every event-stream connection, so a wakeup is
1150
1172
  never the authority. Shell preserves Chat's session id as hidden MCP
1151
1173
  metadata and never exposes it as a model-chosen Channels argument. The
1152
1174
  global product CLI discovers the already-running Shell and enters through
package/dist/boot.js CHANGED
@@ -15,7 +15,7 @@ import { runtimeTokenFromEnv } from "@amalgm/core/transport";
15
15
  import { createChatMcpServer } from "@amalgm/chat/mcp";
16
16
  import { coerceRuntimeLabel, runtimeLogDir, runtimeStateDir, userMachineDir } from "@amalgm/core/identity";
17
17
  import { StateRail } from "@amalgm/core/state";
18
- import { createMcpServer as createToolsMcp } from "@amalgm/tools";
18
+ import { createMcpServer as createToolsMcp, createMcpDriver } from "@amalgm/tools";
19
19
  import { createToolboxHttpServer } from "@amalgm/tools/http";
20
20
  import { WorkspaceRegistry } from "@amalgm/live/workspace";
21
21
  import { automationsMount } from "./automations-host.js";
@@ -26,7 +26,8 @@ import { platformToolDefinitions } from "./platform-tools.js";
26
26
  import { createShellBundlePort } from "./bundle-port.js";
27
27
  import { InstalledAutomations } from "./installed-automations.js";
28
28
  import { composeShell } from "./compose.js";
29
- import { credentialsMounts } from "./credentials-host.js";
29
+ import { createCredentialVault, credentialVaultMounts } from "./credentials-host.js";
30
+ import { createToolMcpClient } from "./tool-mcp-client.js";
30
31
  import { forwardMount } from "./forward.js";
31
32
  import { filesBrowserMount } from "./files-browser-host.js";
32
33
  import { eventTriggersMount } from "./event-triggers-host.js";
@@ -87,7 +88,13 @@ export async function bootShell(config = {}) {
87
88
  source: "apps",
88
89
  }),
89
90
  });
91
+ const credentialVault = createCredentialVault(join(userMachineDir(userDir, deviceId), "credentials"));
92
+ const toolMcpClient = createToolMcpClient({
93
+ localBaseUrl: () => `http://127.0.0.1:${gatewayPort()}`, runtimeToken: () => token,
94
+ });
90
95
  const tools = createToolsMcp({
96
+ drivers: [createMcpDriver(toolMcpClient)],
97
+ credentials: { get: (ref) => credentialVault.getSecret(ref), set: (ref, value) => credentialVault.putSecret(ref, value), delete: (ref) => credentialVault.deleteSecret(ref) },
91
98
  databaseFile: join(runtimeDir, "services", "tools", "tools.db"),
92
99
  deploymentDir: stateDirs.toolbox,
93
100
  systemTools: [...platformTools],
@@ -239,7 +246,7 @@ export async function bootShell(config = {}) {
239
246
  userRoot: userDir,
240
247
  }),
241
248
  localMount({ home, env, amalgmPath: userDir, workspaceRoot }),
242
- ...credentialsMounts(join(userMachineDir(userDir, deviceId), "credentials")),
249
+ ...credentialVaultMounts(credentialVault),
243
250
  pty.mount,
244
251
  diagnosticsMount(logDir),
245
252
  externalProxy.mount,
package/dist/boot.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"boot.js","sourceRoot":"","sources":["../src/boot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"boot.js","sourceRoot":"","sources":["../src/boot.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { createChatHost } from "@amalgm/chat/host";
5
5
  import { createChatAgentRunner } from "@amalgm/chat/mcp";
6
6
  import { ChatHost } from "./chat-host.js";
7
7
  import { ChatToolbox } from "./chat-toolbox.js";
8
- import { resolveToolboxServers } from "./chat-tools.js";
8
+ import { agentToolSelection, resolveToolboxServers } from "./chat-tools.js";
9
9
  /** The one Chat composition used by every Shell host. */
10
10
  export async function createShellChatComposition(options) {
11
11
  const toolExecutions = new ChatToolbox();
@@ -22,7 +22,7 @@ export async function createShellChatComposition(options) {
22
22
  amalgmDir: options.amalgmDir,
23
23
  runtimeHomeRoot: join(options.stateDir, "cli-homes"),
24
24
  resolveAgent: (selection) => nativeAgent(options.agents.getAgentRevision(selection.installationId, selection.revisionId)),
25
- resolveTools: (selection) => (resolveToolboxServers(options.toolbox, selection, options.localBaseUrl, options.runtimeToken, toolExecutions)),
25
+ resolveTools: (selection, contract) => (resolveToolboxServers(options.toolbox, agentToolSelection(options.toolbox, selection, options.agents.getAgentRevision(contract.agent.installationId, contract.agent.revisionId).definition.toolbox), options.localBaseUrl, options.runtimeToken, toolExecutions, contract.permissionMode)),
26
26
  },
27
27
  }),
28
28
  });
@@ -32,8 +32,8 @@ export async function createShellChatComposition(options) {
32
32
  digest: (value) => createHash("sha256").update(value).digest("hex"),
33
33
  });
34
34
  const externalMessages = createExternalMessageRunner(composed.chat, {
35
- resolveNew: async () => channelExecution(options, await lastUsedAgent(options, composed.chat)),
36
- resolveExisting: (record) => channelExecution(options, record.agentInstallationId),
35
+ resolveNew: async () => channelExecution(options, await lastUsedExecution(options, composed.chat)),
36
+ resolveExisting: (record) => channelExecution(options, resolveAgentRun(options, record.agentInstallationId)),
37
37
  });
38
38
  return new ChatHost({
39
39
  chat: composed.chat,
@@ -44,23 +44,32 @@ export async function createShellChatComposition(options) {
44
44
  close: async () => { await composed.close(); toolExecutions.close(); },
45
45
  });
46
46
  }
47
- async function lastUsedAgent(options, chat) {
48
- const [latest] = await chat.listConversations({ limit: 1 });
49
- if (latest)
50
- return latest.agentInstallationId;
47
+ async function lastUsedExecution(options, chat) {
48
+ // Empty conversations have no execution choice to inherit. Read the durable
49
+ // turn through Chat's public capability, never reconstruct it from an agent id.
50
+ const limit = 64;
51
+ for (let offset = 0;; offset += limit) {
52
+ const records = await chat.listConversations({ limit, offset });
53
+ for (const record of records) {
54
+ const turn = await chat.latestTurn(record.id);
55
+ if (turn)
56
+ return { execution: turn.execution };
57
+ }
58
+ if (records.length < limit)
59
+ break;
60
+ }
51
61
  const available = options.agents.listAgents().find((agent) => Boolean(agent.definition.model?.id));
52
62
  if (!available)
53
63
  throw Object.assign(new Error('No configured agent is available for inbound email'), {
54
64
  code: 'CHANNEL_AGENT_REQUIRED',
55
65
  });
56
- return available.id;
66
+ return resolveAgentRun(options, available.id);
57
67
  }
58
- function channelExecution(options, installationId) {
59
- const resolved = resolveAgentRun(options, installationId);
68
+ function channelExecution(options, resolved) {
60
69
  const catalog = requiredToolbox(options).catalog();
61
70
  return Object.freeze({
62
71
  title: resolved.title,
63
- metadata: { agentInstallationId: installationId, replyTool: 'channels' },
72
+ metadata: { agentInstallationId: resolved.execution.agent.installationId, replyTool: 'channels' },
64
73
  execution: {
65
74
  ...resolved.execution,
66
75
  tools: {
@@ -102,6 +111,7 @@ function resolveAgentRun(options, installationId) {
102
111
  tools: {
103
112
  revisionId: tools.length > 0 ? requiredToolbox(options).catalog().revisionId : null,
104
113
  toolIds: tools,
114
+ ...(definition.toolbox.exposure ? { exposure: definition.toolbox.exposure } : {}),
105
115
  },
106
116
  cwd: {
107
117
  path: definition.workspace.cwd || options.amalgmDir || options.stateDir,
@@ -1 +1 @@
1
- {"version":3,"file":"chat-composition.js","sourceRoot":"","sources":["../src/chat-composition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-composition.js","sourceRoot":"","sources":["../src/chat-composition.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { type PreparedToolbox } from '@amalgm/tools';
2
2
  import type { McpServer } from '@amalgm/chat/execution';
3
3
  import type { BrickMount } from './gateway.js';
4
- /** A host transport for Tools-owned immutable CLI/API execution views. */
4
+ /** A host transport for Tools-owned immutable execution views. */
5
5
  export declare class ChatToolbox {
6
6
  #private;
7
- register(toolbox: PreparedToolbox, baseUrl: string, runtimeToken: string): McpServer;
7
+ register(toolbox: PreparedToolbox, baseUrl: string, runtimeToken: string, permissionMode?: 'ask' | 'full_access'): McpServer;
8
8
  mount(): BrickMount;
9
9
  close(): void;
10
10
  }
@@ -1,15 +1,15 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { actionTools, createMcpServer } from '@amalgm/tools';
3
- /** A host transport for Tools-owned immutable CLI/API execution views. */
3
+ /** A host transport for Tools-owned immutable execution views. */
4
4
  export class ChatToolbox {
5
5
  #prepared = new Map();
6
- register(toolbox, baseUrl, runtimeToken) {
6
+ register(toolbox, baseUrl, runtimeToken, permissionMode = 'ask') {
7
7
  const catalog = toolbox.catalog();
8
8
  const key = createHash('sha256').update(JSON.stringify([
9
- catalog.revisionId, catalog.actions.map((action) => action.id).sort(),
9
+ catalog.revisionId, permissionMode, catalog.actions.map((action) => [action.id, toolbox.exposure(action)]).sort(),
10
10
  ])).digest('hex');
11
11
  if (!this.#prepared.has(key)) {
12
- this.#prepared.set(key, createMcpServer({ toolbox, mcp: { includeManagement: false } }));
12
+ this.#prepared.set(key, createMcpServer({ toolbox, mcp: { includeManagement: false, context: { permissionMode } } }));
13
13
  }
14
14
  const descriptions = actionTools(toolbox, { includeManagement: false }).map(({ handler, ...tool }) => tool);
15
15
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-toolbox.js","sourceRoot":"","sources":["../src/chat-toolbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAwB,MAAM,eAAe,CAAC;AAInF,0EAA0E;AAC1E,MAAM,OAAO,WAAW;IACb,SAAS,GAAG,IAAI,GAAG,EAA+D,CAAC;IAE5F,QAAQ,CAAC,OAAwB,EAAE,OAAe,EAAE,YAAoB;QACtE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACrD,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE;SACtE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5G,OAAO;YACL,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI;YAC1E,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE;gBACvD,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,GAAG,EAAE;aAChD;YACD,KAAK,EAAE,EAAE,kBAAkB,EAAE,YAAY,EAAE;SAC5C,CAAC;IACJ,CAAC;IAED,KAAK;QACH,OAAO;YACL,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc;YACjD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC;gBACpF,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACnE,OAAO,MAAM,CAAC,MAAM,CAAC,OAA8C,CAAC,CAAC;YACvE,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK,KAAW,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;CAC1C"}
1
+ {"version":3,"file":"chat-toolbox.js","sourceRoot":"","sources":["../src/chat-toolbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAwB,MAAM,eAAe,CAAC;AAInF,kEAAkE;AAClE,MAAM,OAAO,WAAW;IACb,SAAS,GAAG,IAAI,GAAG,EAA+D,CAAC;IAE5F,QAAQ,CAAC,OAAwB,EAAE,OAAe,EAAE,YAAoB,EAAE,iBAAwC,KAAK;QACrH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACrD,OAAO,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;SAClH,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACxH,CAAC;QACD,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5G,OAAO;YACL,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI;YAC1E,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE;gBACvD,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,GAAG,EAAE;aAChD;YACD,KAAK,EAAE,EAAE,kBAAkB,EAAE,YAAY,EAAE;SAC5C,CAAC;IACJ,CAAC;IAED,KAAK;QACH,OAAO;YACL,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc;YACjD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC;gBACpF,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACnE,OAAO,MAAM,CAAC,MAAM,CAAC,OAA8C,CAAC,CAAC;YACvE,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK,KAAW,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;CAC1C"}
@@ -1,7 +1,23 @@
1
1
  import type { McpServer } from "@amalgm/chat/execution";
2
- import type { Toolbox } from "@amalgm/tools";
2
+ import type { Loadout, Toolbox } from "@amalgm/tools";
3
3
  import type { ChatToolbox } from "./chat-toolbox.js";
4
+ /** Turn selection can narrow an installed agent's grant, never widen it. */
5
+ export declare function agentToolSelection(toolbox: Toolbox | undefined, selection: {
6
+ revisionId: string | null;
7
+ toolIds: readonly string[];
8
+ exposure?: Loadout['exposure'];
9
+ }, grant: {
10
+ toolIds: readonly string[];
11
+ actionIds: readonly string[];
12
+ exposure?: Loadout['exposure'];
13
+ }): {
14
+ exposure?: Loadout["exposure"];
15
+ revisionId: string | null;
16
+ toolIds: readonly string[];
17
+ };
18
+ /** One scoped Tools surface is the only agent injection path, for every driver. */
4
19
  export declare function resolveToolboxServers(toolbox: Toolbox | undefined, selection: {
5
20
  revisionId: string | null;
6
21
  toolIds: readonly string[];
7
- }, localBaseUrl?: string | (() => string), runtimeToken?: string | (() => string), executions?: ChatToolbox): readonly McpServer[];
22
+ exposure?: Loadout['exposure'];
23
+ }, localBaseUrl?: string | (() => string), runtimeToken?: string | (() => string), executions?: ChatToolbox, permissionMode?: 'ask' | 'full_access'): readonly McpServer[];
@@ -1,83 +1,37 @@
1
- export function resolveToolboxServers(toolbox, selection, localBaseUrl, runtimeToken, executions) {
1
+ /** Turn selection can narrow an installed agent's grant, never widen it. */
2
+ export function agentToolSelection(toolbox, selection, grant) {
3
+ const allowed = new Set([...grant.toolIds, ...grant.actionIds]);
4
+ const actions = toolbox?.catalog().actions || [];
5
+ for (const id of selection.toolIds) {
6
+ const action = actions.find((candidate) => candidate.id === id);
7
+ if (!allowed.has(id) && !(action && allowed.has(action.toolId))) {
8
+ throw new Error(`Tool is outside this agent's loadout: ${id}`);
9
+ }
10
+ }
11
+ const exposure = { ...selection.exposure };
12
+ const rank = { direct: 0, search: 1, hidden: 2 };
13
+ for (const action of actions) {
14
+ if (!selection.toolIds.includes(action.id) && !selection.toolIds.includes(action.toolId))
15
+ continue;
16
+ const permitted = grant.exposure?.[action.id] ?? grant.exposure?.[action.toolId] ?? 'direct';
17
+ const requested = selection.exposure?.[action.id] ?? selection.exposure?.[action.toolId] ?? permitted;
18
+ exposure[action.id] = rank[permitted] > rank[requested] ? permitted : requested;
19
+ }
20
+ return { ...selection, ...(Object.keys(exposure).length ? { exposure } : {}) };
21
+ }
22
+ /** One scoped Tools surface is the only agent injection path, for every driver. */
23
+ export function resolveToolboxServers(toolbox, selection, localBaseUrl, runtimeToken, executions, permissionMode = 'ask') {
2
24
  if (selection.toolIds.length === 0)
3
25
  return [];
4
26
  if (!toolbox)
5
27
  throw new Error("Selected tools require the Shell Toolbox capability");
6
- const catalog = toolbox.catalog();
7
- if (selection.revisionId !== catalog.revisionId) {
8
- throw new Error(`Toolbox deployment revision changed: expected ${selection.revisionId}, current ${catalog.revisionId}`);
9
- }
10
- const byToolId = new Map(catalog.tools.map((tool) => [tool.id, tool]));
11
- const byActionId = new Map(catalog.actions.map((action) => [action.id, action]));
12
- const selectedRecords = selection.toolIds.map((id) => {
13
- const action = byActionId.get(id);
14
- const record = byToolId.get(action?.toolId || id);
15
- if (!record)
16
- throw new Error(`Selected tool is not installed: ${id}`);
17
- if (record.status !== "enabled")
18
- throw new Error(`Selected tool is disabled: ${id}`);
19
- if (action && action.status !== "enabled")
20
- throw new Error(`Selected tool action is disabled: ${id}`);
21
- return { id, record, action };
22
- });
23
- const regular = selectedRecords.filter(({ record }) => record.source.type !== 'mcp');
24
- const regularServer = [];
25
- if (regular.length) {
26
- const base = typeof localBaseUrl === 'function' ? localBaseUrl() : localBaseUrl;
27
- const token = typeof runtimeToken === 'function' ? runtimeToken() : runtimeToken;
28
- if (!executions || !base || !token)
29
- throw new Error('Selected CLI/API tools require the Shell prepared Toolbox host');
30
- regularServer.push(executions.register(toolbox.prepare(catalog.revisionId, regular.map(({ id }) => id)), base, token));
31
- }
32
- const resolved = selectedRecords.filter(({ record }) => record.source.type === 'mcp').map(({ id, record, action }) => {
33
- if (record.source.type !== 'mcp')
34
- throw new Error('Expected an MCP source');
35
- if (action && !selection.toolIds.includes(record.id)) {
36
- const enabled = catalog.actions.filter((item) => item.toolId === record.id && item.status === 'enabled');
37
- if (enabled.some((item) => !selection.toolIds.includes(item.id))) {
38
- throw new Error(`Partial MCP action selection is unsupported for ${record.id}; refusing to grant the whole server`);
39
- }
40
- }
41
- const source = record.source;
42
- const name = source.serverName || record.id;
43
- if (source.transport === "stdio") {
44
- if (!source.command)
45
- throw new Error(`Selected MCP tool has no command: ${id}`);
46
- return Object.freeze({ name, command: source.command, args: source.args || [], env: [] });
47
- }
48
- if (source.transport === "host") {
49
- if (!source.route)
50
- throw new Error(`Selected host MCP tool has no route: ${id}`);
51
- const base = typeof localBaseUrl === "function" ? localBaseUrl() : localBaseUrl;
52
- if (!base)
53
- throw new Error(`Selected host MCP tool requires the Shell gateway: ${id}`);
54
- const token = typeof runtimeToken === "function" ? runtimeToken() : runtimeToken;
55
- if (!token?.trim())
56
- throw new Error(`Selected host MCP tool requires Shell runtime admission: ${id}`);
57
- return Object.freeze({
58
- name,
59
- type: "http",
60
- url: new URL(source.route, `${base.replace(/\/+$/, "")}/`).toString(),
61
- headers: [{ name: "x-amalgm-runtime-token", value: token.trim() }],
62
- });
63
- }
64
- if (!source.url)
65
- throw new Error(`Selected MCP tool has no URL: ${id}`);
66
- return Object.freeze({
67
- name,
68
- type: source.transport === "sse" ? "sse" : "http",
69
- url: source.url,
70
- headers: [],
71
- });
28
+ const base = typeof localBaseUrl === 'function' ? localBaseUrl() : localBaseUrl;
29
+ const token = typeof runtimeToken === 'function' ? runtimeToken() : runtimeToken;
30
+ if (!executions || !base || !token)
31
+ throw new Error('Selected tools require the Shell prepared Toolbox host');
32
+ const view = toolbox.prepare(selection.revisionId || '', {
33
+ toolIds: [...selection.toolIds], exposure: selection.exposure,
72
34
  });
73
- const unique = new Map();
74
- for (const server of resolved) {
75
- const prior = unique.get(server.name);
76
- if (prior && JSON.stringify(prior) !== JSON.stringify(server)) {
77
- throw new Error(`Selected tools disagree about MCP server: ${server.name}`);
78
- }
79
- unique.set(server.name, server);
80
- }
81
- return [...regularServer, ...unique.values()];
35
+ return [executions.register(view, base, token, permissionMode)];
82
36
  }
83
37
  //# sourceMappingURL=chat-tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-tools.js","sourceRoot":"","sources":["../src/chat-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-tools.js","sourceRoot":"","sources":["../src/chat-tools.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ import { CredentialVault } from "@amalgm/core/credentials";
1
2
  import type { BrickMount } from "./gateway.js";
2
3
  /** Host effects for Core's one local credential vault. */
3
4
  export declare function credentialsMounts(file: string): readonly BrickMount[];
5
+ export declare function createCredentialVault(file: string): CredentialVault;
6
+ export declare function credentialVaultMounts(vault: CredentialVault): readonly BrickMount[];
@@ -6,12 +6,17 @@ import { createCredentialsApi, CredentialVault } from "@amalgm/core/credentials"
6
6
  const CIPHER = "aes-256-gcm";
7
7
  /** Host effects for Core's one local credential vault. */
8
8
  export function credentialsMounts(file) {
9
- const vault = new CredentialVault({
9
+ return credentialVaultMounts(createCredentialVault(file));
10
+ }
11
+ export function createCredentialVault(file) {
12
+ return new CredentialVault({
10
13
  store: fileStore(file),
11
14
  cipher: machineCipher(),
12
15
  now: () => new Date().toISOString(),
13
16
  randomId: () => `cred_${randomUUID().replace(/-/g, "").slice(0, 18)}`,
14
17
  });
18
+ }
19
+ export function credentialVaultMounts(vault) {
15
20
  const api = createCredentialsApi(vault);
16
21
  const stream = async (req, res, pathname) => {
17
22
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"credentials-host.js","sourceRoot":"","sources":["../src/credentials-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentials-host.js","sourceRoot":"","sources":["../src/credentials-host.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,9 @@ interface MachinePaths {
70
70
  }
71
71
  export interface MachineStatus {
72
72
  readonly binding: RuntimeBinding;
73
+ /** A local runtime with no declared Wire composes no Files cloud rail:
74
+ * setup needs no tunnel, Files stays unavailable, everything else runs. */
75
+ readonly wireComposed: boolean;
73
76
  readonly user: string;
74
77
  readonly deviceId: string | null;
75
78
  readonly registration: "absent" | "incomplete" | "ready";