id = "copilot" name = "GitHub Copilot CLI" homepage = "https://docs.github.com/en/copilot/how-tos/copilot-cli/use-copilot-cli/overview" description = "The power of GitHub Copilot coding agent, brought to your terminal." icon = "SimpleIcons:githubcopilot" # The AWS ECS tooling once shipped a binary called `copilot` too. This entry is # GitHub's, which is what `copilot` resolves to on a current install. executables = ["copilot"] [dotfiles] # https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-config-dir-reference # — "Copilot CLI stores its configuration, session history, logs, and # customizations in a single directory … By default, this directory is # ~/.copilot". The same page names each entry: settings.json is the "primary # configuration file", mcp-config.json and lsp-config.json hold user-level # server definitions, and copilot-instructions.md, instructions/, agents/, # skills/, extensions/ and hooks/ are the personal customizations. paths = [ "~/.copilot/settings.json", "~/.copilot/mcp-config.json", "~/.copilot/lsp-config.json", "~/.copilot/copilot-instructions.md", "~/.copilot/instructions/", "~/.copilot/agents/", "~/.copilot/skills/", "~/.copilot/extensions/", "~/.copilot/hooks/", ] # Same page, the state half of the directory: session-state/ ("session history, # event logs, and workspace artifacts"), command-history-state/, logs/, # session-store.db ("SQLite database for cross-session data indexing"), ide/ # ("lock files and state"), installed-plugins/, plugin-data/, and # permissions-config.json ("Saved tool and directory permission decisions per # project"), which names paths on this machine. exclude = [ "~/.copilot/session-state/", "~/.copilot/command-history-state/", "~/.copilot/logs/", "~/.copilot/installed-plugins/", "~/.copilot/plugin-data/", "~/.copilot/ide/", "~/.copilot/session-store.db", "~/.copilot/permissions-config.json", ] # Same page: config.json "Stores internal application state including # authentication data", mcp-oauth-config/ holds "MCP OAuth tokens and # registration fallback storage", and mcp-secrets/ is "Local fallback storage # for MCP secret placeholders". secret = [ "~/.copilot/config.json", "~/.copilot/mcp-oauth-config/", "~/.copilot/mcp-secrets/", ] # A local MCP server is launched by an executable and arguments that exist on # this machine — `"command": "npx"`, `"args": ["--from", "git+…"]` in the # examples on # https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers # The server list itself is worth carrying. The launch line is still the # user's own wiring and has to go back the way it was on a rebuild, so it is # kept: backup. [[dotfiles.machine_lines]] file = "~/.copilot/mcp-config.json" match = { key_path = ["mcpServers.*.command", "mcpServers.*.args"] } scope = "backup"