add-provider
Add a new AI provider to agentconfig.org's comparison system. Use when integrating a new coding assistant (e.g., Cursor, Claude Desktop, GitHub Copilot alternative) with proper type system updates, implementation data, UI components, tests, and documentation.
Best use case
add-provider is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Add a new AI provider to agentconfig.org's comparison system. Use when integrating a new coding assistant (e.g., Cursor, Claude Desktop, GitHub Copilot alternative) with proper type system updates, implementation data, UI components, tests, and documentation.
Teams using add-provider should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/add-provider/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How add-provider Compares
| Feature / Agent | add-provider | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Add a new AI provider to agentconfig.org's comparison system. Use when integrating a new coding assistant (e.g., Cursor, Claude Desktop, GitHub Copilot alternative) with proper type system updates, implementation data, UI components, tests, and documentation.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Add Provider
Add a new AI coding assistant provider to agentconfig.org's provider comparison system.
## Overview
Adding a provider requires coordinated work across **6 parallel work streams**:
| Stream | Work | Duration | Dependencies |
|--------|------|----------|--------------|
| **1. Type System** | Add provider to union types | 2-4 hrs | None |
| **2. Data Layer** | Add implementations for all 11 primitives | 4-6 hrs | Stream 1 |
| **3. UI Components** | Update comparison table | 4-8 hrs | Streams 1-2 |
| **4. Testing** | Update E2E tests | 3-4 hrs | Stream 3 |
| **5. App Integration** | Update site copy & docs | 1-2 hrs | Streams 1-3 |
| **6. LLMs Generation** | Regenerate machine-readable files | 1-2 hrs | All streams |
**Total effort**: ~2-3 hours with parallelization
## When to Use
Use this skill when:
- Integrating a new coding assistant (Cursor, Claude Desktop, Zed with AI, etc.)
- Expanding provider support beyond current offerings
- The provider implements most of the 11 AI primitives
- You want comprehensive comparison data visible to users and AI agents
## Prerequisites
Before starting, gather:
- **Provider capability audit** - Which of the 11 primitives does the provider support?
- **File path documentation** - Where do config files go (global vs project)?
- **Support levels** - `full` (native), `partial` (workarounds), `none` (unavailable), `diy` (custom setup)
## The 11 Primitives
Every provider must map to these primitives:
| Category | Primitives |
|----------|-----------|
| **Execution** | Agent Mode, Skills/Workflows, Tool Integrations (MCP) |
| **Customization** | Persistent Instructions, Global Instructions, Path-Scoped Rules, Slash Commands |
| **Control** | Custom Agents, Permissions & Guardrails, Lifecycle Hooks, Verification/Evals |
## Quick Start
0. **🔍 Research the provider** → See [RESEARCH-GUIDE.md](references/RESEARCH-GUIDE.md) for capability audit template
- Visit official documentation
- Document support level for each of the 11 primitives
- Verify config file locations
- **Complete this BEFORE writing any code** (see pre-implementation checklist in [CHECKLIST.md](references/CHECKLIST.md))
1. **📋 Read the detailed process** → See [PROCESS.md](references/PROCESS.md) for step-by-step instructions for all 6 streams
2. **📖 Review code examples** → See [EXAMPLES.md](references/EXAMPLES.md) for copy-paste templates for each stream
3. **🎨 Understand patterns** → See [PATTERNS.md](references/PATTERNS.md) for support levels and naming conventions
4. **🐛 Handle errors** → See [ERRORS.md](references/ERRORS.md) for solutions to common issues (including critical generation script updates)
5. **✅ Verify completion** → See [CHECKLIST.md](references/CHECKLIST.md) for verification steps (includes pre-implementation checklist)
## 6-Stream Workflow at a Glance
```
Stream 1: Type System (Add provider to union types)
↓
Stream 2: Data Layer (Add implementations for all 11 primitives)
├→ Stream 3: UI Components (Update comparison table)
│ ↓
│ Stream 4: Testing (Update E2E tests)
│ ↓
└→ Stream 5: App Integration (Update site copy/docs) [can run in parallel with 3-4]
↓
Stream 6: LLMs Generation (Regenerate machine-readable files)
```
**Parallel execution**: Start Stream 5 while Streams 3-4 complete. Stream 1-2 are sequential. Stream 6 must run last.
## Key Files to Modify
| Stream | Files |
|--------|-------|
| 1 | `site/src/data/primitives.ts`, `site/src/data/fileTree.ts`, `site/src/data/comparison.ts`, `site/src/components/PrimitiveCards/PrimitiveCard.tsx` |
| 2 | `site/src/data/primitives.ts`, `site/src/data/comparison.ts`, `site/src/data/fileTree.ts` |
| 3 | `site/src/components/ProviderComparison/ComparisonTable.tsx` |
| 4 | `site/tests/e2e/comparison.spec.ts` |
| 5 | `site/src/App.tsx`, `site/src/components/Hero/Hero.tsx`, `README.md` |
| 6 | `.github/skills/generate-llms/scripts/generate-llms-full.ts` (if needed), `site/public/llms-full.txt` |
## Example Prompts
**Add a new provider from scratch:**
```
Use the add-provider skill to add Cursor as a provider to agentconfig.org.
Research Cursor's implementation of all 11 primitives first, then follow all 6 streams.
```
**Skip to a specific stream:**
```
I've completed Stream 1 (types). Now execute Stream 2 (data layer) to add cursor implementations.
```
**Update existing provider data:**
```
Update Cursor's support level from partial to full for Tool Integrations in the comparison.ts and UI.
```
## Success Metrics
✅ Provider added to all type definitions
✅ All 11 primitives have provider implementation data
✅ Comparison table renders with provider column
✅ All E2E tests pass
✅ No TypeScript errors
✅ Production build succeeds
✅ llms-full.txt includes provider data
✅ Responsive design works
✅ Dark mode works
## PR Description Best Practices
When opening your pull request, keep it crisp and focused:
**What to include:**
- **Summary**: One sentence—what provider, what changed
- **Changes**: Organized by stream (Types, Data, UI, Tests, Integration, Docs)
- **Result**: Quick summary of provider's final support coverage
- **Testing**: Concrete steps to verify (run commands, visit site, click features)
- **References**: Link to official provider documentation as sources
**What to avoid:**
- Listing all 11 primitives exhaustively
- Repetitive narrative about each stream
- Verbose technical implementation details
**Example**: See [Cursor provider PR](https://github.com/jonmagic/agentconfig.org/pull/3) for a reference implementation.
## Related Skills
- **[add-primitive](../../add-primitive)** - Add a new AI primitive (expand beyond 11)
- **[generate-llms](../../generate-llms)** - Regenerate llms.txt files
- **[semantic-commit](../../semantic-commit)** - Create semantic commit messages
## References
For detailed information, see:
- **[RESEARCH-GUIDE.md](references/RESEARCH-GUIDE.md)** - How to research a provider before implementation (capability audit template, decision tree, examples)
- **[PROCESS.md](references/PROCESS.md)** - Complete step-by-step instructions for all 6 streams
- **[EXAMPLES.md](references/EXAMPLES.md)** - Copy-paste code examples for each stream
- **[PATTERNS.md](references/PATTERNS.md)** - Support levels, file locations, naming conventions
- **[ERRORS.md](references/ERRORS.md)** - Common issues and solutions (including critical generation script updates)
- **[CHECKLIST.md](references/CHECKLIST.md)** - Comprehensive verification checklists (includes pre-implementation checklist)Related Skills
symfony:api-platform-state-providers
Use when symfony api platform state providers
api-provider-status
API 供应商状态查询与模型切换助手。查询当前模型、供应商、用量、余额,列出可切换的模型。当用户询问"当前模型"、"用量"、"余额"、"切换模型"、"可用模型"时触发。支持通过浏览器自动化登录中转站后台查询余额。
api-provider-setup
添加和配置第三方 API 中转站供应商到 OpenClaw。当用户需要添加新的 API 供应商、配置中转站、设置自定义模型端点时使用此技能。支持 Anthropic 兼容和 OpenAI 兼容的 API 格式。
bgo
Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.
partner-revenue-desk
Operating model for tracking, attributing, and accelerating partner-sourced revenue.
parallel-data-enrichment
Structured company and entity data enrichment using Parallel AI Task API with core/base processors. Returns typed JSON output. No binary install — requires PARALLEL_API_KEY in .env.local.
parallel-agents
Multi-agent orchestration patterns. Use when multiple independent tasks can run with different domain expertise or when comprehensive analysis requires multiple perspectives.
paper-writing-assistant
Assist in drafting research papers and meeting notes, enforcing academic rigor and formatting.
pandas-data-manipulation-rules
Focuses on pandas-specific rules for data manipulation, including method chaining, data selection using loc/iloc, and groupby operations.
pagent
Guide for using pagent - a PRD-to-code orchestration tool. Use when users ask how to use pagent, run agents, create PRDs, or transform requirements into code.
page-annotator
AI驱动的网页标注工具,支持高亮元素和添加文字批注。智能防重复、自动滚动、碰撞检测。兼容 GitHub 等严格 CSP 网站。适用场景:(1) 标记网页元素进行讲解 (2) 添加文字批注和注释 (3) 代码审查和设计评审 (4) 教学演示和用户引导 (5) Bug 报告和问题标记
package-json-modification-protection
Protects lines with the specific 'Do not touch this line Cursor' comment within package.json.