Claude Code Policy Builder
The Policy Builder is a visual tool for creating and deploying Claude Code managed settings — the organization-controlled configuration that governs what Claude Code can do on your developers' machines. Instead of hand-writing a managed-settings.json file, you pick a baseline, layer on the controls you need, fine-tune the result, and export a ready-to-deploy policy.
Open it at withwillow.ai/claude-code-policy.
What you can control
A Claude Code policy can govern:
- Permissions — which tools and shell commands Claude can run, ask before running, or is denied.
- Secrets — file paths Claude is never allowed to read (
.env, SSH keys, cloud credentials, and more). - MCP servers — which MCP servers Claude may connect to, or whether only managed servers are allowed.
- Network access — outbound web, transfer, and remote-shell tools.
- Sandboxing — running bash inside an isolated sandbox.
- Models — the default model, an enforced allowlist, fallbacks, and reasoning effort.
- Git workflows — push guardrails, destructive-command prompts, and commit/PR attribution.
- Display & UX — view modes, startup announcements, status line, and more.
Because these are managed settings, they take precedence over user and project settings and cannot be overridden by developers once deployed.
The flow
The Policy Builder is organized into three stages that map directly to the on-screen flow:
- Choose a template — start from a baseline (Startup, Small business, Enterprise, or a blank slate) and toggle optional add-ons.
- Edit your policy — refine every setting in the visual Form editor or drop into the raw JSON editor.
- Export & deploy — deploy via MDM, copy or download the raw managed settings, or follow a guided manual install.
Drafts are saved automatically
Your selection and working policy are saved to your browser as you go. When you return to the Policy Builder, your most recent draft is restored automatically — so you can close the tab and pick up where you left off. The first time you visit (with no saved draft), the template picker opens automatically so you start from a baseline.