@scemoon/cdh 1.0.6 → 1.0.8

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 (551) hide show
  1. package/package.json +2 -2
  2. package/run.js +2 -1
  3. package/ai-dlc-skill/SKILL.md +0 -77
  4. package/ai-dlc-skill/agents/deliver-agent.md +0 -24
  5. package/ai-dlc-skill/agents/master.md +0 -50
  6. package/ai-dlc-skill/agents/plan-agent.md +0 -23
  7. package/ai-dlc-skill/agents/understand-agent.md +0 -23
  8. package/ai-dlc-skill/agents/verify-agent.md +0 -27
  9. package/ai-dlc-skill/architecture/project-structure.md +0 -78
  10. package/ai-dlc-skill/brownfield/README.md +0 -30
  11. package/ai-dlc-skill/brownfield/generate-context.sh +0 -64
  12. package/ai-dlc-skill/brownfield/scripts/deps.sh +0 -27
  13. package/ai-dlc-skill/brownfield/scripts/discover.sh +0 -34
  14. package/ai-dlc-skill/brownfield/scripts/extract-api.sh +0 -45
  15. package/ai-dlc-skill/components/backend.md +0 -34
  16. package/ai-dlc-skill/components/desktop.md +0 -30
  17. package/ai-dlc-skill/components/mya.md +0 -29
  18. package/ai-dlc-skill/components/native.md +0 -30
  19. package/ai-dlc-skill/components/tta.md +0 -29
  20. package/ai-dlc-skill/components/web.md +0 -31
  21. package/ai-dlc-skill/components/wxa.md +0 -29
  22. package/ai-dlc-skill/contracts/README.md +0 -25
  23. package/ai-dlc-skill/core/adaptive-flow.md +0 -36
  24. package/ai-dlc-skill/core/security.md +0 -29
  25. package/ai-dlc-skill/cross-tool/cline/export.sh +0 -31
  26. package/ai-dlc-skill/cross-tool/copilot/export.sh +0 -47
  27. package/ai-dlc-skill/cross-tool/cursor/export.sh +0 -32
  28. package/ai-dlc-skill/cross-tool/export.sh +0 -22
  29. package/ai-dlc-skill/cross-tool/onecode/config.yaml.tpl +0 -17
  30. package/ai-dlc-skill/cross-tool/onecode/export-skills.sh +0 -35
  31. package/ai-dlc-skill/cross-tool/onecode/export.sh +0 -54
  32. package/ai-dlc-skill/phases/deliver/entry.md +0 -26
  33. package/ai-dlc-skill/phases/deliver/lifecycle.md +0 -185
  34. package/ai-dlc-skill/phases/deliver/prompt.md +0 -40
  35. package/ai-dlc-skill/phases/deliver/rules.md +0 -61
  36. package/ai-dlc-skill/phases/plan/entry.md +0 -25
  37. package/ai-dlc-skill/phases/plan/lifecycle.md +0 -204
  38. package/ai-dlc-skill/phases/plan/prompt.md +0 -38
  39. package/ai-dlc-skill/phases/plan/rules.md +0 -25
  40. package/ai-dlc-skill/phases/understand/entry.md +0 -26
  41. package/ai-dlc-skill/phases/understand/lifecycle.md +0 -184
  42. package/ai-dlc-skill/phases/understand/prompt.md +0 -41
  43. package/ai-dlc-skill/phases/understand/rules.md +0 -37
  44. package/ai-dlc-skill/phases/verify/entry.md +0 -26
  45. package/ai-dlc-skill/phases/verify/lifecycle.md +0 -192
  46. package/ai-dlc-skill/phases/verify/prompt.md +0 -43
  47. package/ai-dlc-skill/phases/verify/rules.md +0 -73
  48. package/ai-dlc-skill/practices/bdd.md +0 -91
  49. package/ai-dlc-skill/practices/sdd.md +0 -84
  50. package/ai-dlc-skill/practices/tdd.md +0 -95
  51. package/ai-dlc-skill/providers/README.md +0 -114
  52. package/ai-dlc-skill/providers/aliyun/deployment.yaml +0 -66
  53. package/ai-dlc-skill/providers/aliyun/preview.yaml +0 -84
  54. package/ai-dlc-skill/providers/aliyun/provider.yaml +0 -160
  55. package/ai-dlc-skill/providers/tcb/deployment.yaml +0 -69
  56. package/ai-dlc-skill/providers/tcb/preview.yaml +0 -83
  57. package/ai-dlc-skill/providers/tcb/provider.yaml +0 -172
  58. package/ai-dlc-skill/requirements.md +0 -140
  59. package/ai-dlc-skill/skill.yaml +0 -147
  60. package/ai-dlc-skill/templates/integration/CHANGELOG.md +0 -41
  61. package/ai-dlc-skill/templates/integration/asyncapi.yaml +0 -43
  62. package/ai-dlc-skill/templates/integration/contract-diff.md +0 -63
  63. package/ai-dlc-skill/templates/integration/contract-spec.md +0 -49
  64. package/ai-dlc-skill/templates/integration/openapi.yaml +0 -18
  65. package/ai-dlc-skill/templates/integration/runtime-contract.yaml +0 -36
  66. package/ai-dlc-skill/templates/plan/design.md +0 -49
  67. package/ai-dlc-skill/templates/plan/task-list.md +0 -32
  68. package/ai-dlc-skill/templates/project/README.md +0 -126
  69. package/ai-dlc-skill/templates/project/template.md +0 -119
  70. package/ai-dlc-skill/templates/understand/feature.feature +0 -23
  71. package/ai-dlc-skill/templates/understand/intent.md +0 -29
  72. package/ai-dlc-skill/templates/understand/spec-delta.md +0 -47
  73. package/ai-dlc-skill/templates/verify/test-unit.py +0 -27
  74. package/ai-dlc-skill/walkthrough/collect.sh +0 -50
  75. package/ai-dlc-skill/walkthrough/template.md +0 -54
  76. package/ai-dlc-skill/workflows/ai-dlc.yaml +0 -110
  77. package/ai-dlc-skill/workflows/deployment.yaml +0 -199
  78. package/cdh/__init__.py +0 -0
  79. package/cdh/__main__.py +0 -4
  80. package/cdh/__pycache__/__init__.cpython-314.pyc +0 -0
  81. package/cdh/__pycache__/cdh_mcp_injector.cpython-314.pyc +0 -0
  82. package/cdh/__pycache__/cdh_mcp_loader.cpython-314.pyc +0 -0
  83. package/cdh/__pycache__/cdh_mcp_manager.cpython-314.pyc +0 -0
  84. package/cdh/__pycache__/cdh_session_aggregator.cpython-314.pyc +0 -0
  85. package/cdh/__pycache__/cdh_skill_loader.cpython-314.pyc +0 -0
  86. package/cdh/__pycache__/cdh_skill_manager.cpython-314.pyc +0 -0
  87. package/cdh/__pycache__/cli.cpython-313.pyc +0 -0
  88. package/cdh/__pycache__/cli.cpython-314.pyc +0 -0
  89. package/cdh/__pycache__/scaffold.cpython-314.pyc +0 -0
  90. package/cdh/cdh_mcp_injector.py +0 -115
  91. package/cdh/cdh_mcp_loader.py +0 -67
  92. package/cdh/cdh_mcp_manager.py +0 -73
  93. package/cdh/cdh_session_aggregator.py +0 -258
  94. package/cdh/cdh_skill_manager.py +0 -105
  95. package/cdh/cli.py +0 -807
  96. package/cdh/scaffold.py +0 -728
  97. package/onecode/__init__.py +0 -1
  98. package/onecode/__main__.py +0 -4
  99. package/onecode/__pycache__/__init__.cpython-314.pyc +0 -0
  100. package/onecode/__pycache__/cli.cpython-314.pyc +0 -0
  101. package/onecode/__pycache__/commands.cpython-314.pyc +0 -0
  102. package/onecode/__pycache__/config.cpython-314.pyc +0 -0
  103. package/onecode/__pycache__/config_screen.cpython-314.pyc +0 -0
  104. package/onecode/__pycache__/migrate.cpython-314.pyc +0 -0
  105. package/onecode/agent/__init__.py +0 -0
  106. package/onecode/agent/__pycache__/__init__.cpython-314.pyc +0 -0
  107. package/onecode/agent/__pycache__/cdh_loader.cpython-314.pyc +0 -0
  108. package/onecode/agent/__pycache__/context.cpython-314.pyc +0 -0
  109. package/onecode/agent/__pycache__/engine.cpython-314.pyc +0 -0
  110. package/onecode/agent/__pycache__/hooks.cpython-314.pyc +0 -0
  111. package/onecode/agent/__pycache__/onecode_agent_acp.cpython-314.pyc +0 -0
  112. package/onecode/agent/__pycache__/permissions.cpython-314.pyc +0 -0
  113. package/onecode/agent/__pycache__/permissions_store.cpython-314.pyc +0 -0
  114. package/onecode/agent/__pycache__/project_doc.cpython-314.pyc +0 -0
  115. package/onecode/agent/__pycache__/session.cpython-314.pyc +0 -0
  116. package/onecode/agent/agents/__init__.py +0 -29
  117. package/onecode/agent/agents/__pycache__/__init__.cpython-314.pyc +0 -0
  118. package/onecode/agent/agents/__pycache__/types.cpython-314.pyc +0 -0
  119. package/onecode/agent/agents/types.py +0 -589
  120. package/onecode/agent/attachments.py +0 -112
  121. package/onecode/agent/cdh_loader.py +0 -267
  122. package/onecode/agent/context.py +0 -343
  123. package/onecode/agent/engine.py +0 -2700
  124. package/onecode/agent/hooks.py +0 -86
  125. package/onecode/agent/onecode_agent_acp.py +0 -2743
  126. package/onecode/agent/onecode_agent_acp.py.bak +0 -2447
  127. package/onecode/agent/permissions.py +0 -150
  128. package/onecode/agent/permissions_store.py +0 -62
  129. package/onecode/agent/project_doc.py +0 -19
  130. package/onecode/agent/session.py +0 -195
  131. package/onecode/agent/snapshot.py +0 -144
  132. package/onecode/agent/tools/__init__.py +0 -17
  133. package/onecode/agent/tools/__pycache__/__init__.cpython-314.pyc +0 -0
  134. package/onecode/agent/tools/__pycache__/agent_tools.cpython-314.pyc +0 -0
  135. package/onecode/agent/tools/__pycache__/apply_patch_tool.cpython-314.pyc +0 -0
  136. package/onecode/agent/tools/__pycache__/bash_tool.cpython-314.pyc +0 -0
  137. package/onecode/agent/tools/__pycache__/communication_tools.cpython-314.pyc +0 -0
  138. package/onecode/agent/tools/__pycache__/config_tool.cpython-314.pyc +0 -0
  139. package/onecode/agent/tools/__pycache__/cron_tools.cpython-314.pyc +0 -0
  140. package/onecode/agent/tools/__pycache__/errors.cpython-314.pyc +0 -0
  141. package/onecode/agent/tools/__pycache__/file_ops.cpython-314.pyc +0 -0
  142. package/onecode/agent/tools/__pycache__/file_tools.cpython-314.pyc +0 -0
  143. package/onecode/agent/tools/__pycache__/git_tools.cpython-314.pyc +0 -0
  144. package/onecode/agent/tools/__pycache__/lsp_tools.cpython-314.pyc +0 -0
  145. package/onecode/agent/tools/__pycache__/mcp_tools.cpython-314.pyc +0 -0
  146. package/onecode/agent/tools/__pycache__/permission_handler.cpython-314.pyc +0 -0
  147. package/onecode/agent/tools/__pycache__/permissions.cpython-314.pyc +0 -0
  148. package/onecode/agent/tools/__pycache__/protocol.cpython-314.pyc +0 -0
  149. package/onecode/agent/tools/__pycache__/registry.cpython-314.pyc +0 -0
  150. package/onecode/agent/tools/__pycache__/sandbox.cpython-314.pyc +0 -0
  151. package/onecode/agent/tools/__pycache__/schema_validation.cpython-314.pyc +0 -0
  152. package/onecode/agent/tools/__pycache__/skill_tools.cpython-314.pyc +0 -0
  153. package/onecode/agent/tools/__pycache__/todo_tools.cpython-314.pyc +0 -0
  154. package/onecode/agent/tools/__pycache__/web_tools.cpython-314.pyc +0 -0
  155. package/onecode/agent/tools/agent_tools.py +0 -132
  156. package/onecode/agent/tools/apply_patch_tool.py +0 -138
  157. package/onecode/agent/tools/bash_tool.py +0 -111
  158. package/onecode/agent/tools/communication_tools.py +0 -148
  159. package/onecode/agent/tools/config_tool.py +0 -130
  160. package/onecode/agent/tools/cron_tools.py +0 -178
  161. package/onecode/agent/tools/errors.py +0 -17
  162. package/onecode/agent/tools/file_ops.py +0 -221
  163. package/onecode/agent/tools/file_tools.py +0 -225
  164. package/onecode/agent/tools/git_tools.py +0 -88
  165. package/onecode/agent/tools/lsp_tools.py +0 -404
  166. package/onecode/agent/tools/mcp_tools.py +0 -127
  167. package/onecode/agent/tools/permission_handler.py +0 -46
  168. package/onecode/agent/tools/permissions.py +0 -77
  169. package/onecode/agent/tools/protocol.py +0 -20
  170. package/onecode/agent/tools/registry.py +0 -201
  171. package/onecode/agent/tools/sandbox.py +0 -358
  172. package/onecode/agent/tools/schema_validation.py +0 -100
  173. package/onecode/agent/tools/skill_tools.py +0 -52
  174. package/onecode/agent/tools/todo_tools.py +0 -207
  175. package/onecode/agent/tools/web_tools.py +0 -169
  176. package/onecode/builtin_skills/agent-browser/SKILL.md +0 -212
  177. package/onecode/builtin_skills/agent-browser/skill.yaml +0 -8
  178. package/onecode/builtin_skills/git/SKILL.md +0 -64
  179. package/onecode/builtin_skills/git/skill.yaml +0 -7
  180. package/onecode/builtin_skills/shell/SKILL.md +0 -58
  181. package/onecode/builtin_skills/shell/skill.yaml +0 -8
  182. package/onecode/builtin_skills/skill-creator/SKILL.md +0 -106
  183. package/onecode/builtin_skills/skill-creator/skill.yaml +0 -8
  184. package/onecode/cli.py +0 -935
  185. package/onecode/cloud/__init__.py +0 -0
  186. package/onecode/cloud/base.py +0 -20
  187. package/onecode/codebase/__init__.py +0 -69
  188. package/onecode/codebase/__pycache__/__init__.cpython-314.pyc +0 -0
  189. package/onecode/codebase/__pycache__/chunker.cpython-314.pyc +0 -0
  190. package/onecode/codebase/__pycache__/indexer.cpython-314.pyc +0 -0
  191. package/onecode/codebase/__pycache__/retriever.cpython-314.pyc +0 -0
  192. package/onecode/codebase/__pycache__/storage.cpython-314.pyc +0 -0
  193. package/onecode/codebase/__pycache__/tools.cpython-314.pyc +0 -0
  194. package/onecode/codebase/chunker.py +0 -125
  195. package/onecode/codebase/indexer.py +0 -149
  196. package/onecode/codebase/retriever.py +0 -203
  197. package/onecode/codebase/storage.py +0 -131
  198. package/onecode/codebase/tools.py +0 -59
  199. package/onecode/commands.py +0 -596
  200. package/onecode/config.py +0 -314
  201. package/onecode/config_screen.py +0 -600
  202. package/onecode/cron/__init__.py +0 -3
  203. package/onecode/lsp/__init__.py +0 -3
  204. package/onecode/mcp/__init__.py +0 -4
  205. package/onecode/mcp/__pycache__/__init__.cpython-314.pyc +0 -0
  206. package/onecode/mcp/__pycache__/client.cpython-314.pyc +0 -0
  207. package/onecode/mcp/__pycache__/manager.cpython-314.pyc +0 -0
  208. package/onecode/mcp/client.py +0 -193
  209. package/onecode/mcp/manager.py +0 -190
  210. package/onecode/memory/__init__.py +0 -49
  211. package/onecode/memory/__pycache__/__init__.cpython-314.pyc +0 -0
  212. package/onecode/memory/__pycache__/backend.cpython-314.pyc +0 -0
  213. package/onecode/memory/__pycache__/offload.cpython-314.pyc +0 -0
  214. package/onecode/memory/__pycache__/pyramid.cpython-314.pyc +0 -0
  215. package/onecode/memory/__pycache__/recall.cpython-314.pyc +0 -0
  216. package/onecode/memory/__pycache__/symbolic.cpython-314.pyc +0 -0
  217. package/onecode/memory/backend.py +0 -159
  218. package/onecode/memory/pyramid.py +0 -133
  219. package/onecode/memory/recall.py +0 -203
  220. package/onecode/migrate.py +0 -122
  221. package/onecode/models/__init__.py +0 -4
  222. package/onecode/models/__pycache__/__init__.cpython-314.pyc +0 -0
  223. package/onecode/models/__pycache__/errors.cpython-314.pyc +0 -0
  224. package/onecode/models/__pycache__/messages.cpython-314.pyc +0 -0
  225. package/onecode/models/__pycache__/provider.cpython-314.pyc +0 -0
  226. package/onecode/models/__pycache__/registry.cpython-314.pyc +0 -0
  227. package/onecode/models/errors.py +0 -104
  228. package/onecode/models/messages.py +0 -739
  229. package/onecode/models/provider.py +0 -699
  230. package/onecode/models/providers/__init__.py +0 -17
  231. package/onecode/models/providers/__pycache__/__init__.cpython-314.pyc +0 -0
  232. package/onecode/models/providers/__pycache__/anthropic_provider.cpython-314.pyc +0 -0
  233. package/onecode/models/providers/__pycache__/deepseek_provider.cpython-314.pyc +0 -0
  234. package/onecode/models/providers/__pycache__/glm_provider.cpython-314.pyc +0 -0
  235. package/onecode/models/providers/__pycache__/minimax_provider.cpython-314.pyc +0 -0
  236. package/onecode/models/providers/__pycache__/minimaxi_provider.cpython-314.pyc +0 -0
  237. package/onecode/models/providers/__pycache__/ollama_provider.cpython-314.pyc +0 -0
  238. package/onecode/models/providers/__pycache__/openai_provider.cpython-314.pyc +0 -0
  239. package/onecode/models/providers/anthropic_provider.py +0 -273
  240. package/onecode/models/providers/deepseek_provider.py +0 -212
  241. package/onecode/models/providers/glm_provider.py +0 -195
  242. package/onecode/models/providers/minimax_provider.py +0 -158
  243. package/onecode/models/providers/minimaxi_provider.py +0 -417
  244. package/onecode/models/providers/ollama_provider.py +0 -100
  245. package/onecode/models/providers/openai_provider.py +0 -237
  246. package/onecode/models/registry.py +0 -212
  247. package/onecode/server/__init__.py +0 -3
  248. package/onecode/server/app.py +0 -224
  249. package/onecode/skills/__init__.py +0 -11
  250. package/onecode/skills/__pycache__/__init__.cpython-314.pyc +0 -0
  251. package/onecode/skills/__pycache__/argument_substitution.cpython-314.pyc +0 -0
  252. package/onecode/skills/__pycache__/bootstrap.cpython-314.pyc +0 -0
  253. package/onecode/skills/__pycache__/create.cpython-314.pyc +0 -0
  254. package/onecode/skills/__pycache__/frontmatter.cpython-314.pyc +0 -0
  255. package/onecode/skills/__pycache__/loader.cpython-314.pyc +0 -0
  256. package/onecode/skills/__pycache__/manager.cpython-314.pyc +0 -0
  257. package/onecode/skills/__pycache__/model.cpython-314.pyc +0 -0
  258. package/onecode/skills/argument_substitution.py +0 -38
  259. package/onecode/skills/bootstrap.py +0 -124
  260. package/onecode/skills/create.py +0 -56
  261. package/onecode/skills/frontmatter.py +0 -33
  262. package/onecode/skills/loader.py +0 -139
  263. package/onecode/skills/manager.py +0 -75
  264. package/onecode/skills/model.py +0 -43
  265. package/onecode/storage/__init__.py +0 -0
  266. package/onecode/storage/activity.py +0 -63
  267. package/onecode/storage/project.py +0 -54
  268. package/onecode/storage/session.py +0 -112
  269. package/onecode/tasks/__init__.py +0 -26
  270. package/onecode/tasks/manager.py +0 -232
  271. package/onecode/tasks/models.py +0 -240
  272. package/onecode/trace/__init__.py +0 -0
  273. package/onecode/trace/tracer.py +0 -173
  274. package/onecode/utils/__init__.py +0 -0
  275. package/onecode/utils/helpers.py +0 -20
  276. package/pyproject.toml +0 -74
  277. package/tui/__init__.py +0 -46
  278. package/tui/__main__.py +0 -4
  279. package/tui/__pycache__/__init__.cpython-314.pyc +0 -0
  280. package/tui/__pycache__/_loop.cpython-314.pyc +0 -0
  281. package/tui/__pycache__/_path_fuzzy_search.cpython-314.pyc +0 -0
  282. package/tui/__pycache__/_path_match.cpython-314.pyc +0 -0
  283. package/tui/__pycache__/about.cpython-314.pyc +0 -0
  284. package/tui/__pycache__/agent.cpython-314.pyc +0 -0
  285. package/tui/__pycache__/agent_schema.cpython-314.pyc +0 -0
  286. package/tui/__pycache__/agents.cpython-314.pyc +0 -0
  287. package/tui/__pycache__/answer.cpython-314.pyc +0 -0
  288. package/tui/__pycache__/app.cpython-313.pyc +0 -0
  289. package/tui/__pycache__/app.cpython-314.pyc +0 -0
  290. package/tui/__pycache__/atomic.cpython-314.pyc +0 -0
  291. package/tui/__pycache__/complete.cpython-314.pyc +0 -0
  292. package/tui/__pycache__/constants.cpython-314.pyc +0 -0
  293. package/tui/__pycache__/conversation_markdown.cpython-314.pyc +0 -0
  294. package/tui/__pycache__/danger.cpython-314.pyc +0 -0
  295. package/tui/__pycache__/db.cpython-314.pyc +0 -0
  296. package/tui/__pycache__/dec.cpython-314.pyc +0 -0
  297. package/tui/__pycache__/directory.cpython-314.pyc +0 -0
  298. package/tui/__pycache__/directory_suggester.cpython-314.pyc +0 -0
  299. package/tui/__pycache__/directory_watcher.cpython-314.pyc +0 -0
  300. package/tui/__pycache__/format_path.cpython-314.pyc +0 -0
  301. package/tui/__pycache__/fuzzy.cpython-314.pyc +0 -0
  302. package/tui/__pycache__/fuzzy_index.cpython-314.pyc +0 -0
  303. package/tui/__pycache__/history.cpython-314.pyc +0 -0
  304. package/tui/__pycache__/jsonrpc.cpython-314.pyc +0 -0
  305. package/tui/__pycache__/menus.cpython-314.pyc +0 -0
  306. package/tui/__pycache__/message_log.cpython-314.pyc +0 -0
  307. package/tui/__pycache__/messages.cpython-314.pyc +0 -0
  308. package/tui/__pycache__/path_complete.cpython-314.pyc +0 -0
  309. package/tui/__pycache__/path_filter.cpython-314.pyc +0 -0
  310. package/tui/__pycache__/paths.cpython-314.pyc +0 -0
  311. package/tui/__pycache__/pill.cpython-314.pyc +0 -0
  312. package/tui/__pycache__/platform_commands.cpython-314.pyc +0 -0
  313. package/tui/__pycache__/protocol.cpython-314.pyc +0 -0
  314. package/tui/__pycache__/session_tracker.cpython-314.pyc +0 -0
  315. package/tui/__pycache__/settings.cpython-314.pyc +0 -0
  316. package/tui/__pycache__/settings_schema.cpython-314.pyc +0 -0
  317. package/tui/__pycache__/shell.cpython-314.pyc +0 -0
  318. package/tui/__pycache__/shell_read.cpython-314.pyc +0 -0
  319. package/tui/__pycache__/slash_command.cpython-314.pyc +0 -0
  320. package/tui/__pycache__/version.cpython-314.pyc +0 -0
  321. package/tui/_loop.py +0 -86
  322. package/tui/_path_fuzzy_search.py +0 -48
  323. package/tui/_path_match.py +0 -141
  324. package/tui/about.py +0 -95
  325. package/tui/acp/__pycache__/agent.cpython-314.pyc +0 -0
  326. package/tui/acp/__pycache__/api.cpython-314.pyc +0 -0
  327. package/tui/acp/__pycache__/encode_tool_call_id.cpython-314.pyc +0 -0
  328. package/tui/acp/__pycache__/messages.cpython-314.pyc +0 -0
  329. package/tui/acp/__pycache__/prompt.cpython-314.pyc +0 -0
  330. package/tui/acp/__pycache__/protocol.cpython-314.pyc +0 -0
  331. package/tui/acp/agent.py +0 -1002
  332. package/tui/acp/api.py +0 -73
  333. package/tui/acp/encode_tool_call_id.py +0 -12
  334. package/tui/acp/messages.py +0 -203
  335. package/tui/acp/prompt.py +0 -53
  336. package/tui/acp/protocol.py +0 -499
  337. package/tui/agent.py +0 -70
  338. package/tui/agent_schema.py +0 -76
  339. package/tui/agents.py +0 -46
  340. package/tui/ansi/__init__.py +0 -1
  341. package/tui/ansi/__pycache__/__init__.cpython-314.pyc +0 -0
  342. package/tui/ansi/__pycache__/_ansi.cpython-314.pyc +0 -0
  343. package/tui/ansi/__pycache__/_ansi_colors.cpython-314.pyc +0 -0
  344. package/tui/ansi/__pycache__/_control_codes.cpython-314.pyc +0 -0
  345. package/tui/ansi/__pycache__/_keys.cpython-314.pyc +0 -0
  346. package/tui/ansi/__pycache__/_sgr_styles.cpython-314.pyc +0 -0
  347. package/tui/ansi/__pycache__/_stream_parser.cpython-314.pyc +0 -0
  348. package/tui/ansi/_ansi.py +0 -1689
  349. package/tui/ansi/_ansi_colors.py +0 -264
  350. package/tui/ansi/_control_codes.py +0 -37
  351. package/tui/ansi/_keys.py +0 -251
  352. package/tui/ansi/_sgr_styles.py +0 -64
  353. package/tui/ansi/_stream_parser.py +0 -418
  354. package/tui/answer.py +0 -12
  355. package/tui/app.py +0 -1266
  356. package/tui/atomic.py +0 -37
  357. package/tui/cli.py +0 -313
  358. package/tui/code_analyze.py +0 -27
  359. package/tui/complete.py +0 -38
  360. package/tui/constants.py +0 -61
  361. package/tui/conversation_markdown.py +0 -30
  362. package/tui/danger.py +0 -372
  363. package/tui/data/agents/ampcode.com.toml +0 -52
  364. package/tui/data/agents/augmentcode.com.toml +0 -41
  365. package/tui/data/agents/cdh.cloud-dev-harness.toml +0 -23
  366. package/tui/data/agents/claude.com.toml +0 -41
  367. package/tui/data/agents/copilot.github.com.toml +0 -29
  368. package/tui/data/agents/crowai.dev.toml +0 -36
  369. package/tui/data/agents/cursor.com.toml +0 -38
  370. package/tui/data/agents/deepagents.langchain.com +0 -34
  371. package/tui/data/agents/docker.com.toml +0 -60
  372. package/tui/data/agents/geminicli.com.toml +0 -28
  373. package/tui/data/agents/goose.ai.toml +0 -52
  374. package/tui/data/agents/inference.huggingface.co.toml +0 -41
  375. package/tui/data/agents/kimi.com.toml +0 -35
  376. package/tui/data/agents/kiro.dev.toml +0 -43
  377. package/tui/data/agents/onecode.dev.toml +0 -22
  378. package/tui/data/agents/openai.com.toml +0 -53
  379. package/tui/data/agents/openclaw.ai.toml +0 -37
  380. package/tui/data/agents/opencode.ai.toml +0 -39
  381. package/tui/data/agents/openhands.dev.toml +0 -46
  382. package/tui/data/agents/stakpak.dev.toml +0 -62
  383. package/tui/data/agents/vibe.mistral.ai.toml +0 -31
  384. package/tui/data/agents/vtcode.dev.toml +0 -63
  385. package/tui/data/images/frog.png +0 -0
  386. package/tui/data/sounds/question.wav +0 -0
  387. package/tui/data/sounds/turn-over.wav +0 -0
  388. package/tui/db.py +0 -213
  389. package/tui/dec.py +0 -332
  390. package/tui/directory.py +0 -234
  391. package/tui/directory_suggester.py +0 -93
  392. package/tui/directory_watcher.py +0 -231
  393. package/tui/format_path.py +0 -25
  394. package/tui/fuzzy.py +0 -140
  395. package/tui/fuzzy_index.py +0 -275
  396. package/tui/gist.py +0 -33
  397. package/tui/history.py +0 -138
  398. package/tui/jsonrpc.py +0 -578
  399. package/tui/menus.py +0 -14
  400. package/tui/message_log.py +0 -69
  401. package/tui/messages.py +0 -144
  402. package/tui/option_content.py +0 -51
  403. package/tui/os.py +0 -0
  404. package/tui/path_complete.py +0 -217
  405. package/tui/path_filter.py +0 -124
  406. package/tui/paths.py +0 -87
  407. package/tui/pill.py +0 -23
  408. package/tui/platform_commands.py +0 -52
  409. package/tui/prompt/__pycache__/extract.cpython-314.pyc +0 -0
  410. package/tui/prompt/__pycache__/resource.cpython-314.pyc +0 -0
  411. package/tui/prompt/extract.py +0 -19
  412. package/tui/prompt/resource.py +0 -68
  413. package/tui/protocol.py +0 -28
  414. package/tui/screens/__init__.py +0 -0
  415. package/tui/screens/__pycache__/__init__.cpython-314.pyc +0 -0
  416. package/tui/screens/__pycache__/agent_modal.cpython-314.pyc +0 -0
  417. package/tui/screens/__pycache__/component_picker.cpython-314.pyc +0 -0
  418. package/tui/screens/__pycache__/diff_screen.cpython-314.pyc +0 -0
  419. package/tui/screens/__pycache__/log.cpython-314.pyc +0 -0
  420. package/tui/screens/__pycache__/main.cpython-313.pyc +0 -0
  421. package/tui/screens/__pycache__/main.cpython-314.pyc +0 -0
  422. package/tui/screens/__pycache__/permissions.cpython-314.pyc +0 -0
  423. package/tui/screens/__pycache__/projects_app.cpython-314.pyc +0 -0
  424. package/tui/screens/__pycache__/projects_screen.cpython-314.pyc +0 -0
  425. package/tui/screens/__pycache__/sessions.cpython-314.pyc +0 -0
  426. package/tui/screens/__pycache__/store.cpython-314.pyc +0 -0
  427. package/tui/screens/__pycache__/tool_content_screen.cpython-314.pyc +0 -0
  428. package/tui/screens/action_modal.py +0 -94
  429. package/tui/screens/agent_modal.py +0 -175
  430. package/tui/screens/command_edit_modal.py +0 -74
  431. package/tui/screens/component_picker.py +0 -168
  432. package/tui/screens/diff_screen.py +0 -84
  433. package/tui/screens/log.py +0 -553
  434. package/tui/screens/main.py +0 -385
  435. package/tui/screens/main.tcss +0 -655
  436. package/tui/screens/permissions.py +0 -404
  437. package/tui/screens/permissions.tcss +0 -72
  438. package/tui/screens/projects.tcss +0 -80
  439. package/tui/screens/projects_app.py +0 -347
  440. package/tui/screens/projects_screen.py +0 -284
  441. package/tui/screens/session_resume_modal.py +0 -172
  442. package/tui/screens/session_resume_modal.tcss +0 -35
  443. package/tui/screens/sessions.py +0 -164
  444. package/tui/screens/sessions.tcss +0 -119
  445. package/tui/screens/settings.py +0 -254
  446. package/tui/screens/settings.tcss +0 -101
  447. package/tui/screens/store.py +0 -500
  448. package/tui/screens/store.tcss +0 -274
  449. package/tui/screens/tool_content_screen.py +0 -59
  450. package/tui/session_tracker.py +0 -123
  451. package/tui/settings.py +0 -353
  452. package/tui/settings_schema.py +0 -431
  453. package/tui/shell.py +0 -304
  454. package/tui/shell_read.py +0 -42
  455. package/tui/slash_command.py +0 -34
  456. package/tui/tui.tcss +0 -246
  457. package/tui/twitter.py +0 -38
  458. package/tui/version.py +0 -80
  459. package/tui/visuals/__init__.py +0 -0
  460. package/tui/visuals/__pycache__/__init__.cpython-314.pyc +0 -0
  461. package/tui/visuals/__pycache__/columns.cpython-314.pyc +0 -0
  462. package/tui/visuals/columns.py +0 -272
  463. package/tui/widgets/__init__.py +0 -0
  464. package/tui/widgets/__pycache__/__init__.cpython-314.pyc +0 -0
  465. package/tui/widgets/__pycache__/acp_content.cpython-314.pyc +0 -0
  466. package/tui/widgets/__pycache__/agent_response.cpython-314.pyc +0 -0
  467. package/tui/widgets/__pycache__/agent_thought.cpython-314.pyc +0 -0
  468. package/tui/widgets/__pycache__/ask_user.cpython-314.pyc +0 -0
  469. package/tui/widgets/__pycache__/condensed_path.cpython-314.pyc +0 -0
  470. package/tui/widgets/__pycache__/context_stats.cpython-314.pyc +0 -0
  471. package/tui/widgets/__pycache__/conversation.cpython-314.pyc +0 -0
  472. package/tui/widgets/__pycache__/diff_view.cpython-314.pyc +0 -0
  473. package/tui/widgets/__pycache__/directory_input.cpython-314.pyc +0 -0
  474. package/tui/widgets/__pycache__/flash.cpython-314.pyc +0 -0
  475. package/tui/widgets/__pycache__/future_text.cpython-314.pyc +0 -0
  476. package/tui/widgets/__pycache__/grid_select.cpython-314.pyc +0 -0
  477. package/tui/widgets/__pycache__/highlighted_textarea.cpython-314.pyc +0 -0
  478. package/tui/widgets/__pycache__/load_more.cpython-314.pyc +0 -0
  479. package/tui/widgets/__pycache__/mandelbrot.cpython-314.pyc +0 -0
  480. package/tui/widgets/__pycache__/markdown_note.cpython-314.pyc +0 -0
  481. package/tui/widgets/__pycache__/menu.cpython-314.pyc +0 -0
  482. package/tui/widgets/__pycache__/modified_files.cpython-314.pyc +0 -0
  483. package/tui/widgets/__pycache__/non_selectable_label.cpython-314.pyc +0 -0
  484. package/tui/widgets/__pycache__/note.cpython-314.pyc +0 -0
  485. package/tui/widgets/__pycache__/path_search.cpython-314.pyc +0 -0
  486. package/tui/widgets/__pycache__/plan.cpython-314.pyc +0 -0
  487. package/tui/widgets/__pycache__/project_directory_tree.cpython-314.pyc +0 -0
  488. package/tui/widgets/__pycache__/project_grid_select.cpython-314.pyc +0 -0
  489. package/tui/widgets/__pycache__/project_summary.cpython-314.pyc +0 -0
  490. package/tui/widgets/__pycache__/prompt.cpython-314.pyc +0 -0
  491. package/tui/widgets/__pycache__/question.cpython-314.pyc +0 -0
  492. package/tui/widgets/__pycache__/session_grid_select.cpython-314.pyc +0 -0
  493. package/tui/widgets/__pycache__/session_summary.cpython-314.pyc +0 -0
  494. package/tui/widgets/__pycache__/session_tabs.cpython-314.pyc +0 -0
  495. package/tui/widgets/__pycache__/shell_result.cpython-314.pyc +0 -0
  496. package/tui/widgets/__pycache__/shell_terminal.cpython-314.pyc +0 -0
  497. package/tui/widgets/__pycache__/side_bar.cpython-314.pyc +0 -0
  498. package/tui/widgets/__pycache__/slash_complete.cpython-314.pyc +0 -0
  499. package/tui/widgets/__pycache__/strike_text.cpython-314.pyc +0 -0
  500. package/tui/widgets/__pycache__/subagent.cpython-314.pyc +0 -0
  501. package/tui/widgets/__pycache__/subagent_screen.cpython-314.pyc +0 -0
  502. package/tui/widgets/__pycache__/terminal.cpython-314.pyc +0 -0
  503. package/tui/widgets/__pycache__/throbber.cpython-314.pyc +0 -0
  504. package/tui/widgets/__pycache__/tool_call.cpython-314.pyc +0 -0
  505. package/tui/widgets/__pycache__/user_input.cpython-314.pyc +0 -0
  506. package/tui/widgets/acp_content.py +0 -70
  507. package/tui/widgets/agent_response.py +0 -76
  508. package/tui/widgets/agent_thought.py +0 -167
  509. package/tui/widgets/ask_user.py +0 -264
  510. package/tui/widgets/command_pane.py +0 -223
  511. package/tui/widgets/condensed_path.py +0 -115
  512. package/tui/widgets/context_stats.py +0 -66
  513. package/tui/widgets/conversation.py +0 -2641
  514. package/tui/widgets/danger_warning.py +0 -65
  515. package/tui/widgets/diff_view.py +0 -69
  516. package/tui/widgets/directory_input.py +0 -8
  517. package/tui/widgets/flash.py +0 -81
  518. package/tui/widgets/future_text.py +0 -126
  519. package/tui/widgets/grid_select.py +0 -234
  520. package/tui/widgets/highlighted_textarea.py +0 -180
  521. package/tui/widgets/load_more.py +0 -24
  522. package/tui/widgets/mandelbrot.py +0 -294
  523. package/tui/widgets/markdown_note.py +0 -13
  524. package/tui/widgets/menu.py +0 -147
  525. package/tui/widgets/modified_files.py +0 -306
  526. package/tui/widgets/non_selectable_label.py +0 -5
  527. package/tui/widgets/note.py +0 -18
  528. package/tui/widgets/path_search.py +0 -492
  529. package/tui/widgets/plan.py +0 -285
  530. package/tui/widgets/project_directory_tree.py +0 -102
  531. package/tui/widgets/project_grid_select.py +0 -64
  532. package/tui/widgets/project_summary.py +0 -33
  533. package/tui/widgets/prompt.py +0 -795
  534. package/tui/widgets/question.py +0 -360
  535. package/tui/widgets/session_grid_select.py +0 -230
  536. package/tui/widgets/session_summary.py +0 -115
  537. package/tui/widgets/session_tabs.py +0 -188
  538. package/tui/widgets/shell_result.py +0 -35
  539. package/tui/widgets/shell_terminal.py +0 -40
  540. package/tui/widgets/side_bar.py +0 -124
  541. package/tui/widgets/slash_complete.py +0 -235
  542. package/tui/widgets/strike_text.py +0 -70
  543. package/tui/widgets/subagent.py +0 -287
  544. package/tui/widgets/subagent_screen.py +0 -709
  545. package/tui/widgets/terminal.py +0 -576
  546. package/tui/widgets/terminal_tool.py +0 -360
  547. package/tui/widgets/throbber.py +0 -100
  548. package/tui/widgets/tool_call.py +0 -398
  549. package/tui/widgets/user_input.py +0 -23
  550. package/tui/widgets/version.py +0 -5
  551. package/tui/widgets/welcome.py +0 -31
@@ -1,499 +0,0 @@
1
- from typing_extensions import Any, TypedDict, Required, Literal
2
-
3
-
4
- class SchemaDict(TypedDict, total=False, extra_items=Any):
5
- pass
6
-
7
-
8
- # ---------------------------------------------------------------------------------------
9
- # Types
10
-
11
-
12
- # https://agentclientprotocol.com/rfds/session-usage#context-window-and-cost-via-session/update
13
- class Cost(TypedDict, total=False, extra_items=Any):
14
- amount: float
15
- currency: str
16
-
17
-
18
- class FileSystemCapability(SchemaDict, total=False, extra_items=Any):
19
- readTextFile: bool
20
- writeTextFile: bool
21
-
22
-
23
- # https://agentclientprotocol.com/protocol/schema#clientcapabilities
24
- class ClientCapabilities(SchemaDict, total=False, extra_items=Any):
25
- fs: FileSystemCapability
26
- terminal: bool
27
-
28
-
29
- # https://agentclientprotocol.com/protocol/schema#implementation
30
- class Implementation(SchemaDict, total=False, extra_items=Any):
31
- name: Required[str]
32
- title: str | None
33
- version: Required[str]
34
-
35
-
36
- # https://agentclientprotocol.com/protocol/schema#promptcapabilities
37
- class PromptCapabilities(SchemaDict, total=False, extra_items=Any):
38
- audio: bool
39
- embeddedContent: bool
40
- image: bool
41
-
42
-
43
- # https://agentclientprotocol.com/protocol/schema#agentcapabilities
44
- class AgentCapabilities(SchemaDict, total=False, extra_items=Any):
45
- loadSession: bool
46
- promptCapabilities: PromptCapabilities
47
-
48
-
49
- class AuthMethod(SchemaDict, total=False, extra_items=Any):
50
- description: str | None
51
- id: Required[str]
52
- name: Required[str]
53
-
54
-
55
- # https://agentclientprotocol.com/protocol/schema#envvariable
56
- class EnvVariable(SchemaDict, total=False, extra_items=Any):
57
- _meta: dict
58
- name: Required[str]
59
- value: Required[str]
60
-
61
-
62
- # https://agentclientprotocol.com/protocol/schema#terminalexitstatus
63
- class TerminalExitStatus(SchemaDict, total=False, extra_items=Any):
64
- _meta: dict
65
- exitCode: int | None
66
- signal: str | None
67
-
68
-
69
- # https://agentclientprotocol.com/protocol/schema#mcpserver
70
- class McpServer(SchemaDict, total=False, extra_items=Any):
71
- args: list[str]
72
- command: str
73
- env: list[EnvVariable]
74
- name: str
75
-
76
-
77
- # https://modelcontextprotocol.io/specification/2025-06-18/server/resources#annotations
78
- class Annotations(SchemaDict, total=False, extra_items=Any):
79
- audience: list[str]
80
- priority: float
81
- lastModified: str
82
-
83
-
84
- class TextContent(SchemaDict, total=False, extra_items=Any):
85
- type: Required[str]
86
- text: Required[str]
87
- annotations: Annotations
88
-
89
-
90
- class ImageContent(SchemaDict, total=False, extra_items=Any):
91
- type: Required[str]
92
- data: Required[str]
93
- mimeType: Required[str]
94
- url: str
95
- annotations: Annotations
96
-
97
-
98
- class AudioContent(SchemaDict, total=False, extra_items=Any):
99
- type: Required[str]
100
- data: Required[str]
101
- mimeType: Required[str]
102
- Annotations: Annotations
103
-
104
-
105
- class EmbeddedResourceText(SchemaDict, total=False, extra_items=Any):
106
- uri: Required[str]
107
- text: Required[str]
108
- mimeType: str
109
-
110
-
111
- class EmbeddedResourceBlob(SchemaDict, total=False, extra_items=Any):
112
- uri: Required[str]
113
- blob: Required[str]
114
- mimeType: str
115
-
116
-
117
- # https://agentclientprotocol.com/protocol/content#embedded-resource
118
- class EmbeddedResourceContent(SchemaDict, total=False, extra_items=Any):
119
- type: Required[str]
120
- resource: EmbeddedResourceText | EmbeddedResourceBlob
121
-
122
-
123
- class ResourceLinkContent(SchemaDict, total=False, extra_items=Any):
124
- annotations: Annotations | None
125
- description: str | None
126
- mimeType: str | None
127
- name: Required[str]
128
- size: int | None
129
- title: str | None
130
- type: Required[str]
131
- uri: Required[str]
132
-
133
-
134
- # https://agentclientprotocol.com/protocol/schema#contentblock
135
- type ContentBlock = (
136
- TextContent
137
- | ImageContent
138
- | AudioContent
139
- | EmbeddedResourceContent
140
- | ResourceLinkContent
141
- )
142
-
143
-
144
- # https://agentclientprotocol.com/protocol/schema#param-user-message-chunk
145
- class UserMessageChunk(SchemaDict, total=False, extra_items=Any):
146
- content: Required[ContentBlock]
147
- sessionUpdate: Required[Literal["user_message_chunk"]]
148
-
149
-
150
- class AgentMessageChunk(SchemaDict, total=False, extra_items=Any):
151
- content: Required[ContentBlock]
152
- sessionUpdate: Required[Literal["agent_message_chunk"]]
153
-
154
-
155
- class AgentThoughtChunk(SchemaDict, total=False, extra_items=Any):
156
- content: Required[ContentBlock]
157
- sessionUpdate: Required[Literal["agent_thought_chunk"]]
158
-
159
-
160
- class ToolCallContentContent(SchemaDict, total=False, extra_items=Any):
161
- content: Required[ContentBlock]
162
- type: Required[Literal["content"]]
163
-
164
-
165
- # https://agentclientprotocol.com/protocol/schema#param-diff
166
- class ToolCallContentDiff(SchemaDict, total=False, extra_items=Any):
167
- newText: Required[str]
168
- oldText: str | None
169
- path: Required[str]
170
- type: Required[Literal["diff"]]
171
-
172
-
173
- class ToolCallContentTerminal(SchemaDict, total=False, extra_items=Any):
174
- terminalId: Required[str]
175
- type: Required[Literal["terminal"]]
176
-
177
-
178
- # https://agentclientprotocol.com/protocol/schema#toolcallcontent
179
- type ToolCallContent = (
180
- ToolCallContentContent | ToolCallContentDiff | ToolCallContentTerminal
181
- )
182
-
183
- # https://agentclientprotocol.com/protocol/schema#toolkind
184
- type ToolKind = Literal[
185
- "read",
186
- "edit",
187
- "delete",
188
- "move",
189
- "search",
190
- "execute",
191
- "think",
192
- "fetch",
193
- "switch_mode",
194
- "other",
195
- ]
196
-
197
- type ToolCallStatus = Literal["pending", "in_progress", "completed", "failed"]
198
-
199
-
200
- class ToolCallLocation(SchemaDict, total=False, extra_items=Any):
201
- line: int | None
202
- path: Required[str]
203
-
204
-
205
- type ToolCallId = str
206
-
207
-
208
- # https://agentclientprotocol.com/protocol/schema#toolcall
209
- class ToolCall(SchemaDict, total=False, extra_items=Any):
210
- _meta: dict
211
- content: list[ToolCallContent]
212
- kind: ToolKind
213
- locations: list[ToolCallLocation]
214
- rawInput: dict
215
- rawOutput: dict
216
- sessionUpdate: Required[Literal["tool_call"]]
217
- status: ToolCallStatus
218
- title: Required[str]
219
- toolCallId: Required[ToolCallId]
220
- # Custom (non-ACP) field: when set, this tool call was invoked *inside* a
221
- # subagent and the TUI should mount/update the ToolCall card inside the
222
- # owning SubAgent widget (subagentId = the parent Spawn toolCallId) rather
223
- # than in the main conversation.
224
- subagentId: str
225
-
226
-
227
- # https://agentclientprotocol.com/protocol/schema#toolcallupdate
228
- class ToolCallUpdate(SchemaDict, total=False, extra_items=Any):
229
- _meta: dict
230
- content: list[ToolCallContent] | None
231
- kind: ToolKind | None
232
- locations: list | None
233
- rawInput: dict
234
- rawOutput: dict
235
- sessionUpdate: Required[Literal["tool_call_update"]]
236
- status: ToolCallStatus | None
237
- title: str | None
238
- toolCallId: Required[ToolCallId]
239
- subagentId: str
240
-
241
-
242
- # https://agentclientprotocol.com/protocol/schema#param-tool-call
243
- # Use in the session/request_permission call (not the same as ToolCallUpdate)
244
- class ToolCallUpdatePermissionRequest(SchemaDict, total=False, extra_items=Any):
245
- _meta: dict
246
- content: list[ToolCallContent] | None
247
- kind: ToolKind | None
248
- locations: list | None
249
- rawInput: dict
250
- rawOutput: dict
251
- status: ToolCallStatus | None
252
- title: str | None
253
- toolCallId: Required[ToolCallId]
254
-
255
-
256
- class PlanEntry(SchemaDict, total=False, extra_items=Any):
257
- content: Required[str]
258
- priority: Literal["high", "medium", "low"]
259
- status: Literal["pending", "in_progress", "completed"]
260
-
261
-
262
- type SessionModeId = str
263
-
264
-
265
- # https://agentclientprotocol.com/protocol/schema#sessionmode
266
- class SessionMode(SchemaDict, total=False, extra_items=Any):
267
- _meta: dict
268
- description: str | None
269
- id: Required[SessionModeId]
270
- name: Required[str]
271
-
272
-
273
- class SessionModeState(SchemaDict, total=False, extra_items=Any):
274
- _meta: dict
275
- availableModes: Required[list[SessionMode]]
276
- currentModeId: Required[SessionModeId]
277
-
278
-
279
- type ModelId = str
280
-
281
-
282
- # https://agentclientprotocol.com/protocol/schema#modelinfo
283
- class ModelInfo(SchemaDict, total=False, extra_items=Any):
284
- _meta: dict
285
- description: str | None
286
- modelId: Required[ModelId]
287
- name: Required[str]
288
-
289
-
290
- # https://agentclientprotocol.com/protocol/schema#sessionmodelstate
291
- class SessionModelState(SchemaDict, total=False, extra_items=Any):
292
- _meta: dict
293
- availableModels: Required[list[ModelInfo]]
294
- currentModelId: Required[ModelId]
295
-
296
-
297
- # https://agentclientprotocol.com/protocol/schema#param-plan
298
- class Plan(SchemaDict, total=False, extra_items=Any):
299
- entries: Required[list[PlanEntry]]
300
- sessionUpdate: Required[Literal["plan"]]
301
-
302
-
303
- class AvailableCommandInput(SchemaDict, total=False, extra_items=Any):
304
- hint: Required[str]
305
-
306
-
307
- class AvailableCommand(SchemaDict, total=False, extra_items=Any):
308
- description: Required[str]
309
- input: AvailableCommandInput | None
310
- name: Required[str]
311
-
312
-
313
- class AvailableCommandsUpdate(SchemaDict, total=False, extra_items=Any):
314
- availableCommands: Required[list[AvailableCommand]]
315
- sessionUpdate: Required[Literal["available_commands_update"]]
316
-
317
-
318
- class CurrentModeUpdate(SchemaDict, total=False, extra_items=Any):
319
- currentModeId: Required[str]
320
- sessionUpdate: Required[Literal["current_mode_update"]]
321
-
322
-
323
- class UsageUpdate(SchemaDict, total=False, extra_items=object):
324
- sessionUpdate: Required[Literal["usage_update"]]
325
- used: Required[int]
326
- size: Required[int]
327
- cost: Cost
328
-
329
-
330
- class SubAgentStart(SchemaDict, total=False, extra_items=Any):
331
- sessionUpdate: Required[Literal["subagent_start"]]
332
- subagentId: Required[str]
333
- agentType: Required[str]
334
- prompt: str
335
-
336
-
337
- class SubAgentChunk(SchemaDict, total=False, extra_items=Any):
338
- sessionUpdate: Required[Literal["subagent_chunk"]]
339
- subagentId: Required[str]
340
- text: Required[str]
341
-
342
-
343
- class SubAgentThinking(SchemaDict, total=False, extra_items=Any):
344
- sessionUpdate: Required[Literal["subagent_thinking"]]
345
- subagentId: Required[str]
346
- text: Required[str]
347
-
348
-
349
- class SubAgentEnd(SchemaDict, total=False, extra_items=Any):
350
- sessionUpdate: Required[Literal["subagent_end"]]
351
- subagentId: Required[str]
352
- agentType: Required[str]
353
- status: str
354
- error: str
355
-
356
-
357
- type SessionUpdate = (
358
- UserMessageChunk
359
- | AgentMessageChunk
360
- | AgentThoughtChunk
361
- | ToolCall
362
- | ToolCallUpdate
363
- | Plan
364
- | AvailableCommandsUpdate
365
- | CurrentModeUpdate
366
- | UsageUpdate
367
- | SubAgentStart
368
- | SubAgentChunk
369
- | SubAgentThinking
370
- | SubAgentEnd
371
- )
372
-
373
-
374
- class SessionNotification(TypedDict, total=False, extra_items=Any):
375
- sessionId: str
376
- update: SessionUpdate
377
-
378
-
379
- type PermissionOptionKind = Literal[
380
- "allow_once", "allow_always", "reject_once", "reject_always"
381
- ]
382
- type PermissionOptionId = str
383
-
384
-
385
- class PermissionOption(TypedDict, total=False, extra_items=Any):
386
- _meta: dict
387
- kind: Required[PermissionOptionKind]
388
- name: Required[str]
389
- optionId: Required[PermissionOptionId]
390
-
391
-
392
- class OutcomeCancelled(TypedDict, total=False, extra_items=Any):
393
- outcome: Literal["cancelled"]
394
-
395
-
396
- class OutcomeSelected(TypedDict, total=False, extra_items=Any):
397
- optionId: Required[PermissionOptionId]
398
- outcome: Literal["selected"]
399
-
400
-
401
- # https://agentclientprotocol.com/protocol/schema#requestpermissionoutcome
402
- type RequestPermissionOutcome = OutcomeSelected | OutcomeCancelled
403
-
404
- # ---------------------------------------------------------------------------------------
405
- # RPC responses
406
-
407
-
408
- class InitializeResponse(SchemaDict, total=False, extra_items=Any):
409
- agentCapabilities: AgentCapabilities
410
- authMethods: list[AuthMethod]
411
- protocolVersion: Required[int]
412
-
413
-
414
- # https://agentclientprotocol.com/protocol/schema#newsessionresponse
415
- class NewSessionResponse(SchemaDict, total=False, extra_items=Any):
416
- _meta: object
417
- sessionId: Required[str]
418
- # Unstable from here
419
- models: SessionModelState | None
420
- modes: SessionModeState | None
421
-
422
-
423
- # https://agentclientprotocol.com/protocol/schema#loadsessionresponse
424
- class LoadSessionResponse(SchemaDict, total=False, extra_items=Any):
425
- _meta: object
426
- modes: SessionModeState | None
427
-
428
-
429
- class SessionPromptResponse(SchemaDict, total=False, extra_items=object):
430
- sessionId: Required[str]
431
- stopReason: Required[
432
- Literal[
433
- "end_turn",
434
- "max_tokens",
435
- "max_turn_requests",
436
- "refusal",
437
- "cancelled",
438
- ]
439
- ]
440
- usage: Usage
441
-
442
-
443
- # https://agentclientprotocol.com/protocol/schema#requestpermissionresponse
444
- class RequestPermissionResponse(TypedDict, total=False, extra_items=Any):
445
- _meta: dict
446
- outcome: Required[RequestPermissionOutcome]
447
-
448
- class AskUserResponse(TypedDict, total=False, extra_items=Any):
449
- answer: str
450
- cancelled: bool
451
-
452
-
453
- # https://agentclientprotocol.com/protocol/schema#createterminalresponse
454
- class CreateTerminalResponse(TypedDict, total=False, extra_items=Any):
455
- _meta: dict
456
- terminalId: Required[str]
457
-
458
-
459
- # https://agentclientprotocol.com/protocol/schema#killterminalcommandresponse
460
- class KillTerminalCommandResponse(TypedDict, total=False, extra_items=Any):
461
- _meta: dict
462
-
463
-
464
- # https://agentclientprotocol.com/protocol/schema#terminaloutputresponse
465
- class TerminalOutputResponse(TypedDict, total=False, extra_items=Any):
466
- _meta: dict
467
- exitStatus: TerminalExitStatus | None
468
- output: Required[str]
469
- truncated: Required[bool]
470
-
471
-
472
- # https://agentclientprotocol.com/protocol/schema#releaseterminalresponse
473
- class ReleaseTerminalResponse(TypedDict, total=False, extra_items=Any):
474
- _meta: dict
475
-
476
-
477
- # https://agentclientprotocol.com/protocol/schema#waitforterminalexitresponse
478
- class WaitForTerminalExitResponse(TypedDict, total=False, extra_items=Any):
479
- _meta: dict
480
- exitCode: int | None
481
- signal: str | None
482
-
483
-
484
- # https://agentclientprotocol.com/protocol/schema#setsessionmoderesponse
485
- class SetSessionModeResponse(TypedDict, total=False, extra_items=Any):
486
- meta: dict
487
-
488
-
489
- # ---------------------------------------------------------------------------------------
490
-
491
-
492
- # https://agentclientprotocol.com/rfds/session-usage#usage-fields
493
- class Usage(TypedDict, total=False, extra_items=Any):
494
- total_tokens: Required[int]
495
- input_tokens: Required[int]
496
- output_tokens: Required[int]
497
- thought_tokens: int
498
- cached_read_tokens: int
499
- cached_write_tokens: int
package/tui/agent.py DELETED
@@ -1,70 +0,0 @@
1
- from abc import ABC, abstractmethod
2
- from dataclasses import dataclass
3
- from pathlib import Path
4
-
5
- from textual.content import Content
6
- from textual.message import Message
7
-
8
-
9
- class AgentReady(Message):
10
- """Agent is ready."""
11
-
12
-
13
- @dataclass
14
- class AgentFail(Message):
15
- """Agent failed to start."""
16
-
17
- message: str
18
- details: str = ""
19
- help: str = "fail"
20
-
21
-
22
- class AgentBase(ABC):
23
- """Base class for an 'agent'."""
24
-
25
- def __init__(self, project_root: Path) -> None:
26
- self.project_root_path = project_root
27
- super().__init__()
28
-
29
- @abstractmethod
30
- async def send_prompt(self, prompt: str) -> str | None:
31
- """Send a prompt to the agent.
32
-
33
- Args:
34
- prompt: Prompt text.
35
-
36
- Returns:
37
- str: The stop reason.
38
- """
39
-
40
- async def set_mode(self, mode_id: str) -> str | None:
41
- """Put the agent in a new mode.
42
-
43
- Args:
44
- mode_id: Mode id.
45
-
46
- Returns:
47
- str: The stop reason.
48
- """
49
-
50
- async def cancel(self) -> bool:
51
- """Cancel prompt.
52
-
53
- Returns:
54
- bool: `True` if success, `False` if the turn wasn't cancelled.
55
-
56
- """
57
- return False
58
-
59
- async def set_session_name(self, name: str) -> None:
60
- """Set the session name.
61
-
62
- Args:
63
- name: New name for the session.
64
- """
65
-
66
- def get_info(self) -> Content:
67
- return Content("")
68
-
69
- async def stop(self) -> None:
70
- """Stop the agent (gracefully exit the process)"""
@@ -1,76 +0,0 @@
1
- from typing import TypedDict, Literal, NotRequired
2
-
3
- type Tag = str
4
- """A tag used for categorizing the agent. For example: 'open-source', 'reasoning'."""
5
- type OS = Literal["macos", "linux", "windows", "*"]
6
- """An operating system identifier, or a '*" wildcard, if it is the same for all OSes."""
7
- type Action = str
8
- """An action which the agent supports."""
9
- type AgentType = Literal["coding", "chat"]
10
- """The type of agent. More types TBD."""
11
- type AgentProtocol = Literal["acp"]
12
- """The protocol used to communicate with the agent. Currently only "acp" is supported."""
13
-
14
-
15
- class Command(TypedDict):
16
- """Used to perform an action associate with an Agent."""
17
-
18
- description: str
19
- """Describes what the script will do. For example: 'Install Claude Code'."""
20
- command: str
21
- """Command to run."""
22
- bootstrap_uv: NotRequired[bool]
23
- """Bootstrap UV installer (set to `true` if the command users `uv`)."""
24
-
25
-
26
- class Agent(TypedDict):
27
- """Describes an agent which A2TUI can connect to. Currently only Agent Client Protocol is supported.
28
-
29
- This information is stoed within TOML files, where the filename is the "identity" key plus the extension ".toml"
30
-
31
- """
32
-
33
- active: NotRequired[bool]
34
- """If `True` (default), the agent will be shown in the UI. If `False` the agent will be removed from the UI."""
35
- recommended: NotRequired[bool]
36
- """Agent is in recommended set. Set to `True` in main branch only if previously agreed with Will McGugan."""
37
- identity: str
38
- """A unique identifier for this agent. Should be a domain the agent developer owns,
39
- although it doesn't have to resolve to anything. Must be useable in a filename on all platforms.
40
- For example: 'claude.anthropic.ai'"""
41
- name: str
42
- """The name of the agent. For example: 'Claude Code'."""
43
- short_name: str
44
- """A short name, usable on the command line. Try to make it unique. For example: 'claude'."""
45
- url: str
46
- """A URL for the agent."""
47
- protocol: AgentProtocol
48
- """The protocol used by the agent. Currently only 'acp' is supported."""
49
- type: "AgentType"
50
- """The type of the agent. Currently "coding" or "chat". More types TBD."""
51
- author_name: str
52
- """The author of the agent. For example 'Anthropic'."""
53
- author_url: str
54
- """The authors homepage. For example 'https://www.anthropic.com/'."""
55
- publisher_name: str
56
- """The publisher's name (individual or organization that wrote this data)."""
57
- publisher_url: str
58
- """The publisher's url."""
59
- description: str
60
- """A description of the agent. A few sentences max. May contain content markup (https://textual.textualize.io/guide/content/#markup) if used subtly."""
61
- tags: list[Tag]
62
- """Tags which identify the agent. Should be empty for now."""
63
- help: str
64
- """A Markdown document with additional details regarding the agent."""
65
- welcome: NotRequired[str]
66
- """A Markdown document shown to the user when the conversation starts. Should contain a welcome message and any advice on getting started."""
67
- run_command: dict[OS, str]
68
- """Command to run the agent, by OS or wildcard."""
69
- commands_prefix: NotRequired[str]
70
- """Prefix for slash commands registered by this agent (e.g. `"onecode:"`)."""
71
- commands_module: NotRequired[str]
72
- """Python module path to a commands module with a `register_commands()` function.
73
- If set, the TUI will import this module and call `register_commands()` to register
74
- platform-specific slash commands (e.g. `onecode:mode`, `onecode:spec`)."""
75
- actions: dict[OS, dict[Action, Command]]
76
- """Scripts to perform actions, typically at least to install the agent."""
package/tui/agents.py DELETED
@@ -1,46 +0,0 @@
1
- from importlib.resources import files
2
- import asyncio
3
-
4
- from tui.agent_schema import Agent
5
-
6
-
7
- class AgentReadError(Exception):
8
- """Problem reading the agents."""
9
-
10
-
11
- async def read_agents() -> dict[str, Agent]:
12
- """Read agent information from data/agents
13
-
14
- Raises:
15
- AgentReadError: If the files could not be read.
16
-
17
- Returns:
18
- A mapping of identity on to Agent dict.
19
- """
20
- import tomllib
21
-
22
- def read_agents() -> list[Agent]:
23
- """Read agent information.
24
-
25
- Stored in data/agents
26
-
27
- Returns:
28
- List of agent dicts.
29
- """
30
- agents: list[Agent] = []
31
- for file in files("tui.data").joinpath("agents").iterdir():
32
- if file.name.startswith("."):
33
- continue
34
- try:
35
- agent: Agent = tomllib.load(file.open("rb"))
36
- except Exception:
37
- continue
38
- if agent.get("active", True):
39
- agents.append(agent)
40
-
41
- return agents
42
-
43
- agents = await asyncio.to_thread(read_agents)
44
- agent_map = {agent["identity"]: agent for agent in agents}
45
-
46
- return agent_map
@@ -1 +0,0 @@
1
- from tui.ansi._ansi import TerminalState as TerminalState