Validate Providers against interfaces (read-only)
Validate that Providers, Collectors, and Transformers properly implement the interfaces. This skill only checks for discrepancies - it does NOT modify any files.
Compare interface definitions with provider implementations and report:
┌─────────────────────────────────────┐
│ Step 1: Read Interfaces │
│ /src/api/structures/ │
└───────────────┬─────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ Step 2: Read Providers │
│ /src/providers/ │
│ /src/collectors/ │
│ /src/transformers/ │
└───────────────┬─────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ Step 3: Compare & Report │
│ - Missing providers │
│ - Missing collectors │
│ - Missing transformers │
│ - Type safety issues │
└─────────────────────────────────────┘
find src/api/structures -name "I*.ts" -type f
For each interface, identify:
# Providers
find src/providers -name "*.ts" -type f
# Collectors
find src/collectors -name "*Collector.ts" -type f
# Transformers
find src/transformers -name "*Transformer.ts" -type f
For each interface:
For each interface with ICreate:
For each interface:
Search for anti-patterns:
as any usageany type annotationsas Type)# Validation Report: Providers
## Summary
- Interfaces: X
- Providers found: Y
- Collectors found: Z
- Transformers found: W
## ✅ Valid Items
- [Provider] `postEntity` - Uses Collector, returns via Transformer
- [Collector] `EntityCollector` - Properly typed
- [Transformer] `EntityTransformer` - All methods present
## ❌ Issues Found
- [Missing Collector] `AnotherEntity` - No collector for ICreate
- [Missing Transformer] `AnotherEntity` - No transformer defined
- [Type Safety] `postEntity.ts:27` - Uses `as any`
- [Type Safety] `getEntity.ts:15` - Inline transformation instead of Transformer
## ⚠️ Warnings
- [Unused Import] `postEntity.ts` - Imports unused module
- [Missing Null Check] `getEntity.ts:20` - Should check for null before transform
## Recommendation
Run `/fix-provider` to fix the issues above.
This skill is READ-ONLY.
To fix issues, use /fix-provider skill.
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer