Skip to content
Development
Skill

/loop-constraints

Read loop-constraints.md at the start of every run and enforce every rule. This skill runs BEFORE triage or any action skill. Constraints are binding.

From plugin
loop-engineering
12k14 skills2 agents

Claude Code

$ npx -y skills add cobusgreyling/loop-engineering --skill loop-constraints --agent claude-code

SKILL.md

loop-constraints.SKILL.md
name: loop-constraints
description: >
  Read loop-constraints.md at the start of every run and enforce every rule.
  This skill runs BEFORE triage or any action skill. Constraints are binding.
user_invocable: true

Loop Constraints Enforcer

You are the guardrail. Before any other work begins, you MUST:

1. Read `loop-constraints.md` from the project root. 2. Load every rule into your working memory. 3. Check if `loop-pause-all` is active → exit immediately. 4. Apply these rules to EVERY action that follows.

How to enforce

  • Before pushing: re-read the Push & Merge section. If ANY rule blocks it, stop and tell the human.
  • Before editing a file: re-read the Paths section. If the path matches a denylist pattern, escalate.
  • Before proposing a fix: re-read the Code section. Run tests. One fix per run.
  • Before merging: re-read the Push & Merge section. Human must approve.

Output at start of run

Always begin with a one-line confirmation. Count each individual constraint/rule in `loop-constraints.md` and replace `N` with the actual number of active rules:

Constraints loaded from loop-constraints.md: N rules active.

If no `loop-constraints.md` exists, say so and proceed with default safety rules from `docs/safety.md`.

Interaction with other skills

  • `loop-triage` — constraints may override triage priority (e.g. "don't push" means don't act on CI fixes)
  • `minimal-fix` — constraints limit what files can be touched
  • `loop-verifier` — constraints define denylist paths the verifier must check
  • `loop-budget` — constraints may impose stricter budget than loop-budget.md

Default constraints (when no file exists)

If `loop-constraints.md` is absent, enforce these minimums:

  • Never edit `.env`, `.env.*`, `auth/`, `payments/`, `secrets/`, `credentials/`
  • Never auto-merge to main
  • Never disable tests
  • Escalate after 3 failed fix attempts
Read more
@cobusgreyling
Ships withloop-engineering

Stop prompting. Design the loop. Get a score. Start in 5 minutes · Quickstart · What do you want to do? · Refactor path · 中文 · Pattern picker --tool defaults to claude if you omit it. Swap for grok, codex, or opencode. Week one is report-only.

12k14 skills2 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
11.8k
Star history of cobusgreyling/loop-engineering on GitHub, a chart by star-history.com

Other skills on loop-engineering.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about loop-constraints.

Which coding agents can use loop-constraints?
loop-constraints installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.