The Workshop · 11 min mission

GitHub Copilot: Agent Mode and the Cloud Agent

Tell Copilot's two agents apart and drive each one without surprises.

github-copilotvs-codeagent-modecloud-agentmcpcustom-instructionspricingFact-checked 2026-06-15
On this page

GitHub Copilot ships two agents under one brand. Agent mode is synchronous and in-editor: you drive it from Copilot Chat in VS Code under a configurable permission level. Autopilot is the explicit high-autonomy exception: after a one-time warning, it overrides fine-grained approval settings, auto-approves all tool calls, retries failures, and answers agent questions automatically. The separate Copilot cloud agent is asynchronous: it runs unattended on GitHub Actions and works on one branch. Assigning an issue always creates one pull request; prompt-started sessions are branch-only by default and may request at most one pull request later. This guide covers how to enable each, the custom-instruction and MCP config files both read, the model shelf, and the AI-Credits billing that took effect 2026-06-01.

PropertyAgent mode (in-editor)Cloud agent (autonomous)
Runs inVS Code Copilot ChatGitHub Actions infra
ModeSynchronous (you watch)Asynchronous (you wait)
Tool approvalConfigurable levels; Autopilot overrides fine-grained settings and auto-approves all callsAutonomous, no per-call approval
OutputEdits to your working tree1 branch; issue assignment creates 1 PR, prompt-started sessions default to 0 and may request 1 later
AvailabilityGA for all VS Code users (Apr 2025)All paid plans (not Free)
Started fromAgent in the chat mode dropdownIssue assignee, IDE, CLI, API, Actions run
Agent mode vs. the cloud agent. The official docs name the second one the "Copilot cloud agent"; "coding agent" persists in blog/marketing for the same thing.

Agent mode or the cloud agent — which fits the task?

Which IDE agent?

Five quick questions about where you code, how much autonomy you want, how you'd rather pay, whether open source matters, and your main language — and you'll get a single agent to start with, the reasoning behind it, and a compatible runner-up when one is available. All five contenders are in the legend below.

0/5
Preferred surface· 1 of 5

Where do you want it to live?

The five contenders

Cursorclosed source

An AI-first editor (a VS Code fork) with a strong agent, fast Tab completion, and multi-file edits.

GitHub Copilotclosed source

Drops into the editor you already use — VS Code, JetBrains, Visual Studio, Neovim — with chat, agent mode, and completions.

Devin Desktop (was Windsurf)closed source

Cognition’s AI-native desktop editor, formerly Windsurf. Devin Local is the primary agent; Cascade remains a separate, still-documented lane for Memories and Workflows, with no verified final shutdown date.

Clineopen source

An open-source, fully autonomous coding agent for VS Code and JetBrains. You bring your own model and pay the provider directly.

Zoo Codeopen source

The maintained community successor to archived Roo Code: an open-source VS Code agent with role-based modes and BYO models.

Answer a few questions about surface, autonomy, and whether you want a PR or live edits to get a recommendation, surfacing the 59-minute cap, one-branch limit, trigger-specific PR behavior, and the credit cost of each.

Enable agent mode in VS Code

  1. Open Chat and sign in

    Open the Copilot Chat view in VS Code and sign in to GitHub. Agent mode is GA, so a current build already includes it.

  2. Confirm `chat.agent.enabled`

    Ensure the setting chat.agent.enabled is on. This setting is managed at the organization level — a missing Agent option is usually an org policy, not your local config. Reload VS Code after updating if the option does not appear.

  3. Select Agent and describe an outcome

    Pick Agent in the chat mode dropdown. Copilot plans the approach, edits files across the project, runs terminal commands, and self-corrects on errors. Choose a permission level that fits the task. If you select Autopilot, heed its one-time warning: it overrides fine-grained approval settings and auto-approves every tool call.

Delegate to the cloud agent

Assign a GitHub Issue to Copilot using the standard assignee interface — the same way you would assign a teammate — from github.com, GitHub Mobile, or the GitHub CLI. Beyond issues, you can start a session from github.com (issues, the agents tab/dashboard, Copilot Chat, new repositories, a failing GitHub Actions run), GitHub Mobile, IDEs (VS Code, JetBrains, Eclipse, Visual Studio 2026), the REST API, the GitHub CLI, the GitHub MCP Server, and integrations including Jira, Slack, Microsoft Teams, Azure Boards, Linear, and Raycast.

assign an issue and request a pull request
… scroll to run this session
Assigning an issue always creates one pull request. A prompt-started session is the branch-only-by-default entrypoint and lets you request one PR later.
ConstraintValueImplication
Max execution59 minutes per sessionHard cap; cannot be extended or bypassed
BranchesOne per sessionNo parallel-branch work in a run
Pull requestsIssue assignment: exactly one; prompt-started: zero by default, at most one by requestThe start trigger determines whether a PR is automatic
RepositoriesOne per runCannot change multiple repos in one run
Content exclusionsNot appliedExcluded files remain readable; secrets-in-repo are not hidden
Final approverNot the issue creatorLine up a peer, manager, or designated reviewer
Documented cloud-agent limits and security behavior — hard constraints, not defaults.

Custom instructions

Custom instructions are plain-Markdown files committed to the repo. There are three shapes plus the cross-tool AGENTS.md. Verify a file was injected by looking for .github/copilot-instructions.md in the References list of a chat response — instructions are not echoed into chat, but the reference appears when used.

GoalFileRequired frontmatter
Whole repo.github/copilot-instructions.mdNone
Specific paths.github/instructions/<name>.instructions.mdapplyTo glob (comma-separated allowed)
Cross-tool specAGENTS.md (anywhere in tree)None; nearest wins
Custom-instruction file shapes. The nearest `AGENTS.md` in the directory tree takes precedence. Path-specific files require an `applyTo` glob or they will not scope.
.github/instructions/typescript.instructions.md — scope with applyTo
yaml
---
applyTo: "**/*.ts,**/*.tsx"
# Optional: keep this file out of a specific agent.
# excludeAgent: "cloud-agent"   # or "code-review"
---
 
Use strict TypeScript — no `any`. Prefer named exports.
Run `npm run lint` and `npm test` before considering a change done.
Keep public function signatures stable unless the task says otherwise.

MCP: giving Copilot new tools

Copilot supports MCP (Model Context Protocol — an open standard for sharing context with LLMs) in Copilot Chat agent mode. In VS Code, configure servers in .vscode/mcp.json (per-workspace) or your personal settings.json. The file has two top-level keys: inputs (parameters/secrets it prompts for) and servers (each a local stdio server with command + args, or a remote HTTP/SSE server by URL with optional OAuth or PAT auth). Client minimums: VS Code 1.99+, Visual Studio 17.14+, Eclipse 2024-09+, plus JetBrains and Xcode.

.vscode/mcp.json — a local stdio server with a prompted secret
json
{
  "inputs": [
    {
      "id": "github-token",
      "type": "promptString",
      "description": "GitHub PAT for the MCP server",
      "password": true
    }
  ],
  "servers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_TOKEN": "${input:github-token}" }
    }
  }
}
AspectAgent mode (VS Code)Cloud agent
Config location.vscode/mcp.json or settings.jsonRepository settings (JSON) or per custom agent
Defaults enabledNoneGitHub MCP Server (read-only) + Playwright MCP
Supported primitivesTools, resources, promptsTools only (no resources/prompts)
Remote OAuthSupportedNot supported
Tool approvalPermission-level dependent; Autopilot overrides fine-grained settings and auto-approves all callsAutonomous, no approval
MCP behaves differently in each surface.

Model shelf

The selectable model shelf varies by plan and by client (github.com vs IDEs). As of 2026-06-15 it spans OpenAI (GPT-5 mini, GPT-5.3-Codex, GPT-5.4, GPT-5.4 mini, GPT-5.4 nano, GPT-5.5), Anthropic (Claude Haiku 4.5, Sonnet 4.5, Sonnet 4.6, Opus 4.5, Opus 4.6, Opus 4.6 fast mode (preview), Opus 4.7, Opus 4.8, Fable 5), Google (Gemini 2.5 Pro, Gemini 3 Flash (preview), Gemini 3.1 Pro (preview), Gemini 3.5 Flash), Microsoft (MAI-Code-1-Flash), and GitHub fine-tuned Raptor mini (preview). The shelf rotates fast — check the supported-models doc rather than hard-coding a name as "current."

PlanPriceIncluded usageCloud agent?
Free$0Limited completions + limited chat/agentNo
Pro$10/mo$15/mo ($10 base + $5 flex)Yes
Pro+$39/mo$70/mo ($39 base + $31 flex)Yes
Max$100/mo$200/mo ($100 base + $100 flex)Yes
Business$19/user/mo$19 (+$30 promo, Jun–Aug 2026)Yes (admin policy)
Enterprise$39/user/mo$39 (+$70 promo, Jun–Aug 2026)Yes (admin policy)
Plans and included usage as of 2026-06-15. Individual plans = base credits (matching the price) + a variable flex top-up; Business/Enterprise credits are pooled, with promo credits running Jun–Aug 2026.

Knowledge check

You opened an issue, assigned it to Copilot, and the cloud agent pushed a clean PR. You want to merge it today. What is the catch?

Reach the end and this star joins your charted sky.