Copilot CLI — Platform Details

Copilot-specific configuration: env var limitations, MCP config location, and @Agent invocation.

Prerequisites

Complete Steps 1–3 on the Setup page first (install plugins, init, scan). Environment variables (AEM_INSTANCES, AXE_API_KEY, etc.) are documented there.

Critical

Shell-Only Environment Variables

The most important difference from Claude Code.

Copilot CLI Does Not Read settings.local.json

Copilot CLI only inherits shell environment variables. Plugin MCP configs using ${AEM_INSTANCES} work in Claude Code but fail silently in Copilot CLI unless the variable is exported in your shell profile (~/.zshrc or ~/.bashrc).

All env vars from the Setup page must be in your shell profile. If you previously set them in .claude/settings.local.json, add them to your shell profile too.

MCP

MCP Server Configuration

Copilot CLI reads MCP config from a different location than Claude Code.

Copilot CLI Does Not Read Project .mcp.json

Claude Code reads .mcp.json at the project root. Copilot CLI only reads from ~/.copilot/mcp-config.json (global) or plugin-bundled .mcp.json files. Project-specific servers like ADO must be configured manually.

~/.copilot/mcp-config.json (create this file)
{
"servers": {
  "ado": {
    "type": "stdio",
    "command": "npx",
    "args": ["-y", "@azure-devops/mcp", "<your-ado-org>"]
  }
}
}

Per-Session Alternative

For multiple ADO organizations: copilot —additional-mcp-config @.mcp-copilot.json

MCP Config Locations by Platform

PlatformConfig FileRoot KeyScope
Claude Code.mcp.jsonmcpServersPer-project
VS Code Chat.vscode/mcp.jsonserversPer-project
Copilot CLI~/.copilot/mcp-config.jsonserversGlobal
Agents

@Agent Invocation

In addition to /dx-* skills, Copilot CLI supports @Agent invocation.

AgentPurpose
@DxPRReviewReview PRs with inline patches and severity levels
@DxCodeReviewDeep code review with architecture analysis
@AEMComponentInspect and verify AEM components
@DxHelpAnswer architecture questions from project docs
@DxReqAllFull requirements pipeline
@DxStepAllExecute all plan steps with recovery loops
@DxBugAllFull bug workflow: triage → verify → fix
@DxAgentAllEnd-to-end delivery: requirements → PR
v1.0.11

What's New in v1.0.11

Key improvements for plugin-based workflows.

Monorepo Discovery

Skills, agents, MCP servers, and custom instructions are now discovered at every directory level from the working directory up to the git root. Users in monorepo/apps/frontend/ automatically find .github/agents/ installed at the repo root by /dx-init.

Hook Merging

Hooks from multiple extensions now merge instead of overwriting. dx-core and dx-aem can each contribute their own hooks without conflict. SessionStart additionalContext is injected into the conversation context.

Personal Skills Directory

~/.agents/skills/ is now a personal skill discovery directory (aligning with VS Code Chat). Use it for individual developer customizations that don’t belong in the shared repo.

Session Management

/clear abandons the session entirely. /new starts a fresh conversation while keeping the old session backgrounded. Both accept an optional prompt. /cd now keeps a separate working directory per session, restored when switching.

Atlassian MCP OAuth

MCP OAuth authentication now works with the Atlassian Rovo MCP Server (Dynamic Client Registration with non-standard auth metadata URLs). Teams using Jira/Confluence via MCP should see smoother setup.

Diff

Differences from Claude Code

AspectSharedDiffers
Skills76 skills, same commands
MarketplaceSame git URL
RulesSame .claude/rules/ filesDual frontmatter (paths: + applyTo:)
AgentsClaude: 13 subagents | Copilot: 25 @Agents
Env VarsClaude: shell + settings.local.json | Copilot: shell only
MCP ConfigSame serversClaude: .mcp.json | Copilot: ~/.copilot/mcp-config.json
PermissionsClaude: prompt | Copilot: allowed-tools allowlist
KAI by Dragan Filipovic