Skip to content

feat: add cao-provider skill for new CLI agent providers#154

Merged
fanhongy merged 5 commits into
mainfrom
feat/cao-provider-skill
Apr 7, 2026
Merged

feat: add cao-provider skill for new CLI agent providers#154
fanhongy merged 5 commits into
mainfrom
feat/cao-provider-skill

Conversation

@haofeif

@haofeif haofeif commented Apr 4, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add cao-provider skill — a portable, structured guide (SKILL.md format) that walks any AI coding assistant through building a new CAO provider end-to-end: ProviderType enum, provider class with regex patterns and status detection, ProviderManager registration, tool restriction wiring, unit/e2e tests, and documentation
  • Include 20 lessons learnt from building and maintaining 7 existing providers, covering critical gotchas like stale buffer matching, ANSI stripping, alt-screen vs scrollback detection, shell warm-up, TERM compatibility, role/allowedTools resolution, child wildcard override, and assign+handoff e2e validation
  • Add annotated provider template (references/provider-template.md) and comprehensive test guide (references/test-guide.md) as progressive-disclosure reference files
  • Document the skill in README.md with compatibility table — works across Claude Code, Kiro CLI, Gemini CLI, Codex CLI, Cursor, Strands Agents SDK, Microsoft Agent Framework, and other SKILL.md-compatible tools

What's included

File Purpose
skills/cao-provider/SKILL.md 10-step implementation guide with file checklist
skills/cao-provider/references/lessons-learnt.md 20 hard-won lessons from 7 providers
skills/cao-provider/references/provider-template.md Annotated Python template with design rationale
skills/cao-provider/references/test-guide.md Unit + e2e test structure with fixture examples
README.md Skills section with loading instructions per tool

Key design decisions

  • Follows the universal SKILL.md format with YAML frontmatter + progressive disclosure (metadata → instructions → reference files)
  • SKILL.md kept under 500 lines; heavy content pushed to references/
  • Lessons organized by broad applicability, not provider-specific quirks
  • Step 9 validates with the canonical examples/assign/ multi-agent flow (supervisor → 3x data analyst + 1x report generator)
  • References docs/tool-restrictions.md as essential reading for tool restriction wiring

Comprehensive skill with annotated template, 10 lessons learned from
building 7 providers, test guide, and step-by-step implementation checklist.
Placed in skills/ (not .claude/) so it's tool-agnostic for any AI assistant.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@haofeif haofeif requested a review from a team April 4, 2026 04:11
…dation, and README docs

- Rename lessons-learned.md to lessons-learnt.md
- Add 7 new lessons (#14-#20): shell warm-up, TERM compatibility, alt-screen
  vs scrollback, startup prompt loop, stale permission detection, per-directory
  locks, assign+handoff e2e validation
- Add docs/tool-restrictions.md as essential reading reference
- Add assign+handoff orchestration step (Step 9) to SKILL.md with
  troubleshooting guide referencing examples/assign/
- Add alt-screen vs scrollback to "Before You Start" checklist
- Expand Step 6 with cross-references to lessons #14, #15, #17
- Fix stale lessons-learned.md reference in provider-template.md
- Add Skills section to README with tool compatibility table (Claude Code,
  Kiro CLI, Gemini CLI, Strands Agents SDK, Microsoft Agent Framework, etc.)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@haofeif haofeif added the enhancement New feature or request label Apr 4, 2026
haofeif and others added 3 commits April 4, 2026 21:43
The launch commands in lesson #20 and SKILL.md Step 9 were missing
--provider (defaults to kiro_cli otherwise) and --auto-approve/--yolo
flags needed for new provider testing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ss criteria

Detail each test across 5 suites (handoff, assign, send_message,
allowed_tools, supervisor_orchestration) with what it validates and
why it matters. Emphasize that all 11 must pass — a supervisor that
silently does workers' jobs or ignores tool restrictions is only
caught by the full suite.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@fanhongy fanhongy merged commit f884a9c into main Apr 7, 2026
12 checks passed
@fanhongy fanhongy deleted the feat/cao-provider-skill branch April 7, 2026 02:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants