{"id":39561060,"url":"https://github.com/kevinelliott/agentmanager","last_synced_at":"2026-02-24T09:27:05.214Z","repository":{"id":331515896,"uuid":"1130571366","full_name":"kevinelliott/agentmanager","owner":"kevinelliott","description":"CLI/TUI app to easily detect, manage, install, and update AI Agent CLI tools","archived":false,"fork":false,"pushed_at":"2026-01-17T07:15:02.000Z","size":408,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-18T15:50:24.738Z","etag":null,"topics":["agent","agentic-ai","agents","ai","ai-developer-tools","ai-development","ai-development-tools","ai-tools","cli","cli-app","cli-tool","tui","tui-app"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kevinelliott.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-08T17:37:01.000Z","updated_at":"2026-01-17T07:15:04.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/kevinelliott/agentmanager","commit_stats":null,"previous_names":["kevinelliott/agentmanager"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/kevinelliott/agentmanager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinelliott%2Fagentmanager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinelliott%2Fagentmanager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinelliott%2Fagentmanager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinelliott%2Fagentmanager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kevinelliott","download_url":"https://codeload.github.com/kevinelliott/agentmanager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinelliott%2Fagentmanager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28842868,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T07:39:25.367Z","status":"ssl_error","status_checked_at":"2026-01-28T07:39:24.487Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","agentic-ai","agents","ai","ai-developer-tools","ai-development","ai-development-tools","ai-tools","cli","cli-app","cli-tool","tui","tui-app"],"created_at":"2026-01-18T07:07:31.866Z","updated_at":"2026-01-28T08:39:19.152Z","avatar_url":"https://github.com/kevinelliott.png","language":"Go","funding_links":[],"categories":["Harnesses \u0026 orchestration"],"sub_categories":["Agent infrastructure"],"readme":"# AgentManager (agentmgr)\n\n[![CI](https://github.com/kevinelliott/agentmanager/actions/workflows/ci.yml/badge.svg)](https://github.com/kevinelliott/agentmanager/actions/workflows/ci.yml)\n[![Release](https://img.shields.io/github/v/release/kevinelliott/agentmanager)](https://github.com/kevinelliott/agentmanager/releases)\n[![Go Version](https://img.shields.io/github/go-mod-go-version/kevinelliott/agentmanager)](https://go.dev/)\n[![Go Report Card](https://goreportcard.com/badge/github.com/kevinelliott/agentmanager)](https://goreportcard.com/report/github.com/kevinelliott/agentmanager)\n[![Go Reference](https://pkg.go.dev/badge/github.com/kevinelliott/agentmanager.svg)](https://pkg.go.dev/github.com/kevinelliott/agentmanager)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\nA comprehensive CLI/TUI/Library application for detecting, managing, installing, and updating AI development CLI agents across macOS, Linux, and Windows.\n\n## Features\n\n- **Agent Detection**: Automatically detect installed AI CLI agents (Claude Code, Amp, Aider, GitHub Copilot CLI, Gemini CLI, and more)\n- **Version Management**: Check for updates from package registries (npm, PyPI, Homebrew) and manage agent versions\n- **Multiple Installation Methods**: Support for npm, pip, pipx, uv, Homebrew, native installers, and more\n- **Beautiful CLI Output**: Colored output with animated spinners and properly aligned tables\n- **Beautiful TUI**: Interactive terminal interface built with Bubble Tea\n- **Background Helper**: System tray application with notifications for available updates\n- **REST \u0026 gRPC APIs**: Expose agent management via HTTP and gRPC for integration\n- **Cross-Platform**: Works on macOS, Linux, and Windows\n\n## Installation\n\n### From Source\n\n```bash\n# Clone the repository\ngit clone https://github.com/kevinelliott/agentmanager.git\ncd agentmgr\n\n# Build\nmake build\n\n# Install to PATH\nmake install\n```\n\n### Homebrew (macOS)\n\n```bash\nbrew install kevinelliott/tap/agentmanager\n```\n\n### Go Install\n\n```bash\ngo install github.com/kevinelliott/agentmanager/cmd/agentmgr@latest\n```\n\n## Quick Start\n\n```bash\n# List all detected agents (shows installed version and latest available)\nagentmgr agent list\n\n# Install a new agent\nagentmgr agent install claude-code\n\n# Update all agents\nagentmgr agent update --all\n\n# Launch the interactive TUI\nagentmgr tui\n\n# Disable colored output\nagentmgr --no-color agent list\n```\n\n### Example Output\n\n```console\n$ agentmgr catalog list\n\nID            NAME                    METHODS    DESCRIPTION\n------------  ----------------------  ---------  ----------------------------------------\nagent-cli     Agent CLI               npm        Unified CLI for interacting with multi...\nagent-deck    Agent Deck              go +2      Terminal session manager for AI codin...\naider         Aider                   pip +2     AI pair programming in your terminal\namazon-q      Amazon Q Developer CLI  brew +1    Agentic chat experience in your termi...\namp           Amp                     native +3  Frontier coding agent by Sourcegraph ...\nblackbox-cli  Blackbox CLI            native +1  AI-powered CLI for natural language c...\nclaude-code   Claude Code             npm +1     Anthropic's official CLI for Claude A...\nclaude-squad  Claude Squad            brew +1    Terminal application for managing mul...\ncodex         Codex                   npm +2     Lightweight coding agent from OpenAI ...\ncontinue-cli  Continue CLI            npm        Open-source AI code assistant CLI\ncrush         Crush                   go +2      Terminal-based AI coding agent from C...\ncursor-cli    Cursor CLI              native     Cursor AI editor CLI agent\ndeepseek-cli  DeepSeek CLI            npm        Command-line AI coding assistant leve...\ndexter        Dexter                  npm +2     AI coding agent built on Claude Code\ndroid         Droid                   brew +1    AI-powered software engineering agent...\ngemini-cli    Gemini CLI              npm        Google's Gemini AI in your terminal\ngoose         Goose                   native +3  Open-source AI agent from Block that ...\ncopilot-cli   GitHub Copilot CLI      npm +1     GitHub Copilot in the command line\njuno-code     Juno Code               npm        AI coding agent with web interface\nkilocode-cli  Kilocode CLI            npm        Terminal UI for Kilo Code\nkubectl-ai    kubectl-ai              native +2  AI-powered Kubernetes Assistant\nnanocoder     Nanocoder               npm +1     Community-driven local-first CLI codi...\nopencode      OpenCode                npm +2     The open source AI coding agent\nopenhands     OpenHands CLI           uv +3      AI-driven development CLI with termin...\npi-coding-agent  Pi Coding Agent      npm        AI coding assistant from Pi\nplandex       Plandex                 native     Open source AI coding agent for large...\nqoder-cli     Qoder CLI               binary     Qoder AI coding assistant CLI\nqwen-code     Qwen Code               npm +1     Open-source AI coding agent\nrallies-cli   Rallies CLI             pip +1     AI-powered investment research CLI\nralph-tui     Ralph TUI               native     Autonomous AI agent with TUI\ntokscale      Tokscale                bun +1     High-performance CLI for monitoring A...\ntunacode-cli  Tunacode CLI            npm        AI coding assistant CLI\n\n32 agents available\n```\n\n```console\n$ agentmgr agent list\n\nID            AGENT               METHOD  VERSION              LATEST   STATUS\n------------  ------------------  ------  -------------------  -------  ------\naider         Aider               pip     0.86.1               0.86.1   ●\namp           Amp                 npm     1.0.25               1.0.25   ●\nblackbox-cli  Blackbox CLI        npm     0.0.9                0.8.1    ⬆\nclaude-code   Claude Code         npm     2.1.3                2.1.3    ●\nclaude-squad  Claude Squad        native  1.0.13               -        ●\ncontinue-cli  Continue CLI        npm     1.5.29               1.5.29   ●\ncrush         Crush               native  0.24.0               -        ●\ncursor-cli    Cursor CLI          native  2025.11.25           -        ●\ngemini-cli    Gemini CLI          native  0.15.1               -        ●\ncopilot-cli   GitHub Copilot CLI  npm     0.0.340              0.0.377  ⬆\nopencode      OpenCode            npm     1.0.119              1.1.10   ⬆\nqoder-cli     Qoder CLI           native  0.1.15               -        ●\nqwen-code     Qwen Code           npm     0.2.3                0.6.1    ⬆\ntokscale      Tokscale            npm     1.0.22               1.0.22   ●\n```\n\n\u003e **Legend:** ● = up to date, ⬆ = update available\n\n## Commands\n\n### Agent Management\n\n```bash\nagentmgr agent list              # List all detected agents (uses cache)\nagentmgr agent list --refresh    # Force re-detection, ignore cache\nagentmgr agent refresh           # Force re-detection and update cache\nagentmgr agent install \u003cname\u003e    # Install an agent\nagentmgr agent update \u003cname\u003e     # Update specific agent\nagentmgr agent update --all      # Update all agents\nagentmgr agent info \u003cname\u003e       # Show agent details\nagentmgr agent remove \u003cname\u003e     # Remove an agent\n```\n\n\u003e **Note:** Agent detection results are cached for 1 hour by default. Use `agent refresh` or `agent list --refresh` to force re-detection.\n\n### Catalog Management\n\n```bash\nagentmgr catalog list            # List available agents\nagentmgr catalog refresh         # Refresh from remote\nagentmgr catalog search \u003cquery\u003e  # Search catalog\nagentmgr catalog show \u003cname\u003e     # Show agent details\n```\n\n### Configuration\n\n```bash\nagentmgr config show             # Show current config\nagentmgr config set \u003ckey\u003e \u003cval\u003e  # Set config value\nagentmgr config path             # Show config file path\n```\n\n### Background Helper\n\n```bash\nagentmgr helper start            # Start systray helper\nagentmgr helper stop             # Stop systray helper\nagentmgr helper status           # Check helper status\n```\n\n### System Health\n\n```bash\nagentmgr doctor                  # Check system health and configuration\nagentmgr doctor --verbose        # Show detailed output\n```\n\n### Self-Update\n\n```bash\nagentmgr upgrade                 # Check for and install updates\nagentmgr upgrade --check         # Check for updates only\nagentmgr upgrade --force         # Force reinstall\n```\n\n### Detection Plugins\n\n```bash\nagentmgr plugin list             # List installed plugins\nagentmgr plugin create \u003cname\u003e    # Create a new plugin\nagentmgr plugin validate \u003cfile\u003e  # Validate plugin config\nagentmgr plugin enable \u003cname\u003e    # Enable a plugin\nagentmgr plugin disable \u003cname\u003e   # Disable a plugin\n```\n\nSee [docs/plugins.md](docs/plugins.md) for detailed plugin documentation.\n\n### API Documentation\n\n```bash\nagentmgr api docs                # Show REST API documentation\nagentmgr api endpoints           # List all API endpoints\nagentmgr api spec                # Output OpenAPI specification\n```\n\n### Global Options\n\n```bash\n--no-color        # Disable colored output (also respects NO_COLOR env var)\n--config, -c      # Specify custom config file path\n--verbose, -v     # Enable verbose output\n--format, -f      # Output format (table, json, yaml)\n```\n\n## Supported Agents\n\n| Agent | Installation Methods |\n|-------|---------------------|\n| Agent CLI | npm |\n| Agent Deck | brew, go, native |\n| Aider | pip, pipx, uv |\n| Amazon Q Developer CLI | brew, native, dmg |\n| Amp | native, npm, brew, chocolatey |\n| Blackbox CLI | npm, native, powershell |\n| Claude Code | npm, native |\n| Claude Squad | brew, native |\n| Codex | npm, brew, binary |\n| Continue CLI | npm |\n| Crush | brew, npm, go, winget, scoop |\n| Cursor CLI | native |\n| DeepSeek CLI | npm |\n| Dexter | npm, brew, native |\n| Droid | brew, native, powershell |\n| Gemini CLI | npm |\n| GitHub Copilot CLI | npm, brew, winget |\n| Goose | native, brew, pip, cargo |\n| Juno Code | npm |\n| Kilocode CLI | npm |\n| kubectl-ai | native, krew, nix |\n| Nanocoder | npm, brew |\n| OpenCode | npm, brew, scoop, chocolatey, curl |\n| OpenHands CLI | uv, pip, pipx, native |\n| Pi Coding Agent | npm |\n| Plandex | native |\n| Qoder CLI | binary |\n| Qwen Code | npm, brew |\n| Rallies CLI | pip, pipx |\n| Ralph TUI | native |\n| Tokscale | bun, npm |\n| Tunacode CLI | npm |\n\n## Architecture\n\nAgentManager consists of two binaries:\n\n1. **`agentmgr`** - Main CLI/TUI application for interactive use\n2. **`agentmgr-helper`** - Background systray helper with notifications\n\n### Library Usage\n\nAgentManager can be used as a Go library:\n\n```go\nimport (\n    \"github.com/kevinelliott/agentmanager/pkg/detector\"\n    \"github.com/kevinelliott/agentmanager/pkg/catalog\"\n    \"github.com/kevinelliott/agentmanager/pkg/installer\"\n)\n\n// Create a detector\nd := detector.New(platform.Current())\n\n// Detect all installed agents\ninstallations, err := d.DetectAll(ctx, agentDefs)\n\n// Install an agent\nmgr := installer.NewManager(platform.Current())\nresult, err := mgr.Install(ctx, agentDef, method, false)\n```\n\n## Configuration\n\nConfiguration is stored in:\n- macOS: `~/Library/Preferences/AgentManager/config.yaml`\n- Linux: `~/.config/agentmgr/config.yaml`\n- Windows: `%APPDATA%\\AgentManager\\config.yaml`\n\nExample configuration:\n\n```yaml\ncatalog:\n  refresh_interval: 1h\n  github_token: \"\"  # Optional: for higher rate limits\n\ndetection:\n  cache_duration: 1h              # How long to cache detected agents\n  update_check_cache_duration: 15m # How long to cache update check results\n  cache_enabled: true             # Set to false to always detect fresh\n\nupdates:\n  check_interval: 6h\n  auto_check: true\n  notify: true\n\nui:\n  theme: auto\n  compact: false\n  use_colors: true  # Set to false to disable colored output\n\nlogging:\n  level: info\n  file: \"\"\n```\n\n## Development\n\n### Prerequisites\n\n- Go 1.24+\n- Make\n- golangci-lint (for linting)\n\n### Building\n\n```bash\n# Build all binaries\nmake build\n\n# Run tests\nmake test\n\n# Run linter\nmake lint\n\n# Run all checks (fmt, vet, lint, test)\nmake check\n\n# Run tests with coverage\nmake test-coverage\n```\n\n### Project Structure\n\n```\nagentmgr/\n├── cmd/\n│   ├── agentmgr/           # CLI/TUI binary\n│   └── agentmgr-helper/    # Systray binary\n├── pkg/                    # Public library packages\n│   ├── agent/              # Agent types, versions\n│   ├── catalog/            # Catalog management\n│   ├── detector/           # Agent detection\n│   ├── installer/          # Installation management\n│   ├── storage/            # SQLite storage\n│   ├── config/             # Configuration\n│   ├── ipc/                # IPC communication\n│   ├── api/                # gRPC \u0026 REST APIs\n│   └── platform/           # Platform abstraction\n├── internal/\n│   ├── cli/                # CLI commands\n│   ├── tui/                # TUI interface\n│   └── systray/            # Systray helper\n└── catalog.json            # Default agent catalog\n```\n\n## License\n\nMIT License - see [LICENSE](LICENSE) for details.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add some amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinelliott%2Fagentmanager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkevinelliott%2Fagentmanager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinelliott%2Fagentmanager/lists"}