agent-cli 0.98.1__tar.gz → 0.98.2__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.
- {agent_cli-0.98.1 → agent_cli-0.98.2}/PKG-INFO +1 -1
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/cli.py +1 -1
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/backends/nemo.py +20 -1
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/server/whisper.md +8 -1
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/appcast.xml +15 -18
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_nemo_backend.py +38 -4
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude/skills/agent-cli-dev/SKILL.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude/skills/agent-cli-dev/examples.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude-plugin/README.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude-plugin/marketplace.json +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude-plugin/plugin.json +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude-plugin/skills/agent-cli-dev/SKILL.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.claude-plugin/skills/agent-cli-dev/examples.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.cursorrules +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.dockerignore +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.env.example +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/logo.svg +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/release-drafter.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/renovate.json +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/scripts/check_extras_sync.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/scripts/check_plugin_skill_sync.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/scripts/normalize_appcast.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/scripts/sync_extras.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/scripts/sync_requirements.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/automerge.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/docker.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/docs.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/markdown-code-runner.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/pytest.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/release-drafter.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/release.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.github/workflows/toc.yaml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.gitignore +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.jscpd.json +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.pre-commit-config.yaml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.prompts/docs-review.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/.prompts/pr-review.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/CLAUDE.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/LICENSE +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/LLAMA_SERVER_USAGE.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/README.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/__main__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_extras.json +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_overrides/nemo-whisper.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/.gitkeep +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/audio.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/diarization.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/faster-whisper.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/kokoro.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/llm.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/memory.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/mlx-whisper.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/nemo-whisper.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/piper.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/rag.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/server.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/speed.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/vad.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/vectordb.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/whisper-transformers.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_requirements/wyoming.txt +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/_tools.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/_voice_agent_common.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/assistant.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/autocorrect.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/chat.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/diarize_live_session.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/memory/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/memory/add.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/memory/proxy.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/rag_proxy.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/speak.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/speakers.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/transcribe.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/transcribe_live.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/agents/voice_edit.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/cli.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/config.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/config_cmd.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/constants.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/alignment.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/audio.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/audio_format.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/chroma.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/deps.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/diarization.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/openai_proxy.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/process.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/reranker.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/speaker_identity.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/sse.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/transcription_logger.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/vad.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/core/watch.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/daemon/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/daemon/cli.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/_branch_name.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/_config.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/_output.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/cleanup.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/cli.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/aider.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/base.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/claude.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/codex.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/continue_dev.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/copilot.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/cursor_agent.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/gemini.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/opencode.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/coding_agents/registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/base.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/cursor.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/emacs.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/jetbrains.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/nano.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/neovim.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/sublime.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/vim.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/vscode.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/editors/zed.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/hooks.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/launch.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/project.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/skill/SKILL.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/skill/examples.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/apple_terminal.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/base.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/gnome.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/iterm2.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/kitty.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/tmux.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/warp.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/terminals/zellij.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/dev/worktree.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/docs_gen.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/example-config.toml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/common.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/extras.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/hotkeys.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/launchd.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/service_config.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/services.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/install/systemd.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_files.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_filters.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_git.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_indexer.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_ingest.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_persistence.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_prompt.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_retrieval.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_store.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_streaming.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/_tasks.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/client.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/engine.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/entities.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/memory/models.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/opts.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/py.typed +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/_indexer.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/_indexing.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/_prompt.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/_retriever.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/_store.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/_utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/client.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/engine.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/rag/models.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/.runtime/.gitkeep +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/linux-hotkeys/README.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/linux-hotkeys/toggle-autocorrect.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/linux-hotkeys/toggle-transcription.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/linux-hotkeys/toggle-voice-edit.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/macos-hotkeys/README.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/macos-hotkeys/skhd-config-example +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/macos-hotkeys/toggle-autocorrect.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/macos-hotkeys/toggle-transcription.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/macos-hotkeys/toggle-voice-edit.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/nvidia-asr-server/README.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/nvidia-asr-server/pyproject.toml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/nvidia-asr-server/server.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/nvidia-asr-server/shell.nix +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/nvidia-asr-server/uv.lock +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/run-openwakeword.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/setup-linux-hotkeys.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/setup-linux.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/setup-macos-hotkeys.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/setup-macos.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/setup-windows.ps1 +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/start-all-services-windows.ps1 +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/scripts/start-all-services.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/common.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/model_manager.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/model_registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/proxy/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/proxy/api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/streaming.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/backends/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/backends/base.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/backends/kokoro.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/backends/piper.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/model_manager.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/model_registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/tts/wyoming_handler.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/backends/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/backends/base.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/backends/faster_whisper.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/backends/mlx.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/backends/transformers.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/languages.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/model_manager.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/model_registry.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/server/whisper/wyoming_handler.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/services/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/services/_wyoming_utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/services/asr.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/services/llm.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/services/tts.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/agent_cli/services/wake_word.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docker/docker-compose.yml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docker/memory-proxy.Dockerfile +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docker/rag-proxy.Dockerfile +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docker/transcribe-proxy.Dockerfile +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docker/tts.Dockerfile +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docker/whisper.Dockerfile +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/CNAME +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/architecture/index.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/architecture/memory.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/architecture/rag.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/assistant.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/autocorrect.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/chat.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/config.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/daemon.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/dev.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/diarize-live-session.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/index.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/install-extras.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/install-hotkeys.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/install-services.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/memory.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/rag-proxy.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/server/index.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/server/transcribe-proxy.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/server/tts.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/speak.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/speakers.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/start-services.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/transcribe-live.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/transcribe.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/commands/voice-edit.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/configuration.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/getting-started.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/iOS_Shortcut_Guide.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/index.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/docker.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/index.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/linux.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/macos-app.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/macos.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/nixos.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/installation/windows.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/logo-avatar.svg +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/logo-clean.svg +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/overrides/partials/integrations/analytics/custom.html +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/run_markdown_code_runner.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/docs/system-integration.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/example.agent-cli-config.toml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/justfile +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Package.resolved +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Package.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/README.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Resources/AgentCLI.entitlements +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Resources/Info.plist +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Resources/dmg-background.svg +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AgentCLIApp.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AgentCommand.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AgentCommandRunner.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AgentRuntime.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AppDelegate.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AppMetadata.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/AppUpdater.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/BootstrapState.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/CommandResult.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/ConfigurableHotkeyController.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/FocusedTextTarget.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/LoginItemController.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/MenuActivityStatus.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/MenuActivityStatusRow.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/MenuActivityTracker.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/MenuBarIcon.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/RecentTranscriptionReader.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/RecordingIndicatorController.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/RecordingSoundSettings.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/RuntimeSettings.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/SettingsWindowController.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/Shortcuts.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/StatusMenuController.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/TranscriptPasteController.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/TranscriptionSettings.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Sources/AgentCLI/VoiceLevelOverlay.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Tests/AgentCLITests/AgentCommandTests.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Tests/AgentCLITests/LoginItemControllerTests.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Tests/AgentCLITests/RecentTranscriptionReaderTests.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Tests/AgentCLITests/RecordingIndicatorControllerTests.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Tests/AgentCLITests/ShortcutDefaultsTests.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/AgentCLI/Tests/AgentCLITests/VoiceLevelMeterTests.swift +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/build-macos-app.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/macos/test-macos-app-e2e.sh +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/pyproject.toml +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/reddit.md +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/shell.nix +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_fix_my_text.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_interactive.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_interactive_extra.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_memory_add.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_speak.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_speak_e2e.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_speakers.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_transcribe.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_transcribe_agent.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_transcribe_e2e.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_transcribe_live.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_transcribe_recovery.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_tts_common.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_tts_common_extra.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_voice_agent_common.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_voice_edit.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_voice_edit_e2e.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/agents/test_wake_word_assistant.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/conftest.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/test_audio.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/test_audio_format.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/test_chroma.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/test_sse.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/test_vad.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/core/test_watch.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_cleanup.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_cli.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_coding_agents.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_editors.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_hooks.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_launch.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_project.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_terminals.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_verification.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/dev/test_worktree.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/install/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/install/test_extras.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/install/test_launchd.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_api_health.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_api_integration_liveish.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_client.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_engine.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_files.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_filters.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_git_integration.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_indexer.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_memory_integration.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_proxy_passthrough.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_store.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/memory/test_utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/mocks/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/mocks/audio.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/mocks/llm.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/mocks/wyoming.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/__init__.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_engine.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_history.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_indexer.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_indexing.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_rag_client.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_rag_integration_liveish.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_rag_proxy_passthrough.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_retriever.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_store.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/rag/test_utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_alignment.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_api.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_api_integration.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_asr.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_asr_recovery.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_audio_e2e.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_cli.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_config.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_config_cmd.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_daemon.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_diarization.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_diarize_live_session.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_docs_gen.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_env_vars.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_faster_whisper_backend.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_json_output.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_llm.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_llm_gemini.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_macos_app.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_memory_tools.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_mlx_backend.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_normalize_appcast.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_process_manager.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_requires_extras.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_server_streaming.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_server_tts.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_server_whisper.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_services.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_speaker_identity.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_tools.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_transformers_backend.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_tts.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_wake_word.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/tests/test_wyoming_utils.py +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/uv.lock +0 -0
- {agent_cli-0.98.1 → agent_cli-0.98.2}/zensical.toml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-cli
|
|
3
|
-
Version: 0.98.
|
|
3
|
+
Version: 0.98.2
|
|
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>
|
|
@@ -351,7 +351,7 @@ def whisper_cmd( # noqa: C901, PLR0912, PLR0915
|
|
|
351
351
|
"--device",
|
|
352
352
|
"-d",
|
|
353
353
|
help=(
|
|
354
|
-
"Compute device: `auto` (detect GPU), `cuda`, `cuda:0`, `cpu`. "
|
|
354
|
+
"Compute device: `auto` (detect GPU), `cuda`, `cuda:0`, `mps`, `cpu`. "
|
|
355
355
|
"MLX backend always uses Apple Silicon"
|
|
356
356
|
),
|
|
357
357
|
),
|
|
@@ -6,6 +6,8 @@ import asyncio
|
|
|
6
6
|
import inspect
|
|
7
7
|
import io
|
|
8
8
|
import logging
|
|
9
|
+
import os
|
|
10
|
+
import sys
|
|
9
11
|
import tempfile
|
|
10
12
|
import time
|
|
11
13
|
import wave
|
|
@@ -89,18 +91,35 @@ _state = _SubprocessState()
|
|
|
89
91
|
|
|
90
92
|
def _resolve_device(device: str) -> str:
|
|
91
93
|
"""Resolve the runtime device for NeMo inference."""
|
|
94
|
+
if device in {"auto", "mps"} and sys.platform == "darwin":
|
|
95
|
+
os.environ.setdefault("PYTORCH_ENABLE_MPS_FALLBACK", "1")
|
|
96
|
+
|
|
92
97
|
import torch # noqa: PLC0415
|
|
93
98
|
|
|
94
99
|
if device == "auto":
|
|
95
|
-
|
|
100
|
+
if torch.cuda.is_available():
|
|
101
|
+
return "cuda"
|
|
102
|
+
if _mps_available(torch):
|
|
103
|
+
return "mps"
|
|
104
|
+
return "cpu"
|
|
96
105
|
|
|
97
106
|
if device.startswith("cuda") and not torch.cuda.is_available():
|
|
98
107
|
msg = f"CUDA device requested ({device}) but CUDA is not available"
|
|
99
108
|
raise RuntimeError(msg)
|
|
100
109
|
|
|
110
|
+
if device == "mps" and not _mps_available(torch):
|
|
111
|
+
msg = "MPS device requested (mps) but MPS is not available"
|
|
112
|
+
raise RuntimeError(msg)
|
|
113
|
+
|
|
101
114
|
return device
|
|
102
115
|
|
|
103
116
|
|
|
117
|
+
def _mps_available(torch: Any) -> bool:
|
|
118
|
+
"""Return True when PyTorch exposes an available MPS backend."""
|
|
119
|
+
mps = getattr(getattr(torch, "backends", None), "mps", None)
|
|
120
|
+
return bool(mps is not None and mps.is_available())
|
|
121
|
+
|
|
122
|
+
|
|
104
123
|
def _extract_text(hypothesis: Any) -> str:
|
|
105
124
|
"""Extract a transcript string from a NeMo hypothesis-like object."""
|
|
106
125
|
if isinstance(hypothesis, str):
|
|
@@ -112,7 +112,7 @@ agent-cli server whisper \
|
|
|
112
112
|
|--------|---------|-------------|
|
|
113
113
|
| `--model, -m` | - | Whisper model(s) to load. Common models: `tiny`, `base`, `small`, `medium`, `large-v3`, `distil-large-v3`, `parakeet-tdt-0.6b-v3`, `parakeet-unified-en-0.6b` (NeMo backend). Can specify multiple for different accuracy/speed tradeoffs. Default: `large-v3` (`parakeet-unified-en-0.6b` with `--backend nemo`) |
|
|
114
114
|
| `--default-model` | - | Model to use when client doesn't specify one. Must be in the `--model` list |
|
|
115
|
-
| `--device, -d` | `auto` | Compute device: `auto` (detect GPU), `cuda`, `cuda:0`, `cpu`. MLX backend always uses Apple Silicon |
|
|
115
|
+
| `--device, -d` | `auto` | Compute device: `auto` (detect GPU), `cuda`, `cuda:0`, `mps`, `cpu`. MLX backend always uses Apple Silicon |
|
|
116
116
|
| `--compute-type` | `auto` | Precision for faster-whisper: `auto`, `float16`, `int8`, `int8_float16`. Lower precision = faster + less VRAM |
|
|
117
117
|
| `--cache-dir` | - | Custom directory for downloaded models (default: HuggingFace cache) |
|
|
118
118
|
| `--default-language` | - | Fallback language code for requests that omit `language`. Required for models that do not support language auto-detection (for example Cohere Transcribe). |
|
|
@@ -269,6 +269,13 @@ pip install "agent-cli[mlx-whisper]"
|
|
|
269
269
|
|
|
270
270
|
The server will automatically detect and use the MLX backend when available.
|
|
271
271
|
|
|
272
|
+
For NeMo/Parakeet models on Apple Silicon, `--device auto` uses PyTorch MPS when
|
|
273
|
+
available. You can also request it explicitly:
|
|
274
|
+
|
|
275
|
+
```bash
|
|
276
|
+
agent-cli server whisper --backend nemo --model parakeet-unified-en-0.6b --device mps
|
|
277
|
+
```
|
|
278
|
+
|
|
272
279
|
### HuggingFace Transformers
|
|
273
280
|
|
|
274
281
|
For loading models in safetensors format (instead of CTranslate2 `.bin` files):
|
|
@@ -4,6 +4,21 @@
|
|
|
4
4
|
<title>Agent CLI Updates</title>
|
|
5
5
|
<link>https://github.com/basnijholt/agent-cli</link>
|
|
6
6
|
<description>Signed Agent CLI macOS app updates.</description>
|
|
7
|
+
<item>
|
|
8
|
+
<title>0.98.1</title>
|
|
9
|
+
<pubDate>Thu, 04 Jun 2026 16:50:48 +0000</pubDate>
|
|
10
|
+
<link>https://github.com/basnijholt/agent-cli</link>
|
|
11
|
+
<sparkle:version>189</sparkle:version>
|
|
12
|
+
<sparkle:shortVersionString>0.98.1</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
|
+
* Add macOS transcription TTL setting (#578) @basnijholt
|
|
18
|
+
|
|
19
|
+
]]></description>
|
|
20
|
+
<enclosure url="https://github.com/basnijholt/agent-cli/releases/download/v0.98.1/AgentCLI.zip" length="22896191" type="application/octet-stream" sparkle:edSignature="4g9PD/is1i4Htq5eM2TfAUjxEaXSb7xJJDjnliSfX5TQfqeLLsItUcaCLbhpXaOKqzq0YByVg5SLSpqHK08vAw=="/>
|
|
21
|
+
</item>
|
|
7
22
|
<item>
|
|
8
23
|
<title>0.98.0</title>
|
|
9
24
|
<pubDate>Thu, 04 Jun 2026 16:25:34 +0000</pubDate>
|
|
@@ -154,23 +169,5 @@
|
|
|
154
169
|
]]></description>
|
|
155
170
|
<enclosure url="https://github.com/basnijholt/agent-cli/releases/download/v0.96.6/AgentCLI.zip" length="22742441" type="application/octet-stream" sparkle:edSignature="DriNk09uSrq9l20Pu7S+y34r4LvO+rfTHGOm1gsPDOd94FQZXqgDZxbVYYfTGgJ6eWSb0l3ljQokW6VQhJ97DQ=="/>
|
|
156
171
|
</item>
|
|
157
|
-
<item>
|
|
158
|
-
<title>0.96.5</title>
|
|
159
|
-
<pubDate>Fri, 29 May 2026 16:40:33 +0000</pubDate>
|
|
160
|
-
<link>https://github.com/basnijholt/agent-cli</link>
|
|
161
|
-
<sparkle:version>179</sparkle:version>
|
|
162
|
-
<sparkle:shortVersionString>0.96.5</sparkle:shortVersionString>
|
|
163
|
-
<sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
|
|
164
|
-
<sparkle:hardwareRequirements>arm64</sparkle:hardwareRequirements>
|
|
165
|
-
<description sparkle:format="markdown"><![CDATA[## What’s Changed
|
|
166
|
-
|
|
167
|
-
* Fix bare Fn shortcut detection on macOS (#554) @marcellaholm
|
|
168
|
-
* Fix macOS setup menu bar icon (#555) @marcellaholm
|
|
169
|
-
* Use purr for recording release sound (#556) @basnijholt
|
|
170
|
-
* Boost quiet waveform levels (#553) @basnijholt
|
|
171
|
-
|
|
172
|
-
]]></description>
|
|
173
|
-
<enclosure url="https://github.com/basnijholt/agent-cli/releases/download/v0.96.5/AgentCLI.zip" length="22738995" type="application/octet-stream" sparkle:edSignature="Jf0aoWxUGvOR6idZhELnlGf61IHrf8Kw92tcH5Xk4wC8chn3mO3OgeE+8+P2orbHC0VhszHgjMNzsGN3bZPwCg=="/>
|
|
174
|
-
</item>
|
|
175
172
|
</channel>
|
|
176
173
|
</rss>
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import io
|
|
6
|
+
import os
|
|
6
7
|
import sys
|
|
7
8
|
import wave
|
|
8
9
|
from concurrent.futures import ThreadPoolExecutor
|
|
@@ -47,16 +48,27 @@ def _install_mock_nemo(
|
|
|
47
48
|
monkeypatch.setitem(sys.modules, "nemo.collections.asr", asr_module)
|
|
48
49
|
|
|
49
50
|
|
|
50
|
-
def _install_mock_torch(
|
|
51
|
-
|
|
51
|
+
def _install_mock_torch(
|
|
52
|
+
monkeypatch: pytest.MonkeyPatch,
|
|
53
|
+
*,
|
|
54
|
+
cuda_available: bool,
|
|
55
|
+
mps_available: bool = False,
|
|
56
|
+
) -> None:
|
|
57
|
+
"""Install a minimal mock torch module exposing device availability."""
|
|
52
58
|
|
|
53
59
|
class _Cuda:
|
|
54
60
|
@staticmethod
|
|
55
61
|
def is_available() -> bool:
|
|
56
62
|
return cuda_available
|
|
57
63
|
|
|
64
|
+
class _Mps:
|
|
65
|
+
@staticmethod
|
|
66
|
+
def is_available() -> bool:
|
|
67
|
+
return mps_available
|
|
68
|
+
|
|
58
69
|
torch_module: Any = ModuleType("torch")
|
|
59
70
|
torch_module.cuda = _Cuda()
|
|
71
|
+
torch_module.backends = SimpleNamespace(mps=_Mps())
|
|
60
72
|
monkeypatch.setitem(sys.modules, "torch", torch_module)
|
|
61
73
|
|
|
62
74
|
|
|
@@ -207,15 +219,27 @@ def test_resolve_device_auto_uses_cuda_when_available(
|
|
|
207
219
|
monkeypatch: pytest.MonkeyPatch,
|
|
208
220
|
) -> None:
|
|
209
221
|
"""Ensure auto device selection prefers CUDA when available."""
|
|
210
|
-
_install_mock_torch(monkeypatch, cuda_available=True)
|
|
222
|
+
_install_mock_torch(monkeypatch, cuda_available=True, mps_available=True)
|
|
211
223
|
assert backend._resolve_device("auto") == "cuda"
|
|
212
224
|
|
|
213
225
|
|
|
226
|
+
def test_resolve_device_auto_uses_mps_when_cuda_unavailable(
|
|
227
|
+
monkeypatch: pytest.MonkeyPatch,
|
|
228
|
+
) -> None:
|
|
229
|
+
"""Ensure auto device selection uses Apple GPU when CUDA is unavailable."""
|
|
230
|
+
monkeypatch.delenv("PYTORCH_ENABLE_MPS_FALLBACK", raising=False)
|
|
231
|
+
monkeypatch.setattr(backend.sys, "platform", "darwin")
|
|
232
|
+
_install_mock_torch(monkeypatch, cuda_available=False, mps_available=True)
|
|
233
|
+
|
|
234
|
+
assert backend._resolve_device("auto") == "mps"
|
|
235
|
+
assert os.environ["PYTORCH_ENABLE_MPS_FALLBACK"] == "1"
|
|
236
|
+
|
|
237
|
+
|
|
214
238
|
def test_resolve_device_auto_falls_back_to_cpu(
|
|
215
239
|
monkeypatch: pytest.MonkeyPatch,
|
|
216
240
|
) -> None:
|
|
217
241
|
"""Ensure auto device selection falls back to CPU."""
|
|
218
|
-
_install_mock_torch(monkeypatch, cuda_available=False)
|
|
242
|
+
_install_mock_torch(monkeypatch, cuda_available=False, mps_available=False)
|
|
219
243
|
assert backend._resolve_device("auto") == "cpu"
|
|
220
244
|
|
|
221
245
|
|
|
@@ -229,6 +253,16 @@ def test_resolve_device_explicit_cuda_requires_available_cuda(
|
|
|
229
253
|
backend._resolve_device("cuda:0")
|
|
230
254
|
|
|
231
255
|
|
|
256
|
+
def test_resolve_device_explicit_mps_requires_available_mps(
|
|
257
|
+
monkeypatch: pytest.MonkeyPatch,
|
|
258
|
+
) -> None:
|
|
259
|
+
"""Ensure explicit MPS requests fail fast when MPS is unavailable."""
|
|
260
|
+
_install_mock_torch(monkeypatch, cuda_available=False, mps_available=False)
|
|
261
|
+
|
|
262
|
+
with pytest.raises(RuntimeError, match="MPS device requested"):
|
|
263
|
+
backend._resolve_device("mps")
|
|
264
|
+
|
|
265
|
+
|
|
232
266
|
def test_resolve_device_preserves_explicit_cpu(
|
|
233
267
|
monkeypatch: pytest.MonkeyPatch,
|
|
234
268
|
) -> None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|