Communitygithub.com

challenge-plans

Skill de agente + CLI para revisão adversarial multi-agente de planos e especificações antes da execução, reduzindo retrabalho. Funciona com as assinaturas Claude Code / Codex que você já possui — sem chaves de API.

O que é challenge-plans?

O **challenge-plans** é um skill de agente combinado com uma ferramenta de linha de comando que realiza uma revisão adversarial multi-agente de artefatos como especificações, planos, diffs e documentos de design antes da execução. Seu objetivo principal é identificar falhas, riscos, pressupostos ocultos e lacunas de sequenciamento, reduzindo significativamente o retrabalho e melhorando a qualidade das decisões. O suporte inclui os tipos `spec`, `diff` e `plan`, sendo que este último avalia qualquer tipo de plano (viagem, lançamento, contratação) com categorias de falha neutras em relação ao domínio, como critérios de sucesso ausentes, riscos não abordados e desalinhamento de metas. A ferramenta produz um veredito de seis estados com objeções sobreviventes verificadas ou não, e pode ser configurada com perfis de profundidade (`fast`, `standard`, `deep`) e opções de saída (`stdout` ou `markdown`). O challenge-plans não possui modelo próprio e não usa chaves de API — ele depende de uma assinatura CLI ativa (Claude Code ou Codex) e utiliza o comando `doctor` para verificar e orientar a configuração do backend. O skill se encaixa naturalmente em fluxos de planejamento como `writing-plans → challenge-plans → executing-plans` e é complementar a outros skills como `superpowers` e `grill-me`, sendo acionado manualmente pelo agente chamador.

Funciona com✓Claude Code✓Codex CLI~Cursor
npx skills add hiadrianchen/challenge-plans

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que challenge-plans faz?

Reforce um plano/especificação com revisão adversarial multi-agente antes da execução, para reduzir retrabalho. Encaixa-se no fluxo writing-plans → challenge-plans → executing-plans.

Quando usar (sinais de roteamento)

  • A entrada é um único artefato rascunhado (especificação/plano/diff/documento de design/ADR) + intenção "revisar / encontrar falhas / isto pode ser executado / reforçar / QA" → use este skill.
  • Um agente terminou algo e está prestes a pedir que o usuário decida ou faça QA → execute isto primeiro e apresente a recomendação da revisão cruzada.
  • A entrada tem ≥2 opções para escolher → use o skill irmão weigh-options (deliberação/votação), não este.

Execução

# Instalado via PyPI (pip install challenge-plans) — o comando de console está disponível diretamente:
challenge-plans doctor                                                            # verifique primeiro o estado de login do adaptador
challenge-plans run <artifact> --type spec --profile standard --sink markdown     # revise um plano/especificação
challenge-plans run <artifact> --type spec --profile standard --sink markdown --lang zh   # saída localizada
# porta de diff de código:  git diff > change.diff && challenge-plans run change.diff --type diff --sink markdown
# A partir de um checkout da fonte (não instalado via pip): PYTHONPATH=src python3 -m challenge_plans.cli <args>
  • --type spec|diff|plan (a rubrica decision ainda está pendente — sai com código 2 por design). diff revisa um git diff bruto; plan revisa QUALQUER plano (uma viagem, um lançamento, uma contratação — não apenas especificações de desenvolvimento) com tipos de falha neutros em relação ao domínio (critérios de sucesso ausentes / restrição ignorada / risco não abordado / lacuna de sequenciamento / pressuposto não declarado / desalinhamento de meta / irreversibilidade / sem plano de contingência) e as lentes de viabilidade, risco e alinhamento de objetivo. Todos executam o mesmo pipeline de veredito.
  • --profile fast|standard|deep, --sink stdout|markdown, --enforce (vereditos não aprovados saem com código não-zero; modo consultivo padrão sai com 0).
  • --lang <code> (padrão en): escreva o texto da revisão no idioma do usuário, ex.: --lang zh. Defina isto a partir do idioma do usuário para que toda a revisão retorne localizada; as chaves JSON / enumerações / âncoras L12-15 permanecem estáveis. Equivalente a exportar CHALLENGE_PLANS_LANG.
  • Saída: um veredito de 6 estados + objeções sobreviventes. [sev✓] = confirmado pelo Verificador entre famílias, pode barrar rigidamente; [sev?] = não verificado, apenas consultivo.

Se nenhum backend estiver pronto

O challenge-plans precisa de pelo menos uma CLI de assinatura logada (não tem modelo próprio e não usa chaves de API). Se doctor mostrar nada como ready, não tente novamente cegamente — pergunte ao usuário, então direcione:

  1. Tem uma assinatura Claude ou ChatGPT, mas a CLI está faltando / desconectada → guie-o pelo passo exato que doctor imprime (instale-a, ou claude → /login, ou faça login no codex).
  2. Ainda não tem assinatura, mas quer uma → oriente-o a assinar (Claude Pro/Max ou ChatGPT), depois instale e faça login na CLI.
  3. Não tem assinatura e não quer uma → explique que o challenge-plans não pode ser executado sem uma, e pare — não entre em loop.

O doctor já imprime a correção por backend além desta orientação; apresente-a ao usuário em vez de falhar silenciosamente.

Apresentação ao usuário

Apresente o veredito + objeções sobreviventes (✓ verificado vs ? não verificado) + campos obrigatórios ausentes como "minha recomendação de revisão cruzada", então deixe o usuário decidir — em vez de entregar uma decisão nua. Veja README.md para o quadro completo.

Composição com skills de planejamento

  • superpowers (writing-plans → executing-plans): depois que writing-plans salva um arquivo de plano (padrão docs/superpowers/plans/<date>-<feature>.md — leia o caminho real), execute challenge-plans run <plan> --type spec antes de executing-plans. Ele ocupa a mesma costura de revisão pré-execução que o plan-document-reviewer embutido do superpowers, mas como uma passagem multi-CLI entre famílias. Direcione as objeções sobreviventes de volta ao plano, depois execute.
  • grill-me (mattpocock/skills): complementar e anterior — alinha interativamente o usuário enquanto o plano se forma (sem saída de arquivo). Execute challenge-plans após a existência de um plano/PRD escrito.
  • Nada invoca automaticamente o challenge-plans; o agente chamador o conecta na costura. As rubricas --type plan/decision estão pendentes — use --type spec para prosa estilo plano hoje.

Habilidades Relacionadas