vtx-coding-agent 0.2.3__tar.gz → 0.2.5__tar.gz

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 (895) hide show
  1. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/AGENTS.md +7 -15
  2. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/CHANGELOG.md +29 -0
  3. vtx_coding_agent-0.2.5/PKG-INFO +289 -0
  4. vtx_coding_agent-0.2.5/README.md +203 -0
  5. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/README.md +8 -5
  6. vtx_coding_agent-0.2.5/docs/agents.md +64 -0
  7. vtx_coding_agent-0.2.5/docs/architecture.md +47 -0
  8. vtx_coding_agent-0.2.5/docs/configuration.md +140 -0
  9. vtx_coding_agent-0.2.5/docs/development.md +48 -0
  10. vtx_coding_agent-0.2.5/docs/extensions.md +84 -0
  11. vtx_coding_agent-0.2.5/docs/goal.md +45 -0
  12. vtx_coding_agent-0.2.5/docs/headless.md +43 -0
  13. vtx_coding_agent-0.2.5/docs/hooks.md +31 -0
  14. vtx_coding_agent-0.2.5/docs/local-models.md +48 -0
  15. vtx_coding_agent-0.2.5/docs/permissions.md +41 -0
  16. vtx_coding_agent-0.2.5/docs/providers.md +94 -0
  17. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/README.md +6 -5
  18. vtx_coding_agent-0.2.5/docs/sessions.md +52 -0
  19. vtx_coding_agent-0.2.5/docs/skills.md +51 -0
  20. vtx_coding_agent-0.2.5/docs/storage-layout.md +39 -0
  21. vtx_coding_agent-0.2.5/docs/theming.md +25 -0
  22. vtx_coding_agent-0.2.5/docs/tools.md +133 -0
  23. vtx_coding_agent-0.2.5/docs/ui.md +46 -0
  24. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/pyproject.toml +1 -1
  25. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/config.py +15 -1
  26. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/provider.yaml +13 -0
  27. vtx_coding_agent-0.2.5/src/vtx/prompts/identity.py +135 -0
  28. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/__init__.py +24 -1
  29. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/ask_user.py +9 -45
  30. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/bash.py +5 -10
  31. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/edit.py +6 -13
  32. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/find.py +5 -11
  33. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/grep.py +6 -15
  34. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/read.py +7 -17
  35. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/skill.py +9 -39
  36. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/task.py +9 -58
  37. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/web.py +9 -34
  38. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/write.py +4 -7
  39. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/app.py +2 -2
  40. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/chat.py +2 -2
  41. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/welcome.py +2 -2
  42. vtx_coding_agent-0.2.5/src/vtx/version.py +47 -0
  43. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_config_migration.py +2 -2
  44. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_system_prompt.py +8 -8
  45. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/uv.lock +1 -1
  46. vtx_coding_agent-0.2.3/PKG-INFO +0 -452
  47. vtx_coding_agent-0.2.3/README.md +0 -366
  48. vtx_coding_agent-0.2.3/docs/agents.md +0 -459
  49. vtx_coding_agent-0.2.3/docs/architecture.md +0 -393
  50. vtx_coding_agent-0.2.3/docs/configuration.md +0 -440
  51. vtx_coding_agent-0.2.3/docs/development.md +0 -238
  52. vtx_coding_agent-0.2.3/docs/extensions.md +0 -249
  53. vtx_coding_agent-0.2.3/docs/goal.md +0 -130
  54. vtx_coding_agent-0.2.3/docs/headless.md +0 -128
  55. vtx_coding_agent-0.2.3/docs/hooks.md +0 -285
  56. vtx_coding_agent-0.2.3/docs/local-models.md +0 -88
  57. vtx_coding_agent-0.2.3/docs/permissions.md +0 -88
  58. vtx_coding_agent-0.2.3/docs/providers.md +0 -247
  59. vtx_coding_agent-0.2.3/docs/sessions.md +0 -231
  60. vtx_coding_agent-0.2.3/docs/skills.md +0 -172
  61. vtx_coding_agent-0.2.3/docs/storage-layout.md +0 -186
  62. vtx_coding_agent-0.2.3/docs/theming.md +0 -117
  63. vtx_coding_agent-0.2.3/docs/tools.md +0 -197
  64. vtx_coding_agent-0.2.3/docs/ui.md +0 -364
  65. vtx_coding_agent-0.2.3/src/vtx/prompts/identity.py +0 -149
  66. vtx_coding_agent-0.2.3/src/vtx/version.py +0 -22
  67. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.agents/skills/vtx-release-publish/SKILL.md +0 -0
  68. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.agents/skills/vtx-tmux-test/SKILL.md +0 -0
  69. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.agents/skills/vtx-tmux-test/run-e2e-tests.sh +0 -0
  70. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.agents/skills/vtx-tmux-test/setup-test-project.sh +0 -0
  71. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.github/workflows/deploy-site.yml +0 -0
  72. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.gitignore +0 -0
  73. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.pre-commit-config.yaml +0 -0
  74. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/.python-version +0 -0
  75. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/LICENSE +0 -0
  76. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/.env.example +0 -0
  77. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/.gitignore +0 -0
  78. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/.netlify/netlify.toml +0 -0
  79. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/.netlify/state.json +0 -0
  80. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/index.html +0 -0
  81. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/metadata.json +0 -0
  82. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/netlify.toml +0 -0
  83. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/package-lock.json +0 -0
  84. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/package.json +0 -0
  85. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/pnpm-lock.yaml +0 -0
  86. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/pnpm-workspace.yaml +0 -0
  87. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/.well-known/security.txt +0 -0
  88. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/_redirects +0 -0
  89. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/android-chrome-192x192.png +0 -0
  90. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/android-chrome-512x512.png +0 -0
  91. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/apple-touch-icon.png +0 -0
  92. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/browserconfig.xml +0 -0
  93. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon-16x16.png +0 -0
  94. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon-192x192.png +0 -0
  95. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon-32x32.png +0 -0
  96. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon-48x48.png +0 -0
  97. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon-512x512.png +0 -0
  98. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon-96x96.png +0 -0
  99. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/favicon.ico +0 -0
  100. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/manifest.json +0 -0
  101. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/mstile-150x150.png +0 -0
  102. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/og-image.jpg +0 -0
  103. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/og-image.png +0 -0
  104. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/og-image.webp +0 -0
  105. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/robots.txt +0 -0
  106. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/sitemap.xml +0 -0
  107. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/twitter-card.jpg +0 -0
  108. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/twitter-card.png +0 -0
  109. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/public/twitter-card.webp +0 -0
  110. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/scripts/optimize-images.mjs +0 -0
  111. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/scripts/prerender.mjs +0 -0
  112. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/server.ts +0 -0
  113. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/App.tsx +0 -0
  114. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/CTASection.tsx +0 -0
  115. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Capabilities.tsx +0 -0
  116. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/CodebaseGraph.tsx +0 -0
  117. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/DocsPage.tsx +0 -0
  118. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/FeaturesPage.tsx +0 -0
  119. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Footer.tsx +0 -0
  120. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Hero.tsx +0 -0
  121. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/LiveStats.tsx +0 -0
  122. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/MarkdownRenderer.tsx +0 -0
  123. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Marquee.tsx +0 -0
  124. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Navbar.tsx +0 -0
  125. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/NotFound.tsx +0 -0
  126. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Reveal.tsx +0 -0
  127. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/ScrollProgress.tsx +0 -0
  128. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/SectionLabel.tsx +0 -0
  129. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/TerminalBlock.tsx +0 -0
  130. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/components/Why.tsx +0 -0
  131. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/blog/agentic-loop.ts +0 -0
  132. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/blog/agentskill.ts +0 -0
  133. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/blog/index.ts +0 -0
  134. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/blog/mcp-extensions.ts +0 -0
  135. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/blog/memory-compaction.ts +0 -0
  136. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/code-graph.json +0 -0
  137. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/content/docs/index.ts +0 -0
  138. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/hooks/useRouteMeta.ts +0 -0
  139. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/index.css +0 -0
  140. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/main.tsx +0 -0
  141. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/types.ts +0 -0
  142. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/src/vite-env.d.ts +0 -0
  143. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/tsconfig.json +0 -0
  144. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/Site/vite.config.ts +0 -0
  145. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/README.md +0 -0
  146. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/architecture.md +0 -0
  147. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/audio.md +0 -0
  148. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/channels.md +0 -0
  149. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/cli.md +0 -0
  150. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/configuration.md +0 -0
  151. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/cron.md +0 -0
  152. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/gateway.md +0 -0
  153. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/mcp.md +0 -0
  154. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/pairing.md +0 -0
  155. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/providers.md +0 -0
  156. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/security.md +0 -0
  157. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/sessions.md +0 -0
  158. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/skills.md +0 -0
  159. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/slash-commands.md +0 -0
  160. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/claw/tools.md +0 -0
  161. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/e2e-test-coverage-review.md +0 -0
  162. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/agents.md +0 -0
  163. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/approvals.md +0 -0
  164. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/guardrails.md +0 -0
  165. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/multi_agent.md +0 -0
  166. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/permissions.md +0 -0
  167. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/runner.md +0 -0
  168. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/sessions.md +0 -0
  169. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/skills.md +0 -0
  170. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/tools.md +0 -0
  171. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/docs/sdk/tracing.md +0 -0
  172. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/agents/code-review.py +0 -0
  173. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/agents/data-engineer.py +0 -0
  174. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/agents/explorer.py +0 -0
  175. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/agents/security-audit.py +0 -0
  176. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/agents/security_extensions.py +0 -0
  177. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/agents/yolo.py +0 -0
  178. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/auto_commit.py +0 -0
  179. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/custom_tool_block.py +0 -0
  180. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/hello.py +0 -0
  181. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/log_tool_calls.py +0 -0
  182. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/permission_gate.py +0 -0
  183. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/task_tool.py +0 -0
  184. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/extensions/tool_override.py +0 -0
  185. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/01_quickstart.py +0 -0
  186. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/02_multi_agent_handoff.py +0 -0
  187. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/03_multi_agent_manager.py +0 -0
  188. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/04_guardrails.py +0 -0
  189. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/05_sessions.py +0 -0
  190. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/06_approvals.py +0 -0
  191. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/07_tracing.py +0 -0
  192. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/examples/sdk/08_skills.py +0 -0
  193. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/logo.png +0 -0
  194. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/scripts/install.ps1 +0 -0
  195. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/scripts/install.sh +0 -0
  196. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/scripts/show_themes.py +0 -0
  197. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/scripts/supercode_proxy.py +0 -0
  198. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/__init__.py +0 -0
  199. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/conftest.py +0 -0
  200. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_auto_compact.py +0 -0
  201. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_autocompact_unit.py +0 -0
  202. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_consolidate_offset.py +0 -0
  203. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_consolidation_ratio.py +0 -0
  204. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_consolidator.py +0 -0
  205. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_context_aware.py +0 -0
  206. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_context_builder.py +0 -0
  207. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_context_prompt_cache.py +0 -0
  208. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_cursor_recovery.py +0 -0
  209. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_document_extraction_toggle.py +0 -0
  210. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_dream.py +0 -0
  211. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_dream_session.py +0 -0
  212. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_dream_tools.py +0 -0
  213. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_evaluator.py +0 -0
  214. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_gemini_thought_signature.py +0 -0
  215. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_git_store.py +0 -0
  216. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_hook_composite.py +0 -0
  217. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_consolidation_tokens.py +0 -0
  218. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_cron_timezone.py +0 -0
  219. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_direct_websocket_status.py +0 -0
  220. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_goal_wall_timeout.py +0 -0
  221. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_image_generation_media.py +0 -0
  222. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_progress.py +0 -0
  223. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_runner_integration.py +0 -0
  224. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_save_turn.py +0 -0
  225. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_loop_tool_context.py +0 -0
  226. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_max_messages_config.py +0 -0
  227. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_mcp_connection.py +0 -0
  228. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_mcp_transient_retry.py +0 -0
  229. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_memory_store.py +0 -0
  230. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_onboard_logic.py +0 -0
  231. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_core.py +0 -0
  232. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_errors.py +0 -0
  233. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_fallback.py +0 -0
  234. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_goal_continue.py +0 -0
  235. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_governance.py +0 -0
  236. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_hooks.py +0 -0
  237. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_injections.py +0 -0
  238. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_persistence.py +0 -0
  239. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_progress_deltas.py +0 -0
  240. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_reasoning.py +0 -0
  241. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_safety.py +0 -0
  242. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runner_tool_execution.py +0 -0
  243. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_runtime_refresh.py +0 -0
  244. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_self_model_preset.py +0 -0
  245. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_session_atomic.py +0 -0
  246. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_session_collision.py +0 -0
  247. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_session_delete.py +0 -0
  248. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_session_manager_history.py +0 -0
  249. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_skill_creator_scripts.py +0 -0
  250. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_skills_loader.py +0 -0
  251. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_stop_preserves_context.py +0 -0
  252. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_subagent.py +0 -0
  253. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_subagent_lifecycle.py +0 -0
  254. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_task_cancel.py +0 -0
  255. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_tool_hint.py +0 -0
  256. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_tool_loader_entrypoints.py +0 -0
  257. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_tool_loader_scopes.py +0 -0
  258. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_unified_session.py +0 -0
  259. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/test_workspace_scope.py +0 -0
  260. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/tools/__init__.py +0 -0
  261. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/tools/test_long_task.py +0 -0
  262. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/tools/test_self_tool.py +0 -0
  263. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/tools/test_self_tool_runtime_sync.py +0 -0
  264. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/agent/tools/test_subagent_tools.py +0 -0
  265. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/bus/test_runtime_events.py +0 -0
  266. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_base_channel.py +0 -0
  267. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_channel_manager_delta_coalescing.py +0 -0
  268. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_channel_manager_reasoning.py +0 -0
  269. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_channel_plugins.py +0 -0
  270. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_dingtalk_channel.py +0 -0
  271. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_discord_channel.py +0 -0
  272. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_email_channel.py +0 -0
  273. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_card_extraction.py +0 -0
  274. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_domain.py +0 -0
  275. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_lazy_import.py +0 -0
  276. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_login.py +0 -0
  277. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_markdown_rendering.py +0 -0
  278. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_media_filename_security.py +0 -0
  279. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_mention.py +0 -0
  280. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_mentions.py +0 -0
  281. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_post_content.py +0 -0
  282. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_reaction.py +0 -0
  283. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_reply.py +0 -0
  284. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_streaming.py +0 -0
  285. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_table_split.py +0 -0
  286. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_feishu_tool_hint_code_block.py +0 -0
  287. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_matrix_channel.py +0 -0
  288. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_napcat_channel.py +0 -0
  289. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_qq_ack_message.py +0 -0
  290. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_qq_channel.py +0 -0
  291. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_qq_media.py +0 -0
  292. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_signal_channel.py +0 -0
  293. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_signal_markdown.py +0 -0
  294. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_slack_channel.py +0 -0
  295. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_telegram_channel.py +0 -0
  296. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_channel.py +0 -0
  297. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_envelope_media.py +0 -0
  298. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_http_routes.py +0 -0
  299. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_integration.py +0 -0
  300. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_media_route.py +0 -0
  301. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_protocol_boundaries.py +0 -0
  302. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_websocket_reconnect_idle.py +0 -0
  303. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_wecom_channel.py +0 -0
  304. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_weixin_channel.py +0 -0
  305. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/test_whatsapp_channel.py +0 -0
  306. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/channels/ws_test_client.py +0 -0
  307. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_bot_identity.py +0 -0
  308. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_cli_input.py +0 -0
  309. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_commands.py +0 -0
  310. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_gateway_commands.py +0 -0
  311. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_interactive_retry_wait.py +0 -0
  312. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_restart_command.py +0 -0
  313. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli/test_safe_file_history.py +0 -0
  314. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli_apps/test_service.py +0 -0
  315. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli_apps/test_tool.py +0 -0
  316. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cli_apps/test_utils.py +0 -0
  317. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/command/test_builtin_dream.py +0 -0
  318. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/command/test_model_command.py +0 -0
  319. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/command/test_router_dispatchable.py +0 -0
  320. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/command/test_skill_command.py +0 -0
  321. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/command/test_stop_pending_queue.py +0 -0
  322. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_config_load_errors.py +0 -0
  323. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_config_migration.py +0 -0
  324. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_config_paths.py +0 -0
  325. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_dream_config.py +0 -0
  326. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_env_interpolation.py +0 -0
  327. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_model_presets.py +0 -0
  328. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/config/test_tool_config_boundaries.py +0 -0
  329. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cron/test_cron_persistence.py +0 -0
  330. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cron/test_cron_service.py +0 -0
  331. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cron/test_cron_tool_list.py +0 -0
  332. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cron/test_cron_tool_schema_contract.py +0 -0
  333. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/cron/test_session_delivery.py +0 -0
  334. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/gateway/test_gateway_service.py +0 -0
  335. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/gateway/test_runtime.py +0 -0
  336. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/pairing/test_store.py +0 -0
  337. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_ant_ling_provider.py +0 -0
  338. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_anthropic_long_request_fallback.py +0 -0
  339. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_anthropic_merge_consecutive.py +0 -0
  340. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_anthropic_stream_idle.py +0 -0
  341. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_anthropic_thinking.py +0 -0
  342. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_anthropic_tool_result.py +0 -0
  343. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_azure_openai_provider.py +0 -0
  344. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_bedrock_provider.py +0 -0
  345. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_cached_tokens.py +0 -0
  346. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_custom_provider.py +0 -0
  347. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_custom_thinking_style.py +0 -0
  348. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_enforce_role_alternation.py +0 -0
  349. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_extra_body_config.py +0 -0
  350. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_extra_query_config.py +0 -0
  351. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_github_copilot_routing.py +0 -0
  352. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_image_generation.py +0 -0
  353. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_litellm_kwargs.py +0 -0
  354. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_llm_response.py +0 -0
  355. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_local_endpoint_detection.py +0 -0
  356. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_longcat_provider.py +0 -0
  357. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_minimax_anthropic_provider.py +0 -0
  358. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_mistral_provider.py +0 -0
  359. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_novita_provider.py +0 -0
  360. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_openai_codex_provider.py +0 -0
  361. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_openai_compat_timeout.py +0 -0
  362. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_openai_responses.py +0 -0
  363. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_opencode_provider.py +0 -0
  364. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_prompt_cache_markers.py +0 -0
  365. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_provider_default_headers.py +0 -0
  366. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_provider_error_metadata.py +0 -0
  367. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_provider_retry.py +0 -0
  368. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_provider_retry_after_hints.py +0 -0
  369. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_provider_sdk_retry_defaults.py +0 -0
  370. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_provider_tool_arguments.py +0 -0
  371. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_providers_init.py +0 -0
  372. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_proxy_env.py +0 -0
  373. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_reasoning_content.py +0 -0
  374. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_responses_circuit_breaker.py +0 -0
  375. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_skywork_provider.py +0 -0
  376. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_stepfun_asr.py +0 -0
  377. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_stepfun_reasoning.py +0 -0
  378. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_stream_idle_timeout_config.py +0 -0
  379. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_strip_image_content.py +0 -0
  380. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_transcription.py +0 -0
  381. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/providers/test_xiaomi_mimo_thinking.py +0 -0
  382. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/security/test_security_network.py +0 -0
  383. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/security/test_workspace_policy.py +0 -0
  384. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/security/test_workspace_sandbox.py +0 -0
  385. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/session/__init__.py +0 -0
  386. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/session/test_consolidated_offset_clamp.py +0 -0
  387. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/session/test_goal_state.py +0 -0
  388. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/session/test_session_fsync.py +0 -0
  389. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/session/test_session_list_repair_legacy.py +0 -0
  390. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/session/test_turn_continuation.py +0 -0
  391. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_api_attachment.py +0 -0
  392. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_api_stream.py +0 -0
  393. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_build_status.py +0 -0
  394. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_context_documents.py +0 -0
  395. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_docker.sh +0 -0
  396. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_document_parsing.py +0 -0
  397. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_file_tool_toggle.py +0 -0
  398. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_msteams.py +0 -0
  399. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_openai_api.py +0 -0
  400. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_package_version.py +0 -0
  401. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_tool_contextvars.py +0 -0
  402. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_truncate_text_shadowing.py +0 -0
  403. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/test_vtx_claw_facade.py +0 -0
  404. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/__init__.py +0 -0
  405. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_apply_patch_tool.py +0 -0
  406. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_edit_advanced.py +0 -0
  407. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_edit_enhancements.py +0 -0
  408. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_exec_allow_patterns.py +0 -0
  409. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_exec_env.py +0 -0
  410. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_exec_platform.py +0 -0
  411. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_exec_security.py +0 -0
  412. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_exec_session_tools.py +0 -0
  413. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_file_edit_coding_enhancements.py +0 -0
  414. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_filesystem_tools.py +0 -0
  415. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_image_generation_tool.py +0 -0
  416. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_mcp_probe.py +0 -0
  417. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_mcp_tool.py +0 -0
  418. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_message_tool.py +0 -0
  419. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_message_tool_suppress.py +0 -0
  420. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_read_enhancements.py +0 -0
  421. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_sandbox.py +0 -0
  422. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_search_tools.py +0 -0
  423. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_tool_descriptions.py +0 -0
  424. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_tool_loader.py +0 -0
  425. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_tool_registry.py +0 -0
  426. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_tool_validation.py +0 -0
  427. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_web_fetch_security.py +0 -0
  428. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_web_fetch_url_sanitization.py +0 -0
  429. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/tools/test_web_search_tool.py +0 -0
  430. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_abbreviate_path.py +0 -0
  431. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_artifacts.py +0 -0
  432. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_file_edit_events.py +0 -0
  433. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_gitstore.py +0 -0
  434. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_helpers.py +0 -0
  435. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_image_generation_intent.py +0 -0
  436. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_media_decode.py +0 -0
  437. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_restart.py +0 -0
  438. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_searchusage.py +0 -0
  439. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_strip_think.py +0 -0
  440. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_subagent_channel_display.py +0 -0
  441. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_token_estimation.py +0 -0
  442. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/claw/tests/utils/test_workspace_violation_throttle.py +0 -0
  443. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/__init__.py +0 -0
  444. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/__init__.py +0 -0
  445. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/activate.py +0 -0
  446. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/api.py +0 -0
  447. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/discovery.py +0 -0
  448. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/loader.py +0 -0
  449. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/registry.py +0 -0
  450. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/agents/schema.py +0 -0
  451. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/async_utils.py +0 -0
  452. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/google-colab/SKILL.md +0 -0
  453. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/SKILL.md +0 -0
  454. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/api_reference.md +0 -0
  455. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/examples.md +0 -0
  456. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/functions.md +0 -0
  457. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/getting-started.md +0 -0
  458. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/gpu.md +0 -0
  459. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/images.md +0 -0
  460. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/resources.md +0 -0
  461. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/scaling.md +0 -0
  462. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/scheduled-jobs.md +0 -0
  463. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/secrets.md +0 -0
  464. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/volumes.md +0 -0
  465. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/cloud/modal/references/web-endpoints.md +0 -0
  466. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/code-review/review/SKILL.md +0 -0
  467. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/general/github/SKILL.md +0 -0
  468. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/meta/skill-builder/SKILL.md +0 -0
  469. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/builtin_skills/setup/init/SKILL.md +0 -0
  470. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/cli.py +0 -0
  471. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/context/__init__.py +0 -0
  472. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/context/_xml.py +0 -0
  473. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/context/agent_mds.py +0 -0
  474. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/context/git.py +0 -0
  475. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/context/loader.py +0 -0
  476. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/context/skills.py +0 -0
  477. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/core/__init__.py +0 -0
  478. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/core/compaction.py +0 -0
  479. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/core/errors.py +0 -0
  480. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/core/handoff.py +0 -0
  481. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/core/scratchpad.py +0 -0
  482. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/core/types.py +0 -0
  483. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/defaults/__init__.py +0 -0
  484. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/defaults/config.yml +0 -0
  485. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/diff_display.py +0 -0
  486. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/dispatcher.py +0 -0
  487. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/events.py +0 -0
  488. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/extensions.py +0 -0
  489. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/gh_cli.py +0 -0
  490. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/git_branch.py +0 -0
  491. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/goal.py +0 -0
  492. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/headless.py +0 -0
  493. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/hooks/__init__.py +0 -0
  494. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/hooks/bridge.py +0 -0
  495. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/hooks/loader.py +0 -0
  496. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/hooks/registry.py +0 -0
  497. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/hooks/runtime.py +0 -0
  498. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/hooks/types.py +0 -0
  499. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/__init__.py +0 -0
  500. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/base.py +0 -0
  501. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/context_length.py +0 -0
  502. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/dynamic_models.py +0 -0
  503. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/model_fetcher.py +0 -0
  504. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/models.py +0 -0
  505. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/oauth/__init__.py +0 -0
  506. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/oauth/copilot.py +0 -0
  507. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/oauth/dynamic.py +0 -0
  508. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/oauth/openai.py +0 -0
  509. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/oauth/supercode.py +0 -0
  510. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/phase_parser.py +0 -0
  511. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/provider_catalog.py +0 -0
  512. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/providers/__init__.py +0 -0
  513. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/providers/anthropic_sdk.py +0 -0
  514. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/providers/mock.py +0 -0
  515. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/providers/openai_sdk.py +0 -0
  516. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/providers/sanitize.py +0 -0
  517. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/providers/supercode.py +0 -0
  518. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/rate_limit.py +0 -0
  519. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/sdk/__init__.py +0 -0
  520. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/sdk/anthropic.py +0 -0
  521. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/sdk/base.py +0 -0
  522. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/sdk/openai.py +0 -0
  523. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/sdk/supercode.py +0 -0
  524. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/llm/tool_parser.py +0 -0
  525. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/loop.py +0 -0
  526. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/notify.py +0 -0
  527. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/permissions.py +0 -0
  528. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/prompts/__init__.py +0 -0
  529. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/prompts/builder.py +0 -0
  530. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/prompts/env.py +0 -0
  531. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/prompts/tooling.py +0 -0
  532. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/py.typed +0 -0
  533. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/runtime.py +0 -0
  534. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/__init__.py +0 -0
  535. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/_version.py +0 -0
  536. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/agent.py +0 -0
  537. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/approvals.py +0 -0
  538. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/guardrails/__init__.py +0 -0
  539. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/guardrails/types.py +0 -0
  540. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/handoffs.py +0 -0
  541. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/items.py +0 -0
  542. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/items_base.py +0 -0
  543. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/permissions.py +0 -0
  544. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/results.py +0 -0
  545. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/run_config.py +0 -0
  546. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/runner.py +0 -0
  547. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/sessions.py +0 -0
  548. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/skills.py +0 -0
  549. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tools.py +0 -0
  550. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tracing/__init__.py +0 -0
  551. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tracing/exporters/__init__.py +0 -0
  552. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tracing/exporters/console.py +0 -0
  553. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tracing/exporters/jsonl.py +0 -0
  554. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tracing/processor.py +0 -0
  555. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sdk/tracing/tracing_impl.py +0 -0
  556. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/self_update.py +0 -0
  557. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/session.py +0 -0
  558. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sounds/completion.wav +0 -0
  559. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sounds/error.wav +0 -0
  560. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/sounds/permission.wav +0 -0
  561. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/themes.py +0 -0
  562. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/_read_image.py +0 -0
  563. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/_tool_utils.py +0 -0
  564. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/background.py +0 -0
  565. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools/base.py +0 -0
  566. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/tools_manager.py +0 -0
  567. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/turn.py +0 -0
  568. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/__init__.py +0 -0
  569. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/agent_runner.py +0 -0
  570. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/app_protocol.py +0 -0
  571. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/autocomplete.py +0 -0
  572. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/blocks.py +0 -0
  573. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/clipboard.py +0 -0
  574. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/__init__.py +0 -0
  575. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/agents.py +0 -0
  576. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/auth.py +0 -0
  577. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/base.py +0 -0
  578. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/goal.py +0 -0
  579. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/models.py +0 -0
  580. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/providers.py +0 -0
  581. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/sessions.py +0 -0
  582. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/commands/settings.py +0 -0
  583. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/completion_ui.py +0 -0
  584. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/export.py +0 -0
  585. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/floating_list.py +0 -0
  586. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/formatting.py +0 -0
  587. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/input.py +0 -0
  588. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/latex.py +0 -0
  589. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/launch.py +0 -0
  590. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/path_complete.py +0 -0
  591. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/prompt_history.py +0 -0
  592. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/queue_ui.py +0 -0
  593. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/selection_mode.py +0 -0
  594. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/session_ui.py +0 -0
  595. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/startup.py +0 -0
  596. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/styles.py +0 -0
  597. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/tool_output.py +0 -0
  598. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/tree.py +0 -0
  599. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/ui/widgets.py +0 -0
  600. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx/update_check.py +0 -0
  601. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/__init__.py +0 -0
  602. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/__main__.py +0 -0
  603. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/_vtx_bridge.py +0 -0
  604. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/__init__.py +0 -0
  605. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/autocompact.py +0 -0
  606. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/context.py +0 -0
  607. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/context_governance.py +0 -0
  608. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/cron_turns.py +0 -0
  609. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/hook.py +0 -0
  610. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/loop.py +0 -0
  611. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/memory.py +0 -0
  612. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/model_presets.py +0 -0
  613. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/progress_hook.py +0 -0
  614. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/runner.py +0 -0
  615. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/skills.py +0 -0
  616. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/subagent.py +0 -0
  617. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/__init__.py +0 -0
  618. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/apply_patch.py +0 -0
  619. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/base.py +0 -0
  620. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/cli_apps.py +0 -0
  621. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/context.py +0 -0
  622. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/cron.py +0 -0
  623. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/exec_session.py +0 -0
  624. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/file_state.py +0 -0
  625. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/filesystem.py +0 -0
  626. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/image_generation.py +0 -0
  627. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/loader.py +0 -0
  628. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/long_task.py +0 -0
  629. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/mcp.py +0 -0
  630. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/message.py +0 -0
  631. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/path_utils.py +0 -0
  632. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/registry.py +0 -0
  633. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/runtime_state.py +0 -0
  634. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/sandbox.py +0 -0
  635. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/schema.py +0 -0
  636. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/search.py +0 -0
  637. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/self.py +0 -0
  638. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/shell.py +0 -0
  639. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/spawn.py +0 -0
  640. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/agent/tools/web.py +0 -0
  641. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/api/__init__.py +0 -0
  642. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/api/server.py +0 -0
  643. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/apps/__init__.py +0 -0
  644. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/apps/cli/__init__.py +0 -0
  645. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/apps/cli/service.py +0 -0
  646. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/apps/cli/utils.py +0 -0
  647. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/apps/protocol.py +0 -0
  648. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/audio/__init__.py +0 -0
  649. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/audio/transcription.py +0 -0
  650. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/audio/transcription_registry.py +0 -0
  651. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/bus/__init__.py +0 -0
  652. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/bus/events.py +0 -0
  653. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/bus/progress.py +0 -0
  654. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/bus/queue.py +0 -0
  655. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/bus/runtime_events.py +0 -0
  656. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/__init__.py +0 -0
  657. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/base.py +0 -0
  658. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/dingtalk.py +0 -0
  659. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/discord.py +0 -0
  660. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/email.py +0 -0
  661. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/feishu.py +0 -0
  662. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/manager.py +0 -0
  663. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/matrix.py +0 -0
  664. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/mochat.py +0 -0
  665. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/msteams.py +0 -0
  666. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/napcat.py +0 -0
  667. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/qq.py +0 -0
  668. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/registry.py +0 -0
  669. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/signal.py +0 -0
  670. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/slack.py +0 -0
  671. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/telegram.py +0 -0
  672. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/websocket.py +0 -0
  673. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/wecom.py +0 -0
  674. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/weixin.py +0 -0
  675. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/channels/whatsapp.py +0 -0
  676. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cli/__init__.py +0 -0
  677. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cli/commands.py +0 -0
  678. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cli/gateway.py +0 -0
  679. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cli/models.py +0 -0
  680. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cli/onboard.py +0 -0
  681. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cli/stream.py +0 -0
  682. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/command/__init__.py +0 -0
  683. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/command/builtin.py +0 -0
  684. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/command/router.py +0 -0
  685. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/config/__init__.py +0 -0
  686. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/config/loader.py +0 -0
  687. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/config/paths.py +0 -0
  688. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/config/schema.py +0 -0
  689. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/config_base.py +0 -0
  690. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cron/__init__.py +0 -0
  691. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cron/bound_runner.py +0 -0
  692. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cron/service.py +0 -0
  693. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cron/session_delivery.py +0 -0
  694. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cron/session_turns.py +0 -0
  695. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/cron/types.py +0 -0
  696. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/gateway/__init__.py +0 -0
  697. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/gateway/runtime.py +0 -0
  698. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/gateway/service.py +0 -0
  699. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/pairing/__init__.py +0 -0
  700. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/pairing/store.py +0 -0
  701. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/__init__.py +0 -0
  702. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/base.py +0 -0
  703. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/factory.py +0 -0
  704. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/github_copilot_provider.py +0 -0
  705. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/image_generation.py +0 -0
  706. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/registry.py +0 -0
  707. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/providers/transcription.py +0 -0
  708. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/sdk/__init__.py +0 -0
  709. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/sdk/clients.py +0 -0
  710. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/sdk/runtime.py +0 -0
  711. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/sdk/streaming.py +0 -0
  712. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/sdk/types.py +0 -0
  713. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/security/__init__.py +0 -0
  714. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/security/network.py +0 -0
  715. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/security/workspace_access.py +0 -0
  716. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/security/workspace_policy.py +0 -0
  717. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/session/__init__.py +0 -0
  718. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/session/goal_state.py +0 -0
  719. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/session/keys.py +0 -0
  720. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/session/manager.py +0 -0
  721. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/session/turn_continuation.py +0 -0
  722. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/README.md +0 -0
  723. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/clawhub/SKILL.md +0 -0
  724. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/cron/SKILL.md +0 -0
  725. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/github/SKILL.md +0 -0
  726. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/image-generation/SKILL.md +0 -0
  727. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/long-goal/SKILL.md +0 -0
  728. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/memory/SKILL.md +0 -0
  729. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/my/SKILL.md +0 -0
  730. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/my/references/examples.md +0 -0
  731. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/skill-creator/SKILL.md +0 -0
  732. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/skill-creator/scripts/init_skill.py +0 -0
  733. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/skill-creator/scripts/package_skill.py +0 -0
  734. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/skill-creator/scripts/quick_validate.py +0 -0
  735. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/summarize/SKILL.md +0 -0
  736. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/tmux/SKILL.md +0 -0
  737. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/tmux/scripts/find-sessions.sh +0 -0
  738. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/tmux/scripts/wait-for-text.sh +0 -0
  739. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/update-setup/SKILL.md +0 -0
  740. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/skills/weather/SKILL.md +0 -0
  741. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/AGENTS.md +0 -0
  742. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/HEARTBEAT.md +0 -0
  743. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/SOUL.md +0 -0
  744. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/USER.md +0 -0
  745. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/__init__.py +0 -0
  746. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/_snippets/untrusted_content.md +0 -0
  747. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/consolidator_archive.md +0 -0
  748. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/cron_reminder.md +0 -0
  749. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/dream.md +0 -0
  750. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/evaluator.md +0 -0
  751. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/identity.md +0 -0
  752. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/max_iterations_message.md +0 -0
  753. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/platform_policy.md +0 -0
  754. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/skills_section.md +0 -0
  755. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/subagent_announce.md +0 -0
  756. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/subagent_system.md +0 -0
  757. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/agent/tool_contract.md +0 -0
  758. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/memory/MEMORY.md +0 -0
  759. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/templates/memory/__init__.py +0 -0
  760. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/__init__.py +0 -0
  761. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/artifacts.py +0 -0
  762. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/document.py +0 -0
  763. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/evaluator.py +0 -0
  764. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/file_edit_events.py +0 -0
  765. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/gitstore.py +0 -0
  766. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/helpers.py +0 -0
  767. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/llm_runtime.py +0 -0
  768. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/logging_bridge.py +0 -0
  769. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/media_decode.py +0 -0
  770. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/path.py +0 -0
  771. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/progress_events.py +0 -0
  772. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/prompt_templates.py +0 -0
  773. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/restart.py +0 -0
  774. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/runtime.py +0 -0
  775. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/searchusage.py +0 -0
  776. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/subagent_channel_display.py +0 -0
  777. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/utils/tool_hints.py +0 -0
  778. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/src/vtx_claw/vtx_claw.py +0 -0
  779. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/conftest.py +0 -0
  780. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/context/test_agents.py +0 -0
  781. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/context/test_skills.py +0 -0
  782. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/__init__.py +0 -0
  783. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/test_anthropic_provider.py +0 -0
  784. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/test_mock_provider.py +0 -0
  785. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/test_openai_oauth.py +0 -0
  786. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/test_supercode_provider.py +0 -0
  787. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/test_thinking_wire_params.py +0 -0
  788. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/llm/test_tls_verify.py +0 -0
  789. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/conftest.py +0 -0
  790. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_agent_and_runner.py +0 -0
  791. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_agents_as_tools.py +0 -0
  792. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_approvals.py +0 -0
  793. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_function_tool.py +0 -0
  794. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_guardrails.py +0 -0
  795. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_handoffs.py +0 -0
  796. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_integration.py +0 -0
  797. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_provider_field.py +0 -0
  798. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_sdk_permissions.py +0 -0
  799. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_sdk_skills.py +0 -0
  800. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_sessions.py +0 -0
  801. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/sdk/test_tracing.py +0 -0
  802. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_agent_profiles.py +0 -0
  803. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_agent_profiles_runtime.py +0 -0
  804. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_agent_profiles_tui.py +0 -0
  805. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_agentic_loop.py +0 -0
  806. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_cli.py +0 -0
  807. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_cli_auth_flags.py +0 -0
  808. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_cli_provider_resolution.py +0 -0
  809. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_compaction.py +0 -0
  810. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_config_binaries.py +0 -0
  811. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_config_error_fallback.py +0 -0
  812. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_config_injection.py +0 -0
  813. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_dynamic_auth.py +0 -0
  814. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_dynamic_models.py +0 -0
  815. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_errors.py +0 -0
  816. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_extensions.py +0 -0
  817. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_git_branch.py +0 -0
  818. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_goal.py +0 -0
  819. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_grep_tool.py +0 -0
  820. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_handoff.py +0 -0
  821. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_handoff_link_interrupt.py +0 -0
  822. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_headless.py +0 -0
  823. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_hooks.py +0 -0
  824. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_launch_warnings.py +0 -0
  825. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_llm_lazy_imports.py +0 -0
  826. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_local_auth_config.py +0 -0
  827. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_model_provider_resolution.py +0 -0
  828. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_notifications_config.py +0 -0
  829. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_notify.py +0 -0
  830. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_openai_compat.py +0 -0
  831. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_permissions.py +0 -0
  832. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_phase_parser.py +0 -0
  833. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_prompts.py +0 -0
  834. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_rate_limit.py +0 -0
  835. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_runtime_switch_model.py +0 -0
  836. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_session_persistence.py +0 -0
  837. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_session_queries.py +0 -0
  838. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_session_resume.py +0 -0
  839. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_session_tree.py +0 -0
  840. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_system_prompt_git_context.py +0 -0
  841. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_themes.py +0 -0
  842. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_tool_parser.py +0 -0
  843. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_tools_manager.py +0 -0
  844. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_ui_notifications.py +0 -0
  845. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_update_check.py +0 -0
  846. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/test_update_notice_behavior.py +0 -0
  847. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_ask_user.py +0 -0
  848. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_ask_user_turn.py +0 -0
  849. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_background.py +0 -0
  850. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_bash_shell.py +0 -0
  851. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_bash_truncation.py +0 -0
  852. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_diff.py +0 -0
  853. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_edit.py +0 -0
  854. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_edit_display.py +0 -0
  855. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_read.py +0 -0
  856. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_read_image.py +0 -0
  857. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_read_image_integration.py +0 -0
  858. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_read_image_resize.py +0 -0
  859. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_skill.py +0 -0
  860. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_subprocess_cancellation.py +0 -0
  861. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_task.py +0 -0
  862. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_web_expand_collapse.py +0 -0
  863. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/tools/test_write.py +0 -0
  864. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_app_approval_keys.py +0 -0
  865. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_app_ask_user_keys.py +0 -0
  866. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_ask_user_block.py +0 -0
  867. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_autocomplete.py +0 -0
  868. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_completion_chrome.py +0 -0
  869. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_custom_tool_blocks.py +0 -0
  870. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_export.py +0 -0
  871. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_floating_list.py +0 -0
  872. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_info_bar_clicks.py +0 -0
  873. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_info_bar_permissions.py +0 -0
  874. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_action_ask_user.py +0 -0
  875. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_approval_submit.py +0 -0
  876. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_ask_user_forward.py +0 -0
  877. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_cursor_theme.py +0 -0
  878. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_handoff.py +0 -0
  879. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_paste.py +0 -0
  880. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_input_shell_style.py +0 -0
  881. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_keybindings.py +0 -0
  882. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_latex.py +0 -0
  883. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_login_command.py +0 -0
  884. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_permission_selection_status.py +0 -0
  885. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_permissions_command.py +0 -0
  886. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_prompt_history.py +0 -0
  887. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_provider_command.py +0 -0
  888. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_queue_editing.py +0 -0
  889. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_shell_command_detection.py +0 -0
  890. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_status_line.py +0 -0
  891. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_streaming_blocks.py +0 -0
  892. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_styles.py +0 -0
  893. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_thinking_notifications_commands.py +0 -0
  894. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/tests/ui/test_tool_output_expansion.py +0 -0
  895. {vtx_coding_agent-0.2.3 → vtx_coding_agent-0.2.5}/ty.toml +0 -0
@@ -26,21 +26,13 @@
26
26
  - If the user asks you to push code, run these first before doing so: `uv run ruff format .`, `uv run ruff check .`, `uvx ty check .` and `uv run python -m pytest` in parallel (same tool call)
27
27
  - Only if these all pass without issues should you push otherwise report the warnings/errors back to user and ask for next steps
28
28
 
29
- ## CodeBase Search
29
+ ## Codebase Search
30
30
 
31
- Search the codebase using semantic + BM25 hybrid retrieval. PREFER this over grep/rg/Glob for finding code.
31
+ Use vortexa (not grep/rg/file reads) to search code or understand a repo. It
32
+ indexes the current directory (or pass --root <dir>).
32
33
 
33
- Use this tool when you need to:
34
- - Find where a function, class, or pattern is implemented
35
- - Understand how a feature or concept works across the codebase
36
- - Locate code by describing what it does (not just exact strings)
37
- - Find examples of a pattern or API usage
38
- - Explore unfamiliar parts of the codebase
39
- - Identify relevant code for a task without knowing exact names or locations
40
- - Preferable than grep/rg/Glob for code search because it can understand the meaning and intent behind the query, rather than just matching exact strings. This allows for more flexible and powerful searching, especially in large and complex codebases.
41
- Advantages over text search: understands synonyms, paraphrases, and intent.
42
- Returns file paths, line ranges, relevance scores, and matching code.
34
+ vortexa resolve "<query>" --plain # default: matches + tests + callers/callees + deps
35
+ vortexa search "<query>" --hybrid --plain # ranked hits + per-file graph context
36
+ vortexa explain "<file>:<line>|<symbol>" # deep dive into a known location
43
37
 
44
- - For codebase Search use `vortexa -q "you natural query here"` to get relevant code snippets from the codebase. This will help you understand the existing code and avoid duplicating functionality.
45
-
46
- - Instead of using grep use rg (ripgrep) for faster and more efficient searching. For example, `rg "def my_function"` to find all occurrences of a function definition.
38
+ Install: pip install vortexa (add [full] for tree-sitter AST chunking).
@@ -5,6 +5,33 @@ All notable changes to Vtx are documented in this file. The format is based on
5
5
  adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
7
 
8
+ ## [0.2.5] - 2026-07-12
9
+
10
+ ### Added
11
+ - **Meta AI provider** — registered Meta AI as a new OpenAI-compatible provider (slug `meta`) with base URL `https://api.meta.ai/v1`, resolving `META_API_KEY` from the environment, and fetching its Llama model catalog from `/models`.
12
+ - **AGENTS.md codebase search** — replaced the CodeBase Search section with `vortexa` CLI usage (`resolve` / `search --hybrid` / `explain`) so the agent prefers a semantic index over grep/rg for code search.
13
+
14
+ ### Fixed
15
+ - **Typing** — widened `_slim_schema()` parameter and return types from `object` to `Any` in `src/vtx/tools/__init__.py` to satisfy `ty`.
16
+ - **System-prompt migration tests** — updated stale assertions from "You are Vtx, an expert coding assistant." to "You are Vtx, an expert coding agent." in `tests/test_config_migration.py`.
17
+
18
+ ## [0.2.4] - 2026-07-11
19
+
20
+ ### Added
21
+ - **Documentation rewrite** — rewrote the user-facing docs from scratch for accuracy: `docs/tools.md`, `permissions.md`, `configuration.md`, `providers.md`, `sessions.md`, `skills.md`, `extensions.md`, `agents.md`, `goal.md`, `hooks.md`, `ui.md`, `theming.md`, `headless.md`, `storage-layout.md`, `local-models.md`, `architecture.md`, `development.md`, and `docs/README.md`; refreshed the README and SDK README token figures (full runtime ~2,600 tokens, 11 tools).
22
+ - **README revamp** — redesigned the top-level README for clarity and marketing: badges, "Why Vtx?" pitch, two-backend table, feature grid, quick-start, an ASCII demo block, toolset matrix, custom-provider snippet, and a docs index.
23
+ - **README/SDK docs**: corrected provider count to **50+** built-in providers and added a "Permissions & switching agents" section documenting `Shift+Tab` (toggle permission mode and cycle handoff agents) and `/permissions`.
24
+ - **Fix shortcut labels** — `Shift+Tab` now correctly labelled "switch agent" in the TUI welcome and session-info shortcuts (it cycles handoff agents; permission mode is `Alt+Ctrl+P` or `/permissions`). Fixed the README to match.
25
+ - **Editable build indicator** — when vtx is installed as an editable package (`pip install -e .`), the TUI now displays `v-editable` instead of a release version number. Detection uses the installed distribution's `direct_url.json` `dir_info.editable` flag.
26
+
27
+ ### Changed
28
+ - **Minimalist system prompt** — drastically reduced the model context footprint:
29
+ - Rewrote the system prompt sections to be terse while preserving all behavioral guidance.
30
+ - Trimmed every tool description and field description.
31
+ - Slimmed the LLM-facing tool JSON schemas: dropped `title`/`minLength`/`maxLength` noise and collapsed `anyOf: [type, null]` optional unions. Pydantic still enforces all validation constraints on real tool calls.
32
+ - Removed redundant tool-usage guidelines that duplicated the tool descriptions.
33
+ - Total system prompt + tool definitions lowered from ~5,500 tokens to ~2,600 tokens (o200k_base).
34
+
8
35
  ## [0.2.3] - 2026-07-10 — Custom Provider Support
9
36
 
10
37
  ### Added
@@ -851,6 +878,8 @@ to keep the model's context window free for what matters.
851
878
  via `uv tool install vtx-coding-agent`.
852
879
  - Licensed under **Apache License 2.0**.
853
880
 
881
+ [0.2.5]: https://github.com/OEvortex/vtx-coding-agent/compare/v0.2.4...v0.2.5
882
+ [0.2.4]: https://github.com/OEvortex/vtx-coding-agent/compare/v0.2.3...v0.2.4
854
883
  [0.2.2]: https://github.com/OEvortex/vtx-coding-agent/compare/v0.2.1...v0.2.2
855
884
  [0.2.1]: https://github.com/OEvortex/vtx-coding-agent/compare/v0.2.0...v0.2.1
856
885
  [0.2.0]: https://github.com/OEvortex/vtx-coding-agent/compare/v0.1.9...v0.2.0
@@ -0,0 +1,289 @@
1
+ Metadata-Version: 2.4
2
+ Name: vtx-coding-agent
3
+ Version: 0.2.5
4
+ Summary: Minimalist coding agent harness with a Textual TUI and headless CLI. Ships two agentic backends: the native vtx event loop and the advanced vtx-claw gateway loop (install the [claw] extra for multi-channel + subagent + cron features). <1k-token system prompt, 50+ LLM providers, AGENTS.md + skills context, session tree, prompt/auto permissions.
5
+ License-File: LICENSE
6
+ Keywords: agent-loop,cli,coding-agent,llm,tui,vtx-claw
7
+ Requires-Python: >=3.12
8
+ Requires-Dist: aiofiles>=25.1.0
9
+ Requires-Dist: aiohttp>=3.13.3
10
+ Requires-Dist: anthropic>=0.79.0
11
+ Requires-Dist: chardet<6.0.0,>=3.0.2
12
+ Requires-Dist: curl-cffi>=0.15.0
13
+ Requires-Dist: dulwich<1.0.0,>=0.22.0
14
+ Requires-Dist: filelock>=3.25.2
15
+ Requires-Dist: hammett>=0.10.0
16
+ Requires-Dist: html-to-markdown<3.4.0,>=3.3.0
17
+ Requires-Dist: httpx<1.0.0,>=0.28.0
18
+ Requires-Dist: jinja2<4.0.0,>=3.1.0
19
+ Requires-Dist: json-repair<1.0.0,>=0.57.0
20
+ Requires-Dist: loguru<1.0.0,>=0.7.3
21
+ Requires-Dist: lxml-html-clean>=0.4.3
22
+ Requires-Dist: oauth-cli-kit<1.0.0,>=0.1.3
23
+ Requires-Dist: openai>=2.21.0
24
+ Requires-Dist: openpyxl<4.0.0,>=3.1.0
25
+ Requires-Dist: pillow>=12.1.1
26
+ Requires-Dist: prompt-toolkit<4.0.0,>=3.0.50
27
+ Requires-Dist: pydantic-settings<3.0.0,>=2.12.0
28
+ Requires-Dist: pydantic>=2.12.5
29
+ Requires-Dist: pypdf<6.0.0,>=5.0.0
30
+ Requires-Dist: pytest-xdist>=3.8.0
31
+ Requires-Dist: python-docx<2.0.0,>=1.1.0
32
+ Requires-Dist: python-pptx<2.0.0,>=1.0.0
33
+ Requires-Dist: pyyaml>=6.0.3
34
+ Requires-Dist: questionary<3.0.0,>=2.0.0
35
+ Requires-Dist: readability-lxml>=0.8.4
36
+ Requires-Dist: rich>=14.3.2
37
+ Requires-Dist: textual>=8.0.0
38
+ Requires-Dist: tiktoken<1.0.0,>=0.12.0
39
+ Requires-Dist: typer<1.0.0,>=0.20.0
40
+ Provides-Extra: api
41
+ Requires-Dist: aiohttp<4.0.0,>=3.9.0; extra == 'api'
42
+ Provides-Extra: azure
43
+ Requires-Dist: azure-identity<2.0.0,>=1.19.0; extra == 'azure'
44
+ Provides-Extra: claw
45
+ Requires-Dist: boto3>=1.43.0; extra == 'claw'
46
+ Requires-Dist: croniter<7.0.0,>=6.0.0; extra == 'claw'
47
+ Requires-Dist: ddgs<10.0.0,>=9.5.5; extra == 'claw'
48
+ Requires-Dist: dingtalk-stream<1.0.0,>=0.24.0; extra == 'claw'
49
+ Requires-Dist: lark-oapi<2.0.0,>=1.5.0; extra == 'claw'
50
+ Requires-Dist: mcp>=1.28.1; extra == 'claw'
51
+ Requires-Dist: msgpack<2.0.0,>=1.1.0; extra == 'claw'
52
+ Requires-Dist: python-socketio<6.0.0,>=5.16.0; extra == 'claw'
53
+ Requires-Dist: python-socks[asyncio]<3.0.0,>=2.8.0; (sys_platform != 'win32') and extra == 'claw'
54
+ Requires-Dist: python-telegram-bot[socks,webhooks]<23.0,>=22.6; extra == 'claw'
55
+ Requires-Dist: qq-botpy<2.0.0,>=1.2.0; extra == 'claw'
56
+ Requires-Dist: slack-sdk<4.0.0,>=3.39.0; extra == 'claw'
57
+ Requires-Dist: slackify-markdown<1.0.0,>=0.2.0; extra == 'claw'
58
+ Requires-Dist: socksio<2.0.0,>=1.0.0; extra == 'claw'
59
+ Requires-Dist: websocket-client<2.0.0,>=1.9.0; extra == 'claw'
60
+ Requires-Dist: websockets<17.0,>=16.0; extra == 'claw'
61
+ Provides-Extra: discord
62
+ Requires-Dist: discord-py<3.0.0,>=2.5.2; extra == 'discord'
63
+ Provides-Extra: langsmith
64
+ Requires-Dist: langsmith>=0.1.0; extra == 'langsmith'
65
+ Provides-Extra: matrix
66
+ Requires-Dist: aiohttp<4.0.0,>=3.9.0; extra == 'matrix'
67
+ Requires-Dist: matrix-nio[e2e]>=0.25.2; (sys_platform != 'win32') and extra == 'matrix'
68
+ Requires-Dist: mistune<4.0.0,>=3.0.0; extra == 'matrix'
69
+ Requires-Dist: nh3<1.0.0,>=0.2.17; extra == 'matrix'
70
+ Provides-Extra: msteams
71
+ Requires-Dist: cryptography>=41.0; extra == 'msteams'
72
+ Requires-Dist: pyjwt<3.0,>=2.0; extra == 'msteams'
73
+ Provides-Extra: olostep
74
+ Requires-Dist: olostep>=0.1.0; extra == 'olostep'
75
+ Provides-Extra: pdf
76
+ Requires-Dist: pymupdf>=1.25.0; extra == 'pdf'
77
+ Provides-Extra: wecom
78
+ Requires-Dist: wecom-aibot-sdk-python>=0.1.5; extra == 'wecom'
79
+ Provides-Extra: weixin
80
+ Requires-Dist: pycryptodome>=3.20.0; extra == 'weixin'
81
+ Requires-Dist: qrcode[pil]>=8.0; extra == 'weixin'
82
+ Provides-Extra: whatsapp
83
+ Requires-Dist: neonize<0.4.0,>=0.3.18.post0; extra == 'whatsapp'
84
+ Requires-Dist: segno<2.0.0,>=1.6.1; extra == 'whatsapp'
85
+ Description-Content-Type: text/markdown
86
+
87
+ <div align="center">
88
+
89
+ <table align="center">
90
+ <tr><td align="center">
91
+
92
+ ```
93
+ ██╗ ██╗████████╗██╗ ██╗
94
+ ██║ ██║╚══██╔══╝╚██╗██╔╝
95
+ ██║ ██║ ██║ ╚███╔╝
96
+ ╚██╗ ██╔╝ ██║ ██╔██╗
97
+ ╚████╔╝ ██║ ██╔╝ ██╗
98
+ ╚═══╝ ╚═╝ ╚═╝ ╚═╝
99
+ ```
100
+
101
+ </td></tr>
102
+ </table>
103
+
104
+ </div>
105
+
106
+ <p align="center"><b>The minimalist, modular coding agent harness</b></p>
107
+ <p align="center"><b>Maximum capability. Minimum overhead.</b></p>
108
+
109
+ <p align="center">
110
+ <a href="https://github.com/OEvortex/vtx-coding-agent"><img alt="GitHub" src="https://img.shields.io/github/stars/OEvortex/vtx-coding-agent?style=for-the-badge&label=Stars" /></a>
111
+ <a href="https://pypi.org/project/vtx-coding-agent/"><img alt="PyPI" src="https://img.shields.io/pypi/v/vtx-coding-agent?style=for-the-badge" /></a>
112
+ <a href="https://pypi.org/project/vtx-coding-agent/"><img alt="Downloads" src="https://img.shields.io/pypi/dm/vtx-coding-agent?style=for-the-badge" /></a>
113
+ <a href="https://www.python.org/downloads/release/python-3120/"><img alt="Python" src="https://img.shields.io/badge/python-3.12%2B-blue?style=for-the-badge" /></a>
114
+ <a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache%202.0-blue?style=for-the-badge" /></a>
115
+ </p>
116
+
117
+ <p align="center">
118
+ A coding agent that keeps its system prompt lean — around <b>~2,600 tokens</b> for the whole runtime —
119
+ so your context window stays free for what matters: <i>your code</i>.
120
+ </p>
121
+
122
+ ---
123
+
124
+ ## Why Vtx?
125
+
126
+ Most coding agents bury you in thousands of hidden prompt tokens before you type a single line. **Vtx is transparent about its footprint.** The full runtime — base system prompt, tool guidelines, environment block, and all 11 tool definitions — fits in roughly **2,600 tokens** (o200k_base). That means:
127
+
128
+ - More of the model's context is spent on *your* files, not boilerplate instructions.
129
+ - Faster, cheaper turns with any provider you choose.
130
+ - A prompt you can actually read, audit, and shrink.
131
+
132
+ Vtx is also **modular**: a keyboard-driven TUI, a headless CLI, a Python SDK, and an optional gateway backend — pick the surface that fits the job.
133
+
134
+ ---
135
+
136
+ ## Two backends, one runtime
137
+
138
+ | Backend | What it's for | Powers |
139
+ | --- | --- | --- |
140
+ | **`vtx` native loop** | Single-session, event-stream agent loop with thinking streaming, tool permissions, and compaction. | The TUI + headless CLI (`vtx -p "..."`) |
141
+ | **`vtx_claw` gateway** | Production-grade multi-session loop: concurrent tool batching, context governance, crash-restore, subagents, MCP, cron, channel integrations. | The `vtx-claw` gateway, WebUI, and 16+ chat channels (`[claw]` extra) |
142
+
143
+ ---
144
+
145
+ ## Features
146
+
147
+ - **Lean by design** — ~2,600-token runtime; no hidden prompt bloat.
148
+ - **11 surgical tools** — `read`, `edit`, `write`, `bash`, `find`, `grep`, `skill`, `fetch_webpage`, `web_search`, `ask_user`, `task`.
149
+ - **TUI & CLI** — a Textual-powered terminal UI, plus a non-interactive headless mode for scripts and CI.
150
+ - **Any model, any endpoint** — 50+ built-in providers (OpenAI, Anthropic, Azure, DeepSeek, Copilot, Zhipu, Groq, Mistral, Together, Ollama, …) plus OpenAI/Anthropic-compatible custom providers and local models (Ollama, llama.cpp, vLLM).
151
+ - **Dynamic context** — auto-loads `AGENTS.md`/`CLAUDE.md` guidelines and triggers modular `Skills`.
152
+ - **Switchable handoff agents** — named profiles (review, security audit, fast impl) cycled live with `Shift+Tab`.
153
+ - **Task sub-agents** — delegate self-contained work to isolated sessions that stream progress back.
154
+ - **Safe by default** — `prompt` permission mode gates mutating tools; destructive commands are blocked.
155
+ - **Self-extensible** — drop a Python file to add tools, intercept calls, register slash commands, or hook lifecycle events.
156
+ - **Programmable SDK** — build multi-agent apps on the same runtime with `vtx.sdk`.
157
+
158
+ ---
159
+
160
+ ## Quick start
161
+
162
+ ```bash
163
+ # Install with uv (recommended)
164
+ uv tool install vtx-coding-agent
165
+
166
+ # Or the one-liner installer
167
+ curl -fsSL https://raw.githubusercontent.com/OEvortex/vtx-coding-agent/main/scripts/install.sh | bash
168
+ ```
169
+
170
+ Launch the terminal UI:
171
+
172
+ ```bash
173
+ vtx
174
+ ```
175
+
176
+ Run a single task headlessly:
177
+
178
+ ```bash
179
+ vtx -p "Write unit tests for src/vtx/utils.py"
180
+ ```
181
+
182
+ Install the advanced gateway backend too:
183
+
184
+ ```bash
185
+ uv tool install "vtx-coding-agent[claw]"
186
+ ```
187
+
188
+ ---
189
+
190
+ ## The toolset
191
+
192
+ | Tool | Does | Tool | Does |
193
+ | --- | --- | --- | --- |
194
+ | `read` | Read/paginate files, view images | `fetch_webpage` | Fetch a URL as markdown |
195
+ | `edit` | Precise search-and-replace | `web_search` | Semantic web search |
196
+ | `write` | Create/overwrite files | `ask_user` | Ask a clarifying question |
197
+ | `bash` | Run commands in the cwd | `task` | Dispatch a sub-agent |
198
+ | `find` | Glob file discovery | `skill` | Manage skill workflows |
199
+ | `grep` | Regex search over files | | |
200
+
201
+ See [docs/tools.md](docs/tools.md) for full parameter specs.
202
+
203
+ ---
204
+
205
+ ## Permissions & switching agents
206
+
207
+ **Toggle permission mode on the fly.** Vtx gates mutating tools (`bash`, `edit`, `write`) behind a permission system. In the TUI:
208
+
209
+ - Press **`Alt+Ctrl+P`** to cycle between **`prompt`** (asks before mutating) and **`auto`** (unrestricted) mode.
210
+ - Type **`/permissions`** to open the permission menu and switch mode explicitly.
211
+ - Set the default in `config.yml` (`permissions.mode: prompt | auto`).
212
+
213
+ Destructive commands (`rm -rf`, `git reset --hard`, force-push, dropping tables) are blocked unless you explicitly ask. See [docs/permissions.md](docs/permissions.md).
214
+
215
+ **Switch handoff agents with `Shift+Tab`.** Define named profiles in `.vtx/agent/<name>.py` (e.g. `security-audit`, `code-review`, `explorer`) and cycle between them live — each bundles its own instructions, tool allow/deny list, and optional model override. See [docs/agents.md](docs/agents.md).
216
+
217
+ ---
218
+
219
+ ## Bring your own provider
220
+
221
+ Point Vtx at any OpenAI- or Anthropic-compatible endpoint — no source edits required:
222
+
223
+ ```yaml
224
+ # .vtx/providers/acme.yaml
225
+ slug: acme
226
+ display_name: "Acme AI Gateway"
227
+ family: openai_compat
228
+ base_url: "https://ai.acme.internal/v1"
229
+ api_key_env: ACME_API_KEY
230
+ fetch_models: true
231
+ ```
232
+
233
+ ```bash
234
+ export ACME_API_KEY=sk-...
235
+ vtx --provider acme -m acme-large
236
+ ```
237
+
238
+ Custom providers show up in the `/model` picker and auto-fetch their model catalog. Full reference in [docs/providers.md](docs/providers.md).
239
+
240
+ ---
241
+
242
+ ## Build agents programmatically
243
+
244
+ ```python
245
+ from vtx.sdk import Agent, Runner, tool
246
+
247
+ @tool
248
+ def get_weather(city: str) -> str:
249
+ """Return the current weather for a city."""
250
+ return f"Sunny in {city}"
251
+
252
+ agent = Agent(
253
+ name="Weather bot",
254
+ instructions="Be concise.",
255
+ model="gpt-4o-mini",
256
+ tools=[get_weather],
257
+ )
258
+
259
+ result = Runner.run_sync(agent, "Weather in Tokyo?")
260
+ print(result.final_output)
261
+ ```
262
+
263
+ See the [SDK docs](docs/sdk/README.md).
264
+
265
+ ---
266
+
267
+ ## Documentation
268
+
269
+ | Topic | Link |
270
+ | --- | --- |
271
+ | Configuration | [docs/configuration.md](docs/configuration.md) |
272
+ | Providers & custom endpoints | [docs/providers.md](docs/providers.md) |
273
+ | Tools | [docs/tools.md](docs/tools.md) |
274
+ | Permissions | [docs/permissions.md](docs/permissions.md) |
275
+ | Sessions | [docs/sessions.md](docs/sessions.md) |
276
+ | Skills | [docs/skills.md](docs/skills.md) |
277
+ | Extensions | [docs/extensions.md](docs/extensions.md) |
278
+ | Handoff agents | [docs/agents.md](docs/agents.md) |
279
+ | Goals | [docs/goal.md](docs/goal.md) |
280
+ | Architecture | [docs/architecture.md](docs/architecture.md) |
281
+ | Local models | [docs/local-models.md](docs/local-models.md) |
282
+ | SDK | [docs/sdk/README.md](docs/sdk/README.md) |
283
+ | vtx-claw gateway | [docs/claw/README.md](docs/claw/README.md) |
284
+
285
+ ---
286
+
287
+ ## License
288
+
289
+ Apache License 2.0
@@ -0,0 +1,203 @@
1
+ <div align="center">
2
+
3
+ <table align="center">
4
+ <tr><td align="center">
5
+
6
+ ```
7
+ ██╗ ██╗████████╗██╗ ██╗
8
+ ██║ ██║╚══██╔══╝╚██╗██╔╝
9
+ ██║ ██║ ██║ ╚███╔╝
10
+ ╚██╗ ██╔╝ ██║ ██╔██╗
11
+ ╚████╔╝ ██║ ██╔╝ ██╗
12
+ ╚═══╝ ╚═╝ ╚═╝ ╚═╝
13
+ ```
14
+
15
+ </td></tr>
16
+ </table>
17
+
18
+ </div>
19
+
20
+ <p align="center"><b>The minimalist, modular coding agent harness</b></p>
21
+ <p align="center"><b>Maximum capability. Minimum overhead.</b></p>
22
+
23
+ <p align="center">
24
+ <a href="https://github.com/OEvortex/vtx-coding-agent"><img alt="GitHub" src="https://img.shields.io/github/stars/OEvortex/vtx-coding-agent?style=for-the-badge&label=Stars" /></a>
25
+ <a href="https://pypi.org/project/vtx-coding-agent/"><img alt="PyPI" src="https://img.shields.io/pypi/v/vtx-coding-agent?style=for-the-badge" /></a>
26
+ <a href="https://pypi.org/project/vtx-coding-agent/"><img alt="Downloads" src="https://img.shields.io/pypi/dm/vtx-coding-agent?style=for-the-badge" /></a>
27
+ <a href="https://www.python.org/downloads/release/python-3120/"><img alt="Python" src="https://img.shields.io/badge/python-3.12%2B-blue?style=for-the-badge" /></a>
28
+ <a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache%202.0-blue?style=for-the-badge" /></a>
29
+ </p>
30
+
31
+ <p align="center">
32
+ A coding agent that keeps its system prompt lean — around <b>~2,600 tokens</b> for the whole runtime —
33
+ so your context window stays free for what matters: <i>your code</i>.
34
+ </p>
35
+
36
+ ---
37
+
38
+ ## Why Vtx?
39
+
40
+ Most coding agents bury you in thousands of hidden prompt tokens before you type a single line. **Vtx is transparent about its footprint.** The full runtime — base system prompt, tool guidelines, environment block, and all 11 tool definitions — fits in roughly **2,600 tokens** (o200k_base). That means:
41
+
42
+ - More of the model's context is spent on *your* files, not boilerplate instructions.
43
+ - Faster, cheaper turns with any provider you choose.
44
+ - A prompt you can actually read, audit, and shrink.
45
+
46
+ Vtx is also **modular**: a keyboard-driven TUI, a headless CLI, a Python SDK, and an optional gateway backend — pick the surface that fits the job.
47
+
48
+ ---
49
+
50
+ ## Two backends, one runtime
51
+
52
+ | Backend | What it's for | Powers |
53
+ | --- | --- | --- |
54
+ | **`vtx` native loop** | Single-session, event-stream agent loop with thinking streaming, tool permissions, and compaction. | The TUI + headless CLI (`vtx -p "..."`) |
55
+ | **`vtx_claw` gateway** | Production-grade multi-session loop: concurrent tool batching, context governance, crash-restore, subagents, MCP, cron, channel integrations. | The `vtx-claw` gateway, WebUI, and 16+ chat channels (`[claw]` extra) |
56
+
57
+ ---
58
+
59
+ ## Features
60
+
61
+ - **Lean by design** — ~2,600-token runtime; no hidden prompt bloat.
62
+ - **11 surgical tools** — `read`, `edit`, `write`, `bash`, `find`, `grep`, `skill`, `fetch_webpage`, `web_search`, `ask_user`, `task`.
63
+ - **TUI & CLI** — a Textual-powered terminal UI, plus a non-interactive headless mode for scripts and CI.
64
+ - **Any model, any endpoint** — 50+ built-in providers (OpenAI, Anthropic, Azure, DeepSeek, Copilot, Zhipu, Groq, Mistral, Together, Ollama, …) plus OpenAI/Anthropic-compatible custom providers and local models (Ollama, llama.cpp, vLLM).
65
+ - **Dynamic context** — auto-loads `AGENTS.md`/`CLAUDE.md` guidelines and triggers modular `Skills`.
66
+ - **Switchable handoff agents** — named profiles (review, security audit, fast impl) cycled live with `Shift+Tab`.
67
+ - **Task sub-agents** — delegate self-contained work to isolated sessions that stream progress back.
68
+ - **Safe by default** — `prompt` permission mode gates mutating tools; destructive commands are blocked.
69
+ - **Self-extensible** — drop a Python file to add tools, intercept calls, register slash commands, or hook lifecycle events.
70
+ - **Programmable SDK** — build multi-agent apps on the same runtime with `vtx.sdk`.
71
+
72
+ ---
73
+
74
+ ## Quick start
75
+
76
+ ```bash
77
+ # Install with uv (recommended)
78
+ uv tool install vtx-coding-agent
79
+
80
+ # Or the one-liner installer
81
+ curl -fsSL https://raw.githubusercontent.com/OEvortex/vtx-coding-agent/main/scripts/install.sh | bash
82
+ ```
83
+
84
+ Launch the terminal UI:
85
+
86
+ ```bash
87
+ vtx
88
+ ```
89
+
90
+ Run a single task headlessly:
91
+
92
+ ```bash
93
+ vtx -p "Write unit tests for src/vtx/utils.py"
94
+ ```
95
+
96
+ Install the advanced gateway backend too:
97
+
98
+ ```bash
99
+ uv tool install "vtx-coding-agent[claw]"
100
+ ```
101
+
102
+ ---
103
+
104
+ ## The toolset
105
+
106
+ | Tool | Does | Tool | Does |
107
+ | --- | --- | --- | --- |
108
+ | `read` | Read/paginate files, view images | `fetch_webpage` | Fetch a URL as markdown |
109
+ | `edit` | Precise search-and-replace | `web_search` | Semantic web search |
110
+ | `write` | Create/overwrite files | `ask_user` | Ask a clarifying question |
111
+ | `bash` | Run commands in the cwd | `task` | Dispatch a sub-agent |
112
+ | `find` | Glob file discovery | `skill` | Manage skill workflows |
113
+ | `grep` | Regex search over files | | |
114
+
115
+ See [docs/tools.md](docs/tools.md) for full parameter specs.
116
+
117
+ ---
118
+
119
+ ## Permissions & switching agents
120
+
121
+ **Toggle permission mode on the fly.** Vtx gates mutating tools (`bash`, `edit`, `write`) behind a permission system. In the TUI:
122
+
123
+ - Press **`Alt+Ctrl+P`** to cycle between **`prompt`** (asks before mutating) and **`auto`** (unrestricted) mode.
124
+ - Type **`/permissions`** to open the permission menu and switch mode explicitly.
125
+ - Set the default in `config.yml` (`permissions.mode: prompt | auto`).
126
+
127
+ Destructive commands (`rm -rf`, `git reset --hard`, force-push, dropping tables) are blocked unless you explicitly ask. See [docs/permissions.md](docs/permissions.md).
128
+
129
+ **Switch handoff agents with `Shift+Tab`.** Define named profiles in `.vtx/agent/<name>.py` (e.g. `security-audit`, `code-review`, `explorer`) and cycle between them live — each bundles its own instructions, tool allow/deny list, and optional model override. See [docs/agents.md](docs/agents.md).
130
+
131
+ ---
132
+
133
+ ## Bring your own provider
134
+
135
+ Point Vtx at any OpenAI- or Anthropic-compatible endpoint — no source edits required:
136
+
137
+ ```yaml
138
+ # .vtx/providers/acme.yaml
139
+ slug: acme
140
+ display_name: "Acme AI Gateway"
141
+ family: openai_compat
142
+ base_url: "https://ai.acme.internal/v1"
143
+ api_key_env: ACME_API_KEY
144
+ fetch_models: true
145
+ ```
146
+
147
+ ```bash
148
+ export ACME_API_KEY=sk-...
149
+ vtx --provider acme -m acme-large
150
+ ```
151
+
152
+ Custom providers show up in the `/model` picker and auto-fetch their model catalog. Full reference in [docs/providers.md](docs/providers.md).
153
+
154
+ ---
155
+
156
+ ## Build agents programmatically
157
+
158
+ ```python
159
+ from vtx.sdk import Agent, Runner, tool
160
+
161
+ @tool
162
+ def get_weather(city: str) -> str:
163
+ """Return the current weather for a city."""
164
+ return f"Sunny in {city}"
165
+
166
+ agent = Agent(
167
+ name="Weather bot",
168
+ instructions="Be concise.",
169
+ model="gpt-4o-mini",
170
+ tools=[get_weather],
171
+ )
172
+
173
+ result = Runner.run_sync(agent, "Weather in Tokyo?")
174
+ print(result.final_output)
175
+ ```
176
+
177
+ See the [SDK docs](docs/sdk/README.md).
178
+
179
+ ---
180
+
181
+ ## Documentation
182
+
183
+ | Topic | Link |
184
+ | --- | --- |
185
+ | Configuration | [docs/configuration.md](docs/configuration.md) |
186
+ | Providers & custom endpoints | [docs/providers.md](docs/providers.md) |
187
+ | Tools | [docs/tools.md](docs/tools.md) |
188
+ | Permissions | [docs/permissions.md](docs/permissions.md) |
189
+ | Sessions | [docs/sessions.md](docs/sessions.md) |
190
+ | Skills | [docs/skills.md](docs/skills.md) |
191
+ | Extensions | [docs/extensions.md](docs/extensions.md) |
192
+ | Handoff agents | [docs/agents.md](docs/agents.md) |
193
+ | Goals | [docs/goal.md](docs/goal.md) |
194
+ | Architecture | [docs/architecture.md](docs/architecture.md) |
195
+ | Local models | [docs/local-models.md](docs/local-models.md) |
196
+ | SDK | [docs/sdk/README.md](docs/sdk/README.md) |
197
+ | vtx-claw gateway | [docs/claw/README.md](docs/claw/README.md) |
198
+
199
+ ---
200
+
201
+ ## License
202
+
203
+ Apache License 2.0
@@ -8,12 +8,15 @@ This folder is the reference companion to the top-level [README](../README.md).
8
8
  | --- | --- |
9
9
  | [configuration.md](configuration.md) | Every YAML config field with its default, validation rule, and CLI override |
10
10
  | [providers.md](providers.md) | Built-in LLM providers, OAuth and API-key auth, dynamic catalog providers, env vars |
11
- | [tools.md](tools.md) | The 6 core tools + 2 web tools — parameters, mutating flag, and worked examples |
12
- | [permissions.md](permissions.md) | The `prompt`/`auto` modes, the safe-command allowlist, and the decision algorithm |
13
- | [sessions.md](sessions.md) | JSONL session format, resume, handoff, `/export`, compaction, and tree navigation |
14
- | [skills.md](skills.md) | Authoring skills — frontmatter, `$ARGUMENTS`, `register_cmd`, discovery paths |
15
- | [agents.md](agents.md) | Switchable handoff agents — `.vtx/agent/<name>.py`, `AgentAPI`, `Shift+Tab` cycling |
11
+ | [tools.md](tools.md) | The 11 tools — parameters, mutating flag, and worked examples |
12
+ | [permissions.md](permissions.md) | The `prompt`/`auto` modes, safety guarantees, and the approval decision flow |
13
+ | [sessions.md](sessions.md) | JSONL session format, resume, handoff, `/export`, compaction |
14
+ | [skills.md](skills.md) | Authoring skills — frontmatter, `register_cmd`, discovery paths |
15
+ | [agents.md](agents.md) | Switchable handoff agents — `.vtx/agent/<name>.py`, `Shift+Tab` cycling |
16
16
  | [theming.md](theming.md) | The full theme catalog and palette tokens |
17
+ | [ui.md](ui.md) | TUI input, shell execution, slash commands, thinking blocks |
18
+ | [goal.md](goal.md) | Continuous `/goal` work with an evaluator loop |
19
+ | [hooks.md](hooks.md) | The extension-based hook lifecycle (tool_call, tool_result, lifecycle events) |
17
20
  | [headless.md](headless.md) | The `-p`/`--prompt` non-interactive flow, exit codes, stdin handling |
18
21
  | [local-models.md](local-models.md) | Tested local models, llama-server setup, model-specific config tuning |
19
22
  | [storage-layout.md](storage-layout.md) | Every file Vtx touches on disk — config, sessions, models, auth |
@@ -0,0 +1,64 @@
1
+ # Switchable Handoff Agents
2
+
3
+ Vtx supports named, switchable agent profiles ("handoff agents"). Each profile is a focused system-prompt + tool surface + model configuration you can cycle between in the TUI with `Shift+Tab`. They are ideal for distinct modes like read-only review, security audit, or fast implementation.
4
+
5
+ ## Locations & discovery
6
+
7
+ Profiles are Python files defining a module-level `AGENT` constant:
8
+
9
+ - Project: `<cwd>/.vtx/agent/<name>.py` (searched up to the git root; deeper wins)
10
+ - Global: `~/.vtx/agent/<name>.py`
11
+
12
+ Multiple profiles can be configured explicitly via `agents.files:` in `config.yml` or the `--agent-file` CLI flag. The default active profile is set with `agents.default:`; `agents.switch_mode` is `lock` or `unlock`.
13
+
14
+ See `examples/agents/` for working profiles (`code-review.py`, `security-audit.py`, `explorer.py`, `data-engineer.py`, `yolo.py`).
15
+
16
+ ## Profile schema
17
+
18
+ ```python
19
+ AGENT = {
20
+ "name": "security-audit", # required, [a-z0-9-]
21
+ "description": "Read-only security review.", # required
22
+ "icon": "🛡", # optional (max 4 chars)
23
+ "color": "red", # optional theme color
24
+
25
+ # Model / provider overrides
26
+ "model": "gpt-5.5",
27
+ "provider": "openai-codex",
28
+ "base_url": None,
29
+ "thinking_level": "high",
30
+ "max_turns": 100,
31
+
32
+ # System prompt composition
33
+ "instructions": "You are a security auditor...",
34
+ "instructions_mode": "append", # append | replace
35
+
36
+ # Tool surface (built-in tool names, or tool-group names like "read-only"/"full")
37
+ "tools_allow": ["read", "grep", "find"],
38
+ "tools_deny": [],
39
+
40
+ # Permissions
41
+ "permission_mode": "prompt", # prompt | auto
42
+ "permission_gates": [],
43
+
44
+ # Handoffs to other profiles
45
+ "handoffs": ["code-review"],
46
+ "handoff_back": True,
47
+
48
+ # Agent-scoped extensions to load when active
49
+ "extensions": [],
50
+ }
51
+ ```
52
+
53
+ All fields are optional except `name` and `description`.
54
+
55
+ ## Using profiles
56
+
57
+ - `Shift+Tab` in the TUI cycles through loaded profiles.
58
+ - `/handoff <query>` summarizes the current session and starts a fresh session under a chosen profile, carrying the summary forward.
59
+ - A profile's `instructions` is appended to (or replaces) the base system prompt per `instructions_mode`.
60
+ - A profile may `handoff` to other named profiles, letting the model route work between specialists.
61
+
62
+ ## `task` sub-agents vs handoff agents
63
+
64
+ Handoff agents run in the **same** session and context. The `task` tool dispatches **separate** sub-agent sessions (see [tools.md](tools.md)). Use `task` for parallel, isolated work; use handoff agents for in-session persona switching.