Delegar (Jamie-BitFlight/delegate)

Decompõe trabalho substancial em fases, despacha cada fase para um sub-agente e julga o que retorna. Use sempre que uma solicitação pedir implementação, investigação, correção, revisão ou qualquer alteração em arquivos — incluindo as pequenas — e sempre que estiver prestes a ler código-fonte ou executar um diagnóstico você mesmo em vez de delegar. Também use quando um relatório de um sub-agente precisar de julgamento, quando uma fase precisar ser reenviada ou quando um usuário nomear uma instância de um padrão. Não se aplica quando seu próprio prompt começa com "Seu ROLE_TYPE é sub-agent." — nesse caso, siga em vez disso as referências/sub-agent-contract.md.

O que é delegate)?

A habilidade Delegate (Delegar) transforma o agente orquestrador em um gestor de tarefas: em vez de executar o trabalho diretamente, ele divide solicitações complexas em fases discretas (ler, coletar, processar, verificar, escrever, validar, testar, relatar, revisar), despacha cada fase para um sub-agente dedicado com um contexto limpo e, em seguida, julga os resultados retornados. Isso preserva o orçamento de contexto do orquestrador, que seria consumido ao ler arquivos e manter saídas de comandos por toda a sessão. A habilidade define dois modos de prompt: especialista (para tarefas que exigem conhecimento de domínio) e genérico (para instruções prescritivas e exatas). Ela também inclui lógica de adjudicação para verificar se as evidências suportam as conclusões, tratar relatórios parciais ou bloqueados e garantir revisões independentes para qualquer alteração de código. A habilidade é projetada para ferramentas de agente como Claude Code (e similares) e se integra com habilidades auxiliares como `fix-cycle` e `parallel-work`. Uma regra crítica de antirrecursão impede que sub-agentes deleguem ainda mais, evitando loops infinitos.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Jamie-BitFlight/claude_skills/tree/main/plugins/agent-orchestration/skills/delegate

Installed? Explore more Produtividade e Colaboração skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Perguntar na sua IA favorita

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

Documentação

Delegar

O contexto do orquestrador é a única janela que dura a sessão inteira. Cada arquivo que ele lê e cada saída de comando que mantém é orçamento de julgamento gasto. Sub-agentes ganham uma janela nova por tarefa, então o orquestrador roteia, define o "pronto" e julga; os agentes leem, executam e escrevem.

Dois papéis

Cada prompt de despacho abre com Seu ROLE_TYPE é sub-agent. Essa linha é um marcador antirrecursão: um sub-agente que herda esta habilidade não deve ramificar ainda mais. Se o seu prompt abriu dessa forma, pare aqui e siga referências/sub-agent-contract.md. Caso contrário, você é o delegador e o restante deste arquivo se aplica.

Quando isso se aplica

Qualquer solicitação que altere arquivos, investigue uma causa, colete fatos, corrija um bug ou revise trabalho — independentemente do tamanho — e qualquer momento em que você estiver prestes a ler código-fonte ou executar um diagnóstico você mesmo em vez de delegar. "São só duas linhas" é delegado. A única exceção: uma verificação limitada a um único arquivo que você editou você mesmo nesta rodada.

Também se aplica quando o trabalho já está em andamento: julgar o relatório de um sub-agente (veja Adjudicar), reenviar uma fase ou generalizar uma instância de padrão nomeada pelo usuário (veja Expansão de padrão).

Responda inline quando a resposta já estiver no seu contexto e nenhuma alteração de arquivo for necessária.

Decompor

Divida a solicitação em fases. Mantenha apenas as fases que produzem trabalho; nunca adicione fases para preencher.

FaseProduz
lerO material do qual o trabalho depende, localizado e lido
coletarFatos externos: documentação, trabalhos anteriores, estado atual do sistema
processarA análise e a abordagem escolhida
verificarA abordagem verificada contra o código real e o ambiente
escreverA alteração
validarResultados de lint, verificação de tipos, build
testarExecuções de teste, mais novos testes cobrindo a alteração
relatarO que mudou, com evidências
revisarCrítica independente do resultado

Algumas formas se repetem e têm tratamento próprio:

  • Correção de bug → referências/fix-cycle.md: reproduza antes de alterar.
  • Mesma edição em vários alvos → um despacho processar decide a alteração; N despachos genéricos a aplicam; um despacho revisar verifica. Veja parallel-work.

Despachar

  • Uma fase por despacho. Uma fase pode ramificar para N alvos (N despachos, mesma fase); ela nunca se mistura com outra fase.
  • Envie despachos independentes juntos em uma rodada para que sejam executados simultaneamente. Serialize apenas quando um consumir o resultado do outro, ou quando dois escreveriam o mesmo arquivo sem isolamento.
  • Resultados de ler/coletar/processar vão para um arquivo, não para o seu contexto. Passe o caminho para a próxima fase; não encaminhe o conteúdo.

Escolher o agente

Classifique pelo que a tarefa exige do agente, não pelo seu nome:

  • Especialista — qualquer agente cuja descrição corresponda ao domínio da fase. Recebe observações, critérios de sucesso e contexto. Nunca recebe etapas de implementação.
  • Genérico — general-purpose (ou o equivalente da ferramenta) e Explore. Recebe uma implementação prescrita: edição exata, arquivos exatos, verificação exata. Explore apenas para pesquisa de correspondência exata.
  • Revisor — para a fase revisar, um agente diferente daquele que escreveu, preferindo um agente tipado como revisor ou auditor para o domínio.

Quando nenhum especialista se encaixar, despache genérico com uma tarefa prescrita.

Ambos os prompts abrem com as mesmas duas linhas — copie-as textualmente na primeira linha de qualquer modelo utilizado: Seu ROLE_TYPE é sub-agent. Siga o contrato de sub-agente em <caminho absoluto para referências/sub-agent-contract.md>.

Prompt — modo especialista

FASE: <um dos nomes de fase>
TAREFA: <uma frase>

OBSERVAÇÕES:
- <fatos já no seu contexto: declarações do usuário, relatórios STATUS anteriores, erros literais, arquivo:linha se conhecido>

DEFINIÇÃO DE SUCESSO:
- <resultado mensurável>
- <critérios de aceitação>
- <como é verificado — um comando e seu resultado esperado, ou o revisor que verificará>

ENTREGA:
- Escreva qualquer coisa com mais de uma linha em .tmp/scratch/reports/<YYYYMMDD>-<slug>.md e retorne o caminho.

CONTEXTO:
- Localização: <onde procurar>
- Escopo: <limites>
- Restrições: <requisitos impostos pelo usuário; padrões existentes a seguir>
- Comandos: <os gateways de qualidade do projeto para validar/testar, ou "descubra os que este projeto define">

CONTEXTO DO ECOSSISTEMA: (omitir a seção se vazia)
- <fatos da sessão que o agente não pode ler em nenhum lugar: CLIs autenticadas, um PR em revisão, outro agente ativo nos mesmos arquivos>

SUA TAREFA:
<a linha da fase da tabela abaixo, textualmente>

Linhas da fase para SUA TAREFA:

FaseLinha
lerLocalize e leia o material do qual este trabalho depende. Escreva caminhos exatos e conteúdo citado no arquivo de entrega; não resuma detalhes que uma fase posterior possa precisar. Não edite nada.
coletarColete os fatos externos nomeados em CONTEXTO. Registre cada um com sua fonte no arquivo de entrega. Não edite nada.
processarAnalise o material nos caminhos em OBSERVAÇÕES. Escolha uma abordagem; registre-a e por que alternativas foram descartadas. Não edite nada.
verificarVerifique a abordagem escolhida contra o código real e o ambiente em CONTEXTO. Registre onde funciona e onde falha. Não implemente nada.
escreverFaça a alteração em DEFINIÇÃO DE SUCESSO. Toque apenas nos arquivos dentro do Escopo de CONTEXTO.
validarExecute os comandos em Comandos de CONTEXTO, ou descubra os gateways de lint/tipo/build deste projeto e informe quais você executou. Relate a saída exata, aprovada ou reprovada. Uma falha silenciada é uma falha.
testarExecute a invocação de teste em Comandos de CONTEXTO, ou descubra-a e informe qual você executou. Adicione testes cobrindo a alteração. Relate a saída exata.
relatarInforme o que mudou e a evidência para isso: arquivos, comandos, saídas. Não faça nenhuma afirmação que a evidência não suporte.
revisarCritique o resultado no caminho em OBSERVAÇÕES contra DEFINIÇÃO DE SUCESSO. Relate lacunas, contradições, afirmações não suportadas. Não corrija nada.

Regras para preenchimento:

  • Uma seção que você não pode preencher a partir do que já está no seu contexto é omitida, não inventada. OBSERVAÇÕES vazio ou CONTEXTO DO ECOSSISTEMA vazio é um estado válido; um palpite não é.
  • OBSERVAÇÕES é passagem direta: apenas o que já está no seu contexto. Ler, usar grep ou executar comandos para preenchê-lo é pré-coleta; o agente faz isso com uma janela nova.
  • Declare observações como fatos ("código de saída 1", "o texto do erro é: …"). Onde você tiver uma hipótese, rotule-a: Hipótese a verificar: ….
  • Restrições são resultados e limites, nunca etapas. Nomear o próprio gateway do projeto em Comandos é uma restrição, não uma etapa.
  • Não diga nada que o agente herde: convenções do repositório, ferramentas, "explore livremente", "use habilidades disponíveis". Isso reside nas instruções do agente do projeto. Nomeie uma habilidade apenas quando o agente precisar carregá-la e não o faria por conta própria.
  • Caminhos: escritos como o agente os resolverá a partir de seu próprio diretório de trabalho; relativos dentro do repositório, e a forma de link simbólico (não o alvo resolvido) para qualquer coisa alcançada através de um link simbólico.

Prompt — modo genérico

FASE: <escrever | validar | testar | ler>
TAREFA: <a instrução exata — a edição a fazer, o padrão a encontrar, o comando a executar>

ARQUIVOS:
- <caminhos exatos>

DEFINIÇÃO DE SUCESSO:
- <o comando de verificação e seu resultado esperado>

ENTREGA:
- Inclua a saída da verificação no seu relatório.

Adjudicar

Relatórios são alegações. Para cada um:

  • Verifique se a evidência suporta a conclusão. "Testes passam" sem a saída do comando não é evidência; reenvie o despacho para obter a saída.
  • Julgue o trabalho retornado; não o derive novamente. Reler o que o agente leu gasta o contexto que delegar economizou.
  • Dois relatórios conflitantes → encontre a alegação falsificável e despache uma verificação para ela. Confiança não é critério de desempate.
  • PARCIAL → reenvie o restante, nomeando exatamente o que falta.
  • BLOQUEADO por uma entrada faltante → forneça-a e reenvie. BLOQUEADO após tentativas → mude a abordagem ou escale para o usuário; não reenvie o mesmo prompt.

Reenvie a mesma fase no máximo duas vezes na mesma lacuna. Depois disso, pare e relate BLOQUEADO ao usuário com a lacuna nomeada.

Toda solicitação que alterou código recebe uma revisão independente, de um revisor diferente do escritor.

Expansão de padrão

Um usuário apontando para uma instância de um cheiro, bug ou verificação ausente está nomeando um padrão. A menos que ele tenha dito "apenas este": despache uma auditoria de todo o arquivo ou módulo para o padrão, relate as instâncias encontradas e confirme com o usuário antes de corrigir além do arquivo nomeado.

Ponteiros

  • referências/sub-agent-contract.md — o que os agentes despachados seguem.
  • referências/fix-cycle.md — o ciclo de reprodução primeiro para despachos de correção de bug.
  • parallel-work — ramificação, redução, criador/verificador, torneios, loops com limites; também aponta para mecanismos do Claude Code.
  • Se orchestrator-discipline estiver instalado: o que o orquestrador pode ler e executar; imposto por hooks.
  • Se process-siren estiver instalado: escrever pontos de decisão como losangos Mermaid avaliáveis.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Jamie-BitFlight/agentskill-kaizen-meta-docs

Agentskill kaizen plugin documentation index. Load when needing to read about cross-platform notes, improvement plans, or DuckDB integration.

Jamie-BitFlight/bash-51-features

Bash 5.1 release features and improvements with practical examples. Use when working with Bash 5.1 features, epoch time variables, redirection enhancements, or when user asks about Bash 5.1 changes, new features, or version-specific capabilities.

Jamie-BitFlight/bash-52-features

Bash 5.2 release features and improvements with practical examples. Use when working with Bash 5.2 features, variable handling enhancements, readline improvements, or when user asks about Bash 5.2 changes, new features, or version-specific capabilities.

Jamie-BitFlight/bash-53-features

Bash 5.3 release features and improvements with practical examples. Use when working with Bash 5.3 features, new command substitution, GLOBSORT, loadable builtins, or when user asks about Bash 5.3 changes, new features, or version-specific capabilities.

Jamie-BitFlight/bash-development

This skill should be used when the user asks to "write a bash script", "create a shell script", "implement bash function", "parse arguments in bash", "handle errors in bash", or mentions bash development, shell scripting, script templates, or modern bash patterns.

Jamie-BitFlight/bash-lint

This skill should be used when the user asks to "lint bash script", "run shellcheck", "format shell script", "use shfmt", "fix shellcheck errors", or mentions shell script linting, formatting, code quality, or pre-commit hooks for bash.

Jamie-BitFlight/bash-logging

This skill should be used when the user asks to "add logging to bash script", "colorize output", "implement log levels", "CI/CD sections", "terminal colors in bash", or mentions logging functions, emoji output, collapsible CI sections, or shlocksmith.

Jamie-BitFlight/bash-portability

This skill should be used when the user asks about "POSIX compatibility", "portable shell scripts", "cross-shell compatibility", "bashisms", "shebang selection", or mentions writing scripts that work on different shells (bash, sh, dash, zsh) or different systems.

Jamie-BitFlight/bash-testing

This skill should be used when the user asks to "test bash script", "write shell tests", "use shunit2", "use shellspec", "create test suite for bash", or mentions unit testing, test frameworks, mocking, or test-driven development for shell scripts.

Jamie-BitFlight/brainstorming-skill

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or when users request help with ideation, marketing, and strategic planning. Explores user intent, requirements, and design before implementation using research-validated prompt patterns.

Jamie-BitFlight/clang-format

Configure clang-format code formatting. Use when: user mentions clang-format or .clang-format, analyzing code style/patterns, creating/modifying formatting config, troubleshooting formatting, brace styles/indentation/spacing/alignment/pointer alignment, or codifying conventions.

Jamie-BitFlight/commitlint

When setting up commit message validation for a project. When project has commitlint.config.js or .commitlintrc files. When configuring CI/CD to enforce commit format. When extracting commit rules for LLM prompt generation. When debugging commit message rejection errors.

Jamie-BitFlight/conventional-commits

When writing a git commit message. When task completes and changes need committing. When project uses semantic-release, commitizen, git-cliff. When choosing between feat/fix/chore/docs types. When indicating breaking changes. When generating changelogs from commit history.

Jamie-BitFlight/dasel-reference

Use when querying, modifying, or converting JSON, YAML, TOML, XML, CSV, HCL, or INI with dasel v3. Complete reference for selectors, functions, conditionals, variables, spread operator, type casting, and format-specific patterns.

Jamie-BitFlight/data-exploration

Use when exploring unknown structured data files with dasel v3 — discover schema, list keys, find nested values, sample arrays, identify data types across JSON, YAML, TOML, XML, CSV, HCL, INI formats

Jamie-BitFlight/data-transformation

Use when modifying, converting, or transforming structured data with dasel v3 — in-place mutations, format conversion, batch operations, array manipulation, object construction, and merge patterns across JSON, YAML, TOML, XML, CSV, HCL, INI

Jamie-BitFlight/enterprise-hibernate-hbm

Dasel v3 query patterns for Hibernate .hbm.xml mapping files — entity-table binding, Java property-to-column extraction, one-to-many set/list/bag relationship tracing, many-to-one foreign key discovery, batch scanning across 60+ HBM files. Use when querying Hibernate ORM class mappings, extracting schema metadata from Java persistence layer, or auditing entity-column relationships in enterprise legacy codebases.

Jamie-BitFlight/enterprise-installanywhere

Dasel v3 query patterns for InstallAnywhere .iap_xml installer definitions — use when querying action sequences, discovering variables, resolving platform conditions, navigating panels, or comparing installer variants. Files are 2.5+ MB, 65,000+ lines — too large for context reads, requires structural dasel queries.

Jamie-BitFlight/enterprise-maven-pom

Dasel v3 selector patterns for Maven POM XML files — use when querying dependency versions, filtering by groupId or scope, extracting module hierarchy from parent POMs, or detecting version conflicts across enterprise multi-module Java projects. Load this skill when working with pom.xml files using dasel.

Jamie-BitFlight/enterprise-spring-xml

Dasel v3 selectors for Spring bean factory XML — use when querying any Spring ApplicationContext XML for bean discovery, dependency wiring, JMS destination mapping, property injection extraction, or cross-bean reference tracing. Load this skill before writing dasel selectors against Spring bean XML files (applicationContext.xml, *_beans.xml, spring-*.xml).

Habilidades Relacionadas