You want the agent to have your build tools ready before it starts. What do you add?
Why B is the answer
.github/workflows/copilot-setup-steps.yml with a copilot-setup-steps job
This workflow file must contain a single copilot-setup-steps job, and its steps run before Copilot starts.
In detail
- This workflow file runs setup steps before the agent starts.
- Keep the setup steps small and current.
Use case
An illustrative scenario, not a real incident.
An agent wastes time installing tools on each run. A copilot-setup-steps job in the workflow file prepares them before it starts.
See it in different ways
flowchart LR A["copilot-setup-steps.yml"] --> B["Install tools and dependencies"] B --> C["Agent starts work"]
stateDiagram-v2 [*] --> Trigger Trigger --> Setup: copilot-setup-steps Setup --> Runner: standard, larger or self-hosted Runner --> Working Working --> DraftPullRequest DraftPullRequest --> [*]
flowchart LR S0["Trigger"] --> S1["copilot-setup-steps job"] --> S2["Tools ready"] --> S3["Agent works"]
Key point: Prepare the environment with copilot-setup-steps.
Why the other options are wrong
- A. A note in the pull request template that lists every tool
- A template is read at review time, not before work starts.
- C. A README section asking the agent to install what it needs
- A README relies on the agent working out what to do.
- D. A separate repository holding all of the build dependencies
- A separate repository does not install anything by itself.

