agent-cli 0.95.0__tar.gz → 0.95.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.95.0 → agent_cli-0.95.1}/.github/workflows/release.yml +3 -1
- {agent_cli-0.95.0 → agent_cli-0.95.1}/PKG-INFO +1 -1
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/build-macos-app.sh +40 -4
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_macos_app.py +21 -1
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude/skills/agent-cli-dev/SKILL.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude/skills/agent-cli-dev/examples.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude-plugin/README.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude-plugin/marketplace.json +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude-plugin/plugin.json +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude-plugin/skills/agent-cli-dev/SKILL.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.claude-plugin/skills/agent-cli-dev/examples.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.cursorrules +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.dockerignore +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.env.example +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/logo.svg +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/release-drafter.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/renovate.json +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/scripts/check_extras_sync.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/scripts/check_plugin_skill_sync.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/scripts/sync_extras.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/scripts/sync_requirements.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/automerge.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/docker.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/docs.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/markdown-code-runner.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/pytest.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/release-drafter.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.github/workflows/toc.yaml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.gitignore +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.jscpd.json +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.pre-commit-config.yaml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.prompts/docs-review.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/.prompts/pr-review.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/CLAUDE.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/LICENSE +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/LLAMA_SERVER_USAGE.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/README.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/__main__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_extras.json +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/.gitkeep +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/audio.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/diarization.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/faster-whisper.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/kokoro.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/llm.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/memory.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/mlx-whisper.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/piper.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/rag.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/server.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/speed.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/vad.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/vectordb.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/whisper-transformers.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_requirements/wyoming.txt +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/_tools.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/_voice_agent_common.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/assistant.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/autocorrect.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/chat.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/diarize_live_session.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/memory/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/memory/add.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/memory/proxy.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/rag_proxy.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/speak.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/speakers.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/transcribe.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/transcribe_live.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/agents/voice_edit.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/cli.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/config.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/config_cmd.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/constants.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/alignment.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/audio.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/audio_format.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/chroma.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/deps.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/diarization.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/openai_proxy.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/process.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/reranker.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/speaker_identity.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/sse.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/transcription_logger.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/vad.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/core/watch.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/daemon/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/daemon/cli.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/_branch_name.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/_config.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/_output.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/cleanup.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/cli.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/aider.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/base.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/claude.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/codex.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/continue_dev.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/copilot.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/cursor_agent.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/gemini.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/opencode.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/coding_agents/registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/base.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/cursor.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/emacs.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/jetbrains.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/nano.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/neovim.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/sublime.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/vim.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/vscode.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/editors/zed.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/hooks.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/launch.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/project.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/skill/SKILL.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/skill/examples.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/apple_terminal.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/base.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/gnome.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/iterm2.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/kitty.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/tmux.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/warp.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/terminals/zellij.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/dev/worktree.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/docs_gen.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/example-config.toml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/common.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/extras.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/hotkeys.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/launchd.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/service_config.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/services.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/install/systemd.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_files.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_filters.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_git.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_indexer.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_ingest.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_persistence.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_prompt.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_retrieval.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_store.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_streaming.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/_tasks.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/client.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/engine.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/entities.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/memory/models.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/opts.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/py.typed +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/_indexer.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/_indexing.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/_prompt.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/_retriever.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/_store.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/_utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/client.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/engine.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/rag/models.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/.runtime/.gitkeep +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/linux-hotkeys/README.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/linux-hotkeys/toggle-autocorrect.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/linux-hotkeys/toggle-transcription.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/linux-hotkeys/toggle-voice-edit.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/macos-hotkeys/README.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/macos-hotkeys/skhd-config-example +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/macos-hotkeys/toggle-autocorrect.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/macos-hotkeys/toggle-transcription.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/macos-hotkeys/toggle-voice-edit.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/nvidia-asr-server/README.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/nvidia-asr-server/pyproject.toml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/nvidia-asr-server/server.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/nvidia-asr-server/shell.nix +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/nvidia-asr-server/uv.lock +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/run-openwakeword.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/setup-linux-hotkeys.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/setup-linux.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/setup-macos-hotkeys.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/setup-macos.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/setup-windows.ps1 +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/start-all-services-windows.ps1 +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/scripts/start-all-services.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/cli.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/common.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/model_manager.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/model_registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/proxy/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/proxy/api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/streaming.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/backends/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/backends/base.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/backends/kokoro.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/backends/piper.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/model_manager.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/model_registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/tts/wyoming_handler.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/backends/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/backends/base.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/backends/faster_whisper.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/backends/mlx.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/backends/transformers.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/languages.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/model_manager.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/model_registry.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/server/whisper/wyoming_handler.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/services/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/services/_wyoming_utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/services/asr.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/services/llm.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/services/tts.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/agent_cli/services/wake_word.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docker/docker-compose.yml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docker/memory-proxy.Dockerfile +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docker/rag-proxy.Dockerfile +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docker/transcribe-proxy.Dockerfile +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docker/tts.Dockerfile +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docker/whisper.Dockerfile +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/CNAME +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/architecture/index.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/architecture/memory.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/architecture/rag.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/assistant.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/autocorrect.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/chat.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/config.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/daemon.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/dev.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/diarize-live-session.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/index.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/install-extras.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/install-hotkeys.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/install-services.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/memory.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/rag-proxy.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/server/index.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/server/transcribe-proxy.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/server/tts.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/server/whisper.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/speak.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/speakers.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/start-services.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/transcribe-live.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/transcribe.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/commands/voice-edit.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/configuration.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/getting-started.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/iOS_Shortcut_Guide.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/index.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/installation/docker.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/installation/index.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/installation/linux.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/installation/macos.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/installation/nixos.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/installation/windows.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/logo-avatar.svg +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/logo-clean.svg +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/overrides/partials/integrations/analytics/custom.html +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/run_markdown_code_runner.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/docs/system-integration.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/example.agent-cli-config.toml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/justfile +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Package.resolved +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Package.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/README.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Resources/Info.plist +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/AgentCLIApp.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/AgentCommand.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/AgentCommandRunner.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/AgentRuntime.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/AppDelegate.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/CommandResult.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/ConfigurableHotkeyController.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/FocusedTextTarget.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/MenuBarIcon.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/Shortcuts.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/AgentCLI/Sources/AgentCLI/VoiceLevelOverlay.swift +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/macos/test-macos-app-e2e.sh +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/pyproject.toml +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/reddit.md +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/shell.nix +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_fix_my_text.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_interactive.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_interactive_extra.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_memory_add.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_speak.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_speak_e2e.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_speakers.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_transcribe.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_transcribe_agent.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_transcribe_e2e.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_transcribe_live.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_transcribe_recovery.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_tts_common.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_tts_common_extra.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_voice_agent_common.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_voice_edit.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_voice_edit_e2e.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/agents/test_wake_word_assistant.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/conftest.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/test_audio.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/test_audio_format.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/test_chroma.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/test_sse.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/test_vad.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/core/test_watch.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_cleanup.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_cli.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_coding_agents.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_editors.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_hooks.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_launch.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_project.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_terminals.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_verification.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/dev/test_worktree.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/install/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/install/test_extras.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/install/test_launchd.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_api_health.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_api_integration_liveish.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_client.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_engine.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_files.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_filters.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_git_integration.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_indexer.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_memory_integration.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_proxy_passthrough.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_store.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/memory/test_utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/mocks/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/mocks/audio.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/mocks/llm.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/mocks/wyoming.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/__init__.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_engine.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_history.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_indexer.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_indexing.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_rag_client.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_rag_integration_liveish.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_rag_proxy_passthrough.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_retriever.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_store.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/rag/test_utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_alignment.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_api.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_api_integration.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_asr.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_asr_recovery.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_audio_e2e.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_cli.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_config.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_config_cmd.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_daemon.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_diarization.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_diarize_live_session.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_docs_gen.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_env_vars.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_faster_whisper_backend.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_json_output.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_llm.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_llm_gemini.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_memory_tools.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_mlx_backend.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_process_manager.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_requires_extras.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_server_streaming.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_server_tts.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_server_whisper.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_services.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_speaker_identity.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_tools.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_transformers_backend.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_tts.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_wake_word.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/tests/test_wyoming_utils.py +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/uv.lock +0 -0
- {agent_cli-0.95.0 → agent_cli-0.95.1}/zensical.toml +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
name:
|
|
1
|
+
name: Publish Release
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
release:
|
|
@@ -6,6 +6,7 @@ on:
|
|
|
6
6
|
|
|
7
7
|
jobs:
|
|
8
8
|
deploy:
|
|
9
|
+
name: Publish Python package
|
|
9
10
|
runs-on: ubuntu-latest
|
|
10
11
|
environment:
|
|
11
12
|
name: pypi
|
|
@@ -22,6 +23,7 @@ jobs:
|
|
|
22
23
|
uses: pypa/gh-action-pypi-publish@release/v1
|
|
23
24
|
|
|
24
25
|
build_macos_app:
|
|
26
|
+
name: Build and publish macOS app
|
|
25
27
|
runs-on: macos-latest
|
|
26
28
|
permissions:
|
|
27
29
|
contents: write
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-cli
|
|
3
|
-
Version: 0.95.
|
|
3
|
+
Version: 0.95.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>
|
|
@@ -102,13 +102,13 @@ if [[ "$NOTARIZE" == "1" && "$CREATE_DMG" != true ]]; then
|
|
|
102
102
|
fi
|
|
103
103
|
|
|
104
104
|
codesign_args() {
|
|
105
|
-
printf '%s\0' --force --
|
|
105
|
+
printf '%s\0' --force --sign "$CODESIGN_IDENTITY"
|
|
106
106
|
if [[ "$CODESIGN_IDENTITY" != "-" ]]; then
|
|
107
107
|
printf '%s\0' --timestamp --options runtime
|
|
108
108
|
fi
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
-
|
|
111
|
+
sign_executable() {
|
|
112
112
|
local target="$1"
|
|
113
113
|
local args=()
|
|
114
114
|
while IFS= read -r -d '' arg; do
|
|
@@ -118,6 +118,20 @@ sign_app() {
|
|
|
118
118
|
codesign "${args[@]}" "$target"
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
+
sign_bundled_executables() {
|
|
122
|
+
sign_executable "$APP_DIR/Contents/Resources/bin/uv"
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
sign_app() {
|
|
126
|
+
local target="$1"
|
|
127
|
+
local args=()
|
|
128
|
+
while IFS= read -r -d '' arg; do
|
|
129
|
+
args+=("$arg")
|
|
130
|
+
done < <(codesign_args)
|
|
131
|
+
|
|
132
|
+
codesign --deep "${args[@]}" "$target"
|
|
133
|
+
}
|
|
134
|
+
|
|
121
135
|
sign_dmg_if_needed() {
|
|
122
136
|
local dmg_path="$1"
|
|
123
137
|
if [[ "$CODESIGN_IDENTITY" == "-" ]]; then
|
|
@@ -143,14 +157,35 @@ require_notarization_env() {
|
|
|
143
157
|
|
|
144
158
|
notarize_dmg() {
|
|
145
159
|
local dmg_path="$1"
|
|
160
|
+
local notary_result="$DIST_DIR/notary-submit.json"
|
|
161
|
+
local submission_id
|
|
162
|
+
local status
|
|
146
163
|
|
|
147
164
|
require_notarization_env
|
|
148
165
|
echo "Submitting $dmg_path for Apple notarization..."
|
|
149
|
-
xcrun notarytool submit "$dmg_path" \
|
|
166
|
+
if ! xcrun notarytool submit "$dmg_path" \
|
|
150
167
|
--apple-id "$APPLE_ID" \
|
|
151
168
|
--password "$APPLE_APP_SPECIFIC_PASSWORD" \
|
|
152
169
|
--team-id "$APPLE_TEAM_ID" \
|
|
153
|
-
--wait
|
|
170
|
+
--wait \
|
|
171
|
+
--output-format json | tee "$notary_result"; then
|
|
172
|
+
echo "Apple notarization submission failed." >&2
|
|
173
|
+
exit 1
|
|
174
|
+
fi
|
|
175
|
+
|
|
176
|
+
submission_id=$(python3 -c 'import json, sys; print(json.load(open(sys.argv[1])).get("id", ""))' "$notary_result")
|
|
177
|
+
status=$(python3 -c 'import json, sys; print(json.load(open(sys.argv[1])).get("status", ""))' "$notary_result")
|
|
178
|
+
if [[ "$status" != "Accepted" ]]; then
|
|
179
|
+
echo "Apple notarization failed with status: ${status:-unknown}." >&2
|
|
180
|
+
if [[ -n "$submission_id" ]]; then
|
|
181
|
+
xcrun notarytool log "$submission_id" \
|
|
182
|
+
--apple-id "$APPLE_ID" \
|
|
183
|
+
--password "$APPLE_APP_SPECIFIC_PASSWORD" \
|
|
184
|
+
--team-id "$APPLE_TEAM_ID" >&2 || true
|
|
185
|
+
fi
|
|
186
|
+
exit 1
|
|
187
|
+
fi
|
|
188
|
+
|
|
154
189
|
xcrun stapler staple "$dmg_path"
|
|
155
190
|
xcrun stapler validate "$dmg_path"
|
|
156
191
|
echo "Notarized and stapled $dmg_path"
|
|
@@ -284,6 +319,7 @@ test -f "$APP_DIR/Contents/Resources/AgentCLI.icns" || {
|
|
|
284
319
|
exit 1
|
|
285
320
|
}
|
|
286
321
|
|
|
322
|
+
sign_bundled_executables
|
|
287
323
|
sign_app "$APP_DIR"
|
|
288
324
|
|
|
289
325
|
echo "Built $APP_DIR"
|
|
@@ -696,6 +696,8 @@ def test_macos_build_script_can_notarize_release_dmg() -> None:
|
|
|
696
696
|
assert "APPLE_TEAM_ID" in script
|
|
697
697
|
assert "xcrun notarytool submit" in script
|
|
698
698
|
assert "--wait" in script
|
|
699
|
+
assert "xcrun notarytool log" in script
|
|
700
|
+
assert "Accepted" in script
|
|
699
701
|
assert "xcrun stapler staple" in script
|
|
700
702
|
assert "xcrun stapler validate" in script
|
|
701
703
|
assert "--timestamp" in script
|
|
@@ -703,12 +705,30 @@ def test_macos_build_script_can_notarize_release_dmg() -> None:
|
|
|
703
705
|
assert "Developer ID signing identity" in script
|
|
704
706
|
|
|
705
707
|
|
|
708
|
+
def test_macos_build_script_signs_bundled_executables_before_notarization() -> None:
|
|
709
|
+
"""Every executable shipped inside the app bundle must be signed for notarization."""
|
|
710
|
+
script = BUILD_SCRIPT.read_text()
|
|
711
|
+
|
|
712
|
+
assert "sign_bundled_executables" in script
|
|
713
|
+
assert 'sign_executable "$APP_DIR/Contents/Resources/bin/uv"' in script
|
|
714
|
+
assert script.index('sign_executable "$APP_DIR/Contents/Resources/bin/uv"') < script.index(
|
|
715
|
+
'sign_app "$APP_DIR"',
|
|
716
|
+
)
|
|
717
|
+
|
|
718
|
+
|
|
706
719
|
def test_release_workflow_publishes_macos_app_asset() -> None:
|
|
707
720
|
"""Publishing a GitHub release should attach the notarized macOS DMG."""
|
|
708
721
|
workflow = RELEASE_WORKFLOW.read_text()
|
|
709
722
|
|
|
723
|
+
assert workflow.startswith("name: Publish Release\n")
|
|
724
|
+
assert "name: Upload Python Package" not in workflow
|
|
725
|
+
assert "name: Publish Python package" in workflow
|
|
726
|
+
assert "name: Build and publish macOS app" in workflow
|
|
710
727
|
assert "build_macos_app" in workflow
|
|
711
|
-
assert re.search(
|
|
728
|
+
assert re.search(
|
|
729
|
+
r"build_macos_app:\n\s+name: Build and publish macOS app\n\s+runs-on: macos-latest",
|
|
730
|
+
workflow,
|
|
731
|
+
)
|
|
712
732
|
assert "contents: write" in workflow
|
|
713
733
|
assert "MACOS_CODESIGN_CERTIFICATE_BASE64" in workflow
|
|
714
734
|
assert "MACOS_CODESIGN_CERTIFICATE_PASSWORD" in workflow
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|