agent-cli 0.68.4__tar.gz → 0.69.0__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 (360) hide show
  1. {agent_cli-0.68.4/agent_cli/dev/skill → agent_cli-0.69.0/.claude/skills/agent-cli-dev}/SKILL.md +9 -4
  2. {agent_cli-0.68.4 → agent_cli-0.69.0}/.claude/skills/agent-cli-dev/examples.md +65 -4
  3. {agent_cli-0.68.4/.claude → agent_cli-0.69.0/.claude-plugin}/skills/agent-cli-dev/SKILL.md +9 -4
  4. {agent_cli-0.68.4 → agent_cli-0.69.0}/.claude-plugin/skills/agent-cli-dev/examples.md +65 -4
  5. {agent_cli-0.68.4 → agent_cli-0.69.0}/.pre-commit-config.yaml +1 -1
  6. {agent_cli-0.68.4 → agent_cli-0.69.0}/CLAUDE.md +1 -1
  7. {agent_cli-0.68.4 → agent_cli-0.69.0}/PKG-INFO +11 -6
  8. {agent_cli-0.68.4 → agent_cli-0.69.0}/README.md +6 -3
  9. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/audio.txt +10 -2
  10. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/faster-whisper.txt +1 -0
  11. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/kokoro.txt +1 -0
  12. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/llm.txt +8 -1
  13. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/memory.txt +1 -0
  14. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/mlx-whisper.txt +2 -1
  15. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/piper.txt +1 -0
  16. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/rag.txt +1 -0
  17. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/server.txt +1 -0
  18. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/speed.txt +10 -2
  19. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/vad.txt +10 -2
  20. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/autocorrect.py +2 -1
  21. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/memory/__init__.py +1 -0
  22. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/memory/proxy.py +5 -12
  23. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/rag_proxy.py +2 -9
  24. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/transcribe.py +4 -1
  25. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/cli.py +18 -2
  26. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/config_cmd.py +1 -0
  27. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/chroma.py +4 -4
  28. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/deps.py +1 -1
  29. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/openai_proxy.py +9 -4
  30. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/process.py +2 -2
  31. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/reranker.py +5 -4
  32. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/utils.py +3 -1
  33. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/vad.py +2 -1
  34. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/watch.py +8 -6
  35. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/cli.py +6 -5
  36. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/base.py +1 -2
  37. {agent_cli-0.68.4/.claude-plugin/skills/agent-cli-dev → agent_cli-0.69.0/agent_cli/dev/skill}/SKILL.md +9 -4
  38. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/skill/examples.md +65 -4
  39. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/install/extras.py +9 -7
  40. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_files.py +4 -1
  41. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_indexer.py +3 -2
  42. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_ingest.py +6 -5
  43. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_streaming.py +2 -2
  44. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/_indexer.py +3 -2
  45. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/api.py +1 -0
  46. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/cli.py +3 -5
  47. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/common.py +3 -4
  48. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/backends/faster_whisper.py +30 -23
  49. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/services/llm.py +2 -1
  50. {agent_cli-0.68.4 → agent_cli-0.69.0}/docker/transcription-proxy.Dockerfile +4 -4
  51. {agent_cli-0.68.4 → agent_cli-0.69.0}/pyproject.toml +6 -5
  52. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_fix_my_text.py +5 -5
  53. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_transcribe.py +23 -15
  54. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_transcribe_agent.py +1 -1
  55. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_transcribe_recovery.py +8 -6
  56. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/core/test_watch.py +3 -6
  57. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_engine.py +2 -5
  58. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_store.py +1 -1
  59. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_cli.py +3 -2
  60. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_requires_extras.py +1 -1
  61. {agent_cli-0.68.4 → agent_cli-0.69.0}/uv.lock +8 -8
  62. {agent_cli-0.68.4 → agent_cli-0.69.0}/.claude-plugin/README.md +0 -0
  63. {agent_cli-0.68.4 → agent_cli-0.69.0}/.claude-plugin/marketplace.json +0 -0
  64. {agent_cli-0.68.4 → agent_cli-0.69.0}/.claude-plugin/plugin.json +0 -0
  65. {agent_cli-0.68.4 → agent_cli-0.69.0}/.cursorrules +0 -0
  66. {agent_cli-0.68.4 → agent_cli-0.69.0}/.env.example +0 -0
  67. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/logo.svg +0 -0
  68. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/release-drafter.yml +0 -0
  69. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/renovate.json +0 -0
  70. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/scripts/check_extras_sync.py +0 -0
  71. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/scripts/sync_requirements.py +0 -0
  72. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/automerge.yml +0 -0
  73. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/docker.yml +0 -0
  74. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/docs.yml +0 -0
  75. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/markdown-code-runner.yml +0 -0
  76. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/pytest.yml +0 -0
  77. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/release-drafter.yml +0 -0
  78. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/release.yml +0 -0
  79. {agent_cli-0.68.4 → agent_cli-0.69.0}/.github/workflows/toc.yaml +0 -0
  80. {agent_cli-0.68.4 → agent_cli-0.69.0}/.gitignore +0 -0
  81. {agent_cli-0.68.4 → agent_cli-0.69.0}/.jscpd.json +0 -0
  82. {agent_cli-0.68.4 → agent_cli-0.69.0}/.prompts/docs-review.md +0 -0
  83. {agent_cli-0.68.4 → agent_cli-0.69.0}/.prompts/pr-review.md +0 -0
  84. {agent_cli-0.68.4 → agent_cli-0.69.0}/LICENSE +0 -0
  85. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/__init__.py +0 -0
  86. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/__main__.py +0 -0
  87. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_extras.json +0 -0
  88. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_requirements/.gitkeep +0 -0
  89. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/_tools.py +0 -0
  90. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/__init__.py +0 -0
  91. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/_voice_agent_common.py +0 -0
  92. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/assistant.py +0 -0
  93. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/chat.py +0 -0
  94. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/memory/add.py +0 -0
  95. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/speak.py +0 -0
  96. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/transcribe_daemon.py +0 -0
  97. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/agents/voice_edit.py +0 -0
  98. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/api.py +0 -0
  99. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/config.py +0 -0
  100. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/constants.py +0 -0
  101. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/__init__.py +0 -0
  102. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/audio.py +0 -0
  103. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/audio_format.py +0 -0
  104. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/sse.py +0 -0
  105. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/core/transcription_logger.py +0 -0
  106. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/__init__.py +0 -0
  107. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/__init__.py +0 -0
  108. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/aider.py +0 -0
  109. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/claude.py +0 -0
  110. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/codex.py +0 -0
  111. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/continue_dev.py +0 -0
  112. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/copilot.py +0 -0
  113. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/cursor_agent.py +0 -0
  114. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/gemini.py +0 -0
  115. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/opencode.py +0 -0
  116. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/coding_agents/registry.py +0 -0
  117. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/__init__.py +0 -0
  118. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/base.py +0 -0
  119. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/cursor.py +0 -0
  120. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/emacs.py +0 -0
  121. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/jetbrains.py +0 -0
  122. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/nano.py +0 -0
  123. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/neovim.py +0 -0
  124. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/registry.py +0 -0
  125. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/sublime.py +0 -0
  126. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/vim.py +0 -0
  127. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/vscode.py +0 -0
  128. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/editors/zed.py +0 -0
  129. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/project.py +0 -0
  130. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/registry.py +0 -0
  131. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/__init__.py +0 -0
  132. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/apple_terminal.py +0 -0
  133. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/base.py +0 -0
  134. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/gnome.py +0 -0
  135. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/iterm2.py +0 -0
  136. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/kitty.py +0 -0
  137. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/registry.py +0 -0
  138. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/tmux.py +0 -0
  139. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/warp.py +0 -0
  140. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/terminals/zellij.py +0 -0
  141. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/dev/worktree.py +0 -0
  142. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/docs_gen.py +0 -0
  143. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/example-config.toml +0 -0
  144. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/install/__init__.py +0 -0
  145. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/install/common.py +0 -0
  146. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/install/hotkeys.py +0 -0
  147. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/install/services.py +0 -0
  148. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/__init__.py +0 -0
  149. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_filters.py +0 -0
  150. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_git.py +0 -0
  151. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_persistence.py +0 -0
  152. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_prompt.py +0 -0
  153. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_retrieval.py +0 -0
  154. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_store.py +0 -0
  155. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/_tasks.py +0 -0
  156. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/api.py +0 -0
  157. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/client.py +0 -0
  158. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/engine.py +0 -0
  159. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/entities.py +0 -0
  160. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/memory/models.py +0 -0
  161. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/opts.py +0 -0
  162. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/py.typed +0 -0
  163. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/__init__.py +0 -0
  164. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/_indexing.py +0 -0
  165. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/_prompt.py +0 -0
  166. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/_retriever.py +0 -0
  167. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/_store.py +0 -0
  168. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/_utils.py +0 -0
  169. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/client.py +0 -0
  170. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/engine.py +0 -0
  171. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/rag/models.py +0 -0
  172. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/.runtime/.gitkeep +0 -0
  173. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/__init__.py +0 -0
  174. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/check_plugin_skill_sync.py +0 -0
  175. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/linux-hotkeys/README.md +0 -0
  176. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/linux-hotkeys/toggle-autocorrect.sh +0 -0
  177. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/linux-hotkeys/toggle-transcription.sh +0 -0
  178. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/linux-hotkeys/toggle-voice-edit.sh +0 -0
  179. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/macos-hotkeys/README.md +0 -0
  180. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/macos-hotkeys/skhd-config-example +0 -0
  181. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/macos-hotkeys/toggle-autocorrect.sh +0 -0
  182. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/macos-hotkeys/toggle-transcription.sh +0 -0
  183. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/macos-hotkeys/toggle-voice-edit.sh +0 -0
  184. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/nvidia-asr-server/README.md +0 -0
  185. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/nvidia-asr-server/pyproject.toml +0 -0
  186. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/nvidia-asr-server/server.py +0 -0
  187. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/nvidia-asr-server/shell.nix +0 -0
  188. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/nvidia-asr-server/uv.lock +0 -0
  189. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-openwakeword.sh +0 -0
  190. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-piper-windows.ps1 +0 -0
  191. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-piper.sh +0 -0
  192. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-whisper-linux.sh +0 -0
  193. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-whisper-macos.sh +0 -0
  194. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-whisper-windows.ps1 +0 -0
  195. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run-whisper.sh +0 -0
  196. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/run_faster_whisper_server.py +0 -0
  197. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/setup-linux-hotkeys.sh +0 -0
  198. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/setup-linux.sh +0 -0
  199. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/setup-macos-hotkeys.sh +0 -0
  200. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/setup-macos.sh +0 -0
  201. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/setup-windows.ps1 +0 -0
  202. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/start-all-services-windows.ps1 +0 -0
  203. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/start-all-services.sh +0 -0
  204. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/scripts/sync_extras.py +0 -0
  205. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/__init__.py +0 -0
  206. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/model_manager.py +0 -0
  207. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/model_registry.py +0 -0
  208. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/proxy/__init__.py +0 -0
  209. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/proxy/api.py +0 -0
  210. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/streaming.py +0 -0
  211. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/__init__.py +0 -0
  212. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/api.py +0 -0
  213. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/backends/__init__.py +0 -0
  214. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/backends/base.py +0 -0
  215. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/backends/kokoro.py +0 -0
  216. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/backends/piper.py +0 -0
  217. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/model_manager.py +0 -0
  218. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/model_registry.py +0 -0
  219. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/tts/wyoming_handler.py +0 -0
  220. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/__init__.py +0 -0
  221. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/api.py +0 -0
  222. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/backends/__init__.py +0 -0
  223. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/backends/base.py +0 -0
  224. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/backends/mlx.py +0 -0
  225. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/languages.py +0 -0
  226. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/model_manager.py +0 -0
  227. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/model_registry.py +0 -0
  228. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/server/whisper/wyoming_handler.py +0 -0
  229. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/services/__init__.py +0 -0
  230. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/services/_wyoming_utils.py +0 -0
  231. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/services/asr.py +0 -0
  232. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/services/tts.py +0 -0
  233. {agent_cli-0.68.4 → agent_cli-0.69.0}/agent_cli/services/wake_word.py +0 -0
  234. {agent_cli-0.68.4 → agent_cli-0.69.0}/docker/docker-compose.yml +0 -0
  235. {agent_cli-0.68.4 → agent_cli-0.69.0}/docker/tts.Dockerfile +0 -0
  236. {agent_cli-0.68.4 → agent_cli-0.69.0}/docker/whisper.Dockerfile +0 -0
  237. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/CNAME +0 -0
  238. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/architecture/index.md +0 -0
  239. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/architecture/memory.md +0 -0
  240. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/architecture/rag.md +0 -0
  241. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/assistant.md +0 -0
  242. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/autocorrect.md +0 -0
  243. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/chat.md +0 -0
  244. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/config.md +0 -0
  245. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/dev.md +0 -0
  246. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/index.md +0 -0
  247. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/install-extras.md +0 -0
  248. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/install-hotkeys.md +0 -0
  249. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/install-services.md +0 -0
  250. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/memory.md +0 -0
  251. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/rag-proxy.md +0 -0
  252. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/server/index.md +0 -0
  253. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/server/transcription-proxy.md +0 -0
  254. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/server/tts.md +0 -0
  255. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/server/whisper.md +0 -0
  256. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/speak.md +0 -0
  257. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/start-services.md +0 -0
  258. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/transcribe-daemon.md +0 -0
  259. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/transcribe.md +0 -0
  260. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/commands/voice-edit.md +0 -0
  261. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/configuration.md +0 -0
  262. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/getting-started.md +0 -0
  263. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/iOS_Shortcut_Guide.md +0 -0
  264. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/index.md +0 -0
  265. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/installation/docker.md +0 -0
  266. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/installation/index.md +0 -0
  267. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/installation/linux.md +0 -0
  268. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/installation/macos.md +0 -0
  269. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/installation/nixos.md +0 -0
  270. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/installation/windows.md +0 -0
  271. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/logo-clean.svg +0 -0
  272. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/overrides/partials/integrations/analytics/custom.html +0 -0
  273. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/run_markdown_code_runner.py +0 -0
  274. {agent_cli-0.68.4 → agent_cli-0.69.0}/docs/system-integration.md +0 -0
  275. {agent_cli-0.68.4 → agent_cli-0.69.0}/example.agent-cli-config.toml +0 -0
  276. {agent_cli-0.68.4 → agent_cli-0.69.0}/justfile +0 -0
  277. {agent_cli-0.68.4 → agent_cli-0.69.0}/shell.nix +0 -0
  278. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/__init__.py +0 -0
  279. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/__init__.py +0 -0
  280. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_interactive.py +0 -0
  281. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_interactive_extra.py +0 -0
  282. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_memory_add.py +0 -0
  283. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_speak.py +0 -0
  284. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_speak_e2e.py +0 -0
  285. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_transcribe_daemon.py +0 -0
  286. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_transcribe_e2e.py +0 -0
  287. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_tts_common.py +0 -0
  288. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_tts_common_extra.py +0 -0
  289. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_voice_agent_common.py +0 -0
  290. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_voice_edit.py +0 -0
  291. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_voice_edit_e2e.py +0 -0
  292. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/agents/test_wake_word_assistant.py +0 -0
  293. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/conftest.py +0 -0
  294. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/core/__init__.py +0 -0
  295. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/core/test_audio_format.py +0 -0
  296. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/core/test_chroma.py +0 -0
  297. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/core/test_sse.py +0 -0
  298. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/core/test_vad.py +0 -0
  299. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/__init__.py +0 -0
  300. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_cli.py +0 -0
  301. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_coding_agents.py +0 -0
  302. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_editors.py +0 -0
  303. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_project.py +0 -0
  304. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_terminals.py +0 -0
  305. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_verification.py +0 -0
  306. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/dev/test_worktree.py +0 -0
  307. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/install/__init__.py +0 -0
  308. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/install/test_extras.py +0 -0
  309. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/__init__.py +0 -0
  310. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_api_health.py +0 -0
  311. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_api_integration_liveish.py +0 -0
  312. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_client.py +0 -0
  313. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_files.py +0 -0
  314. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_filters.py +0 -0
  315. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_git_integration.py +0 -0
  316. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_indexer.py +0 -0
  317. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_memory_integration.py +0 -0
  318. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_proxy_passthrough.py +0 -0
  319. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_store.py +0 -0
  320. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/memory/test_utils.py +0 -0
  321. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/mocks/__init__.py +0 -0
  322. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/mocks/audio.py +0 -0
  323. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/mocks/llm.py +0 -0
  324. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/mocks/wyoming.py +0 -0
  325. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/__init__.py +0 -0
  326. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_api.py +0 -0
  327. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_engine.py +0 -0
  328. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_history.py +0 -0
  329. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_indexer.py +0 -0
  330. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_indexing.py +0 -0
  331. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_rag_client.py +0 -0
  332. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_rag_integration_liveish.py +0 -0
  333. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_rag_proxy_passthrough.py +0 -0
  334. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_retriever.py +0 -0
  335. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/rag/test_utils.py +0 -0
  336. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_api.py +0 -0
  337. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_api_integration.py +0 -0
  338. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_asr.py +0 -0
  339. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_asr_recovery.py +0 -0
  340. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_audio_e2e.py +0 -0
  341. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_config.py +0 -0
  342. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_config_cmd.py +0 -0
  343. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_docs_gen.py +0 -0
  344. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_env_vars.py +0 -0
  345. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_json_output.py +0 -0
  346. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_llm.py +0 -0
  347. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_llm_gemini.py +0 -0
  348. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_memory_tools.py +0 -0
  349. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_mlx_backend.py +0 -0
  350. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_process_manager.py +0 -0
  351. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_server_streaming.py +0 -0
  352. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_server_tts.py +0 -0
  353. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_server_whisper.py +0 -0
  354. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_services.py +0 -0
  355. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_tools.py +0 -0
  356. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_tts.py +0 -0
  357. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_utils.py +0 -0
  358. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_wake_word.py +0 -0
  359. {agent_cli-0.68.4 → agent_cli-0.69.0}/tests/test_wyoming_utils.py +0 -0
  360. {agent_cli-0.68.4 → agent_cli-0.69.0}/zensical.toml +0 -0
@@ -34,14 +34,19 @@ Do NOT spawn when:
34
34
 
35
35
  ## Core command
36
36
 
37
- For short prompts:
37
+ For new features (starts from origin/main):
38
38
  ```bash
39
- agent-cli dev new <branch-name> --agent --prompt "Fix the login bug"
39
+ agent-cli dev new <branch-name> --agent --prompt "Implement the new feature..."
40
+ ```
41
+
42
+ For work on current branch (review, test, fix) - use `--from HEAD`:
43
+ ```bash
44
+ agent-cli dev new <branch-name> --from HEAD --agent --prompt "Review/test/fix..."
40
45
  ```
41
46
 
42
47
  For longer prompts (recommended for multi-line or complex instructions):
43
48
  ```bash
44
- agent-cli dev new <branch-name> --agent --prompt-file path/to/prompt.md
49
+ agent-cli dev new <branch-name> --from HEAD --agent --prompt-file path/to/prompt.md
45
50
  ```
46
51
 
47
52
  This creates:
@@ -129,7 +134,7 @@ Each agent works independently in its own branch. Results can be reviewed and me
129
134
  | `--agent` / `-a` | Start AI coding agent after creation |
130
135
  | `--prompt` / `-p` | Initial prompt for the agent (short prompts only) |
131
136
  | `--prompt-file` / `-P` | Read prompt from file (recommended for longer prompts) |
132
- | `--from` / `-f` | Base branch (default: origin/main) |
137
+ | `--from` / `-f` | Base ref (default: origin/main). **Use `--from HEAD` when reviewing/testing current branch!** |
133
138
  | `--with-agent` | Specific agent: claude, aider, codex, gemini |
134
139
  | `--agent-args` | Extra arguments for the agent |
135
140
 
@@ -20,7 +20,68 @@ Each prompt for a spawned agent should follow this structure:
20
20
  5. **Focused scope** - Keep solutions minimal, implement only what's requested
21
21
  6. **Structured report** - Write conclusions to `.claude/REPORT.md`
22
22
 
23
- ## Scenario 1: Multi-feature implementation
23
+ ## Scenario 1: Code review of current branch
24
+
25
+ **User request**: "Review the code on this branch" or "Spawn an agent to review my changes"
26
+
27
+ **CRITICAL**: Use `--from HEAD` (or the branch name) so the review agent has access to the changes!
28
+
29
+ ```bash
30
+ # Review the current branch - MUST use --from HEAD
31
+ agent-cli dev new review-changes --from HEAD --agent --prompt "Review the code changes on this branch.
32
+
33
+ <workflow>
34
+ - Run git diff origin/main...HEAD to identify all changes
35
+ - Read changed files in parallel to understand context
36
+ - Check CLAUDE.md for project-specific guidelines
37
+ - Test changes with real services if applicable
38
+ </workflow>
39
+
40
+ <code_exploration>
41
+ - Use git diff origin/main...HEAD to see the full diff
42
+ - Read each changed file completely before judging
43
+ - Look at surrounding code to understand patterns
44
+ - Check existing tests to understand expected behavior
45
+ </code_exploration>
46
+
47
+ <context>
48
+ Code review catches issues before merge. Focus on real problems - not style nitpicks. Apply these criteria:
49
+ - Code cleanliness: Is the implementation clean and well-structured?
50
+ - DRY principle: Does it avoid duplication?
51
+ - Code reuse: Are there parts that should be reused from other places?
52
+ - Organization: Is everything in the right place?
53
+ - Consistency: Is it in the same style as other parts of the codebase?
54
+ - Simplicity: Is it over-engineered? Remember KISS and YAGNI. No dead code paths, no defensive programming.
55
+ - No pointless wrappers: Functions that just call another function should be inlined.
56
+ - User experience: Does it provide a good user experience?
57
+ - Tests: Are tests meaningful or just trivial coverage?
58
+ - Live tests: Test changes with real services if applicable.
59
+ - Rules: Does the code follow CLAUDE.md guidelines?
60
+ </context>
61
+
62
+ <scope>
63
+ Review only - identify issues but do not fix them. Write findings to report.
64
+ </scope>
65
+
66
+ <report>
67
+ Write your review to .claude/REPORT.md:
68
+
69
+ ## Summary
70
+ [Overall assessment of the changes]
71
+
72
+ ## Issues Found
73
+ | Severity | File:Line | Issue | Suggestion |
74
+ |----------|-----------|-------|------------|
75
+ | Critical/High/Medium/Low | path:123 | description | fix |
76
+
77
+ ## Positive Observations
78
+ [What's well done]
79
+ </report>"
80
+ ```
81
+
82
+ **Common mistake**: Forgetting `--from HEAD` means the agent starts from `origin/main` and won't see any of the branch changes!
83
+
84
+ ## Scenario 2: Multi-feature implementation
24
85
 
25
86
  **User request**: "Implement user auth, payment processing, and email notifications"
26
87
 
@@ -169,7 +230,7 @@ After verifying tests pass, write to .claude/REPORT.md with summary, files chang
169
230
  </report>"
170
231
  ```
171
232
 
172
- ## Scenario 2: Test-driven development
233
+ ## Scenario 3: Test-driven development
173
234
 
174
235
  **User request**: "Add a caching layer with comprehensive tests"
175
236
 
@@ -289,7 +350,7 @@ After ALL tests pass, write to .claude/REPORT.md:
289
350
  </report>"
290
351
  ```
291
352
 
292
- ## Scenario 3: Large refactoring by module
353
+ ## Scenario 4: Large refactoring by module
293
354
 
294
355
  **User request**: "Refactor the API to use consistent error handling"
295
356
 
@@ -357,7 +418,7 @@ After tests pass and linting is clean, write to .claude/REPORT.md:
357
418
  </report>"
358
419
  ```
359
420
 
360
- ## Scenario 4: Documentation and implementation in parallel
421
+ ## Scenario 5: Documentation and implementation in parallel
361
422
 
362
423
  **User request**: "Add a plugin system with documentation"
363
424
 
@@ -34,14 +34,19 @@ Do NOT spawn when:
34
34
 
35
35
  ## Core command
36
36
 
37
- For short prompts:
37
+ For new features (starts from origin/main):
38
38
  ```bash
39
- agent-cli dev new <branch-name> --agent --prompt "Fix the login bug"
39
+ agent-cli dev new <branch-name> --agent --prompt "Implement the new feature..."
40
+ ```
41
+
42
+ For work on current branch (review, test, fix) - use `--from HEAD`:
43
+ ```bash
44
+ agent-cli dev new <branch-name> --from HEAD --agent --prompt "Review/test/fix..."
40
45
  ```
41
46
 
42
47
  For longer prompts (recommended for multi-line or complex instructions):
43
48
  ```bash
44
- agent-cli dev new <branch-name> --agent --prompt-file path/to/prompt.md
49
+ agent-cli dev new <branch-name> --from HEAD --agent --prompt-file path/to/prompt.md
45
50
  ```
46
51
 
47
52
  This creates:
@@ -129,7 +134,7 @@ Each agent works independently in its own branch. Results can be reviewed and me
129
134
  | `--agent` / `-a` | Start AI coding agent after creation |
130
135
  | `--prompt` / `-p` | Initial prompt for the agent (short prompts only) |
131
136
  | `--prompt-file` / `-P` | Read prompt from file (recommended for longer prompts) |
132
- | `--from` / `-f` | Base branch (default: origin/main) |
137
+ | `--from` / `-f` | Base ref (default: origin/main). **Use `--from HEAD` when reviewing/testing current branch!** |
133
138
  | `--with-agent` | Specific agent: claude, aider, codex, gemini |
134
139
  | `--agent-args` | Extra arguments for the agent |
135
140
 
@@ -20,7 +20,68 @@ Each prompt for a spawned agent should follow this structure:
20
20
  5. **Focused scope** - Keep solutions minimal, implement only what's requested
21
21
  6. **Structured report** - Write conclusions to `.claude/REPORT.md`
22
22
 
23
- ## Scenario 1: Multi-feature implementation
23
+ ## Scenario 1: Code review of current branch
24
+
25
+ **User request**: "Review the code on this branch" or "Spawn an agent to review my changes"
26
+
27
+ **CRITICAL**: Use `--from HEAD` (or the branch name) so the review agent has access to the changes!
28
+
29
+ ```bash
30
+ # Review the current branch - MUST use --from HEAD
31
+ agent-cli dev new review-changes --from HEAD --agent --prompt "Review the code changes on this branch.
32
+
33
+ <workflow>
34
+ - Run git diff origin/main...HEAD to identify all changes
35
+ - Read changed files in parallel to understand context
36
+ - Check CLAUDE.md for project-specific guidelines
37
+ - Test changes with real services if applicable
38
+ </workflow>
39
+
40
+ <code_exploration>
41
+ - Use git diff origin/main...HEAD to see the full diff
42
+ - Read each changed file completely before judging
43
+ - Look at surrounding code to understand patterns
44
+ - Check existing tests to understand expected behavior
45
+ </code_exploration>
46
+
47
+ <context>
48
+ Code review catches issues before merge. Focus on real problems - not style nitpicks. Apply these criteria:
49
+ - Code cleanliness: Is the implementation clean and well-structured?
50
+ - DRY principle: Does it avoid duplication?
51
+ - Code reuse: Are there parts that should be reused from other places?
52
+ - Organization: Is everything in the right place?
53
+ - Consistency: Is it in the same style as other parts of the codebase?
54
+ - Simplicity: Is it over-engineered? Remember KISS and YAGNI. No dead code paths, no defensive programming.
55
+ - No pointless wrappers: Functions that just call another function should be inlined.
56
+ - User experience: Does it provide a good user experience?
57
+ - Tests: Are tests meaningful or just trivial coverage?
58
+ - Live tests: Test changes with real services if applicable.
59
+ - Rules: Does the code follow CLAUDE.md guidelines?
60
+ </context>
61
+
62
+ <scope>
63
+ Review only - identify issues but do not fix them. Write findings to report.
64
+ </scope>
65
+
66
+ <report>
67
+ Write your review to .claude/REPORT.md:
68
+
69
+ ## Summary
70
+ [Overall assessment of the changes]
71
+
72
+ ## Issues Found
73
+ | Severity | File:Line | Issue | Suggestion |
74
+ |----------|-----------|-------|------------|
75
+ | Critical/High/Medium/Low | path:123 | description | fix |
76
+
77
+ ## Positive Observations
78
+ [What's well done]
79
+ </report>"
80
+ ```
81
+
82
+ **Common mistake**: Forgetting `--from HEAD` means the agent starts from `origin/main` and won't see any of the branch changes!
83
+
84
+ ## Scenario 2: Multi-feature implementation
24
85
 
25
86
  **User request**: "Implement user auth, payment processing, and email notifications"
26
87
 
@@ -169,7 +230,7 @@ After verifying tests pass, write to .claude/REPORT.md with summary, files chang
169
230
  </report>"
170
231
  ```
171
232
 
172
- ## Scenario 2: Test-driven development
233
+ ## Scenario 3: Test-driven development
173
234
 
174
235
  **User request**: "Add a caching layer with comprehensive tests"
175
236
 
@@ -289,7 +350,7 @@ After ALL tests pass, write to .claude/REPORT.md:
289
350
  </report>"
290
351
  ```
291
352
 
292
- ## Scenario 3: Large refactoring by module
353
+ ## Scenario 4: Large refactoring by module
293
354
 
294
355
  **User request**: "Refactor the API to use consistent error handling"
295
356
 
@@ -357,7 +418,7 @@ After tests pass and linting is clean, write to .claude/REPORT.md:
357
418
  </report>"
358
419
  ```
359
420
 
360
- ## Scenario 4: Documentation and implementation in parallel
421
+ ## Scenario 5: Documentation and implementation in parallel
361
422
 
362
423
  **User request**: "Add a plugin system with documentation"
363
424
 
@@ -8,7 +8,7 @@ repos:
8
8
  - id: end-of-file-fixer
9
9
  - id: mixed-line-ending
10
10
  - repo: https://github.com/astral-sh/ruff-pre-commit
11
- rev: "v0.14.13"
11
+ rev: "v0.14.14"
12
12
  hooks:
13
13
  - id: ruff
14
14
  args: ["--fix"]
@@ -12,7 +12,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
12
12
  - Run `pre-commit run --all-files` before committing
13
13
  - Use `git add <specific-file>` not `git add .`
14
14
  - CLI help in README.md is auto-generated - don't edit manually
15
- - Keep CLI startup fast (<300ms) - use top-level imports by default, only use lazy imports when a heavy dependency actually causes slowdown
15
+ - Keep CLI startup fast (<300ms) - use top-level imports by default for first-party and stdlib imports, use lazy imports for ALL 3rd party dependencies (except pydantic, typer, and rich)
16
16
  - External library assumptions (especially in `dev` command for terminals/editors/agents) must be backed by evidence (official docs, man pages, source code). Document evidence in test docstrings that also verify the implementation.
17
17
  - Private functions (`_name`) don't need parameter documentation in docstrings - a one-line description is sufficient
18
18
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-cli
3
- Version: 0.68.4
3
+ Version: 0.69.0
4
4
  Summary: A suite of AI-powered command-line tools for text correction, audio transcription, and voice assistance.
5
5
  Project-URL: Homepage, https://github.com/basnijholt/agent-cli
6
6
  Author-email: Bas Nijholt <bas@nijho.lt>
@@ -13,6 +13,7 @@ Requires-Dist: pydantic
13
13
  Requires-Dist: pyperclip
14
14
  Requires-Dist: rich
15
15
  Requires-Dist: setproctitle
16
+ Requires-Dist: typer
16
17
  Requires-Dist: typer-slim[standard]
17
18
  Provides-Extra: audio
18
19
  Requires-Dist: numpy; extra == 'audio'
@@ -20,9 +21,10 @@ Requires-Dist: sounddevice>=0.4.6; extra == 'audio'
20
21
  Requires-Dist: wyoming>=1.5.2; extra == 'audio'
21
22
  Provides-Extra: dev
22
23
  Requires-Dist: markdown-code-runner>=2.7.0; extra == 'dev'
24
+ Requires-Dist: markdown-gfm-admonition; extra == 'dev'
23
25
  Requires-Dist: notebook; extra == 'dev'
26
+ Requires-Dist: pre-commit-uv>=4.1.4; extra == 'dev'
24
27
  Requires-Dist: pre-commit>=3.0.0; extra == 'dev'
25
- Requires-Dist: pydantic-ai-slim[openai]; extra == 'dev'
26
28
  Requires-Dist: pylint>=3.0.0; extra == 'dev'
27
29
  Requires-Dist: pytest-asyncio>=0.20.0; extra == 'dev'
28
30
  Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
@@ -31,6 +33,7 @@ Requires-Dist: pytest-timeout; extra == 'dev'
31
33
  Requires-Dist: pytest>=7.0.0; extra == 'dev'
32
34
  Requires-Dist: ruff; extra == 'dev'
33
35
  Requires-Dist: versioningit; extra == 'dev'
36
+ Requires-Dist: zensical; extra == 'dev'
34
37
  Provides-Extra: faster-whisper
35
38
  Requires-Dist: fastapi[standard]; extra == 'faster-whisper'
36
39
  Requires-Dist: faster-whisper>=1.0.0; extra == 'faster-whisper'
@@ -70,7 +73,6 @@ Requires-Dist: fastapi[standard]; extra == 'server'
70
73
  Provides-Extra: speed
71
74
  Requires-Dist: audiostretchy>=1.3.0; extra == 'speed'
72
75
  Provides-Extra: test
73
- Requires-Dist: pydantic-ai-slim[openai]; extra == 'test'
74
76
  Requires-Dist: pytest-asyncio>=0.20.0; extra == 'test'
75
77
  Requires-Dist: pytest-cov>=4.0.0; extra == 'test'
76
78
  Requires-Dist: pytest-mock; extra == 'test'
@@ -496,9 +498,12 @@ agent-cli install-extras rag memory vad
496
498
 
497
499
  Install optional extras (rag, memory, vad, etc.) with pinned versions.
498
500
 
499
- Examples: agent-cli install-extras rag # Install RAG dependencies agent-cli
500
- install-extras memory vad # Install multiple extras agent-cli install-extras --list
501
- # Show available extras agent-cli install-extras --all # Install all extras
501
+ Examples:
502
+
503
+ agent-cli install-extras rag # Install RAG dependencies
504
+ • agent-cli install-extras memory vad # Install multiple extras
505
+ • agent-cli install-extras --list # Show available extras
506
+ • agent-cli install-extras --all # Install all extras
502
507
 
503
508
  ╭─ Arguments ────────────────────────────────────────────────────────────────────────────╮
504
509
  │ extras [EXTRAS]... Extras to install │
@@ -414,9 +414,12 @@ agent-cli install-extras rag memory vad
414
414
 
415
415
  Install optional extras (rag, memory, vad, etc.) with pinned versions.
416
416
 
417
- Examples: agent-cli install-extras rag # Install RAG dependencies agent-cli
418
- install-extras memory vad # Install multiple extras agent-cli install-extras --list
419
- # Show available extras agent-cli install-extras --all # Install all extras
417
+ Examples:
418
+
419
+ agent-cli install-extras rag # Install RAG dependencies
420
+ • agent-cli install-extras memory vad # Install multiple extras
421
+ • agent-cli install-extras --list # Show available extras
422
+ • agent-cli install-extras --all # Install all extras
420
423
 
421
424
  ╭─ Arguments ────────────────────────────────────────────────────────────────────────────╮
422
425
  │ extras [EXTRAS]... Extras to install │
@@ -11,7 +11,9 @@ certifi==2026.1.4
11
11
  cffi==2.0.0
12
12
  # via sounddevice
13
13
  click==8.3.1
14
- # via typer-slim
14
+ # via
15
+ # typer
16
+ # typer-slim
15
17
  colorama==0.4.6 ; sys_platform == 'win32'
16
18
  # via click
17
19
  dotenv==0.9.9
@@ -49,13 +51,18 @@ python-dotenv==1.2.1
49
51
  rich==14.2.0
50
52
  # via
51
53
  # agent-cli
54
+ # typer
52
55
  # typer-slim
53
56
  setproctitle==1.3.7
54
57
  # via agent-cli
55
58
  shellingham==1.5.4
56
- # via typer-slim
59
+ # via
60
+ # typer
61
+ # typer-slim
57
62
  sounddevice==0.5.3
58
63
  # via agent-cli
64
+ typer==0.21.1
65
+ # via agent-cli
59
66
  typer-slim==0.21.1
60
67
  # via agent-cli
61
68
  typing-extensions==4.15.0
@@ -63,6 +70,7 @@ typing-extensions==4.15.0
63
70
  # anyio
64
71
  # pydantic
65
72
  # pydantic-core
73
+ # typer
66
74
  # typer-slim
67
75
  # typing-inspection
68
76
  typing-inspection==0.4.2
@@ -176,6 +176,7 @@ tqdm==4.67.1
176
176
  # huggingface-hub
177
177
  typer==0.21.1
178
178
  # via
179
+ # agent-cli
179
180
  # fastapi-cli
180
181
  # fastapi-cloud-cli
181
182
  typer-slim==0.21.1
@@ -367,6 +367,7 @@ triton==3.5.1 ; platform_machine == 'x86_64' and sys_platform == 'linux'
367
367
  # via torch
368
368
  typer==0.21.1
369
369
  # via
370
+ # agent-cli
370
371
  # fastapi-cli
371
372
  # fastapi-cloud-cli
372
373
  typer-slim==0.21.1
@@ -23,6 +23,7 @@ charset-normalizer==3.4.4
23
23
  click==8.3.1
24
24
  # via
25
25
  # ddgs
26
+ # typer
26
27
  # typer-slim
27
28
  colorama==0.4.6
28
29
  # via
@@ -132,13 +133,16 @@ requests==2.32.5
132
133
  rich==14.2.0
133
134
  # via
134
135
  # agent-cli
136
+ # typer
135
137
  # typer-slim
136
138
  rsa==4.9.1
137
139
  # via google-auth
138
140
  setproctitle==1.3.7
139
141
  # via agent-cli
140
142
  shellingham==1.5.4
141
- # via typer-slim
143
+ # via
144
+ # typer
145
+ # typer-slim
142
146
  sniffio==1.3.1
143
147
  # via
144
148
  # google-genai
@@ -151,6 +155,8 @@ tiktoken==0.12.0
151
155
  # via pydantic-ai-slim
152
156
  tqdm==4.67.1
153
157
  # via openai
158
+ typer==0.21.1
159
+ # via agent-cli
154
160
  typer-slim==0.21.1
155
161
  # via agent-cli
156
162
  typing-extensions==4.15.0
@@ -161,6 +167,7 @@ typing-extensions==4.15.0
161
167
  # opentelemetry-api
162
168
  # pydantic
163
169
  # pydantic-core
170
+ # typer
164
171
  # typer-slim
165
172
  # typing-inspection
166
173
  typing-inspection==0.4.2
@@ -300,6 +300,7 @@ transformers==4.57.5
300
300
  # via agent-cli
301
301
  typer==0.21.1
302
302
  # via
303
+ # agent-cli
303
304
  # chromadb
304
305
  # fastapi-cli
305
306
  # fastapi-cloud-cli
@@ -180,8 +180,9 @@ tqdm==4.67.1 ; platform_machine == 'arm64' and sys_platform == 'darwin'
180
180
  # via
181
181
  # huggingface-hub
182
182
  # mlx-whisper
183
- typer==0.21.1 ; platform_machine == 'arm64' and sys_platform == 'darwin'
183
+ typer==0.21.1
184
184
  # via
185
+ # agent-cli
185
186
  # fastapi-cli
186
187
  # fastapi-cloud-cli
187
188
  typer-slim==0.21.1
@@ -140,6 +140,7 @@ sympy==1.14.0
140
140
  # via onnxruntime
141
141
  typer==0.21.1
142
142
  # via
143
+ # agent-cli
143
144
  # fastapi-cli
144
145
  # fastapi-cloud-cli
145
146
  typer-slim==0.21.1
@@ -343,6 +343,7 @@ transformers==4.57.5
343
343
  # via agent-cli
344
344
  typer==0.21.1
345
345
  # via
346
+ # agent-cli
346
347
  # chromadb
347
348
  # fastapi-cli
348
349
  # fastapi-cloud-cli
@@ -118,6 +118,7 @@ starlette==0.50.0
118
118
  # via fastapi
119
119
  typer==0.21.1
120
120
  # via
121
+ # agent-cli
121
122
  # fastapi-cli
122
123
  # fastapi-cloud-cli
123
124
  typer-slim==0.21.1
@@ -11,7 +11,9 @@ certifi==2026.1.4
11
11
  # httpcore
12
12
  # httpx
13
13
  click==8.3.1
14
- # via typer-slim
14
+ # via
15
+ # typer
16
+ # typer-slim
15
17
  colorama==0.4.6 ; sys_platform == 'win32'
16
18
  # via click
17
19
  dotenv==0.9.9
@@ -49,13 +51,18 @@ python-dotenv==1.2.1
49
51
  rich==14.2.0
50
52
  # via
51
53
  # agent-cli
54
+ # typer
52
55
  # typer-slim
53
56
  setproctitle==1.3.7
54
57
  # via agent-cli
55
58
  shellingham==1.5.4
56
- # via typer-slim
59
+ # via
60
+ # typer
61
+ # typer-slim
57
62
  termcolor==3.3.0
58
63
  # via fire
64
+ typer==0.21.1
65
+ # via agent-cli
59
66
  typer-slim==0.21.1
60
67
  # via agent-cli
61
68
  typing-extensions==4.15.0
@@ -63,6 +70,7 @@ typing-extensions==4.15.0
63
70
  # anyio
64
71
  # pydantic
65
72
  # pydantic-core
73
+ # typer
66
74
  # typer-slim
67
75
  # typing-inspection
68
76
  typing-inspection==0.4.2
@@ -9,7 +9,9 @@ certifi==2026.1.4
9
9
  # httpcore
10
10
  # httpx
11
11
  click==8.3.1
12
- # via typer-slim
12
+ # via
13
+ # typer
14
+ # typer-slim
13
15
  colorama==0.4.6 ; sys_platform == 'win32'
14
16
  # via click
15
17
  coloredlogs==15.0.1
@@ -112,13 +114,16 @@ python-dotenv==1.2.1
112
114
  rich==14.2.0
113
115
  # via
114
116
  # agent-cli
117
+ # typer
115
118
  # typer-slim
116
119
  setproctitle==1.3.7
117
120
  # via agent-cli
118
121
  setuptools==80.9.0 ; python_full_version >= '3.12'
119
122
  # via torch
120
123
  shellingham==1.5.4
121
- # via typer-slim
124
+ # via
125
+ # typer
126
+ # typer-slim
122
127
  silero-vad==6.2.0
123
128
  # via agent-cli
124
129
  sympy==1.14.0
@@ -133,6 +138,8 @@ torchaudio==2.9.1
133
138
  # via silero-vad
134
139
  triton==3.5.1 ; platform_machine == 'x86_64' and sys_platform == 'linux'
135
140
  # via torch
141
+ typer==0.21.1
142
+ # via agent-cli
136
143
  typer-slim==0.21.1
137
144
  # via agent-cli
138
145
  typing-extensions==4.15.0
@@ -141,6 +148,7 @@ typing-extensions==4.15.0
141
148
  # pydantic
142
149
  # pydantic-core
143
150
  # torch
151
+ # typer
144
152
  # typer-slim
145
153
  # typing-inspection
146
154
  typing-inspection==0.4.2
@@ -9,7 +9,6 @@ import sys
9
9
  import time
10
10
  from typing import TYPE_CHECKING
11
11
 
12
- import pyperclip
13
12
  import typer
14
13
 
15
14
  from agent_cli import config, opts
@@ -118,6 +117,8 @@ def _display_result(
118
117
  ) -> None:
119
118
  """Handle output and clipboard copying based on desired verbosity."""
120
119
  if clipboard:
120
+ import pyperclip # noqa: PLC0415
121
+
121
122
  pyperclip.copy(corrected_text)
122
123
 
123
124
  if simple_output:
@@ -10,6 +10,7 @@ from agent_cli.core.process import set_process_title
10
10
  memory_app = typer.Typer(
11
11
  name="memory",
12
12
  help="Memory system operations (add, proxy, etc.).",
13
+ add_completion=True,
13
14
  rich_markup_mode="markdown",
14
15
  no_args_is_help=True,
15
16
  )
@@ -11,7 +11,7 @@ from rich.logging import RichHandler
11
11
  from agent_cli import constants, opts
12
12
  from agent_cli.agents.memory import memory_app
13
13
  from agent_cli.core.deps import requires_extras
14
- from agent_cli.core.utils import console, print_command_line_args, print_error_message
14
+ from agent_cli.core.utils import console, print_command_line_args
15
15
 
16
16
 
17
17
  @memory_app.command("proxy")
@@ -105,17 +105,10 @@ def proxy(
105
105
  if print_args:
106
106
  print_command_line_args(locals())
107
107
 
108
- try:
109
- import uvicorn # noqa: PLC0415
110
-
111
- from agent_cli.memory._files import ensure_store_dirs # noqa: PLC0415
112
- from agent_cli.memory.api import create_app # noqa: PLC0415
113
- except ImportError as exc:
114
- print_error_message(
115
- "Memory dependencies are not installed. Please install with "
116
- "`pip install agent-cli[memory]` or `uv sync --extra memory`.",
117
- )
118
- raise typer.Exit(1) from exc
108
+ import uvicorn # noqa: PLC0415
109
+
110
+ from agent_cli.memory._files import ensure_store_dirs # noqa: PLC0415
111
+ from agent_cli.memory.api import create_app # noqa: PLC0415
119
112
 
120
113
  logging.basicConfig(
121
114
  level=log_level.upper(),
@@ -77,16 +77,9 @@ def rag_proxy(
77
77
  logging.getLogger("chromadb").setLevel(logging.WARNING)
78
78
  logging.getLogger("uvicorn.access").setLevel(logging.WARNING)
79
79
 
80
- try:
81
- import uvicorn # noqa: PLC0415
80
+ import uvicorn # noqa: PLC0415
82
81
 
83
- from agent_cli.rag.api import create_app # noqa: PLC0415
84
- except ImportError as exc:
85
- print_error_message(
86
- "RAG dependencies are not installed. Please install with "
87
- "`pip install agent-cli[rag]` or `uv sync --extra rag`.",
88
- )
89
- raise typer.Exit(1) from exc
82
+ from agent_cli.rag.api import create_app # noqa: PLC0415
90
83
 
91
84
  docs_folder = docs_folder.resolve()
92
85
  chroma_path = chroma_path.resolve()