* chore: wire docs/agents config into AGENTS.md Agent skills section
Add the `## Agent skills` discovery block pointing the engineering
skills at the existing docs/agents/{issue-tracker,triage-labels,domain}.md
files (issue tracker, triage label mapping, single-context domain docs).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* docs: rebrand to GSD Core and restructure docs with Diataxis
Reorganise the root README and docs/ around the Diataxis framework
(tutorials, how-to guides, reference, explanation), add new how-to
guides and schema references (STATE.md / CONTEXT.md / PLAN.md /
planning artifacts), and cross-link the whole set. Update the lone
legacy gsd-build reference to open-gsd; keep internal get-shit-done/
filesystem paths unchanged (directory rename tracked separately in
open-gsd/gsd-core#604). Regenerate the ja-JP, ko-KR, pt-BR and zh-CN
localised trees to mirror the new structure.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* docs: backfill changeset PR number (#605)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
3.2 KiB
Monitor de Janela de Contexto
Um hook pós-ferramenta (PostToolUse para o Claude Code, AfterTool para o Gemini CLI) que avisa o agente quando o uso da janela de contexto está elevado.
Problema
A barra de status exibe o uso de contexto para o usuário, mas o agente não tem consciência dos limites de contexto. Quando o contexto está se esgotando, o agente continua trabalhando até atingir o limite — potencialmente no meio de uma tarefa, sem nenhum estado salvo.
Como Funciona
- O hook da barra de status grava métricas de contexto em
/tmp/claude-ctx-{session_id}.json - Após cada uso de ferramenta, o monitor de contexto lê essas métricas
- Quando o contexto restante cai abaixo dos limiares, ele injeta um aviso como
additionalContext - O agente recebe o aviso em sua conversa e pode agir de acordo
Limiares
| Nível | Restante | Comportamento do Agente |
|---|---|---|
| Normal | > 35% | Sem aviso |
| ALERTA | <= 35% | Encerrar a tarefa atual, evitar iniciar trabalhos complexos novos |
| CRÍTICO | <= 25% | Parar imediatamente, salvar estado (/gsd-pause-work) |
Debounce
Para evitar sobrecarregar o agente com avisos repetidos:
- O primeiro aviso sempre é disparado imediatamente
- Avisos subsequentes exigem 5 usos de ferramenta entre eles
- A escalada de severidade (ALERTA -> CRÍTICO) ignora o debounce
Arquitetura
Hook da Barra de Status (gsd-statusline.js)
| escreve
v
/tmp/claude-ctx-{session_id}.json
^ lê
|
Monitor de Contexto (gsd-context-monitor.js, PostToolUse/AfterTool)
| injeta
v
additionalContext -> Agente recebe o aviso
O arquivo de ponte é um objeto JSON simples:
{
"session_id": "abc123",
"remaining_percentage": 28.5,
"used_pct": 71,
"timestamp": 1708200000
}
Integração com o GSD
O comando /gsd-pause-work do GSD salva o estado de execução. A mensagem de ALERTA sugere utilizá-lo. A mensagem CRÍTICA instrui o salvamento imediato do estado.
Configuração
Ambos os hooks são registrados automaticamente durante a instalação do npx @opengsd/gsd-core — nenhuma etapa manual é necessária em circunstâncias normais. Para detalhes de configuração de hooks, substituições de limiares e exemplos de registro manual, consulte Configuração.
Como referência rápida: o hook da barra de status se registra como statusLine em settings.json; o monitor de contexto (gsd-context-monitor.js) se registra como um hook PostToolUse (ou AfterTool para o Gemini CLI). Ambas as entradas utilizam o caminho absoluto do executável Node que executou o instalador. No Windows PowerShell, prefixe caminhos de executáveis entre aspas com &.
Segurança
- O hook envolve tudo em try/catch e encerra silenciosamente em caso de erro
- Ele nunca bloqueia a execução de ferramentas — um monitor com falha não deve interromper o fluxo de trabalho do agente
- Métricas obsoletas (com mais de 60s) são ignoradas
- Arquivos de ponte ausentes são tratados de forma elegante (subagentes, sessões novas)