@scemoon/cdh 1.0.6 → 1.0.7

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 (550) hide show
  1. package/package.json +2 -2
  2. package/ai-dlc-skill/SKILL.md +0 -77
  3. package/ai-dlc-skill/agents/deliver-agent.md +0 -24
  4. package/ai-dlc-skill/agents/master.md +0 -50
  5. package/ai-dlc-skill/agents/plan-agent.md +0 -23
  6. package/ai-dlc-skill/agents/understand-agent.md +0 -23
  7. package/ai-dlc-skill/agents/verify-agent.md +0 -27
  8. package/ai-dlc-skill/architecture/project-structure.md +0 -78
  9. package/ai-dlc-skill/brownfield/README.md +0 -30
  10. package/ai-dlc-skill/brownfield/generate-context.sh +0 -64
  11. package/ai-dlc-skill/brownfield/scripts/deps.sh +0 -27
  12. package/ai-dlc-skill/brownfield/scripts/discover.sh +0 -34
  13. package/ai-dlc-skill/brownfield/scripts/extract-api.sh +0 -45
  14. package/ai-dlc-skill/components/backend.md +0 -34
  15. package/ai-dlc-skill/components/desktop.md +0 -30
  16. package/ai-dlc-skill/components/mya.md +0 -29
  17. package/ai-dlc-skill/components/native.md +0 -30
  18. package/ai-dlc-skill/components/tta.md +0 -29
  19. package/ai-dlc-skill/components/web.md +0 -31
  20. package/ai-dlc-skill/components/wxa.md +0 -29
  21. package/ai-dlc-skill/contracts/README.md +0 -25
  22. package/ai-dlc-skill/core/adaptive-flow.md +0 -36
  23. package/ai-dlc-skill/core/security.md +0 -29
  24. package/ai-dlc-skill/cross-tool/cline/export.sh +0 -31
  25. package/ai-dlc-skill/cross-tool/copilot/export.sh +0 -47
  26. package/ai-dlc-skill/cross-tool/cursor/export.sh +0 -32
  27. package/ai-dlc-skill/cross-tool/export.sh +0 -22
  28. package/ai-dlc-skill/cross-tool/onecode/config.yaml.tpl +0 -17
  29. package/ai-dlc-skill/cross-tool/onecode/export-skills.sh +0 -35
  30. package/ai-dlc-skill/cross-tool/onecode/export.sh +0 -54
  31. package/ai-dlc-skill/phases/deliver/entry.md +0 -26
  32. package/ai-dlc-skill/phases/deliver/lifecycle.md +0 -185
  33. package/ai-dlc-skill/phases/deliver/prompt.md +0 -40
  34. package/ai-dlc-skill/phases/deliver/rules.md +0 -61
  35. package/ai-dlc-skill/phases/plan/entry.md +0 -25
  36. package/ai-dlc-skill/phases/plan/lifecycle.md +0 -204
  37. package/ai-dlc-skill/phases/plan/prompt.md +0 -38
  38. package/ai-dlc-skill/phases/plan/rules.md +0 -25
  39. package/ai-dlc-skill/phases/understand/entry.md +0 -26
  40. package/ai-dlc-skill/phases/understand/lifecycle.md +0 -184
  41. package/ai-dlc-skill/phases/understand/prompt.md +0 -41
  42. package/ai-dlc-skill/phases/understand/rules.md +0 -37
  43. package/ai-dlc-skill/phases/verify/entry.md +0 -26
  44. package/ai-dlc-skill/phases/verify/lifecycle.md +0 -192
  45. package/ai-dlc-skill/phases/verify/prompt.md +0 -43
  46. package/ai-dlc-skill/phases/verify/rules.md +0 -73
  47. package/ai-dlc-skill/practices/bdd.md +0 -91
  48. package/ai-dlc-skill/practices/sdd.md +0 -84
  49. package/ai-dlc-skill/practices/tdd.md +0 -95
  50. package/ai-dlc-skill/providers/README.md +0 -114
  51. package/ai-dlc-skill/providers/aliyun/deployment.yaml +0 -66
  52. package/ai-dlc-skill/providers/aliyun/preview.yaml +0 -84
  53. package/ai-dlc-skill/providers/aliyun/provider.yaml +0 -160
  54. package/ai-dlc-skill/providers/tcb/deployment.yaml +0 -69
  55. package/ai-dlc-skill/providers/tcb/preview.yaml +0 -83
  56. package/ai-dlc-skill/providers/tcb/provider.yaml +0 -172
  57. package/ai-dlc-skill/requirements.md +0 -140
  58. package/ai-dlc-skill/skill.yaml +0 -147
  59. package/ai-dlc-skill/templates/integration/CHANGELOG.md +0 -41
  60. package/ai-dlc-skill/templates/integration/asyncapi.yaml +0 -43
  61. package/ai-dlc-skill/templates/integration/contract-diff.md +0 -63
  62. package/ai-dlc-skill/templates/integration/contract-spec.md +0 -49
  63. package/ai-dlc-skill/templates/integration/openapi.yaml +0 -18
  64. package/ai-dlc-skill/templates/integration/runtime-contract.yaml +0 -36
  65. package/ai-dlc-skill/templates/plan/design.md +0 -49
  66. package/ai-dlc-skill/templates/plan/task-list.md +0 -32
  67. package/ai-dlc-skill/templates/project/README.md +0 -126
  68. package/ai-dlc-skill/templates/project/template.md +0 -119
  69. package/ai-dlc-skill/templates/understand/feature.feature +0 -23
  70. package/ai-dlc-skill/templates/understand/intent.md +0 -29
  71. package/ai-dlc-skill/templates/understand/spec-delta.md +0 -47
  72. package/ai-dlc-skill/templates/verify/test-unit.py +0 -27
  73. package/ai-dlc-skill/walkthrough/collect.sh +0 -50
  74. package/ai-dlc-skill/walkthrough/template.md +0 -54
  75. package/ai-dlc-skill/workflows/ai-dlc.yaml +0 -110
  76. package/ai-dlc-skill/workflows/deployment.yaml +0 -199
  77. package/cdh/__init__.py +0 -0
  78. package/cdh/__main__.py +0 -4
  79. package/cdh/__pycache__/__init__.cpython-314.pyc +0 -0
  80. package/cdh/__pycache__/cdh_mcp_injector.cpython-314.pyc +0 -0
  81. package/cdh/__pycache__/cdh_mcp_loader.cpython-314.pyc +0 -0
  82. package/cdh/__pycache__/cdh_mcp_manager.cpython-314.pyc +0 -0
  83. package/cdh/__pycache__/cdh_session_aggregator.cpython-314.pyc +0 -0
  84. package/cdh/__pycache__/cdh_skill_loader.cpython-314.pyc +0 -0
  85. package/cdh/__pycache__/cdh_skill_manager.cpython-314.pyc +0 -0
  86. package/cdh/__pycache__/cli.cpython-313.pyc +0 -0
  87. package/cdh/__pycache__/cli.cpython-314.pyc +0 -0
  88. package/cdh/__pycache__/scaffold.cpython-314.pyc +0 -0
  89. package/cdh/cdh_mcp_injector.py +0 -115
  90. package/cdh/cdh_mcp_loader.py +0 -67
  91. package/cdh/cdh_mcp_manager.py +0 -73
  92. package/cdh/cdh_session_aggregator.py +0 -258
  93. package/cdh/cdh_skill_manager.py +0 -105
  94. package/cdh/cli.py +0 -807
  95. package/cdh/scaffold.py +0 -728
  96. package/onecode/__init__.py +0 -1
  97. package/onecode/__main__.py +0 -4
  98. package/onecode/__pycache__/__init__.cpython-314.pyc +0 -0
  99. package/onecode/__pycache__/cli.cpython-314.pyc +0 -0
  100. package/onecode/__pycache__/commands.cpython-314.pyc +0 -0
  101. package/onecode/__pycache__/config.cpython-314.pyc +0 -0
  102. package/onecode/__pycache__/config_screen.cpython-314.pyc +0 -0
  103. package/onecode/__pycache__/migrate.cpython-314.pyc +0 -0
  104. package/onecode/agent/__init__.py +0 -0
  105. package/onecode/agent/__pycache__/__init__.cpython-314.pyc +0 -0
  106. package/onecode/agent/__pycache__/cdh_loader.cpython-314.pyc +0 -0
  107. package/onecode/agent/__pycache__/context.cpython-314.pyc +0 -0
  108. package/onecode/agent/__pycache__/engine.cpython-314.pyc +0 -0
  109. package/onecode/agent/__pycache__/hooks.cpython-314.pyc +0 -0
  110. package/onecode/agent/__pycache__/onecode_agent_acp.cpython-314.pyc +0 -0
  111. package/onecode/agent/__pycache__/permissions.cpython-314.pyc +0 -0
  112. package/onecode/agent/__pycache__/permissions_store.cpython-314.pyc +0 -0
  113. package/onecode/agent/__pycache__/project_doc.cpython-314.pyc +0 -0
  114. package/onecode/agent/__pycache__/session.cpython-314.pyc +0 -0
  115. package/onecode/agent/agents/__init__.py +0 -29
  116. package/onecode/agent/agents/__pycache__/__init__.cpython-314.pyc +0 -0
  117. package/onecode/agent/agents/__pycache__/types.cpython-314.pyc +0 -0
  118. package/onecode/agent/agents/types.py +0 -589
  119. package/onecode/agent/attachments.py +0 -112
  120. package/onecode/agent/cdh_loader.py +0 -267
  121. package/onecode/agent/context.py +0 -343
  122. package/onecode/agent/engine.py +0 -2700
  123. package/onecode/agent/hooks.py +0 -86
  124. package/onecode/agent/onecode_agent_acp.py +0 -2743
  125. package/onecode/agent/onecode_agent_acp.py.bak +0 -2447
  126. package/onecode/agent/permissions.py +0 -150
  127. package/onecode/agent/permissions_store.py +0 -62
  128. package/onecode/agent/project_doc.py +0 -19
  129. package/onecode/agent/session.py +0 -195
  130. package/onecode/agent/snapshot.py +0 -144
  131. package/onecode/agent/tools/__init__.py +0 -17
  132. package/onecode/agent/tools/__pycache__/__init__.cpython-314.pyc +0 -0
  133. package/onecode/agent/tools/__pycache__/agent_tools.cpython-314.pyc +0 -0
  134. package/onecode/agent/tools/__pycache__/apply_patch_tool.cpython-314.pyc +0 -0
  135. package/onecode/agent/tools/__pycache__/bash_tool.cpython-314.pyc +0 -0
  136. package/onecode/agent/tools/__pycache__/communication_tools.cpython-314.pyc +0 -0
  137. package/onecode/agent/tools/__pycache__/config_tool.cpython-314.pyc +0 -0
  138. package/onecode/agent/tools/__pycache__/cron_tools.cpython-314.pyc +0 -0
  139. package/onecode/agent/tools/__pycache__/errors.cpython-314.pyc +0 -0
  140. package/onecode/agent/tools/__pycache__/file_ops.cpython-314.pyc +0 -0
  141. package/onecode/agent/tools/__pycache__/file_tools.cpython-314.pyc +0 -0
  142. package/onecode/agent/tools/__pycache__/git_tools.cpython-314.pyc +0 -0
  143. package/onecode/agent/tools/__pycache__/lsp_tools.cpython-314.pyc +0 -0
  144. package/onecode/agent/tools/__pycache__/mcp_tools.cpython-314.pyc +0 -0
  145. package/onecode/agent/tools/__pycache__/permission_handler.cpython-314.pyc +0 -0
  146. package/onecode/agent/tools/__pycache__/permissions.cpython-314.pyc +0 -0
  147. package/onecode/agent/tools/__pycache__/protocol.cpython-314.pyc +0 -0
  148. package/onecode/agent/tools/__pycache__/registry.cpython-314.pyc +0 -0
  149. package/onecode/agent/tools/__pycache__/sandbox.cpython-314.pyc +0 -0
  150. package/onecode/agent/tools/__pycache__/schema_validation.cpython-314.pyc +0 -0
  151. package/onecode/agent/tools/__pycache__/skill_tools.cpython-314.pyc +0 -0
  152. package/onecode/agent/tools/__pycache__/todo_tools.cpython-314.pyc +0 -0
  153. package/onecode/agent/tools/__pycache__/web_tools.cpython-314.pyc +0 -0
  154. package/onecode/agent/tools/agent_tools.py +0 -132
  155. package/onecode/agent/tools/apply_patch_tool.py +0 -138
  156. package/onecode/agent/tools/bash_tool.py +0 -111
  157. package/onecode/agent/tools/communication_tools.py +0 -148
  158. package/onecode/agent/tools/config_tool.py +0 -130
  159. package/onecode/agent/tools/cron_tools.py +0 -178
  160. package/onecode/agent/tools/errors.py +0 -17
  161. package/onecode/agent/tools/file_ops.py +0 -221
  162. package/onecode/agent/tools/file_tools.py +0 -225
  163. package/onecode/agent/tools/git_tools.py +0 -88
  164. package/onecode/agent/tools/lsp_tools.py +0 -404
  165. package/onecode/agent/tools/mcp_tools.py +0 -127
  166. package/onecode/agent/tools/permission_handler.py +0 -46
  167. package/onecode/agent/tools/permissions.py +0 -77
  168. package/onecode/agent/tools/protocol.py +0 -20
  169. package/onecode/agent/tools/registry.py +0 -201
  170. package/onecode/agent/tools/sandbox.py +0 -358
  171. package/onecode/agent/tools/schema_validation.py +0 -100
  172. package/onecode/agent/tools/skill_tools.py +0 -52
  173. package/onecode/agent/tools/todo_tools.py +0 -207
  174. package/onecode/agent/tools/web_tools.py +0 -169
  175. package/onecode/builtin_skills/agent-browser/SKILL.md +0 -212
  176. package/onecode/builtin_skills/agent-browser/skill.yaml +0 -8
  177. package/onecode/builtin_skills/git/SKILL.md +0 -64
  178. package/onecode/builtin_skills/git/skill.yaml +0 -7
  179. package/onecode/builtin_skills/shell/SKILL.md +0 -58
  180. package/onecode/builtin_skills/shell/skill.yaml +0 -8
  181. package/onecode/builtin_skills/skill-creator/SKILL.md +0 -106
  182. package/onecode/builtin_skills/skill-creator/skill.yaml +0 -8
  183. package/onecode/cli.py +0 -935
  184. package/onecode/cloud/__init__.py +0 -0
  185. package/onecode/cloud/base.py +0 -20
  186. package/onecode/codebase/__init__.py +0 -69
  187. package/onecode/codebase/__pycache__/__init__.cpython-314.pyc +0 -0
  188. package/onecode/codebase/__pycache__/chunker.cpython-314.pyc +0 -0
  189. package/onecode/codebase/__pycache__/indexer.cpython-314.pyc +0 -0
  190. package/onecode/codebase/__pycache__/retriever.cpython-314.pyc +0 -0
  191. package/onecode/codebase/__pycache__/storage.cpython-314.pyc +0 -0
  192. package/onecode/codebase/__pycache__/tools.cpython-314.pyc +0 -0
  193. package/onecode/codebase/chunker.py +0 -125
  194. package/onecode/codebase/indexer.py +0 -149
  195. package/onecode/codebase/retriever.py +0 -203
  196. package/onecode/codebase/storage.py +0 -131
  197. package/onecode/codebase/tools.py +0 -59
  198. package/onecode/commands.py +0 -596
  199. package/onecode/config.py +0 -314
  200. package/onecode/config_screen.py +0 -600
  201. package/onecode/cron/__init__.py +0 -3
  202. package/onecode/lsp/__init__.py +0 -3
  203. package/onecode/mcp/__init__.py +0 -4
  204. package/onecode/mcp/__pycache__/__init__.cpython-314.pyc +0 -0
  205. package/onecode/mcp/__pycache__/client.cpython-314.pyc +0 -0
  206. package/onecode/mcp/__pycache__/manager.cpython-314.pyc +0 -0
  207. package/onecode/mcp/client.py +0 -193
  208. package/onecode/mcp/manager.py +0 -190
  209. package/onecode/memory/__init__.py +0 -49
  210. package/onecode/memory/__pycache__/__init__.cpython-314.pyc +0 -0
  211. package/onecode/memory/__pycache__/backend.cpython-314.pyc +0 -0
  212. package/onecode/memory/__pycache__/offload.cpython-314.pyc +0 -0
  213. package/onecode/memory/__pycache__/pyramid.cpython-314.pyc +0 -0
  214. package/onecode/memory/__pycache__/recall.cpython-314.pyc +0 -0
  215. package/onecode/memory/__pycache__/symbolic.cpython-314.pyc +0 -0
  216. package/onecode/memory/backend.py +0 -159
  217. package/onecode/memory/pyramid.py +0 -133
  218. package/onecode/memory/recall.py +0 -203
  219. package/onecode/migrate.py +0 -122
  220. package/onecode/models/__init__.py +0 -4
  221. package/onecode/models/__pycache__/__init__.cpython-314.pyc +0 -0
  222. package/onecode/models/__pycache__/errors.cpython-314.pyc +0 -0
  223. package/onecode/models/__pycache__/messages.cpython-314.pyc +0 -0
  224. package/onecode/models/__pycache__/provider.cpython-314.pyc +0 -0
  225. package/onecode/models/__pycache__/registry.cpython-314.pyc +0 -0
  226. package/onecode/models/errors.py +0 -104
  227. package/onecode/models/messages.py +0 -739
  228. package/onecode/models/provider.py +0 -699
  229. package/onecode/models/providers/__init__.py +0 -17
  230. package/onecode/models/providers/__pycache__/__init__.cpython-314.pyc +0 -0
  231. package/onecode/models/providers/__pycache__/anthropic_provider.cpython-314.pyc +0 -0
  232. package/onecode/models/providers/__pycache__/deepseek_provider.cpython-314.pyc +0 -0
  233. package/onecode/models/providers/__pycache__/glm_provider.cpython-314.pyc +0 -0
  234. package/onecode/models/providers/__pycache__/minimax_provider.cpython-314.pyc +0 -0
  235. package/onecode/models/providers/__pycache__/minimaxi_provider.cpython-314.pyc +0 -0
  236. package/onecode/models/providers/__pycache__/ollama_provider.cpython-314.pyc +0 -0
  237. package/onecode/models/providers/__pycache__/openai_provider.cpython-314.pyc +0 -0
  238. package/onecode/models/providers/anthropic_provider.py +0 -273
  239. package/onecode/models/providers/deepseek_provider.py +0 -212
  240. package/onecode/models/providers/glm_provider.py +0 -195
  241. package/onecode/models/providers/minimax_provider.py +0 -158
  242. package/onecode/models/providers/minimaxi_provider.py +0 -417
  243. package/onecode/models/providers/ollama_provider.py +0 -100
  244. package/onecode/models/providers/openai_provider.py +0 -237
  245. package/onecode/models/registry.py +0 -212
  246. package/onecode/server/__init__.py +0 -3
  247. package/onecode/server/app.py +0 -224
  248. package/onecode/skills/__init__.py +0 -11
  249. package/onecode/skills/__pycache__/__init__.cpython-314.pyc +0 -0
  250. package/onecode/skills/__pycache__/argument_substitution.cpython-314.pyc +0 -0
  251. package/onecode/skills/__pycache__/bootstrap.cpython-314.pyc +0 -0
  252. package/onecode/skills/__pycache__/create.cpython-314.pyc +0 -0
  253. package/onecode/skills/__pycache__/frontmatter.cpython-314.pyc +0 -0
  254. package/onecode/skills/__pycache__/loader.cpython-314.pyc +0 -0
  255. package/onecode/skills/__pycache__/manager.cpython-314.pyc +0 -0
  256. package/onecode/skills/__pycache__/model.cpython-314.pyc +0 -0
  257. package/onecode/skills/argument_substitution.py +0 -38
  258. package/onecode/skills/bootstrap.py +0 -124
  259. package/onecode/skills/create.py +0 -56
  260. package/onecode/skills/frontmatter.py +0 -33
  261. package/onecode/skills/loader.py +0 -139
  262. package/onecode/skills/manager.py +0 -75
  263. package/onecode/skills/model.py +0 -43
  264. package/onecode/storage/__init__.py +0 -0
  265. package/onecode/storage/activity.py +0 -63
  266. package/onecode/storage/project.py +0 -54
  267. package/onecode/storage/session.py +0 -112
  268. package/onecode/tasks/__init__.py +0 -26
  269. package/onecode/tasks/manager.py +0 -232
  270. package/onecode/tasks/models.py +0 -240
  271. package/onecode/trace/__init__.py +0 -0
  272. package/onecode/trace/tracer.py +0 -173
  273. package/onecode/utils/__init__.py +0 -0
  274. package/onecode/utils/helpers.py +0 -20
  275. package/pyproject.toml +0 -74
  276. package/tui/__init__.py +0 -46
  277. package/tui/__main__.py +0 -4
  278. package/tui/__pycache__/__init__.cpython-314.pyc +0 -0
  279. package/tui/__pycache__/_loop.cpython-314.pyc +0 -0
  280. package/tui/__pycache__/_path_fuzzy_search.cpython-314.pyc +0 -0
  281. package/tui/__pycache__/_path_match.cpython-314.pyc +0 -0
  282. package/tui/__pycache__/about.cpython-314.pyc +0 -0
  283. package/tui/__pycache__/agent.cpython-314.pyc +0 -0
  284. package/tui/__pycache__/agent_schema.cpython-314.pyc +0 -0
  285. package/tui/__pycache__/agents.cpython-314.pyc +0 -0
  286. package/tui/__pycache__/answer.cpython-314.pyc +0 -0
  287. package/tui/__pycache__/app.cpython-313.pyc +0 -0
  288. package/tui/__pycache__/app.cpython-314.pyc +0 -0
  289. package/tui/__pycache__/atomic.cpython-314.pyc +0 -0
  290. package/tui/__pycache__/complete.cpython-314.pyc +0 -0
  291. package/tui/__pycache__/constants.cpython-314.pyc +0 -0
  292. package/tui/__pycache__/conversation_markdown.cpython-314.pyc +0 -0
  293. package/tui/__pycache__/danger.cpython-314.pyc +0 -0
  294. package/tui/__pycache__/db.cpython-314.pyc +0 -0
  295. package/tui/__pycache__/dec.cpython-314.pyc +0 -0
  296. package/tui/__pycache__/directory.cpython-314.pyc +0 -0
  297. package/tui/__pycache__/directory_suggester.cpython-314.pyc +0 -0
  298. package/tui/__pycache__/directory_watcher.cpython-314.pyc +0 -0
  299. package/tui/__pycache__/format_path.cpython-314.pyc +0 -0
  300. package/tui/__pycache__/fuzzy.cpython-314.pyc +0 -0
  301. package/tui/__pycache__/fuzzy_index.cpython-314.pyc +0 -0
  302. package/tui/__pycache__/history.cpython-314.pyc +0 -0
  303. package/tui/__pycache__/jsonrpc.cpython-314.pyc +0 -0
  304. package/tui/__pycache__/menus.cpython-314.pyc +0 -0
  305. package/tui/__pycache__/message_log.cpython-314.pyc +0 -0
  306. package/tui/__pycache__/messages.cpython-314.pyc +0 -0
  307. package/tui/__pycache__/path_complete.cpython-314.pyc +0 -0
  308. package/tui/__pycache__/path_filter.cpython-314.pyc +0 -0
  309. package/tui/__pycache__/paths.cpython-314.pyc +0 -0
  310. package/tui/__pycache__/pill.cpython-314.pyc +0 -0
  311. package/tui/__pycache__/platform_commands.cpython-314.pyc +0 -0
  312. package/tui/__pycache__/protocol.cpython-314.pyc +0 -0
  313. package/tui/__pycache__/session_tracker.cpython-314.pyc +0 -0
  314. package/tui/__pycache__/settings.cpython-314.pyc +0 -0
  315. package/tui/__pycache__/settings_schema.cpython-314.pyc +0 -0
  316. package/tui/__pycache__/shell.cpython-314.pyc +0 -0
  317. package/tui/__pycache__/shell_read.cpython-314.pyc +0 -0
  318. package/tui/__pycache__/slash_command.cpython-314.pyc +0 -0
  319. package/tui/__pycache__/version.cpython-314.pyc +0 -0
  320. package/tui/_loop.py +0 -86
  321. package/tui/_path_fuzzy_search.py +0 -48
  322. package/tui/_path_match.py +0 -141
  323. package/tui/about.py +0 -95
  324. package/tui/acp/__pycache__/agent.cpython-314.pyc +0 -0
  325. package/tui/acp/__pycache__/api.cpython-314.pyc +0 -0
  326. package/tui/acp/__pycache__/encode_tool_call_id.cpython-314.pyc +0 -0
  327. package/tui/acp/__pycache__/messages.cpython-314.pyc +0 -0
  328. package/tui/acp/__pycache__/prompt.cpython-314.pyc +0 -0
  329. package/tui/acp/__pycache__/protocol.cpython-314.pyc +0 -0
  330. package/tui/acp/agent.py +0 -1002
  331. package/tui/acp/api.py +0 -73
  332. package/tui/acp/encode_tool_call_id.py +0 -12
  333. package/tui/acp/messages.py +0 -203
  334. package/tui/acp/prompt.py +0 -53
  335. package/tui/acp/protocol.py +0 -499
  336. package/tui/agent.py +0 -70
  337. package/tui/agent_schema.py +0 -76
  338. package/tui/agents.py +0 -46
  339. package/tui/ansi/__init__.py +0 -1
  340. package/tui/ansi/__pycache__/__init__.cpython-314.pyc +0 -0
  341. package/tui/ansi/__pycache__/_ansi.cpython-314.pyc +0 -0
  342. package/tui/ansi/__pycache__/_ansi_colors.cpython-314.pyc +0 -0
  343. package/tui/ansi/__pycache__/_control_codes.cpython-314.pyc +0 -0
  344. package/tui/ansi/__pycache__/_keys.cpython-314.pyc +0 -0
  345. package/tui/ansi/__pycache__/_sgr_styles.cpython-314.pyc +0 -0
  346. package/tui/ansi/__pycache__/_stream_parser.cpython-314.pyc +0 -0
  347. package/tui/ansi/_ansi.py +0 -1689
  348. package/tui/ansi/_ansi_colors.py +0 -264
  349. package/tui/ansi/_control_codes.py +0 -37
  350. package/tui/ansi/_keys.py +0 -251
  351. package/tui/ansi/_sgr_styles.py +0 -64
  352. package/tui/ansi/_stream_parser.py +0 -418
  353. package/tui/answer.py +0 -12
  354. package/tui/app.py +0 -1266
  355. package/tui/atomic.py +0 -37
  356. package/tui/cli.py +0 -313
  357. package/tui/code_analyze.py +0 -27
  358. package/tui/complete.py +0 -38
  359. package/tui/constants.py +0 -61
  360. package/tui/conversation_markdown.py +0 -30
  361. package/tui/danger.py +0 -372
  362. package/tui/data/agents/ampcode.com.toml +0 -52
  363. package/tui/data/agents/augmentcode.com.toml +0 -41
  364. package/tui/data/agents/cdh.cloud-dev-harness.toml +0 -23
  365. package/tui/data/agents/claude.com.toml +0 -41
  366. package/tui/data/agents/copilot.github.com.toml +0 -29
  367. package/tui/data/agents/crowai.dev.toml +0 -36
  368. package/tui/data/agents/cursor.com.toml +0 -38
  369. package/tui/data/agents/deepagents.langchain.com +0 -34
  370. package/tui/data/agents/docker.com.toml +0 -60
  371. package/tui/data/agents/geminicli.com.toml +0 -28
  372. package/tui/data/agents/goose.ai.toml +0 -52
  373. package/tui/data/agents/inference.huggingface.co.toml +0 -41
  374. package/tui/data/agents/kimi.com.toml +0 -35
  375. package/tui/data/agents/kiro.dev.toml +0 -43
  376. package/tui/data/agents/onecode.dev.toml +0 -22
  377. package/tui/data/agents/openai.com.toml +0 -53
  378. package/tui/data/agents/openclaw.ai.toml +0 -37
  379. package/tui/data/agents/opencode.ai.toml +0 -39
  380. package/tui/data/agents/openhands.dev.toml +0 -46
  381. package/tui/data/agents/stakpak.dev.toml +0 -62
  382. package/tui/data/agents/vibe.mistral.ai.toml +0 -31
  383. package/tui/data/agents/vtcode.dev.toml +0 -63
  384. package/tui/data/images/frog.png +0 -0
  385. package/tui/data/sounds/question.wav +0 -0
  386. package/tui/data/sounds/turn-over.wav +0 -0
  387. package/tui/db.py +0 -213
  388. package/tui/dec.py +0 -332
  389. package/tui/directory.py +0 -234
  390. package/tui/directory_suggester.py +0 -93
  391. package/tui/directory_watcher.py +0 -231
  392. package/tui/format_path.py +0 -25
  393. package/tui/fuzzy.py +0 -140
  394. package/tui/fuzzy_index.py +0 -275
  395. package/tui/gist.py +0 -33
  396. package/tui/history.py +0 -138
  397. package/tui/jsonrpc.py +0 -578
  398. package/tui/menus.py +0 -14
  399. package/tui/message_log.py +0 -69
  400. package/tui/messages.py +0 -144
  401. package/tui/option_content.py +0 -51
  402. package/tui/os.py +0 -0
  403. package/tui/path_complete.py +0 -217
  404. package/tui/path_filter.py +0 -124
  405. package/tui/paths.py +0 -87
  406. package/tui/pill.py +0 -23
  407. package/tui/platform_commands.py +0 -52
  408. package/tui/prompt/__pycache__/extract.cpython-314.pyc +0 -0
  409. package/tui/prompt/__pycache__/resource.cpython-314.pyc +0 -0
  410. package/tui/prompt/extract.py +0 -19
  411. package/tui/prompt/resource.py +0 -68
  412. package/tui/protocol.py +0 -28
  413. package/tui/screens/__init__.py +0 -0
  414. package/tui/screens/__pycache__/__init__.cpython-314.pyc +0 -0
  415. package/tui/screens/__pycache__/agent_modal.cpython-314.pyc +0 -0
  416. package/tui/screens/__pycache__/component_picker.cpython-314.pyc +0 -0
  417. package/tui/screens/__pycache__/diff_screen.cpython-314.pyc +0 -0
  418. package/tui/screens/__pycache__/log.cpython-314.pyc +0 -0
  419. package/tui/screens/__pycache__/main.cpython-313.pyc +0 -0
  420. package/tui/screens/__pycache__/main.cpython-314.pyc +0 -0
  421. package/tui/screens/__pycache__/permissions.cpython-314.pyc +0 -0
  422. package/tui/screens/__pycache__/projects_app.cpython-314.pyc +0 -0
  423. package/tui/screens/__pycache__/projects_screen.cpython-314.pyc +0 -0
  424. package/tui/screens/__pycache__/sessions.cpython-314.pyc +0 -0
  425. package/tui/screens/__pycache__/store.cpython-314.pyc +0 -0
  426. package/tui/screens/__pycache__/tool_content_screen.cpython-314.pyc +0 -0
  427. package/tui/screens/action_modal.py +0 -94
  428. package/tui/screens/agent_modal.py +0 -175
  429. package/tui/screens/command_edit_modal.py +0 -74
  430. package/tui/screens/component_picker.py +0 -168
  431. package/tui/screens/diff_screen.py +0 -84
  432. package/tui/screens/log.py +0 -553
  433. package/tui/screens/main.py +0 -385
  434. package/tui/screens/main.tcss +0 -655
  435. package/tui/screens/permissions.py +0 -404
  436. package/tui/screens/permissions.tcss +0 -72
  437. package/tui/screens/projects.tcss +0 -80
  438. package/tui/screens/projects_app.py +0 -347
  439. package/tui/screens/projects_screen.py +0 -284
  440. package/tui/screens/session_resume_modal.py +0 -172
  441. package/tui/screens/session_resume_modal.tcss +0 -35
  442. package/tui/screens/sessions.py +0 -164
  443. package/tui/screens/sessions.tcss +0 -119
  444. package/tui/screens/settings.py +0 -254
  445. package/tui/screens/settings.tcss +0 -101
  446. package/tui/screens/store.py +0 -500
  447. package/tui/screens/store.tcss +0 -274
  448. package/tui/screens/tool_content_screen.py +0 -59
  449. package/tui/session_tracker.py +0 -123
  450. package/tui/settings.py +0 -353
  451. package/tui/settings_schema.py +0 -431
  452. package/tui/shell.py +0 -304
  453. package/tui/shell_read.py +0 -42
  454. package/tui/slash_command.py +0 -34
  455. package/tui/tui.tcss +0 -246
  456. package/tui/twitter.py +0 -38
  457. package/tui/version.py +0 -80
  458. package/tui/visuals/__init__.py +0 -0
  459. package/tui/visuals/__pycache__/__init__.cpython-314.pyc +0 -0
  460. package/tui/visuals/__pycache__/columns.cpython-314.pyc +0 -0
  461. package/tui/visuals/columns.py +0 -272
  462. package/tui/widgets/__init__.py +0 -0
  463. package/tui/widgets/__pycache__/__init__.cpython-314.pyc +0 -0
  464. package/tui/widgets/__pycache__/acp_content.cpython-314.pyc +0 -0
  465. package/tui/widgets/__pycache__/agent_response.cpython-314.pyc +0 -0
  466. package/tui/widgets/__pycache__/agent_thought.cpython-314.pyc +0 -0
  467. package/tui/widgets/__pycache__/ask_user.cpython-314.pyc +0 -0
  468. package/tui/widgets/__pycache__/condensed_path.cpython-314.pyc +0 -0
  469. package/tui/widgets/__pycache__/context_stats.cpython-314.pyc +0 -0
  470. package/tui/widgets/__pycache__/conversation.cpython-314.pyc +0 -0
  471. package/tui/widgets/__pycache__/diff_view.cpython-314.pyc +0 -0
  472. package/tui/widgets/__pycache__/directory_input.cpython-314.pyc +0 -0
  473. package/tui/widgets/__pycache__/flash.cpython-314.pyc +0 -0
  474. package/tui/widgets/__pycache__/future_text.cpython-314.pyc +0 -0
  475. package/tui/widgets/__pycache__/grid_select.cpython-314.pyc +0 -0
  476. package/tui/widgets/__pycache__/highlighted_textarea.cpython-314.pyc +0 -0
  477. package/tui/widgets/__pycache__/load_more.cpython-314.pyc +0 -0
  478. package/tui/widgets/__pycache__/mandelbrot.cpython-314.pyc +0 -0
  479. package/tui/widgets/__pycache__/markdown_note.cpython-314.pyc +0 -0
  480. package/tui/widgets/__pycache__/menu.cpython-314.pyc +0 -0
  481. package/tui/widgets/__pycache__/modified_files.cpython-314.pyc +0 -0
  482. package/tui/widgets/__pycache__/non_selectable_label.cpython-314.pyc +0 -0
  483. package/tui/widgets/__pycache__/note.cpython-314.pyc +0 -0
  484. package/tui/widgets/__pycache__/path_search.cpython-314.pyc +0 -0
  485. package/tui/widgets/__pycache__/plan.cpython-314.pyc +0 -0
  486. package/tui/widgets/__pycache__/project_directory_tree.cpython-314.pyc +0 -0
  487. package/tui/widgets/__pycache__/project_grid_select.cpython-314.pyc +0 -0
  488. package/tui/widgets/__pycache__/project_summary.cpython-314.pyc +0 -0
  489. package/tui/widgets/__pycache__/prompt.cpython-314.pyc +0 -0
  490. package/tui/widgets/__pycache__/question.cpython-314.pyc +0 -0
  491. package/tui/widgets/__pycache__/session_grid_select.cpython-314.pyc +0 -0
  492. package/tui/widgets/__pycache__/session_summary.cpython-314.pyc +0 -0
  493. package/tui/widgets/__pycache__/session_tabs.cpython-314.pyc +0 -0
  494. package/tui/widgets/__pycache__/shell_result.cpython-314.pyc +0 -0
  495. package/tui/widgets/__pycache__/shell_terminal.cpython-314.pyc +0 -0
  496. package/tui/widgets/__pycache__/side_bar.cpython-314.pyc +0 -0
  497. package/tui/widgets/__pycache__/slash_complete.cpython-314.pyc +0 -0
  498. package/tui/widgets/__pycache__/strike_text.cpython-314.pyc +0 -0
  499. package/tui/widgets/__pycache__/subagent.cpython-314.pyc +0 -0
  500. package/tui/widgets/__pycache__/subagent_screen.cpython-314.pyc +0 -0
  501. package/tui/widgets/__pycache__/terminal.cpython-314.pyc +0 -0
  502. package/tui/widgets/__pycache__/throbber.cpython-314.pyc +0 -0
  503. package/tui/widgets/__pycache__/tool_call.cpython-314.pyc +0 -0
  504. package/tui/widgets/__pycache__/user_input.cpython-314.pyc +0 -0
  505. package/tui/widgets/acp_content.py +0 -70
  506. package/tui/widgets/agent_response.py +0 -76
  507. package/tui/widgets/agent_thought.py +0 -167
  508. package/tui/widgets/ask_user.py +0 -264
  509. package/tui/widgets/command_pane.py +0 -223
  510. package/tui/widgets/condensed_path.py +0 -115
  511. package/tui/widgets/context_stats.py +0 -66
  512. package/tui/widgets/conversation.py +0 -2641
  513. package/tui/widgets/danger_warning.py +0 -65
  514. package/tui/widgets/diff_view.py +0 -69
  515. package/tui/widgets/directory_input.py +0 -8
  516. package/tui/widgets/flash.py +0 -81
  517. package/tui/widgets/future_text.py +0 -126
  518. package/tui/widgets/grid_select.py +0 -234
  519. package/tui/widgets/highlighted_textarea.py +0 -180
  520. package/tui/widgets/load_more.py +0 -24
  521. package/tui/widgets/mandelbrot.py +0 -294
  522. package/tui/widgets/markdown_note.py +0 -13
  523. package/tui/widgets/menu.py +0 -147
  524. package/tui/widgets/modified_files.py +0 -306
  525. package/tui/widgets/non_selectable_label.py +0 -5
  526. package/tui/widgets/note.py +0 -18
  527. package/tui/widgets/path_search.py +0 -492
  528. package/tui/widgets/plan.py +0 -285
  529. package/tui/widgets/project_directory_tree.py +0 -102
  530. package/tui/widgets/project_grid_select.py +0 -64
  531. package/tui/widgets/project_summary.py +0 -33
  532. package/tui/widgets/prompt.py +0 -795
  533. package/tui/widgets/question.py +0 -360
  534. package/tui/widgets/session_grid_select.py +0 -230
  535. package/tui/widgets/session_summary.py +0 -115
  536. package/tui/widgets/session_tabs.py +0 -188
  537. package/tui/widgets/shell_result.py +0 -35
  538. package/tui/widgets/shell_terminal.py +0 -40
  539. package/tui/widgets/side_bar.py +0 -124
  540. package/tui/widgets/slash_complete.py +0 -235
  541. package/tui/widgets/strike_text.py +0 -70
  542. package/tui/widgets/subagent.py +0 -287
  543. package/tui/widgets/subagent_screen.py +0 -709
  544. package/tui/widgets/terminal.py +0 -576
  545. package/tui/widgets/terminal_tool.py +0 -360
  546. package/tui/widgets/throbber.py +0 -100
  547. package/tui/widgets/tool_call.py +0 -398
  548. package/tui/widgets/user_input.py +0 -23
  549. package/tui/widgets/version.py +0 -5
  550. package/tui/widgets/welcome.py +0 -31
package/tui/danger.py DELETED
@@ -1,372 +0,0 @@
1
- from enum import IntEnum
2
- from functools import lru_cache
3
- from pathlib import Path
4
- from typing import Iterable, NamedTuple, Sequence
5
-
6
- from textual.content import Span
7
-
8
-
9
- SAFE_COMMANDS = {
10
- # Display & Output
11
- "echo",
12
- "cat",
13
- "less",
14
- "more",
15
- "head",
16
- "tail",
17
- "tac",
18
- "nl",
19
- # File & Directory Information
20
- "ls",
21
- "tree",
22
- "pwd",
23
- "file",
24
- "stat",
25
- "du",
26
- "df",
27
- # Search & Find
28
- "find",
29
- "locate",
30
- "which",
31
- "whereis",
32
- "type",
33
- "grep",
34
- "egrep",
35
- "fgrep",
36
- # Text Processing (read-only)
37
- "wc",
38
- "sort",
39
- "uniq",
40
- "cut",
41
- "paste",
42
- "column",
43
- "tr",
44
- "diff",
45
- "cmp",
46
- "comm",
47
- # System Information
48
- "whoami",
49
- "who",
50
- "w",
51
- "id",
52
- "hostname",
53
- "uname",
54
- "uptime",
55
- "date",
56
- "cal",
57
- "env",
58
- "printenv",
59
- # Process Information
60
- "ps",
61
- "top",
62
- "htop",
63
- "pgrep",
64
- "jobs",
65
- "pstree",
66
- # Network (read-only operations)
67
- "ping",
68
- "traceroute",
69
- "nslookup",
70
- "dig",
71
- "host",
72
- "netstat",
73
- "ss",
74
- "ifconfig",
75
- "ip",
76
- # View compressed files (without extracting)
77
- "zcat",
78
- "zless",
79
- # History & Help
80
- "history",
81
- "man",
82
- "help",
83
- "info",
84
- "apropos",
85
- "whatis",
86
- # Comparison & Checksums
87
- "md5sum",
88
- "sha256sum",
89
- "sha1sum",
90
- "cksum",
91
- "sum",
92
- # Other Safe Commands
93
- "bc",
94
- "expr",
95
- "test",
96
- "sleep",
97
- "true",
98
- "false",
99
- "yes",
100
- "seq",
101
- "basename",
102
- "dirname",
103
- "realpath",
104
- "readlink",
105
- }
106
-
107
- UNSAFE_COMMANDS = {
108
- # File/Directory Creation
109
- "mkdir",
110
- "touch",
111
- "mktemp",
112
- "mkfifo",
113
- "mknod",
114
- # File/Directory Deletion
115
- "rm",
116
- "rmdir",
117
- "shred",
118
- # File/Directory Moving/Copying
119
- "mv",
120
- "cp",
121
- "rsync",
122
- "scp",
123
- "install",
124
- # File Modification/Editing
125
- "sed", # with -i flag
126
- "awk", # can write files
127
- "tee", # writes to files and stdout
128
- # Permissions/Ownership
129
- "chmod",
130
- "chown",
131
- "chgrp",
132
- "chattr",
133
- "setfacl",
134
- # Linking
135
- "ln",
136
- "link",
137
- "unlink",
138
- # Archive/Compression (extract/compress operations)
139
- "tar",
140
- "untar",
141
- "zip",
142
- "unzip",
143
- "gzip",
144
- "gunzip",
145
- "bzip2",
146
- "bunzip2",
147
- "xz",
148
- "unxz",
149
- "7z",
150
- "rar",
151
- "unrar",
152
- # Download Tools
153
- "wget",
154
- "curl",
155
- "fetch",
156
- "aria2c",
157
- # Low-level Disk Operations
158
- "dd",
159
- "truncate",
160
- "fallocate",
161
- # File Splitting
162
- "split",
163
- "csplit",
164
- # Synchronization
165
- "sync",
166
- # System Administration
167
- "useradd",
168
- "userdel",
169
- "usermod",
170
- "groupadd",
171
- "groupdel",
172
- "passwd",
173
- "mount",
174
- "umount",
175
- "mkfs",
176
- "fdisk",
177
- "parted",
178
- "swapon",
179
- "swapoff",
180
- # Other Potentially Dangerous
181
- "patch",
182
- }
183
-
184
-
185
- COMMAND_SPLIT = {";", "&&", "||", "|"}
186
- CHANGE_DIRECTORY = {"cd"}
187
-
188
-
189
- class DangerLevel(IntEnum):
190
- """The danger level of a command."""
191
-
192
- SAFE = 0 # Command is know to be generally save
193
- UNKNOWN = 1 # We don't know about this command
194
- DANGEROUS = 2 # Command is potentially dangerous (can modify filesystem)
195
- DESTRUCTIVE = 3 # Command is both dangerous and refers outside of project root
196
-
197
-
198
- class CommandAtom(NamedTuple):
199
- """A command "atom"."""
200
-
201
- name: str
202
- """Name of the command."""
203
- level: DangerLevel
204
- """Danger level."""
205
- path: Path
206
- """The path to which this command is expected to apply."""
207
- span: tuple[int, int]
208
- """Span to highlight error."""
209
-
210
-
211
- @lru_cache(maxsize=1024)
212
- def detect(
213
- project_directory: str,
214
- current_working_directory: str,
215
- command_line: str,
216
- *,
217
- danger_style: str = "",
218
- destructive_style: str = "$text-error on $error-muted 70%",
219
- ) -> tuple[Sequence[Span], DangerLevel]:
220
- """Attempt to detect potentially destructive commands.
221
-
222
- Args:
223
- project_directory: Project directory.
224
- current_working_directory: Current working directory.
225
- command_line: Bash command.
226
- danger_style: Style to highlight dangerous commands.
227
- destructive_style: Style highlight destructive commands.
228
-
229
- Returns:
230
- A tuple of spans to highlight the command, and a `DangerLevel` enumeration.
231
- """
232
- try:
233
- atoms = list(
234
- analyze(project_directory, current_working_directory, command_line)
235
- )
236
- except OSError:
237
- return [], DangerLevel.UNKNOWN
238
- spans: list[Span] = []
239
- for atom in atoms:
240
- if atom.level == DangerLevel.DANGEROUS and danger_style:
241
- spans.append(Span(*atom.span, danger_style))
242
- elif atom.level == DangerLevel.DESTRUCTIVE and destructive_style:
243
- spans.append(Span(*atom.span, destructive_style))
244
-
245
- if atoms:
246
- danger_level = max(command_atom.level for command_atom in atoms)
247
- else:
248
- danger_level = DangerLevel.SAFE
249
-
250
- return (spans, danger_level)
251
-
252
-
253
- def analyze(
254
- project_directory: str, current_working_directory: str, command_line: str
255
- ) -> Iterable[CommandAtom]:
256
- """Analyze a command and generate information about potentially destructive commands.
257
-
258
- Args:
259
- project_dir: The project directory.
260
- command_line: A bash command line.
261
-
262
- Yields:
263
- `CommandAtom` objects.
264
- """
265
- project_path = Path(project_directory).resolve()
266
-
267
- import bashlex
268
- from bashlex import ast
269
-
270
- def recurse_nodes(root_path: Path, nodes: list[ast.node]) -> Iterable[CommandAtom]:
271
- for node in nodes:
272
- kind: str = node.kind
273
-
274
- if kind == "list":
275
- yield from recurse_nodes(root_path, node.parts)
276
- return
277
-
278
- if kind == "operator":
279
- continue
280
-
281
- level = DangerLevel.UNKNOWN
282
-
283
- if not hasattr(node, "parts"):
284
- continue
285
-
286
- if node.parts:
287
- command_name = command_line[slice(*node.parts[0].pos)]
288
- if command_name in SAFE_COMMANDS:
289
- level = DangerLevel.SAFE
290
- elif command_name in UNSAFE_COMMANDS:
291
- level = DangerLevel.DANGEROUS
292
- parts = node.parts[1:]
293
- else:
294
- parts = node.parts
295
- command_name = ""
296
-
297
- if not parts:
298
- yield CommandAtom(command_name, level, root_path, node.pos)
299
- continue
300
-
301
- change_directory = command_name in CHANGE_DIRECTORY
302
-
303
- for command_node in parts:
304
- command_word = command_line[slice(*node.pos)]
305
-
306
- if command_node.kind == "redirect":
307
- redirect = command_line[slice(*command_node.output.pos)]
308
- try:
309
- target_path = (
310
- root_path / Path(redirect).expanduser()
311
- ).resolve()
312
- except OSError:
313
- continue
314
- if not target_path.is_relative_to(project_path):
315
- yield CommandAtom(
316
- "redirect",
317
- DangerLevel.DESTRUCTIVE,
318
- target_path,
319
- command_node.pos,
320
- )
321
- continue
322
-
323
- if command_node.kind == "command":
324
- yield from recurse_nodes(root_path, command_node.parts)
325
- continue
326
- if command_word.startswith(("-", "+")):
327
- continue
328
- word = command_line[slice(*command_node.pos)]
329
- if change_directory:
330
- try:
331
- root_path = (root_path / Path(word)).expanduser().resolve()
332
- except OSError:
333
- pass
334
- continue
335
-
336
- try:
337
- target_path = (root_path / Path(word)).expanduser().resolve()
338
- except OSError:
339
- continue
340
- if level == DangerLevel.DANGEROUS and not target_path.is_relative_to(
341
- project_path
342
- ):
343
- # If refers to a path outside of the project, upgrade to destructive
344
- level = DangerLevel.DESTRUCTIVE
345
-
346
- yield CommandAtom(command_word, level, target_path, node.pos)
347
-
348
- current_path = Path(current_working_directory)
349
- try:
350
- nodes = bashlex.parse(command_line)
351
- except Exception:
352
- # Failed to parse bash
353
- return
354
-
355
- yield from recurse_nodes(current_path, nodes)
356
-
357
-
358
- if __name__ == "__main__":
359
- import os
360
- from rich import print
361
-
362
- TEST = [
363
- "ls;ls",
364
- "echo 'hello world'",
365
- "rm foo",
366
- "rm ../foo",
367
- "rm /",
368
- "cat foo > ../foo.txt",
369
- ]
370
-
371
- for test in TEST:
372
- print(repr(test), detect(os.getcwd(), os.getcwd(), test))
@@ -1,52 +0,0 @@
1
- # Schema defined in agent_schema.py
2
- # https://github.com/tao12345666333/amp-acp
3
- active = false
4
-
5
- identity = "ampcode.com"
6
- name = "Amp (AmpCode)"
7
- short_name = "amp"
8
- url = "https://ampcode.com"
9
- protocol = "acp"
10
- author_name = "AmpCode"
11
- author_url = "https://ampcode.com"
12
- publisher_name = "Will McGugan"
13
- publisher_url = "https://willmcgugan.github.io/"
14
- type = "coding"
15
- description = "Open-source ACP adapter that exposes the Amp CLI to editors such as Zed via the Agent Client Protocol."
16
- tags = []
17
- run_command."*" = "npx -y amp-acp"
18
-
19
- help = '''
20
- # Amp (AmpCode)
21
-
22
- Amp is a frontier coding agent for your terminal and editor, built by Sourcegraph.
23
-
24
- - **Multi-Model** Sonnet, GPT-5, fast models—Amp uses them all, for what each model is best at.
25
- - **Opinionated** You're always using the good parts of Amp. If we don't use and love a feature, we kill it.
26
- - **On the Frontier** Amp goes where the models take it. No backcompat, no legacy features.
27
- - **Threads** You can save and share your interactions with Amp. You wouldn't code without version control, would you?
28
-
29
- ## Prerequisites
30
-
31
- - Node.js 18+ so `npx` can run the adapter
32
- - Ensure the `AMP_EXECUTABLE` environment variable points at your Amp binary (or place `amp` on `PATH`)
33
-
34
-
35
- ---
36
-
37
- ## ACP adapter for AmpCode
38
-
39
- **Repository**: https://github.com/tao12345666333/amp-acp
40
- '''
41
-
42
- [actions."*".install]
43
- command = "curl -fsSL https://ampcode.com/install.sh | bash && npm install -g amp-acp"
44
- description = "Install AMP Code"
45
-
46
- [actions."*".install_adapter]
47
- command = "npm install -g amp-acp"
48
- description = "Install the Amp ACP adapter"
49
-
50
- [actions."*".login]
51
- command = "amp login"
52
- description = "Login to Amp (run once)"
@@ -1,41 +0,0 @@
1
- # Schema defined in agent_schema.py
2
- # https://github.com/augmentcode/auggie
3
- active = false
4
-
5
- identity = "augmentcode.com"
6
- name = "Auggie (Augment Code)"
7
- short_name = "auggie"
8
- url = "https://www.augmentcode.com/product/CLI"
9
- protocol = "acp"
10
- author_name = "Augment Code"
11
- author_url = "https://www.augmentcode.com/"
12
- publisher_name = "Will McGugan"
13
- publisher_url = "https://willmcgugan.github.io/"
14
- type = "coding"
15
- description = "An AI agent that brings Augment Code's power to the terminal with ACP support for Zed, Neovim, and Emacs."
16
- tags = []
17
- run_command."*" = "auggie --acp"
18
-
19
- help = '''
20
- # Auggie (Augment Code)
21
-
22
- *The agentic CLI that goes where your code does*
23
-
24
- ## Features
25
-
26
- - **Agent Client Protocol (ACP) Support**: Use Auggie in Zed, Neovim, Emacs, and other ACP-compatible editors
27
- - **Autonomous Code Analysis**: Intelligently explore codebases and build working memory
28
- - **Multi-Editor Integration**: Seamlessly integrates with your favorite development environment
29
-
30
- ---
31
-
32
- **Documentation**: https://docs.augmentcode.com/cli/setup-auggie/install-auggie-cli
33
- '''
34
-
35
- [actions."*".install]
36
- command = "npm install -g @augmentcode/auggie"
37
- description = "Install Auggie CLI (requires Node 22+)"
38
-
39
- [actions."*".login]
40
- command = "auggie login"
41
- description = "Login it Auggie (run once)"
@@ -1,23 +0,0 @@
1
- # CDH (Cloud Dev Harness) - Agent for A2TUI
2
- # https://github.com/cloud-dev-harness/cdh
3
- active = false
4
-
5
- identity = "cdh.cloud-dev-harness"
6
- name = "OneCode (legacy)"
7
- short_name = "cdh"
8
- url = "https://github.com/cloud-dev-harness/cdh"
9
- protocol = "acp"
10
- author_name = "CDH Team"
11
- author_url = "https://github.com/cloud-dev-harness"
12
- publisher_name = "CDH Team"
13
- publisher_url = "https://github.com/cloud-dev-harness"
14
- type = "coding"
15
- description = "OneCode - cloud-native development Agent framework with LLM provider integration"
16
- tags = []
17
- recommended = true
18
- help = "CDH Agent - Cloud Dev Harness\n\nA cloud-native development Agent framework with LLM provider integration.\n\nSupported providers: MiniMax, Anthropic, OpenAI, DeepSeek, GLM, Ollama"
19
- commands_module = "onecode.commands"
20
- commands_prefix = "onecode:"
21
- run_command."*" = "python3 -m onecode.agent.onecode_agent_acp"
22
-
23
- [actions]
@@ -1,41 +0,0 @@
1
- # Schema defined in agent_schema.py
2
- # https://www.claude.com/product/claude-code
3
-
4
- identity = "claude.com"
5
- name = "Claude Code"
6
- short_name = "claude"
7
- url = "https://www.claude.com/product/claude-code"
8
- protocol = "acp"
9
- author_name = "Anthropic"
10
- author_url = "https://www.anthropic.com/"
11
- publisher_name = "Will McGugan"
12
- publisher_url = "https://willmcgugan.github.io/"
13
- type = "coding"
14
- description = "Unleash Claude’s raw power directly in your terminal."
15
- tags = []
16
- run_command."*" = "claude-agent-acp"
17
-
18
- help = '''
19
- # Claude Code
20
-
21
- Built for developers
22
- Unleash Claude’s raw power directly in your terminal.
23
- Search million-line codebases instantly.
24
- Turn hours-long workflows into a single command.
25
- Your tools.
26
- Your workflow.
27
- Your codebase, evolving at thought speed.
28
-
29
- ---
30
- [ACP adapter for Claude Code](https://github.com/zed-industries/claude-code-acp) by Zed Industries.
31
-
32
- '''
33
-
34
-
35
- [actions."*".install]
36
- command = "curl -fsSL https://claude.ai/install.sh | bash && npm install -g @zed-industries/claude-code-acp"
37
- description = "Install Claude Code + ACP adapter"
38
-
39
- [actions."*".install_acp]
40
- command = "npm install -g @agentclientprotocol/claude-agent-acp"
41
- description = "Install ACP adapter"
@@ -1,29 +0,0 @@
1
- # Schema defined in agent_schema.py
2
- # https://github.com/github/copilot-cli?locale=en-US
3
-
4
- identity = "copilot.github.com"
5
- name = "Copilot"
6
- short_name = "copilot"
7
- url = "https://github.com/github/copilot-cli"
8
- protocol = "acp"
9
- author_name = "GitHub"
10
- author_url = "https://githib.com"
11
- publisher_name = "Will McGugan"
12
- publisher_url = "https://willmcgugan.github.io/"
13
- type = "coding"
14
- description = "The power of GitHub Copilot, now in your terminal."
15
- tags = []
16
- run_command."*" = "copilot --acp"
17
-
18
- help = '''
19
- # GitHub Copilot
20
-
21
- GitHub Copilot CLI brings AI-powered coding assistance directly to your command line, enabling you to build, debug, and understand code through natural language conversations. Powered by the same agentic harness as GitHub's Copilot coding agent, it provides intelligent assistance while staying deeply integrated with your GitHub workflow.
22
-
23
- Install vial the select below, or see the README for [alternative install methods](https://github.com/github/copilot-cli?tab=readme-ov-file#installation)
24
-
25
- '''
26
-
27
- [actions."*".install]
28
- command = "npm install -g @github/copilot@prerelease"
29
- description = "Install Copilot"
@@ -1,36 +0,0 @@
1
- # Schema defined in agent_schema.py
2
- # https://github.com/crow-cli/crow-cli
3
- active = false
4
-
5
- identity = "crowai.dev"
6
- name = "crow-cli"
7
- short_name = "crow-cli"
8
- url = "https://crow-ai.dev"
9
- protocol = "acp"
10
- author_name = "Thomas Wood"
11
- author_url = "https://crow-ai.dev"
12
- publisher_name = "Thomas Wood"
13
- publisher_url = "https://crow-ai.dev"
14
- type = "coding"
15
- description = "Minimal ACP Native Coding Agent. A reference implementation of the Agent Client Protocol with zero frameworks—just pure Python, OpenAI SDK, FastMCP, and SQLAlchemy."
16
- tags = []
17
- run_command."*" = "crow-cli acp"
18
-
19
- help = '''
20
- # crow-cli
21
-
22
- Minimal ACP Native Coding Agent.
23
-
24
- Run `uvx crow-cli init` to configure before running.
25
-
26
- '''
27
-
28
-
29
- [actions."*".install]
30
- command = "uv tool install crow-cli --no-cache --python 3.14"
31
- description = "Install crow-cli"
32
-
33
-
34
- [actions."*".update]
35
- command = "uv tool upgrade crow-cli --no-cache --python 3.14"
36
- description = "Upgrade crow-cli"
@@ -1,38 +0,0 @@
1
- # Schema defined in agent_schema.py
2
- # https://cursor.com/docs/cli/acp
3
-
4
- identity = "cursor.com"
5
- name = "Cursor"
6
- short_name = "cursor"
7
- url = "https://cursor.com/docs/cli/acp"
8
- protocol = "acp"
9
- author_name = "Cursor"
10
- author_url = "https://cursor.com"
11
- publisher_name = "Will McGugan"
12
- publisher_url = "https://willmcgugan.github.io/"
13
- type = "coding"
14
- description = "AI-powered coding assistant from Cursor, now in your terminal with native ACP support."
15
- tags = []
16
- run_command."*" = "agent acp"
17
-
18
- help = '''
19
- # Cursor
20
-
21
- **AI-powered coding in your terminal**
22
-
23
- Cursor CLI brings the power of Cursor's AI coding assistant to your command line with native Agent Client Protocol support.
24
-
25
- ---
26
-
27
- ⚠️ Run Login action after installing, to login via your browser.
28
-
29
- **Documentation**: https://cursor.com/docs/cli/acp
30
- '''
31
-
32
- [actions."*".install]
33
- command = "curl https://cursor.com/install -fsS | bash"
34
- description = "Install Cursor CLI"
35
-
36
- [actions."*".login]
37
- command = "agent login"
38
- description = "Login (must be done once)"
@@ -1,34 +0,0 @@
1
- active = false
2
- identity = "deepagents.langchain.com"
3
- name = "Deep Agents"
4
- short_name = "deepagents"
5
- url = "https://github.com/langchain-ai/deepagents"
6
- protocol = "acp"
7
- author_name = "LangChain"
8
- author_url = "https://www.langchain.com/"
9
- publisher_name = "LangChain"
10
- publisher_url = "https://www.langchain.com/"
11
- type = "coding"
12
- description = "LangChain's open-source terminal coding agent built on LangGraph. File operations, shell access, sub-agents, and MCP tool support."
13
- tags = ["open-source"]
14
- run_command."*" = "deepagents --acp"
15
-
16
- help = '''
17
- # Deep Agents
18
-
19
- LangChain's open-source terminal coding agent built on LangGraph.
20
-
21
- Supports file operations, shell access, subagents, MCP tools, and dynamic model switching.
22
-
23
- [deepagents-cli](https://github.com/langchain-ai/deepagents/tree/main/libs/cli)
24
- '''
25
-
26
- [actions."*".install]
27
- command = "uv tool install deepagents-cli -U --python 3.12"
28
- bootstrap_uv = true
29
- description = "Install deepagents-cli"
30
-
31
- [actions."*".update]
32
- command = "uv tool install deepagents-cli -U --python 3.12"
33
- bootstrap_uv = true
34
- description = "Update deepagents-cli"