agentleFS
CowboyLogicCowboyLogic/ai-dev/skills/client-config-copilotcli/SKILL.md

client-config-copilotcli

Skill4 starsChanged 11 days agoMITView on GitHub

Manage GitHub Copilot CLI configuration files including settings.json, config.json, permissions-config.json, mcp-config.json, lsp-config.json, hooks, skills, custom agents, plugins, and custom instructions. Use this skill whenever the user wants to view, edit, add, or understand any Copilot CLI setting: trusted folders, user or repository settings, tool permissions, sandboxing, MCP or LSP servers, hooks, skills, custom agents, plugins and marketplaces, BYOK models, authentication, session management, or custom instructions. Trigger on: "add trusted folder", "allow tool", "configure MCP", "add hook", "create skill", "create agent", "install plugin", "set model", "use my own API key", "add custom instructions", "name session", "resume session", or "show my copilot config".

  • Commits and pushes

The file

We split this skill into the rules it gives an agent

10 rules. About 0 are common, 3 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read the target file first: before making any changes

    line 42
  2. Distinctive:

    When the user asks to update, refresh, or sync this skill:

    line 129
  3. Very specific:

    Run python scripts/update-references.py --all → fetches each configured reference source to _fetched/

    line 131
  4. Very specific:

    If the script exits nonzero, resolve the reported failures and rerun it.

    line 132
  5. Very specific:

    Read each _fetched/ file alongside its corresponding references/ file

    line 133
  6. Very specific:

    Update references/ files to reflect documentation changes

    line 134
  7. Very specific:

    Delete _fetched/ and report what changed

    line 135
  8. Distinctive:

    Always read the file before editing

    line 141
  9. Very specific:

    Never remove trustedFolders entries without confirming with the user

    line 142
  10. Very specific:

    Don't edit permissions-config.json while a Copilot CLI session is running

    line 144

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Copilot Configuration Manager

You help the user manage all GitHub Copilot CLI configuration files.

Config file map

WhatFileScope
User settings (model, theme, URLs, hooks, ...)~/.copilot/settings.jsonGlobal
Repository settings (limited keys).github/copilot/settings.jsonProject (committed)
Local settings (limited keys).github/copilot/settings.local.jsonProject (gitignored)
Trusted folders, auth state~/.copilot/config.json (trustedFolders)Global
Saved tool/directory approvals~/.copilot/permissions-config.jsonGlobal, per location
MCP servers~/.copilot/mcp-config.jsonGlobal
MCP servers.mcp.json or .github/mcp.jsonProject
LSP servers~/.copilot/lsp-config.json / .github/lsp.jsonGlobal / Project
BYOK providers~/.copilot/providers.jsonGlobal
Hooks~/.copilot/hooks/<name>.json or hooks in settings.jsonGlobal
Hooks.github/hooks/<name>.json or hooks in repo settingsProject
Skills~/.copilot/skills/<name>/SKILL.md (or ~/.agents/skills/)Global personal
Skills.github/skills/, .agents/skills/, .claude/skills/Project
Custom agents~/.copilot/agents/<name>.agent.mdGlobal personal
Custom agents.github/agents/ or .claude/agents/Project
Plugins~/.copilot/installed-plugins/ (manage via copilot plugin)Global
Custom instructions~/.copilot/copilot-instructions.md, ~/.copilot/instructions/**/*.instructions.mdGlobal personal
Custom instructions.github/copilot-instructions.md, AGENTS.md, CLAUDE.md, GEMINI.mdProject
Path-specific instructions.github/instructions/**/*.instructions.mdProject (applyTo glob)
Model allowlist.github/allowed_models.txtProject

Config directory override: set COPILOT_HOME to replace ~/.copilot entirely (--config-dir is deprecated). User preferences belong in settings.json; user-setting keys left in config.json are ignored, and config.json keeps only internal state such as trusted folders.

Workflow

  1. Identify the task → use the task-to-reference map below to load only what you need
  2. Read the target file first before making any changes
  3. Edit safely → use the Edit tool for targeted changes; validate JSON after editing
  4. Confirm → show the user exactly what changed

Task → Reference map (load only what's needed)

TaskReference file
settings.json keys (user, repo, local), config directory layoutreferences/config-schema.md
Trusted folders, config.jsonreferences/config-schema.md §config.json
Environment variablesreferences/config-schema.md §Environment variables
OpenTelemetry export, managed telemetryreferences/config-schema.md §OpenTelemetry monitoring
Authentication, tokensreferences/config-schema.md §Auth
BYOK models / custom providers, model selectionreferences/config-schema.md §BYOK, §Model usage
Tool/path/URL permissions, permissions-config.json, sandbox, plan-mode and shell safety checksreferences/permissions.md
CLI flags, slash commands, supported model IDs, sessions (--name, --resume), debug logsreferences/cli-commands.md
MCP servers, LSP serversreferences/mcp.md
Hooks, including agent-scoped hooks in custom agent frontmatterreferences/hooks.md
Skillsreferences/skills.md
Custom agents, subagents, plugins, marketplacesreferences/agents-plugins.md
Custom instructionsreferences/instructions.md

Common quick operations (no reference needed)

# Trust a folder permanently: add its path to "trustedFolders" in ~/.copilot/config.json

# Change a setting (inside a session)
/settings                     # editor; /settings KEY VALUE sets inline
/settings show model

# Read or change a setting from the terminal (user file by default; --repo / --local available)
copilot config theme
copilot config footer.showQuota off
copilot config --list

# Check auth
/user show                    # inside a session; copilot login to sign in

# MCP servers
copilot mcp list              # terminal; /mcp list inside a session

# Skills
copilot skill list            # terminal; /skills list inside a session

# Model
/model                        # inside a session; or copilot --model=auto

# Permissions for this session
copilot --allow-tool='shell(git:*)' --deny-tool='shell(git push)'
/allow-all                    # alias for /permissions allow-all

# Sandbox shell commands (macOS, Linux, Windows)
copilot --sandbox             # this session only; /sandbox enable saves the setting

# Offline mode (BYOK only, no GitHub contact)
export COPILOT_OFFLINE=true

# Name and resume sessions
copilot --name my-feature-work
copilot --resume=my-feature-work
/session delete [ID]          # or /session delete-all

# Prevent system sleep during long sessions
/keep-alive on                # on | off | busy | DURATION

# Remote control (--no-remote is removed and --remote no longer works for interactive or -p startup; it remains only for legacy --server/--headless; remoteSessions: true makes it the default)
/remote on
/remote off

# Session-history syncing and client telemetry, one run only
copilot --sync-session=off
copilot --disable-client-telemetry

# What's loaded right now (instructions, MCP, skills, agents, hooks, plugins)
/env

Scripts

  • scripts/show-config.py — display all config files with annotations
  • scripts/update-references.py — fetch latest upstream docs

Run with: python scripts/<script>.py

Self-update procedure

When the user asks to update, refresh, or sync this skill:

  1. Run python scripts/update-references.py --all → fetches each configured reference source to _fetched/
  2. If the script exits nonzero, resolve the reported failures and rerun it; do not use a partial _fetched/ set as source material
  3. Read each _fetched/ file alongside its corresponding references/ file
  4. Update references/ files to reflect documentation changes
  5. Delete _fetched/ and report what changed

Source URLs are in sources.json.

Safety rules

  • Always read the file before editing
  • Never remove trustedFolders entries without confirming with the user
  • Hooks and skills live in project directories — confirm scope (global vs project) before creating
  • Don't edit permissions-config.json while a Copilot CLI session is running
  • JSON files: validate well-formed after any edit (settings.json also accepts JSONC comments)
  • Hook, instruction, and custom-agent changes apply only after restarting (or resuming) the CLI; skills, MCP, and LSP can use /skills reload, /mcp reload, /lsp reload
  • Markdown files: preserve frontmatter structure

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.