@provos/ironcurtain 0.7.2 → 0.9.0

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 (259) hide show
  1. package/README.md +29 -100
  2. package/dist/auth/auth-command.d.ts +15 -0
  3. package/dist/auth/auth-command.js +424 -0
  4. package/dist/auth/auth-command.js.map +1 -0
  5. package/dist/auth/oauth-flow.d.ts +46 -0
  6. package/dist/auth/oauth-flow.js +279 -0
  7. package/dist/auth/oauth-flow.js.map +1 -0
  8. package/dist/auth/oauth-provider.d.ts +55 -0
  9. package/dist/auth/oauth-provider.js +73 -0
  10. package/dist/auth/oauth-provider.js.map +1 -0
  11. package/dist/auth/oauth-registry.d.ts +34 -0
  12. package/dist/auth/oauth-registry.js +69 -0
  13. package/dist/auth/oauth-registry.js.map +1 -0
  14. package/dist/auth/oauth-token-provider.d.ts +52 -0
  15. package/dist/auth/oauth-token-provider.js +159 -0
  16. package/dist/auth/oauth-token-provider.js.map +1 -0
  17. package/dist/auth/oauth-token-store.d.ts +30 -0
  18. package/dist/auth/oauth-token-store.js +93 -0
  19. package/dist/auth/oauth-token-store.js.map +1 -0
  20. package/dist/auth/providers/google-scopes.d.ts +35 -0
  21. package/dist/auth/providers/google-scopes.js +183 -0
  22. package/dist/auth/providers/google-scopes.js.map +1 -0
  23. package/dist/auth/providers/google.d.ts +2 -0
  24. package/dist/auth/providers/google.js +28 -0
  25. package/dist/auth/providers/google.js.map +1 -0
  26. package/dist/cli.js +6 -0
  27. package/dist/cli.js.map +1 -1
  28. package/dist/config/config-command.js +39 -1
  29. package/dist/config/config-command.js.map +1 -1
  30. package/dist/config/constitution-readonly.md +14 -11
  31. package/dist/config/constitution-user-base.md +15 -0
  32. package/dist/config/first-start.js +4 -1
  33. package/dist/config/first-start.js.map +1 -1
  34. package/dist/config/generated/test-scenarios.json +1 -1
  35. package/dist/config/generated/tool-annotations.json +10617 -296
  36. package/dist/config/generated-readonly/compiled-policy.json +787 -244
  37. package/dist/config/index.d.ts +2 -2
  38. package/dist/config/index.js +8 -0
  39. package/dist/config/index.js.map +1 -1
  40. package/dist/config/mcp-servers.json +31 -2
  41. package/dist/config/paths.d.ts +20 -0
  42. package/dist/config/paths.js +43 -0
  43. package/dist/config/paths.js.map +1 -1
  44. package/dist/config/types.d.ts +8 -0
  45. package/dist/config/user-config.d.ts +29 -0
  46. package/dist/config/user-config.js +30 -0
  47. package/dist/config/user-config.js.map +1 -1
  48. package/dist/cron/constitution-generator.d.ts +2 -1
  49. package/dist/cron/constitution-generator.js +35 -36
  50. package/dist/cron/constitution-generator.js.map +1 -1
  51. package/dist/cron/headless-transport.d.ts +4 -0
  52. package/dist/cron/headless-transport.js +1 -1
  53. package/dist/cron/headless-transport.js.map +1 -1
  54. package/dist/daemon/ironcurtain-daemon.js +7 -1
  55. package/dist/daemon/ironcurtain-daemon.js.map +1 -1
  56. package/dist/docker/adapters/claude-code.js +32 -5
  57. package/dist/docker/adapters/claude-code.js.map +1 -1
  58. package/dist/docker/agent-adapter.d.ts +40 -0
  59. package/dist/docker/claude-md-seed.d.ts +27 -0
  60. package/dist/docker/claude-md-seed.js +42 -0
  61. package/dist/docker/claude-md-seed.js.map +1 -0
  62. package/dist/docker/docker-agent-session.d.ts +3 -1
  63. package/dist/docker/docker-agent-session.js +51 -28
  64. package/dist/docker/docker-agent-session.js.map +1 -1
  65. package/dist/docker/docker-infrastructure.d.ts +15 -1
  66. package/dist/docker/docker-infrastructure.js +105 -9
  67. package/dist/docker/docker-infrastructure.js.map +1 -1
  68. package/dist/docker/docker-manager.d.ts +2 -0
  69. package/dist/docker/docker-manager.js +9 -1
  70. package/dist/docker/docker-manager.js.map +1 -1
  71. package/dist/docker/mitm-proxy.d.ts +65 -0
  72. package/dist/docker/mitm-proxy.js +288 -31
  73. package/dist/docker/mitm-proxy.js.map +1 -1
  74. package/dist/docker/package-types.d.ts +127 -0
  75. package/dist/docker/package-types.js +8 -0
  76. package/dist/docker/package-types.js.map +1 -0
  77. package/dist/docker/package-validator.d.ts +41 -0
  78. package/dist/docker/package-validator.js +90 -0
  79. package/dist/docker/package-validator.js.map +1 -0
  80. package/dist/docker/platform.d.ts +6 -6
  81. package/dist/docker/platform.js +8 -6
  82. package/dist/docker/platform.js.map +1 -1
  83. package/dist/docker/proxy-tools.d.ts +80 -0
  84. package/dist/docker/proxy-tools.js +248 -0
  85. package/dist/docker/proxy-tools.js.map +1 -0
  86. package/dist/docker/pty-session.d.ts +15 -0
  87. package/dist/docker/pty-session.js +253 -73
  88. package/dist/docker/pty-session.js.map +1 -1
  89. package/dist/docker/pty-types.d.ts +28 -0
  90. package/dist/docker/pty-types.js +2 -0
  91. package/dist/docker/pty-types.js.map +1 -1
  92. package/dist/docker/registry-proxy.d.ts +142 -0
  93. package/dist/docker/registry-proxy.js +856 -0
  94. package/dist/docker/registry-proxy.js.map +1 -0
  95. package/dist/escalation/escalation-watcher.d.ts +3 -1
  96. package/dist/escalation/escalation-watcher.js +6 -2
  97. package/dist/escalation/escalation-watcher.js.map +1 -1
  98. package/dist/escalation/listener-command.js +24 -10
  99. package/dist/escalation/listener-command.js.map +1 -1
  100. package/dist/escalation/listener-lock.d.ts +5 -0
  101. package/dist/escalation/listener-lock.js +14 -0
  102. package/dist/escalation/listener-lock.js.map +1 -1
  103. package/dist/index.js +16 -3
  104. package/dist/index.js.map +1 -1
  105. package/dist/memory/auto-save.d.ts +25 -0
  106. package/dist/memory/auto-save.js +89 -0
  107. package/dist/memory/auto-save.js.map +1 -0
  108. package/dist/memory/memory-annotations.d.ts +47 -0
  109. package/dist/memory/memory-annotations.js +87 -0
  110. package/dist/memory/memory-annotations.js.map +1 -0
  111. package/dist/memory/memory-prompt.d.ts +12 -0
  112. package/dist/memory/memory-prompt.js +20 -0
  113. package/dist/memory/memory-prompt.js.map +1 -0
  114. package/dist/memory/resolve-memory-path.d.ts +20 -0
  115. package/dist/memory/resolve-memory-path.js +30 -0
  116. package/dist/memory/resolve-memory-path.js.map +1 -0
  117. package/dist/mux/mux-app.d.ts +4 -0
  118. package/dist/mux/mux-app.js +246 -28
  119. package/dist/mux/mux-app.js.map +1 -1
  120. package/dist/mux/mux-command.d.ts +2 -2
  121. package/dist/mux/mux-command.js +14 -22
  122. package/dist/mux/mux-command.js.map +1 -1
  123. package/dist/mux/mux-escalation-manager.d.ts +9 -3
  124. package/dist/mux/mux-escalation-manager.js +69 -19
  125. package/dist/mux/mux-escalation-manager.js.map +1 -1
  126. package/dist/mux/mux-input-handler.d.ts +59 -3
  127. package/dist/mux/mux-input-handler.js +270 -32
  128. package/dist/mux/mux-input-handler.js.map +1 -1
  129. package/dist/mux/mux-renderer.d.ts +19 -1
  130. package/dist/mux/mux-renderer.js +466 -11
  131. package/dist/mux/mux-renderer.js.map +1 -1
  132. package/dist/mux/persona-scanner.d.ts +19 -0
  133. package/dist/mux/persona-scanner.js +53 -0
  134. package/dist/mux/persona-scanner.js.map +1 -0
  135. package/dist/mux/pty-bridge.d.ts +8 -0
  136. package/dist/mux/pty-bridge.js +19 -1
  137. package/dist/mux/pty-bridge.js.map +1 -1
  138. package/dist/mux/session-scanner.d.ts +18 -0
  139. package/dist/mux/session-scanner.js +65 -0
  140. package/dist/mux/session-scanner.js.map +1 -0
  141. package/dist/mux/types.d.ts +36 -1
  142. package/dist/mux/types.js +14 -1
  143. package/dist/mux/types.js.map +1 -1
  144. package/dist/persona/persona-command.js +130 -93
  145. package/dist/persona/persona-command.js.map +1 -1
  146. package/dist/persona/persona-prompt.d.ts +7 -7
  147. package/dist/persona/persona-prompt.js +14 -29
  148. package/dist/persona/persona-prompt.js.map +1 -1
  149. package/dist/persona/resolve.js +5 -2
  150. package/dist/persona/resolve.js.map +1 -1
  151. package/dist/pipeline/annotate.js +1 -7
  152. package/dist/pipeline/annotate.js.map +1 -1
  153. package/dist/pipeline/compile.d.ts +5 -2
  154. package/dist/pipeline/compile.js +23 -11
  155. package/dist/pipeline/compile.js.map +1 -1
  156. package/dist/pipeline/constitution-compiler.d.ts +302 -3
  157. package/dist/pipeline/constitution-compiler.js +285 -23
  158. package/dist/pipeline/constitution-compiler.js.map +1 -1
  159. package/dist/pipeline/generate-with-repair.d.ts +2 -2
  160. package/dist/pipeline/generate-with-repair.js +2 -2
  161. package/dist/pipeline/handwritten-scenarios.d.ts +20 -7
  162. package/dist/pipeline/handwritten-scenarios.js +20 -41
  163. package/dist/pipeline/handwritten-scenarios.js.map +1 -1
  164. package/dist/pipeline/list-resolver.d.ts +18 -20
  165. package/dist/pipeline/list-resolver.js +28 -36
  166. package/dist/pipeline/list-resolver.js.map +1 -1
  167. package/dist/pipeline/pipeline-runner.d.ts +102 -13
  168. package/dist/pipeline/pipeline-runner.js +497 -237
  169. package/dist/pipeline/pipeline-runner.js.map +1 -1
  170. package/dist/pipeline/pipeline-shared.d.ts +7 -9
  171. package/dist/pipeline/pipeline-shared.js +8 -18
  172. package/dist/pipeline/pipeline-shared.js.map +1 -1
  173. package/dist/pipeline/policy-verifier.d.ts +32 -5
  174. package/dist/pipeline/policy-verifier.js +137 -8
  175. package/dist/pipeline/policy-verifier.js.map +1 -1
  176. package/dist/pipeline/proxy-mcp-connections.d.ts +25 -0
  177. package/dist/pipeline/proxy-mcp-connections.js +121 -0
  178. package/dist/pipeline/proxy-mcp-connections.js.map +1 -0
  179. package/dist/pipeline/refresh-lists.js +21 -13
  180. package/dist/pipeline/refresh-lists.js.map +1 -1
  181. package/dist/pipeline/scenario-generator.d.ts +29 -49
  182. package/dist/pipeline/scenario-generator.js +180 -143
  183. package/dist/pipeline/scenario-generator.js.map +1 -1
  184. package/dist/pipeline/scenario-schema-validator.d.ts +51 -0
  185. package/dist/pipeline/scenario-schema-validator.js +132 -0
  186. package/dist/pipeline/scenario-schema-validator.js.map +1 -0
  187. package/dist/pipeline/tool-annotator.d.ts +9 -8
  188. package/dist/pipeline/tool-annotator.js +48 -95
  189. package/dist/pipeline/tool-annotator.js.map +1 -1
  190. package/dist/pipeline/types.d.ts +31 -24
  191. package/dist/sandbox/index.d.ts +26 -10
  192. package/dist/sandbox/index.js +151 -40
  193. package/dist/sandbox/index.js.map +1 -1
  194. package/dist/servers/fetch-server.js +10 -5
  195. package/dist/servers/fetch-server.js.map +1 -1
  196. package/dist/session/agent-session.d.ts +8 -20
  197. package/dist/session/agent-session.js +22 -70
  198. package/dist/session/agent-session.js.map +1 -1
  199. package/dist/session/base-transport.d.ts +17 -1
  200. package/dist/session/base-transport.js +25 -1
  201. package/dist/session/base-transport.js.map +1 -1
  202. package/dist/session/cli-transport.d.ts +5 -0
  203. package/dist/session/cli-transport.js +48 -25
  204. package/dist/session/cli-transport.js.map +1 -1
  205. package/dist/session/index.d.ts +25 -1
  206. package/dist/session/index.js +57 -8
  207. package/dist/session/index.js.map +1 -1
  208. package/dist/session/prompts.js +8 -9
  209. package/dist/session/prompts.js.map +1 -1
  210. package/dist/session/session-manager.d.ts +6 -0
  211. package/dist/session/session-manager.js +12 -0
  212. package/dist/session/session-manager.js.map +1 -1
  213. package/dist/session/types.d.ts +11 -1
  214. package/dist/session/types.js.map +1 -1
  215. package/dist/session/workspace-validation.js +37 -6
  216. package/dist/session/workspace-validation.js.map +1 -1
  217. package/dist/signal/signal-bot-daemon.js +24 -8
  218. package/dist/signal/signal-bot-daemon.js.map +1 -1
  219. package/dist/signal/signal-transport.d.ts +5 -2
  220. package/dist/signal/signal-transport.js +3 -3
  221. package/dist/signal/signal-transport.js.map +1 -1
  222. package/dist/trusted-process/approval-whitelist.d.ts +117 -0
  223. package/dist/trusted-process/approval-whitelist.js +237 -0
  224. package/dist/trusted-process/approval-whitelist.js.map +1 -0
  225. package/dist/trusted-process/gworkspace-credentials.d.ts +40 -0
  226. package/dist/trusted-process/gworkspace-credentials.js +45 -0
  227. package/dist/trusted-process/gworkspace-credentials.js.map +1 -0
  228. package/dist/trusted-process/index.d.ts +11 -1
  229. package/dist/trusted-process/index.js +83 -53
  230. package/dist/trusted-process/index.js.map +1 -1
  231. package/dist/trusted-process/mcp-proxy-server.d.ts +23 -0
  232. package/dist/trusted-process/mcp-proxy-server.js +409 -94
  233. package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
  234. package/dist/trusted-process/policy-engine.d.ts +12 -3
  235. package/dist/trusted-process/policy-engine.js +33 -23
  236. package/dist/trusted-process/policy-engine.js.map +1 -1
  237. package/dist/trusted-process/policy-types.d.ts +17 -0
  238. package/dist/trusted-process/sandbox-integration.d.ts +23 -0
  239. package/dist/trusted-process/sandbox-integration.js +115 -3
  240. package/dist/trusted-process/sandbox-integration.js.map +1 -1
  241. package/dist/trusted-process/token-file-refresher.d.ts +69 -0
  242. package/dist/trusted-process/token-file-refresher.js +120 -0
  243. package/dist/trusted-process/token-file-refresher.js.map +1 -0
  244. package/dist/types/argument-roles.d.ts +7 -1
  245. package/dist/types/argument-roles.js +50 -0
  246. package/dist/types/argument-roles.js.map +1 -1
  247. package/dist/types/audit.d.ts +11 -0
  248. package/docker/Dockerfile.base +22 -0
  249. package/docker/Dockerfile.base.arm64 +44 -4
  250. package/docker/Dockerfile.claude-code +2 -2
  251. package/docker/entrypoint-claude-code.sh +24 -6
  252. package/package.json +8 -2
  253. package/src/config/constitution-user-base.md +15 -0
  254. package/src/config/generated/test-scenarios.json +1 -1
  255. package/src/config/generated/tool-annotations.json +10617 -296
  256. package/src/config/mcp-servers.json +31 -2
  257. package/dist/pipeline/mcp-connections.d.ts +0 -16
  258. package/dist/pipeline/mcp-connections.js +0 -61
  259. package/dist/pipeline/mcp-connections.js.map +0 -1
@@ -49,19 +49,54 @@ const proxyServerPath = resolve(__dirname, `../trusted-process/mcp-proxy-server.
49
49
  const tsxBin = resolveNodeModulesBin('tsx', resolve(__dirname, '..', '..'));
50
50
  const PROXY_COMMAND = isCompiled ? 'node' : tsxBin;
51
51
  const PROXY_ARGS = [proxyServerPath];
52
+ /** Sanitize a string to a valid JS identifier segment. */
53
+ const sanitize = (s) => s.replace(/[^a-zA-Z0-9_]/g, '_').replace(/^[0-9]/, '_$&');
54
+ /** Shared: first segment + remaining joined with underscores. */
55
+ function flattenDotted(segments) {
56
+ const [manual, ...parts] = segments;
57
+ return `${sanitize(manual)}.${parts.map(sanitize).join('_')}`;
58
+ }
52
59
  /**
53
- * Transforms a UTCP tool name (dotted) into the actual callable function name
54
- * in the sandbox. Mirrors UTCP Code Mode's sanitizeIdentifier() behavior:
55
- * split on first dot (manual name), join remaining parts with underscores.
60
+ * Mirrors UTCP Code Mode's sanitizeIdentifier() behavior the property name
61
+ * that UTCP actually creates on `global.tools` in the V8 isolate.
62
+ *
63
+ * Example: "tools.filesystem.read_file" → "tools.filesystem_read_file"
64
+ */
65
+ export function toUtcpCallable(toolName) {
66
+ if (!toolName.includes('.'))
67
+ return sanitize(toolName);
68
+ return flattenDotted(toolName.split('.'));
69
+ }
70
+ /**
71
+ * Transforms a UTCP tool name (dotted) into the user-facing callable name
72
+ * with server-namespace prefix stripping.
73
+ *
74
+ * For 3+ segment names (tools.<server>.<tool>):
75
+ * - Extract server and tool segments
76
+ * - If tool starts with `serverName_`, strip that prefix
77
+ * - Return `server.strippedTool`
56
78
  *
57
- * Example: "filesystem.filesystem.list_directory" → "filesystem.filesystem_list_directory"
79
+ * Examples:
80
+ * "tools.filesystem.read_file" → "filesystem.read_file"
81
+ * "tools.git.git_add" → "git.add"
82
+ * "tools.memory.memory_context" → "memory.context"
83
+ * "tools.a.b.c" → "a.b_c"
58
84
  */
59
85
  export function toCallableName(toolName) {
60
- const sanitize = (s) => s.replace(/[^a-zA-Z0-9_]/g, '_').replace(/^[0-9]/, '_$&');
61
86
  if (!toolName.includes('.'))
62
87
  return sanitize(toolName);
63
- const [manual, ...parts] = toolName.split('.');
64
- return `${sanitize(manual)}.${parts.map(sanitize).join('_')}`;
88
+ const segments = toolName.split('.');
89
+ // 2-segment names: unchanged (e.g., "tools.read_file")
90
+ if (segments.length <= 2)
91
+ return flattenDotted(segments);
92
+ // 3+ segments: server-namespace with prefix stripping
93
+ const server = sanitize(segments[1]);
94
+ const toolParts = segments.slice(2).map(sanitize);
95
+ const tool = toolParts.join('_');
96
+ // Strip redundant server prefix from tool name (e.g., git_add → add)
97
+ const prefix = server + '_';
98
+ const strippedTool = tool.startsWith(prefix) ? tool.slice(prefix.length) : tool;
99
+ return `${server}.${strippedTool}`;
65
100
  }
66
101
  /**
67
102
  * Extracts required parameter names from a tool's JSON Schema inputs
@@ -72,22 +107,59 @@ export function extractRequiredParams(inputs) {
72
107
  return '';
73
108
  return `{ ${inputs.required.join(', ')} }`;
74
109
  }
110
+ /** Namespaces that must not be shadowed by alias globals. */
111
+ const RESERVED_NAMESPACES = new Set(['tools', 'help', 'console', 'global', 'undefined', 'NaN', 'Infinity']);
112
+ /**
113
+ * Builds a JavaScript snippet that creates server-namespace aliases in the
114
+ * V8 sandbox isolate: `global.<server> = { <tool>: global.tools.<utcpProp> }`.
115
+ *
116
+ * This enables `filesystem.read_file(...)` alongside the UTCP-created
117
+ * `tools.filesystem_read_file(...)`.
118
+ */
119
+ function buildNamespaceAliasSnippet(aliases) {
120
+ // Group by namespace
121
+ const byNs = {};
122
+ for (const { newCallable, utcpProp } of aliases) {
123
+ const dotIdx = newCallable.indexOf('.');
124
+ if (dotIdx === -1)
125
+ continue;
126
+ const ns = newCallable.slice(0, dotIdx);
127
+ if (RESERVED_NAMESPACES.has(ns))
128
+ continue;
129
+ const tool = newCallable.slice(dotIdx + 1);
130
+ if (!(ns in byNs))
131
+ byNs[ns] = [];
132
+ byNs[ns].push({ tool, utcpProp });
133
+ }
134
+ if (Object.keys(byNs).length === 0)
135
+ return '';
136
+ const lines = ['(function() {'];
137
+ for (const [ns, tools] of Object.entries(byNs)) {
138
+ lines.push(` global["${ns}"] = {};`);
139
+ for (const { tool, utcpProp } of tools) {
140
+ lines.push(` global["${ns}"]["${tool}"] = global["tools"]["${utcpProp}"];`);
141
+ }
142
+ }
143
+ lines.push('})();');
144
+ return lines.join('\n');
145
+ }
75
146
  /**
76
147
  * Builds a JavaScript snippet that patches __getToolInterface inside the
77
- * sandbox isolate so that callable names (with underscores) resolve to
148
+ * sandbox isolate so that both new callable names (e.g., "filesystem.read_file")
149
+ * and old UTCP callable names (e.g., "tools.filesystem_read_file") resolve to
78
150
  * the same interface as the raw UTCP tool names (with dots).
79
151
  *
80
152
  * UTCP Code Mode keys its interface map by raw tool name (e.g.,
81
153
  * "tools.git.git_add") but the callable function name the agent sees
82
- * uses underscores (e.g., "tools.git_git_add"). Without this patch,
154
+ * uses the new namespace format (e.g., "git.add"). Without this patch,
83
155
  * __getToolInterface(callableName) returns null.
84
156
  */
85
157
  function buildInterfacePatchSnippet(callableToRawMap) {
86
158
  const mapJson = JSON.stringify(callableToRawMap);
87
159
  // The snippet runs inside the V8 isolate before user code.
88
160
  // It wraps the existing __getToolInterface to also accept callable names.
89
- // When the name is wrong, it tries auto-correction (prepending "tools.")
90
- // and falls back to a helpful error message with suggestions.
161
+ // When the name is wrong, it tries auto-correction and falls back to
162
+ // a helpful error message with suggestions.
91
163
  return `
92
164
  (function() {
93
165
  var _callableToRaw = ${mapJson};
@@ -99,18 +171,16 @@ function buildInterfacePatchSnippet(callableToRawMap) {
99
171
  var rawName = _callableToRaw[toolName];
100
172
  if (rawName) return _origGetToolInterface(rawName);
101
173
 
102
- // Auto-correct: try prepending "tools." for common mistake
174
+ // Auto-correct: try prepending "tools." for raw name lookup
103
175
  if (toolName && !toolName.startsWith('tools.')) {
104
176
  var prefixed = 'tools.' + toolName;
105
- // Try as raw name first
106
177
  result = _origGetToolInterface(prefixed);
107
178
  if (result) return result;
108
- // Try as callable name
109
179
  rawName = _callableToRaw[prefixed];
110
180
  if (rawName) return _origGetToolInterface(rawName);
111
- // Try converting dots to underscores (e.g. "git.git_push" -> "tools.git_git_push")
112
- var asCallable = 'tools.' + toolName.replace(/\\./g, '_');
113
- rawName = _callableToRaw[asCallable];
181
+ // Try converting dots to underscores (e.g. "git.add" -> "tools.git_add")
182
+ var asOldCallable = 'tools.' + toolName.replace(/\\./g, '_');
183
+ rawName = _callableToRaw[asOldCallable];
114
184
  if (rawName) return _origGetToolInterface(rawName);
115
185
  }
116
186
 
@@ -128,7 +198,7 @@ function buildInterfacePatchSnippet(callableToRawMap) {
128
198
  if (suggestions.length > 0) {
129
199
  msg += " Did you mean: " + suggestions.join(', ') + "?";
130
200
  } else {
131
- msg += " Use the callable name format shown in the tool catalog, e.g. tools.git_git_push";
201
+ msg += " Use the callable name format shown in the tool catalog, e.g. git.push";
132
202
  }
133
203
  return msg;
134
204
  };
@@ -183,8 +253,7 @@ export function buildHelpSnippet(helpData) {
183
253
  export class Sandbox {
184
254
  client = null;
185
255
  toolCatalog = '';
186
- interfacePatchSnippet = '';
187
- helpSnippet = '';
256
+ preamble = '';
188
257
  helpData = { serverDescriptions: {}, toolsByServer: {} };
189
258
  async initialize(config) {
190
259
  // Update the Protocol.request timeout before any Client instances are created.
@@ -204,6 +273,9 @@ export class Sandbox {
204
273
  PROTECTED_PATHS: JSON.stringify(config.protectedPaths),
205
274
  ALLOWED_DIRECTORY: config.allowedDirectory,
206
275
  CONTAINER_WORKSPACE_DIR,
276
+ // Forward SSH agent socket so MCP servers (e.g., git) can authenticate
277
+ // to remote hosts without prompting for credentials.
278
+ ...(process.env.SSH_AUTH_SOCK ? { SSH_AUTH_SOCK: process.env.SSH_AUTH_SOCK } : {}),
207
279
  };
208
280
  // Pass the escalation directory to the proxy when configured.
209
281
  // When set, the proxy uses file-based IPC for escalation instead of auto-deny.
@@ -259,6 +331,23 @@ export class Sandbox {
259
331
  timeout: timeoutSeconds,
260
332
  };
261
333
  }
334
+ // Add a dedicated proxy instance for virtual proxy tools (domain management).
335
+ // This entry spawns mcp-proxy-server.ts with SERVER_FILTER=proxy and no
336
+ // matching backend server, so it enters virtual-only mode.
337
+ // MITM_CONTROL_ADDR is ONLY passed to this entry, not to other server instances.
338
+ if (config.mitmControlAddr) {
339
+ mcpServers['proxy'] = {
340
+ transport: 'stdio',
341
+ command: PROXY_COMMAND,
342
+ args: [...PROXY_ARGS],
343
+ env: {
344
+ ...proxyEnv,
345
+ SERVER_FILTER: 'proxy',
346
+ MITM_CONTROL_ADDR: config.mitmControlAddr,
347
+ },
348
+ timeout: timeoutSeconds,
349
+ };
350
+ }
262
351
  const registration = await this.client.registerManual({
263
352
  name: 'tools',
264
353
  call_template_type: 'mcp',
@@ -268,18 +357,30 @@ export class Sandbox {
268
357
  const errors = registration.errors.join(', ') || 'unknown error';
269
358
  throw new Error(`Failed to register MCP servers: ${errors}`);
270
359
  }
271
- const { catalog, patchSnippet, helpData } = await this.buildToolCatalogAndPatch(config);
360
+ const { catalog, patchSnippet, aliasSnippet, helpData } = await this.buildToolCatalogAndPatch(config);
272
361
  this.toolCatalog = catalog;
273
- this.interfacePatchSnippet = patchSnippet;
274
362
  this.helpData = helpData;
275
- this.helpSnippet = buildHelpSnippet(helpData);
363
+ // Pre-build the preamble once — each executeCode() call creates a fresh
364
+ // V8 isolate, so the preamble must be prepended every time, but the
365
+ // string itself never changes after initialization.
366
+ let preamble = '';
367
+ if (patchSnippet)
368
+ preamble += patchSnippet + '\n';
369
+ if (aliasSnippet)
370
+ preamble += aliasSnippet + '\n';
371
+ const helpSnippet = buildHelpSnippet(helpData);
372
+ if (helpSnippet)
373
+ preamble += helpSnippet + '\n';
374
+ this.preamble = preamble;
276
375
  }
277
376
  /**
278
- * Builds the tool catalog, the __getToolInterface patch, and help data in one pass.
377
+ * Builds the tool catalog, the __getToolInterface patch, namespace alias
378
+ * snippet, and help data in one pass.
279
379
  *
280
- * The catalog is a compact one-line-per-tool listing using callable names.
281
- * The patch snippet maps callable names back to raw UTCP names so that
282
- * __getToolInterface works with either naming convention.
380
+ * The catalog is a compact one-line-per-tool listing using new callable names.
381
+ * The patch snippet maps both new and old callable names back to raw UTCP
382
+ * names so that __getToolInterface works with any naming convention.
383
+ * The alias snippet creates server-namespace globals so the new names work.
283
384
  * The help data groups tools by server for progressive disclosure.
284
385
  */
285
386
  async buildToolCatalogAndPatch(config) {
@@ -287,22 +388,36 @@ export class Sandbox {
287
388
  throw new Error('Sandbox not initialized');
288
389
  const emptyHelp = { serverDescriptions: {}, toolsByServer: {} };
289
390
  const tools = await this.client.getTools();
290
- if (tools.length === 0)
291
- return { catalog: 'No tools available', patchSnippet: '', helpData: emptyHelp };
391
+ if (tools.length === 0) {
392
+ return { catalog: 'No tools available', patchSnippet: '', aliasSnippet: '', helpData: emptyHelp };
393
+ }
292
394
  const callableToRaw = {};
293
395
  const catalogLines = [];
294
396
  const toolsByServer = {};
295
397
  const serverDescriptions = {};
398
+ const namespaceAliases = [];
296
399
  for (const t of tools) {
400
+ // Split once; derive all name variants from the same segments.
401
+ const segments = t.name.split('.');
297
402
  const callableName = toCallableName(t.name);
403
+ const utcpCallable = segments.length > 1 ? flattenDotted(segments) : sanitize(t.name);
298
404
  const params = extractRequiredParams(t.inputs);
299
405
  catalogLines.push(`- \`${callableName}(${params})\` — ${t.description}`);
300
- // Only add mapping when the names actually differ
406
+ // Map new callable name raw UTCP name
301
407
  if (callableName !== t.name) {
302
408
  callableToRaw[callableName] = t.name;
303
409
  }
410
+ // Map old UTCP callable name → raw UTCP name (backward compat)
411
+ if (utcpCallable !== t.name && utcpCallable !== callableName) {
412
+ callableToRaw[utcpCallable] = t.name;
413
+ }
414
+ // Build namespace alias: new callable → UTCP property on global.tools
415
+ // The utcpCallable is "tools.<prop>", extract the property part after the dot
416
+ if (segments.length > 1) {
417
+ const utcpProp = utcpCallable.slice(utcpCallable.indexOf('.') + 1);
418
+ namespaceAliases.push({ newCallable: callableName, utcpProp });
419
+ }
304
420
  // Extract server name from the UTCP name: tools.<server>.<tool>
305
- const segments = t.name.split('.');
306
421
  const serverName = segments.length >= 2 ? segments[1] : segments[0];
307
422
  if (!(serverName in toolsByServer)) {
308
423
  toolsByServer[serverName] = [];
@@ -312,8 +427,9 @@ export class Sandbox {
312
427
  toolsByServer[serverName].push({ callableName, params });
313
428
  }
314
429
  const patchSnippet = Object.keys(callableToRaw).length > 0 ? buildInterfacePatchSnippet(callableToRaw) : '';
430
+ const aliasSnippet = namespaceAliases.length > 0 ? buildNamespaceAliasSnippet(namespaceAliases) : '';
315
431
  const helpData = { serverDescriptions, toolsByServer };
316
- return { catalog: catalogLines.join('\n'), patchSnippet, helpData };
432
+ return { catalog: catalogLines.join('\n'), patchSnippet, aliasSnippet, helpData };
317
433
  }
318
434
  getToolInterfaces() {
319
435
  return this.toolCatalog;
@@ -324,14 +440,9 @@ export class Sandbox {
324
440
  async executeCode(code, timeoutMs = 300000) {
325
441
  if (!this.client)
326
442
  throw new Error('Sandbox not initialized');
327
- // Prepend the interface patch and help snippet. Each callToolChain
328
- // invocation creates a fresh V8 isolate, so both must be re-applied.
329
- let preamble = '';
330
- if (this.interfacePatchSnippet)
331
- preamble += this.interfacePatchSnippet + '\n';
332
- if (this.helpSnippet)
333
- preamble += this.helpSnippet + '\n';
334
- const patchedCode = preamble ? `${preamble}${code}` : code;
443
+ // Prepend the pre-built preamble (interface patch + namespace aliases +
444
+ // help snippet). Each callToolChain creates a fresh V8 isolate.
445
+ const patchedCode = this.preamble ? `${this.preamble}${code}` : code;
335
446
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment -- callToolChain returns { result: any }
336
447
  const { result, logs } = await this.client.callToolChain(patchedCode, timeoutMs);
337
448
  return { result, logs };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"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"}
@@ -226,7 +226,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
226
226
  tools: [
227
227
  {
228
228
  name: 'http_fetch',
229
- description: 'Fetch content from a URL via HTTP GET',
229
+ description: 'Fetch content from a URL via HTTP GET. Returns JSON: { status, headers, body, truncated }. On error, returns JSON: { error }.',
230
230
  inputSchema: {
231
231
  type: 'object',
232
232
  properties: {
@@ -291,7 +291,7 @@ async function handleHttpFetch(args) {
291
291
  const url = args?.url;
292
292
  if (!url || typeof url !== 'string') {
293
293
  return {
294
- content: [{ type: 'text', text: 'Missing required parameter: url' }],
294
+ content: [{ type: 'text', text: JSON.stringify({ error: 'Missing required parameter: url' }) }],
295
295
  isError: true,
296
296
  };
297
297
  }
@@ -306,7 +306,9 @@ async function handleHttpFetch(args) {
306
306
  content: [
307
307
  {
308
308
  type: 'text',
309
- text: `Invalid format: ${typeof rawFormat === 'string' ? rawFormat : JSON.stringify(rawFormat)}. Supported formats are: ${VALID_FORMATS.join(', ')}.`,
309
+ text: JSON.stringify({
310
+ error: `Invalid format: ${typeof rawFormat === 'string' ? rawFormat : JSON.stringify(rawFormat)}. Supported formats are: ${VALID_FORMATS.join(', ')}.`,
311
+ }),
310
312
  },
311
313
  ],
312
314
  isError: true,
@@ -322,13 +324,16 @@ async function handleHttpFetch(args) {
322
324
  // Truncate to max_length
323
325
  const truncated = processedBody.length > maxLength;
324
326
  const finalBody = truncated ? processedBody.slice(0, maxLength) + '\n\n[Truncated]' : processedBody;
325
- const result = [`Status: ${status}`, `Headers: ${JSON.stringify(headers)}`, '', finalBody].join('\n');
327
+ // Return structured JSON so agents can access status, headers, and body
328
+ // as parsed fields. MCP requires text content, so we JSON.stringify the
329
+ // result — UTCP extracts the text and the agent can JSON.parse() it.
330
+ const result = JSON.stringify({ status, headers, body: finalBody, truncated });
326
331
  return { content: [{ type: 'text', text: result }] };
327
332
  }
328
333
  catch (err) {
329
334
  const message = err instanceof Error ? err.message : String(err);
330
335
  return {
331
- content: [{ type: 'text', text: `Fetch error: ${message}` }],
336
+ content: [{ type: 'text', text: JSON.stringify({ error: message }) }],
332
337
  isError: true,
333
338
  };
334
339
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-server.js","sourceRoot":"","sources":["../../src/servers/fetch-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch-server.js","sourceRoot":"","sources":["../../src/servers/fetch-server.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare class AgentSession implements Session {
14
14
  private readonly createdAt;
15
15
  private readonly sandboxFactory;
16
16
  private readonly escalationDir;
17
+ private readonly sessionDir;
17
18
  /** Raw AI SDK message history. */
18
19
  private messages;
19
20
  /** Structured turn log exposed through getHistory(). */
@@ -26,12 +27,8 @@ export declare class AgentSession implements Session {
26
27
  private tools;
27
28
  /** Language model, optionally wrapped with logging middleware. */
28
29
  private model;
29
- /** Currently pending escalation, if any. */
30
- private pendingEscalation;
31
- /** Interval handle for polling the escalation directory. */
32
- private escalationPollInterval;
33
- /** Escalation IDs already detected, to prevent re-detection after resolution. */
34
- private seenEscalationIds;
30
+ /** Shared escalation watcher (replaces inline polling). */
31
+ private escalationWatcher;
35
32
  /** Step-level loop detector for the agent. */
36
33
  private loopDetector;
37
34
  /** Resource budget tracker for token, step, time, and cost limits. */
@@ -49,7 +46,7 @@ export declare class AgentSession implements Session {
49
46
  private readonly onDiagnostic?;
50
47
  /** Additional content appended to the system prompt (e.g., cron task context). */
51
48
  private readonly systemPromptAugmentation?;
52
- constructor(config: IronCurtainConfig, sessionId: SessionId, escalationDir: string, options?: SessionOptions);
49
+ constructor(config: IronCurtainConfig, sessionId: SessionId, escalationDir: string, sessionDir: string, options?: SessionOptions);
53
50
  /**
54
51
  * Initialize the session's sandbox and build the tool set.
55
52
  * Called by the factory function, not by external callers.
@@ -61,7 +58,9 @@ export declare class AgentSession implements Session {
61
58
  getDiagnosticLog(): readonly DiagnosticEvent[];
62
59
  getPendingEscalation(): EscalationRequest | undefined;
63
60
  getBudgetStatus(): BudgetStatus;
64
- resolveEscalation(escalationId: string, decision: 'approved' | 'denied'): Promise<void>;
61
+ resolveEscalation(escalationId: string, decision: 'approved' | 'denied', options?: {
62
+ whitelistSelection?: number;
63
+ }): Promise<void>;
65
64
  close(): Promise<void>;
66
65
  private buildTools;
67
66
  private buildModel;
@@ -77,25 +76,14 @@ export declare class AgentSession implements Session {
77
76
  private emitTextDiagnostic;
78
77
  private recordTurn;
79
78
  /**
80
- * Starts polling the escalation directory for new request files.
81
- * When a request is detected, sets pendingEscalation and fires
82
- * the onEscalation callback.
79
+ * Starts the shared escalation watcher for this session's escalation directory.
83
80
  */
84
81
  private startEscalationWatcher;
85
- private pollEscalationDirectory;
86
- /**
87
- * Detects proxy-side escalation timeout: both request and response files
88
- * are gone, meaning the proxy cleaned up after its deadline expired.
89
- * When detected, clears the pending escalation and notifies the transport.
90
- */
91
- private checkEscalationExpiry;
92
82
  /**
93
83
  * Writes the user's message to the escalation directory for the auto-approver.
94
84
  * Silently ignores write failures -- the auto-approver treats a missing file
95
85
  * as "no context" and falls through to human escalation.
96
86
  */
97
87
  private writeUserContext;
98
- /** Extracts the escalation ID from a request filename like "request-abc123.json". */
99
- private extractEscalationId;
100
88
  private stopEscalationWatcher;
101
89
  }