# Opencode Agent Optimizer

> Otimiza configurações e modelos do OpenCode Go (budget, skills, MCPs) via regras determinísticas de alocação.

- Skill: `paulohfs/opencode-agent-optimizer` (Agent Skill)
- Install (CLI): `npx skillmds@latest add paulohfs/opencode-agent-optimizer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/paulohfs/opencode-agent-optimizer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: PauloHFS (https://skillmd.com/u/paulohfs)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/paulohfs/opencode-agent-optimizer

---


# OpenCode Agent Optimizer

Execute este fluxo autônomo e sequencial ao atualizar a configuração do OpenCode Go:

## 1. Coleta de Dados (Limites de Request)
Identifique as cotas de "Requests per 5 hour" do budget compartilhado ($12/5h). Siga estritamente esta ordem de fallback:
1. **Prioridade 1:** Execute o comando local `opencode models opencode-go`.
2. **Prioridade 2:** Use `read_url_content` na documentação oficial `https://opencode.ai/docs/go/#usage-limits` (ou `https://opencode.ai/go`).

## 2. Classificação Estrita de Modelos
Categorize matematicamente os modelos obtidos com base em "Requests per 5 hour":
- **Tier 1P (Premium):** < 1.000 req/5h (Maior capacidade, Altíssimo custo).
- **Tier 1E (Econômico):** >= 1.000 e <= 10.000 req/5h (Fronteira custo-benefício).
- **Tier 2V (Veloz):** > 10.000 req/5h (Baixo custo, Operacional).
*(Use `search_web` para benchmarks (ex: SWE-bench) exclusivamente em caso de empate entre modelos do mesmo Tier).*

## 3. Alocação de Agentes
- **Oracle:** 1 modelo Tier 1P.
- **Orchestrator:** 1 modelo Tier 1E primário. Defina de 1 a 2 alternativas de Tier 1E ou Tier 2V na propriedade `fallback_models`.
- **Workforce (Librarian, Explorer, Designer, Fixer):** Modelos restritos ao Tier 2V.

## 4. Isolamento de Contexto (Skills/MCPs)
**Atenção:** Os valores abaixo para `mcps` e `skills` são apenas **sugestões baseadas em arquétipos**. Antes de configurar, verifique as ferramentas e MCPs reais disponíveis na instalação do usuário e mapeie-os mantendo esta lógica de isolamento:
- **Orchestrator:** Acesso global, removendo apenas ferramentas muito específicas/pesadas. (Ex sugerido: `skills: ["*"]`, `mcps: ["*", "!context7"]`)
- **Oracle:** Acesso restrito a abstração e arquitetura. (Ex sugerido: `skills: ["simplify", "web-perf"]`, `mcps: []`)
- **Librarian:** Foco exclusivo em ferramentas de leitura/pesquisa, sem edição. (Ex sugerido: `skills: []`, `mcps: ["websearch", "context7", "grep_app"]`)
- **Designer:** Foco estrito em front-end/UI. (Ex sugerido: `skills: ["agent-browser", "make-interfaces-feel-better", "vue"]`, `mcps: []`)
- **Explorer / Fixer:** Foco em código, CI, testes e git. (Ex sugerido: `skills: ["vitest", "pnpm", "vite"]`, `mcps: ["codegraph"]`)

## 5. Escrita e Finalização
Edite os arquivos alvo mantendo a estrutura original:
1. `~/.config/opencode/opencode.json`: Defina `model` global (Tier 1E) e `small_model` (Tier 2V).
2. `~/.config/opencode/oh-my-opencode-slim.jsonc`: Atualize `model`, `fallback_models`, `skills` e `mcps` por agente conforme o Passo 3 e 4.

## 6. Output (CLI)
Não gere relatórios narrativos. Exiba apenas:
1. Uma tabela Markdown simples contendo: `Agente | Modelo Alocado | Tier`.
2. Uma única linha confirmando a gravação com sucesso dos 2 arquivos de configuração.

