Files
claude-plugins/project-manager/skills/sprint/SKILL.md
Emanuel Almeida 2cb3210962 feat: adiciona 12 plugins Descomplicar ao marketplace
Plugins: automacao, crm-ops, design-media, dev-tools, gestao,
infraestrutura, marketing, negocio, perfex-dev, project-manager,
wordpress + hello-plugin (existente).

Totais: 83 skills, 44 agents, 12 datasets.json

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 21:41:24 +00:00

7.5 KiB

name, description, author, version, quality_score, user_invocable, category, tags, desk_project, allowed-tools, mcps, dependencies
name description author version quality_score user_invocable category tags desk_project allowed-tools mcps dependencies
sprint Sprints flexiveis v1.0. Le tasks do Desk CRM, agrupa em sprints com checkpoints. Duracao flexivel por projecto. Checkpoint a meio e review no final. Use when "sprint", "planning", "planeamento", "sprint plan", "sprint review", "check-in", "o que fazer a seguir", "prioridades". Descomplicar® Crescimento Digital 1.0.0 70 true productivity
sprint
planning
agile
desk
tasks
checkpoint
review
65 Read, Write, Edit, Bash, Glob, mcp__desk-crm-v3, mcp__mcp-time, mcp__memory-supabase desk-crm-v3, mcp-time, memory-supabase
skills mcps
spec
desk-crm-v3
mcp-time

/sprint v1.0 - Sprints Flexiveis

Sprints com duracao flexivel, Desk CRM como fonte de verdade, checkpoints obrigatorios.


Comandos

Comando Funcao
/sprint Mostrar sprint activo
/sprint plan Criar sprint a partir de tasks Desk
/sprint check-in Checkpoint a meio do sprint
/sprint review Review final do sprint
/sprint close Fechar sprint e calcular metricas
/sprint add <task_id> Adicionar task ao sprint activo
/sprint remove <task_id> Remover task do sprint

SPRINT.md Template

---
sprint_id: YYYY-WNN-[projecto]
project_id: null
start_date: YYYY-MM-DD
end_date: YYYY-MM-DD
status: active
checkpoint_done: false
spec_refs: []
tasks_planned: 0
tasks_added_after: 0
---

# Sprint: [Goal em 1 frase]

## Tasks

| Desk ID | Task | Prioridade | Estimativa | Status | Tempo Real |
|---------|------|-----------|-----------|--------|-----------|

## Checkpoint (Meio do Sprint)
_Data: [a preencher]_
- On track: [sim/nao]
- Bloqueios: [lista]
- Scope changes: [lista]
- Accao: [continuar/ajustar]

## Review (Final do Sprint)
_Data: [a preencher]_
- Tasks completadas: X/Y
- Tasks adicionadas pos-planeamento: N
- Tempo estimado: Xh
- Tempo real: Yh
- Scope changes: N
- Licoes aprendidas: [lista]
- Proximos passos: [lista]

Protocolos

/sprint (sem argumentos)

1. Procurar SPRINT.md no directorio actual (ou pais, max 3 niveis)
2. SE encontrado e status == active:
   a. Ler SPRINT.md
   b. Buscar estado actual das tasks no Desk CRM:
      Para cada task_id na tabela:
        mcp__desk-crm-v3__get_task({ id: task_id })
   c. Mostrar:
      ---
      ## Sprint Activo: [goal]
      **Projecto:** [nome] (#id)
      **Periodo:** [start] -> [end] (dia X de Y)
      **Checkpoint:** [feito/pendente]

      | Task | Status Desk | Sprint |
      |------|------------|--------|

      **Progresso:** X/Y tasks (Z%)
      ---
3. SE nao encontrado:
   "Sem sprint activo. Usar /sprint plan para criar."

/sprint plan

1. mcp__mcp-time__current_time -> data actual
2. Detectar contexto:
   a. Ler .desk-project se existe -> project_id
   b. Se nao: perguntar projecto
3. Buscar tasks abertas do Desk CRM:
   mcp__desk-crm-v3__get_tasks({ project_id: X, status: [1, 4] })
   (status 1=Not Started, 4=In Progress)
4. Verificar SPEC.md:
   - Se existe e aprovado: incluir referencia no sprint
   - Se nao existe: WARN "Sem spec aprovado. Considere /spec create."
   - Nao bloquear por isto (gradual adoption)
5. Apresentar tasks ao Emanuel por prioridade:

   ## Tasks Disponiveis para Sprint

   ### Urgente / Alta
   - #1450: Implement API (4h estimado)
   - #1451: Fix login bug (1h estimado)

   ### Normal
   - #1448: Write docs (2h estimado)

   ### Baixa
   - #1452: Refactor CSS (3h estimado)

6. Perguntar:
   "Que tasks incluir neste sprint? E data limite?"
   (pode ser: "todas as urgentes", "#1450 e #1448", etc.)
7. Calcular estimativa total
8. GERAR SPRINT.md:
   - sprint_id: YYYY-WNN-[projecto] (semana ISO actual)
   - tasks_planned: contagem
   - Preencher tabela de tasks
9. CONFIRMAR: "Sprint com [N] tasks, ~[X]h, ate [data]. Criar?"
10. Gravar SPRINT.md
11. Guardar em memory-supabase:
    save_memory({
      content: "Sprint [id] iniciado: [N] tasks, [X]h, ate [data]",
      tags: ["sprint", "project-[id]", sprint_id]
    })
12. "Sprint criado. Check-in recomendado em [data_meio]."

/sprint check-in

1. Ler SPRINT.md
   - Se nao existe ou status != active: "Sem sprint activo."
2. Se checkpoint_done == true:
   "Checkpoint ja realizado. Para novo check-in, usar /sprint review."
3. mcp__mcp-time__current_time -> calcular dia actual vs periodo
4. Para cada task do sprint:
   mcp__desk-crm-v3__get_task({ id: task_id })
   - Comparar status actual vs planeado
5. Calcular:
   - % tempo decorrido
   - % tasks completadas
   - Tasks adicionadas apos planeamento (comparar com tasks_planned)
6. Detectar alertas:
   - >50% tempo decorrido mas <40% tasks feitas -> "ATRASADO"
   - Tasks novas adicionadas -> "SCOPE CREEP: [N] tasks nao planeadas"
   - Tasks bloqueadas -> "BLOQUEIO: [task]"
7. Apresentar:
   ---
   ## Checkpoint Sprint [id]

   **Progresso:** X/Y tasks (Z%)
   **Tempo:** dia M de N (W% decorrido)
   **Alerta:** [verde/amarelo/vermelho]

   ### Tasks
   | Task | Planeado | Actual |
   |------|----------|--------|

   ### Problemas Detectados
   - [lista ou "nenhum"]

   ### Recomendacao
   [Continuar como esta / Ajustar scope / Pedir ajuda]
   ---
8. Perguntar: "Algum ajuste? Notas?"
9. Actualizar SPRINT.md:
   - Preencher seccao Checkpoint
   - checkpoint_done: true

/sprint review

1. Ler SPRINT.md
   - Se status != active: "Sprint nao activo."
2. mcp__mcp-time__current_time
3. Estado final de todas as tasks:
   Para cada task: mcp__desk-crm-v3__get_task({ id })
4. Buscar tempo real:
   mcp__desk-crm-v3__get_task_time_logs({ task_id }) para cada task
5. Calcular metricas:
   - Completion rate: tasks_done / tasks_total
   - Scope creep: tasks_added_after (comparar lista actual vs original)
   - Tempo: soma estimativas vs soma real
   - Precisao: |estimado - real| / estimado * 100
6. Apresentar review:
   ---
   ## Sprint Review: [id]

   ### Resultado: [X/Y tasks completadas]

   | Task | Estimativa | Tempo Real | Status |
   |------|-----------|-----------|--------|

   ### Metricas
   - Completion rate: Z%
   - Scope changes: N tasks adicionadas/removidas
   - Tempo: Xh estimado vs Yh real (precisao: W%)

   ### Retrospectiva
   - O que correu bem?
   - O que pode melhorar?
   - Accoes para proximo sprint?
   ---
7. Perguntar retrospectiva ao Emanuel
8. Actualizar SPRINT.md seccao Review
9. Registar metricas:
   a. memory-supabase:
      save_memory({
        content: "Sprint [id] review: [X/Y] tasks, [scope_changes] changes, [Yh] real vs [Xh] estimado",
        tags: ["sprint", "metrics", sprint_id, "project-[id]"]
      })
   b. Se .desk-project existe: comentar na task Desk (formato HTML #27)
10. Perguntar: "Planear proximo sprint? /sprint plan"

### `/sprint close`

  1. Executar /sprint review se review nao feito
  2. Actualizar SPRINT.md: status -> closed
  3. "Sprint fechado. Metricas registadas."

### `/sprint add <task_id>`

  1. Ler SPRINT.md activo
  2. Verificar se task_id ja esta no sprint
  3. Buscar task do Desk: mcp__desk-crm-v3__get_task({ id: task_id })
  4. Adicionar a tabela de tasks
  5. Incrementar tasks_added_after no frontmatter
  6. WARN: "Task adicionada apos planeamento. Isto conta como scope change."

---

## Regras

1. **NUNCA** criar sprint sem consultar Desk CRM
2. **SEMPRE** perguntar ao Emanuel que tasks incluir (nao decidir sozinho)
3. Checkpoint e recomendado mas nao obrigatorio
4. Review e obrigatorio antes de fechar sprint
5. Metricas sao factuais - nao ajustar para "parecer bem"
6. Sprint nao tem cadencia fixa - dura o que o projecto precisa