mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-04-08 02:03:34 +08:00
feat: add connector and dashboard builder skills
This commit is contained in:
121
skills/api-connector-builder/SKILL.md
Normal file
121
skills/api-connector-builder/SKILL.md
Normal file
@@ -0,0 +1,121 @@
|
||||
---
|
||||
name: api-connector-builder
|
||||
description: Build a new API connector or provider by matching the target repo's existing integration pattern exactly. Use when adding one more integration without inventing a second architecture.
|
||||
origin: ECC direct-port adaptation
|
||||
version: "1.0.0"
|
||||
---
|
||||
|
||||
# API Connector Builder
|
||||
|
||||
Use this when the job is to add a repo-native integration surface, not just a generic HTTP client.
|
||||
|
||||
The point is to match the host repository's pattern:
|
||||
|
||||
- connector layout
|
||||
- config schema
|
||||
- auth model
|
||||
- error handling
|
||||
- test style
|
||||
- registration/discovery wiring
|
||||
|
||||
## When to Use
|
||||
|
||||
- "Build a Jira connector for this project"
|
||||
- "Add a Slack provider following the existing pattern"
|
||||
- "Create a new integration for this API"
|
||||
- "Build a plugin that matches the repo's connector style"
|
||||
|
||||
## Guardrails
|
||||
|
||||
- do not invent a new integration architecture when the repo already has one
|
||||
- do not start from vendor docs alone; start from existing in-repo connectors first
|
||||
- do not stop at transport code if the repo expects registry wiring, tests, and docs
|
||||
- do not cargo-cult old connectors if the repo has a newer current pattern
|
||||
|
||||
## Workflow
|
||||
|
||||
### 1. Learn the house style
|
||||
|
||||
Inspect at least 2 existing connectors/providers and map:
|
||||
|
||||
- file layout
|
||||
- abstraction boundaries
|
||||
- config model
|
||||
- retry / pagination conventions
|
||||
- registry hooks
|
||||
- test fixtures and naming
|
||||
|
||||
### 2. Narrow the target integration
|
||||
|
||||
Define only the surface the repo actually needs:
|
||||
|
||||
- auth flow
|
||||
- key entities
|
||||
- core read/write operations
|
||||
- pagination and rate limits
|
||||
- webhook or polling model
|
||||
|
||||
### 3. Build in repo-native layers
|
||||
|
||||
Typical slices:
|
||||
|
||||
- config/schema
|
||||
- client/transport
|
||||
- mapping layer
|
||||
- connector/provider entrypoint
|
||||
- registration
|
||||
- tests
|
||||
|
||||
### 4. Validate against the source pattern
|
||||
|
||||
The new connector should look obvious in the codebase, not imported from a different ecosystem.
|
||||
|
||||
## Reference Shapes
|
||||
|
||||
### Provider-style
|
||||
|
||||
```text
|
||||
providers/
|
||||
existing_provider/
|
||||
__init__.py
|
||||
provider.py
|
||||
config.py
|
||||
```
|
||||
|
||||
### Connector-style
|
||||
|
||||
```text
|
||||
integrations/
|
||||
existing/
|
||||
client.py
|
||||
models.py
|
||||
connector.py
|
||||
```
|
||||
|
||||
### TypeScript plugin-style
|
||||
|
||||
```text
|
||||
src/integrations/
|
||||
existing/
|
||||
index.ts
|
||||
client.ts
|
||||
types.ts
|
||||
test.ts
|
||||
```
|
||||
|
||||
## Quality Checklist
|
||||
|
||||
- [ ] matches an existing in-repo integration pattern
|
||||
- [ ] config validation exists
|
||||
- [ ] auth and error handling are explicit
|
||||
- [ ] pagination/retry behavior follows repo norms
|
||||
- [ ] registry/discovery wiring is complete
|
||||
- [ ] tests mirror the host repo's style
|
||||
- [ ] docs/examples are updated if expected by the repo
|
||||
|
||||
## Related Skills
|
||||
|
||||
- `backend-patterns`
|
||||
- `mcp-server-patterns`
|
||||
- `github-ops`
|
||||
|
||||
Reference in New Issue
Block a user