agent-cli 0.71.0__tar.gz → 0.72.1__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.71.0 → agent_cli-0.72.1}/PKG-INFO +11 -9
- {agent_cli-0.71.0 → agent_cli-0.72.1}/README.md +7 -7
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_extras.json +2 -2
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/memory.txt +14 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/rag.txt +14 -1
- agent_cli-0.72.1/agent_cli/_requirements/vad.txt +71 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/memory/proxy.py +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/rag_proxy.py +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/deps.py +6 -3
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/vad.py +6 -24
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/install/extras.py +5 -3
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/opts.py +2 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/cli.py +3 -3
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/assistant.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/autocorrect.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/chat.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/speak.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/transcribe-daemon.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/transcribe.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/voice-edit.md +1 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/pyproject.toml +3 -1
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/core/test_vad.py +4 -4
- {agent_cli-0.71.0 → agent_cli-0.72.1}/uv.lock +21 -38
- agent_cli-0.71.0/agent_cli/_requirements/vad.txt +0 -155
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude/skills/agent-cli-dev/SKILL.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude/skills/agent-cli-dev/examples.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude-plugin/README.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude-plugin/marketplace.json +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude-plugin/plugin.json +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude-plugin/skills/agent-cli-dev/SKILL.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.claude-plugin/skills/agent-cli-dev/examples.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.cursorrules +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.dockerignore +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.env.example +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/logo.svg +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/release-drafter.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/renovate.json +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/scripts/check_extras_sync.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/scripts/sync_requirements.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/automerge.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/docker.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/docs.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/markdown-code-runner.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/pytest.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/release-drafter.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/release.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.github/workflows/toc.yaml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.gitignore +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.jscpd.json +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.pre-commit-config.yaml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.prompts/docs-review.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/.prompts/pr-review.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/CLAUDE.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/LICENSE +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/__main__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/.gitkeep +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/audio.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/faster-whisper.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/kokoro.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/llm.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/mlx-whisper.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/piper.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/server.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/speed.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_requirements/wyoming.txt +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/_tools.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/_voice_agent_common.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/assistant.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/autocorrect.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/chat.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/memory/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/memory/add.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/speak.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/transcribe.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/transcribe_daemon.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/agents/voice_edit.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/cli.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/config.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/config_cmd.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/constants.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/audio.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/audio_format.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/chroma.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/openai_proxy.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/process.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/reranker.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/sse.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/transcription_logger.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/core/watch.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/cli.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/aider.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/base.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/claude.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/codex.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/continue_dev.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/copilot.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/cursor_agent.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/gemini.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/opencode.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/coding_agents/registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/base.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/cursor.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/emacs.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/jetbrains.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/nano.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/neovim.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/sublime.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/vim.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/vscode.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/editors/zed.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/project.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/skill/SKILL.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/skill/examples.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/apple_terminal.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/base.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/gnome.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/iterm2.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/kitty.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/tmux.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/warp.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/terminals/zellij.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/dev/worktree.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/docs_gen.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/example-config.toml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/install/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/install/common.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/install/hotkeys.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/install/services.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_files.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_filters.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_git.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_indexer.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_ingest.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_persistence.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_prompt.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_retrieval.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_store.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_streaming.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/_tasks.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/client.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/engine.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/entities.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/memory/models.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/py.typed +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/_indexer.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/_indexing.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/_prompt.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/_retriever.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/_store.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/_utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/client.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/engine.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/rag/models.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/.runtime/.gitkeep +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/check_plugin_skill_sync.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/linux-hotkeys/README.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/linux-hotkeys/toggle-autocorrect.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/linux-hotkeys/toggle-transcription.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/linux-hotkeys/toggle-voice-edit.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/macos-hotkeys/README.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/macos-hotkeys/skhd-config-example +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/macos-hotkeys/toggle-autocorrect.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/macos-hotkeys/toggle-transcription.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/macos-hotkeys/toggle-voice-edit.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/nvidia-asr-server/README.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/nvidia-asr-server/pyproject.toml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/nvidia-asr-server/server.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/nvidia-asr-server/shell.nix +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/nvidia-asr-server/uv.lock +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-openwakeword.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-piper-windows.ps1 +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-piper.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-whisper-linux.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-whisper-macos.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-whisper-windows.ps1 +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run-whisper.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/run_faster_whisper_server.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/setup-linux-hotkeys.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/setup-linux.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/setup-macos-hotkeys.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/setup-macos.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/setup-windows.ps1 +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/start-all-services-windows.ps1 +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/start-all-services.sh +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/scripts/sync_extras.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/common.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/model_manager.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/model_registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/proxy/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/proxy/api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/streaming.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/backends/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/backends/base.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/backends/kokoro.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/backends/piper.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/model_manager.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/model_registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/tts/wyoming_handler.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/backends/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/backends/base.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/backends/faster_whisper.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/backends/mlx.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/languages.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/model_manager.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/model_registry.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/server/whisper/wyoming_handler.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/services/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/services/_wyoming_utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/services/asr.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/services/llm.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/services/tts.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/agent_cli/services/wake_word.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docker/docker-compose.yml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docker/transcribe-proxy.Dockerfile +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docker/tts.Dockerfile +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docker/whisper.Dockerfile +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/CNAME +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/architecture/index.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/architecture/memory.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/architecture/rag.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/config.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/dev.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/index.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/install-extras.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/install-hotkeys.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/install-services.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/memory.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/rag-proxy.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/server/index.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/server/transcribe-proxy.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/server/tts.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/server/whisper.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/commands/start-services.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/configuration.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/getting-started.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/iOS_Shortcut_Guide.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/index.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/installation/docker.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/installation/index.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/installation/linux.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/installation/macos.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/installation/nixos.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/installation/windows.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/logo-clean.svg +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/overrides/partials/integrations/analytics/custom.html +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/run_markdown_code_runner.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/docs/system-integration.md +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/example.agent-cli-config.toml +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/justfile +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/shell.nix +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_fix_my_text.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_interactive.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_interactive_extra.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_memory_add.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_speak.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_speak_e2e.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_transcribe.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_transcribe_agent.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_transcribe_daemon.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_transcribe_e2e.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_transcribe_recovery.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_tts_common.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_tts_common_extra.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_voice_agent_common.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_voice_edit.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_voice_edit_e2e.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/agents/test_wake_word_assistant.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/conftest.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/core/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/core/test_audio_format.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/core/test_chroma.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/core/test_sse.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/core/test_watch.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_cli.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_coding_agents.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_editors.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_project.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_terminals.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_verification.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/dev/test_worktree.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/install/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/install/test_extras.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_api_health.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_api_integration_liveish.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_client.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_engine.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_files.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_filters.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_git_integration.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_indexer.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_memory_integration.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_proxy_passthrough.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_store.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/memory/test_utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/mocks/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/mocks/audio.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/mocks/llm.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/mocks/wyoming.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/__init__.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_engine.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_history.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_indexer.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_indexing.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_rag_client.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_rag_integration_liveish.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_rag_proxy_passthrough.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_retriever.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_store.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/rag/test_utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_api.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_api_integration.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_asr.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_asr_recovery.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_audio_e2e.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_cli.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_config.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_config_cmd.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_docs_gen.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_env_vars.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_json_output.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_llm.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_llm_gemini.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_memory_tools.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_mlx_backend.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_process_manager.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_requires_extras.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_server_streaming.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_server_tts.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_server_whisper.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_services.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_tools.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_tts.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_wake_word.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/tests/test_wyoming_utils.py +0 -0
- {agent_cli-0.71.0 → agent_cli-0.72.1}/zensical.toml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.72.1
|
|
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>
|
|
@@ -51,6 +51,7 @@ Requires-Dist: chromadb>=0.4.22; extra == 'memory'
|
|
|
51
51
|
Requires-Dist: fastapi[standard]; extra == 'memory'
|
|
52
52
|
Requires-Dist: huggingface-hub>=0.20.0; extra == 'memory'
|
|
53
53
|
Requires-Dist: onnxruntime>=1.17.0; extra == 'memory'
|
|
54
|
+
Requires-Dist: openai>=1.0.0; extra == 'memory'
|
|
54
55
|
Requires-Dist: pyyaml>=6.0.0; extra == 'memory'
|
|
55
56
|
Requires-Dist: transformers>=4.30.0; extra == 'memory'
|
|
56
57
|
Requires-Dist: watchfiles>=0.21.0; extra == 'memory'
|
|
@@ -66,6 +67,7 @@ Requires-Dist: fastapi[standard]; extra == 'rag'
|
|
|
66
67
|
Requires-Dist: huggingface-hub>=0.20.0; extra == 'rag'
|
|
67
68
|
Requires-Dist: markitdown[docx,pdf,pptx]>=0.1.3; extra == 'rag'
|
|
68
69
|
Requires-Dist: onnxruntime>=1.17.0; extra == 'rag'
|
|
70
|
+
Requires-Dist: openai>=1.0.0; extra == 'rag'
|
|
69
71
|
Requires-Dist: transformers>=4.30.0; extra == 'rag'
|
|
70
72
|
Requires-Dist: watchfiles>=0.21.0; extra == 'rag'
|
|
71
73
|
Provides-Extra: server
|
|
@@ -79,7 +81,7 @@ Requires-Dist: pytest-mock; extra == 'test'
|
|
|
79
81
|
Requires-Dist: pytest-timeout; extra == 'test'
|
|
80
82
|
Requires-Dist: pytest>=7.0.0; extra == 'test'
|
|
81
83
|
Provides-Extra: vad
|
|
82
|
-
Requires-Dist: silero-vad>=
|
|
84
|
+
Requires-Dist: silero-vad-lite>=0.2.1; extra == 'vad'
|
|
83
85
|
Provides-Extra: wyoming
|
|
84
86
|
Requires-Dist: wyoming>=1.5.2; extra == 'wyoming'
|
|
85
87
|
Description-Content-Type: text/markdown
|
|
@@ -736,7 +738,7 @@ the `[defaults]` section of your configuration file.
|
|
|
736
738
|
╭─ General Options ──────────────────────────────────────────────────────────────────────╮
|
|
737
739
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
738
740
|
│ [env var: LOG_LEVEL] │
|
|
739
|
-
│ [default:
|
|
741
|
+
│ [default: warning] │
|
|
740
742
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
741
743
|
│ --quiet -q Suppress console output from rich. │
|
|
742
744
|
│ --json Output result as JSON (implies │
|
|
@@ -913,7 +915,7 @@ the `[defaults]` section of your configuration file.
|
|
|
913
915
|
│ [default: clipboard] │
|
|
914
916
|
│ --log-level [debug|info|warning| Set logging level. │
|
|
915
917
|
│ error] [env var: LOG_LEVEL] │
|
|
916
|
-
│ [default:
|
|
918
|
+
│ [default: warning] │
|
|
917
919
|
│ --log-file TEXT Path to a file to │
|
|
918
920
|
│ write logs to. │
|
|
919
921
|
│ --quiet -q Suppress console │
|
|
@@ -1144,7 +1146,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1144
1146
|
╭─ General Options ──────────────────────────────────────────────────────────────────────╮
|
|
1145
1147
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
1146
1148
|
│ [env var: LOG_LEVEL] │
|
|
1147
|
-
│ [default:
|
|
1149
|
+
│ [default: warning] │
|
|
1148
1150
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
1149
1151
|
│ --quiet -q Suppress console output from rich. │
|
|
1150
1152
|
│ --config TEXT Path to a TOML configuration file. │
|
|
@@ -1278,7 +1280,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1278
1280
|
│ playing through speakers. │
|
|
1279
1281
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
1280
1282
|
│ [env var: LOG_LEVEL] │
|
|
1281
|
-
│ [default:
|
|
1283
|
+
│ [default: warning] │
|
|
1282
1284
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
1283
1285
|
│ --quiet -q Suppress console output from rich. │
|
|
1284
1286
|
│ --json Output result as JSON (implies │
|
|
@@ -1479,7 +1481,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1479
1481
|
│ [default: clipboard] │
|
|
1480
1482
|
│ --log-level [debug|info|warning|erro Set logging level. │
|
|
1481
1483
|
│ r] [env var: LOG_LEVEL] │
|
|
1482
|
-
│ [default:
|
|
1484
|
+
│ [default: warning] │
|
|
1483
1485
|
│ --log-file TEXT Path to a file to write │
|
|
1484
1486
|
│ logs to. │
|
|
1485
1487
|
│ --quiet -q Suppress console output │
|
|
@@ -1699,7 +1701,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1699
1701
|
│ [default: clipboard] │
|
|
1700
1702
|
│ --log-level [debug|info|warning|erro Set logging level. │
|
|
1701
1703
|
│ r] [env var: LOG_LEVEL] │
|
|
1702
|
-
│ [default:
|
|
1704
|
+
│ [default: warning] │
|
|
1703
1705
|
│ --log-file TEXT Path to a file to write │
|
|
1704
1706
|
│ logs to. │
|
|
1705
1707
|
│ --quiet -q Suppress console output │
|
|
@@ -1935,7 +1937,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1935
1937
|
│ playing through speakers. │
|
|
1936
1938
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
1937
1939
|
│ [env var: LOG_LEVEL] │
|
|
1938
|
-
│ [default:
|
|
1940
|
+
│ [default: warning] │
|
|
1939
1941
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
1940
1942
|
│ --quiet -q Suppress console output from rich. │
|
|
1941
1943
|
│ --config TEXT Path to a TOML configuration file. │
|
|
@@ -650,7 +650,7 @@ the `[defaults]` section of your configuration file.
|
|
|
650
650
|
╭─ General Options ──────────────────────────────────────────────────────────────────────╮
|
|
651
651
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
652
652
|
│ [env var: LOG_LEVEL] │
|
|
653
|
-
│ [default:
|
|
653
|
+
│ [default: warning] │
|
|
654
654
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
655
655
|
│ --quiet -q Suppress console output from rich. │
|
|
656
656
|
│ --json Output result as JSON (implies │
|
|
@@ -827,7 +827,7 @@ the `[defaults]` section of your configuration file.
|
|
|
827
827
|
│ [default: clipboard] │
|
|
828
828
|
│ --log-level [debug|info|warning| Set logging level. │
|
|
829
829
|
│ error] [env var: LOG_LEVEL] │
|
|
830
|
-
│ [default:
|
|
830
|
+
│ [default: warning] │
|
|
831
831
|
│ --log-file TEXT Path to a file to │
|
|
832
832
|
│ write logs to. │
|
|
833
833
|
│ --quiet -q Suppress console │
|
|
@@ -1058,7 +1058,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1058
1058
|
╭─ General Options ──────────────────────────────────────────────────────────────────────╮
|
|
1059
1059
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
1060
1060
|
│ [env var: LOG_LEVEL] │
|
|
1061
|
-
│ [default:
|
|
1061
|
+
│ [default: warning] │
|
|
1062
1062
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
1063
1063
|
│ --quiet -q Suppress console output from rich. │
|
|
1064
1064
|
│ --config TEXT Path to a TOML configuration file. │
|
|
@@ -1192,7 +1192,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1192
1192
|
│ playing through speakers. │
|
|
1193
1193
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
1194
1194
|
│ [env var: LOG_LEVEL] │
|
|
1195
|
-
│ [default:
|
|
1195
|
+
│ [default: warning] │
|
|
1196
1196
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
1197
1197
|
│ --quiet -q Suppress console output from rich. │
|
|
1198
1198
|
│ --json Output result as JSON (implies │
|
|
@@ -1393,7 +1393,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1393
1393
|
│ [default: clipboard] │
|
|
1394
1394
|
│ --log-level [debug|info|warning|erro Set logging level. │
|
|
1395
1395
|
│ r] [env var: LOG_LEVEL] │
|
|
1396
|
-
│ [default:
|
|
1396
|
+
│ [default: warning] │
|
|
1397
1397
|
│ --log-file TEXT Path to a file to write │
|
|
1398
1398
|
│ logs to. │
|
|
1399
1399
|
│ --quiet -q Suppress console output │
|
|
@@ -1613,7 +1613,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1613
1613
|
│ [default: clipboard] │
|
|
1614
1614
|
│ --log-level [debug|info|warning|erro Set logging level. │
|
|
1615
1615
|
│ r] [env var: LOG_LEVEL] │
|
|
1616
|
-
│ [default:
|
|
1616
|
+
│ [default: warning] │
|
|
1617
1617
|
│ --log-file TEXT Path to a file to write │
|
|
1618
1618
|
│ logs to. │
|
|
1619
1619
|
│ --quiet -q Suppress console output │
|
|
@@ -1849,7 +1849,7 @@ uv tool install "agent-cli[vad]" -p 3.13
|
|
|
1849
1849
|
│ playing through speakers. │
|
|
1850
1850
|
│ --log-level [debug|info|warning|error] Set logging level. │
|
|
1851
1851
|
│ [env var: LOG_LEVEL] │
|
|
1852
|
-
│ [default:
|
|
1852
|
+
│ [default: warning] │
|
|
1853
1853
|
│ --log-file TEXT Path to a file to write logs to. │
|
|
1854
1854
|
│ --quiet -q Suppress console output from rich. │
|
|
1855
1855
|
│ --config TEXT Path to a TOML configuration file. │
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"wyoming": ["Wyoming protocol for ASR/TTS servers", ["wyoming"]],
|
|
3
3
|
"audio": ["Local audio recording/playback", ["numpy", "sounddevice", "wyoming"]],
|
|
4
4
|
"llm": ["LLM framework (pydantic-ai)", ["pydantic_ai"]],
|
|
5
|
-
"memory": ["Long-term memory proxy", ["chromadb", "yaml"]],
|
|
6
|
-
"rag": ["RAG proxy (ChromaDB, embeddings)", ["chromadb"]],
|
|
5
|
+
"memory": ["Long-term memory proxy", ["chromadb", "openai", "yaml"]],
|
|
6
|
+
"rag": ["RAG proxy (ChromaDB, embeddings)", ["chromadb", "openai"]],
|
|
7
7
|
"server": ["FastAPI server components", ["fastapi"]],
|
|
8
8
|
"speed": ["Audio speed adjustment (audiostretchy)", ["audiostretchy"]],
|
|
9
9
|
"piper": ["Local Piper TTS", ["piper"]],
|
|
@@ -7,6 +7,7 @@ annotated-types==0.7.0
|
|
|
7
7
|
anyio==4.12.1
|
|
8
8
|
# via
|
|
9
9
|
# httpx
|
|
10
|
+
# openai
|
|
10
11
|
# starlette
|
|
11
12
|
# watchfiles
|
|
12
13
|
attrs==25.4.0
|
|
@@ -45,7 +46,9 @@ colorama==0.4.6 ; os_name == 'nt' or sys_platform == 'win32'
|
|
|
45
46
|
coloredlogs==15.0.1
|
|
46
47
|
# via onnxruntime
|
|
47
48
|
distro==1.9.0
|
|
48
|
-
# via
|
|
49
|
+
# via
|
|
50
|
+
# openai
|
|
51
|
+
# posthog
|
|
49
52
|
dnspython==2.8.0
|
|
50
53
|
# via email-validator
|
|
51
54
|
dotenv==0.9.9
|
|
@@ -96,6 +99,7 @@ httpx==0.28.1
|
|
|
96
99
|
# chromadb
|
|
97
100
|
# fastapi
|
|
98
101
|
# fastapi-cloud-cli
|
|
102
|
+
# openai
|
|
99
103
|
huggingface-hub==0.36.0
|
|
100
104
|
# via
|
|
101
105
|
# agent-cli
|
|
@@ -115,6 +119,8 @@ importlib-resources==6.5.2
|
|
|
115
119
|
# via chromadb
|
|
116
120
|
jinja2==3.1.6
|
|
117
121
|
# via fastapi
|
|
122
|
+
jiter==0.12.0
|
|
123
|
+
# via openai
|
|
118
124
|
jsonschema==4.26.0
|
|
119
125
|
# via chromadb
|
|
120
126
|
jsonschema-specifications==2025.9.1
|
|
@@ -142,6 +148,8 @@ onnxruntime==1.20.1
|
|
|
142
148
|
# via
|
|
143
149
|
# agent-cli
|
|
144
150
|
# chromadb
|
|
151
|
+
openai==2.15.0
|
|
152
|
+
# via agent-cli
|
|
145
153
|
opentelemetry-api==1.39.1
|
|
146
154
|
# via
|
|
147
155
|
# chromadb
|
|
@@ -195,6 +203,7 @@ pydantic==2.12.5
|
|
|
195
203
|
# chromadb
|
|
196
204
|
# fastapi
|
|
197
205
|
# fastapi-cloud-cli
|
|
206
|
+
# openai
|
|
198
207
|
# pydantic-extra-types
|
|
199
208
|
# pydantic-settings
|
|
200
209
|
pydantic-core==2.41.5
|
|
@@ -281,6 +290,8 @@ six==1.17.0
|
|
|
281
290
|
# kubernetes
|
|
282
291
|
# posthog
|
|
283
292
|
# python-dateutil
|
|
293
|
+
sniffio==1.3.1
|
|
294
|
+
# via openai
|
|
284
295
|
starlette==0.50.0
|
|
285
296
|
# via fastapi
|
|
286
297
|
sympy==1.14.0
|
|
@@ -295,6 +306,7 @@ tqdm==4.67.1
|
|
|
295
306
|
# via
|
|
296
307
|
# chromadb
|
|
297
308
|
# huggingface-hub
|
|
309
|
+
# openai
|
|
298
310
|
# transformers
|
|
299
311
|
transformers==4.57.5
|
|
300
312
|
# via agent-cli
|
|
@@ -313,6 +325,7 @@ typing-extensions==4.15.0
|
|
|
313
325
|
# fastapi
|
|
314
326
|
# grpcio
|
|
315
327
|
# huggingface-hub
|
|
328
|
+
# openai
|
|
316
329
|
# opentelemetry-api
|
|
317
330
|
# opentelemetry-exporter-otlp-proto-grpc
|
|
318
331
|
# opentelemetry-sdk
|
|
@@ -7,6 +7,7 @@ annotated-types==0.7.0
|
|
|
7
7
|
anyio==4.12.1
|
|
8
8
|
# via
|
|
9
9
|
# httpx
|
|
10
|
+
# openai
|
|
10
11
|
# starlette
|
|
11
12
|
# watchfiles
|
|
12
13
|
attrs==25.4.0
|
|
@@ -61,7 +62,9 @@ cryptography==46.0.3
|
|
|
61
62
|
defusedxml==0.7.1
|
|
62
63
|
# via markitdown
|
|
63
64
|
distro==1.9.0
|
|
64
|
-
# via
|
|
65
|
+
# via
|
|
66
|
+
# openai
|
|
67
|
+
# posthog
|
|
65
68
|
dnspython==2.8.0
|
|
66
69
|
# via email-validator
|
|
67
70
|
dotenv==0.9.9
|
|
@@ -112,6 +115,7 @@ httpx==0.28.1
|
|
|
112
115
|
# chromadb
|
|
113
116
|
# fastapi
|
|
114
117
|
# fastapi-cloud-cli
|
|
118
|
+
# openai
|
|
115
119
|
huggingface-hub==0.36.0
|
|
116
120
|
# via
|
|
117
121
|
# agent-cli
|
|
@@ -131,6 +135,8 @@ importlib-resources==6.5.2
|
|
|
131
135
|
# via chromadb
|
|
132
136
|
jinja2==3.1.6
|
|
133
137
|
# via fastapi
|
|
138
|
+
jiter==0.12.0
|
|
139
|
+
# via openai
|
|
134
140
|
jsonschema==4.26.0
|
|
135
141
|
# via chromadb
|
|
136
142
|
jsonschema-specifications==2025.9.1
|
|
@@ -173,6 +179,8 @@ onnxruntime==1.20.1
|
|
|
173
179
|
# chromadb
|
|
174
180
|
# magika
|
|
175
181
|
# markitdown
|
|
182
|
+
openai==2.15.0
|
|
183
|
+
# via agent-cli
|
|
176
184
|
opentelemetry-api==1.39.1
|
|
177
185
|
# via
|
|
178
186
|
# chromadb
|
|
@@ -232,6 +240,7 @@ pydantic==2.12.5
|
|
|
232
240
|
# chromadb
|
|
233
241
|
# fastapi
|
|
234
242
|
# fastapi-cloud-cli
|
|
243
|
+
# openai
|
|
235
244
|
# pydantic-extra-types
|
|
236
245
|
# pydantic-settings
|
|
237
246
|
pydantic-core==2.41.5
|
|
@@ -322,6 +331,8 @@ six==1.17.0
|
|
|
322
331
|
# markdownify
|
|
323
332
|
# posthog
|
|
324
333
|
# python-dateutil
|
|
334
|
+
sniffio==1.3.1
|
|
335
|
+
# via openai
|
|
325
336
|
soupsieve==2.8.1
|
|
326
337
|
# via beautifulsoup4
|
|
327
338
|
starlette==0.50.0
|
|
@@ -338,6 +349,7 @@ tqdm==4.67.1
|
|
|
338
349
|
# via
|
|
339
350
|
# chromadb
|
|
340
351
|
# huggingface-hub
|
|
352
|
+
# openai
|
|
341
353
|
# transformers
|
|
342
354
|
transformers==4.57.5
|
|
343
355
|
# via agent-cli
|
|
@@ -357,6 +369,7 @@ typing-extensions==4.15.0
|
|
|
357
369
|
# fastapi
|
|
358
370
|
# grpcio
|
|
359
371
|
# huggingface-hub
|
|
372
|
+
# openai
|
|
360
373
|
# opentelemetry-api
|
|
361
374
|
# opentelemetry-exporter-otlp-proto-grpc
|
|
362
375
|
# opentelemetry-sdk
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# This file was autogenerated by uv via the following command:
|
|
2
|
+
# uv export --extra vad --no-dev --no-emit-project --no-hashes
|
|
3
|
+
annotated-types==0.7.0
|
|
4
|
+
# via pydantic
|
|
5
|
+
anyio==4.12.1
|
|
6
|
+
# via httpx
|
|
7
|
+
certifi==2026.1.4
|
|
8
|
+
# via
|
|
9
|
+
# httpcore
|
|
10
|
+
# httpx
|
|
11
|
+
click==8.3.1
|
|
12
|
+
# via
|
|
13
|
+
# typer
|
|
14
|
+
# typer-slim
|
|
15
|
+
colorama==0.4.6 ; sys_platform == 'win32'
|
|
16
|
+
# via click
|
|
17
|
+
dotenv==0.9.9
|
|
18
|
+
# via agent-cli
|
|
19
|
+
h11==0.16.0
|
|
20
|
+
# via httpcore
|
|
21
|
+
httpcore==1.0.9
|
|
22
|
+
# via httpx
|
|
23
|
+
httpx==0.28.1
|
|
24
|
+
# via agent-cli
|
|
25
|
+
idna==3.11
|
|
26
|
+
# via
|
|
27
|
+
# anyio
|
|
28
|
+
# httpx
|
|
29
|
+
markdown-it-py==4.0.0
|
|
30
|
+
# via rich
|
|
31
|
+
mdurl==0.1.2
|
|
32
|
+
# via markdown-it-py
|
|
33
|
+
psutil==7.2.1 ; sys_platform == 'win32'
|
|
34
|
+
# via agent-cli
|
|
35
|
+
pydantic==2.12.5
|
|
36
|
+
# via agent-cli
|
|
37
|
+
pydantic-core==2.41.5
|
|
38
|
+
# via pydantic
|
|
39
|
+
pygments==2.19.2
|
|
40
|
+
# via rich
|
|
41
|
+
pyperclip==1.11.0
|
|
42
|
+
# via agent-cli
|
|
43
|
+
python-dotenv==1.2.1
|
|
44
|
+
# via dotenv
|
|
45
|
+
rich==14.2.0
|
|
46
|
+
# via
|
|
47
|
+
# agent-cli
|
|
48
|
+
# typer
|
|
49
|
+
# typer-slim
|
|
50
|
+
setproctitle==1.3.7
|
|
51
|
+
# via agent-cli
|
|
52
|
+
shellingham==1.5.4
|
|
53
|
+
# via
|
|
54
|
+
# typer
|
|
55
|
+
# typer-slim
|
|
56
|
+
silero-vad-lite==0.2.1
|
|
57
|
+
# via agent-cli
|
|
58
|
+
typer==0.21.1
|
|
59
|
+
# via agent-cli
|
|
60
|
+
typer-slim==0.21.1
|
|
61
|
+
# via agent-cli
|
|
62
|
+
typing-extensions==4.15.0
|
|
63
|
+
# via
|
|
64
|
+
# anyio
|
|
65
|
+
# pydantic
|
|
66
|
+
# pydantic-core
|
|
67
|
+
# typer
|
|
68
|
+
# typer-slim
|
|
69
|
+
# typing-inspection
|
|
70
|
+
typing-inspection==0.4.2
|
|
71
|
+
# via pydantic
|
|
@@ -68,7 +68,7 @@ def proxy(
|
|
|
68
68
|
help="Auto-commit memory changes to git. Initializes a repo in `--memory-path` if needed. Provides full history of memory evolution.",
|
|
69
69
|
rich_help_panel="Memory Configuration",
|
|
70
70
|
),
|
|
71
|
-
log_level: opts.LogLevel = opts.
|
|
71
|
+
log_level: opts.LogLevel = opts.SERVER_LOG_LEVEL,
|
|
72
72
|
config_file: str | None = opts.CONFIG_FILE,
|
|
73
73
|
print_args: bool = opts.PRINT_ARGS,
|
|
74
74
|
) -> None:
|
|
@@ -45,7 +45,7 @@ def rag_proxy(
|
|
|
45
45
|
help="Port for the RAG proxy API (e.g., `http://localhost:8000/v1/chat/completions`).",
|
|
46
46
|
rich_help_panel="Server Configuration",
|
|
47
47
|
),
|
|
48
|
-
log_level: opts.LogLevel = opts.
|
|
48
|
+
log_level: opts.LogLevel = opts.SERVER_LOG_LEVEL,
|
|
49
49
|
config_file: str | None = opts.CONFIG_FILE,
|
|
50
50
|
print_args: bool = opts.PRINT_ARGS,
|
|
51
51
|
enable_rag_tools: bool = typer.Option(
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import functools
|
|
6
|
+
import importlib
|
|
6
7
|
import json
|
|
7
8
|
import os
|
|
8
9
|
from importlib.util import find_spec
|
|
@@ -12,7 +13,7 @@ from typing import TYPE_CHECKING, TypeVar
|
|
|
12
13
|
import typer
|
|
13
14
|
|
|
14
15
|
from agent_cli.config import load_config
|
|
15
|
-
from agent_cli.core.utils import
|
|
16
|
+
from agent_cli.core.utils import err_console, print_error_message
|
|
16
17
|
|
|
17
18
|
if TYPE_CHECKING:
|
|
18
19
|
from collections.abc import Callable
|
|
@@ -139,7 +140,7 @@ def _try_auto_install(missing: list[str]) -> bool:
|
|
|
139
140
|
else:
|
|
140
141
|
extras_to_install.append(extra)
|
|
141
142
|
|
|
142
|
-
|
|
143
|
+
err_console.print(
|
|
143
144
|
f"[yellow]Auto-installing missing extras: {', '.join(extras_to_install)}[/]",
|
|
144
145
|
)
|
|
145
146
|
return install_extras_programmatic(extras_to_install, quiet=True)
|
|
@@ -159,7 +160,9 @@ def _check_and_install_extras(extras: tuple[str, ...]) -> list[str]:
|
|
|
159
160
|
print_error_message("Auto-install failed.\n" + get_combined_install_hint(missing))
|
|
160
161
|
return missing
|
|
161
162
|
|
|
162
|
-
|
|
163
|
+
err_console.print("[green]Installation complete![/]")
|
|
164
|
+
# Invalidate import caches so find_spec() can see newly installed packages
|
|
165
|
+
importlib.invalidate_caches()
|
|
163
166
|
still_missing = [e for e in extras if not check_extra_installed(e)]
|
|
164
167
|
if still_missing:
|
|
165
168
|
print_error_message(
|
|
@@ -3,38 +3,22 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import logging
|
|
6
|
-
import urllib.request
|
|
7
6
|
from collections import deque
|
|
8
|
-
from pathlib import Path
|
|
9
7
|
|
|
10
8
|
from agent_cli import constants
|
|
11
9
|
|
|
12
10
|
try:
|
|
13
11
|
import numpy as np
|
|
14
|
-
import
|
|
12
|
+
from silero_vad_lite import SileroVAD
|
|
15
13
|
except ImportError as e:
|
|
16
14
|
msg = (
|
|
17
|
-
"silero-vad is required for the transcribe-daemon command. "
|
|
15
|
+
"silero-vad-lite is required for the transcribe-daemon command. "
|
|
18
16
|
"Install it with: `pip install agent-cli[vad]` or `uv sync --extra vad`."
|
|
19
17
|
)
|
|
20
18
|
raise ImportError(msg) from e
|
|
21
19
|
|
|
22
20
|
LOGGER = logging.getLogger(__name__)
|
|
23
21
|
|
|
24
|
-
_SILERO_VAD_ONNX_URL = (
|
|
25
|
-
"https://github.com/snakers4/silero-vad/raw/master/src/silero_vad/data/silero_vad.onnx"
|
|
26
|
-
)
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
def _get_model_path() -> Path:
|
|
30
|
-
"""Get the path to the Silero VAD ONNX model, downloading if needed."""
|
|
31
|
-
cache_dir = Path.home() / ".cache" / "silero-vad"
|
|
32
|
-
cache_dir.mkdir(parents=True, exist_ok=True)
|
|
33
|
-
model_path = cache_dir / "silero_vad.onnx"
|
|
34
|
-
if not model_path.exists():
|
|
35
|
-
urllib.request.urlretrieve(_SILERO_VAD_ONNX_URL, model_path) # noqa: S310
|
|
36
|
-
return model_path
|
|
37
|
-
|
|
38
22
|
|
|
39
23
|
class VoiceActivityDetector:
|
|
40
24
|
"""Silero VAD-based voice activity detection for audio segmentation.
|
|
@@ -56,8 +40,6 @@ class VoiceActivityDetector:
|
|
|
56
40
|
msg = f"Sample rate must be 8000 or 16000, got {sample_rate}"
|
|
57
41
|
raise ValueError(msg)
|
|
58
42
|
|
|
59
|
-
from silero_vad.utils_vad import OnnxWrapper # noqa: PLC0415
|
|
60
|
-
|
|
61
43
|
self.sample_rate = sample_rate
|
|
62
44
|
self.threshold = threshold
|
|
63
45
|
self.silence_threshold_ms = silence_threshold_ms
|
|
@@ -74,7 +56,7 @@ class VoiceActivityDetector:
|
|
|
74
56
|
)
|
|
75
57
|
|
|
76
58
|
# Model and state
|
|
77
|
-
self._model =
|
|
59
|
+
self._model = SileroVAD(sample_rate=sample_rate)
|
|
78
60
|
self._pre_speech_buffer: deque[bytes] = deque(maxlen=pre_speech_windows)
|
|
79
61
|
self._pending = bytearray()
|
|
80
62
|
self._audio_buffer = bytearray()
|
|
@@ -92,7 +74,7 @@ class VoiceActivityDetector:
|
|
|
92
74
|
|
|
93
75
|
def reset(self) -> None:
|
|
94
76
|
"""Reset VAD state for a new recording session."""
|
|
95
|
-
self._model.
|
|
77
|
+
self._model = SileroVAD(sample_rate=self.sample_rate)
|
|
96
78
|
self._pre_speech_buffer.clear()
|
|
97
79
|
self._pending.clear()
|
|
98
80
|
self._audio_buffer.clear()
|
|
@@ -103,7 +85,7 @@ class VoiceActivityDetector:
|
|
|
103
85
|
def _is_speech(self, window: bytes) -> bool:
|
|
104
86
|
"""Check if audio window contains speech."""
|
|
105
87
|
audio = np.frombuffer(window, dtype=np.int16).astype(np.float32) / 32768.0
|
|
106
|
-
prob =
|
|
88
|
+
prob = self._model.process(audio)
|
|
107
89
|
LOGGER.debug("Speech prob: %.3f, threshold: %.2f", prob, self.threshold)
|
|
108
90
|
return prob >= self.threshold
|
|
109
91
|
|
|
@@ -154,7 +136,7 @@ class VoiceActivityDetector:
|
|
|
154
136
|
self._silence_samples = 0
|
|
155
137
|
self._speech_samples = 0
|
|
156
138
|
self._audio_buffer.clear()
|
|
157
|
-
self._model.
|
|
139
|
+
self._model = SileroVAD(sample_rate=self.sample_rate)
|
|
158
140
|
else:
|
|
159
141
|
# Not speaking - maintain rolling pre-speech buffer (auto-limited by deque maxlen)
|
|
160
142
|
self._pre_speech_buffer.append(window)
|
|
@@ -14,7 +14,7 @@ import typer
|
|
|
14
14
|
|
|
15
15
|
from agent_cli.cli import app
|
|
16
16
|
from agent_cli.core.deps import EXTRAS as _EXTRAS_META
|
|
17
|
-
from agent_cli.core.utils import console, print_error_message
|
|
17
|
+
from agent_cli.core.utils import console, err_console, print_error_message
|
|
18
18
|
|
|
19
19
|
# Extract descriptions from the centralized EXTRAS metadata
|
|
20
20
|
EXTRAS: dict[str, str] = {name: desc for name, (desc, _) in _EXTRAS_META.items()}
|
|
@@ -69,7 +69,8 @@ def _install_via_uv_tool(extras: list[str], *, quiet: bool = False) -> bool:
|
|
|
69
69
|
cmd = ["uv", "tool", "install", package_spec, "--force", "--python", python_version]
|
|
70
70
|
if quiet:
|
|
71
71
|
cmd.append("-q")
|
|
72
|
-
|
|
72
|
+
# Use stderr for status messages so they don't pollute stdout (e.g., for hotkey notifications)
|
|
73
|
+
err_console.print(f"Running: [cyan]{' '.join(cmd)}[/]")
|
|
73
74
|
result = subprocess.run(cmd, check=False)
|
|
74
75
|
return result.returncode == 0
|
|
75
76
|
|
|
@@ -118,7 +119,8 @@ def install_extras_programmatic(extras: list[str], *, quiet: bool = False) -> bo
|
|
|
118
119
|
valid = [e for e in extras if e in available]
|
|
119
120
|
invalid = [e for e in extras if e not in available]
|
|
120
121
|
if invalid:
|
|
121
|
-
|
|
122
|
+
# Use stderr so warning doesn't pollute stdout (e.g., for hotkey notifications)
|
|
123
|
+
err_console.print(f"[yellow]Unknown extras (skipped): {', '.join(invalid)}[/]")
|
|
122
124
|
return bool(valid) and _install_extras_impl(valid, quiet=quiet)
|
|
123
125
|
|
|
124
126
|
|
|
@@ -364,13 +364,14 @@ CLIPBOARD: bool = typer.Option(
|
|
|
364
364
|
rich_help_panel="General Options",
|
|
365
365
|
)
|
|
366
366
|
LOG_LEVEL: LogLevel = typer.Option(
|
|
367
|
-
"
|
|
367
|
+
"warning",
|
|
368
368
|
"--log-level",
|
|
369
369
|
envvar="LOG_LEVEL",
|
|
370
370
|
help="Set logging level.",
|
|
371
371
|
case_sensitive=False,
|
|
372
372
|
rich_help_panel="General Options",
|
|
373
373
|
)
|
|
374
|
+
SERVER_LOG_LEVEL: LogLevel = with_default(LOG_LEVEL, "info")
|
|
374
375
|
LOG_FILE: str | None = typer.Option(
|
|
375
376
|
None,
|
|
376
377
|
"--log-file",
|
|
@@ -291,7 +291,7 @@ def whisper_cmd( # noqa: PLR0912, PLR0915
|
|
|
291
291
|
help="Download model(s) to cache and exit. Useful for Docker builds",
|
|
292
292
|
),
|
|
293
293
|
] = False,
|
|
294
|
-
log_level: opts.LogLevel = opts.
|
|
294
|
+
log_level: opts.LogLevel = opts.SERVER_LOG_LEVEL,
|
|
295
295
|
backend: Annotated[
|
|
296
296
|
str,
|
|
297
297
|
typer.Option(
|
|
@@ -473,7 +473,7 @@ def transcribe_proxy_cmd(
|
|
|
473
473
|
bool,
|
|
474
474
|
typer.Option("--reload", help="Auto-reload on code changes (development only)"),
|
|
475
475
|
] = False,
|
|
476
|
-
log_level: opts.LogLevel = opts.
|
|
476
|
+
log_level: opts.LogLevel = opts.SERVER_LOG_LEVEL,
|
|
477
477
|
) -> None:
|
|
478
478
|
r"""Run transcription proxy that forwards to your configured ASR provider.
|
|
479
479
|
|
|
@@ -627,7 +627,7 @@ def tts_cmd( # noqa: PLR0915
|
|
|
627
627
|
help="Download model(s)/voice(s) to cache and exit. Useful for Docker builds",
|
|
628
628
|
),
|
|
629
629
|
] = False,
|
|
630
|
-
log_level: opts.LogLevel = opts.
|
|
630
|
+
log_level: opts.LogLevel = opts.SERVER_LOG_LEVEL,
|
|
631
631
|
backend: Annotated[
|
|
632
632
|
str,
|
|
633
633
|
typer.Option(
|
|
@@ -168,7 +168,7 @@ agent-cli assistant --wake-server-ip 192.168.1.100 --wake-server-port 10400
|
|
|
168
168
|
|--------|---------|-------------|
|
|
169
169
|
| `--save-file` | - | Save audio to WAV file instead of playing through speakers. |
|
|
170
170
|
| `--clipboard/--no-clipboard` | `true` | Copy result to clipboard. |
|
|
171
|
-
| `--log-level` | `
|
|
171
|
+
| `--log-level` | `warning` | Set logging level. |
|
|
172
172
|
| `--log-file` | - | Path to a file to write logs to. |
|
|
173
173
|
| `--quiet, -q` | `false` | Suppress console output from rich. |
|
|
174
174
|
| `--config` | - | Path to a TOML configuration file. |
|
|
@@ -72,7 +72,7 @@ agent-cli autocorrect "this text has an eror"
|
|
|
72
72
|
|
|
73
73
|
| Option | Default | Description |
|
|
74
74
|
|--------|---------|-------------|
|
|
75
|
-
| `--log-level` | `
|
|
75
|
+
| `--log-level` | `warning` | Set logging level. |
|
|
76
76
|
| `--log-file` | - | Path to a file to write logs to. |
|
|
77
77
|
| `--quiet, -q` | `false` | Suppress console output from rich. |
|
|
78
78
|
| `--json` | `false` | Output result as JSON (implies `--quiet` and `--no-clipboard`). |
|
|
@@ -170,7 +170,7 @@ agent-cli chat --last-n-messages 100 --history-dir ~/.my-chat-history
|
|
|
170
170
|
| Option | Default | Description |
|
|
171
171
|
|--------|---------|-------------|
|
|
172
172
|
| `--save-file` | - | Save audio to WAV file instead of playing through speakers. |
|
|
173
|
-
| `--log-level` | `
|
|
173
|
+
| `--log-level` | `warning` | Set logging level. |
|
|
174
174
|
| `--log-file` | - | Path to a file to write logs to. |
|
|
175
175
|
| `--quiet, -q` | `false` | Suppress console output from rich. |
|
|
176
176
|
| `--config` | - | Path to a TOML configuration file. |
|
|
@@ -108,7 +108,7 @@ agent-cli speak --list-devices
|
|
|
108
108
|
| Option | Default | Description |
|
|
109
109
|
|--------|---------|-------------|
|
|
110
110
|
| `--save-file` | - | Save audio to WAV file instead of playing through speakers. |
|
|
111
|
-
| `--log-level` | `
|
|
111
|
+
| `--log-level` | `warning` | Set logging level. |
|
|
112
112
|
| `--log-file` | - | Path to a file to write logs to. |
|
|
113
113
|
| `--quiet, -q` | `false` | Suppress console output from rich. |
|
|
114
114
|
| `--json` | `false` | Output result as JSON (implies `--quiet` and `--no-clipboard`). |
|
|
@@ -149,7 +149,7 @@ agent-cli transcribe-daemon --silence-threshold 1.5
|
|
|
149
149
|
|
|
150
150
|
| Option | Default | Description |
|
|
151
151
|
|--------|---------|-------------|
|
|
152
|
-
| `--log-level` | `
|
|
152
|
+
| `--log-level` | `warning` | Set logging level. |
|
|
153
153
|
| `--log-file` | - | Path to a file to write logs to. |
|
|
154
154
|
| `--quiet, -q` | `false` | Suppress console output from rich. |
|
|
155
155
|
| `--config` | - | Path to a TOML configuration file. |
|