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)
Maintainers
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 fullEm automação/IA, use
--jsonnos comandos que o suportam (ex.:status,check) — saída estruturada, sem ruído ANSI. Olisté a exceção: não tem--json; seu formato compacto (prismanage listou--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 nosettings.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.
