@intentic/sandbox-contract 1.329.0 → 1.330.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 (114) hide show
  1. package/dist/chores/probes.d.ts.map +1 -1
  2. package/dist/chores/probes.js +1 -2
  3. package/dist/chores/probes.js.map +1 -1
  4. package/dist/contracts/agents.contract.d.ts +69 -0
  5. package/dist/contracts/agents.contract.d.ts.map +1 -1
  6. package/dist/contracts/device.contract.d.ts +6 -0
  7. package/dist/contracts/device.contract.d.ts.map +1 -1
  8. package/dist/contracts/device.contract.js +2 -1
  9. package/dist/contracts/device.contract.js.map +1 -1
  10. package/dist/contracts/runs.contract.d.ts +35 -0
  11. package/dist/contracts/runs.contract.d.ts.map +1 -0
  12. package/dist/contracts/runs.contract.js +22 -0
  13. package/dist/contracts/runs.contract.js.map +1 -0
  14. package/dist/contracts/settings.contract.d.ts +8 -0
  15. package/dist/contracts/settings.contract.d.ts.map +1 -1
  16. package/dist/contracts/system.contract.d.ts +42 -30
  17. package/dist/contracts/system.contract.d.ts.map +1 -1
  18. package/dist/contracts/system.contract.js +10 -1
  19. package/dist/contracts/system.contract.js.map +1 -1
  20. package/dist/contracts/workspace.contract.d.ts +37 -0
  21. package/dist/contracts/workspace.contract.d.ts.map +1 -1
  22. package/dist/contracts/workspace.contract.js +11 -1
  23. package/dist/contracts/workspace.contract.js.map +1 -1
  24. package/dist/events/system-events.d.ts +8 -0
  25. package/dist/events/system-events.d.ts.map +1 -1
  26. package/dist/index.d.ts +165 -1
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +7 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/protocol/doors/listener-protocol.d.ts +0 -1
  31. package/dist/protocol/doors/listener-protocol.d.ts.map +1 -1
  32. package/dist/protocol/doors/listener-protocol.js +3 -2
  33. package/dist/protocol/doors/listener-protocol.js.map +1 -1
  34. package/dist/protocol/raw/raw-routes.d.ts +25 -0
  35. package/dist/protocol/raw/raw-routes.d.ts.map +1 -1
  36. package/dist/protocol/raw/raw-routes.js +7 -0
  37. package/dist/protocol/raw/raw-routes.js.map +1 -1
  38. package/dist/schemas/agents-list.d.ts +4 -0
  39. package/dist/schemas/agents-list.d.ts.map +1 -1
  40. package/dist/schemas/agents.d.ts +13 -0
  41. package/dist/schemas/agents.d.ts.map +1 -1
  42. package/dist/schemas/agents.js +4 -3
  43. package/dist/schemas/agents.js.map +1 -1
  44. package/dist/schemas/device-artifacts.d.ts +13 -0
  45. package/dist/schemas/device-artifacts.d.ts.map +1 -1
  46. package/dist/schemas/device-artifacts.js +13 -0
  47. package/dist/schemas/device-artifacts.js.map +1 -1
  48. package/dist/schemas/run-targets.d.ts +82 -0
  49. package/dist/schemas/run-targets.d.ts.map +1 -0
  50. package/dist/schemas/run-targets.js +49 -0
  51. package/dist/schemas/run-targets.js.map +1 -0
  52. package/dist/schemas/settings.d.ts +8 -0
  53. package/dist/schemas/settings.d.ts.map +1 -1
  54. package/dist/schemas/settings.js +2 -1
  55. package/dist/schemas/settings.js.map +1 -1
  56. package/dist/schemas/speech.d.ts +75 -0
  57. package/dist/schemas/speech.d.ts.map +1 -0
  58. package/dist/schemas/speech.js +66 -0
  59. package/dist/schemas/speech.js.map +1 -0
  60. package/dist/schemas/terminal.d.ts +4 -0
  61. package/dist/schemas/terminal.d.ts.map +1 -1
  62. package/dist/schemas/terminal.js +4 -0
  63. package/dist/schemas/terminal.js.map +1 -1
  64. package/dist/schemas/turn-break.d.ts +7 -1
  65. package/dist/schemas/turn-break.d.ts.map +1 -1
  66. package/dist/schemas/turn-break.js +4 -2
  67. package/dist/schemas/turn-break.js.map +1 -1
  68. package/dist/schemas/workspace/workspace-graph.d.ts +133 -0
  69. package/dist/schemas/workspace/workspace-graph.d.ts.map +1 -0
  70. package/dist/schemas/workspace/workspace-graph.js +83 -0
  71. package/dist/schemas/workspace/workspace-graph.js.map +1 -0
  72. package/dist/schemas/workspace/workspace-repos.d.ts +0 -39
  73. package/dist/schemas/workspace/workspace-repos.d.ts.map +1 -1
  74. package/dist/schemas/workspace/workspace-repos.js +0 -15
  75. package/dist/schemas/workspace/workspace-repos.js.map +1 -1
  76. package/dist/state/definition.d.ts +4 -0
  77. package/dist/state/definition.d.ts.map +1 -1
  78. package/dist/state/workspace-state.d.ts +2 -1
  79. package/dist/state/workspace-state.d.ts.map +1 -1
  80. package/dist/state/workspace-state.js +5 -1
  81. package/dist/state/workspace-state.js.map +1 -1
  82. package/dist/text/transcript-page.d.ts +5 -0
  83. package/dist/text/transcript-page.d.ts.map +1 -0
  84. package/dist/text/transcript-page.js +17 -0
  85. package/dist/text/transcript-page.js.map +1 -0
  86. package/package.json +5 -5
  87. package/src/chores/probes.ts +1 -2
  88. package/src/contracts/device.contract.ts +6 -1
  89. package/src/contracts/runs.contract.ts +26 -0
  90. package/src/contracts/system.contract.ts +13 -0
  91. package/src/contracts/workspace.contract.ts +12 -1
  92. package/src/index.ts +7 -1
  93. package/src/models/agent-runtimes.ts +2 -2
  94. package/src/protocol/doors/listener-protocol.ts +5 -4
  95. package/src/protocol/raw/raw-routes.ts +12 -0
  96. package/src/schemas/agents.ts +6 -3
  97. package/src/schemas/device-artifacts.ts +21 -0
  98. package/src/schemas/run-targets.ts +93 -0
  99. package/src/schemas/settings.ts +6 -1
  100. package/src/schemas/speech.ts +96 -0
  101. package/src/schemas/terminal.ts +4 -0
  102. package/src/schemas/turn-break.ts +18 -9
  103. package/src/schemas/workspace/workspace-graph.ts +116 -0
  104. package/src/schemas/workspace/workspace-repos.ts +0 -22
  105. package/src/state/workspace-state.test.ts +42 -1
  106. package/src/state/workspace-state.ts +12 -1
  107. package/src/text/transcript-page.test.ts +39 -0
  108. package/src/text/transcript-page.ts +37 -0
  109. package/dist/text/whisper.d.ts +0 -3
  110. package/dist/text/whisper.d.ts.map +0 -1
  111. package/dist/text/whisper.js +0 -11
  112. package/dist/text/whisper.js.map +0 -1
  113. package/src/text/whisper.test.ts +0 -18
  114. package/src/text/whisper.ts +0 -17
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-state.js","sourceRoot":"","sources":["../../src/state/workspace-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-state.js","sourceRoot":"","sources":["../../src/state/workspace-state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { TranscriptRow, TranscriptTool } from "../events/transcript.js";
2
+ export declare const PAGE_TEXT_CAP = 8000;
3
+ export declare const fitPageRow: <Row extends TranscriptRow>(row: Row) => Row;
4
+ export declare const fitNestedTool: (tool: TranscriptTool) => TranscriptTool;
5
+ //# sourceMappingURL=transcript-page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript-page.d.ts","sourceRoot":"","sources":["../../src/text/transcript-page.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAS7E,eAAO,MAAM,aAAa,OAAQ,CAAC;AAkBnC,eAAO,MAAM,UAAU,GAAI,GAAG,SAAS,aAAa,OAAO,GAAG,KAAG,GACgB,CAAC;AAGlF,eAAO,MAAM,aAAa,SAAU,cAAc,KAAG,cAInD,CAAC"}
@@ -0,0 +1,17 @@
1
+ export const PAGE_TEXT_CAP = 8_000;
2
+ const fitContent = (entry) => entry.type === "text" && entry.text.length > PAGE_TEXT_CAP ? { ...entry, text: entry.text.slice(0, PAGE_TEXT_CAP) } : entry;
3
+ const fitPageTool = (tool) => {
4
+ const { children, content, ...carried } = tool;
5
+ return {
6
+ ...carried,
7
+ ...(content !== undefined ? { content: content.map(fitContent) } : {}),
8
+ ...(children !== undefined && children.length > 0 ? { nested: children.length } : {}),
9
+ };
10
+ };
11
+ export const fitPageRow = (row) => row.tools === undefined ? row : { ...row, tools: row.tools.map(fitPageTool) };
12
+ export const fitNestedTool = (tool) => ({
13
+ ...tool,
14
+ ...(tool.content !== undefined ? { content: tool.content.map(fitContent) } : {}),
15
+ ...(tool.children !== undefined ? { children: tool.children.map(fitNestedTool) } : {}),
16
+ });
17
+ //# sourceMappingURL=transcript-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript-page.js","sourceRoot":"","sources":["../../src/text/transcript-page.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AAEnC,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAmB,EAAE,CAC3D,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAKhI,MAAM,WAAW,GAAG,CAAC,IAAoB,EAAkB,EAAE;IACzD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/C,OAAO;QACH,GAAG,OAAO;QACV,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxF,CAAC;AACN,CAAC,CAAC;AAGF,MAAM,CAAC,MAAM,UAAU,GAAG,CAA4B,GAAQ,EAAO,EAAE,CACnE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;AAGlF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAoB,EAAkB,EAAE,CAAC,CAAC;IACpE,GAAG,IAAI;IACP,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CACzF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentic/sandbox-contract",
3
- "version": "1.329.0",
3
+ "version": "1.330.0",
4
4
  "description": "oRPC wire contract for the intentic sandbox daemon, shared by the daemon and its browser client",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -306,10 +306,10 @@
306
306
  }
307
307
  },
308
308
  "dependencies": {
309
- "@intentic/base": "1.329.0",
310
- "@intentic/constants": "1.329.0",
311
- "@intentic/extension-manifest": "1.329.0",
312
- "@intentic/registry": "1.329.0",
309
+ "@intentic/base": "1.330.0",
310
+ "@intentic/constants": "1.330.0",
311
+ "@intentic/extension-manifest": "1.330.0",
312
+ "@intentic/registry": "1.330.0",
313
313
  "@orpc/contract": "1.15.4",
314
314
  "tslib": "2.8.1",
315
315
  "zod": "4.6.5"
@@ -86,7 +86,6 @@ const STANDALONE_DIRS =
86
86
  `sed -n -e 's|/\\*\\*[[:space:]]*$||' -e 's|^[[:space:]]*-[[:space:]]*!\\([^[:space:]#]*\\).*$|\\1|p'`;
87
87
 
88
88
  // The line that opens one standalone package's report, as JSON so a guard can still read the stream with `jq -s`.
89
- const STANDALONE_KEY = `standalone`;
90
89
  const STANDALONE_LINE = /^\{"standalone":"([^"]*)"\}$/;
91
90
 
92
91
  // Runs `measure` against each standalone package in a scratch copy, never in place: `--lockfile-only` would write
@@ -97,7 +96,7 @@ const STANDALONE_LINE = /^\{"standalone":"([^"]*)"\}$/;
97
96
  const standaloneCommand = (measure: string): string =>
98
97
  `${STANDALONE_DIRS} | while IFS= read -r dir; do ` +
99
98
  `[ -f "$dir/package.json" ] || continue; ` +
100
- `printf '{"${STANDALONE_KEY}":"%s"}\\n' "$dir"; ` +
99
+ `printf '{"standalone":"%s"}\\n' "$dir"; ` +
101
100
  `scratch=$(mktemp -d) || continue; ` +
102
101
  `for file in package.json pnpm-lock.yaml package-lock.json .npmrc; do [ -f "$dir/$file" ] && cp "$dir/$file" "$scratch/"; done; ` +
103
102
  `( cd "$scratch" && { [ -f pnpm-lock.yaml ] || { [ -f package-lock.json ] && pnpm import >/dev/null 2>&1; } || ` +
@@ -7,7 +7,7 @@ import { DeviceFactsSchema } from "../schemas/hosts.js";
7
7
  import { LoopbackCatchEventSchema, LoopbackCatchSchema } from "../schemas/loopback-catch.js";
8
8
  import { OkSchema } from "../schemas/shared.js";
9
9
  import { ProjectDeliveryResultSchema, ProjectDeliverySchema } from "../schemas/project-delivery.js";
10
- import { StageArtifactResultSchema, StageArtifactSchema } from "../schemas/device-artifacts.js";
10
+ import { DialLoopbackSchema, StageArtifactResultSchema, StageArtifactSchema } from "../schemas/device-artifacts.js";
11
11
 
12
12
  // What a connected device can be asked, over the socket it opened; the machine is the oRPC server, the daemon the
13
13
  // client. No `.route()`: the procedure path is the address, not HTTP. Every input is strict (devices.ts says why). `mcp` stays opaque (`z.unknown()`) so a machine
@@ -41,4 +41,9 @@ export const deviceContract = {
41
41
  // Only the daemon calls it, for the agent's `devices push`, and only on an agent advertising `programs`; the machine
42
42
  // refuses every op unless "Run programs this sandbox sends" is on.
43
43
  stageArtifact: oc.input(StageArtifactSchema).output(StageArtifactResultSchema),
44
+ // A connection to the sandbox side of a `devices reach` tunnel: the machine dials its own 127.0.0.1:<port> and, once
45
+ // that answered, opens a WebSocket back to /system/hosts/tunnel with the ticket. Answers once the local port took
46
+ // the connection, or throws (nothing listening there, the switch is off). Advertised with `programs`; the machine
47
+ // allows it when "Run commands" or "Run programs this sandbox sends" is on, either of which already reaches it.
48
+ dialLoopback: oc.input(DialLoopbackSchema).output(z.object({ ok: z.literal(true) })),
44
49
  };
@@ -0,0 +1,26 @@
1
+ import { procedure } from "../protocol/route-meta.js";
2
+ import { RUN_TARGETS_FILE, RunStartedSchema, RunStartSchema, RunTargetsListSchema } from "../schemas/run-targets.js";
3
+
4
+ // A repository's programs run on the owner's own computers (schemas/run-targets.ts): what each repository declares, and
5
+ // the button that runs one. The run itself is `devices run` in a terminal, the same command an agent runs, so what the
6
+ // owner watches is what an agent gets.
7
+ export const runsContract = {
8
+ targets: procedure
9
+ .route({
10
+ method: "GET",
11
+ path: "/runs/targets",
12
+ summary: "What each repository can run on your computers",
13
+ description: `Every repository that declares run targets at \`${RUN_TARGETS_FILE}\`, and which of your computers could run one now.`,
14
+ })
15
+ .output(RunTargetsListSchema),
16
+ start: procedure
17
+ .route({
18
+ method: "POST",
19
+ path: "/runs/start",
20
+ summary: "Run a target on one of your computers",
21
+ description:
22
+ "Builds it in the sandbox, carries the build to the computer and starts it there, in a terminal you can watch. The computer still decides: its \"Run programs this sandbox sends\" switch has to be on.",
23
+ })
24
+ .input(RunStartSchema)
25
+ .output(RunStartedSchema),
26
+ };
@@ -17,6 +17,7 @@ import { DaemonSessionSchema, InfoSchema, ManifestProblemsSchema, ManifestRepair
17
17
  import { AutoUpdateInputSchema, AutoUpdateSchema, SkipUpdateInputSchema } from "../schemas/updates.js";
18
18
  import {
19
19
  BrowserNameParamSchema,
20
+ BrowserPageParamSchema,
20
21
  BrowsersListSchema,
21
22
  OpenBrowserInputSchema,
22
23
  OpenBrowserResultSchema,
@@ -253,6 +254,18 @@ export const systemContract = {
253
254
  })
254
255
  .input(BrowserNameParamSchema)
255
256
  .output(OkSchema),
257
+ // One tab, closed without watching its window: the Browsers strip shows every window's tabs, and only the window in
258
+ // front has a picture socket to say a close on.
259
+ closeBrowserPage: systemRoute
260
+ .route({
261
+ method: "DELETE",
262
+ path: "/system/browsers/{name}/pages/{pageId}",
263
+ summary: "Close one tab of a browser",
264
+ description:
265
+ "Closes one tab of a browser window, as its own close button does. A tab that is already gone answers the same, since gone is what was asked for.",
266
+ })
267
+ .input(BrowserPageParamSchema)
268
+ .output(OkSchema),
256
269
  // The picture and the hands come over /system/desktop-view; this is whether there is anything on it, and which windows
257
270
  // a tab could show alone. Pushed through the `desktop` runtime domain as windows open, close and take the keyboard,
258
271
  // and as their titles change while a view is open; never polled by the client.
@@ -13,9 +13,9 @@ import {
13
13
  ReposListSchema,
14
14
  RunTestsSchema,
15
15
  TemplatesListSchema,
16
- WorkspaceGraphSchema,
17
16
  WorkspaceSyncSchema,
18
17
  } from "../schemas/workspace/workspace-repos.js";
18
+ import { PackageModulesParamSchema, PackageModulesSchema, WorkspaceGraphSchema } from "../schemas/workspace/workspace-graph.js";
19
19
  import { WorkspaceSearchQuerySchema, WorkspaceSearchResultSchema } from "../schemas/workspace/workspace-search.js";
20
20
  import { WorkspaceInstallResultSchema, WorkspaceInstallSchema, WorkspaceSetupSchema } from "../schemas/workspace/workspace-setup.js";
21
21
  import {
@@ -341,6 +341,17 @@ export const workspaceContract = {
341
341
  })
342
342
  .input(RepoAppsParamSchema)
343
343
  .output(WorkspaceGraphSchema),
344
+ // One package's modules grouped into units, and the value imports between them, placed in its declared layers.
345
+ packageModules: procedure
346
+ .route({
347
+ method: "GET",
348
+ path: "/workspace/repos/{repo}/layers",
349
+ summary: "How one package's modules import each other",
350
+ description:
351
+ "One workspace package's source directories as units, the value imports between them, and the layers its layers.json declares, which is what a view of its insides draws.",
352
+ })
353
+ .input(PackageModulesParamSchema)
354
+ .output(PackageModulesSchema),
344
355
  // Every repo's package dirs in one call, since a review spans repos and per-repo would fan out per open.
345
356
  modules: procedure
346
357
  .route({
package/src/index.ts CHANGED
@@ -28,6 +28,7 @@ import { loopsContract } from "./contracts/loops.contract.js";
28
28
  import { pagesContract } from "./contracts/pages.contract.js";
29
29
  import { panelsContract } from "./contracts/panels.contract.js";
30
30
  import { portsContract } from "./contracts/ports.contract.js";
31
+ import { runsContract } from "./contracts/runs.contract.js";
31
32
  import { publicContract } from "./contracts/public.contract.js";
32
33
  import { netdiskContract } from "./contracts/netdisk.contract.js";
33
34
  import { providersContract } from "./contracts/providers.contract.js";
@@ -96,6 +97,7 @@ export * from "./protocol/vitals.js";
96
97
  export { loopsContract } from "./contracts/loops.contract.js";
97
98
  export { panelsContract } from "./contracts/panels.contract.js";
98
99
  export { portsContract } from "./contracts/ports.contract.js";
100
+ export { runsContract } from "./contracts/runs.contract.js";
99
101
  export { pagesContract, PageAppCallResultSchema, PageAppCallSchema, PageErrorsResultSchema, PageErrorsSchema } from "./contracts/pages.contract.js";
100
102
  export { publicContract } from "./contracts/public.contract.js";
101
103
  export { providersContract, type RunnableProviders, RunnableProvidersSchema } from "./contracts/providers.contract.js";
@@ -135,6 +137,7 @@ export * from "./events/child-run.js";
135
137
  export * from "./policy/turned-away.js";
136
138
  export * from "./text/mentions.js";
137
139
  export * from "./text/pages.js";
140
+ export * from "./text/transcript-page.js";
138
141
  export * from "./protocol/sse.js";
139
142
  export * from "./protocol/routes.js";
140
143
  export { type ControlReach, defaultFloor, type RouteAccess, type RouteMeta, routeAccess } from "./protocol/route-meta.js";
@@ -200,6 +203,7 @@ export * from "./policy/fence-paths.js";
200
203
  export * from "./policy/persona-home.js";
201
204
  export * from "./schemas/agents.js";
202
205
  export * from "./schemas/speaker.js";
206
+ export * from "./schemas/speech.js";
203
207
  export * from "./schemas/approvals.js";
204
208
  export * from "./schemas/automations.js";
205
209
  export * from "./schemas/agents-list.js";
@@ -212,6 +216,7 @@ export * from "./schemas/context-trim.js";
212
216
  export * from "./schemas/devices.js";
213
217
  export * from "./schemas/project-delivery.js";
214
218
  export * from "./schemas/device-artifacts.js";
219
+ export * from "./schemas/run-targets.js";
215
220
  export * from "./schemas/engines.js";
216
221
  export * from "./schemas/environment.js";
217
222
  export * from "./schemas/exit.js";
@@ -265,6 +270,7 @@ export * from "./schemas/offload.js";
265
270
  export * from "./schemas/webext.js";
266
271
  export * from "./schemas/phone.js";
267
272
  export * from "./schemas/workflows.js";
273
+ export * from "./schemas/workspace/workspace-graph.js";
268
274
  export * from "./schemas/workspace/workspace-repos.js";
269
275
  export * from "./schemas/workspace/workspace-search.js";
270
276
  export * from "./schemas/workspace/workspace-setup.js";
@@ -277,7 +283,6 @@ export * from "./text/title.js";
277
283
  export * from "./state/versions.js";
278
284
  export * from "./text/model-answer.js";
279
285
  export * from "./text/shell-regions.js";
280
- export * from "./text/whisper.js";
281
286
  export * from "./text/workflow-faults.js";
282
287
  export * from "./text/emoji.js";
283
288
  export * from "./time/zone.js";
@@ -316,6 +321,7 @@ export const sandboxContract = {
316
321
  pages: pagesContract,
317
322
  panels: panelsContract,
318
323
  ports: portsContract,
324
+ runs: runsContract,
319
325
  public: publicContract,
320
326
  providers: providersContract,
321
327
  push: pushContract,
@@ -121,7 +121,7 @@ export const OPENCODE: AgentCapabilities = {
121
121
  steering: false,
122
122
  permissions: "plan",
123
123
  questions: false,
124
- // Added at runtime under the conversation's own names, each prompt showing its session only its own (opencode-mcp.ts).
124
+ // Added at runtime under the conversation's own names, each session's own rules showing it only its own (opencode-mcp.ts).
125
125
  mcp: "http",
126
126
  execution: ["shell"],
127
127
  effort: false,
@@ -131,7 +131,7 @@ export const OPENCODE: AgentCapabilities = {
131
131
  terminals: false,
132
132
  recovery: false,
133
133
  warm: false,
134
- // `system` on the prompt body, per message; adds to OpenCode's own prompt, with no seam to replace it.
134
+ // The session's own instruction entry, set per message; adds to OpenCode's own prompt, with no seam to replace it.
135
135
  instructions: "append",
136
136
  skillDiscovery: "prompt",
137
137
  // OpenCode raises its permission asks for the commands its config names; the daemon answers from the rulebook, a
@@ -9,7 +9,9 @@ import { rawRouteUrl } from "../raw/raw-routes.js";
9
9
  // The path of one of the four listener routes for a provider, built from RAW_ROUTES so the gateway and the daemon
10
10
  // cannot spell it two ways.
11
11
  export const listenerRouteUrl = (route: "state" | "dispatch" | "failure" | "status", provider: string): string =>
12
- route === "state" ? rawRouteUrl("GET /listeners/{provider}/state", { provider }) : rawRouteUrl(`POST /listeners/{provider}/${route}`, { provider });
12
+ route === "state"
13
+ ? rawRouteUrl("GET /listeners/{provider}/state", { provider })
14
+ : rawRouteUrl(`POST /listeners/{provider}/${route}`, { provider });
13
15
 
14
16
  // The reconcile feed GET /listeners/<provider>/state answers: the enabled automations listening to this provider and
15
17
  // the connectors the asking extension contributes, each with its whole config, secrets included, since the gateway
@@ -86,10 +88,9 @@ export const ListenerPairingSchema = z.object({
86
88
  export type ListenerPairing = z.infer<typeof ListenerPairingSchema>;
87
89
 
88
90
  // Push-based status: a gateway POSTs its connection/voice snapshot to /listeners/<provider>/status, since the daemon
89
- // holds no provider connection to probe itself. Extends ActivityStatus with whisper's voice-pending flag and each
90
- // unpaired capability's pairing ceremony by id.
91
+ // holds no provider connection to probe itself. Extends ActivityStatus with each unpaired capability's pairing ceremony
92
+ // by id.
91
93
  export const ListenerStatusSchema = ActivityStatusSchema.extend({
92
- whisperReady: z.boolean().optional(),
93
94
  pairing: z.record(z.string(), ListenerPairingSchema).optional(),
94
95
  });
95
96
  export type ListenerStatus = z.infer<typeof ListenerStatusSchema>;
@@ -16,7 +16,11 @@ export const RAW_ROUTES = {
16
16
  "GET /diff/raw": { lane: "bulk" },
17
17
  // Arming the dictation model is a read any tier makes; dictating is writing a message, the collaborator's grant.
18
18
  "GET /speech/status": { guest: true },
19
+ "POST /speech/prepare": { guest: true },
19
20
  "POST /speech/transcribe": { floor: "collaborator", guest: true },
21
+ // The live phrase stream (schemas/speech.ts): a WebSocket, so the query ticket, floored at the collaborator in the
22
+ // handler like the transcribe it streams.
23
+ "GET /speech/stream": { auth: "door" },
20
24
  // The bytes behind the workspace reads; each applies the caller's fence itself.
21
25
  "GET /workspace/raw": { guest: true, lane: "bulk" },
22
26
  // No door, unlike media: the page fetches a thumbnail itself, so the request carries the header.
@@ -127,6 +131,14 @@ export const RAW_ROUTES = {
127
131
  // The `devices push` CLI: a program the agent built, carried to one of the owner's computers in chunks; held to the
128
132
  // devices the calling conversation's turn mounts, and refused by the machine itself unless "Run programs" is on.
129
133
  "POST /devices/{name}/artifacts": { agent: true, control: "never" },
134
+ // The rest of the `devices` command, held to the same rule (hosts/device-door.routes.ts): the device's app_start for a
135
+ // shell, and its loopback ports reached from the sandbox (hosts/device-tunnels.ts).
136
+ "POST /devices/{name}/apps": { agent: true, control: "never" },
137
+ "POST /devices/{name}/tunnels": { agent: true, control: "never" },
138
+ "DELETE /devices/{name}/tunnels/{port}": { agent: true, control: "never" },
139
+ "GET /devices/tunnels": { agent: true },
140
+ // Where a device dials back with a tunnel's one-time ticket; the ticket is the whole credential, checked by the route.
141
+ "GET /system/hosts/tunnel": { auth: "door", control: "never" },
130
142
  // An extension gateway's realtime-listener control: /state hands back its connectors' stored credentials, so only the
131
143
  // extension token of the extension declaring that `listener.provider` reaches them, checked in the handler too.
132
144
  "GET /listeners/{provider}/state": { floor: "maintainer", panel: false, control: "never" },
@@ -3,7 +3,7 @@ import { LandingDeliverySchema } from "./project-delivery.js";
3
3
  import { z } from "zod";
4
4
  import { AgentHarnessSchema, AgentOriginSchema, AgentProviderSchema, ConversationQueueSchema, ForkedFromSchema } from "./agent.js";
5
5
  import { LoopStateSchema } from "./loops.js";
6
- import { LimitPolicySchema, RetryPolicySchema, TurnBreakPolicySchema, TurnBreakSchema } from "./turn-break.js";
6
+ import { LimitPolicySchema, RetryPolicySchema, RoomPolicySchema, TurnBreakPolicySchema, TurnBreakSchema } from "./turn-break.js";
7
7
  import { KeepWarmSchema } from "./keep-warm.js";
8
8
  import { AgentNeedSchema } from "./needs.js";
9
9
  import { EMOJI_MAX_LENGTH, isSingleEmoji } from "../text/emoji.js";
@@ -362,6 +362,7 @@ export const AgentSummarySchema = z.object({
362
362
  limitPolicy: LimitPolicySchema.optional(),
363
363
  outagePolicy: RetryPolicySchema.optional(),
364
364
  stopPolicy: RetryPolicySchema.optional(),
365
+ memoryPolicy: RoomPolicySchema.optional(),
365
366
  // A collaborator's ask to land (collaborators can't merge themselves); cleared by whichever merge or discard
366
367
  // answers it.
367
368
  landRequested: z
@@ -907,9 +908,11 @@ export const AgentUnsentSchema = z.object({
907
908
  // verbs is how the surfaces drifted apart in the first place.
908
909
  export const AgentBreakPolicySchema = z.object({
909
910
  id: z.string().min(1).describe("Which conversation."),
910
- ending: TurnBreakSchema.describe("Which wall this answers for: a spent usage limit, a provider outage, or a turn that stopped short."),
911
+ ending: TurnBreakSchema.describe(
912
+ "Which wall this answers for: a spent usage limit, a provider outage, a turn that stopped short, or a message the sandbox held because it was short of memory.",
913
+ ),
911
914
  policy: TurnBreakPolicySchema.nullable().describe(
912
- "What happens next for that ending. `wait` holds the turn for a press; `retry` re-runs it on a bounded ladder (outage, stop); `resend` sends it again at the published reset and `move` also tries another account with room (limit only). An answer the ending does not allow is refused. Null clears the override and goes back to following the sandbox-wide policy, so a conversation does not sit holding a frozen copy of a default it has quietly stopped following.",
915
+ "What happens next for that ending. `wait` holds the turn for a press; `retry` re-runs it on a bounded ladder (outage, stop); `resend` sends it again at the published reset (limit) or once memory frees up (memory), and `move` also tries another account with room (limit only). An answer the ending does not allow is refused. Null clears the override and goes back to following the sandbox-wide policy, so a conversation does not sit holding a frozen copy of a default it has quietly stopped following.",
913
916
  ),
914
917
  });
915
918
  export const AgentFileDiffQuerySchema = z.object({
@@ -76,3 +76,24 @@ export const PushedArtifactSchema = z.object({
76
76
  reused: z.boolean(),
77
77
  });
78
78
  export type PushedArtifact = z.infer<typeof PushedArtifactSchema>;
79
+
80
+ // A DEVICE'S LOOPBACK PORT, REACHED FROM THE SANDBOX (`devices reach`, hosts/device-tunnels.ts). The sandbox listens on
81
+ // its own 127.0.0.1:<localPort>; each connection asks the device to dial its own 127.0.0.1:<devicePort> and open a
82
+ // WebSocket back to /system/hosts/tunnel carrying the ticket below, and the two are pumped together.
83
+ export const DialLoopbackSchema = z
84
+ .object({
85
+ ticket: z.string().regex(/^[0-9a-f]{48}$/),
86
+ port: z.int().min(1).max(65535),
87
+ })
88
+ .strict();
89
+ export type DialLoopback = z.infer<typeof DialLoopbackSchema>;
90
+
91
+ export const DeviceTunnelSchema = z.object({
92
+ device: z.string(),
93
+ devicePort: z.int().min(1).max(65535),
94
+ localPort: z.int().min(1).max(65535),
95
+ // What a program in the sandbox opens to reach the device's port.
96
+ url: z.string(),
97
+ openedAt: z.string(),
98
+ });
99
+ export type DeviceTunnel = z.infer<typeof DeviceTunnelSchema>;
@@ -0,0 +1,93 @@
1
+ import { z } from "zod";
2
+ import { ArtifactNameSchema } from "./device-artifacts.js";
3
+
4
+ // WHAT A REPOSITORY SAYS IT CAN BE RUN AS, ON ONE OF THE OWNER'S COMPUTERS (`<repo>/.intentic/run.json`). Beside the
5
+ // build scripts it names and tracked with them, like `.intentic/checks.json`. One file serves two doors that must do the
6
+ // same thing: an agent's `devices run <target>` in its own shell, and the editor's "Run on <device>" button, which runs
7
+ // that very command in a terminal the owner watches. Each run builds in the sandbox, carries the build to the device
8
+ // (`devices push`), opens the device ports the target says the sandbox needs (`devices reach`), and starts the program
9
+ // there (the device's app_start). Nothing here runs by itself: a target runs when someone runs it.
10
+ //
11
+ // {
12
+ // "targets": [{
13
+ // "name": "desktop",
14
+ // "device": "rog",
15
+ // "build": "bash _tools/scripts/desktop/build-desktop.sh 0.0.0 --windows-only",
16
+ // "artifact": {
17
+ // "intentic-desktop.exe": "_editor/desktop-app/src-tauri/target/x86_64-pc-windows-msvc/release/intentic-desktop.exe",
18
+ // "intentic-files.exe": "_editor/desktop-app/src-tauri/binaries/intentic-files-x86_64-pc-windows-msvc.exe"
19
+ // },
20
+ // "program": "intentic-desktop.exe"
21
+ // }]
22
+ // }
23
+
24
+ export const RUN_TARGETS_FILE = ".intentic/run.json";
25
+
26
+ const RepoPathSchema = z
27
+ .string()
28
+ .min(1)
29
+ .max(500)
30
+ .refine((path) => !path.startsWith("/") && !path.split(/[\\/]/).includes(".."), "a path inside the repository, relative to its root");
31
+ const BundleNameSchema = z.string().regex(/^[A-Za-z0-9][A-Za-z0-9 ._()+-]{0,199}(\/[A-Za-z0-9][A-Za-z0-9 ._()+-]{0,199})*$/, "a relative name, folders by /");
32
+
33
+ export const RunTargetSchema = z
34
+ .object({
35
+ // What `devices run <name>` and the button call it.
36
+ name: ArtifactNameSchema,
37
+ description: z.string().max(300).optional(),
38
+ // The computer it runs on unless one is named at the run; the device's name as its tools are mounted.
39
+ device: z.string().min(1).max(100).optional(),
40
+ // A shell command run from the repository's root, in the sandbox, before every run; absent means the artifact
41
+ // is already there.
42
+ build: z.string().min(1).max(4000).optional(),
43
+ // What is carried: one file or one folder, or a set of files and folders gathered into one folder under names of
44
+ // their own (an .exe beside the sidecars, DLLs and resource folders it looks for next to itself).
45
+ artifact: z.union([RepoPathSchema, z.record(BundleNameSchema, RepoPathSchema)]),
46
+ // Which file to start when the artifact is a folder or a set; a lone file is started as itself.
47
+ program: BundleNameSchema.optional(),
48
+ args: z.array(z.string().max(4000)).max(100).default([]),
49
+ env: z.record(z.string().regex(/^[A-Za-z_][A-Za-z0-9_]*$/), z.string().max(4000)).default({}),
50
+ // Run it inside Windows Sandbox, a throwaway VM that sees the build read-only and nothing else of the machine.
51
+ isolated: z.boolean().default(false),
52
+ // The device's own loopback ports the sandbox needs to reach while it runs (its local API, a dev server), each
53
+ // opened at the same port in the sandbox.
54
+ reach: z.array(z.int().min(1).max(65535)).max(16).default([]),
55
+ })
56
+ .strict();
57
+ export type RunTarget = z.infer<typeof RunTargetSchema>;
58
+
59
+ export const RunTargetsFileSchema = z
60
+ .object({
61
+ targets: z
62
+ .array(RunTargetSchema)
63
+ .min(1)
64
+ .max(50)
65
+ .refine((targets) => new Set(targets.map((target) => target.name)).size === targets.length, "two targets share a name"),
66
+ })
67
+ .strict();
68
+
69
+ // One repository's file as the editor lists it: its targets, or what is wrong with the file.
70
+ export const RepoRunTargetsSchema = z.object({
71
+ repo: z.string(),
72
+ path: z.string(),
73
+ targets: z.array(RunTargetSchema),
74
+ error: z.string().optional(),
75
+ });
76
+
77
+ export const RunTargetsListSchema = z.object({
78
+ repos: z.array(RepoRunTargetsSchema),
79
+ // The owner's computers: whether each is connected, whether its agent is new enough to take a program, and whether
80
+ // its card's "Run programs this sandbox sends" switch is on. A run needs all three.
81
+ devices: z.array(z.object({ id: z.string(), online: z.boolean(), programs: z.boolean(), allowed: z.boolean() })),
82
+ });
83
+ export type RunTargetsList = z.infer<typeof RunTargetsListSchema>;
84
+
85
+ export const RunStartSchema = z.object({
86
+ repo: z.string().min(1),
87
+ target: ArtifactNameSchema,
88
+ device: z.string().min(1).max(100),
89
+ });
90
+ export type RunStart = z.infer<typeof RunStartSchema>;
91
+
92
+ // The terminal session the run is in, for the editor to open.
93
+ export const RunStartedSchema = z.object({ session: z.string() });
@@ -5,7 +5,7 @@ import { z } from "zod";
5
5
  import { CommandJudgeModeSchema, ProjectInstallModeSchema } from "../policy/safety-policy.js";
6
6
  import { ModelRoleSchema } from "../models/model-roles.js";
7
7
  import { AdmissionPolicySchema, AdmissionRuleSchema, ModelPinSchema } from "./agent.js";
8
- import { LimitPolicySchema, RetryPolicySchema } from "./turn-break.js";
8
+ import { LimitPolicySchema, RetryPolicySchema, RoomPolicySchema } from "./turn-break.js";
9
9
  import { ZoneSchema } from "../time/zone.js";
10
10
  // Which prompt base the agent runs before this turn composes anything on top: Intentic's own (default), Claude Code's
11
11
  // preset, or the owner's text. Declared out here since both the daemon and the browser branch on it.
@@ -452,6 +452,11 @@ export const SandboxSettingsSchema = z.object({
452
452
  stopPolicy: RetryPolicySchema.default("wait").describe(
453
453
  "What happens to a turn that stopped short with nothing to repair — a hung runtime, a crashed harness. `wait` holds it for a press. `retry` re-runs the held turn on a short ladder, standing down after three tries that got nowhere rather than looping forever.",
454
454
  ),
455
+ // The one ending that defaults to going by itself: nothing ran, so sending it once there is room spends nothing twice,
456
+ // and it is what the person meant when they pressed Send.
457
+ memoryPolicy: RoomPolicySchema.default("resend").describe(
458
+ "What happens to a message the sandbox held because it was short of memory: nothing ran, so nothing was spent. `resend` sends it by itself once memory has stayed free for a while, one held conversation at a time. `wait` holds it until somebody presses Send anyway. The sandbox-wide default; any one conversation can say otherwise.",
459
+ ),
455
460
  limitMoveCarryUnder: z
456
461
  .number()
457
462
  .int()