npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@igoruehara/spec-driven

v0.1.10

Published

Scaffold de Spec-Driven Development (SDD) para agentes de IA (Claude Code, Codex, Cursor, Copilot, Gemini, Windsurf) — esteira Lean Inception + DDD + Technical Design Docs, com skills, templates e gates de qualidade. Use via npx em qualquer projeto.

Readme

@igoruehara/spec-driven

Scaffold de Spec-Driven Development (SDD) para agentes de IA — Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI e Windsurf. Em qualquer projeto, rode um comando e ganhe a esteira completa: Lean Inception → DDD → Technical Design Docs → SDD, com skills, templates, gates de qualidade e continuidade entre sessões.

# no diretório do seu projeto (menu interativo pergunta quais clientes gerar)
npx @igoruehara/spec-driven

# ou criando numa pasta nova
npx @igoruehara/spec-driven meu-projeto

# não-interativo: escolha os clientes pela flag (ao menos um é obrigatório)
npx @igoruehara/spec-driven --agent=claude,cursor   # Claude + Cursor

Clientes suportados

O Claude é a fonte canônica do conteúdo (formato mais rico), mas é um cliente escolhível como qualquer outro — nenhum entra por padrão e é obrigatório selecionar ao menos um. Os demais clientes são views geradas a partir do mesmo conteúdo — escolha quais no menu interativo ou via --agent.

| Cliente | Instruções | Skills / commands | |---|---|---| | Claude Code | CLAUDE.md | .claude/skills/*/SKILL.md (+ hook SessionStart) | | Codex | AGENTS.md | .agents/skills/*/SKILL.md | | Cursor | .cursor/rules/sdd.mdc | .cursor/commands/*.md | | GitHub Copilot | .github/copilot-instructions.md | .github/prompts/*.prompt.md | | Gemini CLI | GEMINI.md | .gemini/commands/*.toml | | Windsurf | .windsurf/rules/sdd.md | .windsurf/workflows/*.md |

O AGENTS.md do Codex também é lido nativamente por Cursor, Copilot, Gemini e Windsurf — então ele já cobre a camada de instruções de quase todo o ecossistema. As views nativas de cada cliente são geradas só quando você as pede.

Em que se baseia

| Prática | Sentido aqui | O que aporta à esteira | |---|---|---| | Lean Inception | workshop de descoberta (Paulo Caroli) | visão, personas e MVP — o que construir primeiro | | DDD | Domain-Driven Design (Eric Evans) | linguagem ubíqua e bounded contexts — o modelo do negócio | | TDD | Technical Design Doc / RFC | design antes de codar, com alternativas — como no nível de sistema | | SDD | Spec-Driven Development | a spec é a fonte da verdade — o contrato que dirige a implementação |

Encadeadas: Lean Inception (descobrir) → DDD (modelar) → TDD (desenhar) → SDD (especificar e implementar).

O que ele instala

seu-projeto/
├── CLAUDE.md                  # convenções que o agente segue (verificação de conhecimento, camadas, DoD)
├── README.md                  # o manual da esteira SDD
├── .claude/skills/            # 15 skills (ver abaixo) — + as views dos clientes extras escolhidos
├── .spec-driven/manifest.json # quais clientes foram gerados (usado pelo update)
├── .github/workflows/         # esteira.yml — gate de conformidade na CI
├── scripts/                   # audit-esteira.mjs + validate-mermaid.mjs + eval-spec-fidelity.mjs
├── docs/
│   ├── glossary.md · STATE.md
│   ├── product/               # vision · stakeholders · journeys · features · mvp-canvas · roadmap
│   ├── architecture/          # overview (5 eixos) · context-map · diagrams · assessment · adr/
│   └── engineering/           # TESTING · metrics · integrations · agentic-layer (+ _templates)
├── specs/                     # uma pasta por feature (0001-…) + quick/ + _templates/
└── src/                       # estrutura em camadas DDD

As skills

| Skill | Responsabilidade | |---|---| | /kickoff | orquestra a constituição do projeto (greenfield ou brownfield) | | /integracoes | ferramentas do time + MCPs (read-first, trava de conta/workspace) | | /mapear | mapeia um codebase existente → assessment.md | | /diagramar | arquitetura de alto nível em Mermaid → diagrams.md | | /roadmap | constrói/revisa o roadmap com o time | | /camada-agentica | gera rules, subagents, skills e workflows/CI | | /nova-feature | abre uma feature no padrão SDD (tier → spec → tasks) | | /clarificar | sabatina: entrevista implacável (uma pergunta por vez) que afia spec/design ambíguos antes de construir | | /validar | UAT: gates, AC→teste, SPEC_DEVIATION, DoD | | /revisar-pr | gate de conformidade SDD no PR/MR | | /setup-ci | pipeline CI/CD que materializa os gates | | /metricas | Lead Time, Throughput e maturidade de Continuous Delivery/Deployment | | /auditar | valida a conformidade da esteira (frontmatter, links, rastreabilidade) | | /evals | mede fidelidade spec→código (AC cobertos por task/teste, SPEC_DEVIATION) | | /handoff | pausa/retoma a sessão via docs/STATE.md |

Exemplo completo

examples/pulse/ é um produto fictício levado pela esteira ponta a ponta — discovery (vision/features) → spec (AC) → tasks → código → testes — com audit e eval verdes e os testes passando. A prova de que o fluxo fecha, não só artefatos soltos.

Uso

npx @igoruehara/spec-driven [diretório-alvo] [opções]

Exemplos

npx @igoruehara/spec-driven                # scaffolda no diretório atual
npx @igoruehara/spec-driven meu-projeto    # cria/usa a pasta ./meu-projeto
npx @igoruehara/spec-driven . --force      # sobrescreve arquivos existentes
npx @igoruehara/spec-driven update         # atualiza só a esteira, preserva seus docs

Comandos

| Comando | O que faz | |----------|-----------| | (init) | scaffolda a esteira completa. Arquivos existentes são mantidos (use --force). | | update | atualiza só a maquinaria (skills, hooks, _templates, scripts, CI). Preserva seus docs/specs e mostra o diff antes de aplicar. |

Opções

| Opção | O que faz | |-------------------|-----------------------------------------------------------------------| | --agent=a,b | clientes a gerar (claude,codex,cursor,copilot,gemini,windsurf); pula o menu; exige ≥ 1 | | --all | gera as views de todos os clientes suportados (inclui Claude) | | --force | sobrescreve arquivos que já existem | | --yes, -y | pula a confirmação interativa (exige --agent= ou --all p/ saber os clientes) |

No update, --agent= adiciona um cliente novo a um projeto já existente (ex.: npx @igoruehara/spec-driven update --agent=codex materializa o Codex e o mantém atualizado).

🔒 Seguro em projeto existente: no init, arquivos existentes são mantidos (nada sobrescrito sem --force). No update, só a maquinaria da esteira é refeita — seus docs e specs ficam intactos.

Depois de scaffoldar

  1. git init (se ainda não for um repo).
  2. No Claude Code, aprove o hook de contexto na 1ª sessão — um SessionStart (.claude/settings.json) que carrega o contexto base (STATE, vision, roadmap) automaticamente. Requer Node na máquina.
  3. Rode /integracoes (se já conhece o ferramental) → /kickoff.
  4. Comece a primeira feature com /nova-feature.

Licença

MIT