PlugWiki

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. 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. 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

  1. Overview
  2. When to Use
  3. Loading Constraints
  4. The Process
  5. Step 1: Detect before you ask
  6. Step 2: Four questions, each with a default
  7. Step 3: Write CONSTRAINTS.md
  8. Floor (always enforced, no setup required)
  9. Enforced with numbers
  10. Measured, not yet enforced
  11. Exceptions
  12. Step 4: Install what each dimension needs
  13. Step 5: Wire it to the lifecycle
  14. Step 6: Guard the bar itself
  15. Step 7: Ratchets, when you don't have a number
  16. Sane Defaults

Key facts

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 first

  • Which dimensions, block or warn, numbers, time budget

    Each question has a guess and a default. It stops at four.

    Read · Four questions

  • Floor, 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.md

  • Tools 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 needs

  • Fails 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.mjs

  • Fast 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 lifecycle

  • Spots 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 bar

  • Record 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-onlyNo read-only mode. Use version control and review each change to CONSTRAINTS.md.
Talks toPackage 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 keysSKILL.md does not mention any account or key.
Scopes
  • Writes CONSTRAINTS.md and edits AGENTS.md, CLAUDE.md and package.json

  • Installs tools with pip, pipx, brew or npm for the dimensions you pick

  • Runs scanners and git diff commands in your repo; Lighthouse and axe need a running URL

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

Folder
skills/constraint-driven-development

addyosmani/agent-skillsskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 4
  1. constraint-driven-development SKILL.md · github.com
  2. addyosmani/agent-skills README · github.com
  3. floor-guard.md · github.com
  4. quality-gate.mjs · github.com

Updated Nov 2, 2026.