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

octechpus

v2.11.0

Published

🐙 Octechpus — Agent Orchestrator CLI for Claude Code projects

Readme

🐙 Octechpus

CLI instalåvel que scaffolda um sistema completo de orquestração de agentes em qualquer projeto Claude Code.

octechpus init detecta sua stack automaticamente e instala 13 agentes especializados (incluindo Privacy/LGPD e um Designer stack-agnóstico), templates de CI/GitHub e documentação estruturada — tudo configurado para o seu projeto, pronto para usar com /pipeline no Claude Code.


Instalação

# Sem instalar (recomendado para uso pontual)
npx octechpus init

# Global
npm install -g octechpus
octechpus init

Requisitos: Node.js >= 18


Quick start

npx octechpus init

Sem flags, o init pergunta como vocĂȘ quer instalar, com dois caminhos:

  • A) Projeto em andamento — o CLI lĂȘ a base de cĂłdigo existente e auto-detecta a stack coerente, instalando de forma harmoniosa com o que jĂĄ estĂĄ lĂĄ.
  • B) Projeto novo — vocĂȘ aponta um documento PID (.md) descrevendo o projeto; o CLI lĂȘ o documento e escolhe a stack ideal para começar.

VocĂȘ pode pular o menu com flags:

# Stack explĂ­cita (bypass total)
npx octechpus init --stack=python-fastapi

# Projeto novo: aponta o PID direto (entra no caminho B, nĂŁo-interativo)
npx octechpus init --describe=docs/pid.md

💡 NĂŁo precisa do caminho completo. Basta o nome do arquivo (com ou sem .md) — o CLI procura o documento em projectDir e no diretĂłrio atual, ignorando node_modules, .git, dist, etc. Ex.: --describe=pid. Se houver mais de um arquivo com o mesmo nome, o CLI lista os caminhos e pede para vocĂȘ especificar.

Na detecção (caminhos A e B), o CLI inspeciona manifests (package.json, pyproject.toml, go.mod, Cargo.toml, pom.xml/build.gradle, *.csproj/*.sln, Gemfile, composer.json) e também documentos .md (o PID no caminho B; README.md, PROJECT.md, ARCHITECTURE.md, etc. no caminho A):

  • Alta confiança → aplica o profile imediatamente
  • Confiança mĂ©dia → pede confirmação antes de aplicar
  • Baixa confiança → lista candidatos (com "quando usar") e abre o modo guiado
  • Sem confiança / stack mista → use o profile generic

Profiles disponĂ­veis

Designer e Privacy/LGPD sĂŁo always-on em todos os profiles (nĂŁo aparecem como "extras"). SĂł Cost Engineer Ă© opt-in por profile.

| Profile | Linguagem / Framework | Agente opt-in | |---|---|---| | node-typescript | Node.js + TypeScript, Vitest, Zod | — | | node-javascript | Node.js puro (JS, sem TypeScript) | — | | nextjs-react | Next.js + React + Tailwind + shadcn/ui | — | | vue-nuxt | Vue 3 + Nuxt + Tailwind | — | | react-native | React Native / Expo (mobile) | — | | python-fastapi | Python ≄ 3.12, FastAPI, Pydantic v2, pytest, uv, ruff | — | | python-ai-pipeline | FastAPI + LLM (Anthropic/OpenAI/LangChain) | Cost Engineer | | python-cli | Click / Typer, pytest | — | | go-api | Go, chi ou stdlib, testify | — | | rust-cli | Rust, clap, tokio, cargo test | — | | java-spring | Java 17+, Spring Boot, JUnit 5 | — | | dotnet-api | C#, ASP.NET Core, xUnit | — | | ruby-rails | Ruby on Rails, RSpec | — | | php-laravel | PHP 8.2+, Laravel, Pest/PHPStan | — | | generic | Fallback agnĂłstico (stack mista / desconhecida) | — |

Todos herdam de _base, que define pipeline, segurança, privacidade, ADRs e convençÔes universais. A herança Ă© resolvida por deep-merge: o filho sobrescreve escalares e concatena arrays (use !override como 1Âș item para substituir).

_base
├── node-typescript
│   ├── nextjs-react
│   ├── vue-nuxt
│   └── react-native
├── node-javascript
├── python-fastapi
│   ├── python-ai-pipeline
│   └── python-cli
├── go-api · rust-cli · java-spring · dotnet-api · ruby-rails · php-laravel
└── generic

O que Ă© instalado

seu-projeto/
├── .claude/
│   ├── commands/              ← agentes como slash commands (orquestração)
│   │   ├── pipeline.md            /pipeline
│   │   ├── maestro.md             /maestro
│   │   ├── audit.md               /audit
│   │   ├── architect.md           /architect
│   │   ├── coder.md               /coder
│   │   ├── review.md              /review
│   │   ├── qa.md                  /qa
│   │   ├── security.md            /security
│   │   ├── privacy.md             /privacy   ← LGPD/GDPR
│   │   ├── reporter.md            /reporter
│   │   ├── docs.md                /docs
│   │   ├── github-issue.md        /github-issue
│   │   ├── profiler.md            /profiler
│   │   ├── design.md              /design
│   │   └── cost-engineer.md       /cost
│   ├── agents/                ← subagents escopados (tools + modelo por agente)
│   │   ├── security.md            read-only · opus
│   │   ├── coder.md               read-write · inherit
│   │   ├── docs.md                read-write · haiku
│   │   └── 
 (um por agente ativo)
│   └── settings.json          ← permissĂ”es: allow / ask / deny (segurança)
├── .github/
│   ├── ISSUE_TEMPLATE/            Templates bug / feature / refactor
│   └── PULL_REQUEST_TEMPLATE.md
├── docs/
│   ├── OCTECHPUS_AGENTS.md    ← ReferĂȘncia completa dos agentes
│   └── adr/                   ← Architecture Decision Records
├── .octechpus/
│   └── manifest.json          ← Hashes SHA-256 para rastrear customizaçÔes
└── CLAUDE.md                  ← Config do projeto lida pelo Claude Code

Design system: desde a v2.4 o init nĂŁo scaffolda mais um design-system/ pronto. O agente Designer Ă© stack-agnĂłstico — aplica melhores prĂĄticas de UX/UI e pede o design system do Claude Design em runtime. Se quiser um starter local, use --with-design-system ou npx octechpus design-system add.


PermissÔes e subagents (v2.5)

Desde a v2.5 o init configura segurança por padrĂŁo — sem vocĂȘ precisar aprovar cada ação dos agentes. Ver ADR 002.

.claude/settings.json — modelo de menor privilĂ©gio

Gerado a partir do profile, com trĂȘs nĂ­veis:

| Nível | Comportamento | Exemplos | |---|---|---| | allow | roda sem perguntar | npm test, git commit, pytest, cargo build, gh 
 | | ask | pausa e pede aprovação | git push, npm publish | | deny | bloqueado (nem pergunta) | rm -rf, force-push, sudo, curl/wget, ler .env/chaves |

As pastas em guardrails.read_only_paths viram regras Write(...)/Edit(...) no deny — o guardrail deixa de ser texto no CLAUDE.md e passa a ser trava imposta.

O resultado Ă© mais autonomia (o trabalho seguro flui sem prompts) e mais segurança (o destrutivo Ă© barrado, nĂŁo perguntado). Para overrides pessoais, use .claude/settings.local.json — ele precede o settings.json.

⚠ deny Ă© defesa-em-profundidade, nĂŁo sandbox. As regras casam por prefixo de comando (Bash(rm -rf:*)), entĂŁo reduzem o risco mas nĂŁo eliminam toda evasĂŁo possĂ­vel (ex.: find -delete, aliases). É uma camada de proteção — nĂŁo substitui review humano. Cada subagent tambĂ©m carrega uma instrução anti prompt-injection (conteĂșdo lido do repo Ă© dado, nunca comando).

.claude/agents/ — subagents escopados

Cada agente vira um subagent do Claude Code com contexto isolado, ferramentas por princípio do menor privilégio e modelo próprio:

| Agente | Tools | Modelo | |---|---|---| | Architect · Reviewer · Security · Privacy · Reporter · Profiler · Designer | Read, Grep, Glob (read-only) | — | | Coder · QA · Docs · GitHub · Maestro | Read, Write, Edit, Bash, Grep, Glob | — | | Security · Architect | — | opus (rigor) | | Docs · Reporter · Profiler | — | haiku (custo) |

Os agentes de anĂĄlise nĂŁo conseguem editar cĂłdigo (nĂŁo tĂȘm a ferramenta) — a segurança vem de nĂŁo ter a capacidade, nĂŁo de te perguntar. ConfigurĂĄvel via agents_runtime no profile.

v2.6 — orquestração real: o /pipeline delega cada fase ao subagent via ferramenta Task (em vez de trocar de papel numa conversa sĂł). O fan-out pĂłs-Coder — Reviewer ∄ QA ∄ Security ∄ Privacy — roda em paralelo, e o handoff entre agentes passa por artefatos em .octechpus/run/ (cada subagent recebe os outputs relevantes dos anteriores). O /audit tambĂ©m delega aos subagents read-only em paralelo (v2.7).

v2.7 — adoção sem atrito: se vocĂȘ jĂĄ tem um .claude/settings.json, o Octechpus faz merge das permissĂ”es nele (preserva suas regras e chaves hooks/env/etc.) em vez de pular o arquivo. Um settings.json invĂĄlido nunca Ă© sobrescrito. O init/update tambĂ©m adicionam .octechpus/run/ ao .gitignore.


Os 13 agentes

Maestro → GitHub → Architect → [Designer] → Coder → Reviewer → QA → Security → Privacy → Docs → Reporter
                                     ↑ em demandas de UI            🔬 Profiler   💰 Cost Engineer (opt-in)

| # | Agente | Responsabilidade | |---|---|---| | 1 | 🎯 Maestro | Orquestra; rubrica de severidade, critĂ©rios testĂĄveis, teto de 2 iteraçÔes → escala p/ humano | | 2 | 🐙 GitHub | Issues, branches (conventional), commits semĂąnticos, PRs; CODEOWNERS/branch protection/secret-scan | | 3 | 📐 Architect | Impacto tĂ©cnico, ADRs, NFRs e classificação de dados (pĂșblico/pessoal/sensĂ­vel) | | 4 | 🎹 Designer | Stack-agnĂłstico — melhores prĂĄticas de UX/UI; pede o design system do Claude Design em runtime | | 5 | đŸ’» Coder | Implementação pelo profile; Karpathy (Simplicity/Surgical); regras de segredos/PII e feature flags | | 6 | 🔍 Reviewer | Code review com severidade (🔮/🟡/đŸ””); K1-K4; concorrĂȘncia, i18n; checklist de UX em PRs de UI | | 7 | đŸ§Ș QA | Unit/integração/E2E + negativos de segurança; fixtures sem PII; smoke de performance | | 8 | đŸ›Ąïž Security | OWASP 2021 + API Security Top 10 (BOLA/BFLA) + SSRF + supply chain | | 8b | ⚖ Privacy | Conformidade LGPD/GDPR: base legal, minimização, retenção, direitos do titular, RIPD/DPIA | | 9 | 📚 Docs | Docstrings/JSDoc, README, CHANGELOG, ADRs, documentação de dados pessoais | | 10 | 📊 Reporter | RelatĂłrio consolidado; scorecard com piso (Segurança/Privacidade < 4 capa o geral) | | 11 | 🔬 Profiler | Auto-detecção de stack (incl. monorepo/drift); rode /profiler para re-verificar | | 12 | 💰 Cost Engineer | Guarda contra gasto de API/infra (budget + kill-switch); opt-in em AI/ML |

PrincĂ­pios de Karpathy (embutidos em todos os agentes desde v2.3)

Todo agente gerado por octechpus init segue os 4 princĂ­pios:

  1. Think Before Coding — Architect declara premissas e define critĂ©rios testĂĄveis antes de qualquer plano
  2. Simplicity First — Coder proĂ­be abstraçÔes prematuras e cĂłdigo defensivo desnecessĂĄrio
  3. Surgical Changes — Coder altera o mínimo necessário; Reviewer rejeita escopo extra
  4. Goal-Driven Execution — Maestro converte demandas vagas em resultados mensuráveis antes de rotear

Slash commands (pĂłs-init)

Abra o Claude Code no projeto e use:

| Comando | Para quĂȘ | |---|---| | /pipeline [demanda] | Pipeline completo — todos os agentes em sequĂȘncia | | /maestro [demanda] | Classificação, severidade e roteamento | | /audit [escopo] | Raio-x do projeto com scorecard | | /architect [escopo] | AnĂĄlise de impacto arquitetural | | /coder [demanda] | Implementação guiada pelo profile | | /review [escopo] | Code review com severidade | | /qa [escopo] | Gerar testes (unit, integration, E2E) | | /security [escopo] | Audit OWASP 2021 + API Top 10 | | /privacy [escopo] | Conformidade LGPD/GDPR | | /docs [escopo] | Documentação | | /github-issue [demanda] | Criar issue no GitHub | | /profiler | Re-detectar e reportar stack atual | | /reporter [escopo] | RelatĂłrio consolidado do pipeline | | /design [demanda] | Briefing de UX/UI (Designer) | | /cost [escopo] | Audit de gasto de API e dependĂȘncias | | /readiness [escopo] | Scorecard de prontidĂŁo tĂ©cnica publicado numa Issue (integração Maestro) |


Comandos CLI

octechpus init                        # Setup com auto-detecção de stack
octechpus init --stack=<profile>      # Setup com stack explĂ­cita
octechpus status                      # Verifica setup e profile ativo
octechpus doctor                      # Diagnostica problemas e drift de profile
octechpus update                      # Atualiza commands (preserva customizaçÔes)
octechpus profile list                # Lista profiles disponĂ­veis
octechpus profile show <nome>         # Mostra profile resolvido (após herança)
octechpus profile current             # Mostra profile ativo do projeto atual
octechpus profile switch <nome>       # Troca o projeto para outro profile
octechpus design-system add           # Adiciona design system ao projeto
octechpus design-system update        # Sincroniza design-system/ com os templates mais recentes
octechpus help                        # Ajuda

Flags

| Flag | Efeito | |---|---| | --stack=<nome> | Força um profile, ignorando auto-detecção | | --describe=<file.md> | Infere a stack a partir de um doc .md do projeto | | --force | Sobrescreve arquivos existentes sem perguntar | | --minimal | SĂł o nĂșcleo .claude/: commands + settings.json + agents (sem docs/GitHub) | | --dry-run | Preview do que seria criado, sem escrever nada | | --with-design-system | Scaffolda um starter local em design-system/ (opcional) | | --keep-customizations | update pula arquivos editados pelo usuĂĄrio (padrĂŁo: true) |


Rastreamento de customizaçÔes

octechpus update armazena um hash SHA-256 de cada arquivo gerado em .octechpus/manifest.json. Em updates subsequentes, compara o hash armazenado com o conteĂșdo atual:

  • Hash bate → arquivo nĂŁo foi editado → atualiza
  • Hash diverge → arquivo foi customizado → pula (preserva suas ediçÔes)
  • --force → sobrescreve tudo independente de customizaçÔes

Criando um profile customizado

  1. Crie src/profiles/meu-stack.yaml herdando da base mais prĂłxima:
extends: _base        # ou python-fastapi, node-typescript, etc.
name: meu-stack
description: "Minha stack customizada"

language: kotlin
runtime: "jvm>=21"
package_manager: gradle

testing:
  framework: junit5
  coverage_target: 80

design_system:
  tokens: none
  1. Valide o profile:
node src/cli.mjs profile show meu-stack
  1. Use:
octechpus init --stack=meu-stack

Consulte docs/profiles.md para a especificação completa do schema.


Projetos existentes

O CLI detecta CLAUDE.md existentes e faz merge automaticamente — seu conteĂșdo Ă© preservado abaixo da seção gerada pelo Octechpus.

cd projeto-existente
octechpus init
octechpus status

Migração do 1.x

npm install -g octechpus
cd seu-projeto
octechpus init        # detecta stack, faz merge do CLAUDE.md, atualiza commands
octechpus status
octechpus doctor

Breaking changes na 2.0:

  • CLAUDE.md ganhou seção Stack Profile no topo — o init faz merge automaticamente
  • docs/AGENTS.md renomeado para docs/OCTECHPUS_AGENTS.md
  • Commands passaram a usar placeholders {{stack.xxx}} em vez de nomes de linguagem hardcoded

Testes

npm test              # 137 testes, ~2.5s
npm run test:watch    # modo watch
npm run test:coverage # com cobertura

Cobertura: profile-loader, stack-detector, template-renderer, cli-init, cli-permissions, cli-profile-commands, template-rendering-integration.


Publicar no npm

AutomĂĄtico (recomendado): bumpe a versĂŁo (package.json + src/cli.mjs), atualize o CHANGELOG.md, commite e dĂȘ push no main. O workflow .github/workflows/publish.yml publica via OIDC / Trusted Publishers quando a versĂŁo muda (e pula se jĂĄ estiver no npm).

Configuração Ășnica no npmjs.com: pacote octechpus → Settings → Trusted Publisher → GitHub Actions (Phaiolli/octechpus-cli, workflow publish.yml).

# bumpe version em package.json e src/cli.mjs (em sync) + CHANGELOG
npm test
git add package.json src/cli.mjs CHANGELOG.md
git commit -m "chore(release): bump version to X.Y.Z"
git push origin main          # → o workflow publica sozinho

Manual (fallback) — requer token npm válido em ~/.npmrc:

npm whoami && npm publish --access public && npm view octechpus version

Detalhes e troubleshooting de auth: ver CLAUDE.md → "Como publicar no npm".


Links


VersĂŁo atual

2.7.0 — Merge de settings.json prĂ©-existente (adoção sem atrito para quem jĂĄ usa Claude Code), /audit delegando aos subagents em paralelo, e .octechpus/run/ no .gitignore. Sobre a base da 2.6.0 (orquestração real via Task) e da 2.5.0 (permissĂ”es + subagents escopados). Ver ADR 002.
Veja o CHANGELOG para histĂłrico completo.


Licença

MIT