constraint-driven-development Skill for Claude: What It Does and How to Install It
Makes your agent write your project's quality bar into CONSTRAINTS.md and catch changes that quietly lower it.
- Installs
- 37.7K
- on skills.sh
- Stars
- 112.6K
- on GitHub
- Files
- 2
- besides SKILL.md
- Updated
- Nov 2026
- last repo commit
This skill, from the addyosmani/agent-skills pack, has the agent interview you with four questions and write a CONSTRAINTS.md file at the repo root. Each rule gets a number and a command that checks it. Every question has a default, so "I don't know" still produces a working setup.
It also installs the tools each dimension needs, wires the checks into the build, test, review and ship stages, and watches the diff for a weakened bar: new suppressions, skipped tests, stubs and lowered thresholds.
Good for
- Developers letting agents write more code than they can read
- Teams arguing about coverage or performance numbers in every pull request
- Anyone whose agent keeps adding @ts-ignore or skipping tests to get to green
- Maintainers setting up accessibility, security and performance gates
Install constraint-driven-development
Claude Code
- 1
Copy this prompt.
Install the constraint-driven-development skill in Claude Code. Run this command: npx skills add https://github.com/addyosmani/agent-skills --skill constraint-driven-development Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
From its listing on skills.sh. Source.
What's in the skill
When it loads
Establishes a project's quality bar as a written contract and stops agents quietly lowering it. Interviews the user on which dimensions matter, supplies sane default thresholds when they have no number in mind, records everything in CONSTRAINTS.md, and watches the diff for a weakened bar — new @ts-ignore or eslint-disable suppressions, skipped or deleted tests, assertions stripped out, unimplemented stubs, thresholds edited down. Use when no quality bar is written down, when the user says "set up constraints" or "define our standards", when the user wants dimensions they care about — accessibility, web performance, coverage — set up as enforced constraints, when an agent keeps silencing checks or skipping tests to get to green, when you need a coverage or performance threshold and don't know what number to pick, or when an agent writes more code than anyone will read.
Sections in SKILL.md
- Overview
- When to Use
- Loading Constraints
- The Process
- Step 1: Detect before you ask
- Step 2: Four questions, each with a default
- Step 3: Write CONSTRAINTS.md
- Floor (always enforced, no setup required)
- Enforced with numbers
- Measured, not yet enforced
- Exceptions
- Step 4: Install what each dimension needs
- Step 5: Wire it to the lifecycle
- Step 6: Guard the bar itself
- Step 7: Ratchets, when you don't have a number
- Sane Defaults
Key facts
- Author
- addyosmani (repo owner)
- License
- MIT
- Installs on skills.sh
- 37,706 (Nov 2, 2026)
- Last repo commit
- Nov 1, 2026
What it includes
Reads your stack, test runner, linters, CI and agent setup
Reports what it found in two lines before asking anything.
Try: “Set up constraints for this project.”
Read ·
Detect firstWhich dimensions, block or warn, numbers, time budget
Each question has a guess and a default. It stops at four.
Read ·
Four questionsFloor, enforced rules, measured metrics, exceptions
Adds a line to AGENTS.md and CLAUDE.md telling agents to read it and not weaken it.
Write ·
Write CONSTRAINTS.mdTools for types, lint, coverage, security, performance, accessibility
Examples: pip install mypy, pipx install semgrep, brew install gitleaks, npm i -D lighthouse. Adds check scripts to package.json.
Runs code ·
Install what each dimension needsFails the build on serious Semgrep or axe findings
Reads a report JSON and exits 0, 1 or 2. Copy it into your project's scripts/ folder.
Runs code ·
scripts/quality-gate.mjsFast checks per edit, heavier ones at task end and in CI
Maps checks to the build, test, review and ship stages with time budgets.
Write ·
Wire to the lifecycleSpots five ways the bar gets lowered
Moved thresholds, easier tests, silenced checkers, unfinished stubs and new exceptions. references/floor-guard.md is a diff-based reference script.
Runs code ·
Guard the barRecord today's number and refuse to get worse
Used when you have no target number.
Write ·
Ratchets
From the official docs
Permissions
Medium risk
The skill installs scanners and test tools, edits your config files and runs checks in your repo. Say which dimensions you want first and review the diff.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It installs tools on your machine
Step 4 lists commands such as pip install mypy, pipx install semgrep and brew install gitleaks. The skill says machine-wide tools can run in CI only if you prefer clean laptops. Say so before it starts. github.com
It edits your agent and project config files
It adds a line to AGENTS.md and CLAUDE.md and scripts to package.json. Review the diff. github.com
The interview needs a person present
SKILL.md says not to run it in CI, /loop or autonomous runs. There it applies only the floor and flags the rest for a human. github.com
gitleaks must use --redact
The skill says to report the rule and location, never the secret value, so leaked keys do not land in transcripts. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Turning on read-only | No read-only mode. Use version control and review each change to CONSTRAINTS.md. |
|---|---|
| Talks to | Package downloads when tools are installed. Lighthouse and axe fetch the preview URL you give them. The Semgrep example uses the p/default registry rule set |
| Sign-in and keys | SKILL.md does not mention any account or key. |
| Scopes |
|
Questions
What does the constraint-driven-development skill do?
It sets your project's quality bar as a written file with numbers and checks. It also watches the diff for an agent lowering that bar, for example with new suppressions, skipped tests or lowered thresholds.
How do I install it?
Use the install box at the top of this page. The README warns that a per-skill install copies only skills/<name>/, not the repo-level references/ folder. This skill's own references/floor-guard.md and scripts/quality-gate.mjs sit inside its folder.
Do I need to set up every check on day one?
No. SKILL.md says a first run can be floor-only, which is diff-based and needs no installs. You add dimensions such as coverage, security or accessibility as you install each tool.
What numbers does it suggest if I have none?
Its defaults include 80 percent coverage on changed lines, no dependency vulnerabilities at high or above, LCP of 2500 ms or less, CLS of 0.1 or less and zero critical or serious axe violations. If your project falls short, it suggests recording today's number and refusing to go lower.
Does it need the other skills in the pack?
Not for the steps it describes. SKILL.md says its interview borrows the one-question-at-a-time discipline from interview-me, and lists code-review-and-quality, ci-cd-and-automation, test-driven-development, security-and-hardening and performance-optimization under See Also. The Skill does not tell the agent to call any of them.
Is it safe?
It changes your project and installs software, so review each step. It edits config files (AGENTS.md, CLAUDE.md, package.json), installs scanners and test tools with pip, pipx, brew or npm, and runs scanners and git commands in your repo. Say which tools you want, review the diff, and note that the skill says gitleaks must use --redact so secrets stay out of output.
Which AI tools does it work in?
The README says the skills CLI installs into 70+ agents, including Claude Code, Cursor, Codex, Copilot and Cline. It also documents native plugins for some agents, which this page does not cover.
Information
updated Nov 2, 2026
- Repository
- addyosmani/agent-skills
- Folder
skills/constraint-driven-development
Sources
Docs, issue trackers and discussions this page is built from.
Show all 4Hide
- constraint-driven-development SKILL.md · github.com
- addyosmani/agent-skills README · github.com
- floor-guard.md · github.com
- quality-gate.mjs · github.com