Loop Constraints Enforcer
Enforce project-level constraints at the start of every agent run as a guardrail.
The skill is designed as a guardrail, enforcing least privilege and human confirmation, covering key risk areas like denying sensitive paths, auto-merge, and disabling tests. However, lacks specific permission configuration and rollback mechanisms, and data provenance is unverified. Deductions: permissions, confirmation, isolation incomplete; not full marks.
Instructions are clear and self-consistent, but rely on unprovided files like loop-constraints.md and docs/safety.md, with no test coverage for key paths. Happy path plausible, but edge cases and error handling are thin; deducted for static review.
Clear audience and scenarios; semantic trigger precision is good. But no non-fit boundaries described, and environment fit evidence is limited. Deductions: insufficient evidence for boundaries and trigger conditions.
Documentation is well-layered with default constraints and interaction notes, but missing versioning, changelog, and maintenance ownership. Deductions: incomplete governance.
Skill aims to enforce constraints and likely completes the task, but no usage results or output examples provided; marginal value unverified. Deductions: limited evidence for direct usability.
Repository has CI config and test scripts, but no execution evidence for this skill or independent corroboration. Deductions: lack of reproducible conclusions.
- The skill depends on project files loop-constraints.md and docs/safety.md, which are not provided in this review source; actual behavior may depend on unverified inputs.
- No versioning or changelog, and maintenance ownership unclear, raising long-term reliability concerns.
- Designed to auto-enforce constraints, but lacks rollback or permission configuration validation; use caution outside strict environments.
- No mention of external services or mainland-China reachability, but core function does not rely on them; main risk is local file integrity.
What does this skill do, and when should you use it?
This is a constraint-enforcement skill from the Loop Engineering skill collection. It reads loop-constraints.md at the start of every run and enforces every rule defined in it, acting as a guardrail for all subsequent actions. If the file is absent, it applies built-in default safety rules. The skill runs before triage or any action skill and can override priorities or restrictions from other skills, such as disallowing pushes or limiting editable files. It also exits immediately if a pause flag is active and outputs a confirmation of the number of rules loaded.
The skill performs these operations: 1. Reads loop-constraints.md from the project root at the start of each run. 2. Loads every rule into working memory. 3. Checks if loop-pause-all is active, and if so, exits immediately. 4. Applies these rules to every action that follows. 5. Re-reads relevant sections before pushing, editing, fixing, or merging, and stops to tell the human if any rule blocks it. 6. Outputs 'Constraints loaded from loop-constraints.md: N rules active.' or a message if the file is absent, and then proceeds with default safety rules.
- Before a CI-fix run, ensure a 'don't push' rule blocks any auto-commit until human approval.
- Prevent an agent from editing .env or secrets files when the constraints file specifies path denylists.
- Override the scope of the minimal-fix skill when it tries to touch files prohibited by constraints.
- Force human approval before merging to main, even if the loop-verifier passes.
- Enforce 'one fix per run' and run tests before proposing a fix to the codebase.
What are this skill's strengths and limitations?
- Provides enforced safety boundaries, preventing accidental edits to sensitive paths or auto-merges.
- Integrates with related skills, ensuring constraints override triage priorities and verifier checks.
- Easily customizable by editing loop-constraints.md in your project.
- Has sensible defaults when the file is missing, ensuring basic protections are always in place.
- May not auto-execute if the agent client doesn't fully support the skills standard.
- Requires the user to create and maintain loop-constraints.md, adding overhead.
- The specific implementation of default safety rules is not detailed (only a list is given).
- No evidence of a test suite for this specific skill; the repo's loop-audit may cover the whole collection.
How do you install this skill?
Clone the loop-engineering repository and copy the skills/loop-constraints folder (containing SKILL.md) into your agent's skills directory. As part of the collection, you can also initialize the whole set with npx @cobusgreyling/loop-init . (but this skill is not distributed separately via npm).
How do you use this skill?
Ensure a loop-constraints.md file exists in the project root, or rely on the built-in defaults. Use an agent that supports the skills standard (like Claude Code) and it will load this skill automatically before any other work. For example, start an agent run and watch for the confirmation line 'Constraints loaded from loop-constraints.md: N rules active.'
How does this skill compare with similar options?
This skill is part of the Loop Engineering collection, working alongside other skills like loop-triage, loop-verifier, and loop-budget as a guardrail for the overall orchestration system. No external third-party alternative is mentioned.