@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
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"