policy-and-managed-settings

Route enterprise Copilot controls to runtime managed settings or VS Code configuration policies.

10|1|Updated Jul 13, 2026
One-click install
npx skills add https://github.com/KevinHuangIsLearning/shortestpath-ide --skill policy-and-managed-settings-kevinhuangislearning
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: policy-and-managed-settings
Source: https://github.com/KevinHuangIsLearning/shortestpath-ide/tree/main/.github/skills/policy-and-managed-settings
Command: npx skills add https://github.com/KevinHuangIsLearning/shortestpath-ide --skill policy-and-managed-settings-kevinhuangislearning

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Deciding where a new enterprise control for Copilot, agents, tools, permissions, sandboxing, MCP, or telemetry should live is error-prone: controls can end up in the wrong layer, duplicated between VS Code and the runtime, or added to deprecated channels. This Skill routes every new or modified control to the correct policy destination and enforces the required declaration, export, and testing procedure. ## Core Features & Use Cases - Policy destination routing: A decision flowchart directs each control to SDK/runtime managed settings, VS Code configuration policy, extension policy, a split runtime/editor implementation, or the pre-1.133 legacy permission migration. - Managed settings guidance: Detailed references cover the canonical dot-path bag, the three delivery channels (native MDM, server-managed, file-based) with per-key precedence, structured JSON-string settings, and the policyReference mechanism for one policy governing many settings. - Enforced procedure: Requires running npm run export-policy-data for every VS Code or extension policy change and forbids hand-editing build/lib/policies/policyData.jsonc. - Use Case: When adding a new enterprise control that disables a Copilot tool, use this Skill to determine it belongs in the runtime managed-settings schema, declare the key constant, attach it to a policy with managedSettingValue, and complete the export and test checklist. ## Quick Start Ask the Skill where a new enterprise control for a Copilot agent feature should be implemented and follow the routed guide.

Frequently Asked Questions about policy-and-managed-settings

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new enterprise policy for a Copilot feature in VS Code?▼

First decide where the governed behavior is implemented. Runtime behavior (tools, MCP, sandbox, agent loop) goes into SDK/runtime managed settings; editor or workbench behavior gets a VS Code configuration policy with a policy block containing a unique PascalCase name, category, minimumVersion, and localized description.

Where should a new Copilot enterprise control be implemented?▼

Most Copilot agent controls belong in the shared managed-settings/SDK model, not VS Code. Runtime enforcement is authoritative for behavior executed inside the runtime, and VS Code policies are appropriate only for editor or workbench-owned behavior.

What is the precedence between native MDM, server, and file-based managed settings?▼

Native MDM wins over the server-delivered channel, which wins over the file-based channel, resolved per key. A key unset in higher-precedence channels is still filled by lower ones, and the merged bag is projected onto declared policy keys.

Can I add a new GitHub token entitlement field for a Copilot policy?▼

No. GitHub token/account policy data is deprecated for new controls; existing fields remain only for compatibility. New Copilot enterprise controls must use managed settings with runtime/SDK enforcement instead.

Why is my structured managed setting silently ignored in VS Code?▼

Structured object or array settings must declare their managed key as type 'string' because the value travels as a JSON string in the bag. Declaring 'object' or 'array' is a compile error, and 'number' or 'boolean' fails runtime projection validation, so the key is dropped.

How do I test Copilot managed settings locally?▼

Use the mock policy server started with npm run mock-policy-server to serve managed_settings responses, then apply them via the Developer: Sync Account Policy command. It supports presets, file-based deployment, and a JSON control API for agents.