t3code-cli 0.10.0 → 0.12.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 (328) hide show
  1. package/README.md +75 -11
  2. package/dist/application.js +2 -2
  3. package/dist/auth.js +1 -1
  4. package/dist/bin.js +86754 -2675
  5. package/dist/cli.js +15 -2
  6. package/dist/config.js +120 -2
  7. package/dist/connection.js +2 -12
  8. package/dist/index.js +1 -1
  9. package/dist/node.js +6 -0
  10. package/dist/orchestration.js +2 -2
  11. package/dist/rpc.js +2 -2
  12. package/dist/runtime.js +2 -2
  13. package/dist/shared.js +43850 -38040
  14. package/dist/src/application/actions.d.ts +25 -0
  15. package/dist/src/application/index.d.ts +3 -2
  16. package/dist/src/application/layer.d.ts +99 -842
  17. package/dist/src/application/model-selection.d.ts +17 -2
  18. package/dist/src/application/models.d.ts +1 -87
  19. package/dist/src/application/project-commands.d.ts +31 -2
  20. package/dist/src/application/projects.d.ts +15 -137
  21. package/dist/src/application/service.d.ts +147 -5
  22. package/dist/src/application/shell-sequence.d.ts +5 -4
  23. package/dist/src/application/terminals.d.ts +66 -0
  24. package/dist/src/application/thread-commands.d.ts +48 -1
  25. package/dist/src/application/thread-update.d.ts +8 -0
  26. package/dist/src/application/thread-wait.d.ts +4 -6
  27. package/dist/src/application/threads.d.ts +36 -14
  28. package/dist/src/auth/error.d.ts +2 -1
  29. package/dist/src/auth/index.d.ts +1 -1
  30. package/dist/src/auth/layer.d.ts +34 -6
  31. package/dist/src/auth/local-base-dir.d.ts +5 -2
  32. package/dist/src/auth/local-origin.d.ts +3 -3
  33. package/dist/src/auth/local-token.d.ts +3 -3
  34. package/dist/src/auth/service.d.ts +15 -3
  35. package/dist/src/auth/type.d.ts +40 -1
  36. package/dist/src/cli/env/flag.d.ts +2 -0
  37. package/dist/src/cli/env/index.d.ts +2 -0
  38. package/dist/src/cli/env/selection-layer.d.ts +3 -0
  39. package/dist/src/cli/flags.d.ts +5 -0
  40. package/dist/src/cli/format/index.d.ts +1 -0
  41. package/dist/src/cli/format/output.d.ts +12 -0
  42. package/dist/src/cli/index.d.ts +4 -0
  43. package/dist/src/cli/runtime/index.d.ts +1 -0
  44. package/dist/src/cli/runtime/service.d.ts +16 -0
  45. package/dist/src/{scope → cli/scope}/resolve.d.ts +5 -4
  46. package/dist/src/config/config.d.ts +49 -0
  47. package/dist/src/config/credential/cipher-node.d.ts +3 -0
  48. package/dist/src/config/credential/cipher-web.d.ts +3 -0
  49. package/dist/src/config/credential/cipher.d.ts +29 -0
  50. package/dist/src/config/credential/env.d.ts +3 -0
  51. package/dist/src/config/credential/error.d.ts +8 -0
  52. package/dist/src/config/credential/index.d.ts +6 -0
  53. package/dist/src/config/credential/service.d.ts +34 -0
  54. package/dist/src/config/env/env.d.ts +55 -0
  55. package/dist/src/config/env/index.d.ts +2 -0
  56. package/dist/src/{layout/base-dir.d.ts → config/env/layout.d.ts} +0 -1
  57. package/dist/src/config/environment-name/index.d.ts +1 -0
  58. package/dist/src/config/environment-name/name.d.ts +10 -0
  59. package/dist/src/config/error.d.ts +4 -11
  60. package/dist/src/config/index.d.ts +10 -5
  61. package/dist/src/config/keystore/error.d.ts +8 -0
  62. package/dist/src/config/keystore/file.d.ts +9 -0
  63. package/dist/src/config/keystore/index.d.ts +4 -0
  64. package/dist/src/config/keystore/keyring-node.d.ts +4 -0
  65. package/dist/src/config/keystore/service.d.ts +33 -0
  66. package/dist/src/config/paths/index.d.ts +1 -0
  67. package/dist/src/config/paths/paths.d.ts +6 -0
  68. package/dist/src/config/persist/file-mode.d.ts +4 -0
  69. package/dist/src/config/persist/migration.d.ts +68 -0
  70. package/dist/src/config/persist/persist.d.ts +40 -0
  71. package/dist/src/config/persist/schema.d.ts +68 -0
  72. package/dist/src/config/resolve/resolve.d.ts +40 -0
  73. package/dist/src/config/selection/index.d.ts +1 -0
  74. package/dist/src/config/selection/resolve.d.ts +4 -0
  75. package/dist/src/config/selection/service.d.ts +10 -0
  76. package/dist/src/config/types.d.ts +36 -0
  77. package/dist/src/config/url/error.d.ts +10 -0
  78. package/dist/src/config/url/index.d.ts +2 -0
  79. package/dist/src/connection/index.d.ts +0 -1
  80. package/dist/src/contracts/index.d.ts +1 -1
  81. package/dist/src/domain/error.d.ts +27 -1
  82. package/dist/src/domain/helpers.d.ts +8 -2
  83. package/dist/src/domain/model-config.d.ts +30 -1
  84. package/dist/src/domain/thread-activities.d.ts +1 -1
  85. package/dist/src/domain/thread-lifecycle.d.ts +3 -2
  86. package/dist/src/index.d.ts +1 -2
  87. package/dist/src/{connection/node.d.ts → node/connection.d.ts} +1 -1
  88. package/dist/src/node/index.d.ts +1 -0
  89. package/dist/src/orchestration/index.d.ts +1 -1
  90. package/dist/src/orchestration/layer.d.ts +120 -829
  91. package/dist/src/orchestration/service.d.ts +2 -1
  92. package/dist/src/rpc/error.d.ts +5 -3
  93. package/dist/src/rpc/index.d.ts +5 -1
  94. package/dist/src/rpc/layer.d.ts +1166 -40
  95. package/dist/src/rpc/operation.d.ts +6280 -0
  96. package/dist/src/rpc/ws-group.d.ts +372 -27
  97. package/dist/src/runtime/index.d.ts +1 -2
  98. package/dist/src/runtime/layer.d.ts +12 -8
  99. package/dist/src/t3tools/index.d.ts +1 -1
  100. package/dist/t3tools.js +2 -2
  101. package/package.json +27 -19
  102. package/src/application/actions.test.ts +328 -0
  103. package/src/application/actions.ts +475 -0
  104. package/src/application/index.ts +32 -2
  105. package/src/application/layer.ts +43 -5
  106. package/src/application/model-selection.ts +70 -4
  107. package/src/application/models.ts +14 -14
  108. package/src/application/project-commands.ts +38 -5
  109. package/src/application/projects.ts +49 -20
  110. package/src/application/service.ts +275 -78
  111. package/src/application/shell-sequence.ts +6 -8
  112. package/src/application/terminals.ts +208 -0
  113. package/src/application/thread-commands.test.ts +43 -0
  114. package/src/application/thread-commands.ts +82 -1
  115. package/src/application/thread-update.ts +72 -0
  116. package/src/application/thread-wait.ts +47 -48
  117. package/src/application/threads.test.ts +172 -0
  118. package/src/application/threads.ts +128 -45
  119. package/src/auth/error.ts +2 -1
  120. package/src/auth/index.ts +7 -0
  121. package/src/auth/layer.test-utils.ts +34 -0
  122. package/src/auth/layer.ts +116 -34
  123. package/src/auth/local-base-dir.ts +13 -6
  124. package/src/auth/local-origin.ts +10 -7
  125. package/src/auth/local-token.ts +28 -23
  126. package/src/auth/service.test.ts +200 -0
  127. package/src/auth/service.ts +27 -3
  128. package/src/auth/transport.ts +2 -2
  129. package/src/auth/type.ts +47 -1
  130. package/src/bin.ts +26 -6
  131. package/src/cli/action-format.ts +110 -0
  132. package/src/cli/action.ts +398 -0
  133. package/src/cli/app.ts +8 -0
  134. package/src/cli/auth.ts +76 -23
  135. package/src/cli/env/flag.ts +8 -0
  136. package/src/cli/env/index.ts +2 -0
  137. package/src/cli/env/selection-layer.test.ts +49 -0
  138. package/src/cli/env/selection-layer.ts +27 -0
  139. package/src/cli/env.ts +107 -0
  140. package/src/cli/error.ts +26 -3
  141. package/src/cli/extra-args.test.ts +32 -0
  142. package/src/cli/extra-args.ts +22 -0
  143. package/src/cli/flags.ts +26 -1
  144. package/src/cli/format/auth.ts +92 -0
  145. package/src/cli/format/human.ts +131 -0
  146. package/src/cli/format/index.ts +12 -0
  147. package/src/cli/format/model.ts +29 -0
  148. package/src/cli/format/output.ts +51 -0
  149. package/src/cli/format/project.ts +32 -0
  150. package/src/cli/format/terminal.ts +87 -0
  151. package/src/cli/format/thread.test.ts +34 -0
  152. package/src/cli/format/thread.ts +185 -0
  153. package/src/cli/index.ts +20 -0
  154. package/src/cli/input/layer.ts +20 -0
  155. package/src/cli/input/service.ts +1 -0
  156. package/src/cli/interaction/confirm.ts +64 -0
  157. package/src/cli/interaction/self-action.ts +36 -0
  158. package/src/cli/message-input.ts +1 -1
  159. package/src/cli/model.ts +9 -5
  160. package/src/cli/project.ts +15 -8
  161. package/src/cli/projects/delete.ts +51 -0
  162. package/src/cli/require.ts +9 -7
  163. package/src/cli/runtime/index.ts +1 -0
  164. package/src/cli/runtime/service.ts +28 -0
  165. package/src/{scope → cli/scope}/resolve.ts +11 -9
  166. package/src/cli/terminal/attach.ts +29 -0
  167. package/src/cli/terminal/create.ts +55 -0
  168. package/src/cli/terminal/destroy.ts +62 -0
  169. package/src/cli/terminal/encoding.test.ts +63 -0
  170. package/src/cli/terminal/encoding.ts +23 -0
  171. package/src/cli/terminal/error.ts +14 -0
  172. package/src/cli/terminal/io-node-layer.ts +82 -0
  173. package/src/cli/terminal/io-service.ts +25 -0
  174. package/src/cli/terminal/list.ts +36 -0
  175. package/src/cli/terminal/read.test-utils.ts +48 -0
  176. package/src/cli/terminal/read.test.ts +35 -0
  177. package/src/cli/terminal/read.ts +99 -0
  178. package/src/cli/terminal/scope.ts +35 -0
  179. package/src/cli/terminal/shared.ts +250 -0
  180. package/src/cli/terminal/stream.ts +61 -0
  181. package/src/cli/terminal/wait.test.ts +148 -0
  182. package/src/cli/terminal/wait.ts +223 -0
  183. package/src/cli/terminal/write.test.ts +34 -0
  184. package/src/cli/terminal/write.ts +133 -0
  185. package/src/cli/terminal.ts +26 -0
  186. package/src/cli/thread.ts +8 -0
  187. package/src/cli/threads/approve.ts +11 -7
  188. package/src/cli/threads/archive.ts +23 -25
  189. package/src/cli/threads/callback.ts +6 -4
  190. package/src/cli/threads/delete.ts +67 -0
  191. package/src/cli/threads/interrupt.ts +57 -0
  192. package/src/cli/threads/list.test.ts +71 -0
  193. package/src/cli/threads/list.ts +25 -13
  194. package/src/cli/threads/messages.ts +11 -7
  195. package/src/cli/threads/respond.ts +11 -7
  196. package/src/cli/threads/send.ts +39 -9
  197. package/src/cli/threads/show.ts +11 -7
  198. package/src/cli/threads/start.ts +18 -13
  199. package/src/cli/threads/unarchive.ts +48 -0
  200. package/src/cli/threads/update.ts +155 -0
  201. package/src/cli/threads/wait.ts +11 -7
  202. package/src/cli/wait-events.ts +1 -1
  203. package/src/config/config.ts +260 -0
  204. package/src/config/credential/cipher-node.ts +40 -0
  205. package/src/config/credential/cipher-web.ts +82 -0
  206. package/src/config/credential/cipher.ts +39 -0
  207. package/src/config/credential/env.ts +13 -0
  208. package/src/config/credential/error.ts +9 -0
  209. package/src/config/credential/index.ts +6 -0
  210. package/src/config/credential/service.test-utils.ts +25 -0
  211. package/src/config/credential/service.test.ts +116 -0
  212. package/src/config/credential/service.ts +205 -0
  213. package/src/config/env/env.test-utils.ts +14 -0
  214. package/src/config/env/env.ts +81 -0
  215. package/src/config/env/index.ts +2 -0
  216. package/src/{layout/base-dir.ts → config/env/layout.ts} +0 -9
  217. package/src/config/environment-name/index.ts +7 -0
  218. package/src/config/environment-name/name.test.ts +66 -0
  219. package/src/config/environment-name/name.ts +49 -0
  220. package/src/config/error.ts +6 -8
  221. package/src/config/index.ts +16 -5
  222. package/src/config/keystore/error.ts +9 -0
  223. package/src/config/keystore/file.ts +96 -0
  224. package/src/config/keystore/index.ts +4 -0
  225. package/src/config/keystore/keyring-node.test.ts +12 -0
  226. package/src/config/keystore/keyring-node.ts +100 -0
  227. package/src/config/keystore/service.test-utils.ts +15 -0
  228. package/src/config/keystore/service.test.ts +18 -0
  229. package/src/config/keystore/service.ts +29 -0
  230. package/src/config/layer.test-utils.ts +45 -0
  231. package/src/config/layer.test.ts +209 -0
  232. package/src/config/paths/index.ts +1 -0
  233. package/src/config/paths/paths.ts +36 -0
  234. package/src/config/persist/file-mode.ts +21 -0
  235. package/src/config/persist/migration.test.ts +71 -0
  236. package/src/config/persist/migration.ts +82 -0
  237. package/src/config/persist/persist.test.ts +113 -0
  238. package/src/config/persist/persist.ts +65 -0
  239. package/src/config/persist/schema.ts +37 -0
  240. package/src/config/platform.test-utils.ts +20 -0
  241. package/src/config/resolve/resolve.test-utils.ts +20 -0
  242. package/src/config/resolve/resolve.test.ts +137 -0
  243. package/src/config/resolve/resolve.ts +104 -0
  244. package/src/config/selection/index.ts +1 -0
  245. package/src/config/selection/resolve.ts +14 -0
  246. package/src/config/selection/service.ts +29 -0
  247. package/src/config/temp-home.test-utils.ts +7 -0
  248. package/src/config/types.ts +49 -0
  249. package/src/config/url/error.ts +8 -0
  250. package/src/config/url/index.ts +7 -0
  251. package/src/config/url/url.test.ts +31 -0
  252. package/src/connection/index.ts +0 -1
  253. package/src/contracts/index.ts +1 -1
  254. package/src/domain/error.ts +39 -1
  255. package/src/domain/helpers.test.ts +1 -1
  256. package/src/domain/helpers.ts +1 -1
  257. package/src/domain/model-config.ts +5 -1
  258. package/src/domain/thread-activities.test.ts +1 -1
  259. package/src/domain/thread-activities.ts +1 -1
  260. package/src/domain/thread-lifecycle.test.ts +1 -1
  261. package/src/domain/thread-lifecycle.ts +15 -1
  262. package/src/effect.test-utils.ts +25 -0
  263. package/src/index.ts +1 -1
  264. package/src/{connection/node.ts → node/connection.ts} +1 -1
  265. package/src/node/index.ts +1 -0
  266. package/src/orchestration/index.ts +1 -1
  267. package/src/orchestration/layer.ts +34 -86
  268. package/src/orchestration/service.ts +5 -1
  269. package/src/rpc/error.ts +12 -2
  270. package/src/rpc/index.ts +5 -1
  271. package/src/rpc/layer.ts +1 -1
  272. package/src/rpc/operation.ts +83 -0
  273. package/src/rpc/ws-group.ts +25 -1
  274. package/src/runtime/index.ts +2 -1
  275. package/src/runtime/layer.test-utils.ts +32 -0
  276. package/src/runtime/layer.test.ts +66 -0
  277. package/src/runtime/layer.ts +22 -11
  278. package/src/t3tools/index.ts +1 -1
  279. package/src/types/marked-terminal.d.ts +11 -0
  280. package/dist/layout.js +0 -2
  281. package/dist/scope.js +0 -2
  282. package/dist/src/cli/output-format.d.ts +0 -9
  283. package/dist/src/config/layer.d.ts +0 -22
  284. package/dist/src/config/service.d.ts +0 -22
  285. package/dist/src/environment/layer.d.ts +0 -3
  286. package/dist/src/environment/service.d.ts +0 -12
  287. package/dist/src/layout/index.d.ts +0 -1
  288. package/dist/upstream-t3code/packages/contracts/src/auth.d.ts +0 -441
  289. package/dist/upstream-t3code/packages/contracts/src/baseSchemas.d.ts +0 -38
  290. package/dist/upstream-t3code/packages/contracts/src/desktopBootstrap.d.ts +0 -14
  291. package/dist/upstream-t3code/packages/contracts/src/editor.d.ts +0 -124
  292. package/dist/upstream-t3code/packages/contracts/src/environment.d.ts +0 -64
  293. package/dist/upstream-t3code/packages/contracts/src/environmentHttp.d.ts +0 -785
  294. package/dist/upstream-t3code/packages/contracts/src/filesystem.d.ts +0 -26
  295. package/dist/upstream-t3code/packages/contracts/src/git.d.ts +0 -500
  296. package/dist/upstream-t3code/packages/contracts/src/index.d.ts +0 -25
  297. package/dist/upstream-t3code/packages/contracts/src/ipc.d.ts +0 -496
  298. package/dist/upstream-t3code/packages/contracts/src/keybindings.d.ts +0 -133
  299. package/dist/upstream-t3code/packages/contracts/src/model.d.ts +0 -112
  300. package/dist/upstream-t3code/packages/contracts/src/orchestration.d.ts +0 -7338
  301. package/dist/upstream-t3code/packages/contracts/src/project.d.ts +0 -45
  302. package/dist/upstream-t3code/packages/contracts/src/provider.d.ts +0 -130
  303. package/dist/upstream-t3code/packages/contracts/src/providerInstance.d.ts +0 -99
  304. package/dist/upstream-t3code/packages/contracts/src/providerRuntime.d.ts +0 -4450
  305. package/dist/upstream-t3code/packages/contracts/src/relay.d.ts +0 -1262
  306. package/dist/upstream-t3code/packages/contracts/src/relayClient.d.ts +0 -48
  307. package/dist/upstream-t3code/packages/contracts/src/remoteAccess.d.ts +0 -45
  308. package/dist/upstream-t3code/packages/contracts/src/review.d.ts +0 -37
  309. package/dist/upstream-t3code/packages/contracts/src/rpc.d.ts +0 -8710
  310. package/dist/upstream-t3code/packages/contracts/src/server.d.ts +0 -2336
  311. package/dist/upstream-t3code/packages/contracts/src/settings.d.ts +0 -292
  312. package/dist/upstream-t3code/packages/contracts/src/sourceControl.d.ts +0 -177
  313. package/dist/upstream-t3code/packages/contracts/src/terminal.d.ts +0 -333
  314. package/dist/upstream-t3code/packages/contracts/src/vcs.d.ts +0 -148
  315. package/src/cli/auth-format.ts +0 -45
  316. package/src/cli/model-format.ts +0 -18
  317. package/src/cli/output-format.ts +0 -41
  318. package/src/cli/project-format.ts +0 -11
  319. package/src/cli/thread-format.ts +0 -121
  320. package/src/config/layer.ts +0 -105
  321. package/src/config/service.ts +0 -26
  322. package/src/environment/layer.ts +0 -12
  323. package/src/environment/service.ts +0 -13
  324. package/src/layout/index.ts +0 -1
  325. /package/dist/src/{scope → cli/scope}/index.d.ts +0 -0
  326. /package/dist/src/config/{url.d.ts → url/url.d.ts} +0 -0
  327. /package/src/{scope → cli/scope}/index.ts +0 -0
  328. /package/src/config/{url.ts → url/url.ts} +0 -0
@@ -9,6 +9,223 @@ import { RpcError } from "./error.ts";
9
9
  import { T3Rpc } from "./service.ts";
10
10
  export declare const makeT3RpcLayer: () => Effect.Effect<{
11
11
  getClient: Effect.Effect<{
12
+ readonly "terminal.open": <const AsQueue extends boolean = false, const Discard = false>(input: {
13
+ readonly cwd: string;
14
+ readonly terminalId: string;
15
+ readonly threadId: string;
16
+ readonly worktreePath?: string | null | undefined;
17
+ readonly cols?: number | undefined;
18
+ readonly rows?: number | undefined;
19
+ readonly env?: {
20
+ readonly [x: string]: string;
21
+ } | undefined;
22
+ readonly projectId?: (string & import("effect/Brand").Brand<"ProjectId">) | undefined;
23
+ }, options?: {
24
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
25
+ readonly context?: Context.Context<never> | undefined;
26
+ readonly discard?: Discard | undefined;
27
+ } | undefined) => Effect.Effect<Discard extends true ? void : {
28
+ readonly threadId: string;
29
+ readonly terminalId: string;
30
+ readonly cwd: string;
31
+ readonly worktreePath: string | null;
32
+ readonly status: "error" | "starting" | "running" | "exited";
33
+ readonly pid: number | null;
34
+ readonly history: string;
35
+ readonly exitCode: number | null;
36
+ readonly exitSignal: number | null;
37
+ readonly label: string;
38
+ readonly updatedAt: string;
39
+ readonly sequence?: number | undefined;
40
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
41
+ readonly "terminal.attach": <const AsQueue extends boolean = false, const Discard = false>(input: {
42
+ readonly terminalId: string;
43
+ readonly threadId: string;
44
+ readonly cwd?: string | undefined;
45
+ readonly worktreePath?: string | null | undefined;
46
+ readonly cols?: number | undefined;
47
+ readonly rows?: number | undefined;
48
+ readonly env?: {
49
+ readonly [x: string]: string;
50
+ } | undefined;
51
+ readonly restartIfNotRunning?: boolean | undefined;
52
+ readonly projectId?: (string & import("effect/Brand").Brand<"ProjectId">) | undefined;
53
+ }, options?: {
54
+ readonly asQueue?: AsQueue | undefined;
55
+ readonly streamBufferSize?: number | undefined;
56
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
57
+ readonly context?: Context.Context<never> | undefined;
58
+ } | undefined) => AsQueue extends true ? Effect.Effect<import("effect/Queue").Dequeue<{
59
+ readonly type: "output";
60
+ readonly data: string;
61
+ readonly threadId: string;
62
+ readonly terminalId: string;
63
+ readonly sequence?: number | undefined;
64
+ } | {
65
+ readonly type: "exited";
66
+ readonly exitCode: number | null;
67
+ readonly exitSignal: number | null;
68
+ readonly threadId: string;
69
+ readonly terminalId: string;
70
+ readonly sequence?: number | undefined;
71
+ } | {
72
+ readonly type: "closed";
73
+ readonly threadId: string;
74
+ readonly terminalId: string;
75
+ readonly sequence?: number | undefined;
76
+ } | {
77
+ readonly type: "error";
78
+ readonly message: string;
79
+ readonly threadId: string;
80
+ readonly terminalId: string;
81
+ readonly sequence?: number | undefined;
82
+ } | {
83
+ readonly type: "cleared";
84
+ readonly threadId: string;
85
+ readonly terminalId: string;
86
+ readonly sequence?: number | undefined;
87
+ } | {
88
+ readonly type: "restarted";
89
+ readonly snapshot: {
90
+ readonly threadId: string;
91
+ readonly terminalId: string;
92
+ readonly cwd: string;
93
+ readonly worktreePath: string | null;
94
+ readonly status: "error" | "starting" | "running" | "exited";
95
+ readonly pid: number | null;
96
+ readonly history: string;
97
+ readonly exitCode: number | null;
98
+ readonly exitSignal: number | null;
99
+ readonly label: string;
100
+ readonly updatedAt: string;
101
+ readonly sequence?: number | undefined;
102
+ };
103
+ readonly threadId: string;
104
+ readonly terminalId: string;
105
+ readonly sequence?: number | undefined;
106
+ } | {
107
+ readonly type: "activity";
108
+ readonly hasRunningSubprocess: boolean;
109
+ readonly label: string;
110
+ readonly threadId: string;
111
+ readonly terminalId: string;
112
+ readonly sequence?: number | undefined;
113
+ } | {
114
+ readonly type: "snapshot";
115
+ readonly snapshot: {
116
+ readonly threadId: string;
117
+ readonly terminalId: string;
118
+ readonly cwd: string;
119
+ readonly worktreePath: string | null;
120
+ readonly status: "error" | "starting" | "running" | "exited";
121
+ readonly pid: number | null;
122
+ readonly history: string;
123
+ readonly exitCode: number | null;
124
+ readonly exitSignal: number | null;
125
+ readonly label: string;
126
+ readonly updatedAt: string;
127
+ readonly sequence?: number | undefined;
128
+ };
129
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
130
+ readonly type: "output";
131
+ readonly data: string;
132
+ readonly threadId: string;
133
+ readonly terminalId: string;
134
+ readonly sequence?: number | undefined;
135
+ } | {
136
+ readonly type: "exited";
137
+ readonly exitCode: number | null;
138
+ readonly exitSignal: number | null;
139
+ readonly threadId: string;
140
+ readonly terminalId: string;
141
+ readonly sequence?: number | undefined;
142
+ } | {
143
+ readonly type: "closed";
144
+ readonly threadId: string;
145
+ readonly terminalId: string;
146
+ readonly sequence?: number | undefined;
147
+ } | {
148
+ readonly type: "error";
149
+ readonly message: string;
150
+ readonly threadId: string;
151
+ readonly terminalId: string;
152
+ readonly sequence?: number | undefined;
153
+ } | {
154
+ readonly type: "cleared";
155
+ readonly threadId: string;
156
+ readonly terminalId: string;
157
+ readonly sequence?: number | undefined;
158
+ } | {
159
+ readonly type: "restarted";
160
+ readonly snapshot: {
161
+ readonly threadId: string;
162
+ readonly terminalId: string;
163
+ readonly cwd: string;
164
+ readonly worktreePath: string | null;
165
+ readonly status: "error" | "starting" | "running" | "exited";
166
+ readonly pid: number | null;
167
+ readonly history: string;
168
+ readonly exitCode: number | null;
169
+ readonly exitSignal: number | null;
170
+ readonly label: string;
171
+ readonly updatedAt: string;
172
+ readonly sequence?: number | undefined;
173
+ };
174
+ readonly threadId: string;
175
+ readonly terminalId: string;
176
+ readonly sequence?: number | undefined;
177
+ } | {
178
+ readonly type: "activity";
179
+ readonly hasRunningSubprocess: boolean;
180
+ readonly label: string;
181
+ readonly threadId: string;
182
+ readonly terminalId: string;
183
+ readonly sequence?: number | undefined;
184
+ } | {
185
+ readonly type: "snapshot";
186
+ readonly snapshot: {
187
+ readonly threadId: string;
188
+ readonly terminalId: string;
189
+ readonly cwd: string;
190
+ readonly worktreePath: string | null;
191
+ readonly status: "error" | "starting" | "running" | "exited";
192
+ readonly pid: number | null;
193
+ readonly history: string;
194
+ readonly exitCode: number | null;
195
+ readonly exitSignal: number | null;
196
+ readonly label: string;
197
+ readonly updatedAt: string;
198
+ readonly sequence?: number | undefined;
199
+ };
200
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
201
+ readonly "terminal.write": <const AsQueue extends boolean = false, const Discard = false>(input: {
202
+ readonly data: string;
203
+ readonly terminalId: string;
204
+ readonly threadId: string;
205
+ }, options?: {
206
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
207
+ readonly context?: Context.Context<never> | undefined;
208
+ readonly discard?: Discard | undefined;
209
+ } | undefined) => Effect.Effect<Discard extends true ? void : void, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
210
+ readonly "terminal.resize": <const AsQueue extends boolean = false, const Discard = false>(input: {
211
+ readonly cols: number;
212
+ readonly rows: number;
213
+ readonly terminalId: string;
214
+ readonly threadId: string;
215
+ }, options?: {
216
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
217
+ readonly context?: Context.Context<never> | undefined;
218
+ readonly discard?: Discard | undefined;
219
+ } | undefined) => Effect.Effect<Discard extends true ? void : void, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
220
+ readonly "terminal.close": <const AsQueue extends boolean = false, const Discard = false>(input: {
221
+ readonly threadId: string;
222
+ readonly terminalId?: string | undefined;
223
+ readonly deleteHistory?: boolean | undefined;
224
+ }, options?: {
225
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
226
+ readonly context?: Context.Context<never> | undefined;
227
+ readonly discard?: Discard | undefined;
228
+ } | undefined) => Effect.Effect<Discard extends true ? void : void, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
12
229
  readonly "orchestration.dispatchCommand": <const AsQueue extends boolean = false, const Discard = false>(input: {
13
230
  readonly type: "project.create";
14
231
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
@@ -45,6 +262,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
45
262
  readonly command: string;
46
263
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
47
264
  readonly runOnWorktreeCreate: boolean;
265
+ readonly previewUrl?: string | undefined;
266
+ readonly autoOpenPreview?: boolean | undefined;
48
267
  }[] | undefined;
49
268
  } | {
50
269
  readonly type: "project.delete";
@@ -219,7 +438,107 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
219
438
  readonly discard?: Discard | undefined;
220
439
  } | undefined) => Effect.Effect<Discard extends true ? void : {
221
440
  readonly sequence: number;
222
- }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationDispatchCommandError), never>;
441
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationDispatchCommandError), never>;
442
+ readonly "orchestration.getArchivedShellSnapshot": <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
443
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
444
+ readonly context?: Context.Context<never> | undefined;
445
+ readonly discard?: Discard | undefined;
446
+ } | undefined) => Effect.Effect<Discard extends true ? void : {
447
+ readonly snapshotSequence: number;
448
+ readonly projects: readonly {
449
+ readonly id: string & import("effect/Brand").Brand<"ProjectId">;
450
+ readonly title: string;
451
+ readonly workspaceRoot: string;
452
+ readonly defaultModelSelection: {
453
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
454
+ readonly model: string;
455
+ readonly options?: readonly {
456
+ readonly id: string;
457
+ readonly value: string | boolean;
458
+ }[];
459
+ } | null;
460
+ readonly scripts: readonly {
461
+ readonly id: string;
462
+ readonly name: string;
463
+ readonly command: string;
464
+ readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
465
+ readonly runOnWorktreeCreate: boolean;
466
+ readonly previewUrl?: string | undefined;
467
+ readonly autoOpenPreview?: boolean | undefined;
468
+ }[];
469
+ readonly createdAt: string;
470
+ readonly updatedAt: string;
471
+ readonly repositoryIdentity?: {
472
+ readonly canonicalKey: string;
473
+ readonly locator: {
474
+ readonly source: "git-remote";
475
+ readonly remoteName: string;
476
+ readonly remoteUrl: string;
477
+ };
478
+ readonly rootPath?: string;
479
+ readonly displayName?: string;
480
+ readonly provider?: string;
481
+ readonly owner?: string;
482
+ readonly name?: string;
483
+ } | null | undefined;
484
+ }[];
485
+ readonly threads: readonly {
486
+ readonly id: string & import("effect/Brand").Brand<"ThreadId">;
487
+ readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
488
+ readonly title: string;
489
+ readonly modelSelection: {
490
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
491
+ readonly model: string;
492
+ readonly options?: readonly {
493
+ readonly id: string;
494
+ readonly value: string | boolean;
495
+ }[];
496
+ };
497
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
498
+ readonly interactionMode: "default" | "plan";
499
+ readonly branch: string | null;
500
+ readonly worktreePath: string | null;
501
+ readonly latestTurn: {
502
+ readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
503
+ readonly state: "error" | "running" | "interrupted" | "completed";
504
+ readonly requestedAt: string;
505
+ readonly startedAt: string | null;
506
+ readonly completedAt: string | null;
507
+ readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
508
+ readonly sourceProposedPlan?: {
509
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
510
+ readonly planId: string;
511
+ } | undefined;
512
+ } | null;
513
+ readonly createdAt: string;
514
+ readonly updatedAt: string;
515
+ readonly archivedAt: string | null;
516
+ readonly session: {
517
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
518
+ readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
519
+ readonly providerName: string | null;
520
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
521
+ readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
522
+ readonly lastError: string | null;
523
+ readonly updatedAt: string;
524
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
525
+ } | null;
526
+ readonly goal: {
527
+ readonly objective: string;
528
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
529
+ readonly tokensUsed: number;
530
+ readonly tokenBudget: number | null;
531
+ readonly timeUsedSeconds: number;
532
+ readonly createdAt: string;
533
+ readonly updatedAt: string;
534
+ } | null;
535
+ readonly latestUserMessageAt: string | null;
536
+ readonly hasPendingApprovals: boolean;
537
+ readonly hasPendingUserInput: boolean;
538
+ readonly hasActionableProposedPlan: boolean;
539
+ }[];
540
+ readonly updatedAt: string;
541
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError), never>;
223
542
  readonly "orchestration.subscribeShell": <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
224
543
  readonly asQueue?: AsQueue | undefined;
225
544
  readonly streamBufferSize?: number | undefined;
@@ -246,6 +565,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
246
565
  readonly command: string;
247
566
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
248
567
  readonly runOnWorktreeCreate: boolean;
568
+ readonly previewUrl?: string | undefined;
569
+ readonly autoOpenPreview?: boolean | undefined;
249
570
  }[];
250
571
  readonly createdAt: string;
251
572
  readonly updatedAt: string;
@@ -313,7 +634,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
313
634
  } | null;
314
635
  readonly goal: {
315
636
  readonly objective: string;
316
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
637
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
317
638
  readonly tokensUsed: number;
318
639
  readonly tokenBudget: number | null;
319
640
  readonly timeUsedSeconds: number;
@@ -351,6 +672,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
351
672
  readonly command: string;
352
673
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
353
674
  readonly runOnWorktreeCreate: boolean;
675
+ readonly previewUrl?: string | undefined;
676
+ readonly autoOpenPreview?: boolean | undefined;
354
677
  }[];
355
678
  readonly createdAt: string;
356
679
  readonly updatedAt: string;
@@ -411,7 +734,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
411
734
  } | null;
412
735
  readonly goal: {
413
736
  readonly objective: string;
414
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
737
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
415
738
  readonly tokensUsed: number;
416
739
  readonly tokenBudget: number | null;
417
740
  readonly timeUsedSeconds: number;
@@ -425,7 +748,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
425
748
  }[];
426
749
  readonly updatedAt: string;
427
750
  };
428
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
751
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
429
752
  readonly kind: "project-upserted";
430
753
  readonly sequence: number;
431
754
  readonly project: {
@@ -446,6 +769,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
446
769
  readonly command: string;
447
770
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
448
771
  readonly runOnWorktreeCreate: boolean;
772
+ readonly previewUrl?: string | undefined;
773
+ readonly autoOpenPreview?: boolean | undefined;
449
774
  }[];
450
775
  readonly createdAt: string;
451
776
  readonly updatedAt: string;
@@ -513,7 +838,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
513
838
  } | null;
514
839
  readonly goal: {
515
840
  readonly objective: string;
516
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
841
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
517
842
  readonly tokensUsed: number;
518
843
  readonly tokenBudget: number | null;
519
844
  readonly timeUsedSeconds: number;
@@ -551,6 +876,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
551
876
  readonly command: string;
552
877
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
553
878
  readonly runOnWorktreeCreate: boolean;
879
+ readonly previewUrl?: string | undefined;
880
+ readonly autoOpenPreview?: boolean | undefined;
554
881
  }[];
555
882
  readonly createdAt: string;
556
883
  readonly updatedAt: string;
@@ -611,7 +938,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
611
938
  } | null;
612
939
  readonly goal: {
613
940
  readonly objective: string;
614
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
941
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
615
942
  readonly tokensUsed: number;
616
943
  readonly tokenBudget: number | null;
617
944
  readonly timeUsedSeconds: number;
@@ -625,7 +952,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
625
952
  }[];
626
953
  readonly updatedAt: string;
627
954
  };
628
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
955
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
629
956
  readonly "orchestration.subscribeThread": <const AsQueue extends boolean = false, const Discard = false>(input: {
630
957
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
631
958
  }, options?: {
@@ -671,7 +998,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
671
998
  readonly deletedAt: string | null;
672
999
  readonly goal: {
673
1000
  readonly objective: string;
674
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
1001
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
675
1002
  readonly tokensUsed: number;
676
1003
  readonly tokenBudget: number | null;
677
1004
  readonly timeUsedSeconds: number;
@@ -761,6 +1088,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
761
1088
  readonly command: string;
762
1089
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
763
1090
  readonly runOnWorktreeCreate: boolean;
1091
+ readonly previewUrl?: string | undefined;
1092
+ readonly autoOpenPreview?: boolean | undefined;
764
1093
  }[];
765
1094
  readonly createdAt: string;
766
1095
  readonly updatedAt: string;
@@ -827,6 +1156,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
827
1156
  readonly command: string;
828
1157
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
829
1158
  readonly runOnWorktreeCreate: boolean;
1159
+ readonly previewUrl?: string | undefined;
1160
+ readonly autoOpenPreview?: boolean | undefined;
830
1161
  }[] | undefined;
831
1162
  };
832
1163
  readonly sequence: number;
@@ -1312,7 +1643,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
1312
1643
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1313
1644
  readonly goal: {
1314
1645
  readonly objective: string;
1315
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
1646
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
1316
1647
  readonly tokensUsed: number;
1317
1648
  readonly tokenBudget: number | null;
1318
1649
  readonly timeUsedSeconds: number;
@@ -1447,7 +1778,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
1447
1778
  readonly ingestedAt?: string | undefined;
1448
1779
  };
1449
1780
  };
1450
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
1781
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
1451
1782
  readonly kind: "snapshot";
1452
1783
  readonly snapshot: {
1453
1784
  readonly snapshotSequence: number;
@@ -1485,7 +1816,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
1485
1816
  readonly deletedAt: string | null;
1486
1817
  readonly goal: {
1487
1818
  readonly objective: string;
1488
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
1819
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
1489
1820
  readonly tokensUsed: number;
1490
1821
  readonly tokenBudget: number | null;
1491
1822
  readonly timeUsedSeconds: number;
@@ -1575,6 +1906,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
1575
1906
  readonly command: string;
1576
1907
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
1577
1908
  readonly runOnWorktreeCreate: boolean;
1909
+ readonly previewUrl?: string | undefined;
1910
+ readonly autoOpenPreview?: boolean | undefined;
1578
1911
  }[];
1579
1912
  readonly createdAt: string;
1580
1913
  readonly updatedAt: string;
@@ -1641,6 +1974,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
1641
1974
  readonly command: string;
1642
1975
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
1643
1976
  readonly runOnWorktreeCreate: boolean;
1977
+ readonly previewUrl?: string | undefined;
1978
+ readonly autoOpenPreview?: boolean | undefined;
1644
1979
  }[] | undefined;
1645
1980
  };
1646
1981
  readonly sequence: number;
@@ -2126,7 +2461,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2126
2461
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
2127
2462
  readonly goal: {
2128
2463
  readonly objective: string;
2129
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
2464
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
2130
2465
  readonly tokensUsed: number;
2131
2466
  readonly tokenBudget: number | null;
2132
2467
  readonly timeUsedSeconds: number;
@@ -2261,7 +2596,235 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2261
2596
  readonly ingestedAt?: string | undefined;
2262
2597
  };
2263
2598
  };
2264
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
2599
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
2600
+ readonly subscribeTerminalEvents: <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
2601
+ readonly asQueue?: AsQueue | undefined;
2602
+ readonly streamBufferSize?: number | undefined;
2603
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
2604
+ readonly context?: Context.Context<never> | undefined;
2605
+ } | undefined) => AsQueue extends true ? Effect.Effect<import("effect/Queue").Dequeue<{
2606
+ readonly type: "started";
2607
+ readonly snapshot: {
2608
+ readonly threadId: string;
2609
+ readonly terminalId: string;
2610
+ readonly cwd: string;
2611
+ readonly worktreePath: string | null;
2612
+ readonly status: "error" | "starting" | "running" | "exited";
2613
+ readonly pid: number | null;
2614
+ readonly history: string;
2615
+ readonly exitCode: number | null;
2616
+ readonly exitSignal: number | null;
2617
+ readonly label: string;
2618
+ readonly updatedAt: string;
2619
+ readonly sequence?: number | undefined;
2620
+ };
2621
+ readonly threadId: string;
2622
+ readonly terminalId: string;
2623
+ readonly sequence?: number | undefined;
2624
+ } | {
2625
+ readonly type: "output";
2626
+ readonly data: string;
2627
+ readonly threadId: string;
2628
+ readonly terminalId: string;
2629
+ readonly sequence?: number | undefined;
2630
+ } | {
2631
+ readonly type: "exited";
2632
+ readonly exitCode: number | null;
2633
+ readonly exitSignal: number | null;
2634
+ readonly threadId: string;
2635
+ readonly terminalId: string;
2636
+ readonly sequence?: number | undefined;
2637
+ } | {
2638
+ readonly type: "closed";
2639
+ readonly threadId: string;
2640
+ readonly terminalId: string;
2641
+ readonly sequence?: number | undefined;
2642
+ } | {
2643
+ readonly type: "error";
2644
+ readonly message: string;
2645
+ readonly threadId: string;
2646
+ readonly terminalId: string;
2647
+ readonly sequence?: number | undefined;
2648
+ } | {
2649
+ readonly type: "cleared";
2650
+ readonly threadId: string;
2651
+ readonly terminalId: string;
2652
+ readonly sequence?: number | undefined;
2653
+ } | {
2654
+ readonly type: "restarted";
2655
+ readonly snapshot: {
2656
+ readonly threadId: string;
2657
+ readonly terminalId: string;
2658
+ readonly cwd: string;
2659
+ readonly worktreePath: string | null;
2660
+ readonly status: "error" | "starting" | "running" | "exited";
2661
+ readonly pid: number | null;
2662
+ readonly history: string;
2663
+ readonly exitCode: number | null;
2664
+ readonly exitSignal: number | null;
2665
+ readonly label: string;
2666
+ readonly updatedAt: string;
2667
+ readonly sequence?: number | undefined;
2668
+ };
2669
+ readonly threadId: string;
2670
+ readonly terminalId: string;
2671
+ readonly sequence?: number | undefined;
2672
+ } | {
2673
+ readonly type: "activity";
2674
+ readonly hasRunningSubprocess: boolean;
2675
+ readonly label: string;
2676
+ readonly threadId: string;
2677
+ readonly terminalId: string;
2678
+ readonly sequence?: number | undefined;
2679
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
2680
+ readonly type: "started";
2681
+ readonly snapshot: {
2682
+ readonly threadId: string;
2683
+ readonly terminalId: string;
2684
+ readonly cwd: string;
2685
+ readonly worktreePath: string | null;
2686
+ readonly status: "error" | "starting" | "running" | "exited";
2687
+ readonly pid: number | null;
2688
+ readonly history: string;
2689
+ readonly exitCode: number | null;
2690
+ readonly exitSignal: number | null;
2691
+ readonly label: string;
2692
+ readonly updatedAt: string;
2693
+ readonly sequence?: number | undefined;
2694
+ };
2695
+ readonly threadId: string;
2696
+ readonly terminalId: string;
2697
+ readonly sequence?: number | undefined;
2698
+ } | {
2699
+ readonly type: "output";
2700
+ readonly data: string;
2701
+ readonly threadId: string;
2702
+ readonly terminalId: string;
2703
+ readonly sequence?: number | undefined;
2704
+ } | {
2705
+ readonly type: "exited";
2706
+ readonly exitCode: number | null;
2707
+ readonly exitSignal: number | null;
2708
+ readonly threadId: string;
2709
+ readonly terminalId: string;
2710
+ readonly sequence?: number | undefined;
2711
+ } | {
2712
+ readonly type: "closed";
2713
+ readonly threadId: string;
2714
+ readonly terminalId: string;
2715
+ readonly sequence?: number | undefined;
2716
+ } | {
2717
+ readonly type: "error";
2718
+ readonly message: string;
2719
+ readonly threadId: string;
2720
+ readonly terminalId: string;
2721
+ readonly sequence?: number | undefined;
2722
+ } | {
2723
+ readonly type: "cleared";
2724
+ readonly threadId: string;
2725
+ readonly terminalId: string;
2726
+ readonly sequence?: number | undefined;
2727
+ } | {
2728
+ readonly type: "restarted";
2729
+ readonly snapshot: {
2730
+ readonly threadId: string;
2731
+ readonly terminalId: string;
2732
+ readonly cwd: string;
2733
+ readonly worktreePath: string | null;
2734
+ readonly status: "error" | "starting" | "running" | "exited";
2735
+ readonly pid: number | null;
2736
+ readonly history: string;
2737
+ readonly exitCode: number | null;
2738
+ readonly exitSignal: number | null;
2739
+ readonly label: string;
2740
+ readonly updatedAt: string;
2741
+ readonly sequence?: number | undefined;
2742
+ };
2743
+ readonly threadId: string;
2744
+ readonly terminalId: string;
2745
+ readonly sequence?: number | undefined;
2746
+ } | {
2747
+ readonly type: "activity";
2748
+ readonly hasRunningSubprocess: boolean;
2749
+ readonly label: string;
2750
+ readonly threadId: string;
2751
+ readonly terminalId: string;
2752
+ readonly sequence?: number | undefined;
2753
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
2754
+ readonly subscribeTerminalMetadata: <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
2755
+ readonly asQueue?: AsQueue | undefined;
2756
+ readonly streamBufferSize?: number | undefined;
2757
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
2758
+ readonly context?: Context.Context<never> | undefined;
2759
+ } | undefined) => AsQueue extends true ? Effect.Effect<import("effect/Queue").Dequeue<{
2760
+ readonly type: "snapshot";
2761
+ readonly terminals: readonly {
2762
+ readonly threadId: string;
2763
+ readonly terminalId: string;
2764
+ readonly cwd: string;
2765
+ readonly worktreePath: string | null;
2766
+ readonly status: "error" | "starting" | "running" | "exited";
2767
+ readonly pid: number | null;
2768
+ readonly exitCode: number | null;
2769
+ readonly exitSignal: number | null;
2770
+ readonly hasRunningSubprocess: boolean;
2771
+ readonly label: string;
2772
+ readonly updatedAt: string;
2773
+ }[];
2774
+ } | {
2775
+ readonly type: "upsert";
2776
+ readonly terminal: {
2777
+ readonly threadId: string;
2778
+ readonly terminalId: string;
2779
+ readonly cwd: string;
2780
+ readonly worktreePath: string | null;
2781
+ readonly status: "error" | "starting" | "running" | "exited";
2782
+ readonly pid: number | null;
2783
+ readonly exitCode: number | null;
2784
+ readonly exitSignal: number | null;
2785
+ readonly hasRunningSubprocess: boolean;
2786
+ readonly label: string;
2787
+ readonly updatedAt: string;
2788
+ };
2789
+ } | {
2790
+ readonly type: "remove";
2791
+ readonly threadId: string;
2792
+ readonly terminalId: string;
2793
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
2794
+ readonly type: "snapshot";
2795
+ readonly terminals: readonly {
2796
+ readonly threadId: string;
2797
+ readonly terminalId: string;
2798
+ readonly cwd: string;
2799
+ readonly worktreePath: string | null;
2800
+ readonly status: "error" | "starting" | "running" | "exited";
2801
+ readonly pid: number | null;
2802
+ readonly exitCode: number | null;
2803
+ readonly exitSignal: number | null;
2804
+ readonly hasRunningSubprocess: boolean;
2805
+ readonly label: string;
2806
+ readonly updatedAt: string;
2807
+ }[];
2808
+ } | {
2809
+ readonly type: "upsert";
2810
+ readonly terminal: {
2811
+ readonly threadId: string;
2812
+ readonly terminalId: string;
2813
+ readonly cwd: string;
2814
+ readonly worktreePath: string | null;
2815
+ readonly status: "error" | "starting" | "running" | "exited";
2816
+ readonly pid: number | null;
2817
+ readonly exitCode: number | null;
2818
+ readonly exitSignal: number | null;
2819
+ readonly hasRunningSubprocess: boolean;
2820
+ readonly label: string;
2821
+ readonly updatedAt: string;
2822
+ };
2823
+ } | {
2824
+ readonly type: "remove";
2825
+ readonly threadId: string;
2826
+ readonly terminalId: string;
2827
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
2265
2828
  readonly "server.getConfig": <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
2266
2829
  readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
2267
2830
  readonly context?: Context.Context<never> | undefined;
@@ -2288,7 +2851,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2288
2851
  readonly cwd: string;
2289
2852
  readonly keybindingsConfigPath: string;
2290
2853
  readonly keybindings: readonly {
2291
- readonly command: "thread.jump.1" | "thread.jump.2" | "thread.jump.3" | "thread.jump.4" | "thread.jump.5" | "thread.jump.6" | "thread.jump.7" | "thread.jump.8" | "thread.jump.9" | "modelPicker.jump.1" | "modelPicker.jump.2" | "modelPicker.jump.3" | "modelPicker.jump.4" | "modelPicker.jump.5" | "modelPicker.jump.6" | "modelPicker.jump.7" | "modelPicker.jump.8" | "modelPicker.jump.9" | "thread.previous" | "thread.next" | "modelPicker.toggle" | "terminal.toggle" | "terminal.split" | "terminal.new" | "terminal.close" | "diff.toggle" | "commandPalette.toggle" | "chat.new" | "chat.newLocal" | "editor.openFavorite" | `script.${string}.run`;
2854
+ readonly command: "thread.jump.1" | "thread.jump.2" | "thread.jump.3" | "thread.jump.4" | "thread.jump.5" | "thread.jump.6" | "thread.jump.7" | "thread.jump.8" | "thread.jump.9" | "modelPicker.jump.1" | "modelPicker.jump.2" | "modelPicker.jump.3" | "modelPicker.jump.4" | "modelPicker.jump.5" | "modelPicker.jump.6" | "modelPicker.jump.7" | "modelPicker.jump.8" | "modelPicker.jump.9" | "thread.previous" | "thread.next" | "modelPicker.toggle" | "terminal.toggle" | "terminal.split" | "terminal.splitVertical" | "terminal.new" | "terminal.close" | "rightPanel.toggle" | "diff.toggle" | "preview.toggle" | "preview.refresh" | "preview.focusUrl" | "preview.zoomIn" | "preview.zoomOut" | "preview.resetZoom" | "commandPalette.toggle" | "chat.new" | "chat.newLocal" | "editor.openFavorite" | `script.${string}.run`;
2292
2855
  readonly shortcut: {
2293
2856
  readonly key: string;
2294
2857
  readonly metaKey: boolean;
@@ -2302,15 +2865,15 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2302
2865
  readonly name: string;
2303
2866
  } | {
2304
2867
  readonly type: "not";
2305
- readonly node: import("#t3tools/contracts").KeybindingWhenNode;
2868
+ readonly node: import("@t3tools/contracts").KeybindingWhenNode;
2306
2869
  } | {
2307
2870
  readonly type: "and";
2308
- readonly left: import("#t3tools/contracts").KeybindingWhenNode;
2309
- readonly right: import("#t3tools/contracts").KeybindingWhenNode;
2871
+ readonly left: import("@t3tools/contracts").KeybindingWhenNode;
2872
+ readonly right: import("@t3tools/contracts").KeybindingWhenNode;
2310
2873
  } | {
2311
2874
  readonly type: "or";
2312
- readonly left: import("#t3tools/contracts").KeybindingWhenNode;
2313
- readonly right: import("#t3tools/contracts").KeybindingWhenNode;
2875
+ readonly left: import("@t3tools/contracts").KeybindingWhenNode;
2876
+ readonly right: import("@t3tools/contracts").KeybindingWhenNode;
2314
2877
  } | undefined;
2315
2878
  }[];
2316
2879
  readonly issues: readonly ({
@@ -2572,10 +3135,227 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2572
3135
  readonly output: string | null;
2573
3136
  };
2574
3137
  }[];
2575
- }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").KeybindingsConfigError | import("#t3tools/contracts").ServerSettingsError), never>;
3138
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").KeybindingsConfigError | import("@t3tools/contracts").ServerSettingsError), never>;
2576
3139
  }, RpcError, never>;
2577
3140
  disconnect: Effect.Effect<void, never, never>;
2578
3141
  reconnect: Effect.Effect<{
3142
+ readonly "terminal.open": <const AsQueue extends boolean = false, const Discard = false>(input: {
3143
+ readonly cwd: string;
3144
+ readonly terminalId: string;
3145
+ readonly threadId: string;
3146
+ readonly worktreePath?: string | null | undefined;
3147
+ readonly cols?: number | undefined;
3148
+ readonly rows?: number | undefined;
3149
+ readonly env?: {
3150
+ readonly [x: string]: string;
3151
+ } | undefined;
3152
+ readonly projectId?: (string & import("effect/Brand").Brand<"ProjectId">) | undefined;
3153
+ }, options?: {
3154
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
3155
+ readonly context?: Context.Context<never> | undefined;
3156
+ readonly discard?: Discard | undefined;
3157
+ } | undefined) => Effect.Effect<Discard extends true ? void : {
3158
+ readonly threadId: string;
3159
+ readonly terminalId: string;
3160
+ readonly cwd: string;
3161
+ readonly worktreePath: string | null;
3162
+ readonly status: "error" | "starting" | "running" | "exited";
3163
+ readonly pid: number | null;
3164
+ readonly history: string;
3165
+ readonly exitCode: number | null;
3166
+ readonly exitSignal: number | null;
3167
+ readonly label: string;
3168
+ readonly updatedAt: string;
3169
+ readonly sequence?: number | undefined;
3170
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
3171
+ readonly "terminal.attach": <const AsQueue extends boolean = false, const Discard = false>(input: {
3172
+ readonly terminalId: string;
3173
+ readonly threadId: string;
3174
+ readonly cwd?: string | undefined;
3175
+ readonly worktreePath?: string | null | undefined;
3176
+ readonly cols?: number | undefined;
3177
+ readonly rows?: number | undefined;
3178
+ readonly env?: {
3179
+ readonly [x: string]: string;
3180
+ } | undefined;
3181
+ readonly restartIfNotRunning?: boolean | undefined;
3182
+ readonly projectId?: (string & import("effect/Brand").Brand<"ProjectId">) | undefined;
3183
+ }, options?: {
3184
+ readonly asQueue?: AsQueue | undefined;
3185
+ readonly streamBufferSize?: number | undefined;
3186
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
3187
+ readonly context?: Context.Context<never> | undefined;
3188
+ } | undefined) => AsQueue extends true ? Effect.Effect<import("effect/Queue").Dequeue<{
3189
+ readonly type: "output";
3190
+ readonly data: string;
3191
+ readonly threadId: string;
3192
+ readonly terminalId: string;
3193
+ readonly sequence?: number | undefined;
3194
+ } | {
3195
+ readonly type: "exited";
3196
+ readonly exitCode: number | null;
3197
+ readonly exitSignal: number | null;
3198
+ readonly threadId: string;
3199
+ readonly terminalId: string;
3200
+ readonly sequence?: number | undefined;
3201
+ } | {
3202
+ readonly type: "closed";
3203
+ readonly threadId: string;
3204
+ readonly terminalId: string;
3205
+ readonly sequence?: number | undefined;
3206
+ } | {
3207
+ readonly type: "error";
3208
+ readonly message: string;
3209
+ readonly threadId: string;
3210
+ readonly terminalId: string;
3211
+ readonly sequence?: number | undefined;
3212
+ } | {
3213
+ readonly type: "cleared";
3214
+ readonly threadId: string;
3215
+ readonly terminalId: string;
3216
+ readonly sequence?: number | undefined;
3217
+ } | {
3218
+ readonly type: "restarted";
3219
+ readonly snapshot: {
3220
+ readonly threadId: string;
3221
+ readonly terminalId: string;
3222
+ readonly cwd: string;
3223
+ readonly worktreePath: string | null;
3224
+ readonly status: "error" | "starting" | "running" | "exited";
3225
+ readonly pid: number | null;
3226
+ readonly history: string;
3227
+ readonly exitCode: number | null;
3228
+ readonly exitSignal: number | null;
3229
+ readonly label: string;
3230
+ readonly updatedAt: string;
3231
+ readonly sequence?: number | undefined;
3232
+ };
3233
+ readonly threadId: string;
3234
+ readonly terminalId: string;
3235
+ readonly sequence?: number | undefined;
3236
+ } | {
3237
+ readonly type: "activity";
3238
+ readonly hasRunningSubprocess: boolean;
3239
+ readonly label: string;
3240
+ readonly threadId: string;
3241
+ readonly terminalId: string;
3242
+ readonly sequence?: number | undefined;
3243
+ } | {
3244
+ readonly type: "snapshot";
3245
+ readonly snapshot: {
3246
+ readonly threadId: string;
3247
+ readonly terminalId: string;
3248
+ readonly cwd: string;
3249
+ readonly worktreePath: string | null;
3250
+ readonly status: "error" | "starting" | "running" | "exited";
3251
+ readonly pid: number | null;
3252
+ readonly history: string;
3253
+ readonly exitCode: number | null;
3254
+ readonly exitSignal: number | null;
3255
+ readonly label: string;
3256
+ readonly updatedAt: string;
3257
+ readonly sequence?: number | undefined;
3258
+ };
3259
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
3260
+ readonly type: "output";
3261
+ readonly data: string;
3262
+ readonly threadId: string;
3263
+ readonly terminalId: string;
3264
+ readonly sequence?: number | undefined;
3265
+ } | {
3266
+ readonly type: "exited";
3267
+ readonly exitCode: number | null;
3268
+ readonly exitSignal: number | null;
3269
+ readonly threadId: string;
3270
+ readonly terminalId: string;
3271
+ readonly sequence?: number | undefined;
3272
+ } | {
3273
+ readonly type: "closed";
3274
+ readonly threadId: string;
3275
+ readonly terminalId: string;
3276
+ readonly sequence?: number | undefined;
3277
+ } | {
3278
+ readonly type: "error";
3279
+ readonly message: string;
3280
+ readonly threadId: string;
3281
+ readonly terminalId: string;
3282
+ readonly sequence?: number | undefined;
3283
+ } | {
3284
+ readonly type: "cleared";
3285
+ readonly threadId: string;
3286
+ readonly terminalId: string;
3287
+ readonly sequence?: number | undefined;
3288
+ } | {
3289
+ readonly type: "restarted";
3290
+ readonly snapshot: {
3291
+ readonly threadId: string;
3292
+ readonly terminalId: string;
3293
+ readonly cwd: string;
3294
+ readonly worktreePath: string | null;
3295
+ readonly status: "error" | "starting" | "running" | "exited";
3296
+ readonly pid: number | null;
3297
+ readonly history: string;
3298
+ readonly exitCode: number | null;
3299
+ readonly exitSignal: number | null;
3300
+ readonly label: string;
3301
+ readonly updatedAt: string;
3302
+ readonly sequence?: number | undefined;
3303
+ };
3304
+ readonly threadId: string;
3305
+ readonly terminalId: string;
3306
+ readonly sequence?: number | undefined;
3307
+ } | {
3308
+ readonly type: "activity";
3309
+ readonly hasRunningSubprocess: boolean;
3310
+ readonly label: string;
3311
+ readonly threadId: string;
3312
+ readonly terminalId: string;
3313
+ readonly sequence?: number | undefined;
3314
+ } | {
3315
+ readonly type: "snapshot";
3316
+ readonly snapshot: {
3317
+ readonly threadId: string;
3318
+ readonly terminalId: string;
3319
+ readonly cwd: string;
3320
+ readonly worktreePath: string | null;
3321
+ readonly status: "error" | "starting" | "running" | "exited";
3322
+ readonly pid: number | null;
3323
+ readonly history: string;
3324
+ readonly exitCode: number | null;
3325
+ readonly exitSignal: number | null;
3326
+ readonly label: string;
3327
+ readonly updatedAt: string;
3328
+ readonly sequence?: number | undefined;
3329
+ };
3330
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
3331
+ readonly "terminal.write": <const AsQueue extends boolean = false, const Discard = false>(input: {
3332
+ readonly data: string;
3333
+ readonly terminalId: string;
3334
+ readonly threadId: string;
3335
+ }, options?: {
3336
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
3337
+ readonly context?: Context.Context<never> | undefined;
3338
+ readonly discard?: Discard | undefined;
3339
+ } | undefined) => Effect.Effect<Discard extends true ? void : void, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
3340
+ readonly "terminal.resize": <const AsQueue extends boolean = false, const Discard = false>(input: {
3341
+ readonly cols: number;
3342
+ readonly rows: number;
3343
+ readonly terminalId: string;
3344
+ readonly threadId: string;
3345
+ }, options?: {
3346
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
3347
+ readonly context?: Context.Context<never> | undefined;
3348
+ readonly discard?: Discard | undefined;
3349
+ } | undefined) => Effect.Effect<Discard extends true ? void : void, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
3350
+ readonly "terminal.close": <const AsQueue extends boolean = false, const Discard = false>(input: {
3351
+ readonly threadId: string;
3352
+ readonly terminalId?: string | undefined;
3353
+ readonly deleteHistory?: boolean | undefined;
3354
+ }, options?: {
3355
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
3356
+ readonly context?: Context.Context<never> | undefined;
3357
+ readonly discard?: Discard | undefined;
3358
+ } | undefined) => Effect.Effect<Discard extends true ? void : void, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").TerminalCwdError | import("@t3tools/contracts").TerminalHistoryError | import("@t3tools/contracts").TerminalSessionLookupError | import("@t3tools/contracts").TerminalNotRunningError), never>;
2579
3359
  readonly "orchestration.dispatchCommand": <const AsQueue extends boolean = false, const Discard = false>(input: {
2580
3360
  readonly type: "project.create";
2581
3361
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
@@ -2612,6 +3392,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2612
3392
  readonly command: string;
2613
3393
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
2614
3394
  readonly runOnWorktreeCreate: boolean;
3395
+ readonly previewUrl?: string | undefined;
3396
+ readonly autoOpenPreview?: boolean | undefined;
2615
3397
  }[] | undefined;
2616
3398
  } | {
2617
3399
  readonly type: "project.delete";
@@ -2786,7 +3568,107 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2786
3568
  readonly discard?: Discard | undefined;
2787
3569
  } | undefined) => Effect.Effect<Discard extends true ? void : {
2788
3570
  readonly sequence: number;
2789
- }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationDispatchCommandError), never>;
3571
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationDispatchCommandError), never>;
3572
+ readonly "orchestration.getArchivedShellSnapshot": <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
3573
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
3574
+ readonly context?: Context.Context<never> | undefined;
3575
+ readonly discard?: Discard | undefined;
3576
+ } | undefined) => Effect.Effect<Discard extends true ? void : {
3577
+ readonly snapshotSequence: number;
3578
+ readonly projects: readonly {
3579
+ readonly id: string & import("effect/Brand").Brand<"ProjectId">;
3580
+ readonly title: string;
3581
+ readonly workspaceRoot: string;
3582
+ readonly defaultModelSelection: {
3583
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
3584
+ readonly model: string;
3585
+ readonly options?: readonly {
3586
+ readonly id: string;
3587
+ readonly value: string | boolean;
3588
+ }[];
3589
+ } | null;
3590
+ readonly scripts: readonly {
3591
+ readonly id: string;
3592
+ readonly name: string;
3593
+ readonly command: string;
3594
+ readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
3595
+ readonly runOnWorktreeCreate: boolean;
3596
+ readonly previewUrl?: string | undefined;
3597
+ readonly autoOpenPreview?: boolean | undefined;
3598
+ }[];
3599
+ readonly createdAt: string;
3600
+ readonly updatedAt: string;
3601
+ readonly repositoryIdentity?: {
3602
+ readonly canonicalKey: string;
3603
+ readonly locator: {
3604
+ readonly source: "git-remote";
3605
+ readonly remoteName: string;
3606
+ readonly remoteUrl: string;
3607
+ };
3608
+ readonly rootPath?: string;
3609
+ readonly displayName?: string;
3610
+ readonly provider?: string;
3611
+ readonly owner?: string;
3612
+ readonly name?: string;
3613
+ } | null | undefined;
3614
+ }[];
3615
+ readonly threads: readonly {
3616
+ readonly id: string & import("effect/Brand").Brand<"ThreadId">;
3617
+ readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
3618
+ readonly title: string;
3619
+ readonly modelSelection: {
3620
+ readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
3621
+ readonly model: string;
3622
+ readonly options?: readonly {
3623
+ readonly id: string;
3624
+ readonly value: string | boolean;
3625
+ }[];
3626
+ };
3627
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
3628
+ readonly interactionMode: "default" | "plan";
3629
+ readonly branch: string | null;
3630
+ readonly worktreePath: string | null;
3631
+ readonly latestTurn: {
3632
+ readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
3633
+ readonly state: "error" | "running" | "interrupted" | "completed";
3634
+ readonly requestedAt: string;
3635
+ readonly startedAt: string | null;
3636
+ readonly completedAt: string | null;
3637
+ readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
3638
+ readonly sourceProposedPlan?: {
3639
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
3640
+ readonly planId: string;
3641
+ } | undefined;
3642
+ } | null;
3643
+ readonly createdAt: string;
3644
+ readonly updatedAt: string;
3645
+ readonly archivedAt: string | null;
3646
+ readonly session: {
3647
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
3648
+ readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
3649
+ readonly providerName: string | null;
3650
+ readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
3651
+ readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
3652
+ readonly lastError: string | null;
3653
+ readonly updatedAt: string;
3654
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
3655
+ } | null;
3656
+ readonly goal: {
3657
+ readonly objective: string;
3658
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
3659
+ readonly tokensUsed: number;
3660
+ readonly tokenBudget: number | null;
3661
+ readonly timeUsedSeconds: number;
3662
+ readonly createdAt: string;
3663
+ readonly updatedAt: string;
3664
+ } | null;
3665
+ readonly latestUserMessageAt: string | null;
3666
+ readonly hasPendingApprovals: boolean;
3667
+ readonly hasPendingUserInput: boolean;
3668
+ readonly hasActionableProposedPlan: boolean;
3669
+ }[];
3670
+ readonly updatedAt: string;
3671
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError), never>;
2790
3672
  readonly "orchestration.subscribeShell": <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
2791
3673
  readonly asQueue?: AsQueue | undefined;
2792
3674
  readonly streamBufferSize?: number | undefined;
@@ -2813,6 +3695,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2813
3695
  readonly command: string;
2814
3696
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
2815
3697
  readonly runOnWorktreeCreate: boolean;
3698
+ readonly previewUrl?: string | undefined;
3699
+ readonly autoOpenPreview?: boolean | undefined;
2816
3700
  }[];
2817
3701
  readonly createdAt: string;
2818
3702
  readonly updatedAt: string;
@@ -2880,7 +3764,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2880
3764
  } | null;
2881
3765
  readonly goal: {
2882
3766
  readonly objective: string;
2883
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
3767
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
2884
3768
  readonly tokensUsed: number;
2885
3769
  readonly tokenBudget: number | null;
2886
3770
  readonly timeUsedSeconds: number;
@@ -2918,6 +3802,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2918
3802
  readonly command: string;
2919
3803
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
2920
3804
  readonly runOnWorktreeCreate: boolean;
3805
+ readonly previewUrl?: string | undefined;
3806
+ readonly autoOpenPreview?: boolean | undefined;
2921
3807
  }[];
2922
3808
  readonly createdAt: string;
2923
3809
  readonly updatedAt: string;
@@ -2978,7 +3864,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2978
3864
  } | null;
2979
3865
  readonly goal: {
2980
3866
  readonly objective: string;
2981
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
3867
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
2982
3868
  readonly tokensUsed: number;
2983
3869
  readonly tokenBudget: number | null;
2984
3870
  readonly timeUsedSeconds: number;
@@ -2992,7 +3878,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
2992
3878
  }[];
2993
3879
  readonly updatedAt: string;
2994
3880
  };
2995
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
3881
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
2996
3882
  readonly kind: "project-upserted";
2997
3883
  readonly sequence: number;
2998
3884
  readonly project: {
@@ -3013,6 +3899,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3013
3899
  readonly command: string;
3014
3900
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
3015
3901
  readonly runOnWorktreeCreate: boolean;
3902
+ readonly previewUrl?: string | undefined;
3903
+ readonly autoOpenPreview?: boolean | undefined;
3016
3904
  }[];
3017
3905
  readonly createdAt: string;
3018
3906
  readonly updatedAt: string;
@@ -3080,7 +3968,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3080
3968
  } | null;
3081
3969
  readonly goal: {
3082
3970
  readonly objective: string;
3083
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
3971
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
3084
3972
  readonly tokensUsed: number;
3085
3973
  readonly tokenBudget: number | null;
3086
3974
  readonly timeUsedSeconds: number;
@@ -3118,6 +4006,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3118
4006
  readonly command: string;
3119
4007
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
3120
4008
  readonly runOnWorktreeCreate: boolean;
4009
+ readonly previewUrl?: string | undefined;
4010
+ readonly autoOpenPreview?: boolean | undefined;
3121
4011
  }[];
3122
4012
  readonly createdAt: string;
3123
4013
  readonly updatedAt: string;
@@ -3178,7 +4068,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3178
4068
  } | null;
3179
4069
  readonly goal: {
3180
4070
  readonly objective: string;
3181
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
4071
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
3182
4072
  readonly tokensUsed: number;
3183
4073
  readonly tokenBudget: number | null;
3184
4074
  readonly timeUsedSeconds: number;
@@ -3192,7 +4082,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3192
4082
  }[];
3193
4083
  readonly updatedAt: string;
3194
4084
  };
3195
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
4085
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
3196
4086
  readonly "orchestration.subscribeThread": <const AsQueue extends boolean = false, const Discard = false>(input: {
3197
4087
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
3198
4088
  }, options?: {
@@ -3238,7 +4128,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3238
4128
  readonly deletedAt: string | null;
3239
4129
  readonly goal: {
3240
4130
  readonly objective: string;
3241
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
4131
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
3242
4132
  readonly tokensUsed: number;
3243
4133
  readonly tokenBudget: number | null;
3244
4134
  readonly timeUsedSeconds: number;
@@ -3328,6 +4218,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3328
4218
  readonly command: string;
3329
4219
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
3330
4220
  readonly runOnWorktreeCreate: boolean;
4221
+ readonly previewUrl?: string | undefined;
4222
+ readonly autoOpenPreview?: boolean | undefined;
3331
4223
  }[];
3332
4224
  readonly createdAt: string;
3333
4225
  readonly updatedAt: string;
@@ -3394,6 +4286,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3394
4286
  readonly command: string;
3395
4287
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
3396
4288
  readonly runOnWorktreeCreate: boolean;
4289
+ readonly previewUrl?: string | undefined;
4290
+ readonly autoOpenPreview?: boolean | undefined;
3397
4291
  }[] | undefined;
3398
4292
  };
3399
4293
  readonly sequence: number;
@@ -3879,7 +4773,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
3879
4773
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
3880
4774
  readonly goal: {
3881
4775
  readonly objective: string;
3882
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
4776
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
3883
4777
  readonly tokensUsed: number;
3884
4778
  readonly tokenBudget: number | null;
3885
4779
  readonly timeUsedSeconds: number;
@@ -4014,7 +4908,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4014
4908
  readonly ingestedAt?: string | undefined;
4015
4909
  };
4016
4910
  };
4017
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
4911
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
4018
4912
  readonly kind: "snapshot";
4019
4913
  readonly snapshot: {
4020
4914
  readonly snapshotSequence: number;
@@ -4052,7 +4946,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4052
4946
  readonly deletedAt: string | null;
4053
4947
  readonly goal: {
4054
4948
  readonly objective: string;
4055
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
4949
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
4056
4950
  readonly tokensUsed: number;
4057
4951
  readonly tokenBudget: number | null;
4058
4952
  readonly timeUsedSeconds: number;
@@ -4142,6 +5036,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4142
5036
  readonly command: string;
4143
5037
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
4144
5038
  readonly runOnWorktreeCreate: boolean;
5039
+ readonly previewUrl?: string | undefined;
5040
+ readonly autoOpenPreview?: boolean | undefined;
4145
5041
  }[];
4146
5042
  readonly createdAt: string;
4147
5043
  readonly updatedAt: string;
@@ -4208,6 +5104,8 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4208
5104
  readonly command: string;
4209
5105
  readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
4210
5106
  readonly runOnWorktreeCreate: boolean;
5107
+ readonly previewUrl?: string | undefined;
5108
+ readonly autoOpenPreview?: boolean | undefined;
4211
5109
  }[] | undefined;
4212
5110
  };
4213
5111
  readonly sequence: number;
@@ -4693,7 +5591,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4693
5591
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
4694
5592
  readonly goal: {
4695
5593
  readonly objective: string;
4696
- readonly status: "active" | "paused" | "budgetLimited" | "complete";
5594
+ readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
4697
5595
  readonly tokensUsed: number;
4698
5596
  readonly tokenBudget: number | null;
4699
5597
  readonly timeUsedSeconds: number;
@@ -4828,7 +5726,235 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4828
5726
  readonly ingestedAt?: string | undefined;
4829
5727
  };
4830
5728
  };
4831
- }, import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
5729
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").OrchestrationGetSnapshotError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
5730
+ readonly subscribeTerminalEvents: <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
5731
+ readonly asQueue?: AsQueue | undefined;
5732
+ readonly streamBufferSize?: number | undefined;
5733
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
5734
+ readonly context?: Context.Context<never> | undefined;
5735
+ } | undefined) => AsQueue extends true ? Effect.Effect<import("effect/Queue").Dequeue<{
5736
+ readonly type: "started";
5737
+ readonly snapshot: {
5738
+ readonly threadId: string;
5739
+ readonly terminalId: string;
5740
+ readonly cwd: string;
5741
+ readonly worktreePath: string | null;
5742
+ readonly status: "error" | "starting" | "running" | "exited";
5743
+ readonly pid: number | null;
5744
+ readonly history: string;
5745
+ readonly exitCode: number | null;
5746
+ readonly exitSignal: number | null;
5747
+ readonly label: string;
5748
+ readonly updatedAt: string;
5749
+ readonly sequence?: number | undefined;
5750
+ };
5751
+ readonly threadId: string;
5752
+ readonly terminalId: string;
5753
+ readonly sequence?: number | undefined;
5754
+ } | {
5755
+ readonly type: "output";
5756
+ readonly data: string;
5757
+ readonly threadId: string;
5758
+ readonly terminalId: string;
5759
+ readonly sequence?: number | undefined;
5760
+ } | {
5761
+ readonly type: "exited";
5762
+ readonly exitCode: number | null;
5763
+ readonly exitSignal: number | null;
5764
+ readonly threadId: string;
5765
+ readonly terminalId: string;
5766
+ readonly sequence?: number | undefined;
5767
+ } | {
5768
+ readonly type: "closed";
5769
+ readonly threadId: string;
5770
+ readonly terminalId: string;
5771
+ readonly sequence?: number | undefined;
5772
+ } | {
5773
+ readonly type: "error";
5774
+ readonly message: string;
5775
+ readonly threadId: string;
5776
+ readonly terminalId: string;
5777
+ readonly sequence?: number | undefined;
5778
+ } | {
5779
+ readonly type: "cleared";
5780
+ readonly threadId: string;
5781
+ readonly terminalId: string;
5782
+ readonly sequence?: number | undefined;
5783
+ } | {
5784
+ readonly type: "restarted";
5785
+ readonly snapshot: {
5786
+ readonly threadId: string;
5787
+ readonly terminalId: string;
5788
+ readonly cwd: string;
5789
+ readonly worktreePath: string | null;
5790
+ readonly status: "error" | "starting" | "running" | "exited";
5791
+ readonly pid: number | null;
5792
+ readonly history: string;
5793
+ readonly exitCode: number | null;
5794
+ readonly exitSignal: number | null;
5795
+ readonly label: string;
5796
+ readonly updatedAt: string;
5797
+ readonly sequence?: number | undefined;
5798
+ };
5799
+ readonly threadId: string;
5800
+ readonly terminalId: string;
5801
+ readonly sequence?: number | undefined;
5802
+ } | {
5803
+ readonly type: "activity";
5804
+ readonly hasRunningSubprocess: boolean;
5805
+ readonly label: string;
5806
+ readonly threadId: string;
5807
+ readonly terminalId: string;
5808
+ readonly sequence?: number | undefined;
5809
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
5810
+ readonly type: "started";
5811
+ readonly snapshot: {
5812
+ readonly threadId: string;
5813
+ readonly terminalId: string;
5814
+ readonly cwd: string;
5815
+ readonly worktreePath: string | null;
5816
+ readonly status: "error" | "starting" | "running" | "exited";
5817
+ readonly pid: number | null;
5818
+ readonly history: string;
5819
+ readonly exitCode: number | null;
5820
+ readonly exitSignal: number | null;
5821
+ readonly label: string;
5822
+ readonly updatedAt: string;
5823
+ readonly sequence?: number | undefined;
5824
+ };
5825
+ readonly threadId: string;
5826
+ readonly terminalId: string;
5827
+ readonly sequence?: number | undefined;
5828
+ } | {
5829
+ readonly type: "output";
5830
+ readonly data: string;
5831
+ readonly threadId: string;
5832
+ readonly terminalId: string;
5833
+ readonly sequence?: number | undefined;
5834
+ } | {
5835
+ readonly type: "exited";
5836
+ readonly exitCode: number | null;
5837
+ readonly exitSignal: number | null;
5838
+ readonly threadId: string;
5839
+ readonly terminalId: string;
5840
+ readonly sequence?: number | undefined;
5841
+ } | {
5842
+ readonly type: "closed";
5843
+ readonly threadId: string;
5844
+ readonly terminalId: string;
5845
+ readonly sequence?: number | undefined;
5846
+ } | {
5847
+ readonly type: "error";
5848
+ readonly message: string;
5849
+ readonly threadId: string;
5850
+ readonly terminalId: string;
5851
+ readonly sequence?: number | undefined;
5852
+ } | {
5853
+ readonly type: "cleared";
5854
+ readonly threadId: string;
5855
+ readonly terminalId: string;
5856
+ readonly sequence?: number | undefined;
5857
+ } | {
5858
+ readonly type: "restarted";
5859
+ readonly snapshot: {
5860
+ readonly threadId: string;
5861
+ readonly terminalId: string;
5862
+ readonly cwd: string;
5863
+ readonly worktreePath: string | null;
5864
+ readonly status: "error" | "starting" | "running" | "exited";
5865
+ readonly pid: number | null;
5866
+ readonly history: string;
5867
+ readonly exitCode: number | null;
5868
+ readonly exitSignal: number | null;
5869
+ readonly label: string;
5870
+ readonly updatedAt: string;
5871
+ readonly sequence?: number | undefined;
5872
+ };
5873
+ readonly threadId: string;
5874
+ readonly terminalId: string;
5875
+ readonly sequence?: number | undefined;
5876
+ } | {
5877
+ readonly type: "activity";
5878
+ readonly hasRunningSubprocess: boolean;
5879
+ readonly label: string;
5880
+ readonly threadId: string;
5881
+ readonly terminalId: string;
5882
+ readonly sequence?: number | undefined;
5883
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
5884
+ readonly subscribeTerminalMetadata: <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
5885
+ readonly asQueue?: AsQueue | undefined;
5886
+ readonly streamBufferSize?: number | undefined;
5887
+ readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
5888
+ readonly context?: Context.Context<never> | undefined;
5889
+ } | undefined) => AsQueue extends true ? Effect.Effect<import("effect/Queue").Dequeue<{
5890
+ readonly type: "snapshot";
5891
+ readonly terminals: readonly {
5892
+ readonly threadId: string;
5893
+ readonly terminalId: string;
5894
+ readonly cwd: string;
5895
+ readonly worktreePath: string | null;
5896
+ readonly status: "error" | "starting" | "running" | "exited";
5897
+ readonly pid: number | null;
5898
+ readonly exitCode: number | null;
5899
+ readonly exitSignal: number | null;
5900
+ readonly hasRunningSubprocess: boolean;
5901
+ readonly label: string;
5902
+ readonly updatedAt: string;
5903
+ }[];
5904
+ } | {
5905
+ readonly type: "upsert";
5906
+ readonly terminal: {
5907
+ readonly threadId: string;
5908
+ readonly terminalId: string;
5909
+ readonly cwd: string;
5910
+ readonly worktreePath: string | null;
5911
+ readonly status: "error" | "starting" | "running" | "exited";
5912
+ readonly pid: number | null;
5913
+ readonly exitCode: number | null;
5914
+ readonly exitSignal: number | null;
5915
+ readonly hasRunningSubprocess: boolean;
5916
+ readonly label: string;
5917
+ readonly updatedAt: string;
5918
+ };
5919
+ } | {
5920
+ readonly type: "remove";
5921
+ readonly threadId: string;
5922
+ readonly terminalId: string;
5923
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError | import("effect/Cause").Done<void>>, never, Scope.Scope> : import("effect/Stream").Stream<{
5924
+ readonly type: "snapshot";
5925
+ readonly terminals: readonly {
5926
+ readonly threadId: string;
5927
+ readonly terminalId: string;
5928
+ readonly cwd: string;
5929
+ readonly worktreePath: string | null;
5930
+ readonly status: "error" | "starting" | "running" | "exited";
5931
+ readonly pid: number | null;
5932
+ readonly exitCode: number | null;
5933
+ readonly exitSignal: number | null;
5934
+ readonly hasRunningSubprocess: boolean;
5935
+ readonly label: string;
5936
+ readonly updatedAt: string;
5937
+ }[];
5938
+ } | {
5939
+ readonly type: "upsert";
5940
+ readonly terminal: {
5941
+ readonly threadId: string;
5942
+ readonly terminalId: string;
5943
+ readonly cwd: string;
5944
+ readonly worktreePath: string | null;
5945
+ readonly status: "error" | "starting" | "running" | "exited";
5946
+ readonly pid: number | null;
5947
+ readonly exitCode: number | null;
5948
+ readonly exitSignal: number | null;
5949
+ readonly hasRunningSubprocess: boolean;
5950
+ readonly label: string;
5951
+ readonly updatedAt: string;
5952
+ };
5953
+ } | {
5954
+ readonly type: "remove";
5955
+ readonly threadId: string;
5956
+ readonly terminalId: string;
5957
+ }, import("@t3tools/contracts").EnvironmentAuthorizationError | import("effect/unstable/rpc/RpcClientError").RpcClientError, never>;
4832
5958
  readonly "server.getConfig": <const AsQueue extends boolean = false, const Discard = false>(input: {}, options?: {
4833
5959
  readonly headers?: import("effect/unstable/http/Headers").Input | undefined;
4834
5960
  readonly context?: Context.Context<never> | undefined;
@@ -4855,7 +5981,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4855
5981
  readonly cwd: string;
4856
5982
  readonly keybindingsConfigPath: string;
4857
5983
  readonly keybindings: readonly {
4858
- readonly command: "thread.jump.1" | "thread.jump.2" | "thread.jump.3" | "thread.jump.4" | "thread.jump.5" | "thread.jump.6" | "thread.jump.7" | "thread.jump.8" | "thread.jump.9" | "modelPicker.jump.1" | "modelPicker.jump.2" | "modelPicker.jump.3" | "modelPicker.jump.4" | "modelPicker.jump.5" | "modelPicker.jump.6" | "modelPicker.jump.7" | "modelPicker.jump.8" | "modelPicker.jump.9" | "thread.previous" | "thread.next" | "modelPicker.toggle" | "terminal.toggle" | "terminal.split" | "terminal.new" | "terminal.close" | "diff.toggle" | "commandPalette.toggle" | "chat.new" | "chat.newLocal" | "editor.openFavorite" | `script.${string}.run`;
5984
+ readonly command: "thread.jump.1" | "thread.jump.2" | "thread.jump.3" | "thread.jump.4" | "thread.jump.5" | "thread.jump.6" | "thread.jump.7" | "thread.jump.8" | "thread.jump.9" | "modelPicker.jump.1" | "modelPicker.jump.2" | "modelPicker.jump.3" | "modelPicker.jump.4" | "modelPicker.jump.5" | "modelPicker.jump.6" | "modelPicker.jump.7" | "modelPicker.jump.8" | "modelPicker.jump.9" | "thread.previous" | "thread.next" | "modelPicker.toggle" | "terminal.toggle" | "terminal.split" | "terminal.splitVertical" | "terminal.new" | "terminal.close" | "rightPanel.toggle" | "diff.toggle" | "preview.toggle" | "preview.refresh" | "preview.focusUrl" | "preview.zoomIn" | "preview.zoomOut" | "preview.resetZoom" | "commandPalette.toggle" | "chat.new" | "chat.newLocal" | "editor.openFavorite" | `script.${string}.run`;
4859
5985
  readonly shortcut: {
4860
5986
  readonly key: string;
4861
5987
  readonly metaKey: boolean;
@@ -4869,15 +5995,15 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
4869
5995
  readonly name: string;
4870
5996
  } | {
4871
5997
  readonly type: "not";
4872
- readonly node: import("#t3tools/contracts").KeybindingWhenNode;
5998
+ readonly node: import("@t3tools/contracts").KeybindingWhenNode;
4873
5999
  } | {
4874
6000
  readonly type: "and";
4875
- readonly left: import("#t3tools/contracts").KeybindingWhenNode;
4876
- readonly right: import("#t3tools/contracts").KeybindingWhenNode;
6001
+ readonly left: import("@t3tools/contracts").KeybindingWhenNode;
6002
+ readonly right: import("@t3tools/contracts").KeybindingWhenNode;
4877
6003
  } | {
4878
6004
  readonly type: "or";
4879
- readonly left: import("#t3tools/contracts").KeybindingWhenNode;
4880
- readonly right: import("#t3tools/contracts").KeybindingWhenNode;
6005
+ readonly left: import("@t3tools/contracts").KeybindingWhenNode;
6006
+ readonly right: import("@t3tools/contracts").KeybindingWhenNode;
4881
6007
  } | undefined;
4882
6008
  }[];
4883
6009
  readonly issues: readonly ({
@@ -5139,7 +6265,7 @@ export declare const makeT3RpcLayer: () => Effect.Effect<{
5139
6265
  readonly output: string | null;
5140
6266
  };
5141
6267
  }[];
5142
- }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("#t3tools/contracts").EnvironmentAuthorizationError | import("#t3tools/contracts").KeybindingsConfigError | import("#t3tools/contracts").ServerSettingsError), never>;
6268
+ }, import("effect/unstable/rpc/RpcClientError").RpcClientError | (Discard extends true ? never : import("@t3tools/contracts").EnvironmentAuthorizationError | import("@t3tools/contracts").KeybindingsConfigError | import("@t3tools/contracts").ServerSettingsError), never>;
5143
6269
  }, RpcError, never>;
5144
6270
  }, never, Scope.Scope | T3AuthTransport | T3CodeConnectionProvider | Socket.WebSocketConstructor>;
5145
6271
  export declare const T3RpcLive: Layer.Layer<T3Rpc, never, T3AuthTransport | T3CodeConnectionProvider | Socket.WebSocketConstructor>;