Synthèse automatique
Crée une couche de données complète pour une ressource, incluant types, contrats, adaptateurs et service, en suivant une architecture spécifique.
Points forts
- Automatise la création cohérente de la couche service/adapter/types
- Assure le respect des conventions (snake_case pour API, camelCase pour l'application)
- Génère des adaptateurs purs sans effets de bord et un service sans try/catch
- Valide avec tsc --noEmit après génération
Limites
- Nécessite que l'utilisateur fournisse des détails sur le format JSON et les opérations
- Suppose que l'architecture suit exactement les sections 4.1-4.3 de docs/ARCHITECTURE.md
- Ne gère pas les cas avancés comme l'authentification ou la pagination
À utiliser lors de l'ajout d'une nouvelle intégration API dans un projet Angular suivant une architecture avec séparation stricte des types et adaptateurs.
Ne pas utiliser si le projet n'utilise pas HttpClient Angular ou si l'architecture ne correspond pas aux sections spécifiées.
Analyse de sécurité
SûrThe skill only generates code files and runs 'npx tsc --noEmit' for validation. It does not execute external scripts, delete files, or exfiltrate data. No destructive commands or obfuscation are present. Allowed tools are used for legitimate purposes.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
dev-create-service productsdev-create-service users
Endpoint base URL: /api/users
Response JSON format: { "id": 1, "name": "John", "email": "john@example.com" }
Operations: GET list, GET by ID, POST, PATCH, DELETEname: dev-create-service description: "Use when adding API integration to a module — creates types, contracts, adapter, and service layer." user-invocable: true argument-hint: "[resource-name]" allowed-tools: Read, Write, Edit, Bash, Glob, Grep
Create the complete data layer for a resource following docs/ARCHITECTURE.md sections 4.1-4.3.
Resource: $ARGUMENTS
Steps
-
Read
docs/ARCHITECTURE.mdsections 4.1 (Services), 4.2 (Adapters), 4.3 (Types). -
Ask the user:
- What is the endpoint base URL? (e.g.
/api/marketplace) - What is the response JSON format? (ask for an example or describe the fields)
- Which operations? (GET list, GET by ID, POST, PATCH, DELETE)
- What is the endpoint base URL? (e.g.
-
Create in order:
a.
types/[resource].types.ts-- mirrors API exactly (snake_case) b.types/[resource].contracts.ts-- app contract (camelCase, correct types) c.adapters/[resource].adapter.ts-- inbound (API->App) + outbound (App->API) d.services/[resource].service.ts-- HttpClient only, inject(HttpClient), @Injectable({ providedIn: 'root' }) -
Required rules:
- Service: NO try/catch, NO .map()/.filter()/new Date()
- Adapter: pure functions, no side effects
- Types separated: .types.ts (API) != .contracts.ts (App)
-
Validate:
npx tsc --noEmit
Specification Design-to-Dev
Developpement
Traduisez vos maquettes en specifications techniques pour les developpeurs.
Patterns d'exports et fichiers barrel
Developpement
Définit les conventions pour les exports de modules et les fichiers baril : exports nommés uniquement, pas de wildcards plats (sauf `export * as Name` pour les composants composés), commentaires par section, types exportés avec les valeurs, et une ligne d'export par fichier source. Aide à maintenir des exports cohérents et optimisés pour le tree-shaking dans les applications portal utilisant Turbopack ou des bundlers similaires.
Créer une compétence d'agent
Developpement
Guide étape par étape pour créer une compétence d'agent structurée, incluant structure de répertoire, format SKILL.md et principes de conception.