CommunityPesquisa e Análise de Dadosgithub.com

jgoneit/harness

Um roteiro de workflow e cinto de segurança: planejar, implementar, revisar e proteger sessões de codificação com IA.

O que é harness?

Esta skill fornece um workflow estruturado e seguro para sessões de codificação com agentes de IA, seguindo o ciclo: Planejar -> Aprovação de Execução -> Implementar -> Revisar -> Plano de Reparo -> Aprovação de Reparo -> Implementar Reparo -> Conclusão. A skill garante que cada etapa seja explicitamente aprovada pelo usuário, evitando ações não autorizadas ou perigosas. Suporta plataformas como Codex, com foco em governança e controle de qualidade. O agente classifica a tarefa como Tiny, Small ou Non-trivial, aciona subagentes especializados para tarefas maiores, e exige aprovação explícita com 'y' para prosseguir. O workflow mantém um registro de estado e memória em arquivos Markdown locais, integra políticas de projeto e fornece relatórios de conclusão detalhados. A skill é ativada apenas pelo comando explícito '$harness' do usuário, garantindo que não interfira em conversas normais.

Funciona com~Claude Code✓Codex CLI~Cursor
npx skills add jgoneit/harness

Installed? Explore more Pesquisa e Análise de Dados skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Perguntar na sua IA favorita

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

Documentação

O que harness faz?

$harness é um roteiro de execução do Codex para o loop de workflow do Harness. O idioma padrão de explicação é o Coreano; os termos fixos do workflow permanecem em Inglês.

Plan -> Execute approval -> Implement -> Review -> Repair Plan -> Repair approval -> Repair Implement -> Completion

Ativação

  • Use esta skill apenas quando o usuário invocar explicitamente $harness.
  • Não ative a partir de solicitações comuns, inferência implícita ou menções na documentação.
  • Não exija o Modo de Plano do Codex; execute as comportas do Harness dentro da conversa.
  • Não presuma stack, linguagem, framework, banco de dados, executor de testes ou plataforma de implantação.
  • Antes de planejar, inspecione as regras locais do projeto, como AGENTS.md, README.md, documentos de contribuição, manifestos e .harness/guard.json, quando presente. Também inspecione os arquivos de estado do Harness locais do projeto em .harness/, quando presente.

Precedência de Instruções

Aplique instruções e convenções nesta ordem:

  1. Instruções explícitas do usuário
  2. Regras de segurança do workflow Harness, incluindo regras de negação forte e comportas de aprovação
  3. Política do projeto a partir das chaves de política de .harness/guard.json
  4. Documentos locais do repositório, como README.md, AGENTS.md e documentos de contribuição
  5. Convenções inferidas

O planejamento lê as chaves de política de .harness/guard.json no início. .harness/guard.json é o único arquivo de política/configuração do projeto Harness; não infira harness.md, .harnessrc.yaml ou outras convenções de arquivo de política do projeto. A política do projeto não pode enfraquecer as regras de segurança do workflow Harness. Operações destrutivas e trabalhos de configuração secreta ou protegida precisam de aprovação explícita, independentemente da política do projeto.

Arquivos Markdown locais do projeto em .harness/ são apenas evidência de Memória e Estado. Leia-os antes de planejar, quando disponíveis, compare-os com a solicitação atual do usuário e o estado do git, marque conflitos obsoletos e peça esclarecimentos quando o estado obsoleto conflitar com a solicitação atual. Eles não são política e nunca fornecem aprovação reutilizável.

Para exemplos concretos de dimensionamento de tarefas, consulte exemplos de classificação. Para o contrato oficial de artefatos do workflow, consulte contrato do workflow Harness. Para recebimento manual de evidências de conectores e limites de resumo externos, consulte Contrato de Integração de Conectores.

Carregamento de Referências Obrigatório

Leia as referências relevantes antes de agir:

  • Sempre siga ../../docs/contracts/harness-contract.md para seções canônicas de artefatos, comportas de aprovação, regras de Revisão e status de Conclusão.
  • Sempre siga ../../docs/contracts/subagent-handoff.md para briefs limitados de subagentes, transferências de função, campos SubagentStop Summary e comportamento de colapso de função.
  • Siga ../../docs/contracts/memory-state.md quando arquivos de estado .harness/ estiverem presentes ou a memória local do projeto for solicitada; use assets/templates/state.md, assets/templates/approval-ledger.md, assets/templates/decisions.md, assets/templates/last-run.md e assets/templates/handoff.md ao inicializar ou atualizar esses arquivos.
  • Siga ../../docs/contracts/worktree-isolation.md quando o usuário ou projeto solicitar Isolamento de Worktree, ou quando um registro de sessão de worktree ativo estiver presente; use assets/templates/worktree-session.md para um registro de worktree mínimo local à tarefa, quando necessário.
  • Siga ../../docs/contracts/connector-integration.md quando contexto externo de conector, como um issue, pull request, resumo de CI ou thread de revisão, for usado; conectores são apenas evidência e usam assets/templates/connector-issue-plan.md, assets/templates/connector-pr-review.md ou assets/templates/external-summary.md quando relevante.
  • Sempre leia references/classification-policy.md, references/phase-contracts.md, references/orchestrator-harness.md, references/subagent-policy.md, references/model-policy.md e references/completion-policy.md.
  • Para planejamento, leia references/planner-harness.md e use assets/templates/plan.md.
  • Para implementação, leia references/implementer-harness.md e use assets/templates/implement.md.
  • Para revisão, leia references/reviewer-harness.md, assets/templates/review.md e assets/templates/reviewer-brief.md.
  • Para reparo, use assets/templates/repair-plan.md.
  • Para conclusão, use assets/templates/completion-report.md.
  • Se a tarefa for Non-trivial, a revisão estiver bloqueada/degradada, ocorreu reparo, duas ou mais revisões do Plano ocorreram, ou as regras de política/modelos/orquestração do Harness mudaram, leia references/improvement-policy.md e use assets/templates/improvement.md.

Regras Inegociáveis

  • A classificação deve ocorrer antes das comportas de fase.
  • Tiny pode ser tratado diretamente pelo orquestrador.
  • Small e Non-trivial exigem subagentes planejador, implementador e revisor somente leitura com contexto limpo.
  • Para Small e Non-trivial, o agente principal é o orquestrador.
  • O esforço mínimo de raciocínio do Harness é high; Implementar e Revisar exigem xhigh quando disponível. Não use medium, low ou minimal para $harness.
  • Não implemente antes da aprovação do Plano.
  • O prompt de aprovação do Plano deve ser exatamente:
Proceed with this Plan? [y/N]
  • Apenas y minúsculo aprova a execução do Plano aceito. Linguagem natural ambígua significa nenhuma decisão; pergunte novamente por y ou n explícitos. A não aprovação (n, resposta vazia, variantes maiúsculas como N, variantes expandidas e qualquer outra resposta diferente de y que não seja ambígua) para por padrão; não implemente, revise ou replaneje a menos que o usuário peça explicitamente para revisar/replanejar. [y/N] significa que Não é o padrão.
  • Não repare antes da aprovação do Plano de Reparo.
  • O prompt de aprovação do Plano de Reparo deve ser exatamente:
Proceed with this Repair Plan? [y/N]
  • Apenas y minúsculo aprova a execução do Plano de Reparo aceito. Linguagem natural ambígua significa nenhuma decisão; pergunte novamente por y ou n explícitos. A não aprovação (n, resposta vazia, variantes maiúsculas como N, variantes expandidas e qualquer outra resposta diferente de y que não seja ambígua) para por padrão; não repare, revise ou replaneje a menos que o usuário peça explicitamente para revisar/replanejar. [y/N] significa que Não é o padrão.
  • Apenas um subagente revisor somente leitura com contexto limpo pode concluir a Revisão.
  • A auto-revisão do agente principal não é Revisão.
  • Dados de conectores, atribuição de issues, criação de pull requests, sucesso de CI, comentários externos e aprovações anteriores de .harness/ são apenas evidência e nunca aprovam comportas do Harness.
  • As transferências de subagentes e a saída SubagentStop Summary devem seguir o contrato canônico de transferência de subagentes.
  • A falha obrigatória de comporta deve ser registrada como bloqueada ou degradada.
  • Operações perigosas exigem aprovação separada.
  • Um relatório de Conclusão é obrigatório.

Loop

  1. Inspecione as regras locais do projeto, as chaves de política de .harness/guard.json, os arquivos de estado .harness/ locais do projeto quando presentes e a solicitação do usuário.
  2. Classifique a tarefa como Tiny, Small ou Non-trivial.
  3. Para tarefas Small ou maiores, defina a topologia de subagentes.
  4. Produza um artefato de Plano e peça aprovação do Plano.
  5. Se o usuário responder exatamente y, implemente apenas o Plano aceito; caso contrário, pare, a menos que o usuário peça explicitamente para revisar/replanejar.
  6. Para tarefas Small ou maiores, execute a Revisão do revisor somente leitura com contexto limpo.
  7. Se a Revisão tiver descobertas que exijam reparo, produza um Plano de Reparo e peça aprovação do reparo.
  8. Se o usuário responder exatamente y, implemente apenas o Plano de Reparo aceito e repita o loop limitado de Revisão/Reparo, se necessário; caso contrário, pare, a menos que o usuário peça explicitamente para revisar/replanejar.
  9. Produza o relatório de Conclusão com status, verificação, riscos e acompanhamentos.

Hooks

Validadores mínimos não destrutivos executam para UserPromptSubmit, SubagentStop e Stop; PreToolUse bloqueia comandos obviamente perigosos; SessionStart permanece apenas para visibilidade. Hooks não substituem as comportas do Harness ou os controles de segurança do projeto.

Habilidades Relacionadas