Centralized API provider management for AI coding agents
Project description
Agent Provider Manager
Centralized API provider management for AI coding agents.
Your API subscriptions are the source of truth. Agents come and go — your provider config stays.
GUI Desktop App
Download the latest GUI release from Releases.
┌─────────────┐
│ Provider │ ← Your API subscription (base URL + key)
│ (GLM 5.2) │
└──────┬──────┘
│ apm sync glm
├──────────────→ Claude Code
├──────────────→ Codex
├──────────────→ Cursor
├──────────────→ Hermes
├──────────────→ ZCode
└──────────────→ ... (15 agents supported)
Install
Homebrew (macOS/Linux)
brew tap jaxtonzhc/tap
brew install apm
pip / pipx
pip install agent-provider-manager
# or
pipx install agent-provider-manager
One-line script
curl -sSL https://raw.githubusercontent.com/jaxtonzhc/agent-provider-manager/main/install.sh | bash
Quick Start
# Interactive setup (recommended for first-time users)
apm init
# Or step by step:
apm scan # 1. Scan installed agents
apm provider add deepseek # 2. Add a provider (key entered interactively)
apm sync deepseek # 3. Sync to all agents
apm status # 4. Check status
Commands
Core
| Command | Description |
|---|---|
apm init |
Interactive setup guide |
apm scan |
Scan installed agents |
apm status |
Show current provider for each agent |
apm doctor [--fix] |
Diagnose and fix issues |
Provider Management
| Command | Description |
|---|---|
apm provider add |
Interactive provider selection from registry |
apm provider add <name> |
Add provider by name (key entered interactively) |
apm provider add <name> --key-env VAR |
Add provider with key from env var |
apm provider add <name> --url <url> |
Add custom provider (not in registry) |
apm provider add <name> --alias myname |
Add with custom alias |
apm provider add <name> --variant V |
Select specific variant (e.g., token-plan-cn) |
apm provider update <name> --url/--anthropic-url/--key/--models |
Update provider fields |
apm provider test [name] |
Test provider connectivity |
apm provider rename <old> <new> |
Rename a provider slug |
apm provider remove <name> |
Remove a provider |
apm provider list |
List configured providers |
apm provider show <name> |
Show provider details (models with context/reasoning/vision) |
apm provider import |
Import from installed agents |
apm provider known |
List known providers from registry |
Sync
| Command | Description |
|---|---|
apm sync |
Interactive provider selection, sync to all agents |
apm sync <provider> |
Sync to all installed agents |
apm sync <provider> --agents a1,a2 |
Sync to specific agents |
apm sync <provider> --dry-run |
Preview changes |
apm switch <provider> |
Alias for sync |
apm undo |
Undo last sync (restore auto-snapshot) |
Snapshot
| Command | Description |
|---|---|
apm snapshot save [--name N] |
Save current agent configs |
apm snapshot restore <name> |
Restore from a snapshot |
apm snapshot list |
List saved snapshots |
apm snapshot delete <name> |
Delete a snapshot |
Maintenance
| Command | Description |
|---|---|
apm update |
Update provider/agent registry |
apm self-update |
Update apm itself |
apm logs [--tail N] |
Show log file |
apm agents |
List known agents |
apm providers |
List known providers |
Debug & Machine-Readable Output
apm --debug status # Verbose logging
APM_DEBUG=1 apm status # Via environment variable
apm --json status # JSON output (for GUI/scripts)
apm --json provider list # All commands support --json
Built-in Registry
10 AI Agents with full sync support (read + write config):
Claude Code, Codex, Cursor, Hermes, OpenClaw, ZCode, WorkBuddy, Aider, Pi, Oh-My-Pi
5 additional agents known (detection only, no sync yet):
GitHub Copilot, Windsurf, Continue, Mimocode, OpenCode
13 Providers with pre-configured base URLs, models, and capabilities:
OpenAI, Anthropic, DeepSeek, Google Gemini, GLM (Zhipu), SiliconFlow, OpenRouter, Volcengine, Alibaba Qwen, MiniMax, Xiaomi MiMo, Groq, ZAI
Each model includes metadata: context window (e.g., 1M), reasoning support, and vision capability.
The registry is updated remotely — run apm update to get the latest providers and models.
Storage
~/.apm/
├── providers.json # Your provider configs (mode 0600)
├── sync-state.json # Sync history
├── registry-cache.json # Remote registry cache
├── snapshots/ # Agent config backups (apm snapshot / apm undo)
└── apm.log # Debug log
Development
git clone https://github.com/jaxtonzhc/agent-provider-manager.git
cd agent-provider-manager
pip install -e ".[dev]"
make test
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent_provider_manager-0.1.2.tar.gz.
File metadata
- Download URL: agent_provider_manager-0.1.2.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fdd4f7a939767ee00e706047d655f7271b12e74c799bf341f130b0aaed817902
|
|
| MD5 |
d7fb24dcb920b9e2d946c64caccd3f54
|
|
| BLAKE2b-256 |
02cac76228fefd4ace0db253969ad23ec136f746cfd54f703e71d1129530105e
|
File details
Details for the file agent_provider_manager-0.1.2-py3-none-any.whl.
File metadata
- Download URL: agent_provider_manager-0.1.2-py3-none-any.whl
- Upload date:
- Size: 46.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe47ebd2067b65ecff0ccc70e0c19fa1822c5da3dd52594f7895d8fab6272133
|
|
| MD5 |
80ef86bea3541fe031c87f5debbbc786
|
|
| BLAKE2b-256 |
fd16d870ae70a2ff3c9b13a41dc3743ef6b7a34b8a6647f2b9666f864d9224b1
|