AI-Loop Skill
Overview
The ai-loop skill structures a bounded development cycle for agentic workflows. By dividing the process into distinct planning (Spec), implementation (Build), and validation (Review) phases, it helps an agent build and correct scoped code changes while keeping requirements, risk gates, and stop conditions explicit.
When to Use This Skill
- Use when you need a feature built from scratch or heavily modified, and you want the agent to handle the lifecycle (specification, implementation, and verification) inside one clearly bounded workflow.
- Use when working with isolated components, modules, or features that have well-defined scopes and constraints.
- Use when the user asks for a complete development pass but the work still has clear success criteria, a reasonable verification path, and no unresolved safety or product decisions.
How It Works
This skill executes a controlled development loop composed of three phases: Spec, Build, and Review. When invoked, the agent moves through those phases until the scoped requirements pass verification, a stop condition is reached, or human approval is needed.
Before starting, define:
- The maximum number of build-review iterations.
- The verification commands or manual checks that count as evidence.
- The actions that require explicit approval, such as destructive commands, production changes, external service writes, or broad architectural pivots.
Phase 1: Spec (Planning)
- Interview the user about the feature or app they want to build. Ask one focused question at a time until you fully understand the goal, the must-have requirements, the constraints, and what "done" looks like.
- Do not start building yet.
- When you have enough information, write a clear, detailed specification and save it to
specs/<feature-name>.md.
- The spec must include:
- The objective
- The exact requirements
- Edge cases to handle
- A concrete definition of done that someone could check the build against
- The iteration budget, verification commands, and approval gates.
Phase 2: Build (Implementation)
- Read the spec you just created in
specs/<feature-name>.md.
- Build exactly what it describes.
- Do not add features, do not refactor unrelated code, and do not invent requirements that aren't in the spec.
- Focus strictly on fulfilling the spec. List which spec requirements you covered so the review step can check them.
Phase 3: Review (Verification)
- Compare your implementation against
specs/<feature-name>.md.
- Go requirement by requirement and verify if it was met. List every gap, bug, or missing piece, naming the exact spec item each one fails.
- If anything fails and the iteration budget is not exhausted, write the specific fixes needed and loop back to Phase 2 (Build) to address them.
- Stop and ask for human input when the next fix would change the spec, exceed the iteration budget, require risky operations, or depend on product decisions not captured in the spec.
- Only pass the build and conclude the skill execution when every requirement in the spec is fully met and the declared verification evidence has passed.
Examples
Example 1: Creating a Basic Statistics Helper
User:
I want to add a utility for calculating basic statistics (mean, median, mode) of an array of numbers.
Agent (Phase 1 - Spec):
I can help with that. To get started, what programming language should this statistics calculator be implemented in? Also, how should empty arrays or invalid inputs be handled?
User:
JavaScript. If the array is empty, return null. If there are non-numbers, ignore them.
Agent (Phase 1 - Spec):
Thank you. I have created the specification file at specs/stats-calculator.md with the requirements we discussed. Now, I will start implementing it.
Agent (Phase 2 - Build):
(Creates stats_calculator.js and implements mean, median, and mode matching the spec exactly)
I have finished implementing the calculator. I will now verify the implementation.
Agent (Phase 3 - Review):
Checking implementation against specs/stats-calculator.md:
- Requirement: mean calculation -> PASS
- Requirement: median calculation -> PASS
- Requirement: mode calculation -> PASS
- Requirement: empty array returns null -> PASS
- Requirement: non-numbers are ignored -> FAIL (I noticed
mode doesn't filter out non-numbers).
I will now loop back to Phase 2 to fix the mode function.
Agent (Phase 2 - Build Loop-Back):
(Fixes mode to filter out non-numbers)
I have updated the implementation. Let's re-verify.
Agent (Phase 3 - Review):
- Requirement: mode filters non-numbers -> PASS
All requirements passed! The statistics calculator is complete and verified.
Best Practices
- ✅ Do ask clarifying questions one at a time to avoid overwhelming the user during the planning phase.
- ✅ Do document edge cases explicitly in
specs/<feature-name>.md before writing any code.
- ✅ Do stick strictly to the approved specification during the build phase.
- ✅ Do cap the loop with a small iteration budget and report exactly what remains if the budget is exhausted.
- ✅ Do pause for explicit approval before destructive, production, credentialed, or externally visible actions.
- ❌ Don't implement extra features or perform unrelated refactorings that aren't specified.
- ❌ Don't skip the review phase or pass it without verifying every single requirement.
- ❌ Don't keep retrying the same failing fix without new evidence or a changed approach.
Limitations
- This skill requires sufficient context about the feature to be provided during the Spec phase.
- It is best suited for isolated features or tasks with clear boundaries, rather than open-ended architectural refactoring.
- The review phase relies on the agent's self-assessment against the generated spec; manual review is still recommended for critical systems.
- It is not a replacement for human approval on security-sensitive, destructive, production, compliance, or externally visible changes.
- It should stop rather than continue if requirements conflict, tests cannot run, or verification depends on unavailable credentials or systems.
Security & Safety Notes
- Be cautious when running or testing code generated during the Build phase. Always run tests in a safe, sandboxed environment.
- Avoid executing arbitrary shell commands provided directly by the user without validating their safety.
- Make sure no hardcoded secrets, keys, or credentials are added to the code or specifications.
- Treat production deploys, data migrations, payment flows, credential changes, and external write actions as approval-gated work.
Common Pitfalls
- Problem: The agent tries to build a huge system all at once, leading to an overcomplicated spec and incomplete implementation.
Solution: Keep the scope of
ai-loop to small, modular features. Break larger systems into multiple independent loops.
- Problem: The spec is vague, causing the build phase to rely on assumptions.
Solution: Spend extra time in the planning phase asking targeted questions to pin down requirements.
Related Skills
@plan-writing - For writing more detailed implementation plans for larger projects.
@ask-questions-if-underspecified - For standard guidelines on interviewing the user.
Source: sickn33/agentic-awesome-skills → skills/ai-loop/SKILL.md
Also appears in: sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills/skills/ai-loop/SKILL.md, sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills-claude/skills/ai-loop/SKILL.md
1---2name: ai-loop3description: Runs a bounded spec-build-review development loop with explicit scope, stop conditions, and human approval gates for risky or ambiguous work.4---5
6
7# AI-Loop Skill
8
9## Overview
10
11The `ai-loop` skill structures a bounded development cycle for agentic workflows. By dividing the process into distinct planning (Spec), implementation (Build), and validation (Review) phases, it helps an agent build and correct scoped code changes while keeping requirements, risk gates, and stop conditions explicit.
12
13## When to Use This Skill
14
15- Use when you need a feature built from scratch or heavily modified, and you want the agent to handle the lifecycle (specification, implementation, and verification) inside one clearly bounded workflow.
16- Use when working with isolated components, modules, or features that have well-defined scopes and constraints.
17- Use when the user asks for a complete development pass but the work still has clear success criteria, a reasonable verification path, and no unresolved safety or product decisions.
18
19## How It Works
20
21This skill executes a controlled development loop composed of three phases: Spec, Build, and Review. When invoked, the agent moves through those phases until the scoped requirements pass verification, a stop condition is reached, or human approval is needed.
22
23Before starting, define:
24
25- The maximum number of build-review iterations.
26- The verification commands or manual checks that count as evidence.
27- The actions that require explicit approval, such as destructive commands, production changes, external service writes, or broad architectural pivots.
28
29### Phase 1: Spec (Planning)
30
311. Interview the user about the feature or app they want to build. Ask one focused question at a time until you fully understand the goal, the must-have requirements, the constraints, and what "done" looks like.
322. **Do not start building yet.**
333. When you have enough information, write a clear, detailed specification and save it to `specs/<feature-name>.md`.
344. The spec must include:
35 - The objective
36 - The exact requirements
37 - Edge cases to handle
38 - A concrete definition of done that someone could check the build against
39 - The iteration budget, verification commands, and approval gates.
40
41### Phase 2: Build (Implementation)
42
431. Read the spec you just created in `specs/<feature-name>.md`.
442. Build exactly what it describes.
453. **Do not add features**, do not refactor unrelated code, and do not invent requirements that aren't in the spec.
464. Focus strictly on fulfilling the spec. List which spec requirements you covered so the review step can check them.
47
48### Phase 3: Review (Verification)
49
501. Compare your implementation against `specs/<feature-name>.md`.
512. Go requirement by requirement and verify if it was met. List every gap, bug, or missing piece, naming the exact spec item each one fails.
523. If anything fails and the iteration budget is not exhausted, write the specific fixes needed and **loop back to Phase 2 (Build)** to address them.
534. Stop and ask for human input when the next fix would change the spec, exceed the iteration budget, require risky operations, or depend on product decisions not captured in the spec.
545. Only pass the build and conclude the skill execution when every requirement in the spec is fully met and the declared verification evidence has passed.
55
56## Examples
57
58### Example 1: Creating a Basic Statistics Helper
59
60**User:**
61> I want to add a utility for calculating basic statistics (mean, median, mode) of an array of numbers.
62
63**Agent (Phase 1 - Spec):**
64> I can help with that. To get started, what programming language should this statistics calculator be implemented in? Also, how should empty arrays or invalid inputs be handled?
65
66**User:**
67> JavaScript. If the array is empty, return null. If there are non-numbers, ignore them.
68
69**Agent (Phase 1 - Spec):**
70> Thank you. I have created the specification file at `specs/stats-calculator.md` with the requirements we discussed. Now, I will start implementing it.
71
72**Agent (Phase 2 - Build):**
73> *(Creates `stats_calculator.js` and implements `mean`, `median`, and `mode` matching the spec exactly)*
74> I have finished implementing the calculator. I will now verify the implementation.
75
76**Agent (Phase 3 - Review):**
77> Checking implementation against `specs/stats-calculator.md`:
78> - Requirement: mean calculation -> PASS
79> - Requirement: median calculation -> PASS
80> - Requirement: mode calculation -> PASS
81> - Requirement: empty array returns null -> PASS
82> - Requirement: non-numbers are ignored -> FAIL (I noticed `mode` doesn't filter out non-numbers).
83>
84> I will now loop back to Phase 2 to fix the `mode` function.
85
86**Agent (Phase 2 - Build Loop-Back):**
87> *(Fixes `mode` to filter out non-numbers)*
88> I have updated the implementation. Let's re-verify.
89
90**Agent (Phase 3 - Review):**
91> - Requirement: mode filters non-numbers -> PASS
92>
93> All requirements passed! The statistics calculator is complete and verified.
94
95## Best Practices
96
97- ✅ Do ask clarifying questions one at a time to avoid overwhelming the user during the planning phase.
98- ✅ Do document edge cases explicitly in `specs/<feature-name>.md` before writing any code.
99- ✅ Do stick strictly to the approved specification during the build phase.
100- ✅ Do cap the loop with a small iteration budget and report exactly what remains if the budget is exhausted.
101- ✅ Do pause for explicit approval before destructive, production, credentialed, or externally visible actions.
102- ❌ Don't implement extra features or perform unrelated refactorings that aren't specified.
103- ❌ Don't skip the review phase or pass it without verifying every single requirement.
104- ❌ Don't keep retrying the same failing fix without new evidence or a changed approach.
105
106## Limitations
107
108- This skill requires sufficient context about the feature to be provided during the Spec phase.
109- It is best suited for isolated features or tasks with clear boundaries, rather than open-ended architectural refactoring.
110- The review phase relies on the agent's self-assessment against the generated spec; manual review is still recommended for critical systems.
111- It is not a replacement for human approval on security-sensitive, destructive, production, compliance, or externally visible changes.
112- It should stop rather than continue if requirements conflict, tests cannot run, or verification depends on unavailable credentials or systems.
113
114## Security & Safety Notes
115
116- Be cautious when running or testing code generated during the Build phase. Always run tests in a safe, sandboxed environment.
117- Avoid executing arbitrary shell commands provided directly by the user without validating their safety.
118- Make sure no hardcoded secrets, keys, or credentials are added to the code or specifications.
119- Treat production deploys, data migrations, payment flows, credential changes, and external write actions as approval-gated work.
120
121## Common Pitfalls
122
123- **Problem:** The agent tries to build a huge system all at once, leading to an overcomplicated spec and incomplete implementation.
124 **Solution:** Keep the scope of `ai-loop` to small, modular features. Break larger systems into multiple independent loops.
125- **Problem:** The spec is vague, causing the build phase to rely on assumptions.
126 **Solution:** Spend extra time in the planning phase asking targeted questions to pin down requirements.
127
128## Related Skills
129
130- `@plan-writing` - For writing more detailed implementation plans for larger projects.
131- `@ask-questions-if-underspecified` - For standard guidelines on interviewing the user.
132
133---
134
135**Source:** [`sickn33/agentic-awesome-skills`](https://github.com/sickn33/agentic-awesome-skills) → `skills/ai-loop/SKILL.md`
136
137**Also appears in:** `sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills/skills/ai-loop/SKILL.md`, `sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills-claude/skills/ai-loop/SKILL.md`