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