Um guia direto: você não precisa entender a arquitetura interna pra usar. Escolha o seu caso abaixo e siga o passo a passo.
Quatro pontos de partida. Cada um leva ao mesmo motor (Plan → Execute → Verify), por um caminho diferente.
Brownfield: o RF-Dev mapeia o código existente e cria a memória do projeto antes de você mexer em qualquer coisa.
2Greenfield: parte da ideia, não do código. O framework te leva da ideia ao primeiro plano de desenvolvimento.
3Uma entrevista guiada transforma a discussão em requirements + roadmap, e daí em desenvolvimento.
4O framework ingere seu documento, valida as lacunas e deriva o plano de execução direto dele.
O mínimo pra entender o que está acontecendo enquanto você usa.
Todo trabalho no RF-Dev segue três fases. Você não chama elas manualmente uma a uma — os comandos orquestram, e as skills embutidas garantem o rigor de cada fase.
| Camada | O que faz por você |
|---|---|
| Code Intelligence (GitNexus) | Um grafo do seu código. O agente sabe quem chama o quê e o que quebra se você mudar X — em vez de adivinhar lendo arquivos. |
| Wiki | A memória de longo prazo do projeto (em .rf-dev/wiki/). Conventions, conceitos, decisões. O agente lê isso em toda tarefa. |
| SDD Workflow | O motor Plan → Execute → Verify, com planos tipados e skills especializadas (TDD, simplificação, debugging…). |
| CLI / Visual | Os comandos que você dispara dentro do seu runtime (Claude Code, Cursor, etc.). |
rf-dev (npm) instala e atualiza o framework no projeto. Tudo que é decisão de produto/código acontece dentro do runtime, via comandos nativos (/init, /plan, /prd…).Cada comando abre com os detalhes: quando usar, parâmetros e exemplos. Clique para expandir.
─── Próximos passos ───) conforme o resultado — é só uma sugestão, ele nunca executa o próximo comando sozinho.Convenção: "texto" = descrição livre · <valor> = valor que você fornece · --flag = opção · (nenhum) = comportamento padrão. plan_id = PLAN-NNN; T<id> = id de task.
/init Entrada universal — inventaria o projeto e cria a wikiQuando usar: sempre o primeiro comando num projeto. Em projeto existente, ele mapeia stack/convenções e cria a memória (wiki). Em projeto novo, detecta greenfield e delega pro PRD.
Parâmetros
| Argumento | O que faz |
|---|---|
| (nenhum) | Init completo: detector → agentes paralelos → secret scan → GitNexus → bootstrap da wiki → conventions → config seed. |
--sequential | Roda os agentes em série em vez de paralelo. Use em runtimes sem fan-out (Cursor, Windsurf, OpenCode). |
--reference <path> | Inclui um projeto antigo como fonte secundária (páginas marcadas source: reference/...). |
--skip-design-system | Pula o 5º agente (análise de design system) mesmo em projeto com frontend. |
--non-interactive | Modo CI/installer: lê pré-aprovações de .rf-dev/init.json. Aborta se algo não estiver coberto. |
Exemplos
/init # inventaria + cria a wiki
/init --reference ../old-app # usa projeto antigo como referência
/init --sequential # agentes em série (Cursor, Windsurf)
/prd Transforma ideia ou documento em requirements + roadmapQuando usar: antes de planejar, quando você precisa definir o quê. Conduz uma entrevista que vira requirements + roadmap na wiki.
Parâmetros
| Argumento | O que faz |
|---|---|
"descrição" | PRD novo do zero: entrevista agressiva → módulos → requirements → roadmap. |
--from @arq1 @arq2 | Ingere documentos existentes + entrevista de validação (preenche lacunas). Aceita múltiplos arquivos. |
--continue | Retoma um PRD em andamento a partir de prd-draft.json. |
| (nenhum) | Mostra a ajuda e para. |
Exemplos
/prd app de cobrança recorrente # PRD novo (entrevista)
/prd --from @docs/prd.md # ingere doc + valida
/prd --continue # retoma PRD em andamento
/plan Decompõe uma feature/PRD em fases e tasks verificáveisQuando usar: o caminho padrão para qualquer feature que precise de decomposição. Gera o PLAN.json — mas não executa; você inspeciona e aprova.
Parâmetros
| Argumento | O que faz |
|---|---|
<feature> | Cria/atualiza o PLAN.json a partir de uma entrada do roadmap, decompondo em fases/tasks. |
--from-prd <path> | Lê um PRD/RFC existente e deriva o plano direto dele. |
--update <plan_id> | Re-decompõe um plano existente após mudança de escopo, sem perder histórico. |
--phase <nome> | Decompõe apenas a fase nomeada (planejamento incremental). |
Exemplos
/plan filtro por status nos pedidos # de uma feature
/plan --from-prd docs/prd.md # deriva de um PRD
/plan --update PLAN-013 # re-decompõe após mudança
/plan --phase "fase 2: API" # só uma fase
/quick Tarefa pequena: planeja e executa num passo sóQuando usar: alteração pequena e bem delimitada que não merece um plano formal. Um guard avisa se a tarefa for grande demais e sugere /plan.
Parâmetros
| Argumento | O que faz |
|---|---|
"descrição" | Nova quick task: carrega contexto da wiki, roda o complexity guard, plan+execute num agente só, commit atômico. |
--validate | Igual à quick, mas exige sua confirmação explícita dos passos antes de executar. |
--continue | Retoma uma quick em andamento a partir de .planning/quick/quick-NNN.json. |
| (nenhum) | Mostra a ajuda e para. |
Exemplos
/quick corrigir timezone no parser # tarefa pequena num passo
/quick --validate renomear campo # confirma antes de executar
/execute Executa um plano aprovado (por padrão, uma fase por vez)Quando usar: depois de aprovar um plano. Roda as tasks; com --auto-continue, percorre todas as fases sozinho (mas nunca faz o ship).
Parâmetros
| Argumento | O que faz |
|---|---|
<plan_id> | Executa todas as tasks pendentes da fase atual e para (sem verify automático). |
<plan_id> --auto-continue | Executa todas as fases: tasks → verify → fix-loop → INGEST → próxima fase. Nunca chama /ship. |
--auto-continue | Idem, no único plano ativo (sem precisar do id). |
| (nenhum) | Fase atual do único plano ativo. Com 2+ planos, lista e para; com 0, orienta a rodar /plan. |
Exemplos
/execute PLAN-013 # executa a fase atual e para
/execute PLAN-013 --auto-continue # todas as fases
/execute # fase atual do único plano ativo
/next Executa só a próxima task elegível e paraQuando usar: quando você quer avançar task a task, com controle entre cada uma — em vez de rodar a fase inteira de uma vez.
Parâmetros
| Argumento | O que faz |
|---|---|
<plan_id> | Próxima task pendente do plano informado. |
| (nenhum) | Próxima task do único plano ativo. 2+ planos: lista e para; 0: orienta. |
Exemplos
/next # próxima task do plano ativo
/next PLAN-013 # próxima task de um plano específico
/redo Refaz uma task ou fase concluída, com motivo registradoQuando usar: quando uma task/fase já concluída não ficou boa. O motor decide a estratégia (refinar vs reverter) e confirma antes de mexer no git. Não funciona em Quick.
Parâmetros
| Argumento | O que faz |
|---|---|
T<id> "motivo" | Refaz uma task concluída. O motor decide REFINE / REVERT parcial / REVERT total e pede confirmação antes de qualquer operação git. |
T<id> T<id> "motivo" | Refaz várias tasks consecutivas na mesma invocação. |
phase <n> "motivo" | Refaz uma fase: o motor classifica re-executar (HOW) vs re-decompor (WHAT). Máx 1 redo por fase. |
<arg> "motivo" plan-<id> | Idem, escopado a um plano explícito. |
Exemplos
/redo T04 "não tratou o caso de lista vazia"
/redo phase 2 "mudou o contrato da API"
/redo T07 "lógica errada" plan-PLAN-013
/review Ciclo de verificação por personas especializadasQuando usar: para revisar um PR, um plano, uma branch ou o diff atual. As personas (code/test/security) são escolhidas pelo nível e pelos triggers — ou forçadas com --full-verify.
Parâmetros
| Argumento | O que faz |
|---|---|
"escopo" | Roda o verify sobre o escopo: nº de PR, plan_id, ref de branch ou o diff do working-tree. |
--full-verify | Força as três personas (code-reviewer + test-engineer + security-auditor), independente do nível. |
--continue | Retoma um review em andamento. |
| (nenhum) | Mostra a ajuda e para. |
Exemplos
/review 142 # review do PR #142
/review PLAN-013 # review de um plano
/review --full-verify # força code + test + security
/ship Portão final de entrega: verificação + PRQuando usar: para fechar a feature. Roda o ship gate e, se aprovado, monta o corpo do PR. Use --dry-run antes pra saber o que ainda falta.
Parâmetros
| Argumento | O que faz |
|---|---|
<plan_id> | Roda o ship gate; no veredito SHIP, monta o corpo canônico do PR e entrega ao runtime. |
--dry-run | Só o veredito (SHIP ou BLOCK_*), sem gerar o PR — pra saber o que falta antes do ship real. |
--continue | Retoma um ship em andamento (carrega accepted_risks[] e checklist de pré-launch). |
| (nenhum) | Mostra a ajuda e para. |
Exemplos
/ship PLAN-013 # ship gate + monta o PR
/ship PLAN-013 --dry-run # só o veredito (o que falta)
/status Estado read-only de planos e métricasQuando usar: a qualquer momento, pra ver onde os planos estão. Não muda nada — é só leitura.
Parâmetros
| Argumento | O que faz |
|---|---|
<plan_id> | Estado de um plano específico. |
| (nenhum) | Estado de todos os planos ativos. |
--metrics | Agregações de métricas de todos os planos (read-only). |
<plan_id> --metrics | Métricas filtradas por um plano. |
Exemplos
/status # todos os planos ativos
/status PLAN-013 # um plano específico
/status --metrics # métricas agregadas
/sync Atualiza grafo + wiki quando a base mudou por fora do fluxoQuando usar: depois de editar código manualmente (fora do /execute), pra wiki e grafo do GitNexus não ficarem defasados.
Parâmetros
| Argumento | O que faz |
|---|---|
| (nenhum) | gitnexus analyze + INGEST do delta do git desde o último sync. |
--wiki-only | Pula o grafo; só o INGEST do delta na wiki. |
--graph-only | Só o gitnexus analyze; não toca na wiki. |
--wiki-only e --graph-only são mutuamente exclusivos — usar os dois juntos é recusado.Exemplos
/sync # grafo (GitNexus) + wiki
/sync --wiki-only # só a wiki
/sync --graph-only # só o grafo
Fluxos de apoio — você usa sob demanda, não no dia a dia.
/autonomous Roda o pipeline completo de um plano até ficar pronto pra shipQuando usar: quando confia no plano e quer rodá-lo de ponta a ponta sem parar a cada passo. Ele para antes do ship real — a decisão de publicar continua sua.
Parâmetros
| Argumento | O que faz |
|---|---|
<plan_id> | Roda o plano até ship-readiness e para antes do /ship. |
| (nenhum) | Único plano ativo. 2+ planos: lista e para; 0: orienta a rodar /plan. |
Exemplos
/autonomous PLAN-013 # roda tudo, para antes do ship
/autonomous # único plano ativo
/codebase-review Varredura arquitetural read-only do repositórioQuando usar: pra ter um raio-X da arquitetura — camadas, hotspots, e desvios em relação às convenções registradas na wiki.
Parâmetros
| Argumento | O que faz |
|---|---|
| (nenhum) | Varredura completa: estrutura, camadas, hotspots, drift vs wiki/architecture/conventions.md. |
--scope <path> | Limita a varredura a uma subárvore (ex: --scope app/Services/). |
--findings-only | Pula a narrativa; só a lista de achados (bom pra triagem). |
--no-gitnexus | Modo degradado: inspeção de arquivos sem GitNexus (emite aviso). |
Exemplos
/codebase-review # varredura completa
/codebase-review --scope app/Services/ # só um subdiretório
/codebase-review --findings-only # só os achados
/debug Investigação guiada de um bugQuando usar: quando algo está quebrado e você quer uma triagem estruturada — rastrear o erro, levantar hipóteses, propor a correção.
Parâmetros
| Argumento | O que faz |
|---|---|
"sintoma" | Pré-popula o sintoma a partir da descrição e dispara a triagem de debugging. |
--from-error | Usa o erro/stack trace mais recente que apareceu na conversa. |
--continue | Retoma um debug em andamento. |
| (nenhum) | Mostra a ajuda e para. |
Exemplos
/debug erro 500 ao salvar nota fiscal
/debug --from-error # usa o último stack trace da conversa
/glossary Linguagem ubíqua do projeto (termos do domínio)Quando usar: pra manter os termos do domínio consistentes entre código, docs e equipe. Renomear um termo aqui pode propor refactors no código.
Parâmetros
| Argumento | O que faz |
|---|---|
| (nenhum) | Mostra o glossário atual (de wiki/concepts/). |
--add <termo> | Adiciona um termo interativamente (definição, aliases, escopo, referências). |
--rename <antigo> <novo> | Renomeia o termo em toda a wiki e propõe refactors de código via rf plan. |
--lint | Checa consistência: duplicatas, definições conflitantes, termos usados mas não definidos. |
--diff <commit> | Mostra como o glossário evoluiu desde um commit. |
Exemplos
/glossary # mostra o glossário
/glossary --add "Competência" # adiciona um termo
/glossary --lint # checa consistência
/wiki Operações sobre a memória de longo prazoQuando usar: pra consultar, reconstruir ou verificar a saúde da wiki. O query é uma busca progressiva (do índice até a página completa).
Parâmetros
| Argumento | O que faz |
|---|---|
ingest / ingest-external | Ingere fontes externas de .rf-dev/raw/ na wiki. |
ingest-phase | Extrai conhecimento de artefatos pós-fase (PLAN.json, git diff, findings do verify). |
query <pergunta> | Consulta progressiva (índice → resumos → seções → páginas completas). |
lint | Lint completo da wiki (7 verificações). |
status | Status da wiki (manifest, staging, frescor). |
rebuild | Reconstrói a wiki a partir de .rf-dev/raw/ + digests de fase. |
rollback <página> | Restaura uma página ao estado anterior ao último INGEST. |
Exemplos
/wiki query como funciona a emissão?
/wiki lint
/wiki rebuild
/settings Lê e edita a config do projetoQuando usar: pra inspecionar ou ajustar o .planning/config.json — principalmente os triggers de segurança do verify.
Parâmetros
| Argumento | O que faz |
|---|---|
| (nenhum) | Imprime o .planning/config.json atual. |
--get <jsonpath> | Imprime um campo específico (ex: --get verify.level_2_security_triggers). |
--add-trigger <pattern> | Adiciona um regex de trigger de segurança (confirmação por item). |
--remove-trigger <pattern> | Remove um trigger. Os 14 canônicos (ADR-007) são protegidos — pedem confirmação explícita. |
--reset-triggers | Restaura os 14 triggers canônicos do ADR-007. |
Exemplos
/settings # mostra a config
/settings --get verify.level_2_security_triggers
/settings --reset-triggers # volta aos 14 canônicos
/health Check read-only da instalação do RF-DevQuando usar: quando algo parece estranho (locks presos, GitNexus indisponível, wiki defasada). Diagnostica sem alterar nada.
Parâmetros
| Argumento | O que faz |
|---|---|
| (nenhum) | Check completo: locks, GitNexus, state.json, integridade da wiki, presença dos schemas. |
--quick | Smoke test: só locks + state + manifest da wiki. |
--locks | Lista os *.lock em .planning/active/ com PID + idade. |
--gitnexus | which gitnexus + status + timestamp do último índice. |
--wiki | Verifica se o manifest da wiki bate com o HEAD do git. |
Exemplos
/health # check completo
/health --locks # lista locks presos
/health --gitnexus # disponibilidade do GitNexus
/verify separado. A verificação está embutida nas skills (Process → Verification → Red Flags) e no /review / /ship. O ciclo Plan→Execute→Verify acontece por construção.O RF-Dev é instalado dentro do projeto que você vai desenvolver. Cenários 1 e 2 começam por aqui.
# 1) configure o registry privado uma vez (GitHub Packages)
npm config set @guilherme-miranda:registry https://npm.pkg.github.com
# 2) instale o RF-Dev no projeto, escolhendo o(s) runtime(s)
npx --yes --package=@guilherme-miranda/rf-dev rf-dev install --claude
# múltiplos: --claude --cursor --gemini | todos: --all
# dica: veja o que vai acontecer sem escrever nada
npx --yes --package=@guilherme-miranda/rf-dev rf-dev install --claude --dry-run
O install cria o .rf-dev/ (skills, schemas, scripts), os comandos nativos do runtime e registra o RF-Dev no arquivo de instruções do runtime (CLAUDE.md / AGENTS.md / etc.). Depois, abra o runtime no diretório do projeto.
CLAUDE.md. O RF-Dev escreve apenas um bloco gerenciado entre os marcadores <!-- RF-DEV:START --> e <!-- RF-DEV:END -->. Tudo que você escrever fora do bloco é preservado — dá pra instalar até num projeto que já tem um CLAUDE.md próprio. Regra: não edite dentro do bloco (ele é regerado nas atualizações); suas instruções vão fora dele.--no-gitnexus.Quando sair uma versão nova do RF-Dev, atualize o projeto sem perder nada do que é seu:
npx --yes --package=@guilherme-miranda/rf-dev rf-dev update
O update propaga skills, comandos e o bloco gerenciado do bootstrap — e nunca toca na sua wiki (.rf-dev/wiki/), nos seus planos (.planning/), no seu código, nem no que você escreveu fora do bloco gerenciado.
A regra aqui é não sair codando. Primeiro o framework mapeia o que já existe e constrói a memória do projeto. Isso é o que faz o agente parar de adivinhar.
/initEle inventaria stack e convenções, preserva os raw sources e faz o bootstrap da wiki.
/init
.rf-dev/wiki/ — principalmente architecture/conventions.md. Essa é a memória que o agente vai consumir em toda tarefa. Vale o tempo de leitura e correção./plan adicionar filtro por status na listagem de pedidos
Inspecione o plano (fases + tasks) antes de aprovar.
/execute # ou /next, task a task
/review
/ship
Aqui o ponto de partida é a ideia, não o código. O /init reconhece que é greenfield e te encaminha para o fluxo de PRD — porque planejar código que ainda não existe exige primeiro definir o quê.
/initAo detectar greenfield, ele delega para o fluxo de PRD (próximo passo) em vez de tentar inventariar um código inexistente.
/init
/prd app de emissão de NFS-e para pequenas prefeituras
/plan <primeira entrega do roadmap>
/execute
/review
/ship
/init não popula a wiki da mesma forma que em projeto existente — a memória vai sendo construída conforme o PRD e o desenvolvimento avançam.O /prd conduz uma entrevista agressiva: ele questiona, desafia, pesquisa alternativas quando você não sabe, e força decisões de escopo (v1 / v2 / fora de escopo) e prioridade. O resultado é um PRD com requirements + roadmap, compilado na wiki.
/prd sistema de cobrança recorrente com split de pagamento
prd-draft.json); se a sessão cair, o progresso fica preservado./prd --continue
/plan <entrada do roadmap>
Você não joga o documento fora nem recomeça do zero. O framework ingere o seu PRD e roda uma entrevista de validação — porque todo documento tem lacunas — e então deriva o plano direto dele.
/prd --from @docs/meu-prd.md @docs/anexo-tecnico.md
--from. Documentos sempre têm gaps — o agente desafia e completa o que falta. Não pule./plan --from-prd docs/meu-prd.md
/execute
/review
/ship
/plan --from-prd <path>. Mas vale rodar o /prd --from antes para a validação pegar gaps que o plano herdaria./init. Ela é a memória que guia todas as tarefas seguintes./plan só gera o plano — quem manda executar é você./sync quando editar código por fora do fluxo, pra wiki e grafo não ficarem defasados.| Situação | O que fazer |
|---|---|
| Não quero instalar o GitNexus agora | Use --no-gitnexus no install. Funciona em modo degradado. |
| Quero ver o que vai acontecer sem escrever arquivo | Adicione --dry-run em qualquer subcomando do rf-dev. |
| O runtime pede um comando que não existe | Confirme o runtime instalado (ls .claude/commands/) ou rode rf-dev update --<runtime>. |
Clonei um projeto e o .rf-dev/ não veio | Rode rf-dev restore — reconstrói em segundos sem reconfigurar nada. |
docs/QUICKSTART.md no repositório.