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
package/README.md CHANGED
@@ -41,21 +41,34 @@ npx skills add tarik02/t3cli
41
41
 
42
42
  ## Authentication
43
43
 
44
+ `t3cli` stores multiple named auth environments in `~/.config/t3cli/config.json` (or `$XDG_CONFIG_HOME/t3cli/config.json`). Tokens are encrypted at rest with AES-256-GCM; the master key is stored in the OS keyring when available, otherwise in `~/.config/t3cli/key`.
45
+
44
46
  ```sh
45
- t3cli auth pair --url <url> [--local] # Pair with a remote server
46
- t3cli auth local # Local t3code installation
47
- t3cli auth status # Check current auth
47
+ t3cli auth pair --url <url> [--name <name>] [--replace] [--local] # Pair with a remote server
48
+ t3cli auth local [--name <name>] [--replace] # Local t3code installation
49
+ t3cli auth status [--format json] # Check current auth
50
+ t3cli env list [--format json] # List stored environments
51
+ t3cli env use <name> [--format json] # Set default environment
52
+ t3cli env remove [--name <name>] [--yes] # Remove local credentials
53
+ t3cli --environment <name> ... # Use a specific environment once
48
54
  ```
49
55
 
50
56
  - Use `auth pair` with a pairing URL from a running t3code server
51
- - Use `auth local` to authenticate against a local t3code installation
57
+ - Default environment names: hostname slug from the paired URL, or `local` for `auth local`
58
+ - `auth pair` / `auth local` set the default environment only when creating the first stored environment; use `env use` to switch afterward
59
+ - `--replace` overwrites an existing environment and makes it the default
60
+ - `env remove` removes local CLI credentials only; any remote token can remain valid until natural expiry
61
+ - Use `auth local` or `auth pair --local` to authenticate against a local t3code installation
52
62
  - Local auth enables automatic project resolution from the current directory
63
+ - Set `T3CLI_ENV=<name>` to select an environment when `--environment` is omitted
64
+ - `T3CODE_URL` and `T3CODE_TOKEN` override the selected environment only when both are set
53
65
 
54
66
  ## Project Management
55
67
 
56
68
  ```sh
57
69
  t3cli project list # List known projects
58
70
  t3cli project add [--path <path>] [--title <title>]
71
+ t3cli project delete [--project <ref>] [--force] [--yes]
59
72
  ```
60
73
 
61
74
  The `--path` defaults to the current directory.
@@ -91,7 +104,7 @@ t3cli start [message]
91
104
  ### Common Thread Commands
92
105
 
93
106
  ```sh
94
- t3cli list [--project <ref>] # List threads
107
+ t3cli list [--project <ref>] [--archived | --all]
95
108
  t3cli show [--thread <id>] # Show thread details
96
109
  t3cli send [--thread <id>] [message] # Send message to thread
97
110
  t3cli transcript [--thread <id>] [--limit] # View messages
@@ -103,20 +116,70 @@ t3cli wait [--thread <id>] # Wait for completion
103
116
  ```sh
104
117
  t3cli thread archive [--thread <id>] # Archive thread
105
118
  t3cli thread approve --request <id> # Approve request
119
+ t3cli thread interrupt [--thread <id>] # Interrupt running turn
106
120
  t3cli thread respond --request <id> # Respond to request
121
+ t3cli thread update [--thread <id>] # Update thread metadata
122
+ t3cli thread unarchive [--thread <id>] # Unarchive thread
123
+ t3cli thread delete [--thread <id>] [--yes] # Delete thread
107
124
  t3cli thread callback --from <id> # Notify another thread on completion
108
125
  ```
109
126
 
127
+ ## Action Commands
128
+
129
+ Project-defined toolbar actions are exposed as `t3cli action`.
130
+
131
+ ```sh
132
+ t3cli action list [--project <ref>] [--format auto|human|json]
133
+ t3cli action run --thread <id> (--id <id> | --name <name>) [--terminal <id>] [--attach] [--format auto|human|json]
134
+ t3cli action add [--project <ref>] --name <name> --command <command> [--id <id>] [--icon play|test|lint|configure|build|debug] [--setup] [--preview-url <url>] [--auto-open-preview] [--format auto|human|json]
135
+ t3cli action update [--project <ref>] (--id <id> | --name <name>) [--set-name <name>] [--command <command>] [--icon play|test|lint|configure|build|debug] [--setup | --no-setup] [--preview-url <url> | --clear-preview-url] [--auto-open-preview | --no-auto-open-preview | --clear-auto-open-preview] [--format auto|human|json]
136
+ t3cli action delete [--project <ref>] (--id <id> | --name <name>) [--yes] [--format auto|human|json]
137
+ ```
138
+
139
+ `action list`, `add`, `update`, and `delete` use normal project resolution: `--project`, `T3CODE_PROJECT_ROOT`, `T3CODE_PROJECT_ID`, or cwd with local auth. `action run` infers the project from `--thread`.
140
+
141
+ Selectors require exactly one of `--id` or `--name`. Name matching is exact after trimming and case folding, and must match a single action. `action add` generates an id from `--name` when omitted. `--setup` marks the action to run on worktree creation and clears setup from other actions. Preview fields are stored on the action; `action run` only starts the terminal command and does not open previews.
142
+
143
+ ## Terminal Commands
144
+
145
+ ```sh
146
+ t3cli terminal list [--thread <id>] [--format auto|human|json]
147
+ t3cli terminal create [--thread <id>] [command] [--id <id>] [--attach] [--format auto|human|json]
148
+ t3cli terminal attach [--thread <id>] <terminal-id>
149
+ t3cli terminal read [--thread <id>] <terminal-id> [--history] [--format json|ndjson]
150
+ t3cli terminal read [--thread <id>] <terminal-id> --history --follow --format ndjson [--from-sequence <n>]
151
+ t3cli terminal stream [--thread <id>] <terminal-id> [--format ndjson] [--from-sequence <n>]
152
+ t3cli terminal wait [--thread <id>] <terminal-id> [--for exited|closed|ended] [--format auto|human|json]
153
+ t3cli terminal write [--thread <id>] <terminal-id> <data> [--format auto|human|json] [--quiet]
154
+ t3cli terminal write [--thread <id>] <terminal-id> --stdin [--format auto|human|json] [--quiet]
155
+ t3cli terminal write [--thread <id>] <terminal-id> --hex <hex> [--format auto|human|json] [--quiet]
156
+ t3cli terminal write [--thread <id>] <terminal-id> --base64 <base64> [--format auto|human|json] [--quiet]
157
+ t3cli terminal destroy [--thread <id>] <terminal-id> [--yes] [--format auto|human|json] [--quiet]
158
+ ```
159
+
160
+ `terminal list` shows a one-shot snapshot of terminals for a thread. `terminal create` opens a server-owned terminal in the thread workspace, using the active thread worktree when present and the project workspace root otherwise. When `[command]` is provided, the CLI opens the terminal first and then writes `${command}\r`.
161
+
162
+ `terminal attach` replays terminal history and then streams live output while forwarding local input to the remote PTY. Use `Ctrl-]` to detach locally without destroying the remote terminal. `Ctrl-C` is forwarded to the remote terminal. Terminal resize events are forwarded to the server.
163
+
164
+ `terminal read` returns the current terminal snapshot. Add `--history` to include snapshot history. Add `--follow --format ndjson` to continue streaming structured events after the snapshot. `--from-sequence` is inclusive: events with sequence greater than or equal to `<n>` are emitted after the initial snapshot. `terminal stream` is the lower-level attach event stream for agents and always emits ndjson attach events.
165
+
166
+ `terminal wait` blocks until the terminal emits the requested lifecycle event. `exited` waits for the process to end, `closed` waits for the server-owned terminal session to be removed, and `ended` accepts either.
167
+
168
+ `terminal write` accepts exactly one payload source: raw argument text, `--stdin`, `--hex`, or `--base64`. Payloads are treated as raw bytes (latin1), not UTF-8 text. `terminal destroy` performs a destructive close with history deletion and requires `--yes` in non-interactive mode.
169
+
110
170
  ### Environment Variables
111
171
 
112
172
  When flags are omitted, the CLI reads these environment variables (first match wins):
113
173
 
114
- | Variable | Used by |
115
- | ---------------------- | ----------------------------------------- |
116
- | `T3CODE_PROJECT_ROOT` | `--project` |
117
- | `T3CODE_PROJECT_ID` | `--project` (after `T3CODE_PROJECT_ROOT`) |
118
- | `T3CODE_WORKTREE_PATH` | `--worktree` |
119
- | `T3CODE_THREAD_ID` | `--thread` |
174
+ | Variable | Used by |
175
+ | ---------------------- | --------------------------------------------- |
176
+ | `T3CODE_PROJECT_ROOT` | `--project` |
177
+ | `T3CODE_PROJECT_ID` | `--project` (after `T3CODE_PROJECT_ROOT`) |
178
+ | `T3CODE_WORKTREE_PATH` | `--worktree` |
179
+ | `T3CODE_THREAD_ID` | `--thread` |
180
+ | `T3CLI_ENV` | `--environment` |
181
+ | `T3CODE_URL` | server URL override (requires `T3CODE_TOKEN`) |
182
+ | `T3CODE_TOKEN` | auth token override (requires `T3CODE_URL`) |
120
183
 
121
184
  ### Project Resolution
122
185
 
@@ -145,6 +208,7 @@ t3cli wait --format ndjson
145
208
  ```sh
146
209
  --help # Show help
147
210
  --version # Show version
211
+ --environment <name> # Auth environment for this command
148
212
  --completions <shell> # Generate shell completions (bash|zsh|fish|sh)
149
213
  --log-level <level> # Set log level
150
214
  ```
@@ -1,2 +1,2 @@
1
- import { Nd as T3Application } from "./shared.js";
2
- export { T3Application };
1
+ import { B as T3ModelApplicationLive, Gm as T3ActionApplication, H as T3TerminalApplicationLive, Jm as T3ProjectApplication, Km as T3Application, L as T3ActionApplicationLive, R as T3ApplicationLive, U as T3ThreadApplicationLive, V as T3ProjectApplicationLive, W as makeT3Application, Xm as T3ThreadApplication, Ym as T3TerminalApplication, qm as T3ModelApplication, z as T3ApplicationSlicesLive } from "./shared.js";
2
+ export { T3ActionApplication, T3ActionApplicationLive, T3Application, T3ApplicationLive, T3ApplicationSlicesLive, T3ModelApplication, T3ModelApplicationLive, T3ProjectApplication, T3ProjectApplicationLive, T3TerminalApplication, T3TerminalApplicationLive, T3ThreadApplication, T3ThreadApplicationLive, makeT3Application };
package/dist/auth.js CHANGED
@@ -1,2 +1,2 @@
1
- import { A as T3LocalAuthOriginLive, B as AuthLocalSigningError, C as T3LocalAuth, D as T3LocalAuthTokenLive, E as T3LocalAuthToken, H as AuthTransportError, I as AuthConfigError, Kd as T3Auth, L as AuthLocalDatabaseError, O as makeT3LocalAuthToken, R as AuthLocalError, T as makeT3LocalAuth, V as AuthPairingUrlError, _ as makeT3Auth, b as makeT3AuthPairing, g as T3AuthLive, j as makeT3LocalAuthOrigin, k as T3LocalAuthOrigin, v as T3AuthPairing, w as T3LocalAuthLive, x as parsePairingUrl, y as T3AuthPairingLive, z as AuthLocalSecretError } from "./shared.js";
1
+ import { $ as AuthLocalError, A as T3LocalAuthToken, C as T3AuthPairing, D as T3LocalAuth, E as parsePairingUrl, F as makeT3LocalAuthOrigin, Gp as T3Auth, M as makeT3LocalAuthToken, N as T3LocalAuthOrigin, O as T3LocalAuthLive, P as T3LocalAuthOriginLive, Q as AuthLocalDatabaseError, S as makeT3Auth, T as makeT3AuthPairing, Z as AuthConfigError, et as AuthLocalSecretError, j as T3LocalAuthTokenLive, k as makeT3LocalAuth, nt as AuthPairingUrlError, rt as AuthTransportError, tt as AuthLocalSigningError, w as T3AuthPairingLive, x as T3AuthLive } from "./shared.js";
2
2
  export { AuthConfigError, AuthLocalDatabaseError, AuthLocalError, AuthLocalSecretError, AuthLocalSigningError, AuthPairingUrlError, AuthTransportError, T3Auth, T3AuthLive, T3AuthPairing, T3AuthPairingLive, T3LocalAuth, T3LocalAuthLive, T3LocalAuthOrigin, T3LocalAuthOriginLive, T3LocalAuthToken, T3LocalAuthTokenLive, makeT3Auth, makeT3AuthPairing, makeT3LocalAuth, makeT3LocalAuthOrigin, makeT3LocalAuthToken, parsePairingUrl };