Help us improve
Share bugs, ideas, or general feedback.
From first-plan
Maps intended features (docs, specs, JIRA, GitHub issues) to implementation state, detecting NOT_STARTED, IN_PROGRESS, IMPLEMENTED, DRIFTED, or ABANDONED statuses. Use during discovery or via /fp:check.
npx claudepluginhub vynazevedo/first-plan --plugin fpHow this skill is triggered — by the user, by Claude, or both
Slash command
/fp:reconciliationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Núcleo do diferencial do first-plan. Resolve "Claude reimplementa o que ja existe" e "Claude executa spec já feita".
Scans GitHub issues, PRs, milestones, docs, and code to flag where plans have drifted from implementation reality. Produces a cited report with prioritized reconstruction steps.
Synthesizes project docs and codebase into roadmap status, gaps analysis, blockers, risks, and next actions. Use for health checks, progress tracking, and milestone planning.
Conducts interactive requirements gathering, researches codebases, creates PRDs, and generates development plans with tasks and sprints. Loads specs from Markdown, YAML, JSON, TXT, PDF files.
Share bugs, ideas, or general feedback.
Núcleo do diferencial do first-plan. Resolve "Claude reimplementa o que ja existe" e "Claude executa spec já feita".
NOT_STARTED -> intenção existe mas nenhum código relacionado
SPEC_ONLY -> documentação completa, zero implementação
IN_PROGRESS -> implementação parcial, branch ativa, ou TODOs visíveis
IMPLEMENTED -> código completo, com testes
DRIFTED -> código existe mas divergiu da spec
ABANDONED -> branch obsoleta + implementação parcial
Fontes ordenadas por prioridade:
Documentação no repo:
docs/, specs/, requirements/, rfcs/*.md com headings tipo "## Feature:", "## Requisito:", "## RFC"Issue trackers via MCP:
mcp__jira-mm__* (issues recentes do projeto, status != Done)mcp__github-work__list_issuesGit artifacts:
feat/, feature/, wip/[FEAT] / feat:Comentários no código:
// TODO: implement <X>// FIXME: this is partial// PLANNED: <feature>Para cada intenção coletada (chamada de "feature candidate"):
Da descrição/título da intenção, extrair:
Para cada termo-chave:
Coletar evidência:
Code presente Tests presentes Branch ativa PR aberto Verdict
NOT_STARTED nao nao nao nao NOT_STARTED
SPEC_ONLY nao nao nao nao SPEC_ONLY*
IN_PROGRESS parcial parcial/nao sim sim/nao IN_PROGRESS
IMPLEMENTED completo sim nao nao IMPLEMENTED
DRIFTED completo sim nao nao DRIFTED**
ABANDONED parcial nao obsoleta(>90d) nao ABANDONED
** DRIFTED requer detecção adicional - veja abaixo.
Para verificar se feature implementada divergiu da spec:
DRIFT também é detectado quando:
| Sinal | Impacto |
|---|---|
| Match de >= 3 termos-chave em arquivo único | +0.3 |
| Test file irmão tem mesmo termo | +0.2 |
| Branch/PR ativo confirma | +0.2 |
| Spec recente (< 90 dias) | +0.1 |
| Spec antiga + código antigo | -0.2 |
| Termos genéricos (e.g., "user", "auth") sem qualificador | -0.3 |
| Match parcial e ambíguo | -0.2 |
Se confidence < 0.7: marcar como "?" no INDEX e adicionar pergunta em 08-meta/questions.md.
Para cada feature, criar .first-plan/09-features/<slug>.md baseado no template ${CLAUDE_PLUGIN_ROOT}/meta-templates/feature.md. Atualizar .first-plan/09-features/INDEX.md com a matriz consolidada.
Feature aparece em backlog/spec como pendente mas evidência mostra IMPLEMENTED. Sinalizar prominently em INDEX.md:
## Phantom features (alerta!)
Estas features constam como pendentes em alguma fonte mas evidência mostra que ja foram implementadas. **Antes de planejar trabalho relacionado, validar com humano**.
- Feature X (JIRA-123) - implementada em commit abc1234, mas issue ainda Open. Possivelmente esquecida.
Várias docs descrevem a mesma feature. Detectar via overlap de termos-chave > 70%. Reportar como duplicate em questions.md.
Duas docs descrevem feature similar mas com requisitos conflitantes. Detectar via análise dos asserts. Reportar em questions.md - é decisão humana qual seguir.
Quando usuário pede uma feature nova via /fp:plan:
Resultado vai pra seção "Verificação de duplicidade" do plano.
Quando MCPs disponíveis:
mcp__jira-mm__jira_search - listar issues do projetomcp__github-work__list_issues - listar issues do repomcp__github-work__list_pull_requests - PRs ativosmcp__github-work__search_code - busca avançada de evidênciaSem MCPs, reduzir cobertura para fontes locais (docs/, branches, código).