github / github/copilot-cli

Model routing, per-agent model selection, and global hooks support

Aberta
#1,354 3 comentários 10 reações 0 responsáveis Ver no GitHub
area:agents area:models
Linguagem predominante
Shell
Estrelas
11.2k
Forks
1.9k
Merge médio
14h 16min
PRs com merge (30d)
6

Descrição

### Describe the feature or problem you'd like to solve

Copilot CLI lacks configurable model routing, per-subagent model selection (agent.md model field is ignored in CLI, see #980), and global hooks (~/.copilot/hooks/) support.

### Proposed solution

1. Configurable Model Routing
Add a model routing configuration (e.g., in ~/.copilot/config or a dedicated ~/.copilot/model-routing.json) that allows users to define rules for automatic model selection:
```json
{
"routing": {
"default": "claude-sonnet-4.5",
"rules": [
{
"when": { "agent": "explore" },
"model": "gpt-5-mini"
},
{
"when": { "agent": "task" },
"model": "gpt-5-mini"
},
{
"when": { "agent": "code-review" },
"model": "claude-opus-4.5"
},
{
"when": { "context": "planning" },
"model": "claude-opus-4.5"
}
]
}
}
```
This is similar to how tools like [oh-my-opencode](https://github.com/nicepkg/oh-my-opencode) and [oh-my-claude-code](https://github.com/nicepkg/oh-my-claude-code) provide model routing for other CLI agents. Users could optimize for cost, speed, and capability per task.

2. Respect model field in subagents
Honor the model frontmatter in custom agent definitions when running as subagents in the CLI, just as VS Code already does:
```markdown
---
name: quick-test
description: Run tests quickly with a fast model
model: gpt-5-mini
tools: ['execute']
---
```

Run the test suite and report results concisely.
When the main agent delegates to quick-test, the CLI should switch to gpt-5-mini for that subagent's execution context, then return to the parent model afterward. This enables cost-effective multi-agent orchestration.

3. Global Hooks
Support loading hooks from a global directory (~/.copilot/hooks/) in addition to the per-repository .github/hooks/. Global hooks should execute alongside (not replace) repository-level hooks, with a defined execution order (global first, then repo-local).
This enables:

Organization-wide security scanning before tool execution
Consistent audit logging across all projects
Shared pre/post-commit validation rules
Custom notification workflows

### Example prompts or workflows

_No response_

### Additional context

_No response_

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.