Skip to content

Choosing what to test

Start with a representative user task and a result you can verify. Then choose the interface feature whose effect you want to observe.

Your question Configure or vary Verify
Can Copilot use my MCP server correctly? mcp_servers and tool descriptions/schemas Operation output or resulting application state
Can it use my CLI? A guarded CLI tool adapter Exit status, output, and resulting files/state
Do behavioral instructions help? instructions The same task output under both configurations
Does domain guidance help? skill_directories Skill availability/read evidence and independent task checks
Does it route to the right custom agent? custom_agents and dispatch settings Runtime invocation evidence and the actual result
Is user phrasing ambiguous? The prompt sent to copilot_eval Correct output for each representative phrasing
Does a different model meet my needs? model Fixed output checks, repeated observations, and recorded usage

All of these use CopilotEval and the copilot_eval fixture. There is no separate runner to choose.

Start with one question

Use one supported model and one small task before adding a comparison. Pin the model when consistency matters, and confirm its availability with doctor. More configurations mean more paid execution, not necessarily more useful evidence.

When comparing, change one factor, reset the starting state, and keep the checks fixed. See comparing configurations. Tool selection, skill reads, and custom agent dispatch describe the execution; none replaces checking the task's output.