Skip to main content
Watch: I Built an AI App Without Leaving Databricks

Copilot CLI reference - Config files

Copilot CLI config files and locations

Copilot CLI documents 49 config files, including ~/.copilot, ~/.copilot/settings.json and ~/.copilot/config.json. These are the files and directories Copilot CLI reads its configuration from. Each row gives the docs' description, accepted values and an example where one is documented.

Last verified 5 official pagesFull Copilot CLI reference

Copilot CLI config files
PathDescriptionExample
~/.copilot

Directory where the CLI stores configuration, session history, logs, and customizations. Relocate with COPILOT_HOME.

Docs: ~/.copilot
-no example
~/.copilot/settings.json

Primary user configuration file (JSONC) with global defaults for all repositories. Invalid or unknown keys are listed in the /settings Problems tab; symlinked files are written through.

Docs: ~/.copilot/settings.json
-no example
~/.copilot/config.json

Automatically managed application state (authentication, installed plugins, trusted folders). User settings left here are ignored.

Docs: ~/.copilot/config.json
-no example
~/.copilot/copilot-instructions.md

Personal custom instructions applied to all sessions.

Docs: ~/.copilot/copilot-instructions.md
-no example
~/.copilot/instructions/

Additional personal *.instructions.md files loaded alongside copilot-instructions.md for all sessions.

Docs: ~/.copilot/instructions/
-no example
~/.copilot/mcp-config.json

User-level MCP server definitions (mcpServers key), available in all sessions; lowest priority among MCP sources.

Docs: ~/.copilot/mcp-config.json
-no example
~/.copilot/lsp-config.json

User-level LSP server definitions under an lspServers key; manage with /lsp or edit directly.

Docs: ~/.copilot/lsp-config.json
-no example
~/.copilot/providers.json

User-level BYOK provider and model registry with providers and models keys; overridden in location by COPILOT_PROVIDERS_CONFIG.

Docs: ~/.copilot/providers.json
-no example
~/.copilot/agents/

Personal custom agent definitions (.agent.md files); highest priority custom agent location.

Docs: ~/.copilot/agents/
-no example
~/.copilot/skills/

Personal skills, each in a subdirectory with a SKILL.md file; project skills of the same name take precedence.

Docs: ~/.copilot/skills/
-no example
~/.copilot/hooks/

User-level hook configuration *.json files applied to all sessions ($COPILOT_HOME/hooks/ when set).

Docs: ~/.copilot/hooks/
-no example
~/.copilot/extensions/

User-level extension files available across sessions.

Docs: ~/.copilot/extensions/
-no example
~/.copilot/permissions-config.json

Saved tool and directory approvals keyed by absolute location path (locations.<key>.tool_approvals and allowed_directories). Does not support deny, ask, or URL rules.

Docs: ~/.copilot/permissions-config.json
-no example
~/.copilot/session-state/

Session history by session ID (events.jsonl plus plans, checkpoints, tracked files); enables --resume and --continue.

Docs: ~/.copilot/session-state/
-no example
~/.copilot/command-history-state/

Command history used for Ctrl+R reverse search and history navigation; managed automatically.

Docs: ~/.copilot/command-history-state/
-no example
~/.copilot/session-store.db

SQLite database for cross-session data such as checkpoint indexing and search; rebuild with /chronicle reindex.

Docs: ~/.copilot/session-store.db
-no example
~/.copilot/logs/

Session log files named process-{timestamp}-{pid}.log, plus extension logs under logs/extensions/.

Docs: ~/.copilot/logs/
-no example
~/.copilot/installed-plugins/

Installed plugin files: installed-plugins/{marketplace-name}/{plugin-name}/ for marketplace installs and installed-plugins/_direct/ for direct installs.

Docs: ~/.copilot/installed-plugins/
-no example
~/.copilot/plugin-data/

Persistent data for installed plugins, managed by the plugins themselves.

Docs: ~/.copilot/plugin-data/
-no example
~/.copilot/ide/

Lock files and state for IDE integrations; managed automatically.

Docs: ~/.copilot/ide/
-no example
~/.copilot/mcp-oauth-config/

MCP OAuth token, registration, and PKCE fallback files when keychain storage is unavailable.

Docs: ~/.copilot/mcp-oauth-config/
-no example
~/.copilot/mcp-secrets/

Fallback storage and index for MCP secret placeholders when keychain storage is unavailable.

Docs: ~/.copilot/mcp-secrets/
-no example
.github/copilot/settings.json

Repository settings committed and shared with collaborators; only a fixed set of keys is supported, each with a fail-closed merge policy.

Docs: .github/copilot/settings.json
-no example
.github/copilot/settings.local.json

Personal repository overrides that should not be committed (add to .gitignore); same schema as repository settings and takes precedence over them.

Docs: .github/copilot/settings.local.json
-no example
.claude/settings.json

Read (with .claude/settings.local.json) for the shared cross-tool subset of repository settings, such as companyAnnouncements, disableAllHooks, enabledPlugins, extraKnownMarketplaces, and hooks.

Docs: .claude/settings.json
-no example
.github/allowed_models.txt

Plain-text allowlist restricting which built-in models a repository can use: glob lines, # comments, and exactly one fallback: MODEL-ID. Does not filter BYOK models.

Docs: .github/allowed_models.txt
fallback: gpt-6-astra
.mcp.json

Workspace MCP server configuration loaded from the working directory up to the Git root when the folder is trusted. Migrate from .vscode/mcp.json by remapping servers to mcpServers.

Docs: .mcp.json
jq '{mcpServers: .servers}' .vscode/mcp.json > .mcp.json
.github/mcp.json

Repository MCP server configuration (medium trust), loaded like .mcp.json for trusted folders.

Docs: .github/mcp.json
-no example
.github/lsp.json

Project LSP server configuration applying to everyone in the repository; can disable a server with "disabled": true.

Docs: .github/lsp.json
-no example
.github/hooks/*.json

Repository-level hook configuration files (JSON, version 1).

Docs: .github/hooks/*.json
-no example
/etc/github-copilot/policy.d/*.json

Machine-wide policy hooks (Windows: C:\ProgramData\GitHub\Copilot\policy.d\*.json or HKLM\Software\Policies\GitHub\Copilot). Load first and cannot be disabled by disableAllHooks.

Docs: /etc/github-copilot/policy.d/*.json
-no example
managed-settings.json

File-based MDM managed settings: /etc/github-copilot/managed-settings.json (Linux), /Library/Application Support/GitHubCopilot/managed-settings.json (macOS), %ProgramFiles%\GitHubCopilot\managed-settings.json (Windows). Rejected on POSIX if a symlink, not root-owned, or world-writable.

Docs: managed-settings.json
-no example
com.github.copilot

macOS MDM plist domain for managed settings.

Docs: com.github.copilot
-no example
HKLM\SOFTWARE\Policies\GitHubCopilot

Windows MDM registry location for managed settings.

Docs: HKLM\SOFTWARE\Policies\GitHubCopilot
-no example
.github/copilot-instructions.md

Repository custom instructions read from the Git root and cwd; created or updated by copilot init and /init. Supports @path imports.

Docs: .github/copilot-instructions.md
-no example
AGENTS.md

Custom instructions file read from the Git root and cwd; supports @path imports.

Docs: AGENTS.md
-no example
CLAUDE.md

Custom instructions file read from the Git root and cwd; supports @path imports.

Docs: CLAUDE.md
-no example
GEMINI.md

Custom instructions file read from the Git root and cwd.

Docs: GEMINI.md
-no example
.github/instructions/**/*.instructions.md

Path-scoped instruction files read from the Git root and cwd; scope with paths or applyTo frontmatter.

Docs: .github/instructions/**/*.instructions.md
-no example
.claude/rules/**/*.md

Claude Code rule files read like .github/instructions files; scope with paths (or applyTo) frontmatter.

Docs: .claude/rules/**/*.md
-no example
.github/skills/

Project skills location (highest priority), also inherited from parent directories in monorepos.

Docs: .github/skills/
-no example
.agents/skills/

Alternative project skills location.

Docs: .agents/skills/
-no example
.claude/skills/

Claude-compatible project skills location.

Docs: .claude/skills/
-no example
~/.agents/skills/

Personal agent skills shared across all projects.

Docs: ~/.agents/skills/
-no example
.github/agents/

Project custom agents, loaded from the cwd upward to the Git root (priority 2).

Docs: .github/agents/
-no example
.claude/agents/

Project custom agents, loaded from the cwd upward to the Git root after all .github/agents/ directories (priority 3).

Docs: .claude/agents/
-no example
.claude/commands/

Commands stored as individual .md files, an alternative skill format named after the file; lower priority than same-named skills.

Docs: .claude/commands/
-no example
plugin.json

Plugin manifest. Agent Plugins plugins use plugin.json at the root; legacy plugins check .plugin/plugin.json, plugin.json, .github/plugin/plugin.json, .claude-plugin/plugin.json in order.

Docs: plugin.json
-no example
marketplace.json

Plugin marketplace manifest, checked as marketplace.json, .plugin/marketplace.json, .github/plugin/marketplace.json, .claude-plugin/marketplace.json in order; requires name, owner, plugins.

Docs: marketplace.json
copilot plugin marketplace add /PATH/TO/my-marketplace

The rest of the Copilot CLI reference

FAQ

How many config files does Copilot CLI have?

The official Copilot CLI docs list 49 config files, including ~/.copilot, ~/.copilot/settings.json and ~/.copilot/config.json. All of them are in the table above, in the docs' order.

What does ~/.copilot do in Copilot CLI?

Directory where the CLI stores configuration, session history, logs, and customizations. Relocate with COPILOT_HOME.

Where are Copilot CLI config files documented?

On 5 official docs pages at docs.github.com, last read on October 17, 2026. Every row in the table links the exact section it came from.

More on Copilot CLI

Sources

Last verified . Names and examples are copied verbatim from the 5 official pages below, and every row above links the exact section it came from.

Newsletter

Know when your tools change

One email per week. New coding agent releases, the flags and commands they add, and what they mean for how you work.