alloy-runtime-cli 0.2.63__tar.gz → 0.2.64__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 (487) hide show
  1. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/PKG-INFO +7 -4
  2. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/README.md +4 -1
  3. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/alloy_runtime_cli.egg-info/PKG-INFO +7 -4
  4. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/alloy_runtime_cli.egg-info/requires.txt +2 -2
  5. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/list/command.py +9 -0
  6. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/regenerate.py +9 -28
  7. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/reload_session.py +0 -1
  8. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/send_message.py +14 -43
  9. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/messages.py +0 -38
  10. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/pane.py +1 -1
  11. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/renderers/markdown.py +11 -61
  12. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/renderers/plain.py +5 -12
  13. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/screen.py +51 -36
  14. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/store.py +18 -55
  15. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/types.py +5 -23
  16. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/chat_input.py +2 -2
  17. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/message_display.py +8 -54
  18. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/help_modal.py +1 -1
  19. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/pyproject.toml +3 -3
  20. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/MANIFEST.in +0 -0
  21. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/alloy_runtime_cli.egg-info/SOURCES.txt +0 -0
  22. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/alloy_runtime_cli.egg-info/dependency_links.txt +0 -0
  23. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/alloy_runtime_cli.egg-info/entry_points.txt +0 -0
  24. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/alloy_runtime_cli.egg-info/top_level.txt +0 -0
  25. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/__init__.py +0 -0
  26. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/__init__.py +0 -0
  27. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/__init__.py +0 -0
  28. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/bootstrap_command.py +0 -0
  29. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/__init__.py +0 -0
  30. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/create/__init__.py +0 -0
  31. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/create/command.py +0 -0
  32. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/create/presenter.py +0 -0
  33. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/grant/__init__.py +0 -0
  34. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/grant/command.py +0 -0
  35. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/grant/fields.py +0 -0
  36. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/admin/credentials/grant/presenter.py +0 -0
  37. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/__init__.py +0 -0
  38. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/create/__init__.py +0 -0
  39. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/create/command.py +0 -0
  40. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/create/fields.py +0 -0
  41. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/create/presenter.py +0 -0
  42. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/delete/__init__.py +0 -0
  43. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/delete/command.py +0 -0
  44. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/delete/presenter.py +0 -0
  45. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/get/command.py +0 -0
  46. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/get/presenter.py +0 -0
  47. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/list/__init__.py +0 -0
  48. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/list/command.py +0 -0
  49. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/list/presenter.py +0 -0
  50. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/tool_formatting.py +0 -0
  51. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/update/__init__.py +0 -0
  52. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/update/command.py +0 -0
  53. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/update/fields.py +0 -0
  54. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/agents/update/presenter.py +0 -0
  55. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/api_keys/__init__.py +0 -0
  56. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/api_keys/create/__init__.py +0 -0
  57. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/api_keys/create/command.py +0 -0
  58. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/api_keys/create/presenter.py +0 -0
  59. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/audio/__init__.py +0 -0
  60. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/audio/transcribe/__init__.py +0 -0
  61. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/audio/transcribe/command.py +0 -0
  62. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/audio/transcribe/presenter.py +0 -0
  63. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/auth/__init__.py +0 -0
  64. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/auth/login/__init__.py +0 -0
  65. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/auth/login/command.py +0 -0
  66. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/auth/signup/__init__.py +0 -0
  67. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/auth/signup/command.py +0 -0
  68. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/__init__.py +0 -0
  69. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/__init__.py +0 -0
  70. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/by_agent/__init__.py +0 -0
  71. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/by_agent/command.py +0 -0
  72. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/by_agent/presenter.py +0 -0
  73. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/by_model/__init__.py +0 -0
  74. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/by_model/command.py +0 -0
  75. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/by_model/presenter.py +0 -0
  76. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/daily/__init__.py +0 -0
  77. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/daily/command.py +0 -0
  78. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/daily/presenter.py +0 -0
  79. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/summary/__init__.py +0 -0
  80. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/summary/command.py +0 -0
  81. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/costs/summary/presenter.py +0 -0
  82. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/__init__.py +0 -0
  83. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/create/__init__.py +0 -0
  84. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/create/command.py +0 -0
  85. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/create/presenter.py +0 -0
  86. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/get/__init__.py +0 -0
  87. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/get/command.py +0 -0
  88. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/get/presenter.py +0 -0
  89. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/list/__init__.py +0 -0
  90. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/list/command.py +0 -0
  91. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/billing/projects/list/presenter.py +0 -0
  92. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/__init__.py +0 -0
  93. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/delete/__init__.py +0 -0
  94. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/delete/command.py +0 -0
  95. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/delete/presenter.py +0 -0
  96. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/edit/__init__.py +0 -0
  97. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/edit/command.py +0 -0
  98. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/edit/editor.py +0 -0
  99. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/edit/presenter.py +0 -0
  100. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/get/__init__.py +0 -0
  101. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/get/command.py +0 -0
  102. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/get/presenter.py +0 -0
  103. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/list/__init__.py +0 -0
  104. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/list/command.py +0 -0
  105. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/list/export_formatters.py +0 -0
  106. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/list/export_handler.py +0 -0
  107. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/content/list/presenter.py +0 -0
  108. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/__init__.py +0 -0
  109. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/create/__init__.py +0 -0
  110. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/create/command.py +0 -0
  111. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/create/fields.py +0 -0
  112. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/create/presenter.py +0 -0
  113. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/list/__init__.py +0 -0
  114. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/list/command.py +0 -0
  115. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/list/presenter.py +0 -0
  116. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/supported/command.py +0 -0
  117. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/supported/presenter.py +0 -0
  118. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/update/__init__.py +0 -0
  119. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/update/command.py +0 -0
  120. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/update/fields.py +0 -0
  121. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/credentials/update/presenter.py +0 -0
  122. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/executions/get/command.py +0 -0
  123. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/executions/get/presenter.py +0 -0
  124. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/executions/get/transcript_renderer.py +0 -0
  125. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/flag_utils.py +0 -0
  126. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/__init__.py +0 -0
  127. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/cancel/__init__.py +0 -0
  128. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/cancel/command.py +0 -0
  129. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/cancel/presenter.py +0 -0
  130. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/status/__init__.py +0 -0
  131. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/status/command.py +0 -0
  132. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/status/presenter.py +0 -0
  133. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/text/__init__.py +0 -0
  134. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/text/command.py +0 -0
  135. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/text/concurrent_renderer.py +0 -0
  136. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/text/presenter.py +0 -0
  137. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/generate/text/stream_renderer.py +0 -0
  138. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/__init__.py +0 -0
  139. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/__init__.py +0 -0
  140. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/cluster/__init__.py +0 -0
  141. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/cluster/command.py +0 -0
  142. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/cluster/presenter.py +0 -0
  143. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/cluster_status/__init__.py +0 -0
  144. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/cluster_status/command.py +0 -0
  145. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/cluster_status/presenter.py +0 -0
  146. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/create/__init__.py +0 -0
  147. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/create/command.py +0 -0
  148. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/create/presenter.py +0 -0
  149. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/delete/__init__.py +0 -0
  150. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/delete/command.py +0 -0
  151. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/delete/presenter.py +0 -0
  152. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/get/__init__.py +0 -0
  153. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/get/command.py +0 -0
  154. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/get/presenter.py +0 -0
  155. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/list/__init__.py +0 -0
  156. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/list/command.py +0 -0
  157. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/list/presenter.py +0 -0
  158. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/status/__init__.py +0 -0
  159. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/status/command.py +0 -0
  160. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/status/presenter.py +0 -0
  161. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/update/__init__.py +0 -0
  162. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/update/command.py +0 -0
  163. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/collections/update/presenter.py +0 -0
  164. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/__init__.py +0 -0
  165. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/bulk_metadata/__init__.py +0 -0
  166. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/bulk_metadata/command.py +0 -0
  167. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/bulk_metadata/presenter.py +0 -0
  168. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/bulk_reingest_failed/command.py +0 -0
  169. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/bulk_reingest_failed/presenter.py +0 -0
  170. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/delete/__init__.py +0 -0
  171. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/delete/command.py +0 -0
  172. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/delete/presenter.py +0 -0
  173. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/get/__init__.py +0 -0
  174. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/get/command.py +0 -0
  175. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/get/presenter.py +0 -0
  176. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/ingest/__init__.py +0 -0
  177. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/ingest/command.py +0 -0
  178. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/ingest/presenter.py +0 -0
  179. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/list/__init__.py +0 -0
  180. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/list/presenter.py +0 -0
  181. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/reingest/__init__.py +0 -0
  182. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/reingest/command.py +0 -0
  183. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/reingest/presenter.py +0 -0
  184. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/update/__init__.py +0 -0
  185. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/update/command.py +0 -0
  186. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/documents/update/presenter.py +0 -0
  187. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/recover/__init__.py +0 -0
  188. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/recover/command.py +0 -0
  189. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/recover/presenter.py +0 -0
  190. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/search/__init__.py +0 -0
  191. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/search/command.py +0 -0
  192. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/search/presenter.py +0 -0
  193. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/__init__.py +0 -0
  194. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/create/__init__.py +0 -0
  195. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/create/command.py +0 -0
  196. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/create/presenter.py +0 -0
  197. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/delete/__init__.py +0 -0
  198. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/delete/command.py +0 -0
  199. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/delete/presenter.py +0 -0
  200. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/get/__init__.py +0 -0
  201. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/get/command.py +0 -0
  202. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/get/presenter.py +0 -0
  203. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/list/__init__.py +0 -0
  204. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/list/command.py +0 -0
  205. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/list/presenter.py +0 -0
  206. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/refresh/__init__.py +0 -0
  207. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/refresh/command.py +0 -0
  208. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/refresh/presenter.py +0 -0
  209. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/update/__init__.py +0 -0
  210. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/update/command.py +0 -0
  211. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/knowledge/synthesis/update/presenter.py +0 -0
  212. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/models/__init__.py +0 -0
  213. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/models/list/__init__.py +0 -0
  214. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/models/list/command.py +0 -0
  215. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/models/list/presenter.py +0 -0
  216. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/organizations/__init__.py +0 -0
  217. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/organizations/create/command.py +0 -0
  218. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/organizations/create/presenter.py +0 -0
  219. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/ping/command.py +0 -0
  220. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/__init__.py +0 -0
  221. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/approvals/__init__.py +0 -0
  222. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/approvals/decide_command.py +0 -0
  223. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/approvals/get_command.py +0 -0
  224. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/approvals/presenter.py +0 -0
  225. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/costs/__init__.py +0 -0
  226. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/costs/command.py +0 -0
  227. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/costs/daily_command.py +0 -0
  228. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/costs/daily_presenter.py +0 -0
  229. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/costs/presenter.py +0 -0
  230. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/create/__init__.py +0 -0
  231. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/create/command.py +0 -0
  232. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/create/presenter.py +0 -0
  233. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/env_vars/__init__.py +0 -0
  234. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/env_vars/command.py +0 -0
  235. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/env_vars/presenter.py +0 -0
  236. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/execute/__init__.py +0 -0
  237. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/execute/command.py +0 -0
  238. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/execute/presenter.py +0 -0
  239. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/__init__.py +0 -0
  240. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs/__init__.py +0 -0
  241. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs/command.py +0 -0
  242. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs/presenter.py +0 -0
  243. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs_by_model/__init__.py +0 -0
  244. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs_by_model/command.py +0 -0
  245. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs_by_model/presenter.py +0 -0
  246. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/costs_by_step/__init__.py +0 -0
  247. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/get_command.py +0 -0
  248. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/list_command.py +0 -0
  249. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/presenter.py +0 -0
  250. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/rerun_command.py +0 -0
  251. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/update/__init__.py +0 -0
  252. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/update/command.py +0 -0
  253. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/executions/update/presenter.py +0 -0
  254. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/get/__init__.py +0 -0
  255. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/get/command.py +0 -0
  256. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/get/presenter.py +0 -0
  257. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/list/__init__.py +0 -0
  258. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/list/command.py +0 -0
  259. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/list/presenter.py +0 -0
  260. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/__init__.py +0 -0
  261. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/create_command.py +0 -0
  262. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/create_presenter.py +0 -0
  263. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/delete_command.py +0 -0
  264. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/env_vars_command.py +0 -0
  265. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/env_vars_presenter.py +0 -0
  266. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/get_command.py +0 -0
  267. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/list_command.py +0 -0
  268. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/once_command.py +0 -0
  269. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/once_presenter.py +0 -0
  270. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/presenter.py +0 -0
  271. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/update_command.py +0 -0
  272. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/schedules/update_presenter.py +0 -0
  273. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/update/__init__.py +0 -0
  274. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/pipelines/update/command.py +0 -0
  275. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/render/__init__.py +0 -0
  276. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/render/html_to_image/__init__.py +0 -0
  277. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/render/html_to_image/command.py +0 -0
  278. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/__init__.py +0 -0
  279. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/create/__init__.py +0 -0
  280. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/create/command.py +0 -0
  281. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/create/presenter.py +0 -0
  282. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/delete/command.py +0 -0
  283. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/delete/presenter.py +0 -0
  284. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/get/__init__.py +0 -0
  285. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/get/command.py +0 -0
  286. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/get/presenter.py +0 -0
  287. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/list/__init__.py +0 -0
  288. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/list/command.py +0 -0
  289. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/list/presenter.py +0 -0
  290. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/update/__init__.py +0 -0
  291. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/update/command.py +0 -0
  292. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/schemas/update/presenter.py +0 -0
  293. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/__init__.py +0 -0
  294. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/delete/__init__.py +0 -0
  295. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/delete/command.py +0 -0
  296. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/delete/presenter.py +0 -0
  297. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/get/__init__.py +0 -0
  298. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/get/command.py +0 -0
  299. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/get/presenter.py +0 -0
  300. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/list/__init__.py +0 -0
  301. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/list/command.py +0 -0
  302. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/list/presenter.py +0 -0
  303. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/messages/__init__.py +0 -0
  304. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/messages/command.py +0 -0
  305. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sessions/messages/presenter.py +0 -0
  306. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/shared_flags.py +0 -0
  307. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sync/__init__.py +0 -0
  308. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sync/command.py +0 -0
  309. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/sync/presenter.py +0 -0
  310. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/__init__.py +0 -0
  311. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/create/__init__.py +0 -0
  312. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/create/command.py +0 -0
  313. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/delete/__init__.py +0 -0
  314. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/delete/command.py +0 -0
  315. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/delete/presenter.py +0 -0
  316. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/get/command.py +0 -0
  317. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/get/presenter.py +0 -0
  318. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/list/__init__.py +0 -0
  319. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/list/command.py +0 -0
  320. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/list/presenter.py +0 -0
  321. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/update/command.py +0 -0
  322. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tags/update/presenter.py +0 -0
  323. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/__init__.py +0 -0
  324. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/create/__init__.py +0 -0
  325. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/create/command.py +0 -0
  326. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/create/presenter.py +0 -0
  327. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/delete/__init__.py +0 -0
  328. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/delete/command.py +0 -0
  329. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/delete/presenter.py +0 -0
  330. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/get/__init__.py +0 -0
  331. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/get/command.py +0 -0
  332. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/get/presenter.py +0 -0
  333. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/get_by_version/command.py +0 -0
  334. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/get_by_version/presenter.py +0 -0
  335. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/list/__init__.py +0 -0
  336. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/list/command.py +0 -0
  337. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/list/presenter.py +0 -0
  338. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/render/__init__.py +0 -0
  339. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/render/command.py +0 -0
  340. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/render/presenter.py +0 -0
  341. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/update/__init__.py +0 -0
  342. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/update/command.py +0 -0
  343. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/update/presenter.py +0 -0
  344. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/validate/__init__.py +0 -0
  345. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/validate/command.py +0 -0
  346. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/validate/presenter.py +0 -0
  347. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/version/__init__.py +0 -0
  348. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/version/command.py +0 -0
  349. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/templates/version/presenter.py +0 -0
  350. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/__init__.py +0 -0
  351. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/create/__init__.py +0 -0
  352. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/create/command.py +0 -0
  353. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/create/presenter.py +0 -0
  354. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/delete/__init__.py +0 -0
  355. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/delete/command.py +0 -0
  356. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/delete/presenter.py +0 -0
  357. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/get/__init__.py +0 -0
  358. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/get/command.py +0 -0
  359. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/get/presenter.py +0 -0
  360. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/list/__init__.py +0 -0
  361. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/list/command.py +0 -0
  362. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/list/presenter.py +0 -0
  363. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/update/__init__.py +0 -0
  364. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/update/command.py +0 -0
  365. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tool_configs/update/presenter.py +0 -0
  366. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/__init__.py +0 -0
  367. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/get/__init__.py +0 -0
  368. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/get/command.py +0 -0
  369. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/get/presenter.py +0 -0
  370. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/list/__init__.py +0 -0
  371. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/list/command.py +0 -0
  372. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/tools/list/presenter.py +0 -0
  373. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/users/__init__.py +0 -0
  374. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/users/create/command.py +0 -0
  375. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/users/create/presenter.py +0 -0
  376. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/commands/whoami/__init__.py +0 -0
  377. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/__init__.py +0 -0
  378. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/auth_storage.py +0 -0
  379. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/client_factory.py +0 -0
  380. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/command.py +0 -0
  381. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/config.py +0 -0
  382. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/console.py +0 -0
  383. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/editor.py +0 -0
  384. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/error_display.py +0 -0
  385. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/field_extractor.py +0 -0
  386. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/file_content.py +0 -0
  387. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/filter_parser.py +0 -0
  388. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatters/__init__.py +0 -0
  389. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatters/base.py +0 -0
  390. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatters/compact_formatter.py +0 -0
  391. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatters/json_formatter.py +0 -0
  392. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatters/table_formatter.py +0 -0
  393. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatting/__init__.py +0 -0
  394. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/formatting/fields.py +0 -0
  395. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/__init__.py +0 -0
  396. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/agent_picker.py +0 -0
  397. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/agent_tool_editor.py +0 -0
  398. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/agent_tools_manager.py +0 -0
  399. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/base_picker.py +0 -0
  400. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/components.py +0 -0
  401. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/json_schema_builder.py +0 -0
  402. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/model_picker.py +0 -0
  403. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/parsers.py +0 -0
  404. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/resolution_modal.py +0 -0
  405. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/schema_picker.py +0 -0
  406. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/tag_management_modal.py +0 -0
  407. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/tag_picker.py +0 -0
  408. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/template_picker.py +0 -0
  409. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/tool_config_picker.py +0 -0
  410. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/forms/tool_picker.py +0 -0
  411. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/help_json.py +0 -0
  412. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/help_markdown.py +0 -0
  413. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/help_toon.py +0 -0
  414. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/injection/__init__.py +0 -0
  415. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/injection/parser.py +0 -0
  416. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/injection/resolver.py +0 -0
  417. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/kv_parser.py +0 -0
  418. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/local_storage.py +0 -0
  419. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/macro_parser.py +0 -0
  420. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/output.py +0 -0
  421. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/provider_setup.py +0 -0
  422. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/renderers/__init__.py +0 -0
  423. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/renderers/entity_renderer.py +0 -0
  424. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/renderers/list_renderer.py +0 -0
  425. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/scope_utils.py +0 -0
  426. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/spinner.py +0 -0
  427. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/tui/__init__.py +0 -0
  428. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/tui/clipboard.py +0 -0
  429. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/tui/formatters.py +0 -0
  430. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/tui/preview.py +0 -0
  431. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/tui/selectable.py +0 -0
  432. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/validation/__init__.py +0 -0
  433. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/infrastructure/validation/tag_validation.py +0 -0
  434. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/main.py +0 -0
  435. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/__init__.py +0 -0
  436. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/app.py +0 -0
  437. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/app_store.py +0 -0
  438. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/__init__.py +0 -0
  439. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/__init__.py +0 -0
  440. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/base.py +0 -0
  441. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/create_session.py +0 -0
  442. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/load_session.py +0 -0
  443. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/commands/undo.py +0 -0
  444. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/editor.py +0 -0
  445. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/renderers/__init__.py +0 -0
  446. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/renderers/base.py +0 -0
  447. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/services/__init__.py +0 -0
  448. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/services/injection.py +0 -0
  449. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/services/name_generator.py +0 -0
  450. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/slash_commands.py +0 -0
  451. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/__init__.py +0 -0
  452. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/chat_header.py +0 -0
  453. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/injection_popup.py +0 -0
  454. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/session_sidebar.py +0 -0
  455. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/chat/widgets/welcome_screen.py +0 -0
  456. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/__init__.py +0 -0
  457. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/agents.py +0 -0
  458. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/base.py +0 -0
  459. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/content.py +0 -0
  460. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/dashboard.py +0 -0
  461. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/models.py +0 -0
  462. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/nav_screen.py +0 -0
  463. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/schemas.py +0 -0
  464. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/templates.py +0 -0
  465. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/screens/tool_configs.py +0 -0
  466. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/__init__.py +0 -0
  467. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/app.tcss +0 -0
  468. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/browser.tcss +0 -0
  469. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/chat.tcss +0 -0
  470. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/dashboard.tcss +0 -0
  471. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/forms.tcss +0 -0
  472. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/styles/modals.tcss +0 -0
  473. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/__init__.py +0 -0
  474. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/agent_create_modal.py +0 -0
  475. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/agent_form_modal.py +0 -0
  476. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/agent_update_modal.py +0 -0
  477. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/base_form_modal.py +0 -0
  478. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/confirm_modal.py +0 -0
  479. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/new_session_modal.py +0 -0
  480. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/schema_create_modal.py +0 -0
  481. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/schema_update_modal.py +0 -0
  482. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/status_footer.py +0 -0
  483. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/template_create_modal.py +0 -0
  484. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/template_update_modal.py +0 -0
  485. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/tool_config_create_modal.py +0 -0
  486. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/cli/tui/widgets/tool_config_update_modal.py +0 -0
  487. {alloy_runtime_cli-0.2.63 → alloy_runtime_cli-0.2.64}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alloy-runtime-cli
3
- Version: 0.2.63
3
+ Version: 0.2.64
4
4
  Summary: Alloy Runtime CLI - Command-line interface for Alloy Runtime server
5
5
  Keywords: alloy,cli,python,terminal,workflow
6
6
  Classifier: Development Status :: 3 - Alpha
@@ -16,8 +16,8 @@ Requires-Dist: textual==8.2.3
16
16
  Requires-Dist: genson==1.3.0
17
17
  Requires-Dist: pyperclip==1.11.0
18
18
  Requires-Dist: prompt-toolkit==3.0.52
19
- Requires-Dist: alloy-runtime-sdk==0.2.63
20
- Requires-Dist: alloy-runtime-types==0.2.63
19
+ Requires-Dist: alloy-runtime-sdk==0.2.64
20
+ Requires-Dist: alloy-runtime-types==0.2.64
21
21
  Requires-Dist: trogon==0.6.0
22
22
 
23
23
  # alloy-runtime-cli
@@ -65,6 +65,10 @@ Use `alloy --format compact` for the existing psql-style human-readable record v
65
65
  Use `alloy --format table` for Rich table output in the non-TUI CLI.
66
66
  Use `alloy --format json` for automation-friendly machine-readable output.
67
67
 
68
+ Running `alloy` without a subcommand launches the Textual TUI. TUI chat uses the
69
+ standard non-streaming generation path, so it works with agents that have tools
70
+ configured. Responses appear once the full turn completes rather than token-by-token.
71
+
68
72
  For live model-execution inspection, use:
69
73
 
70
74
  ```bash
@@ -101,4 +105,3 @@ Use `alloy login` to save an API key locally, or set the environment variables w
101
105
  running on a VPS.
102
106
 
103
107
  CLI release trigger: no functional changes.
104
-
@@ -43,6 +43,10 @@ Use `alloy --format compact` for the existing psql-style human-readable record v
43
43
  Use `alloy --format table` for Rich table output in the non-TUI CLI.
44
44
  Use `alloy --format json` for automation-friendly machine-readable output.
45
45
 
46
+ Running `alloy` without a subcommand launches the Textual TUI. TUI chat uses the
47
+ standard non-streaming generation path, so it works with agents that have tools
48
+ configured. Responses appear once the full turn completes rather than token-by-token.
49
+
46
50
  For live model-execution inspection, use:
47
51
 
48
52
  ```bash
@@ -79,4 +83,3 @@ Use `alloy login` to save an API key locally, or set the environment variables w
79
83
  running on a VPS.
80
84
 
81
85
  CLI release trigger: no functional changes.
82
-
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alloy-runtime-cli
3
- Version: 0.2.63
3
+ Version: 0.2.64
4
4
  Summary: Alloy Runtime CLI - Command-line interface for Alloy Runtime server
5
5
  Keywords: alloy,cli,python,terminal,workflow
6
6
  Classifier: Development Status :: 3 - Alpha
@@ -16,8 +16,8 @@ Requires-Dist: textual==8.2.3
16
16
  Requires-Dist: genson==1.3.0
17
17
  Requires-Dist: pyperclip==1.11.0
18
18
  Requires-Dist: prompt-toolkit==3.0.52
19
- Requires-Dist: alloy-runtime-sdk==0.2.63
20
- Requires-Dist: alloy-runtime-types==0.2.63
19
+ Requires-Dist: alloy-runtime-sdk==0.2.64
20
+ Requires-Dist: alloy-runtime-types==0.2.64
21
21
  Requires-Dist: trogon==0.6.0
22
22
 
23
23
  # alloy-runtime-cli
@@ -65,6 +65,10 @@ Use `alloy --format compact` for the existing psql-style human-readable record v
65
65
  Use `alloy --format table` for Rich table output in the non-TUI CLI.
66
66
  Use `alloy --format json` for automation-friendly machine-readable output.
67
67
 
68
+ Running `alloy` without a subcommand launches the Textual TUI. TUI chat uses the
69
+ standard non-streaming generation path, so it works with agents that have tools
70
+ configured. Responses appear once the full turn completes rather than token-by-token.
71
+
68
72
  For live model-execution inspection, use:
69
73
 
70
74
  ```bash
@@ -101,4 +105,3 @@ Use `alloy login` to save an API key locally, or set the environment variables w
101
105
  running on a VPS.
102
106
 
103
107
  CLI release trigger: no functional changes.
104
-
@@ -4,6 +4,6 @@ textual==8.2.3
4
4
  genson==1.3.0
5
5
  pyperclip==1.11.0
6
6
  prompt-toolkit==3.0.52
7
- alloy-runtime-sdk==0.2.63
8
- alloy-runtime-types==0.2.63
7
+ alloy-runtime-sdk==0.2.64
8
+ alloy-runtime-types==0.2.64
9
9
  trogon==0.6.0
@@ -19,6 +19,11 @@ def knowledge_documents_list_command(
19
19
  "--status",
20
20
  help="Filter by status: queued|processing|completed|failed|duplicate|filtered",
21
21
  ),
22
+ external_id: str | None = typer.Option(
23
+ None,
24
+ "--external-id",
25
+ help="Filter by exact external_id match",
26
+ ),
22
27
  limit: int = typer.Option(
23
28
  50,
24
29
  "-l",
@@ -40,6 +45,7 @@ def knowledge_documents_list_command(
40
45
  alloy knowledge documents list
41
46
  alloy knowledge documents list -C my-collection
42
47
  alloy knowledge documents list -s completed -l 20
48
+ alloy knowledge documents list --external-id crm-123
43
49
  alloy knowledge documents list -s duplicate
44
50
  alloy knowledge documents list -s filtered
45
51
  alloy knowledge documents list --status failed
@@ -47,6 +53,7 @@ def knowledge_documents_list_command(
47
53
  _execute_list(
48
54
  collection_id=collection,
49
55
  processing_status=status,
56
+ external_id=external_id,
50
57
  limit=limit,
51
58
  offset=offset,
52
59
  )
@@ -56,6 +63,7 @@ def knowledge_documents_list_command(
56
63
  async def _execute_list(
57
64
  collection_id: str | None,
58
65
  processing_status: str | None,
66
+ external_id: str | None,
59
67
  limit: int,
60
68
  offset: int,
61
69
  ) -> None:
@@ -66,6 +74,7 @@ async def _execute_list(
66
74
  offset=offset,
67
75
  collection_id=collection_id,
68
76
  processing_status=processing_status,
77
+ external_id=external_id,
69
78
  )
70
79
 
71
80
  present_documents_list(response)
@@ -1,7 +1,6 @@
1
1
  """Command for regenerating the last AI response."""
2
2
 
3
3
  from dataclasses import dataclass
4
- from typing import Callable
5
4
  from uuid import UUID
6
5
 
7
6
  from alloy_runtime_sdk.api_client.client import ApiClient
@@ -28,17 +27,16 @@ class RegenerateCommand:
28
27
  - Model mode: Uses provider_key/provider_model_name/system_instruction directly
29
28
 
30
29
  This command:
31
- 1. Transitions store to STREAMING phase
30
+ 1. Transitions store to SENDING phase
32
31
  2. Sends a regenerate request to the API
33
- 3. Streams the new response chunks via callbacks (content and thinking)
34
- 4. Transitions back to IDLE when complete
32
+ 3. Waits for the final non-streaming response
33
+ 4. Leaves the store in SENDING on success so the caller can reload persisted
34
+ messages before clearing the waiting state
35
35
 
36
36
  Attributes:
37
37
  client: Server client for API calls.
38
38
  store: Chat store for state management.
39
39
  session_id: ID of the current chat session.
40
- on_chunk: Callback invoked with each streamed text chunk.
41
- on_thinking_chunk: Callback invoked with each reasoning/thinking chunk.
42
40
  agent_id: ID of the agent to use for regeneration (agent mode).
43
41
  provider_key: Provider key (model mode).
44
42
  provider_model_name: Model name (model mode).
@@ -48,8 +46,6 @@ class RegenerateCommand:
48
46
  client: ApiClient
49
47
  store: ChatStore
50
48
  session_id: UUID
51
- on_chunk: Callable[[str], None]
52
- on_thinking_chunk: Callable[[str], None] | None = None
53
49
  # Agent mode
54
50
  agent_id: UUID | None = None
55
51
  # Model mode
@@ -64,9 +60,8 @@ class RegenerateCommand:
64
60
  CommandResult indicating success or failure.
65
61
  """
66
62
  logger.info("regenerate_starting", session_id=str(self.session_id))
67
- self.store.start_streaming()
63
+ self.store.start_generation()
68
64
 
69
- was_cancelled = False
70
65
  try:
71
66
  # Build model source based on mode
72
67
  if self.agent_id is not None:
@@ -77,6 +72,7 @@ class RegenerateCommand:
77
72
  provider_model_name=self.provider_model_name,
78
73
  )
79
74
  else:
75
+ self.store.finish_generation()
80
76
  return CommandResult[None](
81
77
  success=False,
82
78
  error="No agent or model configured for this session",
@@ -86,7 +82,7 @@ class RegenerateCommand:
86
82
  model_source=model_source,
87
83
  chat_session_id=self.session_id,
88
84
  regenerate=True,
89
- stream=True,
85
+ stream=False,
90
86
  tags=[],
91
87
  # Only include system instruction for model mode
92
88
  system_instruction=self.system_instruction
@@ -94,27 +90,12 @@ class RegenerateCommand:
94
90
  else None,
95
91
  )
96
92
 
97
- async for chunk in self.client.generate_text_stream(request):
98
- # Check for cancellation request
99
- if self.store.state.cancel_requested:
100
- logger.info("regenerate_cancelled_by_user")
101
- was_cancelled = True
102
- return CommandResult[None](success=True, data=None)
103
-
104
- # Handle thinking/reasoning chunks
105
- if chunk.chunk_type == "thinking" and chunk.reasoning_content:
106
- if self.on_thinking_chunk:
107
- self.on_thinking_chunk(chunk.reasoning_content)
108
- # Handle regular text content chunks
109
- elif chunk.content:
110
- self.on_chunk(chunk.content)
93
+ await self.client.generate_text(request)
111
94
 
112
95
  logger.info("regenerate_completed")
113
96
  return CommandResult[None](success=True, data=None)
114
97
 
115
98
  except Exception as e:
116
99
  logger.warning("regenerate_failed", error=str(e))
100
+ self.store.finish_generation()
117
101
  return CommandResult[None](success=False, error=str(e))
118
-
119
- finally:
120
- self.store.finish_streaming(cancelled=was_cancelled)
@@ -59,5 +59,4 @@ class ReloadSessionCommand:
59
59
  )
60
60
 
61
61
  except Exception as e:
62
- # Silently fail for reload - the user already saw the response
63
62
  return CommandResult[ReloadSessionResult](success=False, error=str(e))
@@ -1,4 +1,4 @@
1
- """Command for sending a message and streaming the response."""
1
+ """Command for sending a message and waiting for the final response."""
2
2
 
3
3
  from dataclasses import dataclass
4
4
  from typing import Callable
@@ -24,7 +24,7 @@ logger = get_logger(__name__)
24
24
 
25
25
  @dataclass
26
26
  class SendMessageCommand:
27
- """Command to send a user message and stream the AI response.
27
+ """Command to send a user message and await the final AI response.
28
28
 
29
29
  Supports two modes:
30
30
  - Agent mode: Uses agent_id to determine model and system instruction
@@ -38,18 +38,17 @@ class SendMessageCommand:
38
38
 
39
39
  This command:
40
40
  1. Resolves any injection patterns in the message
41
- 2. Transitions store to STREAMING phase
41
+ 2. Transitions store to SENDING phase
42
42
  3. Builds and sends the generation request
43
- 4. Streams response chunks via callbacks (content and thinking)
44
- 5. Transitions back to IDLE when complete
43
+ 4. Waits for the final response from the non-streaming API
44
+ 5. Leaves the store in SENDING on success so the caller can reload persisted
45
+ messages before clearing the optimistic pending state
45
46
 
46
47
  Attributes:
47
48
  client: Server client for API calls.
48
49
  store: Chat store for state management.
49
50
  session_id: ID of the current chat session.
50
51
  user_message: The user's message to send.
51
- on_chunk: Callback invoked with each streamed text chunk.
52
- on_thinking_chunk: Callback invoked with each reasoning/thinking chunk.
53
52
  agent_id: ID of the agent to use for generation (agent mode).
54
53
  provider_key: Provider key (model mode).
55
54
  provider_model_name: Model name (model mode).
@@ -62,8 +61,6 @@ class SendMessageCommand:
62
61
  store: ChatStore
63
62
  session_id: UUID
64
63
  user_message: str
65
- on_chunk: Callable[[str], None]
66
- on_thinking_chunk: Callable[[str], None] | None = None
67
64
  # Agent mode
68
65
  agent_id: UUID | None = None
69
66
  # Model mode
@@ -75,7 +72,7 @@ class SendMessageCommand:
75
72
  on_injection_resolved: Callable[[ResolvedMessage], None] | None = None
76
73
 
77
74
  async def execute(self) -> CommandResult[None]:
78
- """Execute the send message and stream operation.
75
+ """Execute the send message operation.
79
76
 
80
77
  Returns:
81
78
  CommandResult indicating success or failure.
@@ -123,11 +120,9 @@ class SendMessageCommand:
123
120
  error=f"Failed to resolve injections: {e}",
124
121
  )
125
122
 
126
- # Start streaming with the user message shown optimistically
123
+ # Start generation with the user message shown optimistically
127
124
  # Note: We show the original message, not the resolved one
128
- self.store.start_streaming(user_message=self.user_message)
129
-
130
- was_cancelled = False
125
+ self.store.start_generation(user_message=self.user_message)
131
126
  try:
132
127
  # Build model source based on mode
133
128
  if self.agent_id is not None:
@@ -138,6 +133,7 @@ class SendMessageCommand:
138
133
  provider_model_name=self.provider_model_name,
139
134
  )
140
135
  else:
136
+ self.store.finish_generation()
141
137
  return CommandResult[None](
142
138
  success=False,
143
139
  error="No agent or model configured for this session",
@@ -146,7 +142,7 @@ class SendMessageCommand:
146
142
  request = GenerateTextRequest(
147
143
  model_source=model_source,
148
144
  user_message=message_to_send, # Use resolved message
149
- stream=True,
145
+ stream=False,
150
146
  tags=[],
151
147
  chat_session_id=self.session_id,
152
148
  # Only include system instruction for model mode
@@ -155,36 +151,11 @@ class SendMessageCommand:
155
151
  else None,
156
152
  )
157
153
 
158
- async for chunk in self.client.generate_text_stream(request):
159
- # Check for cancellation request
160
- if self.store.state.cancel_requested:
161
- logger.info("stream_cancelled_by_user")
162
- was_cancelled = True
163
- return CommandResult[None](success=True, data=None)
164
-
165
- # Debug: log chunk info for first few chunks
166
- logger.debug(
167
- "stream_chunk",
168
- extra={
169
- "chunk_type": chunk.chunk_type,
170
- "has_content": bool(chunk.content),
171
- "has_reasoning": bool(chunk.reasoning_content),
172
- "sequence": chunk.sequence,
173
- },
174
- )
175
-
176
- # Handle thinking/reasoning chunks
177
- if chunk.chunk_type == "thinking" and chunk.reasoning_content:
178
- if self.on_thinking_chunk:
179
- self.on_thinking_chunk(chunk.reasoning_content)
180
- # Handle regular text content chunks
181
- elif chunk.content:
182
- self.on_chunk(chunk.content)
154
+ await self.client.generate_text(request)
183
155
 
184
156
  return CommandResult[None](success=True, data=None)
185
157
 
186
158
  except Exception as e:
159
+ logger.warning("send_message_failed", error=str(e))
160
+ self.store.finish_generation()
187
161
  return CommandResult[None](success=False, error=str(e))
188
-
189
- finally:
190
- self.store.finish_streaming(cancelled=was_cancelled)
@@ -89,44 +89,6 @@ class UndoRequested(Message):
89
89
  pass
90
90
 
91
91
 
92
- # =============================================================================
93
- # Streaming Events
94
- # =============================================================================
95
-
96
-
97
- class StreamingStarted(Message):
98
- """Response streaming has begun."""
99
-
100
- def __init__(self, execution_id: UUID) -> None:
101
- self.execution_id = execution_id
102
- super().__init__()
103
-
104
-
105
- class StreamingChunk(Message):
106
- """A chunk of streamed content received."""
107
-
108
- def __init__(self, content: str, is_reasoning: bool = False) -> None:
109
- self.content = content
110
- self.is_reasoning = is_reasoning
111
- super().__init__()
112
-
113
-
114
- class StreamingCompleted(Message):
115
- """Response streaming finished successfully."""
116
-
117
- def __init__(self, full_content: str) -> None:
118
- self.full_content = full_content
119
- super().__init__()
120
-
121
-
122
- class StreamingError(Message):
123
- """Error occurred during streaming."""
124
-
125
- def __init__(self, error: str) -> None:
126
- self.error = error
127
- super().__init__()
128
-
129
-
130
92
  # =============================================================================
131
93
  # UI Events
132
94
  # =============================================================================
@@ -25,7 +25,7 @@ class ChatPane(Widget):
25
25
 
26
26
  This widget contains the main chat interface components:
27
27
  - ChatHeader: Shows current session/model info
28
- - MessageDisplay: Shows message history and streaming content
28
+ - MessageDisplay: Shows message history and pending request state
29
29
  - ChatInput: Text input for composing messages
30
30
 
31
31
  Each pane has its own ChatStore, allowing independent sessions
@@ -1,9 +1,4 @@
1
- """Markdown renderer for chat messages.
2
-
3
- Renders messages with Rich markdown formatting for display in Textual widgets.
4
- Uses Rich's Markdown class to properly render markdown syntax (headers, code blocks,
5
- lists, etc.) in assistant responses.
6
- """
1
+ """Markdown renderer for chat messages."""
7
2
 
8
3
  from datetime import datetime
9
4
 
@@ -18,9 +13,6 @@ from cli.tui.chat.renderers.base import (
18
13
  )
19
14
  from cli.tui.chat.types import extract_thinking_content, format_time
20
15
 
21
- # Spinner frames for streaming indicator
22
- SPINNER_FRAMES = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"]
23
-
24
16
  # Color for thinking/reasoning blocks
25
17
  THINKING_COLOR = "#bb9af7" # tokyo-night purple accent
26
18
 
@@ -33,36 +25,29 @@ class MarkdownRenderer:
33
25
  - Assistant messages rendered as proper markdown (code blocks, headers, etc.)
34
26
  - Agent/model name in header
35
27
  - Timestamps on each message
36
- - Spinner during streaming
37
28
  - Optimistic user message display
29
+ - Waiting indicator while a response is in flight
38
30
  - Thinking/reasoning blocks with distinctive styling
39
31
 
40
32
  This is the default renderer for the chat interface. It uses Rich's Markdown
41
33
  class to properly render markdown syntax in assistant responses.
42
34
  """
43
35
 
44
- def __init__(self) -> None:
45
- self._spinner_frame = 0
46
-
47
36
  def render(
48
37
  self,
49
38
  messages: tuple[MessageResponse, ...],
50
- streaming_content: str = "",
51
- streaming_thinking_content: str = "",
52
39
  pending_user_message: str | None = None,
53
40
  assistant_name: str = "Assistant",
54
- is_streaming: bool = False,
41
+ is_generating: bool = False,
55
42
  thinking_collapsed: bool = False,
56
43
  ) -> Group:
57
44
  """Render messages to a Rich Group with proper markdown formatting.
58
45
 
59
46
  Args:
60
47
  messages: Tuple of message responses to render.
61
- streaming_content: Partial content being streamed (appended to end).
62
- streaming_thinking_content: Partial thinking/reasoning content being streamed.
63
48
  pending_user_message: User message shown optimistically before server confirms.
64
49
  assistant_name: Name to display for assistant (agent name or model).
65
- is_streaming: Whether currently streaming a response.
50
+ is_generating: Whether currently waiting for the final response.
66
51
  thinking_collapsed: Whether thinking blocks should be collapsed.
67
52
 
68
53
  Returns:
@@ -89,11 +74,10 @@ class MarkdownRenderer:
89
74
  # For assistant messages, check for thinking content
90
75
  thinking_content = extract_thinking_content(msg)
91
76
  if thinking_content:
92
- # Render thinking block (not streaming, use collapsed setting)
77
+ # Render any persisted thinking block using the collapse setting.
93
78
  renderables.append(
94
79
  self._render_thinking_block_renderable(
95
80
  thinking_content,
96
- is_streaming=False,
97
81
  collapsed=thinking_collapsed,
98
82
  )
99
83
  )
@@ -116,66 +100,38 @@ class MarkdownRenderer:
116
100
  renderables.append(Text(pending_user_message))
117
101
  renderables.append(Text(""))
118
102
 
119
- # Show streaming thinking/reasoning block
120
- if streaming_thinking_content:
121
- renderables.append(
122
- self._render_thinking_block_renderable(
123
- streaming_thinking_content, is_streaming, thinking_collapsed
124
- )
125
- )
126
- renderables.append(Text(""))
127
-
128
- # Show streaming response with spinner
129
- if is_streaming or streaming_content:
130
- spinner = self._get_spinner() if is_streaming else ""
131
- if streaming_content:
132
- header = Text()
133
- header.append(f"{assistant_name}:", style=f"bold {assistant_color}")
134
- header.append(f" {spinner}", style="yellow")
135
- renderables.append(header)
136
- # Render streaming content as markdown too
137
- renderables.append(Markdown(streaming_content))
138
- elif not streaming_thinking_content:
139
- # Only show "Thinking..." if we don't have actual thinking content
140
- header = Text()
141
- header.append(f"{assistant_name}:", style=f"bold {assistant_color}")
142
- header.append(f" {spinner}", style="yellow")
143
- renderables.append(header)
144
- renderables.append(Text("Waiting for response...", style="dim"))
103
+ if is_generating:
104
+ header = Text(f"{assistant_name}:", style=f"bold {assistant_color}")
105
+ renderables.append(header)
106
+ renderables.append(Text("Waiting for response...", style="dim"))
145
107
 
146
108
  return Group(*renderables)
147
109
 
148
110
  def _render_thinking_block_renderable(
149
111
  self,
150
112
  content: str,
151
- is_streaming: bool = False,
152
113
  collapsed: bool = False,
153
114
  ) -> Text:
154
115
  """Render a thinking/reasoning block with distinctive styling.
155
116
 
156
117
  Args:
157
118
  content: The thinking content to render.
158
- is_streaming: Whether the thinking is still streaming.
159
119
  collapsed: Whether to show collapsed view.
160
120
 
161
121
  Returns:
162
122
  Rich Text object for the thinking block.
163
123
  """
164
- spinner = self._get_spinner() if is_streaming else ""
165
-
166
124
  if collapsed:
167
125
  # Show collapsed indicator with line count
168
126
  line_count = content.count("\n") + 1
169
127
  result = Text()
170
- result.append(
171
- f"◆ Thinking ({line_count} lines)... {spinner}", style=THINKING_COLOR
172
- )
128
+ result.append(f"◆ Thinking ({line_count} lines)...", style=THINKING_COLOR)
173
129
  result.append(" (expand with /thinking)", style="dim")
174
130
  return result
175
131
 
176
132
  # Full thinking block with border styling
177
133
  lines: list[str] = []
178
- lines.append(f"◆ Thinking {spinner}")
134
+ lines.append("◆ Thinking")
179
135
 
180
136
  # Indent and dim the thinking content
181
137
  for line in content.split("\n"):
@@ -187,9 +143,3 @@ class MarkdownRenderer:
187
143
  result.append(line + "\n", style="dim italic")
188
144
 
189
145
  return result
190
-
191
- def _get_spinner(self) -> str:
192
- """Get the current spinner frame and advance to next."""
193
- frame = SPINNER_FRAMES[self._spinner_frame % len(SPINNER_FRAMES)]
194
- self._spinner_frame += 1
195
- return frame
@@ -25,22 +25,18 @@ class PlainTextRenderer:
25
25
  def render(
26
26
  self,
27
27
  messages: tuple[MessageResponse, ...],
28
- streaming_content: str = "",
29
- streaming_thinking_content: str = "",
30
28
  pending_user_message: str | None = None,
31
29
  assistant_name: str = "Assistant",
32
- is_streaming: bool = False,
30
+ is_generating: bool = False,
33
31
  thinking_collapsed: bool = False,
34
32
  ) -> str:
35
33
  """Render messages to a plain text string.
36
34
 
37
35
  Args:
38
36
  messages: Tuple of message responses to render.
39
- streaming_content: Partial content being streamed (appended to end).
40
- streaming_thinking_content: Partial thinking/reasoning content (ignored in plain).
41
37
  pending_user_message: User message shown optimistically before server confirms.
42
38
  assistant_name: Name to display for assistant (agent name or model).
43
- is_streaming: Whether currently streaming a response.
39
+ is_generating: Whether currently waiting for the final response.
44
40
  thinking_collapsed: Whether thinking blocks are collapsed (ignored in plain).
45
41
 
46
42
  Returns:
@@ -68,12 +64,9 @@ class PlainTextRenderer:
68
64
  lines.append(pending_user_message)
69
65
  lines.append("")
70
66
 
71
- # Show streaming response
72
- if streaming_content or is_streaming:
67
+ # Show in-flight response placeholder
68
+ if is_generating:
73
69
  lines.append(f"{assistant_name}:")
74
- if streaming_content:
75
- lines.append(streaming_content)
76
- else:
77
- lines.append("...")
70
+ lines.append("Waiting for response...")
78
71
 
79
72
  return "\n".join(lines)