feat(gestao): adiciona plugin gestao (agents, skills, knowledge e metadados do projeto)

This commit is contained in:
2026-10-28 16:08:53 +00:00
parent 7b2162ff29
commit de2d6f2fb5
91 changed files with 13525 additions and 0 deletions
+108
View File
@@ -0,0 +1,108 @@
---
name: worklog
description: Registo de trabalho e reflexão unificado. Analisa sessão, regista trabalho, identifica padrões, sugere acções. /reflect é alias (mesmo resultado). Variantes: deep (análise profunda), week (revisão semanal). Usar quando "worklog", "reflect", "reflexão", "registar trabalho", "log", ao parar timer.
layer: wiki
---
# /worklog v4.1 - Registo de Trabalho + Reflexão
**⚠️ EXECUÇÃO INLINE OBRIGATÓRIA — NUNCA FORK**
Quando `/worklog` ou `/reflect` é invocado, o agente principal executa o protocolo **directamente, in-situ, no thread principal**. Proibido:
- Chamar `Skill tool` para `worklog`/`reflect` (fork perde contexto conversacional — histórico de mensagens, Edit/Write calls, MCP tool calls, decisões já tomadas)
- Chamar `Agent tool` / Task subagente para executar o worklog (mesma razão)
O histórico da conversa actual é a **fonte primária** do worklog. Só o agente principal o tem. Qualquer fork devolve "nothing to log" e falha silenciosamente o registo — anti-padrão verificado empiricamente em 2026-04-23.
Skill unificada: regista trabalho, analisa sessão, sugere acções, guarda memória.
**`/reflect` = alias de `/worklog`** (mesmo resultado).
---
## Comandos
| Comando | Função |
|---------|--------|
| `/worklog` | Registo + reflexão da sessão |
| `/reflect` | Alias de `/worklog` |
| `/worklog view` | Ver últimos registos |
| `/reflect deep` | Análise profunda com histórico |
| `/reflect week` | Revisão semanal (segundas via /today) |
---
## Storage
| Tipo | Discussão | ID |
|------|-----------|-----|
| **Logs + Reflexões** | Logs | 31 |
| **Reflexões Profundas** | Reflexões | 32 |
| **Acções** | Acções de Melhoria | 33 |
**Projecto:** #65 (DES Stack Workflow) | **Staff:** 25 (AikTop)
---
## Protocolo Principal (/worklog e /reflect)
```
1. Obter hora via mcp__mcp-time__current_time
2. Verificar timer activo em ~/.claude-work/active-timer.json
3. ANALISAR sessão — FONTE PRIMÁRIA é o histórico conversacional actual do agente:
A) **Contexto conversa (OBRIGATÓRIO — FONTE PRIMÁRIA):**
O agente que executa esta skill tem, no seu próprio histórico, toda a informação que precisa.
Extrair directamente:
- Ficheiros modificados (procurar Edit/Write/MultiEdit nos tool_use da sessão)
- MCPs usados (procurar mcp__*__* tool calls)
- Erros encontrados e soluções aplicadas
- Padrões detectados, decisões arquitecturais
- Pedidos sucessivos do utilizador (sequência de mensagens user)
- Commits feitos (procurar `git commit` em tool_use)
- Subagentes dispatched (Agent tool calls)
B) **Contexto externo (COMPLEMENTAR — SEMPRE recolher):**
- git diff --stat (últimas 3h): ficheiros alterados
- git log --oneline --since="3 hours ago": commits recentes
- SQLite Observabilidade (se disponível): `~/.claude-work/sessions.db` tabela sessions com project_slug+started_at+tool_calls da sessão actual
- find 00-Inbox/ -name "worklog-$(date +%Y-%m-%d)*" -newer
- Ficheiros modificados nas últimas 3h no working directory
- Tarefas Desk com comentários criados hoje (mcp__desk-crm-v3__get_task_comments filter staff_id=1 or 25)
C) **Activity log do hook (FALLBACK — cross-session apenas):**
Usar só quando A) está genuinamente vazio (ex: /worklog invocado manualmente sem contexto activo).
- ls -lat ~/.claude-work/sessions/*.activity.log | head -5
- Escolher activity.log MAIOR modificado nas últimas 2h (>5KB)
- Ler o .json correspondente para metadata
REGRA: A) preenche o corpo do worklog. B) adiciona detalhes. C) só se A) vazio.
REGRA: Se A), B) e C) todos vazios após verificação rigorosa → NÃO gerar e reportar "nada novo para registar".
3b. VERIFICAR alinhamento com spec (se aplicavel):
- Detectar ficheiros modificados na sessao
- Procurar SPEC.md no directorio pai (ate 3 niveis)
- SE spec approved/in_progress: comparar ficheiros vs scope items
- SE ficheiro nao mapeia para scope: incluir SCOPE ALERT no worklog
- SE sem SPEC.md: ignorar silenciosamente
4. VERIFICAR se há algo novo a documentar
- Se conversa vazia → recolher contexto externo (passo 3B)
- Se contexto externo tambem vazio → NÃO gerar
- NUNCA desistir sem verificar fontes externas primeiro
5. Gerar comentário HTML (ver formato abaixo)
6. mcp__desk-crm-v3__add_discussion_comment({
discussion_id: 31,
content: html,
staff_id: 25
})
7. SE acções sugeridas:
mcp__desk-crm-v3__add_discussion_comment({
discussion_id: 33,
content: accoes_html,
staff_id: 25
})
7b. TRIGGER improvement-evaluator no desktop (localhost):
Bash: curl -s -X POST http://localhost:8095/trigger
(falha silenciosa OK — o systemd timer apanha em 30min)
8. SE insight valioso → mcp__mem_save_memory({ text: "[resumo do insight]" })
8b. GIT CHECKPOINT (automático se em projecto git):
a. Verificar se existe `.desk-project` no directório actual (ou até 3 níveis acima)
b. Se sim: verificar se é repositório