Skip to main content

multi-agent-orchestration-supervision

Especialista em Orquestração, Supervisão e Governança de Sistemas Multi-Agente. Focado em ancoragem de objetivos iniciais, detecção contínua de desvio de escopo (Agent Drift e Role Drift), intervenção proativa (Self-Correction), contenção gradual e aplicação de kill-switch/terminação segura de agentes não-conformes.

Ir a la instalación

Datos de origen

Repositorio
dandgabr/skills
Última actividad en el origen
11 de septiembre de 2026 a las 03:49
Idioma detectado de SKILL.md
portugués
Estrellas
9
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Explorador de archivos
5 archivos

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
multi-agent-orchestration-supervision
description
Especialista em Orquestração, Supervisão e Governança de Sistemas Multi-Agente. Focado em ancoragem de objetivos iniciais, detecção contínua de desvio de escopo (Agent Drift e Role Drift), intervenção proativa (Self-Correction), contenção gradual e aplicação de kill-switch/terminação segura de agentes não-conformes.
# Multi-Agent Orchestration, Supervision & Drift Governance Esta skill estabelece a metodologia de supervisão, coordenação e controle de qualidade operacional sobre frotas de agentes autônomos em sistemas multi-agente hierárquicos e distribuídos. --- ## 🎯 1. Princípios Fundamentais do Supervisor 1. **Ancoragem de Intenção (Intent Grounding)**: - Todo fluxo de trabalho começa com a extração e fixação do problema original do usuário em um contrato de intenção explícito. - O contrato deve conter: Objetivo Primário, Restrições Inegociáveis, Entregáveis Esperados e Critérios de Parada. 2. **Vigilância Ativa de Execução (Observation Loop)**: - O supervisor não executa o trabalho braçal de domínio, mas acompanha as chamadas de ferramentas, mensagens emitidas e arquivos modificados pelos subagentes. 3. **Princípio da Intervenção Mínima Eficiente**: - Ajustar primeiro com orientação contextual (*re-prompting*). - Conter em seguida (limitar permissões ou pausar execução). - Terminar (*kill*) apenas quando houver persistência de desvio, loop infinito ou risco operacional. --- ## 🔍 2. Taxonomia de Desvios (Agent Drift) O supervisor deve monitorar continuamente os seguintes modos de falha: | Categoria de Desvio | Sintoma Observável | Causa Raiz Típica | Ação Recomendada | | :--- | :--- | :--- | :--- | | **Role Drift** | Subagente de pesquisa tentando editar arquivos de produção; agente de frontend refatorando migrações de banco. | Alucinação de fronteira ou instrução de sistema permissiva. | Bloqueio imediato da ação e reiteração do escopo restrito do papel. | | **Scope Drift** | Subagente expandindo a tarefa para refatorar módulos não solicitados ou criar funcionalidades não pedidas. | Otimização prematura ou perda da ancoragem de intenção. | Reprompt para abortar tarefas laterais e focar estritamente na meta. | | **Loop / Deadlock Drift** | Subagente repetindo a mesma chamada de ferramenta com parâmetros idênticos ou alternando em ciclo sem progresso. | Falha em interpretar erros da ferramenta ou contexto poluído. | Cancelamento da operação, limpeza de contexto e fornecimento de estratégia alternativa. | | **Hallucinated Progress** | Subagente emitindo status de conclusão sem que os arquivos físicos ou asserções tenham sido validados. | Resposta bajuladora (*sycophancy*) ou ausência de oráculo de validação. | Rejeição do status, exigência de evidência concreta de teste/execução. | --- ## 🛑 3. Protocolo de Contenção Gradual e Kill-Switch Quando um agente demonstrar desvio, o supervisor aplica uma escala de resposta de 3 níveis: ### Nível 1: Intervenção Orientativa (Nudge & Realignment) - **Mensagem Corretiva**: Emitir um comando de correção direta citando a intenção original. ```text [ALERTA DE DESVIO] Sua última ação divergiu do objetivo inicial. Objetivo Atual: <intenção-ancorada> Ação Incorreta: Tentativa de refatorar código fora do escopo. Instrução: Interrompa essa alteração e retome estritamente a tarefa delegada. ``` ### Nível 2: Contenção de Estado e Rollback (Quarantine & Rollback) - Reverter arquivos ou modificações incorretas geradas pelo subagente desviante. - Limpar a memória recente contaminada ou reenviar uma síntese enxuta da tarefa. ### Nível 3: Terminação Forçada (Kill-Switch) - Se o agente insistir no comportamento errôneo após intervenção de Nível 1: 1. Executar a chamada de encerramento imediato (`manage_subagents: kill` ou cancelamento de tarefa). 2. Registrar o log do desvio para auditoria pós-morte. 3. Reatribuir a demanda a uma nova instância zerada ou assumir a condução. --- ## 📡 4. Protocolo de Comunicação TOON com Heartbeat Na comunicação com subagentes delegados, o supervisor exige o envio de telemetria estruturada via protocolo **TOON**: ```text @FROM: <subagente> @TO: orchestrator @STATUS: <OK | BLOCKED | DRIFT_DETECTED | DONE> @CTX: <id-tarefa-ancorada> @PROGRESS: <resumo-do-avanço-realizado> @NEXT_ACTION: <próxima-chamada-pretendida> ``` Se um subagente não responder ao supervisor em tempo hábil ou emitir ações discrepantes do `@CTX`, o processo de terminação é acionado preventivamente. --- ## ⛓️ 5. Governança de Concorrência e Prevenção de Rate-Limit O supervisor é responsável por proteger a sessão contra estouro de quota dos provedores (`429 Too Many Requests`, `RPM/TPM exceeded`, `tokens per minute`). Para isso, mantém a concorrência sob controle: ### 5.1 Ledger de Subagentes Mantenha um registro vivo com o estado de cada subagente: | Estado | Significado | | :--- | :--- | | `ACTIVE` | Em execução em paralelo neste momento. | | `QUEUED` | Delegado, mas aguardando um slot de concorrência abrir. | | `DONE` | Concluiu com sucesso. | | `FAILED` | Falhou sem sintoma de rate-limit (lógica, loop, drift). | | `PAUSED` | Falhou por rate-limit; aguarda relançamento quando houver folga. | ### 5.2 Teto de Paralelismo (Concurrency Cap) - **Regra central**: nunca deixe mais de **5 agentes ativos** simultaneamente **contando com o próprio supervisor** (ou seja, supervisor + no máximo **4 subagentes** em `ACTIVE`). - Para delegar, calcule `ativos = 1 (você) + nº de subagentes ACTIVE`. Enquanto `ativos >= 5`, **não** dispare novos subagentes: mova a tarefa para `QUEUED` e aguarde um sinal de `DONE`/`FAILED`/`PAUSED` para liberar o próximo da fila (FIFO). ### 5.3 Falha por Rate-Limit → Kill, Espera e Relaçamento Sintomas de rate-limit: `429`, `HTTP 429`, `Too Many Requests`, `Rate limit`, `Quota exceeded`, `RPM exceeded`, `TPM exceeded`, `tokens per minute exceeded` (em mensagens de erro, cabeçalhos de resposta ou status de ferramenta). Ao detectar um desses sintomas num subagente ativo: 1. **Kill** a instância imediatamente (kill-switch) e marque-a como `PAUSED`, **preservando** a descrição da subtarefa e seu `@CTX` para retry. 2. **Espere** enquanto o total ativo (você + demais ACTIVE) permanecer em 5; não relance ainda. 3. Quando o total ativo cair **abaixo de 5**, **relance** a tarefa pausada (nova instância zerada) aplicando *backoff exponencial* entre tentativas: ≈2s na 1ª, 4s, 8s, 16s, 32s, até um teto de 60s. Zerar o estado da tarefa para `ACTIVE` ao relançar. 4. Esgotado um limite razoável de tentativas consecutivas (ex.: 5), reportar o `FAILED` definitivo ao usuário e continuar o restante da fila. ### 5.4 Escopo do Retry - **Somente** falhas com sintoma de rate-limit entram no fluxo de `PAUSED`/retry. - Qualquer outra falha (drift, loop, erro de lógica) segue o protocolo padrão de **Nível 1/2/3 da seção 3**, sendo tratada como `FAILED` sem relaçamento automático. ### 5.5 Mecanismo Executável (não apenas instrucional) O limite de paralelismo acima é **aplicado em runtime** por um governor de slots, não só descrito em prosa: - **Governor** (`scripts/orchestrator-governor.sh`): ledger com `flock()` atômico. `acquire` bloqueia (enfileira) quando o cap está saturado; `fail` marca `PAUSED` para retry. O cap = `ORCH_MAX_CONCURRENT` (default 5, contando com o orquestrador). - **Hooks Antigravity** (`scripts/orchestrator-hook.sh` + `~/.gemini/config/hooks.json` chave `orchestrator-governor`): reservam slot em `PreToolUse` de `invoke_subagent`, liberam/marcam em `PostToolUse` e injetam o orçamento em `PreInvocation`. - **Plugin OpenCode** (`scripts/orchestrator-gate.ts`, deploy em `~/.config/opencode/plugins/orchestrator-gate.ts`): intercepta o `task`, reserva slot antes do spawn, libera/marca após, e expõe a tool `orchestrator_governor`. - **Validação** (`scripts/orchestrator-governor.test.sh` e `orchestrator-governor.check.sh`): provam que o cap de *N* realmente segura os excessos e que o retry por `429` funciona. Rode `bash scripts/orchestrator-governor.check.sh`. --- ## 📐 6. Exemplo de Decisão de Escalonamento Dada uma fila de 6 subtarefas independentes e o teto de 5: 1. Você + 4 subagentes iniciados = 5 ativos. As 2 restantes ficam `QUEUED`. 2. Um dos subagentes ativos cai com `429`. Você o mata → `PAUSED`. Ativos = 4. 3. Libera a próxima `QUEUED` como `ACTIVE` (ativos = 5) **e** relança a `PAUSED` (ativos = 6? **não**: aplica nova espera até ativos < 5). > **Ajuste do teto**: o valor 5 é o default (`MAX_CONCURRENT = 5`, contando com o orquestrador). Se o provedor em uso tiver limite menor (ex.: 3 RPM), reduza o teto proporcionalmente. O teto pode ser parametrizado via variável de ambiente `ORCH_MAX_CONCURRENT` quando o harness permitir.
Ver en GitHub