Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Strategy Anchor OS

Memória externa persistente e fail-closed para trabalho de estratégia (não-código) no Claude Code.

A conversa com a IA esquece. Decisões viram "a gente já falou disso", hipótese vira "fato", e ninguém sabe mais em que pé está o projeto. O Strategy Anchor OS resolve isso movendo a fonte da verdade da conversa para arquivos canônicos numa pasta .strategy-anchor/, e instalando um validador determinístico que veta estados quebrados.

Princípio central: a conversa não é a fonte da verdade — os arquivos são. Se o sistema não consegue provar o estado pelos arquivos, ele falha fechado (para e avisa) em vez de improvisar.

Para quem é

Quem usa o Claude Code para marketing, produto, GTM, comercial, growth, operação, decisão executiva — qualquer trabalho estratégico longo onde perder contexto custa caro. Não é um framework de desenvolvimento de software.

O que você ganha

  • Estado que sobrevive à sessão. Abra uma janela nova e o agente reconstrói tudo só lendo os arquivos.
  • Decisões com rastro (ADR). Decisão aceita exige um ADR; ADR aceito é imutável; mudar de ideia cria um novo que marca o antigo como superseded.
  • Hipótese ≠ decisão. Hipóteses têm Status (aberta / em teste / confirmada / rejeitada). O que foi rejeitado não some — vai pro cemitério com motivo.
  • Fail-closed de verdade. Um validador (anchor-doctor) checa invariantes e sai com erro se o estado não fecha. Os hooks do Claude Code injetam esse estado a cada sessão/prompt e bloqueiam o fim do turno se algo quebrou.
  • Turn Receipt Gate. Trava de disciplina por turno: cada prompt ganha um turn_id, e um turno estratégico só fecha se deixar um Turn Receipt desse id (heading ## Turn Receipt — <id> ou token TURN_ID=<id> em CONTEXT_LEDGER.md/AUDIT_LOG.md). Senão, o Stop falha fechado (exit 2). mtime não basta (tocar arquivo não engana o gate) e stop_hook_active não é bypass (esgotada a auto-correção, grava BREACH e o anchor-doctor trava até o receipt). Turno exploratório de verdade? /anchor-nochange registra um receipt nochange e libera.
  • AUTO CAPTURE MODE. Você conversa normal ("vamos priorizar X", "acho que Y, mas precisa validar", "mudei de ideia") e o agente detecta e registra sozinho — decisão, hipótese, evidência, mudança de direção — nos arquivos certos. Você não precisa decorar slash command: eles existem só como override manual.

Instalação

Precisa de Node 18+. Na pasta do seu projeto de estratégia:

node /caminho/para/strategy-anchor-os/install-strategy-anchor.js --target .

Opções:

Flag O que faz
--target <dir> pasta destino (padrão: diretório atual)
--force sobrescreve arquivos existentes (sempre faz backup .bak-<timestamp> antes)
--no-hooks não instala os hooks do Claude Code
--dry-run mostra o que faria, sem escrever nada

O instalador é idempotente e não destrói sua config: se você já tem .claude/settings.json com hooks próprios, eles são preservados (merge por evento, sem duplicar). Ao terminar, ele roda o anchor-doctor e mostra o resultado.

Como começar um novo projeto

Quatro passos. Você não precisa entender as fases nem decorar slash command antes de começar — o agente classifica o início sozinho a partir da sua conversa.

Pré-requisitos: Node 18+ instalado, Claude Code instalado (comando claude) e este repositório strategy-anchor-os baixado em algum lugar da sua máquina (você vai apontar para o install-strategy-anchor.js dele no passo 2).

1. Criar a pasta do projeto

Windows:

mkdir "C:\Users\LUCAS\Downloads\EMBEDED FINANCE ESTRATEGIA"
cd "C:\Users\LUCAS\Downloads\EMBEDED FINANCE ESTRATEGIA"

macOS / Linux:

mkdir -p ~/projetos/embedded-finance-estrategia
cd ~/projetos/embedded-finance-estrategia

2. Instalar o Strategy Anchor OS

A partir da pasta do projeto, aponte para o instalador do repo:

node /caminho/para/strategy-anchor-os/install-strategy-anchor.js --target .

No Windows, com caminho com espaço, use aspas:

node "C:\caminho\para\strategy-anchor-os\install-strategy-anchor.js" --target .

/caminho/para/strategy-anchor-os é onde você baixou este repo. Não sabe o caminho? Abra a pasta do repo no explorador/terminal e copie o caminho até a raiz que contém install-strategy-anchor.js.

Isso cria .strategy-anchor/, .claude/, CLAUDE.md e README.md no projeto e roda o anchor-doctor ao final. Instalou certo? Se a pasta agora tem .strategy-anchor/ e CLAUDE.md e o anchor-doctor terminou com exit 0 (OK), está pronto.

3. Abrir no Claude Code

De dentro da pasta do projeto (a mesma onde você instalou):

claude

4. Começar com o Start Prompt

Cole o Start Prompt abaixo, preencha os 3 campos no fim (Tema, Contexto inicial, Objetivo) e mande. O agente faz o resto: roda o Anchor Loop, lê os arquivos canônicos, detecta o modo certo de começar e registra tudo sozinho (Auto Capture Mode). Slash commands são opcionais.

START PROMPT — iniciar projeto estratégico

Vamos iniciar este projeto usando o Strategy Anchor OS.

Quero trabalhar em modo automático, com Auto Capture Mode ativo. Não quero depender de slash commands.

Primeiro, carregue os arquivos canônicos do Strategy Anchor OS e verifique se este projeto já tem estado registrado.

Depois, identifique qual é o melhor modo inicial:

1. Brainstorm — se a ideia ainda estiver aberta, confusa ou exploratória.
2. Contexto — se eu já tiver informações soltas e precisar organizar.
3. Discovery — se precisamos entender problema, público, mercado ou oportunidade.
4. Research — se precisamos pesquisar antes de decidir.
5. Estratégia — se já temos tese e precisamos criar opções estratégicas.
6. Decisão — se já estamos perto de bater o martelo.
7. Execução — se já existe decisão e precisamos transformar em plano.
8. Auditoria — se já existe estratégia e precisamos revisar riscos/contradições.

Se o projeto estiver vazio, comece pela Fase 0 — Intake.

Registre automaticamente:

* contexto inicial em STATE.md;
* fase atual em CURRENT_PHASE.md;
* hipóteses em HYPOTHESES.md;
* dúvidas em STATE.md (Open Questions) ou NEXT_ACTIONS.md;
* próximos passos em NEXT_ACTIONS.md;
* qualquer decisão clara em DECISION_LOG.md/ADR;
* receipt do turno no CONTEXT_LEDGER.md.

Antes de começar, me faça no máximo 5 perguntas essenciais para calibrar o projeto.

Se eu já trouxer contexto suficiente, não faça perguntas desnecessárias: organize o contexto, classifique o projeto e proponha a próxima fase.

Não trate hipótese como decisão: o que ainda não foi batido o martelo entra como hipótese a validar, não como decisão.

Tema do projeto:
[descreva aqui o projeto]

Contexto inicial:
[cole aqui tudo que já existe: ideia, problema, call, produto, mercado, restrições, objetivo, dúvidas]

O que eu quero conseguir ao final:
[ex: tese estratégica, plano de GTM, posicionamento, decisão de produto, plano de execução, diagnóstico]

Comece agora.

QUICK START PROMPT

Para quem só quer colar e ir:

Vamos iniciar este projeto no Strategy Anchor OS. Ative Auto Capture Mode, leia os arquivos canônicos, detecte se devo começar por Brainstorm, Contexto, Discovery, Research, Estratégia, Decisão, Execução ou Auditoria. Registre estado, hipóteses, dúvidas e próximos passos automaticamente. Não trate hipótese como decisão. Tema: [descrever]. Contexto inicial: [colar]. Objetivo final: [descrever].

Existe também um atalho opcional /anchor-start que carrega esse mesmo Start Prompt e guia o início. Ele é opcional — o caminho principal é colar o prompt acima.

Qual modo inicial escolher?

O Start Prompt detecta o modo sozinho, mas se quiser saber para onde ele vai te levar:

Sua situação Modo inicial Fase
Você está perdido, a ideia ainda é vaga Brainstorm 3
Tem informação solta/bagunçada para organizar Contexto 1
Quer entender problema, público ou mercado Discovery 2
Precisa validar com fontes/dados antes de decidir Research 4
Quer comparar caminhos estratégicos Estratégia 6
Está perto de bater o martelo Decisão 7
Já decidiu e quer virar plano Execução 8
Quer revisar uma estratégia pronta (riscos/contradições) Auditoria 9
Pasta vazia, nada ainda Intake 0

Exemplos práticos

1. Produto novo — DOC / Embedded Finance

Objetivo: decidir se DOC é produto principal, infraestrutura ou tese de mercado.

Vamos iniciar este projeto no Strategy Anchor OS. Ative Auto Capture Mode, leia os arquivos canônicos e detecte o modo inicial. Não trate hipótese como decisão.
Tema: Produto DOC / Embedded Finance.
Contexto inicial: temos o DOC funcionando como peça interna; surgiu a dúvida se ele deve virar produto vendável, ficar como infraestrutura para outras frentes, ou virar uma tese de mercado maior. Ainda não batemos o martelo.
Objetivo final: uma decisão registrada (com ADR) sobre o papel do DOC, sustentada por hipóteses e evidências.

2. Marketing / Growth — aquisição para wellness

Objetivo: definir canal, ICP, oferta e mensagem.

Vamos iniciar este projeto no Strategy Anchor OS. Ative Auto Capture Mode, leia os arquivos canônicos e detecte o modo inicial. Não trate hipótese como decisão.
Tema: estratégia de aquisição para um produto de wellness.
Contexto inicial: produto pronto, sem canal de aquisição definido; temos palpites sobre público mas nada validado; orçamento limitado.
Objetivo final: definir canal principal, ICP, oferta e mensagem — com as suposições registradas como hipóteses a validar antes de virar decisão.

3. Operação / CS — reorganizar atendimento e retenção

Objetivo: diagnosticar gargalos, criar hipóteses e plano de execução.

Vamos iniciar este projeto no Strategy Anchor OS. Ative Auto Capture Mode, leia os arquivos canônicos e detecte o modo inicial. Não trate hipótese como decisão.
Tema: reorganizar atendimento e retenção (CS).
Contexto inicial: churn subindo, atendimento reativo e sem processo claro; suspeitamos de gargalos no onboarding e no tempo de primeira resposta, mas falta diagnóstico.
Objetivo final: um diagnóstico dos gargalos, hipóteses priorizadas e um plano de execução com próximos passos concretos.

Fluxo diário recomendado

  1. Abra a pasta no Claude Code. O hook injeta o estado atual no início da sessão.
  2. Fale naturalmente — "vamos priorizar X", "acho que Y, mas precisa validar", "mudei de ideia sobre Z". Você não precisa de comando nenhum.
  3. O sistema registra sozinho decisões, hipóteses, evidências e mudanças de direção nos arquivos certos (Auto Capture Mode), antes de responder.
  4. Se o agente esquecer de registrar, o Turn Update Gate bloqueia o fim do turno (exit 2) até o Turn Receipt ser escrito — a disciplina é cobrável por máquina.
  5. Ao final, ele atualiza HANDOFF.md e STATE.md para a próxima sessão.
  6. Na próxima sessão, ele retoma pelos arquivos, não pela conversa — abra uma janela nova e o estado está lá.

Como usar (no Claude Code)

Abra a pasta no Claude Code. Todo início de sessão o hook injeta o estado atual. No fluxo normal você só conversa — o AUTO CAPTURE MODE detecta decisões/hipóteses/evidências/mudanças de direção na sua fala e registra nos arquivos certos sozinho. Os comandos abaixo são overrides opcionais (forçar ou ajustar um registro), nunca obrigatórios no dia a dia:

Comando (override opcional) Para quê
/anchor-start carrega o Start Prompt e guia o início de um projeto novo (opcional — o caminho principal é colar o Start Prompt do README)
/anchor-status onde estamos, fase, saúde do doctor
/anchor-load reconstruir o entendimento só pelos arquivos
/anchor-resume retomada completa (responde as 9 perguntas-chave)
/anchor-decide <título> registrar uma decisão como ADR
/anchor-hypo <hipótese> registrar/atualizar hipótese com Status
/anchor-research registrar evidência com fonte/origem
/anchor-phase avançar de fase com critério
/anchor-handoff ritual de fim de sessão (escreve o HANDOFF)
/anchor-nochange marcar um turno como exploratório/sem mudança (registra um Turn Receipt nochange e libera o gate)

Rode o validador a qualquer momento:

node .strategy-anchor/tests/validate.js
# exit 0 = OK | 1 = warnings | 2 = FAIL-CLOSED (estado quebrado, conserte antes de avançar)

Como funciona

  • Decidir (LLM): o Claude pensa e escreve nos arquivos canônicos.
  • Validar (determinístico, sem LLM): o anchor-doctor lê os arquivos e checa forma/existência/consistência. Quebrou invariante → exit 2.

Essa separação é a robustez: o validador olha o estado real dos arquivos, que o modelo pode não enxergar direito. Detalhe em templates/.strategy-anchor/system/METHOD.md.

Duas travas distintas, propositalmente:

  • anchor-doctor valida o estado (arquivos existem, forma certa, consistência cruzada).
  • Turn Receipt Gate valida a disciplina por turno: prompt estratégico tem que terminar com um Turn Receipt ligado ao turn_id, senão o Stop veta (exit 2). O UserPromptSubmit grava runtime/current_turn.json com o turn_id; o Stop procura o receipt (heading ou token TURN_ID=<id>). mtime é só sinal auxiliar — não satisfaz o gate. stop_hook_active não libera nada: esgotada a auto-correção (MAX_RECOVERY), grava BREACH turno <id> e para com {"continue": false}, e o anchor-doctor falha fechado até o receipt do <id> (a dívida persiste entre janelas).

Fases (0-10)

Intake → Context Loading → Discovery → Brainstorm → Research → Hypothesis Mapping → Strategic Options → Decision → Execution Plan → Audit → Handoff/Resume.

O ANCHOR LOOP (rodado automaticamente pelo agente)

A cada prompt estratégico: LOAD → CLASSIFY → CHECK DRIFT → UPDATE → RESPOND → CHECKPOINT. Quem roda isso é o agente, a partir da sua conversa natural (AUTO CAPTURE MODE) — não você via comando.

Estrutura instalada

.strategy-anchor/
  system/      METHOD, PHASES, OPERATING_RULES, ANCHOR_LOOP, VALIDATION_PROTOCOL
  state/       STATE.md, CURRENT_PHASE.md, CONTEXT_LEDGER.md
  decisions/   DECISION_LOG.md + adr/ (ADRs append-only)
  hypotheses/  HYPOTHESES.md, RULES.md, REJECTED.md
  research/    RESEARCH_INDEX.md + raw/
  brainstorm/, execution/, handoffs/, audits/
  runtime/     current_turn.json (estado efêmero do Turn Receipt Gate: turn_id, status)
  templates/   modelos de ADR, hipótese, handoff...
  tests/       validate.js (anchor-doctor) + test_turn_gate.js + test_auto_capture.js
               + Long Context Torture Suite (test_large_prompt_hook, test_stop_recovery_gate,
                 test_turn_receipt_gate, test_multi_turn_natural_language, cold_resume_setup,
                 test_cold_resume_subject.md, test_context_poisoning_subject.md, expected_recall.json)
  hooks/       SessionStart, UserPromptSubmit, PreCompact, Stop, nochange
.claude/
  commands/    os 9 comandos /anchor-*
  settings.json (hooks)
CLAUDE.md      roteador curto + contrato do loop

O que NÃO promete

Sem garantia absoluta. O enforcement determinístico cobre o verificável por máquina (arquivos existem, seções presentes, fase válida, hipótese com status, decisão com ADR, consistências cruzadas). A correção semântica (se o conteúdo registrado é "certo") continua sendo sua. O objetivo é tornar o esquecimento e a confusão hipótese/decisão caros e visíveis, não impossíveis.

Validação

Este método foi validado em 4 camadas (determinística, 10 auditorias Claude, 10 críticas Codex CLI, teste real em pasta descartável). Relatórios em validation/ — ver MULTI_AGENT_VALIDATION.md.

Inspiração (creditada)

BMAD Method (fases de topo de funil + "arquivo é a memória"), GitHub Spec Kit (Constitution + checkpoints), e context engineering da comunidade (CLAUDE.md roteador, memory bank, ADR append-only, hooks). Não copiamos as máquinas de dev/sprint.

Licença

MIT.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages