Los agentes incluidos deben evitar nombres de modelos locales codificados de forma rígida.
Política recomendada:
- predeterminado: heredar el modelo seleccionado;
- verificación/diseño: permitir un modelo más potente mediante el perfil local;
- implementación: modelo de programación;
- exploración/propuesta: se acepta un modelo más económico;
- todas las fases: deben poder degradarse al modo de modelo único.
El generador multi-target (scripts/configure/cli.js) no fija IDs de modelo en cada
agente. En su lugar usa dos tablas en models.yaml, ambas editables a mano:
agents: a qué tier pertenece cada agente (la única decisión por agente).tiers: cómo se traduce cada tier a un modelo concreto por target.
Un agente sin entrada explícita cae en el tier de _default. Cualquier hueco
(config ausente, tier o target faltante, o inherit) resuelve a OMIT: el generador
no escribe la clave model: y el host usa el modelo de la sesión.
models.yaml es la única fuente de verdad del mapeo agente→tier. El validador
solo exige el roster SDD completo, tiers conocidos (premium/default/cheap),
reviewers y _default en default, y los pins Codex. La partición vigente se
lee del YAML (hoy: premium = design/verify/foundation/workspace; default incluye
orchestrator/propose/spec/clarify/apply/reconcile/baseline; cheap =
init/explore/tasks/archive/onboard/document).
| Tier | claude (alias) |
vscode (orden de fallback) |
opencode (provider/model) |
|---|---|---|---|
premium |
opus |
Claude Opus 4.8 (copilot), GPT-5.5 (copilot) |
anthropic/claude-opus-4-8 |
default |
sonnet |
Claude Sonnet 4.6 (copilot), GPT-5.3-Codex (copilot) |
anthropic/claude-sonnet-4-6 |
cheap |
haiku |
Qwen 3.6 MSC1 (customendpoint), GPT-5.4-mini (copilot) |
anthropic/claude-haiku-4-6 |
El target github-copilot no inyecta model: (el origen lo omite y no hay columna github-copilot
en tiers): los agentes generados heredan el modelo de la sesión de Copilot.
Cada target expresa el modelo de forma distinta; el resolver
(scripts/lib/model-resolver.js) devuelve la forma adecuada y la transform la
serializa en el frontmatter:
claude: un alias (opus|sonnet|haiku) como escalar. Los alias siguen automáticamente el modelo más reciente, así que no hay IDs que mantener.vscode: una lista"Nombre (vendor)"que actúa como orden de preferencia; VS Code usa el primero disponible. Admite vendors comocopilotycustomendpoint.github-copilot: no se escribemodel:(OMIT); el agente hereda el modelo de la sesión de Copilot, evitando la sintaxis de modelo aún poco especificada de GitHub.opencode: un slugprovider/model(p.ej.anthropic/claude-opus-4-8) como escalar. Los IDs exactos se verifican contra models.dev; edita la columnaopencodedemodels.yamlcuando models.dev publique versiones nuevas.
Para el uso directo en VS Code (sin generar) siguen disponibles los perfiles
opcionales en profiles/models/:
default: fallback de un solo modelo;cheap: reduce coste en exploración y propuesta;premium: aumenta razonamiento en diseño y verificación.
models.yaml es la fuente para el generador; profiles/models/ es la configuración
para el consumo directo del repositorio en VS Code.