{"slug":"agent-orchestrator","title":"agent-orchestrator","summary":"Meta-skill que orquestra todos os agentes do ecossistema. Scan automatico de skills, match por capacidades, coordenacao de workflows multi-skill e registry management.","platform":"ChatGPT","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-08-16T13:38:13.235356Z","repo":{"url":"https://github.com/sickn33/agentic-awesome-skills","stars":46883,"forks":6831,"license":"MIT","updatedAt":"2026-09-25T05:43:16Z"},"bodyHtml":"<hr>\n<p>name: agent-orchestrator\ndescription: Meta-skill que orquestra todos os agentes do ecossistema. Scan automatico de skills, match por capacidades, coordenacao de workflows multi-skill e registry management.\nrisk: safe\nsource: community\ndate_added: '2026-03-06'\nauthor: renat\ntags:</p>\n<ul>\n<li>orchestration</li>\n<li>multi-agent</li>\n<li>workflow</li>\n<li>automation\ntools:</li>\n<li>claude-code</li>\n<li>antigravity</li>\n<li>cursor</li>\n<li>gemini-cli</li>\n<li>codex-cli</li>\n</ul>\n<hr>\n<h1>Agent Orchestrator</h1>\n<h2>Overview</h2>\n<p>Meta-skill que orquestra todos os agentes do ecossistema. Scan automatico de skills, match por capacidades, coordenacao de workflows multi-skill e registry management.</p>\n<h2>When to Use This Skill</h2>\n<ul>\n<li>When you need specialized assistance with this domain</li>\n</ul>\n<h2>Do Not Use This Skill When</h2>\n<ul>\n<li>The task is unrelated to agent orchestrator</li>\n<li>A simpler, more specific tool can handle the request</li>\n<li>The user needs general-purpose assistance without domain expertise</li>\n</ul>\n<h2>How It Works</h2>\n<p>Meta-skill que funciona como camada central de decisao e coordenacao para todo\no ecossistema de skills. Faz varredura automatica, identifica agentes relevantes\ne orquestra multiplos skills para tarefas complexas.</p>\n<h2>Principio: Zero Intervencao Manual</h2>\n<ul>\n<li><strong>SEMPRE faz varredura</strong> antes de processar qualquer solicitacao</li>\n<li>Novas skills sao <strong>auto-detectadas e incluidas</strong> ao criar SKILL.md em qualquer subpasta</li>\n<li>Skills removidas sao <strong>auto-excluidas</strong> do registry</li>\n<li>Nenhum comando manual e necessario para registrar novas skills</li>\n</ul>\n<hr>\n<h2>Workflow Obrigatorio (Toda Solicitacao)</h2>\n<p>Execute estes passos ANTES de processar qualquer request do usuario.\nOs scripts usam paths relativos automaticamente - funciona de qualquer diretorio.</p>\n<h2>Passo 1: Auto-Discovery (Varredura)</h2>\n<pre><code>python agent-orchestrator/scripts/scan_registry.py\n</code></pre>\n<p>Ultra-rapido (&lt;100ms) via cache de hashes MD5. So re-processa arquivos alterados.\nRetorna JSON com resumo de todos os skills encontrados.</p>\n<h2>Passo 2: Match De Skills</h2>\n<pre><code>python agent-orchestrator/scripts/match_skills.py \"&lt;solicitacao do usuario&gt;\"\n</code></pre>\n<p>Retorna JSON com skills ranqueadas por relevancia. Interpretar o resultado:</p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left\">Resultado</th>\n<th style=\"text-align: left\">Acao</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td style=\"text-align: left\"><code>matched: 0</code></td>\n<td style=\"text-align: left\">Nenhum skill relevante. Operar normalmente sem skills.</td>\n</tr>\n<tr>\n<td style=\"text-align: left\"><code>matched: 1</code></td>\n<td style=\"text-align: left\">Um skill relevante. Carregar seu SKILL.md e seguir.</td>\n</tr>\n<tr>\n<td style=\"text-align: left\"><code>matched: 2+</code></td>\n<td style=\"text-align: left\">Multiplos skills. Executar Passo 3 (orquestracao).</td>\n</tr>\n</tbody>\n</table>\n<h2>Passo 3: Orquestracao (Se Matched &gt;= 2)</h2>\n<pre><code>python agent-orchestrator/scripts/orchestrate.py --skills skill1,skill2 --query \"&lt;solicitacao&gt;\"\n</code></pre>\n<p>Retorna plano de execucao com padrao, ordem dos steps e data flow entre skills.</p>\n<h2>Passo Rapido (Atalho)</h2>\n<p>Para queries simples, os passos 1+2 podem ser combinados em sequencia:</p>\n<pre><code>python agent-orchestrator/scripts/scan_registry.py &amp;&amp; python agent-orchestrator/scripts/match_skills.py \"&lt;solicitacao&gt;\"\n</code></pre>\n<hr>\n<h2>Skill Registry</h2>\n<p>O registry vive em:</p>\n<pre><code>agent-orchestrator/data/registry.json\n</code></pre>\n<h2>Locais De Busca</h2>\n<p>O scanner procura SKILL.md em:</p>\n<ol>\n<li><code>.claude/skills/*/</code> (skills registradas no Claude Code)</li>\n<li><code>*/</code> (skills standalone no top-level)</li>\n<li><code>*/*\\</code> (skills em subpastas, ate profundidade 3)</li>\n</ol>\n<h2>Metadata Por Skill</h2>\n<p>Cada entrada no registry contem:</p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left\">Campo</th>\n<th style=\"text-align: left\">Descricao</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td style=\"text-align: left\">name</td>\n<td style=\"text-align: left\">Nome da skill (do frontmatter YAML)</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">description</td>\n<td style=\"text-align: left\">Descricao completa (triggers inclusos)</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">location</td>\n<td style=\"text-align: left\">Caminho absoluto do diretorio</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">skill_md</td>\n<td style=\"text-align: left\">Caminho absoluto do SKILL.md</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">registered</td>\n<td style=\"text-align: left\">Se esta em .claude/skills/ (true/false)</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">capabilities</td>\n<td style=\"text-align: left\">Tags de capacidade (auto-extraidas + explicitas)</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">triggers</td>\n<td style=\"text-align: left\">Keywords de ativacao extraidas da description</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">language</td>\n<td style=\"text-align: left\">Linguagem principal (python/nodejs/bash/none)</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">status</td>\n<td style=\"text-align: left\">active / incomplete / missing</td>\n</tr>\n</tbody>\n</table>\n<h2>Comandos Do Registry</h2>\n<pre><code>\n## Scan Rapido (Usa Cache De Hashes)\n\npython agent-orchestrator/scripts/scan_registry.py\n\n## Tabela De Status Detalhada\n\npython agent-orchestrator/scripts/scan_registry.py --status\n\n## Re-Scan Completo (Ignora Cache)\n\npython agent-orchestrator/scripts/scan_registry.py --force\n</code></pre>\n<hr>\n<h2>Algoritmo De Matching</h2>\n<p>Para cada solicitacao, o matcher pontua skills usando:</p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left\">Criterio</th>\n<th style=\"text-align: left\">Pontos</th>\n<th style=\"text-align: left\">Exemplo</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td style=\"text-align: left\">Nome do skill na query</td>\n<td style=\"text-align: left\">+15</td>\n<td style=\"text-align: left\">\"use web-scraper\" -&gt; web-scraper</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">Keyword trigger exata</td>\n<td style=\"text-align: left\">+10</td>\n<td style=\"text-align: left\">\"scrape\" -&gt; web-scraper</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">Categoria de capacidade</td>\n<td style=\"text-align: left\">+5</td>\n<td style=\"text-align: left\">data-extraction -&gt; web-scraper</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">Sobreposicao de palavras</td>\n<td style=\"text-align: left\">+1</td>\n<td style=\"text-align: left\">Palavras da query na description</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">Boost de projeto</td>\n<td style=\"text-align: left\">+20</td>\n<td style=\"text-align: left\">Skill atribuida ao projeto ativo</td>\n</tr>\n</tbody>\n</table>\n<p>Threshold minimo: 5 pontos. Skills abaixo disso sao ignoradas.</p>\n<h2>Match Com Projeto</h2>\n<pre><code>python agent-orchestrator/scripts/match_skills.py --project meu-projeto \"query aqui\"\n</code></pre>\n<p>Skills atribuidas ao projeto recebem +20 de boost automatico.</p>\n<hr>\n<h2>Padroes De Orquestracao</h2>\n<p>Quando multiplos skills sao relevantes, o orchestrator classifica o padrao:</p>\n<h2>1. Pipeline Sequencial</h2>\n<p>Skills formam uma cadeia onde o output de uma alimenta a proxima.</p>\n<p><strong>Quando:</strong> Mix de skills \"produtoras\" (data-extraction, government-data) e \"consumidoras\" (messaging, social-media).</p>\n<p><strong>Exemplo:</strong> web-scraper coleta precos -&gt; whatsapp-cloud-api envia alerta</p>\n<pre><code>user_query -&gt; web-scraper -&gt; whatsapp-cloud-api -&gt; result\n</code></pre>\n<h2>2. Execucao Paralela</h2>\n<p>Skills trabalham independentemente em aspectos diferentes da solicitacao.</p>\n<p><strong>Quando:</strong> Todas as skills tem o mesmo papel (todas produtoras ou todas consumidoras).</p>\n<p><strong>Exemplo:</strong> instagram publica post + whatsapp envia notificacao (ambos recebem o mesmo conteudo)</p>\n<pre><code>user_query -&gt; [instagram, whatsapp-cloud-api] -&gt; aggregated_result\n</code></pre>\n<h2>3. Primario + Suporte</h2>\n<p>Uma skill principal lidera; outras fornecem dados de apoio.</p>\n<p><strong>Quando:</strong> Uma skill tem score muito superior as demais (&gt;= 2x).</p>\n<p><strong>Exemplo:</strong> whatsapp-cloud-api envia mensagem (primario) + web-scraper fornece dados (suporte)</p>\n<pre><code>user_query -&gt; whatsapp-cloud-api (primary) + web-scraper (support) -&gt; result\n</code></pre>\n<h2>Detalhes Em <code>References/Orchestration-Patterns.Md</code></h2>\n<hr>\n<h2>Gerenciamento De Projetos</h2>\n<p>Atribuir skills a projetos permite boost de relevancia e contexto persistente.</p>\n<h2>Arquivo De Projetos</h2>\n<pre><code>agent-orchestrator/data/projects.json\n</code></pre>\n<h2>Operacoes</h2>\n<p><strong>Criar projeto:</strong>\nAdicionar entrada ao projects.json:</p>\n<pre><code>{\n  \"name\": \"nome-do-projeto\",\n  \"created_at\": \"2026-02-25T12:00:00\",\n  \"skills\": [\"web-scraper\", \"whatsapp-cloud-api\"],\n  \"description\": \"Descricao do projeto\"\n}\n</code></pre>\n<p><strong>Adicionar skill a projeto:</strong> Atualizar o array <code>skills</code> do projeto.</p>\n<p><strong>Remover skill de projeto:</strong> Remover do array <code>skills</code>.</p>\n<p><strong>Consultar skills do projeto:</strong> Ler o projects.json e listar skills atribuidas.</p>\n<hr>\n<h2>Adicionando Novas Skills</h2>\n<p>Para adicionar uma nova skill ao ecossistema:</p>\n<ol>\n<li>Criar uma pasta em qualquer lugar sob <code>skills root:</code></li>\n<li>Criar um <code>SKILL.md</code> com frontmatter YAML:</li>\n</ol>\n<pre><code>---\nname: minha-nova-skill\ndescription: \"Descricao com keywords de ativacao...\"\n---\n\n## Documentacao Da Skill\n\n</code></pre>\n<ol start=\"3\">\n<li><strong>Pronto!</strong> O auto-discovery detecta automaticamente na proxima solicitacao.</li>\n</ol>\n<p>Opcionalmente, para discovery nativo do Claude Code:\n4. Copiar o SKILL.md para <code>.claude/skills/&lt;nome&gt;/SKILL.md</code></p>\n<h2>Tags De Capacidade Explicitas (Opcional)</h2>\n<p>Adicionar ao frontmatter para matching mais preciso:</p>\n<pre><code>capabilities: [data-extraction, web-automation]\n</code></pre>\n<hr>\n<h2>Ver Status De Todos Os Skills</h2>\n<pre><code>python agent-orchestrator/scripts/scan_registry.py --status\n</code></pre>\n<h2>Interpretar Status</h2>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left\">Status</th>\n<th style=\"text-align: left\">Significado</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td style=\"text-align: left\">active</td>\n<td style=\"text-align: left\">SKILL.md com name + description presentes</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">incomplete</td>\n<td style=\"text-align: left\">SKILL.md existe mas falta name ou description</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">missing</td>\n<td style=\"text-align: left\">Diretorio existe mas sem SKILL.md</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>Skills Atuais Do Ecossistema</h2>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left\">Skill</th>\n<th style=\"text-align: left\">Capacidades</th>\n<th style=\"text-align: left\">Status</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td style=\"text-align: left\">web-scraper</td>\n<td style=\"text-align: left\">data-extraction, web-automation</td>\n<td style=\"text-align: left\">active</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">junta-leiloeiros</td>\n<td style=\"text-align: left\">government-data, data-extraction</td>\n<td style=\"text-align: left\">active</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">whatsapp-cloud-api</td>\n<td style=\"text-align: left\">messaging, api-integration</td>\n<td style=\"text-align: left\">active</td>\n</tr>\n<tr>\n<td style=\"text-align: left\">instagram</td>\n<td style=\"text-align: left\">social-media, api-integration</td>\n<td style=\"text-align: left\">partial</td>\n</tr>\n</tbody>\n</table>\n<p><em>Esta tabela e atualizada automaticamente via <code>scan_registry.py --status</code>.</em></p>\n<h2>Best Practices</h2>\n<ul>\n<li>Provide clear, specific context about your project and requirements</li>\n<li>Review all suggestions before applying them to production code</li>\n<li>Combine with other complementary skills for comprehensive analysis</li>\n</ul>\n<h2>Common Pitfalls</h2>\n<ul>\n<li>Using this skill for tasks outside its domain expertise</li>\n<li>Applying recommendations without understanding your specific context</li>\n<li>Not providing enough project context for accurate analysis</li>\n</ul>\n<h2>Related Skills</h2>\n<ul>\n<li><code>multi-advisor</code> - Complementary skill for enhanced analysis</li>\n<li><code>task-intelligence</code> - Complementary skill for enhanced analysis</li>\n</ul>\n<h2>Limitations</h2>\n<ul>\n<li>Use this skill only when the task clearly matches the scope described above.</li>\n<li>Do not treat the output as a substitute for environment-specific validation, testing, or expert review.</li>\n<li>Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.</li>\n</ul>\n","files":[{"path":"references/capability-taxonomy.md","sizeBytes":3322,"isText":true},{"path":"references/orchestration-patterns.md","sizeBytes":3872,"isText":true},{"path":"scripts/match_skills.py","sizeBytes":11765,"isText":true},{"path":"scripts/orchestrate.py","sizeBytes":11068,"isText":true},{"path":"scripts/requirements.txt","sizeBytes":12,"isText":true},{"path":"scripts/scan_registry.py","sizeBytes":18127,"isText":true},{"path":"SKILL.md","sizeBytes":9798,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-08-16T13:39:14.011686Z","sha256":"971864069A1C5C616526E87F33B980E0ECB226B521E2930DC0B3364748A35207","sizeBytes":20727},"review":null,"source":{"repositoryUrl":"https://github.com/sickn33/agentic-awesome-skills","path":"skills/agent-orchestrator","license":"MIT","commit":"f2bba339de74414b0771234cbe4f6a15258e32a3","subtreeSha":"04D53F4B45861E4D2375A76C64E669D5B204307C0F455B98B6BA81F8B39114D3","lastSyncedAt":"2026-09-25T06:48:39.853703Z"},"reviewedAt":"2026-08-16T13:39:28.14715Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/agent-orchestrator"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install sickn33-agentic-awesome-skills@llmmart"},{"target":"git","command":"git clone https://github.com/sickn33/agentic-awesome-skills.git"}]}