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

prismanage

v0.9.0

Published

prismanage CLI — pipeline determinístico de desenvolvimento com agentes: issues-playbook, gates declarados, filas por dependência e releases multi-target (GitHub como fonte única)

Readme

prismanage CLI

CLI de gerenciamento de projetos — roteador de comandos por domínio (prismanage.ai).

Instalação

# Via npm link (global) — expõe o comando `prismanage`
cd packages/cli && npm link

# Ou rodar diretamente, sem instalar
node prismanage/bin/prismanage.mjs <domain> <action> <subcommand>

Arquitetura — roteamento por filesystem (3 níveis)

Todo comando é prismanage <domain> <action> <subcommand>, mapeado direto para scripts/src/<domain>/<action>/<subcommand>.mjs. O arquivo existir É o registro — não há registro nem import manual.

scripts/src/
├── _engine/      # roteamento: discover, runner, orchestrator, list, status
├── _templates/   # contrato de cada action (check / make / run / sync)
├── <domain>/
│   ├── check/    # validações read-only (severity ok | warn | error)
│   ├── make/     # geração de artefatos
│   ├── run/      # efeitos colaterais / pipelines
│   └── sync/     # operações de git / GitHub
├── lib/          # helpers compartilhados
└── factories/    # lógica pura (dados → conteúdo, sem I/O)

Actions válidas: check, make, run, sync, list, create, guard.

Uso

# Descobrir comandos
prismanage list                      # lista todos os plugins (alias: --list)
prismanage list github               # filtra por domain
prismanage list --names              # só domain/action/subcommand, um por linha (roteador)

# Estado e orquestração
prismanage status                    # git + contagem de plugins por domain
prismanage check <domain>            # roda todos os check/ de um domain

# Exemplos reais
prismanage github check context --json
prismanage github sync start "feat: minha feature"
prismanage github sync pr "feat: minha feature"
prismanage content check frontmatter
prismanage build run full

Em automação/IA, use --json nos comandos que o suportam (ex.: status, check) — saída estruturada, sem ruído ANSI. O list é a exceção: não tem --json; seu formato compacto (prismanage list ou --names) já sai sem ANSI quando a saída não é um TTY, e é o formato pensado para IA consumir.

Configuração

O CLI lê scripts/manage.config.json (locales, bloco git, bloco agents, …).

Variáveis de ambiente

Copie scripts/.env.example para scripts/.env e preencha os tokens:

| Variável | Descrição | |----------|-----------| | COOLIFY_API_TOKEN | Token da instância Coolify | | CF_GLOBAL_API_TOKEN | Cloudflare Global API Token | | CF_API_TOKEN | Cloudflare Scoped API Token (Pages) | | GITHUB_DISPATCH_TOKEN | PAT para repository_dispatch | | DEEPL_API_KEY | DeepL API (tradução) | | GOOGLE_PLACES_API_KEY | Google Places API (fotos) |

Hooks

Os hooks de git em prismanage/hooks/ (pre-commit, pre-push, post-commit) chamam o prismanage para validações automáticas. Veja cada arquivo para o detalhe do que roda em cada gatilho.

Ative-os uma vez por clone com prismanage setup run hooks (seta core.hooksPath=prismanage/hooks → branch-protection + pre-push). As guardas anti-colisão entre sessões do Claude Code ficam em .claude/settings.json (hooks SessionStart/PreToolUse); cheque o risco manualmente com prismanage agent check session --json.

Integração Claude Code (subagentes, command, skills, workflows)

O pacote do CLI (bin/src/hooks) não carrega os recursos do Claude Code — eles vivem em .claude/. Para provisionar o subconjunto portável num projeto:

prismanage setup run claude [--dry-run] [--overwrite]

Copia de templates/claude/ para o .claude/ do projeto, substituindo os placeholders a partir do manage.config.json ({{WORKDIR}}, {{REPO}}, {{OWNER}}, {{REPO_NAME}}):

  • agents/: prismanage-orchestrator, github-implementor, pr-reviewer
  • commands/: prismanage (slash command)
  • skills/: prismanage, prismanage-guard, prismanage-orchestrator
  • workflows/: prismanage-task, agent-task, review-open-prs, implement-milestone-issues
  • hooks/: pretool-guard, session-guard (anti-colisão) + merge no settings.json

Idempotente (pula o que já existe; --overwrite força). Agentes específicos de projeto (ex.: revisores de conteúdo) não são portáveis e ficam de fora.