5.0 KiB
5.0 KiB
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 toolparaworklog/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