--- name: component-generator description: > Gera componentes Claude Code seguindo templates Descomplicar®. Use when "criar skill", "criar agent", "novo componente", "gerar template", "scaffolding", "criar command". author: Descomplicar® version: 1.0.0 desk_task: 1441 allowed-tools: Read, Write, Edit, Glob, ToolSearch --- # Component Generator Skill para criar componentes de alta qualidade automaticamente, fechando o ciclo CRIAR → VALIDAR → REGISTAR. ## Triggers Esta skill deve ser activada quando: - Utilizador pede para criar nova skill - Utilizador pede para criar novo agent - Utilizador pede para criar novo command - Necessidade de scaffold de componente identificada - Comando `/descomplicar:create` é invocado ## Capabilities ### 1. Scaffold Skill Cria estrutura completa de skill com frontmatter obrigatório. **Comando:** ``` /descomplicar:create skill ``` **Template Gerado:** ```markdown --- name: description: > [Capability]. Use when "[trigger1]", "[trigger2]", "[keyword1]", "[keyword2]", "[keyword3]". author: Descomplicar® version: 1.0.0 desk_task: XXXX allowed-tools: Read, Glob, Grep --- # [Descrição da skill] ## Triggers Esta skill deve ser activada quando: - [Trigger 1] - [Trigger 2] ## Capabilities ### 1. [Capability 1] [Descrição] ### 2. [Capability 2] [Descrição] ## Workflow ``` [PASSO1] → [PASSO2] → [PASSO3] → [PASSO4] ``` ## Exemplo de Uso ``` User: [Exemplo de input] Assistant: [Exemplo de output] ``` ## Limites - [Quando NÃO usar] - [Escopo máximo] ``` **Acções Automáticas:** 1. Criar directório `skills//` 2. Gerar `SKILL.md` com template 3. Registar em `cr_skills` (MySQL) 4. Criar tarefa Desk CRM (se desk_task fornecido) ### 2. Scaffold Agent Cria ficheiro de agente com mapeamento de MCPs por categoria. **Comando:** ``` /descomplicar:create agent [--category dev|business|marketing|infra] ``` **Template Gerado:** ```markdown --- name: description: > [Descrição]. Use for [uso1], [uso2], [uso3]. model: sonnet tools: Read, Glob, Grep, ToolSearch allowed-mcps: [MCPs baseados na categoria] category: author: Descomplicar® version: 1.0.0 desk_task: XXXX --- # [Descrição do agente] ## Quando Usar USAR PROATIVAMENTE para: - [Caso de uso 1] - [Caso de uso 2] ## Capabilities ### [Capability 1] - [Detalhe] ## Tools Disponíveis | Tool | Uso | |------|-----| | [tool] | [descrição] | ## Workflow Típico ``` 1. [Passo 1] 2. [Passo 2] 3. [Passo 3] 4. [Passo 4] ``` ## Colaborações - [Agente relacionado 1] - [Agente relacionado 2] ## Limites - [Limite 1] - [Limite 2] ``` **MCPs por Categoria:** | Categoria | MCPs Primary | MCPs Recommended | |-----------|--------------|------------------| | dev | gitea, filesystem | ssh-unified, desk-crm-v3 | | business | desk-crm-v3, moloni | google-workspace | | marketing | google-workspace, tavily | desk-crm-v3 | | infra | ssh-unified, cwp | filesystem, gitea | **Acções Automáticas:** 1. Criar `agents/.md` 2. Registar em `cr_agents` (MySQL) 3. Criar mapeamentos em `cr_agent_mcps` 4. Sugerir colaborações em `cr_agent_collaborations` 5. Criar tarefa Desk CRM ### 3. Scaffold Command Cria ficheiro de comando com namespace e arguments. **Comando:** ``` /descomplicar:create command ``` **Template Gerado:** ```markdown --- name: description: > [Descrição do comando]. [O que faz]. argument-hint: "[argumentos opcionais]" --- # /descomplicar: [Descrição detalhada] ## Objectivo [O que este comando faz] ## Sintaxe ``` /descomplicar: [action] [args] ``` ## Acções Disponíveis ### 1. [Acção 1] ``` /descomplicar: [action1] ``` [Descrição] ## Output Esperado ``` ╔═══════════════════════════════════════════╗ ║ [OUTPUT VISUAL] ║ ╚═══════════════════════════════════════════╝ ``` ``` **Acções Automáticas:** 1. Criar `commands/.md` 2. Actualizar `plugin.json` com novo command ### 4. Registar em MySQL ```sql -- Para Skills INSERT INTO cr_skills (slug, name, category, status, desk_task, created_at) VALUES (?, ?, ?, 'active', ?, NOW()); -- Para Agents INSERT INTO cr_agents (slug, name, category, status, desk_task, created_at) VALUES (?, ?, ?, 'active', ?, NOW()); ``` ### 5. Criar Tarefa Desk CRM ```sql INSERT INTO tbltasks (name, description, rel_type, rel_id, milestone, status, dateadded, startdate, addedfrom) VALUES ( ': ', '

Propósito

...

Estado

Em desenvolvimento

', 'project', 65, -- Stack Workflow ?, -- Milestone apropriado 1, NOW(), CURDATE(), 1 ); ``` ## Workflow Completo ``` CREATE → VALIDATE → REGISTER → DESK TASK → READY ↓ ↓ ↓ ↓ Template Score≥70 MySQL Tracking ``` ## Validação Automática Após criação, invoca `quality-validator` para garantir score >= 70: - Se score < 70: ALERTA + sugestões de melhoria - Se score >= 70: componente activado ## Exemplo de Uso ``` User: Cria uma nova skill para gestão de backups Component Generator: 1. [Cria directório skills/backup-manager/] 2. [Gera SKILL.md com template Descomplicar®] 3. [Valida: score 65/100 - Draft] 4. [Regista em cr_skills (id: 55)] 5. [Cria tarefa Desk #1503] 6. Resposta: "Skill backup-manager criada com sucesso! - Path: skills/backup-manager/SKILL.md - Score: 65/100 (Draft) - Próximo passo: Editar e correr /descomplicar:validate" ``` ## Limites - Apenas cria estrutura base - conteúdo deve ser desenvolvido - Score inicial tipicamente 50-70 (Draft) - Não cria componentes duplicados (verifica slug existente) - Requer conexão MySQL para registo em cr_* - Não modifica componentes existentes (usar Edit tool)