cao-provider

Featured

Create a new CLI agent provider for CAO (CLI Agent Orchestrator). Use this skill whenever the user wants to add support for a new CLI-based AI agent (e.g., a new coding assistant CLI), integrate a new provider, or scaffold a provider implementation. Also use when the user asks about the provider architecture, what files to modify, or how providers work in CAO.

AI & Automation 1,089 stars 227 forks Updated today Apache-2.0

Install

View on GitHub

Quality Score: 89/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# CAO Provider Creator Guide for creating a new CLI agent provider for CLI Agent Orchestrator. A "provider" is an adapter that lets CAO interact with a specific CLI-based AI agent through tmux. ## What You're Building A provider translates between CAO's unified interface and a specific CLI tool's terminal output. It needs to: 1. **Launch** the CLI tool in a tmux window with the right flags 2. **Detect status** by parsing terminal output (IDLE, PROCESSING, COMPLETED, ERROR, WAITING_USER_ANSWER) 3. **Extract responses** from the terminal buffer after the agent finishes 4. **Clean up** when the terminal is deleted ## Before You Start Gather this information about the target CLI: - What command launches it? (e.g., `claude`, `kiro-cli chat`, `codex`) - What does the idle prompt look like? (e.g., `> `, `❯ `, `ask a question`) - What does the processing state look like? (e.g., spinner characters, "Thinking...") - How are responses formatted? (e.g., preceded by `⏺`, inside a box, plain text) - Does it support `--dangerously-skip-permissions` or similar flags? - Does it have a REPL mode or is it single-shot? - How does it handle MCP servers? (CLI flags, config file, agent JSON) - Does it use alt-screen (full-screen TUI) or scrollback (inline output)? This fundamentally changes status detection logic — see lesson #16 - What's the exit command? (`/exit`, `/quit`, Ctrl+C) ## Step-by-Step Implementation ### Step 1: Add to ProviderType enum File: `src/cli_agent_orchestrator/model...

Details

Author
awslabs
Repository
awslabs/cli-agent-orchestrator
Created
1 years ago
Last Updated
today
Language
Python
License
Apache-2.0

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category