tau-coding-agent 0.7.4__tar.gz → 0.7.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 (512) hide show
  1. {tau_coding_agent-0.7.4/tau_coding_agent.egg-info → tau_coding_agent-0.7.5}/PKG-INFO +4 -1
  2. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/README.md +2 -0
  3. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/cli-reference.md +19 -0
  4. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/pyproject.toml +2 -1
  5. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/prompt/builder.py +11 -0
  6. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/service.py +20 -0
  7. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/types.py +1 -0
  8. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/todo/__init__.py +24 -0
  9. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/models/text.py +73 -66
  10. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/providers/text.py +21 -0
  11. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/console/cli.py +9 -0
  12. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/engine/service.py +3 -0
  13. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/gemini_generate.py +24 -0
  14. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/google_antigravity.py +12 -0
  15. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/google_vertex.py +28 -1
  16. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/openai_codex_responses.py +98 -6
  17. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/openai_responses.py +6 -2
  18. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/utils.py +112 -5
  19. tau_coding_agent-0.7.5/tau/inference/model/local/__init__.py +64 -0
  20. tau_coding_agent-0.7.5/tau/inference/model/local/llamacpp.py +96 -0
  21. tau_coding_agent-0.7.5/tau/inference/model/local/lmstudio.py +99 -0
  22. tau_coding_agent-0.7.5/tau/inference/model/local/ollama.py +129 -0
  23. tau_coding_agent-0.7.5/tau/inference/model/local/vllm.py +95 -0
  24. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/model/types.py +1 -0
  25. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/message/types.py +95 -13
  26. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/message/utils.py +60 -0
  27. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/message_list.py +55 -5
  28. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/input_handler.py +239 -43
  29. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/ui_context.py +10 -13
  30. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/runtime/service.py +20 -0
  31. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/runtime/types.py +3 -0
  32. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tool/types.py +125 -2
  33. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5/tau_coding_agent.egg-info}/PKG-INFO +4 -1
  34. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau_coding_agent.egg-info/SOURCES.txt +12 -0
  35. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau_coding_agent.egg-info/requires.txt +1 -0
  36. tau_coding_agent-0.7.5/tests/test_input_handler_paste.py +495 -0
  37. tau_coding_agent-0.7.5/tests/test_local_model_discovery.py +450 -0
  38. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_message_types.py +148 -5
  39. tau_coding_agent-0.7.5/tests/test_model_audio_modality.py +127 -0
  40. tau_coding_agent-0.7.5/tests/test_model_file_modality.py +103 -0
  41. tau_coding_agent-0.7.5/tests/test_openai_codex_responses_lite.py +170 -0
  42. tau_coding_agent-0.7.5/tests/test_provider_audio_content.py +152 -0
  43. tau_coding_agent-0.7.5/tests/test_provider_file_content.py +186 -0
  44. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_runtime_sdk.py +23 -0
  45. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/LICENSE +0 -0
  46. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/MANIFEST.in +0 -0
  47. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/architecture.md +0 -0
  48. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/auth.md +0 -0
  49. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/creating-tools.md +0 -0
  50. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/development.md +0 -0
  51. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/docs.json +0 -0
  52. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/engine.md +0 -0
  53. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/extension-settings.md +0 -0
  54. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/extensions.md +0 -0
  55. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/http-proxy.md +0 -0
  56. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/index.md +0 -0
  57. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/inference-providers.md +0 -0
  58. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/inference.md +0 -0
  59. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/installation.md +0 -0
  60. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/keybindings.md +0 -0
  61. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/messages.md +0 -0
  62. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/project-context.md +0 -0
  63. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/project-structure.md +0 -0
  64. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/prompts.md +0 -0
  65. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/python-api.md +0 -0
  66. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/quickstart.md +0 -0
  67. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/sessions.md +0 -0
  68. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/settings.md +0 -0
  69. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/skills.md +0 -0
  70. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/themes.md +0 -0
  71. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/tools.md +0 -0
  72. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/tui.md +0 -0
  73. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/docs/usage.md +0 -0
  74. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/setup.cfg +0 -0
  75. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/__init__.py +0 -0
  76. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/__init__.py +0 -0
  77. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/embedded.py +0 -0
  78. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/prompt/__init__.py +0 -0
  79. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/agent/prompt/types.py +0 -0
  80. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/auth/manager.py +0 -0
  81. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/auth/storage.py +0 -0
  82. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/auth/types.py +0 -0
  83. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/__init__.py +0 -0
  84. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/commands/__init__.py +0 -0
  85. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/commands/clear.py +0 -0
  86. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/commands/compact.py +0 -0
  87. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/commands/reload.py +0 -0
  88. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/commands/session.py +0 -0
  89. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/ask_user/__init__.py +0 -0
  90. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/ask_user/component.py +0 -0
  91. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/ask_user/manifest.json +0 -0
  92. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/ask_user/schema.py +0 -0
  93. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/ask_user/tool.py +0 -0
  94. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/btw/__init__.py +0 -0
  95. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/footer/__init__.py +0 -0
  96. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/footer/git.py +0 -0
  97. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/footer/model.py +0 -0
  98. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/footer/utils.py +0 -0
  99. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/header/__init__.py +0 -0
  100. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/loop/README.md +0 -0
  101. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/loop/__init__.py +0 -0
  102. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/loop/dispatch.py +0 -0
  103. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/loop/duration.py +0 -0
  104. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/loop/state.py +0 -0
  105. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/sandbox/__init__.py +0 -0
  106. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/sandbox/manager.py +0 -0
  107. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/sandbox/manifest.json +0 -0
  108. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/sandbox/sandbox_tool.py +0 -0
  109. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/__init__.py +0 -0
  110. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/context-builder.md +0 -0
  111. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/delegate.md +0 -0
  112. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/oracle.md +0 -0
  113. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/planner.md +0 -0
  114. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/researcher.md +0 -0
  115. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/reviewer.md +0 -0
  116. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/scout.md +0 -0
  117. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents/worker.md +0 -0
  118. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/agents.py +0 -0
  119. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/manifest.json +0 -0
  120. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/subagent_schema.py +0 -0
  121. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/subagent/subagent_tool.py +0 -0
  122. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/todo/manifest.json +0 -0
  123. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/todo/todo_schema.py +0 -0
  124. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/todo/todo_tool.py +0 -0
  125. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/watch/__init__.py +0 -0
  126. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/__init__.py +0 -0
  127. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/engines/__init__.py +0 -0
  128. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/engines/base.py +0 -0
  129. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/engines/ddgs_engine.py +0 -0
  130. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/engines/exa_engine.py +0 -0
  131. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/engines/jina_engine.py +0 -0
  132. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/engines/tavily_engine.py +0 -0
  133. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/manifest.json +0 -0
  134. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/tools/__init__.py +0 -0
  135. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/tools/fetch.py +0 -0
  136. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/web/tools/search.py +0 -0
  137. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/__init__.py +0 -0
  138. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/agent_discovery.py +0 -0
  139. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/manifest.json +0 -0
  140. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/model.py +0 -0
  141. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/runner.py +0 -0
  142. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/skills/create-workflows/SKILL.md +0 -0
  143. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/extensions/workflow/store.py +0 -0
  144. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/models/__init__.py +0 -0
  145. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/models/audio.py +0 -0
  146. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/models/image.py +0 -0
  147. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/models/video.py +0 -0
  148. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/commit.md +0 -0
  149. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/docs.md +0 -0
  150. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/explain.md +0 -0
  151. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/fix.md +0 -0
  152. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/refactor.md +0 -0
  153. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/review.md +0 -0
  154. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/prompts/test.md +0 -0
  155. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/providers/__init__.py +0 -0
  156. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/providers/audio.py +0 -0
  157. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/providers/image.py +0 -0
  158. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/providers/video.py +0 -0
  159. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/skills/code-review/SKILL.md +0 -0
  160. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/skills/debug/SKILL.md +0 -0
  161. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/skills/git-commit/SKILL.md +0 -0
  162. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/skills/skill-creator/LICENSE.txt +0 -0
  163. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/skills/skill-creator/SKILL.md +0 -0
  164. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/ayu-dark.yaml +0 -0
  165. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/catppuccin.yaml +0 -0
  166. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/dark.yaml +0 -0
  167. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/dracula.yaml +0 -0
  168. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/everforest.yaml +0 -0
  169. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/gruvbox.yaml +0 -0
  170. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/horizon.yaml +0 -0
  171. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/kanagawa.yaml +0 -0
  172. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/light.yaml +0 -0
  173. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/material-ocean.yaml +0 -0
  174. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/monokai.yaml +0 -0
  175. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/night-owl.yaml +0 -0
  176. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/nord.yaml +0 -0
  177. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/one-dark.yaml +0 -0
  178. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/rose-pine.yaml +0 -0
  179. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/solarized-dark.yaml +0 -0
  180. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/themes/tokyo-night.yaml +0 -0
  181. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/__init__.py +0 -0
  182. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/edit.py +0 -0
  183. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/glob.py +0 -0
  184. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/grep.py +0 -0
  185. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/ls.py +0 -0
  186. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/read.py +0 -0
  187. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/terminal.py +0 -0
  188. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/utils.py +0 -0
  189. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/builtins/tools/write.py +0 -0
  190. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/commands/__init__.py +0 -0
  191. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/commands/registry.py +0 -0
  192. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/commands/types.py +0 -0
  193. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/console/__init__.py +0 -0
  194. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/console/commands/__init__.py +0 -0
  195. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/console/commands/auth.py +0 -0
  196. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/console/commands/packages.py +0 -0
  197. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/console/commands/update.py +0 -0
  198. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/core/__init__.py +0 -0
  199. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/core/registry.py +0 -0
  200. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/engine/__init__.py +0 -0
  201. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/engine/types.py +0 -0
  202. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/extensions/__init__.py +0 -0
  203. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/extensions/api.py +0 -0
  204. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/extensions/context.py +0 -0
  205. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/extensions/loader.py +0 -0
  206. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/extensions/runtime.py +0 -0
  207. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/extensions/settings.py +0 -0
  208. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/__init__.py +0 -0
  209. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/engine.py +0 -0
  210. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/inference.py +0 -0
  211. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/runtime.py +0 -0
  212. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/service.py +0 -0
  213. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/session.py +0 -0
  214. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/tui.py +0 -0
  215. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/hooks/types.py +0 -0
  216. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/__init__.py +0 -0
  217. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/__init__.py +0 -0
  218. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/__init__.py +0 -0
  219. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/base.py +0 -0
  220. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/builtins.py +0 -0
  221. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/elevenlabs_audio.py +0 -0
  222. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/gemini_audio.py +0 -0
  223. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/openai_audio.py +0 -0
  224. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/registry.py +0 -0
  225. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/sarvam_audio.py +0 -0
  226. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/service.py +0 -0
  227. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/audio/utils.py +0 -0
  228. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/availability.py +0 -0
  229. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/__init__.py +0 -0
  230. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/base.py +0 -0
  231. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/builtins.py +0 -0
  232. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/gemini_image.py +0 -0
  233. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/openai_image.py +0 -0
  234. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/openrouter.py +0 -0
  235. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/registry.py +0 -0
  236. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/image/service.py +0 -0
  237. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/registry.py +0 -0
  238. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/__init__.py +0 -0
  239. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/anthropic_claude_code.py +0 -0
  240. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/anthropic_messages.py +0 -0
  241. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/anthropic_vertex.py +0 -0
  242. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/base.py +0 -0
  243. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/builtins.py +0 -0
  244. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/dialect.py +0 -0
  245. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/github_copilot_chat.py +0 -0
  246. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/mistral_chat.py +0 -0
  247. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/ollama_chat.py +0 -0
  248. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/openai_completions.py +0 -0
  249. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/openai_vertex.py +0 -0
  250. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/registry.py +0 -0
  251. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/service.py +0 -0
  252. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/types.py +0 -0
  253. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/text/xai_responses.py +0 -0
  254. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/__init__.py +0 -0
  255. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/base.py +0 -0
  256. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/builtins.py +0 -0
  257. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/fal_video.py +0 -0
  258. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/openrouter_video.py +0 -0
  259. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/registry.py +0 -0
  260. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/service.py +0 -0
  261. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/api/video/zai_video.py +0 -0
  262. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/model/__init__.py +0 -0
  263. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/model/registry.py +0 -0
  264. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/__init__.py +0 -0
  265. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/__init__.py +0 -0
  266. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/anthropic_claude_code.py +0 -0
  267. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/github_copilot.py +0 -0
  268. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/google_antigravity.py +0 -0
  269. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/openai_codex.py +0 -0
  270. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/pkce.py +0 -0
  271. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/types.py +0 -0
  272. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/utils.py +0 -0
  273. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/oauth/xai_grok.py +0 -0
  274. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/registry.py +0 -0
  275. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/provider/types.py +0 -0
  276. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/types.py +0 -0
  277. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/inference/utils.py +0 -0
  278. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/message/__init__.py +0 -0
  279. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/__init__.py +0 -0
  280. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/__init__.py +0 -0
  281. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/agent_hooks.py +0 -0
  282. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/app.py +0 -0
  283. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/__init__.py +0 -0
  284. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/appearance.py +0 -0
  285. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/auth.py +0 -0
  286. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/context.py +0 -0
  287. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/extensions.py +0 -0
  288. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/misc.py +0 -0
  289. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/model.py +0 -0
  290. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/commands/session.py +0 -0
  291. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/__init__.py +0 -0
  292. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/command_palette.py +0 -0
  293. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/config_selector.py +0 -0
  294. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/extension_selector.py +0 -0
  295. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/file_picker.py +0 -0
  296. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/layout.py +0 -0
  297. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/model_selector.py +0 -0
  298. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/oauth_selector.py +0 -0
  299. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/overlays.py +0 -0
  300. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/selector_controller.py +0 -0
  301. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/session_selector.py +0 -0
  302. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/settings_selector.py +0 -0
  303. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/theme_selector.py +0 -0
  304. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/thinking_selector.py +0 -0
  305. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/tree_selector.py +0 -0
  306. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/trust_screen.py +0 -0
  307. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/interactive/components/voice_selector.py +0 -0
  308. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/print/__init__.py +0 -0
  309. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/rpc/__init__.py +0 -0
  310. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/rpc/mode.py +0 -0
  311. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/modes/rpc/types.py +0 -0
  312. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/packages/__init__.py +0 -0
  313. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/packages/manager.py +0 -0
  314. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/packages/types.py +0 -0
  315. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/packages/utils.py +0 -0
  316. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/prompts/expand.py +0 -0
  317. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/prompts/loader.py +0 -0
  318. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/prompts/registry.py +0 -0
  319. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/prompts/types.py +0 -0
  320. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/resources/__init__.py +0 -0
  321. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/resources/loader.py +0 -0
  322. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/resources/types.py +0 -0
  323. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/runtime/dependencies.py +0 -0
  324. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/session/branch_summarization.py +0 -0
  325. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/session/compaction.py +0 -0
  326. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/session/manager.py +0 -0
  327. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/session/types.py +0 -0
  328. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/session/utils.py +0 -0
  329. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/settings/manager.py +0 -0
  330. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/settings/paths.py +0 -0
  331. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/settings/storage.py +0 -0
  332. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/settings/types.py +0 -0
  333. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/settings/utils.py +0 -0
  334. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/skills/loader.py +0 -0
  335. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/skills/registry.py +0 -0
  336. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/skills/types.py +0 -0
  337. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/telemetry/__init__.py +0 -0
  338. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/telemetry/service.py +0 -0
  339. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/telemetry/types.py +0 -0
  340. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/themes/loader.py +0 -0
  341. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/themes/registry.py +0 -0
  342. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/themes/types.py +0 -0
  343. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tool/__init__.py +0 -0
  344. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tool/registry.py +0 -0
  345. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tool/render.py +0 -0
  346. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/trust/__init__.py +0 -0
  347. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/trust/manager.py +0 -0
  348. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/trust/types.py +0 -0
  349. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/trust/utils.py +0 -0
  350. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/__init__.py +0 -0
  351. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/ansi_bridge.py +0 -0
  352. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/autocomplete.py +0 -0
  353. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/backend.py +0 -0
  354. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/buffer.py +0 -0
  355. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/component.py +0 -0
  356. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/__init__.py +0 -0
  357. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/box.py +0 -0
  358. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/editor.py +0 -0
  359. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/image.py +0 -0
  360. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/select_list.py +0 -0
  361. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/simple_picker.py +0 -0
  362. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/spinner.py +0 -0
  363. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/text_input.py +0 -0
  364. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/components/widget_bridge.py +0 -0
  365. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/frame.py +0 -0
  366. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/geometry.py +0 -0
  367. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/input.py +0 -0
  368. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/keybinding_hints.py +0 -0
  369. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/layout.py +0 -0
  370. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/markdown.py +0 -0
  371. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/palette.py +0 -0
  372. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/service.py +0 -0
  373. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/style.py +0 -0
  374. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/terminal.py +0 -0
  375. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/testing.py +0 -0
  376. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/text.py +0 -0
  377. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/theme.py +0 -0
  378. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/utils.py +0 -0
  379. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widget.py +0 -0
  380. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/__init__.py +0 -0
  381. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/barchart.py +0 -0
  382. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/block.py +0 -0
  383. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/calendar.py +0 -0
  384. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/canvas.py +0 -0
  385. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/chart.py +0 -0
  386. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/clear.py +0 -0
  387. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/gauge.py +0 -0
  388. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/list.py +0 -0
  389. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/paragraph.py +0 -0
  390. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/scrollbar.py +0 -0
  391. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/sparkline.py +0 -0
  392. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/symbols.py +0 -0
  393. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/table.py +0 -0
  394. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/tui/widgets/tabs.py +0 -0
  395. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/utils/__init__.py +0 -0
  396. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/utils/format.py +0 -0
  397. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/utils/http_proxy.py +0 -0
  398. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/utils/image_processing.py +0 -0
  399. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/utils/secrets.py +0 -0
  400. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau/utils/version_check.py +0 -0
  401. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau_coding_agent.egg-info/dependency_links.txt +0 -0
  402. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau_coding_agent.egg-info/entry_points.txt +0 -0
  403. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tau_coding_agent.egg-info/top_level.txt +0 -0
  404. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_agent_compaction.py +0 -0
  405. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_agent_hooks.py +0 -0
  406. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_agent_prompt.py +0 -0
  407. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_agent_types.py +0 -0
  408. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_ansi.py +0 -0
  409. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_ansi_bridge_legacy_image.py +0 -0
  410. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_anthropic_tool_history.py +0 -0
  411. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_ask_user_extension.py +0 -0
  412. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_audio_transcription_apis.py +0 -0
  413. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_auth_command.py +0 -0
  414. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_auth_manager.py +0 -0
  415. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_auth_storage.py +0 -0
  416. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_autocomplete_modifiers.py +0 -0
  417. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_branch_navigation.py +0 -0
  418. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_branch_summarization.py +0 -0
  419. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_builtin_tools.py +0 -0
  420. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_builtin_watch.py +0 -0
  421. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_cli_inputs.py +0 -0
  422. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_cmd_copy.py +0 -0
  423. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_command_execution_policy.py +0 -0
  424. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_command_registry.py +0 -0
  425. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_compaction.py +0 -0
  426. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_component_buffer_bridge.py +0 -0
  427. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_diff.py +0 -0
  428. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_editor_protocol.py +0 -0
  429. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_engine_execution.py +0 -0
  430. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_engine_length_and_live_tools.py +0 -0
  431. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_engine_steering.py +0 -0
  432. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_engine_types.py +0 -0
  433. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_escape_behavior.py +0 -0
  434. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_extension_api.py +0 -0
  435. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_extension_lifecycle.py +0 -0
  436. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_footer_model.py +0 -0
  437. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_footer_utils.py +0 -0
  438. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_fuzzy.py +0 -0
  439. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_gemini_generate.py +0 -0
  440. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_google_antigravity.py +0 -0
  441. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_google_vertex.py +0 -0
  442. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_http_proxy.py +0 -0
  443. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_image_processing.py +0 -0
  444. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_inference_api_text_utils.py +0 -0
  445. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_inference_dialect.py +0 -0
  446. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_inference_error_utils.py +0 -0
  447. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_inference_types.py +0 -0
  448. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_inference_utils.py +0 -0
  449. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_keybindings.py +0 -0
  450. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_layout_render_cells.py +0 -0
  451. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_markdown.py +0 -0
  452. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_message_list_frozen.py +0 -0
  453. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_message_utils.py +0 -0
  454. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_model_availability.py +0 -0
  455. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_model_command.py +0 -0
  456. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_model_registry.py +0 -0
  457. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_model_selector_modal.py +0 -0
  458. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_model_types.py +0 -0
  459. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_oauth_utils.py +0 -0
  460. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_package_resources.py +0 -0
  461. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_packages_utils.py +0 -0
  462. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_peer_extension.py +0 -0
  463. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_pkce.py +0 -0
  464. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_prompts_expand.py +0 -0
  465. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_prompts_loader.py +0 -0
  466. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_prompts_registry.py +0 -0
  467. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_provider_registry.py +0 -0
  468. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_resource_loader.py +0 -0
  469. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_rpc_mode.py +0 -0
  470. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_scrollback_raw_writes.py +0 -0
  471. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_scrollback_terminal.py +0 -0
  472. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_secrets.py +0 -0
  473. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_select_list_render_cells.py +0 -0
  474. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_selector_controller.py +0 -0
  475. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_session_manager.py +0 -0
  476. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_session_trust_persist.py +0 -0
  477. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_session_types.py +0 -0
  478. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_session_utils.py +0 -0
  479. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_settings_manager.py +0 -0
  480. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_settings_paths.py +0 -0
  481. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_settings_storage.py +0 -0
  482. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_settings_utils.py +0 -0
  483. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_skills_loader.py +0 -0
  484. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_skills_registry.py +0 -0
  485. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_strip_control_chars.py +0 -0
  486. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_subagent_context.py +0 -0
  487. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_telemetry.py +0 -0
  488. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_text_input.py +0 -0
  489. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_text_input_render_cells.py +0 -0
  490. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_text_llm_invoke.py +0 -0
  491. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_text_llm_model_resolution.py +0 -0
  492. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_theme_loader.py +0 -0
  493. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_themes_registry.py +0 -0
  494. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_thinking_render.py +0 -0
  495. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tool_registry.py +0 -0
  496. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tool_render.py +0 -0
  497. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tree_branch_restore.py +0 -0
  498. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_trust_manager.py +0 -0
  499. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_trust_utils.py +0 -0
  500. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_capabilities.py +0 -0
  501. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_child_rows.py +0 -0
  502. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_input.py +0 -0
  503. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_layout_sizing.py +0 -0
  504. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_public_api.py +0 -0
  505. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_renderer.py +0 -0
  506. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_select_list.py +0 -0
  507. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_theme.py +0 -0
  508. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_tui_utils.py +0 -0
  509. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_ui_context.py +0 -0
  510. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_utils_hashline.py +0 -0
  511. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_version_check.py +0 -0
  512. {tau_coding_agent-0.7.4 → tau_coding_agent-0.7.5}/tests/test_voice_selector.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tau-coding-agent
3
- Version: 0.7.4
3
+ Version: 0.7.5
4
4
  Summary: A self-extensible agent CLI with terminal UI, multi-provider LLM support, session management with branching, and a plugin system for tools and commands
5
5
  Requires-Python: >=3.12
6
6
  Description-Content-Type: text/markdown
@@ -32,6 +32,7 @@ Requires-Dist: arrow==1.4.0
32
32
  Requires-Dist: kiwisolver==1.5.0
33
33
  Requires-Dist: tiktoken==0.13.0
34
34
  Requires-Dist: rapidfuzz==3.14.3
35
+ Requires-Dist: pyxclip==0.2.3
35
36
  Provides-Extra: tools
36
37
  Requires-Dist: ripgrep>=14.0.0; extra == "tools"
37
38
  Dynamic: license-file
@@ -108,6 +109,7 @@ tau --resume # Resume the latest session
108
109
  tau --resume abc123 # Resume a specific session by ID
109
110
  tau --model claude-sonnet-4-6 # Start with a specific model
110
111
  tau --model groq/llama-3.3-70b-versatile # provider/model shorthand
112
+ tau --base-url http://localhost:8000/v1 --provider vllm # point at a local/proxy endpoint
111
113
  tau --print "Summarize this repository" # Run once and print the result
112
114
  tau --mode json --prompt "Summarize this repo" # Emit structured JSON events
113
115
  tau --mode rpc # Start JSON-RPC mode for IDE clients
@@ -123,6 +125,7 @@ Common flags:
123
125
  | `--mode` | | `interactive` (default), `print`, `json`, `rpc` |
124
126
  | `--provider` | | Provider to use, e.g. `anthropic`, `openai`, `groq` |
125
127
  | `--model` | | Model ID, or `provider/model` shorthand |
128
+ | `--base-url URL` | | Temporarily override the provider's base URL for this run (not persisted) |
126
129
  | `--resume [ID]` | `-r` | Resume the most recent or a specified session |
127
130
  | `--fork ID` | | Fork a specified session at startup |
128
131
  | `--ephemeral` | `-e` | Don't save this session to disk |
@@ -70,6 +70,7 @@ tau --resume # Resume the latest session
70
70
  tau --resume abc123 # Resume a specific session by ID
71
71
  tau --model claude-sonnet-4-6 # Start with a specific model
72
72
  tau --model groq/llama-3.3-70b-versatile # provider/model shorthand
73
+ tau --base-url http://localhost:8000/v1 --provider vllm # point at a local/proxy endpoint
73
74
  tau --print "Summarize this repository" # Run once and print the result
74
75
  tau --mode json --prompt "Summarize this repo" # Emit structured JSON events
75
76
  tau --mode rpc # Start JSON-RPC mode for IDE clients
@@ -85,6 +86,7 @@ Common flags:
85
86
  | `--mode` | | `interactive` (default), `print`, `json`, `rpc` |
86
87
  | `--provider` | | Provider to use, e.g. `anthropic`, `openai`, `groq` |
87
88
  | `--model` | | Model ID, or `provider/model` shorthand |
89
+ | `--base-url URL` | | Temporarily override the provider's base URL for this run (not persisted) |
88
90
  | `--resume [ID]` | `-r` | Resume the most recent or a specified session |
89
91
  | `--fork ID` | | Fork a specified session at startup |
90
92
  | `--ephemeral` | `-e` | Don't save this session to disk |
@@ -21,6 +21,7 @@ augment it.
21
21
  | `--quiet` | `-q` | Hide the non-interactive spinner |
22
22
  | `--provider` | | Provider to use, e.g. `anthropic`, `openai`, `groq` |
23
23
  | `--model` | | Model ID, or `provider/model` shorthand (e.g. `groq/llama-3.3-70b-versatile`) |
24
+ | `--base-url URL` | | Temporarily override the resolved provider's base URL for this run only (not persisted) |
24
25
  | `--theme` | `-t` | UI theme: `dark`, `light`, or an installed custom theme |
25
26
  | `--resume [ID]` | `-r` | Resume the most recent or a specified session |
26
27
  | `--fork ID` | | Fork a specified session at startup |
@@ -347,6 +348,24 @@ tau --model anthropic/claude-sonnet-4-6
347
348
 
348
349
  An explicit `--provider` always overrides the inferred provider.
349
350
 
351
+ ## Base URL Override
352
+
353
+ `--base-url` temporarily points the resolved provider at a different endpoint
354
+ for the current run — a proxy, gateway, or self-hosted deployment. It applies
355
+ to whichever provider ends up in use, whether set via `--provider`, inferred
356
+ from `provider/model` shorthand, or picked up from the saved/default model —
357
+ `--provider` is not required alongside it.
358
+
359
+ ```bash
360
+ tau --base-url http://localhost:8000/v1 --provider vllm
361
+ tau --model groq/llama-3.3-70b-versatile --base-url https://gateway.internal/v1
362
+ tau --base-url https://proxy.example.com/v1 # applies to the saved/default model
363
+ ```
364
+
365
+ The override is in-memory only for that run — it is never written to
366
+ `settings.json` or `auth.json`, and there is no persistent equivalent; pass
367
+ `--base-url` again on the next run.
368
+
350
369
  ## Session Options
351
370
 
352
371
  ```bash
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "tau-coding-agent"
7
- version = "0.7.4"
7
+ version = "0.7.5"
8
8
  description = "A self-extensible agent CLI with terminal UI, multi-provider LLM support, session management with branching, and a plugin system for tools and commands"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -36,6 +36,7 @@ dependencies = [
36
36
  "kiwisolver==1.5.0",
37
37
  "tiktoken==0.13.0",
38
38
  "rapidfuzz==3.14.3",
39
+ "pyxclip==0.2.3",
39
40
  ]
40
41
 
41
42
  [project.scripts]
@@ -146,6 +146,11 @@ _GENERAL_GUIDELINES = [
146
146
  "Prioritize accuracy over agreement — investigate before confirming, and "
147
147
  "disagree when the evidence calls for it."
148
148
  ),
149
+ (
150
+ "When asked a question, to explain something, or to review or report on status, "
151
+ "inspect the relevant files, code, or state before answering — give an "
152
+ "evidence-backed response, not one from assumption or memory."
153
+ ),
149
154
  (
150
155
  "Verify before reporting a task done: run the tests, build, or command that "
151
156
  "exercises the change. Don't present untested, partial, or stubbed-out work as complete."
@@ -158,6 +163,12 @@ _GENERAL_GUIDELINES = [
158
163
  "Treat git history as shared: never force-push, amend a commit that isn't yours, "
159
164
  "or skip hooks (--no-verify) without the user's explicit go-ahead."
160
165
  ),
166
+ (
167
+ "A new user message that arrives while you're still working may replace the "
168
+ "active request or add to it — judge from intent. If it replaces, drop the "
169
+ "prior work; if it adds, address both; if it's just a status question, answer "
170
+ "it and keep going."
171
+ )
161
172
  ]
162
173
 
163
174
  _PRECEDENCE_GUIDELINES = """\
@@ -75,6 +75,7 @@ class Agent:
75
75
  self._engine.options.before_tool_call = self._before_tool_call
76
76
  self._engine.options.after_tool_call = self._after_tool_call
77
77
  self._engine.options.transform_context = self._transform_context
78
+ self._engine.options.ephemeral_injection = self._ephemeral_injection
78
79
 
79
80
  # -------------------------------------------------------------------------
80
81
  # Public interface
@@ -270,6 +271,24 @@ class Agent:
270
271
  llm_messages = _to_llm_messages(session_ctx.messages)
271
272
  return strip_unusable_trailing_assistant(llm_messages, self._session_manager)
272
273
 
274
+ async def _ephemeral_injection(self) -> list[UserMessage]:
275
+ """Collect per-turn ephemeral messages from extensions via the "context" hook.
276
+
277
+ Called before every LLM inference (see Engine._run). Results are appended
278
+ to that single request's context only — never persisted to the session —
279
+ so extensions can keep the model up to date on live state (e.g. a todo
280
+ list) without that state needing to survive compaction.
281
+ """
282
+ from tau.hooks.engine import ContextEvent, ContextEventResult
283
+
284
+ session_ctx = self._session_manager.build_session_context()
285
+ results = await self.hooks.emit(ContextEvent(messages=list(session_ctx.messages)))
286
+ ephemeral: list[UserMessage] = []
287
+ for result in results:
288
+ if isinstance(result, ContextEventResult):
289
+ ephemeral.extend(result.ephemeral_messages)
290
+ return ephemeral
291
+
273
292
  # -------------------------------------------------------------------------
274
293
  # Internal helpers
275
294
  # -------------------------------------------------------------------------
@@ -674,6 +693,7 @@ class Agent:
674
693
  list(opts.images) if opts.images else None,
675
694
  list(opts.audio) if opts.audio else None,
676
695
  list(opts.video) if opts.video else None,
696
+ list(opts.file) if opts.file else None,
677
697
  )
678
698
  self._session_manager.append_message(user_message, meta=opts.meta)
679
699
 
@@ -46,6 +46,7 @@ class PromptOptions(BaseModel):
46
46
  images: list[bytes] = []
47
47
  audio: list[bytes] = []
48
48
  video: list[bytes] = []
49
+ file: list[bytes] = []
49
50
 
50
51
 
51
52
  @dataclass
@@ -132,6 +132,30 @@ def register(tau: ExtensionAPI) -> None:
132
132
 
133
133
  tau.on("session_shutdown", _on_shutdown)
134
134
 
135
+ def _inject_todo_state(_event: Any, _ctx: ExtensionContext) -> Any:
136
+ """Re-assert the live todo list into context on every turn.
137
+
138
+ Old `todo` tool calls/results fall out of view once compaction (or
139
+ just enough turns) pushes them out of the kept window, and the
140
+ board is TUI-only — the LLM otherwise has no way to recover the
141
+ list. Injecting it fresh, ephemerally, each turn means it never
142
+ depends on surviving compaction or being noticed by the
143
+ summarizer: it's simply re-told every time, so it's never stale.
144
+ """
145
+ from tau.hooks.engine import ContextEventResult
146
+ from tau.message.types import UserMessage
147
+
148
+ remaining = state.remaining()
149
+ if not remaining:
150
+ return None
151
+ lines = "\n".join(f"- #{i.id} [{i.status}] {i.subject}" for i in remaining)
152
+ reminder = UserMessage.from_text(
153
+ f"[Todo list reminder — not from the user, injected each turn]\n{lines}"
154
+ )
155
+ return ContextEventResult(ephemeral_messages=[reminder])
156
+
157
+ tau.on("context", _inject_todo_state)
158
+
135
159
  tau.register_tool(TodoTool(state, tau._runtime_ref, on_mutate=board.sync))
136
160
 
137
161
  async def cmd_todos(ctx: ExtensionContext, _args: list[str]) -> None: