velune-cli 0.9.4__tar.gz → 0.9.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 (493) hide show
  1. {velune_cli-0.9.4 → velune_cli-0.9.5}/.gitignore +8 -0
  2. {velune_cli-0.9.4 → velune_cli-0.9.5}/PKG-INFO +76 -65
  3. {velune_cli-0.9.4 → velune_cli-0.9.5}/README.md +74 -64
  4. {velune_cli-0.9.4 → velune_cli-0.9.5}/docs/CHANGELOG.md +90 -37
  5. {velune_cli-0.9.4 → velune_cli-0.9.5}/pyproject.toml +1 -0
  6. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/__init__.py +1 -1
  7. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/app.py +31 -15
  8. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/autocomplete.py +1 -0
  9. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/banner.py +13 -0
  10. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/command_palette.py +8 -1
  11. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/ask.py +51 -12
  12. velune_cli-0.9.5/velune/cli/commands/backup.py +199 -0
  13. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/doctor.py +60 -0
  14. velune_cli-0.9.5/velune/cli/commands/init.py +241 -0
  15. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/models.py +575 -36
  16. velune_cli-0.9.5/velune/cli/commands/onboard.py +67 -0
  17. velune_cli-0.9.5/velune/cli/commands/preflight.py +156 -0
  18. velune_cli-0.9.5/velune/cli/commands/providers.py +1045 -0
  19. velune_cli-0.9.5/velune/cli/commands/recover.py +99 -0
  20. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/run.py +23 -0
  21. velune_cli-0.9.5/velune/cli/commands/session.py +305 -0
  22. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/workspace.py +172 -41
  23. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/design.py +2 -0
  24. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/dashboard.py +165 -4
  25. velune_cli-0.9.5/velune/cli/display/system_snapshot.py +120 -0
  26. velune_cli-0.9.5/velune/cli/fullscreen.py +477 -0
  27. velune_cli-0.9.5/velune/cli/guidance.py +81 -0
  28. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/cognition.py +3 -0
  29. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/council.py +31 -3
  30. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/memory.py +3 -0
  31. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/model.py +3 -0
  32. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/providers.py +3 -0
  33. velune_cli-0.9.5/velune/cli/handlers/recovery.py +202 -0
  34. velune_cli-0.9.5/velune/cli/handlers/resources.py +215 -0
  35. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/session.py +13 -3
  36. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/settings.py +6 -0
  37. velune_cli-0.9.5/velune/cli/handlers/tool_chat.py +334 -0
  38. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/onboarding.py +353 -35
  39. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/registry.py +41 -3
  40. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/repl.py +288 -46
  41. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/sessions.py +155 -4
  42. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/slash_dispatcher.py +270 -11
  43. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/statusbar.py +9 -9
  44. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/stream_renderer.py +36 -1
  45. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/ui.py +60 -0
  46. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/workspaces.py +25 -4
  47. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/budget.py +44 -0
  48. velune_cli-0.9.5/velune/context/window.py +115 -0
  49. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/errors/catalog.py +3 -3
  50. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/trust.py +5 -0
  51. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/__init__.py +2 -1
  52. velune_cli-0.9.5/velune/core/types/inference.py +79 -0
  53. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/model.py +4 -0
  54. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/provider.py +2 -0
  55. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/diff_preview.py +5 -0
  56. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/config.py +33 -0
  57. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/client.py +27 -6
  58. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/registry.py +128 -4
  59. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/server.py +190 -2
  60. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/registry.py +18 -0
  61. velune_cli-0.9.5/velune/models/registry_cache.py +186 -0
  62. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/orchestration/role_assignments.py +12 -1
  63. velune_cli-0.9.5/velune/orchestration/tool_loop.py +450 -0
  64. velune_cli-0.9.5/velune/providers/__init__.py +6 -0
  65. velune_cli-0.9.5/velune/providers/adapters/_toolcalls.py +190 -0
  66. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/anthropic.py +115 -8
  67. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/nvidia.py +59 -55
  68. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/ollama.py +52 -6
  69. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/openai.py +38 -4
  70. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/openai_compat.py +31 -3
  71. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/base.py +8 -0
  72. velune_cli-0.9.5/velune/providers/crypto.py +168 -0
  73. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/__init__.py +3 -0
  74. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/anthropic.py +8 -0
  75. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/classifier.py +1 -0
  76. velune_cli-0.9.5/velune/providers/discovery/docker.py +153 -0
  77. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/gguf.py +2 -0
  78. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/google.py +20 -4
  79. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/lmstudio.py +21 -2
  80. velune_cli-0.9.5/velune/providers/discovery/nvidia_nim.py +174 -0
  81. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/ollama.py +14 -0
  82. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/openai.py +5 -0
  83. velune_cli-0.9.5/velune/providers/discovery/openai_compat.py +185 -0
  84. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/scanner.py +35 -5
  85. velune_cli-0.9.5/velune/providers/keystore.py +422 -0
  86. velune_cli-0.9.5/velune/providers/manager.py +95 -0
  87. velune_cli-0.9.5/velune/recovery/__init__.py +28 -0
  88. velune_cli-0.9.5/velune/recovery/archive.py +546 -0
  89. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/incremental_indexer.py +19 -10
  90. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/parser.py +41 -0
  91. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/schemas.py +4 -0
  92. velune_cli-0.9.5/velune/resources/__init__.py +40 -0
  93. velune_cli-0.9.5/velune/resources/base.py +248 -0
  94. velune_cli-0.9.5/velune/resources/discovery.py +159 -0
  95. velune_cli-0.9.5/velune/resources/docker/__init__.py +1 -0
  96. velune_cli-0.9.5/velune/resources/docker/connector.py +312 -0
  97. velune_cli-0.9.5/velune/resources/manager.py +354 -0
  98. velune_cli-0.9.5/velune/resources/mysql/__init__.py +1 -0
  99. velune_cli-0.9.5/velune/resources/mysql/connector.py +123 -0
  100. velune_cli-0.9.5/velune/resources/postgres/__init__.py +1 -0
  101. velune_cli-0.9.5/velune/resources/postgres/connector.py +163 -0
  102. velune_cli-0.9.5/velune/resources/secrets.py +81 -0
  103. velune_cli-0.9.5/velune/resources/sql_base.py +275 -0
  104. velune_cli-0.9.5/velune/resources/sql_safety.py +133 -0
  105. velune_cli-0.9.5/velune/resources/supabase/__init__.py +1 -0
  106. velune_cli-0.9.5/velune/resources/supabase/connector.py +349 -0
  107. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/usage_tracker.py +22 -10
  108. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/terminal/execute.py +49 -3
  109. velune_cli-0.9.4/velune/cli/commands/init.py +0 -166
  110. velune_cli-0.9.4/velune/cli/commands/preflight.py +0 -95
  111. velune_cli-0.9.4/velune/cli/commands/providers.py +0 -525
  112. velune_cli-0.9.4/velune/cli/commands/session.py +0 -128
  113. velune_cli-0.9.4/velune/cognition/prompts/_premium.example.py +0 -27
  114. velune_cli-0.9.4/velune/context/window.py +0 -63
  115. velune_cli-0.9.4/velune/core/types/inference.py +0 -46
  116. velune_cli-0.9.4/velune/providers/__init__.py +0 -1
  117. velune_cli-0.9.4/velune/providers/discovery/openai_compat.py +0 -104
  118. velune_cli-0.9.4/velune/providers/keystore.py +0 -153
  119. {velune_cli-0.9.4 → velune_cli-0.9.5}/LICENSE +0 -0
  120. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/daemon.go +0 -0
  121. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/daemon_test.go +0 -0
  122. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/main.go +0 -0
  123. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/main_test.go +0 -0
  124. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/process_unix.go +0 -0
  125. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/process_windows.go +0 -0
  126. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/update.go +0 -0
  127. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/go/cmd/velune/update_test.go +0 -0
  128. {velune_cli-0.9.4 → velune_cli-0.9.5}/ext/rust/velune-native/pyproject.toml +0 -0
  129. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/__main__.py +0 -0
  130. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/_compat.py +0 -0
  131. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/analysis/__init__.py +0 -0
  132. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/analysis/linter.py +0 -0
  133. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/analysis/refactor.py +0 -0
  134. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/analysis/symbol_search.py +0 -0
  135. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/analysis/type_inferrer.py +0 -0
  136. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/__init__.py +0 -0
  137. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/__init__.py +0 -0
  138. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/base.py +0 -0
  139. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/chat.py +0 -0
  140. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/config.py +0 -0
  141. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/context.py +0 -0
  142. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/daemon.py +0 -0
  143. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/file_commands.py +0 -0
  144. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/mcp.py +0 -0
  145. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/memory.py +0 -0
  146. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/retrieval.py +0 -0
  147. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/setup.py +0 -0
  148. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/trace.py +0 -0
  149. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/trust.py +0 -0
  150. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/commands/usage.py +0 -0
  151. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/constants.py +0 -0
  152. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/context.py +0 -0
  153. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/councilmodel_ui.py +0 -0
  154. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/dir_browser.py +0 -0
  155. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/council_view.py +0 -0
  156. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/memory_view.py +0 -0
  157. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/panels.py +0 -0
  158. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/pipeline.py +0 -0
  159. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/progress.py +0 -0
  160. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/display/themes.py +0 -0
  161. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/__init__.py +0 -0
  162. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/code_intel.py +0 -0
  163. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/councilmodel.py +0 -0
  164. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/git.py +0 -0
  165. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/mcp.py +0 -0
  166. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/mode.py +0 -0
  167. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/plugins.py +0 -0
  168. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/session_mgmt.py +0 -0
  169. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/handlers/workspace.py +0 -0
  170. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/interrupts.py +0 -0
  171. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/main.py +0 -0
  172. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/model_prefs.py +0 -0
  173. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/model_selector.py +0 -0
  174. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/modes.py +0 -0
  175. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/picker.py +0 -0
  176. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/provider_ui.py +0 -0
  177. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/pull_ui.py +0 -0
  178. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/rendering/__init__.py +0 -0
  179. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/rendering/error_panel.py +0 -0
  180. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/rendering/markdown.py +0 -0
  181. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/session_manager.py +0 -0
  182. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/slash_commands.py +0 -0
  183. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/theme.py +0 -0
  184. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/ui_components.py +0 -0
  185. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cli/validators.py +0 -0
  186. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/__init__.py +0 -0
  187. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/agents/__init__.py +0 -0
  188. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/agents/coder.py +0 -0
  189. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/agents/planner.py +0 -0
  190. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/agents/reviewer.py +0 -0
  191. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/arbitrator.py +0 -0
  192. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/architecture.py +0 -0
  193. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/budget.py +0 -0
  194. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/consensus.py +0 -0
  195. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/__init__.py +0 -0
  196. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/base.py +0 -0
  197. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/challenger.py +0 -0
  198. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/coder.py +0 -0
  199. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/critic_agent.py +0 -0
  200. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/critic_configs.py +0 -0
  201. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/critics.py +0 -0
  202. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/debate.py +0 -0
  203. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/factory.py +0 -0
  204. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/messages.py +0 -0
  205. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/planner.py +0 -0
  206. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/reviewer.py +0 -0
  207. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/sampling.py +0 -0
  208. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/scheduler.py +0 -0
  209. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/synthesizer.py +0 -0
  210. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council/tiers.py +0 -0
  211. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council_orchestrator.py +0 -0
  212. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/council_runner.py +0 -0
  213. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/firewall.py +0 -0
  214. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/intent.py +0 -0
  215. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/module.py +0 -0
  216. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/orchestrator.py +0 -0
  217. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/personality.py +0 -0
  218. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/prompts/__init__.py +0 -0
  219. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/prompts/_baseline.py +0 -0
  220. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/state.py +0 -0
  221. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/style_resolver.py +0 -0
  222. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/subsystems.py +0 -0
  223. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/cognition/verification.py +0 -0
  224. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/__init__.py +0 -0
  225. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/assembler.py +0 -0
  226. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/cache/__init__.py +0 -0
  227. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/cache/fingerprint.py +0 -0
  228. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/cache/manager.py +0 -0
  229. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/cache/metrics.py +0 -0
  230. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/cache/providers.py +0 -0
  231. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/cache/state.py +0 -0
  232. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/extractive.py +0 -0
  233. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/mentions.py +0 -0
  234. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/prompt_adaptation.py +0 -0
  235. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/sections.py +0 -0
  236. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/token_counter.py +0 -0
  237. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/context/utilization.py +0 -0
  238. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/__init__.py +0 -0
  239. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/background.py +0 -0
  240. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/config/__init__.py +0 -0
  241. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/errors/__init__.py +0 -0
  242. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/errors/execution.py +0 -0
  243. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/errors/memory.py +0 -0
  244. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/errors/orchestration.py +0 -0
  245. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/errors/provider.py +0 -0
  246. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/event_loop.py +0 -0
  247. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/logging.py +0 -0
  248. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/loop_detector.py +0 -0
  249. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/paths.py +0 -0
  250. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/redaction.py +0 -0
  251. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/retry.py +0 -0
  252. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/runtime.py +0 -0
  253. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/startup_profiler.py +0 -0
  254. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/task_registry.py +0 -0
  255. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/trace.py +0 -0
  256. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/agent.py +0 -0
  257. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/context.py +0 -0
  258. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/memory.py +0 -0
  259. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/repository.py +0 -0
  260. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/task.py +0 -0
  261. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/core/types/workspace.py +0 -0
  262. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/daemon/client.py +0 -0
  263. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/daemon/server.py +0 -0
  264. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/daemon/transport.py +0 -0
  265. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/events.py +0 -0
  266. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/__init__.py +0 -0
  267. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/benchmarker.py +0 -0
  268. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/cancellation.py +0 -0
  269. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/checkpointer.py +0 -0
  270. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/command_spec.py +0 -0
  271. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/docker_sandbox.py +0 -0
  272. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/__init__.py +0 -0
  273. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/applier.py +0 -0
  274. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/base.py +0 -0
  275. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/registry.py +0 -0
  276. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/search_replace.py +0 -0
  277. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/udiff.py +0 -0
  278. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/edit_formats/whole_file.py +0 -0
  279. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/executor.py +0 -0
  280. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/hunk_review.py +0 -0
  281. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/module.py +0 -0
  282. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/multi_diff.py +0 -0
  283. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/path_guard.py +0 -0
  284. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/planner.py +0 -0
  285. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/rollback.py +0 -0
  286. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/sandbox.py +0 -0
  287. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/subsystems.py +0 -0
  288. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/execution/validator.py +0 -0
  289. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hardware/__init__.py +0 -0
  290. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hardware/detector.py +0 -0
  291. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hardware/profiles.py +0 -0
  292. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hardware/quick.py +0 -0
  293. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hooks/__init__.py +0 -0
  294. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hooks/config.py +0 -0
  295. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hooks/dispatcher.py +0 -0
  296. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hooks/executor.py +0 -0
  297. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hooks/matcher.py +0 -0
  298. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/hooks/types.py +0 -0
  299. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/integrations/__init__.py +0 -0
  300. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/integrations/base.py +0 -0
  301. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/integrations/github.py +0 -0
  302. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/integrations/gitlab.py +0 -0
  303. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/intelligence/__init__.py +0 -0
  304. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/intelligence/engine.py +0 -0
  305. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/intelligence/events.py +0 -0
  306. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/intelligence/graph_patcher.py +0 -0
  307. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/intelligence/module.py +0 -0
  308. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/__init__.py +0 -0
  309. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/bootstrap.py +0 -0
  310. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/entrypoint.py +0 -0
  311. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/health.py +0 -0
  312. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/lifecycle.py +0 -0
  313. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/module.py +0 -0
  314. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/modules.py +0 -0
  315. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/registry.py +0 -0
  316. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/schemas.py +0 -0
  317. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/kernel/subsystems.py +0 -0
  318. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/knowledge/__init__.py +0 -0
  319. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/knowledge/builder.py +0 -0
  320. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/knowledge/graph.py +0 -0
  321. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/knowledge/module.py +0 -0
  322. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/knowledge/query.py +0 -0
  323. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/knowledge/schemas.py +0 -0
  324. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/main.py +0 -0
  325. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/__init__.py +0 -0
  326. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/config.py +0 -0
  327. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/security.py +0 -0
  328. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/__init__.py +0 -0
  329. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/base.py +0 -0
  330. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/factory.py +0 -0
  331. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/http.py +0 -0
  332. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/sse.py +0 -0
  333. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/stdio.py +0 -0
  334. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/mcp/transports/websocket.py +0 -0
  335. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/__init__.py +0 -0
  336. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/compaction.py +0 -0
  337. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/embedding_pipeline.py +0 -0
  338. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/lifecycle.py +0 -0
  339. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/module.py +0 -0
  340. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/prioritizer.py +0 -0
  341. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/storage/episodic_schema.sql +0 -0
  342. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/storage/lancedb_store.py +0 -0
  343. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/storage/sqlite_manager.py +0 -0
  344. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/storage/sqlite_pool.py +0 -0
  345. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/subsystems.py +0 -0
  346. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/three_brain.py +0 -0
  347. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/tiers/episodic.py +0 -0
  348. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/tiers/graph.py +0 -0
  349. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/tiers/lineage.py +0 -0
  350. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/tiers/semantic.py +0 -0
  351. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/tiers/working.py +0 -0
  352. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/memory/vitality.py +0 -0
  353. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/__init__.py +0 -0
  354. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/family.py +0 -0
  355. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/module.py +0 -0
  356. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/probes.py +0 -0
  357. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/profile_cache.py +0 -0
  358. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/profiler.py +0 -0
  359. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/scorer.py +0 -0
  360. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/specializations.py +14 -14
  361. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/models/subsystems.py +0 -0
  362. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/__init__.py +0 -0
  363. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/context_report.py +0 -0
  364. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/format.py +0 -0
  365. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/module.py +0 -0
  366. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/retrieval_report.py +0 -0
  367. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/subsystems.py +0 -0
  368. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/trace_log.py +0 -0
  369. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/trace_sink.py +0 -0
  370. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/observability/workspace_graph.py +0 -0
  371. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/orchestration/__init__.py +0 -0
  372. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/orchestration/engine.py +0 -0
  373. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/orchestration/module.py +0 -0
  374. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/orchestration/schemas.py +0 -0
  375. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/orchestration/subsystems.py +0 -0
  376. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/__init__.py +0 -0
  377. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/declarative/__init__.py +0 -0
  378. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/declarative/agent.py +0 -0
  379. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/declarative/command.py +0 -0
  380. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/declarative/manifest.py +0 -0
  381. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/declarative/scanner.py +0 -0
  382. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/declarative/skill.py +0 -0
  383. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/hooks.py +0 -0
  384. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/loader.py +0 -0
  385. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/manager.py +0 -0
  386. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/registry.py +0 -0
  387. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/runner.py +0 -0
  388. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/sandbox.py +0 -0
  389. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/plugins/schemas.py +0 -0
  390. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/proactive/__init__.py +0 -0
  391. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/proactive/alerts.py +0 -0
  392. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/proactive/watcher.py +0 -0
  393. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/cohere.py +0 -0
  394. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/deepseek.py +0 -0
  395. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/fireworks.py +0 -0
  396. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/google.py +0 -0
  397. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/groq.py +0 -0
  398. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/huggingface.py +0 -0
  399. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/llamacpp.py +0 -0
  400. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/lmstudio.py +0 -0
  401. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/mistral.py +0 -0
  402. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/openrouter.py +0 -0
  403. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/together.py +0 -0
  404. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/adapters/xai.py +0 -0
  405. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/benchmarker.py +0 -0
  406. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/benchmarks.py +0 -0
  407. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/fireworks.py +0 -0
  408. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/gpu.py +0 -0
  409. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/groq.py +0 -0
  410. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/huggingface.py +0 -0
  411. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/openrouter.py +0 -0
  412. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/together.py +0 -0
  413. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/discovery/xai.py +0 -0
  414. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/health.py +0 -0
  415. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/health_monitor.py +0 -0
  416. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/local_paths.py +0 -0
  417. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/local_resolver.py +0 -0
  418. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/module.py +0 -0
  419. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/ollama_locations.py +0 -0
  420. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/ollama_manager.py +0 -0
  421. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/ollama_store.py +0 -0
  422. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/registry.py +0 -0
  423. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/router.py +0 -0
  424. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/subsystems.py +0 -0
  425. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/task_classifier.py +0 -0
  426. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/providers/validation.py +0 -0
  427. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/py.typed +0 -0
  428. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/__init__.py +0 -0
  429. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/_native.py +0 -0
  430. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/analyzer.py +0 -0
  431. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/api_mapper.py +0 -0
  432. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/architecture_detector.py +0 -0
  433. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/ast_parser.py +0 -0
  434. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/blast_radius.py +0 -0
  435. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/boundary_classifier.py +0 -0
  436. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/cognition.py +0 -0
  437. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/commit_message.py +0 -0
  438. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/config_intelligence.py +0 -0
  439. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/context_builder.py +0 -0
  440. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/git_context.py +0 -0
  441. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/grapher.py +0 -0
  442. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/import_graph.py +0 -0
  443. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/index_state.py +0 -0
  444. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/indexer.py +0 -0
  445. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/module.py +0 -0
  446. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/project_type.py +0 -0
  447. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/rename_journal.py +0 -0
  448. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/scanner.py +0 -0
  449. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/subsystems.py +0 -0
  450. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/symbol_registry.py +0 -0
  451. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/technology_detector.py +0 -0
  452. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/tracker.py +0 -0
  453. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/repository/watcher.py +0 -0
  454. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/__init__.py +0 -0
  455. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/cache.py +0 -0
  456. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/fast_path.py +0 -0
  457. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/graph.py +0 -0
  458. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/hybrid.py +0 -0
  459. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/keyword.py +0 -0
  460. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/module.py +0 -0
  461. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/pipeline.py +0 -0
  462. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/reranker.py +0 -0
  463. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/schemas.py +0 -0
  464. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/slow_path.py +0 -0
  465. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/subsystems.py +0 -0
  466. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/retrieval/vector.py +0 -0
  467. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/__init__.py +0 -0
  468. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/cognition.py +0 -0
  469. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/cost_estimator.py +0 -0
  470. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/debug.py +0 -0
  471. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/doctor.py +0 -0
  472. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/logging.py +0 -0
  473. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/spans.py +0 -0
  474. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/telemetry/token_tracker.py +0 -0
  475. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/__init__.py +0 -0
  476. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/base/registry.py +0 -0
  477. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/base/tool.py +0 -0
  478. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/code/navigate.py +0 -0
  479. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/code/search.py +0 -0
  480. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/filesystem/ignore.py +0 -0
  481. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/filesystem/read.py +0 -0
  482. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/filesystem/search.py +0 -0
  483. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/filesystem/write.py +0 -0
  484. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/git/history.py +0 -0
  485. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/git/operations.py +0 -0
  486. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/git/providers.py +0 -0
  487. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/git/state.py +0 -0
  488. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/module.py +0 -0
  489. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/safety.py +0 -0
  490. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/subsystems.py +0 -0
  491. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/terminal/history.py +0 -0
  492. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/web/fetch.py +0 -0
  493. {velune_cli-0.9.4 → velune_cli-0.9.5}/velune/tools/web/validator.py +0 -0
@@ -122,3 +122,11 @@ ext/rust/**/target/
122
122
  node_modules/
123
123
  package-lock.json
124
124
  yarn.lock
125
+
126
+ # Databases & Local State
127
+ *.db
128
+ *.sqlite
129
+ *.sqlite3
130
+ *.bak
131
+ credentials.json
132
+ master.key
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: velune-cli
3
- Version: 0.9.4
3
+ Version: 0.9.5
4
4
  Summary: Local-first multi-model AI developer CLI — council-based agents, persistent memory, repository cognition
5
5
  Project-URL: Homepage, https://github.com/Surya-Hariharan/Velune-CLI
6
6
  Project-URL: Repository, https://github.com/Surya-Hariharan/Velune-CLI
@@ -227,6 +227,7 @@ Classifier: Typing :: Typed
227
227
  Requires-Python: >=3.10
228
228
  Requires-Dist: aiosqlite>=0.19.0
229
229
  Requires-Dist: anthropic>=0.18.0
230
+ Requires-Dist: cryptography>=41.0.0
230
231
  Requires-Dist: httpx>=0.26.0
231
232
  Requires-Dist: keyring>=24.0.0
232
233
  Requires-Dist: mcp>=1.0.0
@@ -292,16 +293,16 @@ Requires-Dist: opentelemetry-exporter-otlp>=1.22.0; extra == 'telemetry'
292
293
  Requires-Dist: opentelemetry-sdk>=1.22.0; extra == 'telemetry'
293
294
  Description-Content-Type: text/markdown
294
295
 
295
- # Velune
296
+ # Velune CLI
296
297
 
297
- > Local-first multi-model AI developer CLI. Council-based agents,
298
- > persistent memory, repository cognition.
299
- > No cloud required. No quota. No lock-in.
298
+ *Local-first multi-model AI developer CLI. Council-based agents, persistent memory, repository cognition.*
300
299
 
301
- [![PyPI](https://img.shields.io/pypi/v/velune-cli)](https://pypi.org/project/velune-cli/)
302
- [![Python](https://img.shields.io/badge/python-3.10%2B-blue)](https://python.org)
303
- [![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-green)](LICENSE)
304
- [![CI](https://img.shields.io/github/actions/workflow/status/Surya-Hariharan/Velune-CLI/ci.yml?branch=main&label=CI)](https://github.com/Surya-Hariharan/Velune-CLI/actions/workflows/ci.yml)
300
+ **No cloud required. No quota. No lock-in.**
301
+
302
+ [![PyPI - Version](https://img.shields.io/pypi/v/velune-cli?style=for-the-badge&color=00ff00)](https://pypi.org/project/velune-cli/)
303
+ [![Python](https://img.shields.io/badge/Python-3.10%2B-blue?style=for-the-badge&logo=python&logoColor=white)](https://python.org)
304
+ [![License](https://img.shields.io/badge/License-Apache_2.0-green.svg?style=for-the-badge)](LICENSE)
305
+ [![CI](https://img.shields.io/github/actions/workflow/status/Surya-Hariharan/Velune-CLI/ci.yml?branch=main&label=CI&style=for-the-badge&logo=github)](https://github.com/Surya-Hariharan/Velune-CLI/actions/workflows/ci.yml)
305
306
 
306
307
  ---
307
308
 
@@ -391,37 +392,43 @@ Python to PATH”** checked (or using `pipx`) resolves it permanently.
391
392
 
392
393
  ## Hardware requirements
393
394
 
394
- | RAM | GPU | Can run local LLM? | Recommended setup |
395
- |--------|------------------|--------------------|------------------------------|
396
- | < 8 GB | any | No | Use Groq free tier |
397
- | 8 GB | integrated | 3B models only | Groq + phi3-mini local |
398
- | 16 GB | integrated | Slow (CPU only) | Groq + 3B local |
399
- | 16 GB | 6–8 GB VRAM | 7B comfortable | qwen2.5-coder:7b |
400
- | 32 GB | 12+ GB VRAM | 13B comfortable | Full council local |
401
- | 36 GB | Apple Silicon | 27B comfortable | Full council, Metal accel |
402
- | 64 GB | 24 GB VRAM | 70B capable | Max power mode |
395
+ | RAM | GPU | Can run local LLM? | Recommended setup |
396
+ | :---: | :--- | :--- | :--- |
397
+ | **< 8 GB** | Any | No | Use Groq free tier |
398
+ | **8 GB** | Integrated | ⚠️ 3B models only | Groq + phi3-mini local |
399
+ | **16 GB** | Integrated | ⚠️ Slow (CPU only) | Groq + 3B local |
400
+ | **16 GB** | 6–8 GB VRAM | 7B comfortable | `qwen2.5-coder:7b` |
401
+ | **32 GB** | 12+ GB VRAM | 13B comfortable | Full council local |
402
+ | **36 GB** | Apple Silicon | 27B comfortable | Full council, Metal accel |
403
+ | **64 GB** | 24 GB VRAM | 70B capable | Max power mode |
403
404
 
404
- Velune detects your hardware on startup and prints tier, GPU, and recommendations.
405
- On underpowered machines it routes tasks to cloud providers automatically.
405
+ > **Note:** Velune detects your hardware on startup and prints tier, GPU, and recommendations. On underpowered machines, it routes tasks to cloud providers automatically.
406
406
 
407
407
  ---
408
408
 
409
409
  ## Startup flow
410
410
 
411
- Velune starts instantly and does no work until you ask for it. Repository
412
- cognition (indexing) is **explicit and on-demand** — it never runs automatically
413
- on launch.
414
-
415
- ```text
416
- velune
417
-
418
- CLI opens instantly
419
-
420
- Connect a model → /model discover · /model connect <id> · /model use <id>
421
-
422
- Open a project → /project open <path> · /project status
423
-
424
- Run cognition → /cognition quick · /cognition standard · /cognition deep
411
+ Velune starts instantly and does no work until you ask for it. Repository cognition (indexing) is **explicit and on-demand** — it never runs automatically on launch.
412
+
413
+ ```mermaid
414
+ flowchart TD
415
+ Start([velune]) --> CLI[CLI opens instantly]
416
+ CLI --> Connect[Connect a model]
417
+ Connect -.-> C1("`/model discover`")
418
+ Connect -.-> C2("`/model connect <id>`")
419
+ Connect -.-> C3("`/model use <id>`")
420
+ Connect --> Open[Open a project]
421
+ Open -.-> O1("`/project open <path>`")
422
+ Open -.-> O2("`/project status`")
423
+ Open --> Cog[Run cognition]
424
+ Cog -.-> R1("`/cognition quick`")
425
+ Cog -.-> R2("`/cognition standard`")
426
+ Cog -.-> R3("`/cognition deep`")
427
+
428
+ classDef action fill:#0a3d62,stroke:#3c6382,stroke-width:2px,color:#fff;
429
+ classDef cmd fill:#079992,stroke:#38ada9,stroke-width:1px,color:#fff;
430
+ class Start,CLI,Connect,Open,Cog action;
431
+ class C1,C2,C3,O1,O2,R1,R2,R3 cmd;
425
432
  ```
426
433
 
427
434
  ---
@@ -440,25 +447,25 @@ Velune features a modern, clean terminal interface designed for productivity:
440
447
 
441
448
  ## Providers
442
449
 
443
- | Provider | Type | Cost | Models | Setup |
444
- |--------------|-------|---------------|-----------------------------------------------|------------------------------|
445
- | Ollama | Local | Free | Any pulled model | Install Ollama, pull a model |
446
- | LM Studio | Local | Free | Any GGUF / MLX model | Launch LM Studio server |
447
- | Groq | Cloud | Free tier | Llama 3.3 70B, Mixtral, Gemma2 | `velune setup` → enter key |
448
- | OpenRouter | Cloud | Pay-per-token | 100+ models | `velune setup` → enter key |
449
- | OpenAI | Cloud | Pay-per-token | GPT-4o, GPT-4o Mini | `velune setup` → enter key |
450
- | Anthropic | Cloud | Pay-per-token | Claude Opus, Sonnet, Haiku | `velune setup` → enter key |
451
- | xAI (Grok) | Cloud | Pay-per-token | Grok 2, Grok 2 Mini | `velune setup` → enter key |
452
- | Google | Cloud | Free quota | Gemini 2.0 Flash, 1.5 Pro/Flash | `velune setup` → enter key |
453
- | Together AI | Cloud | Pay-per-token | Llama 3.3 70B, Qwen 2.5 Coder, DeepSeek R1 | `velune setup` → enter key |
454
- | Fireworks AI | Cloud | Pay-per-token | DeepSeek R1, Qwen 2.5 Coder, Mixtral 8x22B | `velune setup` → enter key |
455
- | Mistral | Cloud | Pay-per-token | Mistral Large, Codestral, Mixtral | `velune setup` → enter key |
456
- | DeepSeek | Cloud | Pay-per-token | DeepSeek R1, DeepSeek Coder | `velune setup` → enter key |
457
- | Cohere | Cloud | Pay-per-token | Command R+, Command R | `velune setup` → enter key |
458
- | NVIDIA NIM | Cloud | Pay-per-token | Llama, Mistral, and other NIM models | `velune setup` → enter key |
459
- | HuggingFace | Cloud | Free/paid | Open models via Inference API | `velune setup` → enter key |
460
-
461
- Keys are stored in your OS keyring — never in files, never in git.
450
+ | Provider | Type | Cost | Models | Setup |
451
+ | :--- | :---: | :--- | :--- | :--- |
452
+ | **Ollama** | 🏠 Local | Free | Any pulled model | Install Ollama, pull a model |
453
+ | **LM Studio** | 🏠 Local | Free | Any GGUF / MLX model | Launch LM Studio server |
454
+ | **Groq** | ☁️ Cloud | Free tier | Llama 3.3 70B, Mixtral, Gemma2 | `velune setup` → enter key |
455
+ | **OpenRouter** | ☁️ Cloud | Pay-per-token | 100+ models | `velune setup` → enter key |
456
+ | **OpenAI** | ☁️ Cloud | Pay-per-token | GPT-4o, GPT-4o Mini | `velune setup` → enter key |
457
+ | **Anthropic** | ☁️ Cloud | Pay-per-token | Claude Opus, Sonnet, Haiku | `velune setup` → enter key |
458
+ | **xAI (Grok)** | ☁️ Cloud | Pay-per-token | Grok 2, Grok 2 Mini | `velune setup` → enter key |
459
+ | **Google** | ☁️ Cloud | Free quota | Gemini 2.0 Flash, 1.5 Pro/Flash | `velune setup` → enter key |
460
+ | **Together AI** | ☁️ Cloud | Pay-per-token | Llama 3.3 70B, Qwen 2.5, DeepSeek R1 | `velune setup` → enter key |
461
+ | **Fireworks AI** | ☁️ Cloud | Pay-per-token | DeepSeek R1, Qwen 2.5, Mixtral 8x22B | `velune setup` → enter key |
462
+ | **Mistral** | ☁️ Cloud | Pay-per-token | Mistral Large, Codestral, Mixtral | `velune setup` → enter key |
463
+ | **DeepSeek** | ☁️ Cloud | Pay-per-token | DeepSeek R1, DeepSeek Coder | `velune setup` → enter key |
464
+ | **Cohere** | ☁️ Cloud | Pay-per-token | Command R+, Command R | `velune setup` → enter key |
465
+ | **NVIDIA NIM** | ☁️ Cloud | Pay-per-token | Llama, Mistral, and other NIM models | `velune setup` → enter key |
466
+ | **HuggingFace** | ☁️ Cloud | Free/paid | Open models via Inference API | `velune setup` → enter key |
467
+
468
+ > **Tip:** Keys are stored securely in your OS keyring — never in plain text files, never in git.
462
469
 
463
470
  ---
464
471
 
@@ -472,15 +479,19 @@ velune # Start the interactive REPL session
472
479
  velune chat # Same as above (explicit form)
473
480
  velune run "<task>" # Run a task non-interactively and exit
474
481
  velune ask "<question>" # Ask a one-shot question and exit
475
- velune init # Initialize Velune in a project directory
482
+ velune init # Initialize Velune in the current workspace
483
+ velune onboard # Run (or resume) the first-time setup wizard
476
484
 
477
485
  # Workspace & sessions
478
- velune workspace init # Index the current workspace
479
- velune workspace status # Show index freshness and file counts
480
- velune workspace graph # Render the workspace dependency graph
481
- velune workspace list # List all known workspaces
486
+ velune project init # Index the current workspace (Tree-sitter AST)
487
+ velune project status # Show index freshness and file counts
488
+ velune project graph # Render the module-dependency graph
489
+ velune project tree # Render the workspace directory tree
490
+ velune project list # List all registered workspaces
491
+ velune project explain # Generate a plain-English architecture summary
482
492
  velune session list # List saved chat sessions
483
493
  velune session delete <id> # Delete a saved session
494
+ velune trust # Trust, list, or revoke workspace directories
484
495
 
485
496
  # Setup & models
486
497
  velune setup # Configure API keys (stored in OS keyring)
@@ -656,13 +667,13 @@ to reconstruct intent without you explaining it again.
656
667
 
657
668
  ## Session modes
658
669
 
659
- | Mode | Command | Council tier | Model | Context cap |
660
- |---------|------------|--------------|----------|--------------|
661
- | Normal | `/normal` | auto | current | 16 k tokens |
662
- | Optimus | `/optimus` | instant | smallest | 4 k tokens |
663
- | Godly | `/godly` | full | largest | 128 k tokens |
670
+ | Mode | Command | Council tier | Model | Context cap |
671
+ | :--- | :--- | :---: | :--- | :--- |
672
+ | **Normal** | `/normal` | Auto | Current | 16k tokens |
673
+ | **Optimus** | `/optimus` | Instant | Smallest | 4k tokens |
674
+ | **Godly** | `/godly` | Full | Largest | 128k tokens |
664
675
 
665
- Switch modes at any time mid-session. The prompt badge updates immediately.
676
+ > **Tip:** Switch modes at any time mid-session. The prompt badge updates immediately.
666
677
 
667
678
  ---
668
679
 
@@ -713,7 +724,7 @@ lexical search and chat keep working).
713
724
  | `[rag]` | `lancedb`, `pyarrow`, `qdrant-client` | Semantic memory + vector retrieval (large compiled wheels) |
714
725
  | `[parsing]` | `tree-sitter` + grammars | Tree-sitter source parsing for deep repository cognition |
715
726
  | `[telemetry]` | `opentelemetry-*` | Export spans/metrics to an OTLP collector |
716
- | `[git]` | `gitpython` | Git provider tools (push / PR / issue) and richer git context |
727
+ | `[git]` | *(no extra deps)* | Retained for compatibility — git tools (push / PR / issue) now use native `git` subprocess calls, so nothing extra installs |
717
728
  | `[gguf]` | `gguf` | GGUF file metadata reading — safe, no transitive risk |
718
729
  | `[docker]` | `docker` | Docker sandbox for isolated code execution |
719
730
  | `[all]` | everything above | Full-featured install |
@@ -1,13 +1,13 @@
1
- # Velune
1
+ # Velune CLI
2
2
 
3
- > Local-first multi-model AI developer CLI. Council-based agents,
4
- > persistent memory, repository cognition.
5
- > No cloud required. No quota. No lock-in.
3
+ *Local-first multi-model AI developer CLI. Council-based agents, persistent memory, repository cognition.*
6
4
 
7
- [![PyPI](https://img.shields.io/pypi/v/velune-cli)](https://pypi.org/project/velune-cli/)
8
- [![Python](https://img.shields.io/badge/python-3.10%2B-blue)](https://python.org)
9
- [![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-green)](LICENSE)
10
- [![CI](https://img.shields.io/github/actions/workflow/status/Surya-Hariharan/Velune-CLI/ci.yml?branch=main&label=CI)](https://github.com/Surya-Hariharan/Velune-CLI/actions/workflows/ci.yml)
5
+ **No cloud required. No quota. No lock-in.**
6
+
7
+ [![PyPI - Version](https://img.shields.io/pypi/v/velune-cli?style=for-the-badge&color=00ff00)](https://pypi.org/project/velune-cli/)
8
+ [![Python](https://img.shields.io/badge/Python-3.10%2B-blue?style=for-the-badge&logo=python&logoColor=white)](https://python.org)
9
+ [![License](https://img.shields.io/badge/License-Apache_2.0-green.svg?style=for-the-badge)](LICENSE)
10
+ [![CI](https://img.shields.io/github/actions/workflow/status/Surya-Hariharan/Velune-CLI/ci.yml?branch=main&label=CI&style=for-the-badge&logo=github)](https://github.com/Surya-Hariharan/Velune-CLI/actions/workflows/ci.yml)
11
11
 
12
12
  ---
13
13
 
@@ -97,37 +97,43 @@ Python to PATH”** checked (or using `pipx`) resolves it permanently.
97
97
 
98
98
  ## Hardware requirements
99
99
 
100
- | RAM | GPU | Can run local LLM? | Recommended setup |
101
- |--------|------------------|--------------------|------------------------------|
102
- | < 8 GB | any | No | Use Groq free tier |
103
- | 8 GB | integrated | 3B models only | Groq + phi3-mini local |
104
- | 16 GB | integrated | Slow (CPU only) | Groq + 3B local |
105
- | 16 GB | 6–8 GB VRAM | 7B comfortable | qwen2.5-coder:7b |
106
- | 32 GB | 12+ GB VRAM | 13B comfortable | Full council local |
107
- | 36 GB | Apple Silicon | 27B comfortable | Full council, Metal accel |
108
- | 64 GB | 24 GB VRAM | 70B capable | Max power mode |
100
+ | RAM | GPU | Can run local LLM? | Recommended setup |
101
+ | :---: | :--- | :--- | :--- |
102
+ | **< 8 GB** | Any | No | Use Groq free tier |
103
+ | **8 GB** | Integrated | ⚠️ 3B models only | Groq + phi3-mini local |
104
+ | **16 GB** | Integrated | ⚠️ Slow (CPU only) | Groq + 3B local |
105
+ | **16 GB** | 6–8 GB VRAM | 7B comfortable | `qwen2.5-coder:7b` |
106
+ | **32 GB** | 12+ GB VRAM | 13B comfortable | Full council local |
107
+ | **36 GB** | Apple Silicon | 27B comfortable | Full council, Metal accel |
108
+ | **64 GB** | 24 GB VRAM | 70B capable | Max power mode |
109
109
 
110
- Velune detects your hardware on startup and prints tier, GPU, and recommendations.
111
- On underpowered machines it routes tasks to cloud providers automatically.
110
+ > **Note:** Velune detects your hardware on startup and prints tier, GPU, and recommendations. On underpowered machines, it routes tasks to cloud providers automatically.
112
111
 
113
112
  ---
114
113
 
115
114
  ## Startup flow
116
115
 
117
- Velune starts instantly and does no work until you ask for it. Repository
118
- cognition (indexing) is **explicit and on-demand** — it never runs automatically
119
- on launch.
120
-
121
- ```text
122
- velune
123
-
124
- CLI opens instantly
125
-
126
- Connect a model → /model discover · /model connect <id> · /model use <id>
127
-
128
- Open a project → /project open <path> · /project status
129
-
130
- Run cognition → /cognition quick · /cognition standard · /cognition deep
116
+ Velune starts instantly and does no work until you ask for it. Repository cognition (indexing) is **explicit and on-demand** — it never runs automatically on launch.
117
+
118
+ ```mermaid
119
+ flowchart TD
120
+ Start([velune]) --> CLI[CLI opens instantly]
121
+ CLI --> Connect[Connect a model]
122
+ Connect -.-> C1("`/model discover`")
123
+ Connect -.-> C2("`/model connect <id>`")
124
+ Connect -.-> C3("`/model use <id>`")
125
+ Connect --> Open[Open a project]
126
+ Open -.-> O1("`/project open <path>`")
127
+ Open -.-> O2("`/project status`")
128
+ Open --> Cog[Run cognition]
129
+ Cog -.-> R1("`/cognition quick`")
130
+ Cog -.-> R2("`/cognition standard`")
131
+ Cog -.-> R3("`/cognition deep`")
132
+
133
+ classDef action fill:#0a3d62,stroke:#3c6382,stroke-width:2px,color:#fff;
134
+ classDef cmd fill:#079992,stroke:#38ada9,stroke-width:1px,color:#fff;
135
+ class Start,CLI,Connect,Open,Cog action;
136
+ class C1,C2,C3,O1,O2,R1,R2,R3 cmd;
131
137
  ```
132
138
 
133
139
  ---
@@ -146,25 +152,25 @@ Velune features a modern, clean terminal interface designed for productivity:
146
152
 
147
153
  ## Providers
148
154
 
149
- | Provider | Type | Cost | Models | Setup |
150
- |--------------|-------|---------------|-----------------------------------------------|------------------------------|
151
- | Ollama | Local | Free | Any pulled model | Install Ollama, pull a model |
152
- | LM Studio | Local | Free | Any GGUF / MLX model | Launch LM Studio server |
153
- | Groq | Cloud | Free tier | Llama 3.3 70B, Mixtral, Gemma2 | `velune setup` → enter key |
154
- | OpenRouter | Cloud | Pay-per-token | 100+ models | `velune setup` → enter key |
155
- | OpenAI | Cloud | Pay-per-token | GPT-4o, GPT-4o Mini | `velune setup` → enter key |
156
- | Anthropic | Cloud | Pay-per-token | Claude Opus, Sonnet, Haiku | `velune setup` → enter key |
157
- | xAI (Grok) | Cloud | Pay-per-token | Grok 2, Grok 2 Mini | `velune setup` → enter key |
158
- | Google | Cloud | Free quota | Gemini 2.0 Flash, 1.5 Pro/Flash | `velune setup` → enter key |
159
- | Together AI | Cloud | Pay-per-token | Llama 3.3 70B, Qwen 2.5 Coder, DeepSeek R1 | `velune setup` → enter key |
160
- | Fireworks AI | Cloud | Pay-per-token | DeepSeek R1, Qwen 2.5 Coder, Mixtral 8x22B | `velune setup` → enter key |
161
- | Mistral | Cloud | Pay-per-token | Mistral Large, Codestral, Mixtral | `velune setup` → enter key |
162
- | DeepSeek | Cloud | Pay-per-token | DeepSeek R1, DeepSeek Coder | `velune setup` → enter key |
163
- | Cohere | Cloud | Pay-per-token | Command R+, Command R | `velune setup` → enter key |
164
- | NVIDIA NIM | Cloud | Pay-per-token | Llama, Mistral, and other NIM models | `velune setup` → enter key |
165
- | HuggingFace | Cloud | Free/paid | Open models via Inference API | `velune setup` → enter key |
166
-
167
- Keys are stored in your OS keyring — never in files, never in git.
155
+ | Provider | Type | Cost | Models | Setup |
156
+ | :--- | :---: | :--- | :--- | :--- |
157
+ | **Ollama** | 🏠 Local | Free | Any pulled model | Install Ollama, pull a model |
158
+ | **LM Studio** | 🏠 Local | Free | Any GGUF / MLX model | Launch LM Studio server |
159
+ | **Groq** | ☁️ Cloud | Free tier | Llama 3.3 70B, Mixtral, Gemma2 | `velune setup` → enter key |
160
+ | **OpenRouter** | ☁️ Cloud | Pay-per-token | 100+ models | `velune setup` → enter key |
161
+ | **OpenAI** | ☁️ Cloud | Pay-per-token | GPT-4o, GPT-4o Mini | `velune setup` → enter key |
162
+ | **Anthropic** | ☁️ Cloud | Pay-per-token | Claude Opus, Sonnet, Haiku | `velune setup` → enter key |
163
+ | **xAI (Grok)** | ☁️ Cloud | Pay-per-token | Grok 2, Grok 2 Mini | `velune setup` → enter key |
164
+ | **Google** | ☁️ Cloud | Free quota | Gemini 2.0 Flash, 1.5 Pro/Flash | `velune setup` → enter key |
165
+ | **Together AI** | ☁️ Cloud | Pay-per-token | Llama 3.3 70B, Qwen 2.5, DeepSeek R1 | `velune setup` → enter key |
166
+ | **Fireworks AI** | ☁️ Cloud | Pay-per-token | DeepSeek R1, Qwen 2.5, Mixtral 8x22B | `velune setup` → enter key |
167
+ | **Mistral** | ☁️ Cloud | Pay-per-token | Mistral Large, Codestral, Mixtral | `velune setup` → enter key |
168
+ | **DeepSeek** | ☁️ Cloud | Pay-per-token | DeepSeek R1, DeepSeek Coder | `velune setup` → enter key |
169
+ | **Cohere** | ☁️ Cloud | Pay-per-token | Command R+, Command R | `velune setup` → enter key |
170
+ | **NVIDIA NIM** | ☁️ Cloud | Pay-per-token | Llama, Mistral, and other NIM models | `velune setup` → enter key |
171
+ | **HuggingFace** | ☁️ Cloud | Free/paid | Open models via Inference API | `velune setup` → enter key |
172
+
173
+ > **Tip:** Keys are stored securely in your OS keyring — never in plain text files, never in git.
168
174
 
169
175
  ---
170
176
 
@@ -178,15 +184,19 @@ velune # Start the interactive REPL session
178
184
  velune chat # Same as above (explicit form)
179
185
  velune run "<task>" # Run a task non-interactively and exit
180
186
  velune ask "<question>" # Ask a one-shot question and exit
181
- velune init # Initialize Velune in a project directory
187
+ velune init # Initialize Velune in the current workspace
188
+ velune onboard # Run (or resume) the first-time setup wizard
182
189
 
183
190
  # Workspace & sessions
184
- velune workspace init # Index the current workspace
185
- velune workspace status # Show index freshness and file counts
186
- velune workspace graph # Render the workspace dependency graph
187
- velune workspace list # List all known workspaces
191
+ velune project init # Index the current workspace (Tree-sitter AST)
192
+ velune project status # Show index freshness and file counts
193
+ velune project graph # Render the module-dependency graph
194
+ velune project tree # Render the workspace directory tree
195
+ velune project list # List all registered workspaces
196
+ velune project explain # Generate a plain-English architecture summary
188
197
  velune session list # List saved chat sessions
189
198
  velune session delete <id> # Delete a saved session
199
+ velune trust # Trust, list, or revoke workspace directories
190
200
 
191
201
  # Setup & models
192
202
  velune setup # Configure API keys (stored in OS keyring)
@@ -362,13 +372,13 @@ to reconstruct intent without you explaining it again.
362
372
 
363
373
  ## Session modes
364
374
 
365
- | Mode | Command | Council tier | Model | Context cap |
366
- |---------|------------|--------------|----------|--------------|
367
- | Normal | `/normal` | auto | current | 16 k tokens |
368
- | Optimus | `/optimus` | instant | smallest | 4 k tokens |
369
- | Godly | `/godly` | full | largest | 128 k tokens |
375
+ | Mode | Command | Council tier | Model | Context cap |
376
+ | :--- | :--- | :---: | :--- | :--- |
377
+ | **Normal** | `/normal` | Auto | Current | 16k tokens |
378
+ | **Optimus** | `/optimus` | Instant | Smallest | 4k tokens |
379
+ | **Godly** | `/godly` | Full | Largest | 128k tokens |
370
380
 
371
- Switch modes at any time mid-session. The prompt badge updates immediately.
381
+ > **Tip:** Switch modes at any time mid-session. The prompt badge updates immediately.
372
382
 
373
383
  ---
374
384
 
@@ -419,7 +429,7 @@ lexical search and chat keep working).
419
429
  | `[rag]` | `lancedb`, `pyarrow`, `qdrant-client` | Semantic memory + vector retrieval (large compiled wheels) |
420
430
  | `[parsing]` | `tree-sitter` + grammars | Tree-sitter source parsing for deep repository cognition |
421
431
  | `[telemetry]` | `opentelemetry-*` | Export spans/metrics to an OTLP collector |
422
- | `[git]` | `gitpython` | Git provider tools (push / PR / issue) and richer git context |
432
+ | `[git]` | *(no extra deps)* | Retained for compatibility — git tools (push / PR / issue) now use native `git` subprocess calls, so nothing extra installs |
423
433
  | `[gguf]` | `gguf` | GGUF file metadata reading — safe, no transitive risk |
424
434
  | `[docker]` | `docker` | Docker sandbox for isolated code execution |
425
435
  | `[all]` | everything above | Full-featured install |