@ebowwa/coder 0.2.1 → 0.7.64

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 (401) hide show
  1. package/README.md +31 -32
  2. package/dist/core/__tests__/permissions.test.d.ts +12 -0
  3. package/dist/core/__tests__/permissions.test.d.ts.map +1 -0
  4. package/dist/core/__tests__/permissions.test.js +851 -0
  5. package/dist/core/agent-loop/__tests__/compaction.test.d.ts +5 -0
  6. package/dist/core/agent-loop/__tests__/compaction.test.d.ts.map +1 -0
  7. package/dist/core/agent-loop/__tests__/compaction.test.js +209 -0
  8. package/dist/core/agent-loop/__tests__/formatters.test.d.ts +5 -0
  9. package/dist/core/agent-loop/__tests__/formatters.test.d.ts.map +1 -0
  10. package/dist/core/agent-loop/__tests__/formatters.test.js +195 -0
  11. package/dist/core/agent-loop/__tests__/index.test.d.ts +5 -0
  12. package/dist/core/agent-loop/__tests__/index.test.d.ts.map +1 -0
  13. package/dist/core/agent-loop/__tests__/index.test.js +121 -0
  14. package/dist/core/agent-loop/__tests__/loop-state.test.d.ts +5 -0
  15. package/dist/core/agent-loop/__tests__/loop-state.test.d.ts.map +1 -0
  16. package/dist/core/agent-loop/__tests__/loop-state.test.js +340 -0
  17. package/dist/core/agent-loop/__tests__/message-builder.test.d.ts +5 -0
  18. package/dist/core/agent-loop/__tests__/message-builder.test.d.ts.map +1 -0
  19. package/dist/core/agent-loop/__tests__/message-builder.test.js +178 -0
  20. package/dist/core/agent-loop/__tests__/tool-executor.test.d.ts +5 -0
  21. package/dist/core/agent-loop/__tests__/tool-executor.test.d.ts.map +1 -0
  22. package/dist/core/agent-loop/__tests__/tool-executor.test.js +331 -0
  23. package/dist/core/agent-loop/compaction.d.ts +39 -0
  24. package/dist/core/agent-loop/compaction.d.ts.map +1 -0
  25. package/dist/core/agent-loop/compaction.js +51 -0
  26. package/dist/core/agent-loop/formatters.d.ts +21 -0
  27. package/dist/core/agent-loop/formatters.d.ts.map +1 -0
  28. package/dist/core/agent-loop/formatters.js +42 -0
  29. package/dist/core/agent-loop/index.d.ts +25 -0
  30. package/dist/core/agent-loop/index.d.ts.map +1 -0
  31. package/dist/core/agent-loop/index.js +83 -0
  32. package/dist/core/agent-loop/loop-state.d.ts +74 -0
  33. package/dist/core/agent-loop/loop-state.d.ts.map +1 -0
  34. package/dist/core/agent-loop/loop-state.js +147 -0
  35. package/dist/core/agent-loop/message-builder.d.ts +13 -0
  36. package/dist/core/agent-loop/message-builder.d.ts.map +1 -0
  37. package/dist/core/agent-loop/message-builder.js +49 -0
  38. package/dist/core/agent-loop/tool-executor.d.ts +23 -0
  39. package/dist/core/agent-loop/tool-executor.d.ts.map +1 -0
  40. package/dist/core/agent-loop/tool-executor.js +152 -0
  41. package/dist/core/agent-loop/turn-executor.d.ts +57 -0
  42. package/dist/core/agent-loop/turn-executor.d.ts.map +1 -0
  43. package/dist/core/agent-loop/turn-executor.js +124 -0
  44. package/dist/core/agent-loop/types.d.ts +141 -0
  45. package/dist/core/agent-loop/types.d.ts.map +1 -0
  46. package/dist/core/agent-loop/types.js +4 -0
  47. package/dist/core/agent-loop.d.ts +17 -0
  48. package/dist/core/agent-loop.d.ts.map +1 -0
  49. package/dist/core/agent-loop.js +16 -0
  50. package/dist/core/api-client-impl.d.ts +62 -0
  51. package/dist/core/api-client-impl.d.ts.map +1 -0
  52. package/dist/core/api-client-impl.js +479 -0
  53. package/dist/core/api-client.d.ts +6 -0
  54. package/dist/core/api-client.d.ts.map +1 -0
  55. package/dist/core/api-client.js +5 -0
  56. package/dist/core/checkpoints.d.ts +128 -0
  57. package/dist/core/checkpoints.d.ts.map +1 -0
  58. package/dist/core/checkpoints.js +438 -0
  59. package/dist/core/claude-md.d.ts +71 -0
  60. package/dist/core/claude-md.d.ts.map +1 -0
  61. package/dist/core/claude-md.js +198 -0
  62. package/dist/core/cognitive-security/hooks.d.ts +138 -0
  63. package/dist/core/cognitive-security/hooks.d.ts.map +1 -0
  64. package/dist/core/cognitive-security/hooks.js +389 -0
  65. package/dist/core/cognitive-security/index.d.ts +751 -0
  66. package/dist/core/cognitive-security/index.d.ts.map +1 -0
  67. package/dist/core/cognitive-security/index.js +1123 -0
  68. package/dist/core/cognitive-security/middleware.d.ts +136 -0
  69. package/dist/core/cognitive-security/middleware.d.ts.map +1 -0
  70. package/dist/core/cognitive-security/middleware.js +376 -0
  71. package/dist/core/config-loader.d.ts +127 -0
  72. package/dist/core/config-loader.d.ts.map +1 -0
  73. package/dist/core/config-loader.js +219 -0
  74. package/dist/core/context-compaction.d.ts +87 -0
  75. package/dist/core/context-compaction.d.ts.map +1 -0
  76. package/dist/core/context-compaction.js +428 -0
  77. package/dist/core/git-status.d.ts +25 -0
  78. package/dist/core/git-status.d.ts.map +1 -0
  79. package/dist/core/git-status.js +204 -0
  80. package/dist/core/image.d.ts +69 -0
  81. package/dist/core/image.d.ts.map +1 -0
  82. package/dist/core/image.js +290 -0
  83. package/dist/core/image.test.d.ts +2 -0
  84. package/dist/core/image.test.d.ts.map +1 -0
  85. package/dist/core/image.test.js +149 -0
  86. package/dist/core/models.d.ts +123 -0
  87. package/dist/core/models.d.ts.map +1 -0
  88. package/dist/core/models.js +325 -0
  89. package/dist/core/permissions.d.ts +81 -0
  90. package/dist/core/permissions.d.ts.map +1 -0
  91. package/dist/core/permissions.js +327 -0
  92. package/dist/core/retry.d.ts +25 -0
  93. package/dist/core/retry.d.ts.map +1 -0
  94. package/dist/core/retry.js +121 -0
  95. package/dist/core/session-store.d.ts +9 -0
  96. package/dist/core/session-store.d.ts.map +1 -0
  97. package/dist/core/session-store.js +10 -0
  98. package/dist/core/sessions/export.d.ts +47 -0
  99. package/dist/core/sessions/export.d.ts.map +1 -0
  100. package/dist/core/sessions/export.js +256 -0
  101. package/dist/core/sessions/index.d.ts +132 -0
  102. package/dist/core/sessions/index.d.ts.map +1 -0
  103. package/dist/core/sessions/index.js +442 -0
  104. package/dist/core/sessions/metadata.d.ts +77 -0
  105. package/dist/core/sessions/metadata.d.ts.map +1 -0
  106. package/dist/core/sessions/metadata.js +233 -0
  107. package/dist/core/sessions/persistence.d.ts +72 -0
  108. package/dist/core/sessions/persistence.d.ts.map +1 -0
  109. package/dist/core/sessions/persistence.js +201 -0
  110. package/dist/core/sessions/types.d.ts +110 -0
  111. package/dist/core/sessions/types.d.ts.map +1 -0
  112. package/dist/core/sessions/types.js +4 -0
  113. package/dist/core/stream-highlighter.d.ts +18 -0
  114. package/dist/core/stream-highlighter.d.ts.map +1 -0
  115. package/dist/core/stream-highlighter.js +916 -0
  116. package/dist/core/system-reminders.d.ts +89 -0
  117. package/dist/core/system-reminders.d.ts.map +1 -0
  118. package/dist/core/system-reminders.js +285 -0
  119. package/dist/ecosystem/hooks/__tests__/index.test.d.ts +5 -0
  120. package/dist/ecosystem/hooks/__tests__/index.test.d.ts.map +1 -0
  121. package/dist/ecosystem/hooks/__tests__/index.test.js +458 -0
  122. package/dist/ecosystem/hooks/index.d.ts +59 -0
  123. package/dist/ecosystem/hooks/index.d.ts.map +1 -0
  124. package/dist/ecosystem/hooks/index.js +294 -0
  125. package/dist/ecosystem/hooks/prompt-evaluator.d.ts +32 -0
  126. package/dist/ecosystem/hooks/prompt-evaluator.d.ts.map +1 -0
  127. package/dist/ecosystem/hooks/prompt-evaluator.js +229 -0
  128. package/dist/ecosystem/skills/index.d.ts +55 -0
  129. package/dist/ecosystem/skills/index.d.ts.map +1 -0
  130. package/dist/ecosystem/skills/index.js +258 -0
  131. package/dist/ecosystem/tools/__tests__/index.test.d.ts +7 -0
  132. package/dist/ecosystem/tools/__tests__/index.test.d.ts.map +1 -0
  133. package/dist/ecosystem/tools/__tests__/index.test.js +856 -0
  134. package/dist/ecosystem/tools/index.d.ts +24 -0
  135. package/dist/ecosystem/tools/index.d.ts.map +1 -0
  136. package/dist/ecosystem/tools/index.js +1709 -0
  137. package/dist/index.d.ts +24 -0
  138. package/dist/index.d.ts.map +1 -0
  139. package/dist/index.js +32 -2
  140. package/dist/interfaces/mcp/client.d.ts +40 -0
  141. package/dist/interfaces/mcp/client.d.ts.map +1 -0
  142. package/dist/interfaces/mcp/client.js +309 -0
  143. package/dist/interfaces/ui/index.d.ts +36 -0
  144. package/dist/interfaces/ui/index.d.ts.map +1 -0
  145. package/dist/interfaces/ui/index.js +61 -0
  146. package/dist/interfaces/ui/spinner.d.ts +140 -0
  147. package/dist/interfaces/ui/spinner.d.ts.map +1 -0
  148. package/dist/interfaces/ui/spinner.js +342 -0
  149. package/dist/interfaces/ui/terminal/cli/index.d.ts +12 -0
  150. package/dist/interfaces/ui/terminal/cli/index.d.ts.map +1 -0
  151. package/dist/interfaces/ui/terminal/cli/index.js +167 -0
  152. package/dist/interfaces/ui/terminal/shared/args.d.ts +39 -0
  153. package/dist/interfaces/ui/terminal/shared/args.d.ts.map +1 -0
  154. package/dist/interfaces/ui/terminal/shared/args.js +176 -0
  155. package/dist/interfaces/ui/terminal/shared/index.d.ts +11 -0
  156. package/dist/interfaces/ui/terminal/shared/index.d.ts.map +1 -0
  157. package/dist/interfaces/ui/terminal/shared/index.js +16 -0
  158. package/dist/interfaces/ui/terminal/shared/loading-state.d.ts +124 -0
  159. package/dist/interfaces/ui/terminal/shared/loading-state.d.ts.map +1 -0
  160. package/dist/interfaces/ui/terminal/shared/loading-state.js +246 -0
  161. package/dist/interfaces/ui/terminal/shared/query.d.ts +22 -0
  162. package/dist/interfaces/ui/terminal/shared/query.d.ts.map +1 -0
  163. package/dist/interfaces/ui/terminal/shared/query.js +100 -0
  164. package/dist/interfaces/ui/terminal/shared/setup.d.ts +33 -0
  165. package/dist/interfaces/ui/terminal/shared/setup.d.ts.map +1 -0
  166. package/dist/interfaces/ui/terminal/shared/setup.js +226 -0
  167. package/dist/interfaces/ui/terminal/shared/status-line.d.ts +117 -0
  168. package/dist/interfaces/ui/terminal/shared/status-line.d.ts.map +1 -0
  169. package/dist/interfaces/ui/terminal/shared/status-line.js +267 -0
  170. package/dist/interfaces/ui/terminal/shared/system-prompt.d.ts +38 -0
  171. package/dist/interfaces/ui/terminal/shared/system-prompt.d.ts.map +1 -0
  172. package/dist/interfaces/ui/terminal/shared/system-prompt.js +102 -0
  173. package/dist/interfaces/ui/terminal/tui/HelpPanel.d.ts +39 -0
  174. package/dist/interfaces/ui/terminal/tui/HelpPanel.d.ts.map +1 -0
  175. package/dist/interfaces/ui/terminal/tui/HelpPanel.js +215 -0
  176. package/dist/interfaces/ui/terminal/tui/InputContext.d.ts +91 -0
  177. package/dist/interfaces/ui/terminal/tui/InputContext.d.ts.map +1 -0
  178. package/dist/interfaces/ui/terminal/tui/InputContext.js +154 -0
  179. package/dist/interfaces/ui/terminal/tui/InputField.d.ts +18 -0
  180. package/dist/interfaces/ui/terminal/tui/InputField.d.ts.map +1 -0
  181. package/dist/interfaces/ui/terminal/tui/InputField.js +41 -0
  182. package/dist/interfaces/ui/terminal/tui/InteractiveTUI.d.ts +16 -0
  183. package/dist/interfaces/ui/terminal/tui/InteractiveTUI.d.ts.map +1 -0
  184. package/dist/interfaces/ui/terminal/tui/InteractiveTUI.js +451 -0
  185. package/dist/interfaces/ui/terminal/tui/MessageArea.d.ts +10 -0
  186. package/dist/interfaces/ui/terminal/tui/MessageArea.d.ts.map +1 -0
  187. package/dist/interfaces/ui/terminal/tui/MessageArea.js +91 -0
  188. package/dist/interfaces/ui/terminal/tui/MessageStore.d.ts +48 -0
  189. package/dist/interfaces/ui/terminal/tui/MessageStore.d.ts.map +1 -0
  190. package/dist/interfaces/ui/terminal/tui/MessageStore.js +151 -0
  191. package/dist/interfaces/ui/terminal/tui/StatusBar.d.ts +9 -0
  192. package/dist/interfaces/ui/terminal/tui/StatusBar.d.ts.map +1 -0
  193. package/dist/interfaces/ui/terminal/tui/StatusBar.js +36 -0
  194. package/dist/interfaces/ui/terminal/tui/commands.d.ts +21 -0
  195. package/dist/interfaces/ui/terminal/tui/commands.d.ts.map +1 -0
  196. package/dist/interfaces/ui/terminal/tui/commands.js +359 -0
  197. package/dist/interfaces/ui/terminal/tui/components/InteractiveElements.d.ts +115 -0
  198. package/dist/interfaces/ui/terminal/tui/components/InteractiveElements.d.ts.map +1 -0
  199. package/dist/interfaces/ui/terminal/tui/components/InteractiveElements.js +306 -0
  200. package/dist/interfaces/ui/terminal/tui/components/MultilineInput.d.ts +92 -0
  201. package/dist/interfaces/ui/terminal/tui/components/MultilineInput.d.ts.map +1 -0
  202. package/dist/interfaces/ui/terminal/tui/components/MultilineInput.js +399 -0
  203. package/dist/interfaces/ui/terminal/tui/components/PaneManager.d.ts +59 -0
  204. package/dist/interfaces/ui/terminal/tui/components/PaneManager.d.ts.map +1 -0
  205. package/dist/interfaces/ui/terminal/tui/components/PaneManager.js +139 -0
  206. package/dist/interfaces/ui/terminal/tui/components/Sidebar.d.ts +68 -0
  207. package/dist/interfaces/ui/terminal/tui/components/Sidebar.d.ts.map +1 -0
  208. package/dist/interfaces/ui/terminal/tui/components/Sidebar.js +340 -0
  209. package/dist/interfaces/ui/terminal/tui/components/index.d.ts +23 -0
  210. package/dist/interfaces/ui/terminal/tui/components/index.d.ts.map +1 -0
  211. package/dist/interfaces/ui/terminal/tui/components/index.js +51 -0
  212. package/dist/interfaces/ui/terminal/tui/console.d.ts +20 -0
  213. package/dist/interfaces/ui/terminal/tui/console.d.ts.map +1 -0
  214. package/dist/interfaces/ui/terminal/tui/console.js +46 -0
  215. package/dist/interfaces/ui/terminal/tui/index.d.ts +20 -0
  216. package/dist/interfaces/ui/terminal/tui/index.d.ts.map +1 -0
  217. package/dist/interfaces/ui/terminal/tui/index.js +28 -0
  218. package/dist/interfaces/ui/terminal/tui/run.d.ts +13 -0
  219. package/dist/interfaces/ui/terminal/tui/run.d.ts.map +1 -0
  220. package/dist/interfaces/ui/terminal/tui/run.js +31 -0
  221. package/dist/interfaces/ui/terminal/tui/spinner.d.ts +44 -0
  222. package/dist/interfaces/ui/terminal/tui/spinner.d.ts.map +1 -0
  223. package/dist/interfaces/ui/terminal/tui/spinner.js +59 -0
  224. package/dist/interfaces/ui/terminal/tui/tui-app.d.ts +39 -0
  225. package/dist/interfaces/ui/terminal/tui/tui-app.d.ts.map +1 -0
  226. package/dist/interfaces/ui/terminal/tui/tui-app.js +198 -0
  227. package/dist/interfaces/ui/terminal/tui/tui-footer.d.ts +167 -0
  228. package/dist/interfaces/ui/terminal/tui/tui-footer.d.ts.map +1 -0
  229. package/dist/interfaces/ui/terminal/tui/tui-footer.js +330 -0
  230. package/dist/interfaces/ui/terminal/tui/types.d.ts +165 -0
  231. package/dist/interfaces/ui/terminal/tui/types.d.ts.map +1 -0
  232. package/dist/interfaces/ui/terminal/tui/types.js +5 -0
  233. package/dist/interfaces/ui/terminal/tui/useInputHandler.d.ts +23 -0
  234. package/dist/interfaces/ui/terminal/tui/useInputHandler.d.ts.map +1 -0
  235. package/dist/interfaces/ui/terminal/tui/useInputHandler.js +72 -0
  236. package/dist/interfaces/ui/terminal/tui/useNativeInput.d.ts +90 -0
  237. package/dist/interfaces/ui/terminal/tui/useNativeInput.d.ts.map +1 -0
  238. package/dist/interfaces/ui/terminal/tui/useNativeInput.js +188 -0
  239. package/dist/native/index.d.ts +480 -0
  240. package/dist/native/index.d.ts.map +1 -0
  241. package/dist/native/index.js +1625 -0
  242. package/dist/teammates/index.d.ts +161 -0
  243. package/dist/teammates/index.d.ts.map +1 -0
  244. package/dist/teammates/index.js +827 -0
  245. package/dist/types/index.d.ts +482 -0
  246. package/dist/types/index.d.ts.map +1 -0
  247. package/dist/types/index.js +52 -0
  248. package/native/README.md +5 -5
  249. package/native/index.darwin-arm64.node +0 -0
  250. package/native/index.node +0 -0
  251. package/native/package.json +4 -4
  252. package/package.json +33 -16
  253. package/packages/src/core/__tests__/permissions.test.ts +1091 -0
  254. package/packages/src/core/agent-loop/__tests__/compaction.test.ts +280 -0
  255. package/packages/src/core/agent-loop/__tests__/formatters.test.ts +234 -0
  256. package/packages/src/core/agent-loop/__tests__/index.test.ts +162 -0
  257. package/packages/src/core/agent-loop/__tests__/loop-state.test.ts +413 -0
  258. package/packages/src/core/agent-loop/__tests__/message-builder.test.ts +229 -0
  259. package/packages/src/core/agent-loop/__tests__/tool-executor.test.ts +457 -0
  260. package/packages/src/core/agent-loop/compaction.ts +88 -0
  261. package/packages/src/core/agent-loop/formatters.ts +50 -0
  262. package/packages/src/core/agent-loop/index.ts +135 -0
  263. package/packages/src/core/agent-loop/loop-state.ts +187 -0
  264. package/packages/src/core/agent-loop/message-builder.ts +62 -0
  265. package/packages/src/core/agent-loop/tool-executor.ts +211 -0
  266. package/packages/src/core/agent-loop/turn-executor.ts +222 -0
  267. package/packages/src/core/agent-loop/types.ts +148 -0
  268. package/packages/src/core/agent-loop.ts +18 -0
  269. package/packages/src/core/api-client-impl.ts +619 -0
  270. package/packages/src/core/api-client.ts +6 -0
  271. package/packages/src/core/checkpoints.ts +606 -0
  272. package/packages/src/core/claude-md.ts +272 -0
  273. package/packages/src/core/cognitive-security/hooks.ts +590 -0
  274. package/packages/src/core/cognitive-security/index.ts +2041 -0
  275. package/packages/src/core/cognitive-security/middleware.ts +536 -0
  276. package/packages/src/core/config-loader.ts +324 -0
  277. package/packages/src/core/context-compaction.ts +578 -0
  278. package/packages/src/core/git-status.ts +262 -0
  279. package/packages/src/core/image.test.ts +180 -0
  280. package/packages/src/core/image.ts +350 -0
  281. package/packages/src/core/lmdb.db +0 -0
  282. package/packages/src/core/lmdb.db-lock +0 -0
  283. package/packages/src/core/models.ts +430 -0
  284. package/packages/src/core/normalizers/todo +4 -0
  285. package/packages/src/core/permissions.ts +431 -0
  286. package/packages/src/core/retry.ts +170 -0
  287. package/packages/src/core/session-store.ts +36 -0
  288. package/packages/src/core/sessions/export.ts +329 -0
  289. package/packages/src/core/sessions/index.ts +587 -0
  290. package/packages/src/core/sessions/metadata.ts +309 -0
  291. package/packages/src/core/sessions/persistence.ts +244 -0
  292. package/packages/src/core/sessions/types.ts +169 -0
  293. package/packages/src/core/stream-highlighter.ts +1123 -0
  294. package/packages/src/core/system-reminders.ts +402 -0
  295. package/packages/src/core/todo +8 -0
  296. package/packages/src/ecosystem/hooks/__tests__/index.test.ts +561 -0
  297. package/packages/src/ecosystem/hooks/index.ts +341 -0
  298. package/packages/src/ecosystem/hooks/prompt-evaluator.ts +300 -0
  299. package/packages/src/ecosystem/skills/index.ts +295 -0
  300. package/packages/src/ecosystem/tools/__tests__/index.test.ts +1335 -0
  301. package/packages/src/ecosystem/tools/index.ts +1877 -0
  302. package/packages/src/index.ts +120 -0
  303. package/packages/src/interfaces/mcp/client.ts +389 -0
  304. package/packages/src/interfaces/ui/Screenshot 2026-03-02 at 9.23.10/342/200/257PM.png +0 -0
  305. package/packages/src/interfaces/ui/Screenshot 2026-03-03 at 10.55.11/342/200/257AM.png +0 -0
  306. package/packages/src/interfaces/ui/index.ts +161 -0
  307. package/packages/src/interfaces/ui/lmdb.db +0 -0
  308. package/packages/src/interfaces/ui/lmdb.db-lock +0 -0
  309. package/packages/src/interfaces/ui/spinner.ts +451 -0
  310. package/packages/src/interfaces/ui/terminal/cli/index.ts +228 -0
  311. package/packages/src/interfaces/ui/terminal/lmdb.db +0 -0
  312. package/packages/src/interfaces/ui/terminal/lmdb.db-lock +0 -0
  313. package/packages/src/interfaces/ui/terminal/shared/args.ts +222 -0
  314. package/packages/src/interfaces/ui/terminal/shared/index.ts +71 -0
  315. package/packages/src/interfaces/ui/terminal/shared/loading-state.ts +322 -0
  316. package/packages/src/interfaces/ui/terminal/shared/query.ts +146 -0
  317. package/packages/src/interfaces/ui/terminal/shared/setup.ts +295 -0
  318. package/packages/src/interfaces/ui/terminal/shared/status-line.ts +358 -0
  319. package/packages/src/interfaces/ui/terminal/shared/system-prompt.ts +146 -0
  320. package/packages/src/interfaces/ui/terminal/tui/HelpPanel.tsx +262 -0
  321. package/packages/src/interfaces/ui/terminal/tui/InputContext.tsx +232 -0
  322. package/packages/src/interfaces/ui/terminal/tui/InputField.tsx +62 -0
  323. package/packages/src/interfaces/ui/terminal/tui/InteractiveTUI.tsx +537 -0
  324. package/packages/src/interfaces/ui/terminal/tui/MessageArea.tsx +107 -0
  325. package/packages/src/interfaces/ui/terminal/tui/MessageStore.tsx +240 -0
  326. package/packages/src/interfaces/ui/terminal/tui/StatusBar.tsx +54 -0
  327. package/packages/src/interfaces/ui/terminal/tui/commands.ts +438 -0
  328. package/packages/src/interfaces/ui/terminal/tui/components/InteractiveElements.tsx +584 -0
  329. package/packages/src/interfaces/ui/terminal/tui/components/MultilineInput.tsx +614 -0
  330. package/packages/src/interfaces/ui/terminal/tui/components/PaneManager.tsx +333 -0
  331. package/packages/src/interfaces/ui/terminal/tui/components/Sidebar.tsx +604 -0
  332. package/packages/src/interfaces/ui/terminal/tui/components/index.ts +118 -0
  333. package/packages/src/interfaces/ui/terminal/tui/console.ts +49 -0
  334. package/packages/src/interfaces/ui/terminal/tui/index.ts +90 -0
  335. package/packages/src/interfaces/ui/terminal/tui/run.tsx +42 -0
  336. package/packages/src/interfaces/ui/terminal/tui/spinner.ts +69 -0
  337. package/packages/src/interfaces/ui/terminal/tui/tui-app.tsx +390 -0
  338. package/packages/src/interfaces/ui/terminal/tui/tui-footer.ts +422 -0
  339. package/packages/src/interfaces/ui/terminal/tui/types.ts +186 -0
  340. package/packages/src/interfaces/ui/terminal/tui/useInputHandler.ts +104 -0
  341. package/packages/src/interfaces/ui/terminal/tui/useNativeInput.ts +239 -0
  342. package/packages/src/lmdb.db +0 -0
  343. package/packages/src/lmdb.db-lock +0 -0
  344. package/packages/src/native/index.ts +2345 -0
  345. package/packages/src/teammates/index.ts +982 -0
  346. package/packages/src/types/index.ts +722 -0
  347. package/dist/cli.js +0 -148
  348. package/dist/index-0pkak453.js +0 -136
  349. package/dist/index-0qd0x8b4.js +0 -110
  350. package/dist/index-0x3kprq6.js +0 -240
  351. package/dist/index-1eawy937.js +0 -308
  352. package/dist/index-24m2aygy.js +0 -240
  353. package/dist/index-29xcjnne.js +0 -280
  354. package/dist/index-2avyytn5.js +0 -349
  355. package/dist/index-4ms367ey.js +0 -136
  356. package/dist/index-4w2t3b0m.js +0 -240
  357. package/dist/index-4xfgd8nz.js +0 -261
  358. package/dist/index-5acjp9gc.js +0 -157
  359. package/dist/index-5s15hr56.js +0 -136
  360. package/dist/index-6e4wf341.js +0 -349
  361. package/dist/index-6fvnkedw.js +0 -240
  362. package/dist/index-6rqpmd4g.js +0 -128
  363. package/dist/index-77ckwnbm.js +0 -280
  364. package/dist/index-9knxy49k.js +0 -128
  365. package/dist/index-9zrnw4zx.js +0 -128
  366. package/dist/index-bk21w99v.js +0 -280
  367. package/dist/index-c41n76fv.js +0 -240
  368. package/dist/index-cb4ppjdt.js +0 -255
  369. package/dist/index-cfb2edt6.js +0 -240
  370. package/dist/index-cmfa38hh.js +0 -308
  371. package/dist/index-datjz8q1.js +0 -257
  372. package/dist/index-eadf4wvn.js +0 -240
  373. package/dist/index-em5k0m3z.js +0 -345
  374. package/dist/index-gh8r333a.js +0 -110
  375. package/dist/index-gkx6k2tr.js +0 -261
  376. package/dist/index-h5cabfks.js +0 -155
  377. package/dist/index-hcrpwyy3.js +0 -261
  378. package/dist/index-hk7fwwa8.js +0 -257
  379. package/dist/index-jb8cw7f8.js +0 -136
  380. package/dist/index-kbyw4th1.js +0 -347
  381. package/dist/index-kgj5gqnm.js +0 -345
  382. package/dist/index-mdf6xp1z.js +0 -255
  383. package/dist/index-mrhv8kvc.js +0 -280
  384. package/dist/index-mt4743dd.js +0 -161
  385. package/dist/index-qnwsg97q.js +0 -240
  386. package/dist/index-qwdy6x44.js +0 -261
  387. package/dist/index-rmj77261.js +0 -157
  388. package/dist/index-sbbw1a61.js +0 -349
  389. package/dist/index-svy5bcpn.js +0 -345
  390. package/dist/index-tvmy7tm9.js +0 -261
  391. package/dist/index-tzz4vzkj.js +0 -312
  392. package/dist/index-vz80zmhe.js +0 -110
  393. package/dist/index-wed2fk67.js +0 -240
  394. package/dist/index-wksgzz8e.js +0 -280
  395. package/dist/index-wn2m4wma.js +0 -240
  396. package/dist/index-xha05vjc.js +0 -257
  397. package/dist/index-yc6eh8p8.js +0 -136
  398. package/dist/index-ycjxx9ft.js +0 -240
  399. package/dist/index-z0gzd0fc.js +0 -110
  400. package/dist/index-z8cwtf8j.js +0 -240
  401. package/dist/index-zy5mtt00.js +0 -128
@@ -0,0 +1,342 @@
1
+ /**
2
+ * Spinner Component for Coder CLI
3
+ *
4
+ * Re-exports spinner frames from tui/spinner.ts for backward compatibility.
5
+ */
6
+ import ora, {} from "ora";
7
+ import chalk from "chalk";
8
+ // Import spinner frames from the single source of truth
9
+ import { spinnerFrames, dotSpinnerFrames, asciiSpinnerFrames, arrowSpinnerFrames, simpleDotFrames, } from "./terminal/tui/spinner.js";
10
+ // Re-export for external use
11
+ export { spinnerFrames, dotSpinnerFrames, asciiSpinnerFrames, arrowSpinnerFrames, simpleDotFrames, };
12
+ // Legacy aliases for backward compatibility
13
+ export const defaultFrames = spinnerFrames;
14
+ export const dotFrames = simpleDotFrames;
15
+ export const arrowFrames = arrowSpinnerFrames;
16
+ // ============================================
17
+ // SPINNER TIPS
18
+ // ============================================
19
+ /** Rotating tips shown during loading */
20
+ export const defaultTips = [
21
+ "Thinking...",
22
+ "Processing...",
23
+ "Analyzing...",
24
+ "Working on it...",
25
+ ];
26
+ /** Tips shown during tool execution */
27
+ export const toolTips = [
28
+ "Executing tool...",
29
+ "Running command...",
30
+ "Processing request...",
31
+ "Working...",
32
+ ];
33
+ /** Tips shown during API streaming */
34
+ export const streamingTips = [
35
+ "Receiving response...",
36
+ "Streaming...",
37
+ "Getting results...",
38
+ ];
39
+ // ============================================
40
+ // SPINNER CLASS
41
+ // ============================================
42
+ export class Spinner {
43
+ ora = null;
44
+ state;
45
+ options;
46
+ tipInterval = null;
47
+ tipIndex = 0;
48
+ customTips = [];
49
+ constructor(options = {}) {
50
+ this.options = {
51
+ color: "cyan",
52
+ showTime: true,
53
+ ...options,
54
+ };
55
+ this.state = {
56
+ isSpinning: false,
57
+ startTime: 0,
58
+ totalPausedMs: 0,
59
+ pauseStartTime: null,
60
+ currentTip: options.tip || "",
61
+ responseLength: 0,
62
+ };
63
+ }
64
+ /**
65
+ * Start the spinner
66
+ */
67
+ start(text) {
68
+ if (this.options.disabled || this.state.isSpinning) {
69
+ return this;
70
+ }
71
+ this.state.startTime = Date.now();
72
+ this.state.isSpinning = true;
73
+ const spinnerText = this.buildText(text || this.state.currentTip);
74
+ this.ora = ora({
75
+ text: spinnerText,
76
+ spinner: {
77
+ frames: [...spinnerFrames], // Convert readonly tuple to mutable array
78
+ interval: 80,
79
+ },
80
+ color: this.options.color,
81
+ prefixText: this.options.prefix,
82
+ }).start();
83
+ // Start rotating tips if enabled
84
+ if (!this.options.tip && this.customTips.length === 0) {
85
+ this.startTipRotation();
86
+ }
87
+ return this;
88
+ }
89
+ /**
90
+ * Stop the spinner
91
+ */
92
+ stop(options) {
93
+ if (!this.ora || !this.state.isSpinning) {
94
+ return this;
95
+ }
96
+ this.stopTipRotation();
97
+ if (options?.text) {
98
+ if (options?.symbol) {
99
+ this.ora.stopAndPersist({ symbol: options.symbol, text: options.text });
100
+ }
101
+ else {
102
+ this.ora.succeed(options.text);
103
+ }
104
+ }
105
+ else if (options?.clear) {
106
+ this.ora.stop();
107
+ }
108
+ else {
109
+ this.ora.stop();
110
+ }
111
+ this.state.isSpinning = false;
112
+ this.ora = null;
113
+ return this;
114
+ }
115
+ /**
116
+ * Stop with success message
117
+ */
118
+ succeed(text) {
119
+ return this.stop({ text, symbol: chalk.green("✓") });
120
+ }
121
+ /**
122
+ * Stop with failure message
123
+ */
124
+ fail(text) {
125
+ return this.stop({ text, symbol: chalk.red("✗") });
126
+ }
127
+ /**
128
+ * Stop with warning message
129
+ */
130
+ warn(text) {
131
+ return this.stop({ text, symbol: chalk.yellow("⚠") });
132
+ }
133
+ /**
134
+ * Stop with info message
135
+ */
136
+ info(text) {
137
+ return this.stop({ text, symbol: chalk.blue("ℹ") });
138
+ }
139
+ /**
140
+ * Update spinner text
141
+ */
142
+ update(text) {
143
+ if (this.ora && this.state.isSpinning) {
144
+ this.state.currentTip = text;
145
+ this.ora.text = this.buildText(text);
146
+ }
147
+ return this;
148
+ }
149
+ /**
150
+ * Update the tip text (shown below main text)
151
+ */
152
+ updateTip(tip) {
153
+ this.stopTipRotation();
154
+ this.state.currentTip = tip;
155
+ if (this.ora && this.state.isSpinning) {
156
+ this.ora.text = this.buildText(this.state.currentTip);
157
+ }
158
+ return this;
159
+ }
160
+ /**
161
+ * Set custom tips for rotation
162
+ */
163
+ setTips(tips) {
164
+ this.customTips = tips;
165
+ return this;
166
+ }
167
+ /**
168
+ * Update response length (for streaming progress)
169
+ */
170
+ updateResponseLength(length) {
171
+ this.state.responseLength = length;
172
+ if (this.ora && this.state.isSpinning && this.options.verbose) {
173
+ this.ora.text = this.buildText(this.state.currentTip);
174
+ }
175
+ return this;
176
+ }
177
+ /**
178
+ * Set tool activity state
179
+ */
180
+ setToolActivity(active) {
181
+ this.options.hasActiveTools = active;
182
+ if (this.ora && this.state.isSpinning) {
183
+ this.ora.text = this.buildText(this.state.currentTip);
184
+ }
185
+ return this;
186
+ }
187
+ /**
188
+ * Pause spinner (for user input, etc.)
189
+ */
190
+ pause() {
191
+ if (this.state.isSpinning && !this.state.pauseStartTime) {
192
+ this.state.pauseStartTime = Date.now();
193
+ if (this.ora) {
194
+ this.ora.stop();
195
+ }
196
+ }
197
+ return this;
198
+ }
199
+ /**
200
+ * Resume spinner after pause
201
+ */
202
+ resume() {
203
+ if (this.state.pauseStartTime) {
204
+ this.state.totalPausedMs += Date.now() - this.state.pauseStartTime;
205
+ this.state.pauseStartTime = null;
206
+ if (this.ora) {
207
+ this.ora.start();
208
+ }
209
+ }
210
+ return this;
211
+ }
212
+ /**
213
+ * Get elapsed time in seconds (excluding pauses)
214
+ */
215
+ getElapsedSeconds() {
216
+ const now = Date.now();
217
+ let elapsed = now - this.state.startTime - this.state.totalPausedMs;
218
+ // Subtract current pause if active
219
+ if (this.state.pauseStartTime) {
220
+ elapsed -= now - this.state.pauseStartTime;
221
+ }
222
+ return Math.floor(elapsed / 1000);
223
+ }
224
+ /**
225
+ * Get current state
226
+ */
227
+ getState() {
228
+ return { ...this.state };
229
+ }
230
+ /**
231
+ * Check if spinner is active
232
+ */
233
+ isActive() {
234
+ return this.state.isSpinning;
235
+ }
236
+ /**
237
+ * Clear the spinner line
238
+ */
239
+ clear() {
240
+ if (this.ora) {
241
+ this.ora.clear();
242
+ }
243
+ return this;
244
+ }
245
+ /**
246
+ * Render spinner frame manually (for non-TTY)
247
+ */
248
+ renderFrame() {
249
+ const frame = spinnerFrames[this.tipIndex % spinnerFrames.length];
250
+ return `${frame} ${this.state.currentTip}`;
251
+ }
252
+ // ============================================
253
+ // PRIVATE METHODS
254
+ // ============================================
255
+ buildText(baseText) {
256
+ let text = baseText;
257
+ // Add suffix
258
+ if (this.options.suffix) {
259
+ text = `${text} ${this.options.suffix}`;
260
+ }
261
+ // Add elapsed time
262
+ if (this.options.showTime && this.state.startTime > 0) {
263
+ const elapsed = this.getElapsedSeconds();
264
+ if (elapsed > 0) {
265
+ text = `${text} ${chalk.gray(`[${formatTime(elapsed)}]`)}`;
266
+ }
267
+ }
268
+ // Add tool indicator
269
+ if (this.options.hasActiveTools) {
270
+ text = `${chalk.yellow("⚙")} ${text}`;
271
+ }
272
+ // Add response length in verbose mode
273
+ if (this.options.verbose && this.state.responseLength > 0) {
274
+ text = `${text} ${chalk.gray(`(${formatBytes(this.state.responseLength)})`)}`;
275
+ }
276
+ return text;
277
+ }
278
+ startTipRotation() {
279
+ const tips = this.customTips.length > 0 ? this.customTips : defaultTips;
280
+ this.tipIndex = 0;
281
+ this.tipInterval = setInterval(() => {
282
+ this.tipIndex = (this.tipIndex + 1) % tips.length;
283
+ if (this.ora && this.state.isSpinning) {
284
+ this.ora.text = this.buildText(tips[this.tipIndex] ?? "");
285
+ }
286
+ }, 2000);
287
+ }
288
+ stopTipRotation() {
289
+ if (this.tipInterval) {
290
+ clearInterval(this.tipInterval);
291
+ this.tipInterval = null;
292
+ }
293
+ }
294
+ }
295
+ // ============================================
296
+ // HELPER FUNCTIONS
297
+ // ============================================
298
+ /**
299
+ * Format seconds to human-readable time
300
+ */
301
+ function formatTime(seconds) {
302
+ if (seconds < 60) {
303
+ return `${seconds}s`;
304
+ }
305
+ const mins = Math.floor(seconds / 60);
306
+ const secs = seconds % 60;
307
+ return `${mins}m${secs}s`;
308
+ }
309
+ /**
310
+ * Format bytes to human-readable size
311
+ */
312
+ function formatBytes(bytes) {
313
+ if (bytes < 1024) {
314
+ return `${bytes}B`;
315
+ }
316
+ if (bytes < 1024 * 1024) {
317
+ return `${(bytes / 1024).toFixed(1)}KB`;
318
+ }
319
+ return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
320
+ }
321
+ // ============================================
322
+ // SINGLETON INSTANCE
323
+ // ============================================
324
+ let globalSpinner = null;
325
+ /**
326
+ * Get or create global spinner instance
327
+ */
328
+ export function getSpinner(options) {
329
+ if (!globalSpinner) {
330
+ globalSpinner = new Spinner(options);
331
+ }
332
+ return globalSpinner;
333
+ }
334
+ /**
335
+ * Reset global spinner (for testing)
336
+ */
337
+ export function resetSpinner() {
338
+ if (globalSpinner) {
339
+ globalSpinner.stop({ clear: true });
340
+ globalSpinner = null;
341
+ }
342
+ }
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env bun
2
+ /**
3
+ * Coder - CLI Entry Point
4
+ * AI-powered terminal coding assistant
5
+ *
6
+ * This is a thin orchestrator that:
7
+ * 1. Parses arguments
8
+ * 2. Sets up session (config, MCP, hooks)
9
+ * 3. Dispatches to TUI or single-query mode
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/src/interfaces/ui/terminal/cli/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG"}
@@ -0,0 +1,167 @@
1
+ #!/usr/bin/env bun
2
+ /**
3
+ * Coder - CLI Entry Point
4
+ * AI-powered terminal coding assistant
5
+ *
6
+ * This is a thin orchestrator that:
7
+ * 1. Parses arguments
8
+ * 2. Sets up session (config, MCP, hooks)
9
+ * 3. Dispatches to TUI or single-query mode
10
+ */
11
+ import { SessionStore, printSessionsList } from "../../../../core/session-store.js";
12
+ import { getGitStatus } from "../../../../core/git-status.js";
13
+ import { renderStatusLine, getContextWindow, VERSION } from "../shared/status-line.js";
14
+ import { runInteractiveTUI } from "../tui/index.js";
15
+ // Shared modules
16
+ import { parseArgs, requireApiKey, setupSession, buildCompleteSystemPrompt, runSingleQuery, } from "../shared/index.js";
17
+ // ============================================
18
+ // MAIN ENTRY POINT
19
+ // ============================================
20
+ async function main() {
21
+ const args = parseArgs();
22
+ // Handle --version flag
23
+ if (args.showVersion) {
24
+ console.log(`Coder v${VERSION}`);
25
+ console.log(`Model: ${args.model}`);
26
+ console.log(`Node: ${process.version}`);
27
+ console.log(`Platform: ${process.platform} ${process.arch}`);
28
+ process.exit(0);
29
+ }
30
+ // Initialize session store
31
+ const sessionStore = new SessionStore();
32
+ await sessionStore.init();
33
+ // Handle --sessions flag
34
+ if (args.listSessions) {
35
+ const sessions = await sessionStore.listSessions(20);
36
+ printSessionsList(sessions);
37
+ process.exit(0);
38
+ }
39
+ // Get API key
40
+ const apiKey = requireApiKey();
41
+ // Setup session (config, MCP, hooks, skills)
42
+ const setup = await setupSession({
43
+ args,
44
+ apiKey,
45
+ workingDirectory: process.cwd(),
46
+ });
47
+ // Get git status for system prompt
48
+ const gitStatus = await getGitStatus(process.cwd());
49
+ // Build system prompt
50
+ const systemPrompt = await buildCompleteSystemPrompt(process.cwd(), {
51
+ systemPrompt: args.systemPrompt,
52
+ appendSystemPrompt: args.appendSystemPrompt,
53
+ teammateMode: args.teammateMode,
54
+ agentId: args.agentId,
55
+ agentName: args.agentName,
56
+ teamName: args.teamName,
57
+ });
58
+ // Handle session resume
59
+ let messages = [];
60
+ let sessionId;
61
+ if (args.resumeSession) {
62
+ const loadedSession = await sessionStore.resumeSession(args.resumeSession);
63
+ if (!loadedSession) {
64
+ console.error(`Error: Session not found: ${args.resumeSession}`);
65
+ process.exit(1);
66
+ }
67
+ messages = loadedSession.messages;
68
+ sessionId = args.resumeSession;
69
+ // Update args from session metadata
70
+ args.model = loadedSession.metadata.model;
71
+ args.agentName = loadedSession.metadata.agentName;
72
+ args.agentColor = loadedSession.metadata.agentColor;
73
+ args.teamName = loadedSession.metadata.teamName;
74
+ console.log(`\x1b[90mResumed session: ${args.resumeSession}\x1b[0m`);
75
+ console.log(`\x1b[90mModel: ${args.model} | Messages: ${messages.length}\x1b[0m\n`);
76
+ }
77
+ else {
78
+ // Create new session
79
+ sessionId = await sessionStore.createSession({
80
+ model: args.model,
81
+ workingDirectory: process.cwd(),
82
+ agentName: args.agentName,
83
+ agentColor: args.agentColor,
84
+ teamName: args.teamName,
85
+ });
86
+ }
87
+ // Get initial query
88
+ let query = args.query;
89
+ const firstArg = process.argv[2];
90
+ if (!query && process.argv.length > 2 && firstArg && !firstArg.startsWith("-")) {
91
+ query = process.argv.slice(2).join(" ");
92
+ }
93
+ if (!query) {
94
+ // Show initial status line
95
+ const initialStatusOptions = {
96
+ permissionMode: setup.permissionMode,
97
+ tokensUsed: 0,
98
+ maxTokens: getContextWindow(args.model),
99
+ model: args.model,
100
+ isLoading: false,
101
+ };
102
+ console.log(`\x1b[90m${renderStatusLine(initialStatusOptions)}\x1b[0m`);
103
+ console.log(`\x1b[90mSession: ${sessionId}\x1b[0m`);
104
+ console.log("\x1b[90mType your message, ? for help, or /help for commands.\x1b[0m\n");
105
+ // Interactive mode
106
+ await runInteractiveMode(apiKey, args, systemPrompt, setup.tools, setup.hookManager, setup.skillManager, sessionStore, messages, sessionId, setup.mcpClients, setup.permissionMode);
107
+ }
108
+ else {
109
+ // Single query mode
110
+ await runSingleQuery({
111
+ apiKey,
112
+ args,
113
+ systemPrompt,
114
+ tools: setup.tools,
115
+ query,
116
+ sessionStore,
117
+ sessionId,
118
+ hookManager: setup.hookManager,
119
+ workingDirectory: process.cwd(),
120
+ gitStatus,
121
+ });
122
+ }
123
+ }
124
+ // ============================================
125
+ // INTERACTIVE MODE
126
+ // ============================================
127
+ async function runInteractiveMode(apiKey, args, systemPrompt, tools, hookManager, skillManager, sessionStore, messages, sessionId, mcpClients, permissionMode) {
128
+ // Check if stdin is a TTY (interactive terminal)
129
+ const isInteractive = process.stdin.isTTY;
130
+ // Allow force-interactive mode for testing
131
+ const forceInteractive = process.env.CLAUDE_FORCE_INTERACTIVE === "true";
132
+ if (!isInteractive && !forceInteractive) {
133
+ console.error("Error: Interactive mode requires a TTY. Use -q for single query mode.");
134
+ console.error(" Or set CLAUDE_FORCE_INTERACTIVE=true for testing.");
135
+ return;
136
+ }
137
+ // Create a mutable session ID holder for the TUI
138
+ let currentSessionId = sessionId;
139
+ const setSessionId = (newId) => {
140
+ currentSessionId = newId;
141
+ };
142
+ // Run the Ink-based React TUI
143
+ await runInteractiveTUI({
144
+ apiKey,
145
+ model: args.model,
146
+ permissionMode,
147
+ maxTokens: args.maxTokens,
148
+ systemPrompt,
149
+ tools,
150
+ hookManager,
151
+ sessionStore,
152
+ sessionId: currentSessionId,
153
+ setSessionId,
154
+ initialMessages: messages,
155
+ workingDirectory: process.cwd(),
156
+ onExit: () => {
157
+ console.log("\n\x1b[90mGoodbye!\x1b[0m");
158
+ },
159
+ });
160
+ }
161
+ // ============================================
162
+ // RUN MAIN
163
+ // ============================================
164
+ main().catch((error) => {
165
+ console.error("Fatal error:", error);
166
+ process.exit(1);
167
+ });
@@ -0,0 +1,39 @@
1
+ /**
2
+ * CLI Argument Parsing
3
+ * Shared between CLI and TUI modes
4
+ */
5
+ import type { PermissionMode, ClaudeModel, EffortLevel } from "../../../../types/index.js";
6
+ export interface CLIArgs {
7
+ model: ClaudeModel;
8
+ permissionMode: PermissionMode;
9
+ maxTokens: number;
10
+ systemPrompt?: string;
11
+ appendSystemPrompt?: string;
12
+ configFile?: string;
13
+ mcpConfig?: string;
14
+ resumeSession?: string;
15
+ listSessions?: boolean;
16
+ teammateMode?: boolean;
17
+ agentId?: string;
18
+ agentName?: string;
19
+ teamName?: string;
20
+ agentColor?: string;
21
+ /** Enable extended thinking with effort level */
22
+ extendedThinking?: boolean;
23
+ /** Effort level: low, medium, high, max */
24
+ effort?: EffortLevel;
25
+ /** Enable interleaved thinking (default: true) */
26
+ interleaved?: boolean;
27
+ query?: string;
28
+ /** Disable progress indicators */
29
+ noProgress?: boolean;
30
+ /** Show version and exit */
31
+ showVersion?: boolean;
32
+ /** Enable debug output */
33
+ debug?: boolean;
34
+ }
35
+ export declare function parseArgs(): CLIArgs;
36
+ export declare function printHelp(): void;
37
+ export declare function getApiKey(): string | null;
38
+ export declare function requireApiKey(): string;
39
+ //# sourceMappingURL=args.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../../../packages/src/interfaces/ui/terminal/shared/args.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAQ3F,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,WAAW,CAAC;IACnB,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAMD,wBAAgB,SAAS,IAAI,OAAO,CA6FnC;AAMD,wBAAgB,SAAS,IAAI,IAAI,CAsDhC;AAMD,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAMzC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAOtC"}