agent-cli 0.95.10__tar.gz → 0.95.12__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 (439) hide show
  1. {agent_cli-0.95.10 → agent_cli-0.95.12}/Casks/agent-cli.rb +2 -2
  2. {agent_cli-0.95.10 → agent_cli-0.95.12}/PKG-INFO +35 -1
  3. {agent_cli-0.95.10 → agent_cli-0.95.12}/README.md +34 -0
  4. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/getting-started.md +14 -2
  5. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/index.md +12 -0
  6. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/installation/index.md +14 -2
  7. agent_cli-0.95.12/docs/installation/macos-app.md +94 -0
  8. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/installation/macos.md +3 -0
  9. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/system-integration.md +11 -0
  10. agent_cli-0.95.12/macos/AgentCLI/Sources/AgentCLI/VoiceStatusMenuItem.swift +10 -0
  11. agent_cli-0.95.12/macos/appcast.xml +41 -0
  12. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_macos_app.py +19 -5
  13. {agent_cli-0.95.10 → agent_cli-0.95.12}/zensical.toml +1 -0
  14. agent_cli-0.95.10/macos/AgentCLI/Sources/AgentCLI/VoiceStatusMenuItem.swift +0 -27
  15. agent_cli-0.95.10/macos/appcast.xml +0 -8
  16. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude/skills/agent-cli-dev/SKILL.md +0 -0
  17. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude/skills/agent-cli-dev/examples.md +0 -0
  18. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude-plugin/README.md +0 -0
  19. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude-plugin/marketplace.json +0 -0
  20. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude-plugin/plugin.json +0 -0
  21. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude-plugin/skills/agent-cli-dev/SKILL.md +0 -0
  22. {agent_cli-0.95.10 → agent_cli-0.95.12}/.claude-plugin/skills/agent-cli-dev/examples.md +0 -0
  23. {agent_cli-0.95.10 → agent_cli-0.95.12}/.cursorrules +0 -0
  24. {agent_cli-0.95.10 → agent_cli-0.95.12}/.dockerignore +0 -0
  25. {agent_cli-0.95.10 → agent_cli-0.95.12}/.env.example +0 -0
  26. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/logo.svg +0 -0
  27. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/release-drafter.yml +0 -0
  28. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/renovate.json +0 -0
  29. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/scripts/check_extras_sync.py +0 -0
  30. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/scripts/check_plugin_skill_sync.py +0 -0
  31. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/scripts/sync_extras.py +0 -0
  32. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/scripts/sync_requirements.py +0 -0
  33. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/scripts/update_cask.py +0 -0
  34. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/automerge.yml +0 -0
  35. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/docker.yml +0 -0
  36. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/docs.yml +0 -0
  37. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/markdown-code-runner.yml +0 -0
  38. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/pytest.yml +0 -0
  39. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/release-drafter.yml +0 -0
  40. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/release.yml +0 -0
  41. {agent_cli-0.95.10 → agent_cli-0.95.12}/.github/workflows/toc.yaml +0 -0
  42. {agent_cli-0.95.10 → agent_cli-0.95.12}/.gitignore +0 -0
  43. {agent_cli-0.95.10 → agent_cli-0.95.12}/.jscpd.json +0 -0
  44. {agent_cli-0.95.10 → agent_cli-0.95.12}/.pre-commit-config.yaml +0 -0
  45. {agent_cli-0.95.10 → agent_cli-0.95.12}/.prompts/docs-review.md +0 -0
  46. {agent_cli-0.95.10 → agent_cli-0.95.12}/.prompts/pr-review.md +0 -0
  47. {agent_cli-0.95.10 → agent_cli-0.95.12}/CLAUDE.md +0 -0
  48. {agent_cli-0.95.10 → agent_cli-0.95.12}/LICENSE +0 -0
  49. {agent_cli-0.95.10 → agent_cli-0.95.12}/LLAMA_SERVER_USAGE.md +0 -0
  50. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/__init__.py +0 -0
  51. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/__main__.py +0 -0
  52. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_extras.json +0 -0
  53. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/.gitkeep +0 -0
  54. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/audio.txt +0 -0
  55. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/diarization.txt +0 -0
  56. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/faster-whisper.txt +0 -0
  57. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/kokoro.txt +0 -0
  58. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/llm.txt +0 -0
  59. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/memory.txt +0 -0
  60. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/mlx-whisper.txt +0 -0
  61. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/piper.txt +0 -0
  62. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/rag.txt +0 -0
  63. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/server.txt +0 -0
  64. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/speed.txt +0 -0
  65. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/vad.txt +0 -0
  66. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/vectordb.txt +0 -0
  67. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/whisper-transformers.txt +0 -0
  68. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_requirements/wyoming.txt +0 -0
  69. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/_tools.py +0 -0
  70. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/__init__.py +0 -0
  71. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/_voice_agent_common.py +0 -0
  72. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/assistant.py +0 -0
  73. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/autocorrect.py +0 -0
  74. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/chat.py +0 -0
  75. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/diarize_live_session.py +0 -0
  76. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/memory/__init__.py +0 -0
  77. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/memory/add.py +0 -0
  78. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/memory/proxy.py +0 -0
  79. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/rag_proxy.py +0 -0
  80. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/speak.py +0 -0
  81. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/speakers.py +0 -0
  82. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/transcribe.py +0 -0
  83. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/transcribe_live.py +0 -0
  84. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/agents/voice_edit.py +0 -0
  85. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/api.py +0 -0
  86. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/cli.py +0 -0
  87. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/config.py +0 -0
  88. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/config_cmd.py +0 -0
  89. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/constants.py +0 -0
  90. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/__init__.py +0 -0
  91. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/alignment.py +0 -0
  92. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/audio.py +0 -0
  93. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/audio_format.py +0 -0
  94. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/chroma.py +0 -0
  95. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/deps.py +0 -0
  96. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/diarization.py +0 -0
  97. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/openai_proxy.py +0 -0
  98. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/process.py +0 -0
  99. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/reranker.py +0 -0
  100. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/speaker_identity.py +0 -0
  101. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/sse.py +0 -0
  102. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/transcription_logger.py +0 -0
  103. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/utils.py +0 -0
  104. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/vad.py +0 -0
  105. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/core/watch.py +0 -0
  106. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/daemon/__init__.py +0 -0
  107. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/daemon/cli.py +0 -0
  108. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/__init__.py +0 -0
  109. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/_branch_name.py +0 -0
  110. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/_config.py +0 -0
  111. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/_output.py +0 -0
  112. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/cleanup.py +0 -0
  113. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/cli.py +0 -0
  114. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/__init__.py +0 -0
  115. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/aider.py +0 -0
  116. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/base.py +0 -0
  117. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/claude.py +0 -0
  118. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/codex.py +0 -0
  119. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/continue_dev.py +0 -0
  120. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/copilot.py +0 -0
  121. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/cursor_agent.py +0 -0
  122. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/gemini.py +0 -0
  123. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/opencode.py +0 -0
  124. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/coding_agents/registry.py +0 -0
  125. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/__init__.py +0 -0
  126. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/base.py +0 -0
  127. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/cursor.py +0 -0
  128. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/emacs.py +0 -0
  129. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/jetbrains.py +0 -0
  130. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/nano.py +0 -0
  131. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/neovim.py +0 -0
  132. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/registry.py +0 -0
  133. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/sublime.py +0 -0
  134. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/vim.py +0 -0
  135. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/vscode.py +0 -0
  136. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/editors/zed.py +0 -0
  137. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/hooks.py +0 -0
  138. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/launch.py +0 -0
  139. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/project.py +0 -0
  140. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/registry.py +0 -0
  141. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/skill/SKILL.md +0 -0
  142. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/skill/examples.md +0 -0
  143. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/__init__.py +0 -0
  144. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/apple_terminal.py +0 -0
  145. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/base.py +0 -0
  146. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/gnome.py +0 -0
  147. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/iterm2.py +0 -0
  148. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/kitty.py +0 -0
  149. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/registry.py +0 -0
  150. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/tmux.py +0 -0
  151. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/warp.py +0 -0
  152. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/terminals/zellij.py +0 -0
  153. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/dev/worktree.py +0 -0
  154. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/docs_gen.py +0 -0
  155. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/example-config.toml +0 -0
  156. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/__init__.py +0 -0
  157. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/common.py +0 -0
  158. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/extras.py +0 -0
  159. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/hotkeys.py +0 -0
  160. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/launchd.py +0 -0
  161. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/service_config.py +0 -0
  162. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/services.py +0 -0
  163. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/install/systemd.py +0 -0
  164. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/__init__.py +0 -0
  165. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_files.py +0 -0
  166. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_filters.py +0 -0
  167. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_git.py +0 -0
  168. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_indexer.py +0 -0
  169. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_ingest.py +0 -0
  170. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_persistence.py +0 -0
  171. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_prompt.py +0 -0
  172. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_retrieval.py +0 -0
  173. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_store.py +0 -0
  174. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_streaming.py +0 -0
  175. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/_tasks.py +0 -0
  176. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/api.py +0 -0
  177. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/client.py +0 -0
  178. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/engine.py +0 -0
  179. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/entities.py +0 -0
  180. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/memory/models.py +0 -0
  181. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/opts.py +0 -0
  182. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/py.typed +0 -0
  183. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/__init__.py +0 -0
  184. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/_indexer.py +0 -0
  185. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/_indexing.py +0 -0
  186. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/_prompt.py +0 -0
  187. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/_retriever.py +0 -0
  188. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/_store.py +0 -0
  189. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/_utils.py +0 -0
  190. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/api.py +0 -0
  191. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/client.py +0 -0
  192. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/engine.py +0 -0
  193. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/rag/models.py +0 -0
  194. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/.runtime/.gitkeep +0 -0
  195. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/__init__.py +0 -0
  196. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/linux-hotkeys/README.md +0 -0
  197. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/linux-hotkeys/toggle-autocorrect.sh +0 -0
  198. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/linux-hotkeys/toggle-transcription.sh +0 -0
  199. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/linux-hotkeys/toggle-voice-edit.sh +0 -0
  200. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/macos-hotkeys/README.md +0 -0
  201. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/macos-hotkeys/skhd-config-example +0 -0
  202. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/macos-hotkeys/toggle-autocorrect.sh +0 -0
  203. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/macos-hotkeys/toggle-transcription.sh +0 -0
  204. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/macos-hotkeys/toggle-voice-edit.sh +0 -0
  205. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/nvidia-asr-server/README.md +0 -0
  206. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/nvidia-asr-server/pyproject.toml +0 -0
  207. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/nvidia-asr-server/server.py +0 -0
  208. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/nvidia-asr-server/shell.nix +0 -0
  209. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/nvidia-asr-server/uv.lock +0 -0
  210. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/run-openwakeword.sh +0 -0
  211. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/setup-linux-hotkeys.sh +0 -0
  212. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/setup-linux.sh +0 -0
  213. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/setup-macos-hotkeys.sh +0 -0
  214. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/setup-macos.sh +0 -0
  215. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/setup-windows.ps1 +0 -0
  216. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/start-all-services-windows.ps1 +0 -0
  217. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/scripts/start-all-services.sh +0 -0
  218. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/__init__.py +0 -0
  219. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/cli.py +0 -0
  220. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/common.py +0 -0
  221. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/model_manager.py +0 -0
  222. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/model_registry.py +0 -0
  223. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/proxy/__init__.py +0 -0
  224. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/proxy/api.py +0 -0
  225. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/streaming.py +0 -0
  226. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/__init__.py +0 -0
  227. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/api.py +0 -0
  228. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/backends/__init__.py +0 -0
  229. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/backends/base.py +0 -0
  230. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/backends/kokoro.py +0 -0
  231. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/backends/piper.py +0 -0
  232. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/model_manager.py +0 -0
  233. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/model_registry.py +0 -0
  234. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/tts/wyoming_handler.py +0 -0
  235. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/__init__.py +0 -0
  236. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/api.py +0 -0
  237. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/backends/__init__.py +0 -0
  238. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/backends/base.py +0 -0
  239. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/backends/faster_whisper.py +0 -0
  240. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/backends/mlx.py +0 -0
  241. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/backends/transformers.py +0 -0
  242. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/languages.py +0 -0
  243. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/model_manager.py +0 -0
  244. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/model_registry.py +0 -0
  245. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/server/whisper/wyoming_handler.py +0 -0
  246. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/services/__init__.py +0 -0
  247. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/services/_wyoming_utils.py +0 -0
  248. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/services/asr.py +0 -0
  249. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/services/llm.py +0 -0
  250. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/services/tts.py +0 -0
  251. {agent_cli-0.95.10 → agent_cli-0.95.12}/agent_cli/services/wake_word.py +0 -0
  252. {agent_cli-0.95.10 → agent_cli-0.95.12}/docker/docker-compose.yml +0 -0
  253. {agent_cli-0.95.10 → agent_cli-0.95.12}/docker/memory-proxy.Dockerfile +0 -0
  254. {agent_cli-0.95.10 → agent_cli-0.95.12}/docker/rag-proxy.Dockerfile +0 -0
  255. {agent_cli-0.95.10 → agent_cli-0.95.12}/docker/transcribe-proxy.Dockerfile +0 -0
  256. {agent_cli-0.95.10 → agent_cli-0.95.12}/docker/tts.Dockerfile +0 -0
  257. {agent_cli-0.95.10 → agent_cli-0.95.12}/docker/whisper.Dockerfile +0 -0
  258. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/CNAME +0 -0
  259. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/architecture/index.md +0 -0
  260. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/architecture/memory.md +0 -0
  261. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/architecture/rag.md +0 -0
  262. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/assistant.md +0 -0
  263. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/autocorrect.md +0 -0
  264. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/chat.md +0 -0
  265. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/config.md +0 -0
  266. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/daemon.md +0 -0
  267. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/dev.md +0 -0
  268. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/diarize-live-session.md +0 -0
  269. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/index.md +0 -0
  270. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/install-extras.md +0 -0
  271. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/install-hotkeys.md +0 -0
  272. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/install-services.md +0 -0
  273. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/memory.md +0 -0
  274. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/rag-proxy.md +0 -0
  275. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/server/index.md +0 -0
  276. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/server/transcribe-proxy.md +0 -0
  277. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/server/tts.md +0 -0
  278. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/server/whisper.md +0 -0
  279. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/speak.md +0 -0
  280. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/speakers.md +0 -0
  281. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/start-services.md +0 -0
  282. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/transcribe-live.md +0 -0
  283. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/transcribe.md +0 -0
  284. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/commands/voice-edit.md +0 -0
  285. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/configuration.md +0 -0
  286. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/iOS_Shortcut_Guide.md +0 -0
  287. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/installation/docker.md +0 -0
  288. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/installation/linux.md +0 -0
  289. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/installation/nixos.md +0 -0
  290. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/installation/windows.md +0 -0
  291. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/logo-avatar.svg +0 -0
  292. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/logo-clean.svg +0 -0
  293. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/overrides/partials/integrations/analytics/custom.html +0 -0
  294. {agent_cli-0.95.10 → agent_cli-0.95.12}/docs/run_markdown_code_runner.py +0 -0
  295. {agent_cli-0.95.10 → agent_cli-0.95.12}/example.agent-cli-config.toml +0 -0
  296. {agent_cli-0.95.10 → agent_cli-0.95.12}/justfile +0 -0
  297. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Package.resolved +0 -0
  298. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Package.swift +0 -0
  299. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/README.md +0 -0
  300. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Resources/AgentCLI.entitlements +0 -0
  301. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Resources/Info.plist +0 -0
  302. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Resources/dmg-background.svg +0 -0
  303. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AgentCLIApp.swift +0 -0
  304. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AgentCommand.swift +0 -0
  305. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AgentCommandRunner.swift +0 -0
  306. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AgentRuntime.swift +0 -0
  307. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AppDelegate.swift +0 -0
  308. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AppMetadata.swift +0 -0
  309. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/AppUpdater.swift +0 -0
  310. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/BootstrapState.swift +0 -0
  311. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/CommandResult.swift +0 -0
  312. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/ConfigurableHotkeyController.swift +0 -0
  313. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/FocusedTextTarget.swift +0 -0
  314. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/LoginItemController.swift +0 -0
  315. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/MenuBarIcon.swift +0 -0
  316. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/RecentTranscriptionReader.swift +0 -0
  317. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/RecordingIndicatorController.swift +0 -0
  318. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/RecordingSoundSettings.swift +0 -0
  319. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/RuntimeSettings.swift +0 -0
  320. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/Shortcuts.swift +0 -0
  321. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/TranscriptPasteController.swift +0 -0
  322. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/TranscriptionSettings.swift +0 -0
  323. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Sources/AgentCLI/VoiceLevelOverlay.swift +0 -0
  324. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Tests/AgentCLITests/AgentCommandTests.swift +0 -0
  325. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Tests/AgentCLITests/LoginItemControllerTests.swift +0 -0
  326. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Tests/AgentCLITests/RecentTranscriptionReaderTests.swift +0 -0
  327. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Tests/AgentCLITests/RecordingIndicatorControllerTests.swift +0 -0
  328. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/AgentCLI/Tests/AgentCLITests/ShortcutDefaultsTests.swift +0 -0
  329. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/build-macos-app.sh +0 -0
  330. {agent_cli-0.95.10 → agent_cli-0.95.12}/macos/test-macos-app-e2e.sh +0 -0
  331. {agent_cli-0.95.10 → agent_cli-0.95.12}/pyproject.toml +0 -0
  332. {agent_cli-0.95.10 → agent_cli-0.95.12}/reddit.md +0 -0
  333. {agent_cli-0.95.10 → agent_cli-0.95.12}/shell.nix +0 -0
  334. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/__init__.py +0 -0
  335. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/__init__.py +0 -0
  336. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_fix_my_text.py +0 -0
  337. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_interactive.py +0 -0
  338. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_interactive_extra.py +0 -0
  339. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_memory_add.py +0 -0
  340. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_speak.py +0 -0
  341. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_speak_e2e.py +0 -0
  342. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_speakers.py +0 -0
  343. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_transcribe.py +0 -0
  344. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_transcribe_agent.py +0 -0
  345. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_transcribe_e2e.py +0 -0
  346. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_transcribe_live.py +0 -0
  347. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_transcribe_recovery.py +0 -0
  348. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_tts_common.py +0 -0
  349. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_tts_common_extra.py +0 -0
  350. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_voice_agent_common.py +0 -0
  351. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_voice_edit.py +0 -0
  352. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_voice_edit_e2e.py +0 -0
  353. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/agents/test_wake_word_assistant.py +0 -0
  354. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/conftest.py +0 -0
  355. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/__init__.py +0 -0
  356. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/test_audio.py +0 -0
  357. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/test_audio_format.py +0 -0
  358. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/test_chroma.py +0 -0
  359. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/test_sse.py +0 -0
  360. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/test_vad.py +0 -0
  361. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/core/test_watch.py +0 -0
  362. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/__init__.py +0 -0
  363. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_cleanup.py +0 -0
  364. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_cli.py +0 -0
  365. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_coding_agents.py +0 -0
  366. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_editors.py +0 -0
  367. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_hooks.py +0 -0
  368. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_launch.py +0 -0
  369. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_project.py +0 -0
  370. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_terminals.py +0 -0
  371. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_verification.py +0 -0
  372. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/dev/test_worktree.py +0 -0
  373. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/install/__init__.py +0 -0
  374. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/install/test_extras.py +0 -0
  375. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/install/test_launchd.py +0 -0
  376. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/__init__.py +0 -0
  377. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_api_health.py +0 -0
  378. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_api_integration_liveish.py +0 -0
  379. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_client.py +0 -0
  380. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_engine.py +0 -0
  381. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_files.py +0 -0
  382. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_filters.py +0 -0
  383. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_git_integration.py +0 -0
  384. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_indexer.py +0 -0
  385. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_memory_integration.py +0 -0
  386. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_proxy_passthrough.py +0 -0
  387. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_store.py +0 -0
  388. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/memory/test_utils.py +0 -0
  389. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/mocks/__init__.py +0 -0
  390. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/mocks/audio.py +0 -0
  391. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/mocks/llm.py +0 -0
  392. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/mocks/wyoming.py +0 -0
  393. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/__init__.py +0 -0
  394. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_api.py +0 -0
  395. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_engine.py +0 -0
  396. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_history.py +0 -0
  397. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_indexer.py +0 -0
  398. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_indexing.py +0 -0
  399. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_rag_client.py +0 -0
  400. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_rag_integration_liveish.py +0 -0
  401. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_rag_proxy_passthrough.py +0 -0
  402. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_retriever.py +0 -0
  403. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_store.py +0 -0
  404. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/rag/test_utils.py +0 -0
  405. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_alignment.py +0 -0
  406. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_api.py +0 -0
  407. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_api_integration.py +0 -0
  408. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_asr.py +0 -0
  409. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_asr_recovery.py +0 -0
  410. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_audio_e2e.py +0 -0
  411. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_cli.py +0 -0
  412. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_config.py +0 -0
  413. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_config_cmd.py +0 -0
  414. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_daemon.py +0 -0
  415. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_diarization.py +0 -0
  416. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_diarize_live_session.py +0 -0
  417. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_docs_gen.py +0 -0
  418. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_env_vars.py +0 -0
  419. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_faster_whisper_backend.py +0 -0
  420. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_json_output.py +0 -0
  421. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_llm.py +0 -0
  422. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_llm_gemini.py +0 -0
  423. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_memory_tools.py +0 -0
  424. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_mlx_backend.py +0 -0
  425. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_process_manager.py +0 -0
  426. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_requires_extras.py +0 -0
  427. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_server_streaming.py +0 -0
  428. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_server_tts.py +0 -0
  429. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_server_whisper.py +0 -0
  430. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_services.py +0 -0
  431. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_speaker_identity.py +0 -0
  432. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_tools.py +0 -0
  433. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_transformers_backend.py +0 -0
  434. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_tts.py +0 -0
  435. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_update_cask.py +0 -0
  436. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_utils.py +0 -0
  437. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_wake_word.py +0 -0
  438. {agent_cli-0.95.10 → agent_cli-0.95.12}/tests/test_wyoming_utils.py +0 -0
  439. {agent_cli-0.95.10 → agent_cli-0.95.12}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  cask "agent-cli" do
2
- version "0.95.9"
3
- sha256 "b2d7dd26b67fceb32db31d5506c0890f9c879f56d049e6fd051fac151b68a300"
2
+ version "0.95.11"
3
+ sha256 "01325c0381270bae9a76528dc54585337274087d4890c0db4078406289ef6323"
4
4
 
5
5
  url "https://github.com/basnijholt/agent-cli/releases/download/v#{version}/AgentCLI.dmg"
6
6
  name "Agent CLI"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-cli
3
- Version: 0.95.10
3
+ Version: 0.95.12
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>
@@ -157,6 +157,17 @@ Since then I have expanded the tool with many more features, all focused on loca
157
157
 
158
158
  ## Quick Start
159
159
 
160
+ ### Prefer the macOS menu bar app?
161
+
162
+ Install the native AgentCLI app with Homebrew:
163
+
164
+ ```bash
165
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
166
+ brew install --cask agent-cli
167
+ ```
168
+
169
+ The app provides global shortcuts, a menu bar UI, automatic local Whisper setup on first transcription, and a private bundled `agent-cli` runtime. See the [macOS app guide](docs/installation/macos-app.md) for setup, updates, and uninstall instructions.
170
+
160
171
  ### Just want the CLI tool?
161
172
 
162
173
  If you already have AI services running (or plan to use OpenAI), simply install:
@@ -247,6 +258,7 @@ The setup scripts automatically install:
247
258
  - [Step 2: Run the Setup Script](#step-2-run-the-setup-script)
248
259
  - [Step 3: Start All Services](#step-3-start-all-services)
249
260
  - [Step 4: Test Your Installation](#step-4-test-your-installation)
261
+ - [macOS Menu Bar App](#macos-menu-bar-app)
250
262
  - [System Integration](#system-integration)
251
263
  - [macOS Hotkeys](#macos-hotkeys)
252
264
  - [Linux Hotkeys](#linux-hotkeys)
@@ -352,6 +364,28 @@ source .venv/bin/activate # On Windows: .venv\Scripts\activate
352
364
 
353
365
  </details>
354
366
 
367
+ ## macOS Menu Bar App
368
+
369
+ AgentCLI is also available as a native macOS menu bar app for voice workflows that should work from any app without keeping a terminal open.
370
+
371
+ Install it with Homebrew:
372
+
373
+ ```bash
374
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
375
+ brew install --cask agent-cli
376
+ ```
377
+
378
+ The app is a SwiftUI wrapper around the same `agent-cli` commands. It bundles `uv`, installs a private `agent-cli[audio,llm]` runtime in your Application Support folder on first use, and starts the local Whisper daemon automatically the first time you transcribe.
379
+
380
+ Default shortcuts:
381
+
382
+ - **`Fn+Space`** - Toggle transcription
383
+ - **`Fn`** - Record while held and insert the transcript
384
+ - **`Cmd+Shift+A`** - Autocorrect clipboard text
385
+ - **`Cmd+Shift+V`** - Start voice edit
386
+
387
+ You can change shortcuts, enable **Start at Login**, or switch to a user-installed `agent-cli` runtime from the app's **Settings...** screen. See the [macOS app guide](docs/installation/macos-app.md) for details.
388
+
355
389
  ## System Integration
356
390
 
357
391
  Want system-wide hotkeys? You'll need the repository for the setup scripts:
@@ -53,6 +53,17 @@ Since then I have expanded the tool with many more features, all focused on loca
53
53
 
54
54
  ## Quick Start
55
55
 
56
+ ### Prefer the macOS menu bar app?
57
+
58
+ Install the native AgentCLI app with Homebrew:
59
+
60
+ ```bash
61
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
62
+ brew install --cask agent-cli
63
+ ```
64
+
65
+ The app provides global shortcuts, a menu bar UI, automatic local Whisper setup on first transcription, and a private bundled `agent-cli` runtime. See the [macOS app guide](docs/installation/macos-app.md) for setup, updates, and uninstall instructions.
66
+
56
67
  ### Just want the CLI tool?
57
68
 
58
69
  If you already have AI services running (or plan to use OpenAI), simply install:
@@ -143,6 +154,7 @@ The setup scripts automatically install:
143
154
  - [Step 2: Run the Setup Script](#step-2-run-the-setup-script)
144
155
  - [Step 3: Start All Services](#step-3-start-all-services)
145
156
  - [Step 4: Test Your Installation](#step-4-test-your-installation)
157
+ - [macOS Menu Bar App](#macos-menu-bar-app)
146
158
  - [System Integration](#system-integration)
147
159
  - [macOS Hotkeys](#macos-hotkeys)
148
160
  - [Linux Hotkeys](#linux-hotkeys)
@@ -248,6 +260,28 @@ source .venv/bin/activate # On Windows: .venv\Scripts\activate
248
260
 
249
261
  </details>
250
262
 
263
+ ## macOS Menu Bar App
264
+
265
+ AgentCLI is also available as a native macOS menu bar app for voice workflows that should work from any app without keeping a terminal open.
266
+
267
+ Install it with Homebrew:
268
+
269
+ ```bash
270
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
271
+ brew install --cask agent-cli
272
+ ```
273
+
274
+ The app is a SwiftUI wrapper around the same `agent-cli` commands. It bundles `uv`, installs a private `agent-cli[audio,llm]` runtime in your Application Support folder on first use, and starts the local Whisper daemon automatically the first time you transcribe.
275
+
276
+ Default shortcuts:
277
+
278
+ - **`Fn+Space`** - Toggle transcription
279
+ - **`Fn`** - Record while held and insert the transcript
280
+ - **`Cmd+Shift+A`** - Autocorrect clipboard text
281
+ - **`Cmd+Shift+V`** - Start voice edit
282
+
283
+ You can change shortcuts, enable **Start at Login**, or switch to a user-installed `agent-cli` runtime from the app's **Settings...** screen. See the [macOS app guide](docs/installation/macos-app.md) for details.
284
+
251
285
  ## System Integration
252
286
 
253
287
  Want system-wide hotkeys? You'll need the repository for the setup scripts:
@@ -17,7 +17,18 @@ Before you begin, ensure you have:
17
17
 
18
18
  ## Installation
19
19
 
20
- ### Option 1: CLI Tool Only
20
+ ### Option 1: macOS Menu Bar App
21
+
22
+ For the native Mac app with global shortcuts and automatic local Whisper setup:
23
+
24
+ ```bash
25
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
26
+ brew install --cask agent-cli
27
+ ```
28
+
29
+ See: [macOS Menu Bar App](installation/macos-app.md)
30
+
31
+ ### Option 2: CLI Tool Only
21
32
 
22
33
  If you already have AI services set up or plan to use cloud services (OpenAI/Gemini):
23
34
 
@@ -33,7 +44,7 @@ pip install agent-cli
33
44
  > The `-p 3.13` flag is required because some dependencies don't support Python 3.14 yet.
34
45
  > See [uv issue #8206](https://github.com/astral-sh/uv/issues/8206) for details.
35
46
 
36
- ### Option 2: Full Local Setup
47
+ ### Option 3: Full Local Setup
37
48
 
38
49
  For a complete local setup with all AI services:
39
50
 
@@ -138,6 +149,7 @@ For detailed installation instructions, see the platform-specific guides:
138
149
 
139
150
  | Platform | Guide | Notes |
140
151
  |----------|-------|-------|
152
+ | :fontawesome-brands-apple: **macOS app** | [macOS App](installation/macos-app.md) | Native menu bar app |
141
153
  | :fontawesome-brands-apple: **macOS** | [macOS Setup](installation/macos.md) | Full Metal GPU acceleration |
142
154
  | :fontawesome-brands-linux: **Linux** | [Linux Setup](installation/linux.md) | NVIDIA GPU support |
143
155
  | :simple-nixos: **NixOS** | [NixOS Setup](installation/nixos.md) | Declarative configuration |
@@ -69,6 +69,17 @@ Since then I have expanded the tool with many more features, all focused on loca
69
69
 
70
70
  ## Quick Start
71
71
 
72
+ ### Prefer the macOS app?
73
+
74
+ Install the native menu bar app with Homebrew:
75
+
76
+ ```bash
77
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
78
+ brew install --cask agent-cli
79
+ ```
80
+
81
+ The app provides global shortcuts, a menu bar UI, automatic local Whisper setup, and a private bundled `agent-cli` runtime. See the [macOS app guide](installation/macos-app.md).
82
+
72
83
  ### Just want the CLI tool?
73
84
 
74
85
  If you already have AI services running (or plan to use OpenAI):
@@ -129,6 +140,7 @@ The setup automatically installs:
129
140
  ## Documentation
130
141
 
131
142
  - [Getting Started](getting-started.md) - Installation and first steps
143
+ - [macOS App](installation/macos-app.md) - Native menu bar app and Homebrew cask
132
144
  - [Configuration](configuration.md) - All configuration options
133
145
  - [Commands](commands/index.md) - CLI reference
134
146
  - [System Integration](system-integration.md) - Hotkeys and system setup
@@ -10,7 +10,8 @@ Choose the best installation method for your platform and performance needs.
10
10
 
11
11
  | Platform | Recommended Method | GPU Support | Performance |
12
12
  | ---------------- | ------------------------------ | ------------- | ----------- |
13
- | **macOS** | [Native Setup](macos.md) | ✅ Metal GPU | Best |
13
+ | **macOS app** | [Menu Bar App](macos-app.md) | ✅ Metal GPU | Best |
14
+ | **macOS CLI** | [Native Setup](macos.md) | ✅ Metal GPU | Best |
14
15
  | **Linux** | [Native Setup](linux.md) | ✅ NVIDIA GPU | Best |
15
16
  | **NixOS** | [System Integration](nixos.md) | ✅ NVIDIA GPU | Best |
16
17
  | **Any Platform** | [Docker Setup](docker.md) | ⚠️ Limited\* | Good |
@@ -20,7 +21,18 @@ Choose the best installation method for your platform and performance needs.
20
21
 
21
22
  ## Installation Methods
22
23
 
23
- ### 🍎 macOS Native (Recommended)
24
+ ### 🍎 macOS Menu Bar App
25
+
26
+ **Best desktop workflow for voice transcription and clipboard actions**
27
+
28
+ - Native menu bar app with global shortcuts
29
+ - Private bundled `agent-cli` runtime
30
+ - Automatic local Whisper setup on first transcription
31
+ - Installable with Homebrew Cask
32
+
33
+ 👉 [Follow macOS App Guide](macos-app.md)
34
+
35
+ ### 🍎 macOS Native CLI
24
36
 
25
37
  **Best performance with Metal GPU acceleration**
26
38
 
@@ -0,0 +1,94 @@
1
+ ---
2
+ icon: lucide/panel-top
3
+ ---
4
+
5
+ # macOS Menu Bar App
6
+
7
+ Agent CLI also ships as a native macOS menu bar app for voice workflows that should be available from any app without keeping a terminal open.
8
+
9
+ The app is a SwiftUI wrapper around the same `agent-cli` commands. It bundles `uv`, installs a private `agent-cli[audio,llm]` runtime in your Application Support folder on first use, and starts the local Whisper daemon automatically the first time you transcribe.
10
+
11
+ ## Requirements
12
+
13
+ - Apple Silicon Mac
14
+ - macOS 13 Ventura or later
15
+ - Microphone permission for transcription
16
+ - Accessibility permission if you want AgentCLI to insert text into other apps
17
+
18
+ ## Install with Homebrew
19
+
20
+ Install the signed app release with the Homebrew cask:
21
+
22
+ ```bash
23
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
24
+ brew install --cask agent-cli
25
+ ```
26
+
27
+ Then open **AgentCLI** from `/Applications` or Spotlight.
28
+
29
+ If you already cloned the repository and want to install the cask from the local checkout:
30
+
31
+ ```bash
32
+ brew install --cask ./Casks/agent-cli.rb
33
+ ```
34
+
35
+ ## First Launch
36
+
37
+ 1. Open **AgentCLI**.
38
+ 2. Approve macOS microphone permission when prompted.
39
+ 3. Use the menu bar icon to start transcription, autocorrect clipboard text, or open Settings.
40
+ 4. Grant Accessibility permission in System Settings if auto-insert or clipboard automation is blocked.
41
+
42
+ The first transcription can take longer because AgentCLI installs the private CLI runtime, ensures the Whisper launchd daemon is available, and downloads the speech model lazily.
43
+
44
+ ## Default Shortcuts
45
+
46
+ | Shortcut | Action |
47
+ |----------|--------|
48
+ | `Fn+Space` | Toggle transcription |
49
+ | `Fn` | Record while held and insert the transcript |
50
+ | `Cmd+Shift+A` | Autocorrect clipboard text |
51
+ | `Cmd+Shift+V` | Start voice edit |
52
+
53
+ Open **Settings...** from the menu bar app to change shortcuts, enable **Start at Login**, or switch runtime modes.
54
+
55
+ ## Runtime Modes
56
+
57
+ By default, the app manages its own private `agent-cli` install so the menu bar workflow is zero-config and does not depend on your shell PATH.
58
+
59
+ If you already manage `agent-cli` yourself, enable **Use User-Installed agent-cli** in Settings. AgentCLI will then run the `agent-cli` executable found on PATH and use your normal configuration.
60
+
61
+ ## Updates
62
+
63
+ The app uses Sparkle for direct updates. Choose **Check for Updates...** from the menu bar app or Settings to check for a newer signed release.
64
+
65
+ If you installed with Homebrew, you can also update through Homebrew:
66
+
67
+ ```bash
68
+ brew update
69
+ brew upgrade --cask agent-cli
70
+ ```
71
+
72
+ ## Uninstall
73
+
74
+ ```bash
75
+ brew uninstall --cask agent-cli
76
+ ```
77
+
78
+ To remove app data, launch agents, logs, and preferences as well:
79
+
80
+ ```bash
81
+ brew uninstall --zap --cask agent-cli
82
+ ```
83
+
84
+ ## Build from Source
85
+
86
+ From the repository root:
87
+
88
+ ```bash
89
+ ./macos/build-macos-app.sh --install
90
+ ```
91
+
92
+ This builds the app, copies it to `/Applications/AgentCLI.app`, and opens it.
93
+
94
+ For packaging and release details, see the [macOS app README](https://github.com/basnijholt/agent-cli/blob/main/macos/AgentCLI/README.md).
@@ -9,6 +9,9 @@ Native macOS setup with full Metal GPU acceleration for optimal performance.
9
9
  > [!TIP]
10
10
  > **🍎 Recommended for macOS** — ~10x better performance than Docker via Metal GPU acceleration.
11
11
 
12
+ > [!NOTE]
13
+ > Prefer a menu bar app with global shortcuts and no terminal session? See the [macOS Menu Bar App](macos-app.md), which can be installed with Homebrew.
14
+
12
15
  ## Prerequisites
13
16
 
14
17
  - macOS 12 Monterey or later
@@ -12,6 +12,17 @@ Agent CLI is designed to work with system-wide hotkeys, allowing you to trigger
12
12
 
13
13
  ## macOS Setup
14
14
 
15
+ ### Native Menu Bar App
16
+
17
+ For the easiest macOS hotkey workflow, install the native AgentCLI menu bar app:
18
+
19
+ ```bash
20
+ brew tap basnijholt/agent-cli https://github.com/basnijholt/agent-cli
21
+ brew install --cask agent-cli
22
+ ```
23
+
24
+ The app registers global shortcuts itself and can manage a private `agent-cli` runtime. See the [macOS app guide](installation/macos-app.md).
25
+
15
26
  ### Automated Setup (Recommended)
16
27
 
17
28
  ```bash
@@ -0,0 +1,10 @@
1
+ import SwiftUI
2
+
3
+ struct VoiceStatusMenuItem: View {
4
+ let runner: AgentCommandRunner
5
+
6
+ var body: some View {
7
+ Text("Voice: \(runner.menuStatusMessage)")
8
+ .lineLimit(1)
9
+ }
10
+ }
@@ -0,0 +1,41 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="yes"?>
2
+ <rss xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle" version="2.0">
3
+ <channel>
4
+ <title>Agent CLI Updates</title>
5
+ <link>https://github.com/basnijholt/agent-cli</link>
6
+ <description>Signed Agent CLI macOS app updates.</description>
7
+ <item>
8
+ <title>0.95.11</title>
9
+ <pubDate>Fri, 29 May 2026 03:31:10 +0000</pubDate>
10
+ <link>https://github.com/basnijholt/agent-cli</link>
11
+ <sparkle:version>169</sparkle:version>
12
+ <sparkle:shortVersionString>0.95.11</sparkle:shortVersionString>
13
+ <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
14
+ <sparkle:hardwareRequirements>arm64</sparkle:hardwareRequirements>
15
+ <description sparkle:format="markdown"><![CDATA[## What’s Changed
16
+
17
+ * Fix macOS bootstrap menu refresh (#535) @basnijholt
18
+
19
+ ]]></description>
20
+ <enclosure url="https://github.com/basnijholt/agent-cli/releases/download/v0.95.11/AgentCLI.zip" length="22741421" type="application/octet-stream" sparkle:edSignature="fiMYQqjgxOE/xrXIaa47hP4YHwVvGrq1dy81hMmRCaFGWoU4T6ECg1pmLIt4JY1+JzmCJMC0enXkVTAipBVaCw=="/>
21
+ </item>
22
+ <item>
23
+ <title>0.95.10</title>
24
+ <pubDate>Fri, 29 May 2026 03:03:43 +0000</pubDate>
25
+ <link>https://github.com/basnijholt/agent-cli</link>
26
+ <sparkle:version>168</sparkle:version>
27
+ <sparkle:shortVersionString>0.95.10</sparkle:shortVersionString>
28
+ <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
29
+ <sparkle:hardwareRequirements>arm64</sparkle:hardwareRequirements>
30
+ <description sparkle:format="markdown"><![CDATA[## What’s Changed
31
+
32
+ * Add Sparkle updater to macOS app (#534) @basnijholt
33
+ * Repair stale Whisper daemon bootstrap (#533) @basnijholt
34
+ * Fix macOS menu refresh during voice warmup (#532) @basnijholt
35
+ * Fix Windows Swift source decoding (#531) @basnijholt
36
+
37
+ ]]></description>
38
+ <enclosure url="https://github.com/basnijholt/agent-cli/releases/download/v0.95.10/AgentCLI.zip" length="22741696" type="application/octet-stream" sparkle:edSignature="ojRVLbvdApEG2RyQMg9KDcZrYvraLyhso3tA4hJ4fldrPYmDPiX927Tevv18s50S2aCvdtjZ3+jdbiXMk+WBCw=="/>
39
+ </item>
40
+ </channel>
41
+ </rss>
@@ -570,15 +570,29 @@ def test_macos_app_animates_all_preparing_statuses_with_fixed_width_timer() -> N
570
570
  assert "elapsedSeconds: bootstrapElapsedSeconds" in source
571
571
 
572
572
 
573
+ def test_macos_app_shows_voice_status_as_supported_menu_text() -> None:
574
+ """The status row should be visible in MenuBarExtra's SwiftUI menu content."""
575
+ source = swift_source()
576
+ voice_status = read_swift_source_file(SWIFT_SOURCE_DIR / "VoiceStatusMenuItem.swift")
577
+
578
+ assert "VoiceStatusMenuItem(runner: runner)" in source
579
+ assert "struct VoiceStatusMenuItem: View" in voice_status
580
+ assert 'Text("Voice: \\(runner.menuStatusMessage)")' in voice_status
581
+ assert "NSViewRepresentable" not in voice_status
582
+ assert "NSTextField" not in voice_status
583
+
584
+
573
585
  def test_macos_app_updates_bootstrap_status_without_rebuilding_menu_tree() -> None:
574
- """Bootstrap animation should keep updating without refreshing the whole menu."""
586
+ """Bootstrap animation should not refresh the whole menu every second."""
575
587
  source = swift_source()
588
+ voice_status = read_swift_source_file(SWIFT_SOURCE_DIR / "VoiceStatusMenuItem.swift")
576
589
 
577
590
  assert "VoiceStatusMenuItem(runner: runner)" in source
578
- assert 'Text("Voice: \\(runner.menuStatusMessage)")' not in source
579
- assert "struct VoiceStatusMenuItem: View" in source
580
- assert 'Text("Voice: \\(statusMessage)")' in source
581
- assert ".onReceive(statusRefreshTimer)" in source
591
+ assert 'Text("Voice: \\(runner.menuStatusMessage)")' in voice_status
592
+ assert "Timer.publish" not in voice_status
593
+ assert "Timer(timeInterval:" not in voice_status
594
+ assert "@State" not in voice_status
595
+ assert ".onReceive" not in voice_status
582
596
  assert "@Published private var bootstrapAnimationTick" not in source
583
597
  assert "@Published private var bootstrapElapsedSeconds" not in source
584
598
  assert "private var bootstrapAnimationTick = 0" in source
@@ -18,6 +18,7 @@ nav = [
18
18
  { "Installation" = [
19
19
  { "Overview" = "installation/index.md" },
20
20
  { "macOS" = "installation/macos.md" },
21
+ { "macOS App" = "installation/macos-app.md" },
21
22
  { "Linux" = "installation/linux.md" },
22
23
  { "NixOS" = "installation/nixos.md" },
23
24
  { "Windows" = "installation/windows.md" },
@@ -1,27 +0,0 @@
1
- import Foundation
2
- import SwiftUI
3
-
4
- struct VoiceStatusMenuItem: View {
5
- let runner: AgentCommandRunner
6
-
7
- @State private var statusMessage: String
8
- private let statusRefreshTimer = Timer.publish(every: 0.8, on: .main, in: .common).autoconnect()
9
-
10
- init(runner: AgentCommandRunner) {
11
- self.runner = runner
12
- _statusMessage = State(initialValue: runner.menuStatusMessage)
13
- }
14
-
15
- var body: some View {
16
- Text("Voice: \(statusMessage)")
17
- .lineLimit(1)
18
- .onAppear(perform: refreshStatusMessage)
19
- .onReceive(statusRefreshTimer) { _ in
20
- refreshStatusMessage()
21
- }
22
- }
23
-
24
- private func refreshStatusMessage() {
25
- statusMessage = runner.menuStatusMessage
26
- }
27
- }
@@ -1,8 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <rss version="2.0" xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle">
3
- <channel>
4
- <title>Agent CLI Updates</title>
5
- <link>https://github.com/basnijholt/agent-cli</link>
6
- <description>Signed Agent CLI macOS app updates.</description>
7
- </channel>
8
- </rss>
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes