4.0 KiB
name, description
| name | description |
|---|---|
| init | Setup task: scaffold .loop/ directory and generate config for the agent loop harness. Not a creative task — do not brainstorm or generate ideas. Reads existing specs if present. |
/init — Initialize Agent Loop for a Project
Set up the agent loop harness in the current project. This is infrastructure setup, not creative work.
IMPORTANT: Do NOT invoke brainstorming, planning, or idea-generation skills. This skill handles its own flow.
Instructions
Follow these steps exactly. Do not skip or reorder them.
Step 1: Scaffold .loop/ Directory
Check if .loop/ already exists in the project root.
If .loop/ already exists and contains prd.json, ask the user if they want to re-initialize. If yes, delete .loop/ and continue. If no, skip to Step 3.
Create .loop/ and copy ALL required harness files. Run these commands exactly:
mkdir -p .loop
Then check if the plugin root has the harness files. Try these paths in order:
${CLAUDE_PLUGIN_ROOT}/prompts/(if CLAUDE_PLUGIN_ROOT env var is set)~/.claude/plugins/cache/agent-loop/agent-loop/*/prompts/(glob for any version)
Copy ALL of these directories and files — every one is required:
# Find the harness source (plugin cache)
HARNESS_SRC=$(ls -d ~/.claude/plugins/cache/agent-loop/agent-loop/*/prompts/.. 2>/dev/null | head -1)
if [ -n "$HARNESS_SRC" ]; then
cp -r "$HARNESS_SRC/prompts" .loop/
cp -r "$HARNESS_SRC/templates" .loop/
cp -r "$HARNESS_SRC/lib" .loop/
cp "$HARNESS_SRC/loop.sh" .loop/
chmod +x .loop/loop.sh
fi
Verify the copy worked. Check that these paths exist:
.loop/prompts/generator/_base.md.loop/prompts/evaluator/_base.md.loop/templates/progress.md.template.loop/lib/state.sh.loop/loop.sh
If any are missing, tell the user the scaffold failed and show which files are missing.
Create .loop/.gitignore:
prd.json
progress.md
progress-archive.md
config.json
init.sh
contracts/
triage/
archive/
.archive-staging/
.last-branch
.loop.lock
Step 2: Check for Existing Specs
Search for existing design documents or specs:
docs/superpowers/specs/*.mddocs/specs/*.mdSPEC.md,PRD.md,DESIGN.mdat root
If a spec is found:
"I found an existing spec at
{path}. I'll use this as the basis for generating stories."
Read it. The user does NOT need to re-describe what they want. Set mode to implement and skip to Step 4.
If no spec is found, proceed to Step 3.
Step 3: Mode Selection
Ask the user:
What would you like to do?
a) Explore — Read-only codebase analysis. No code changes. b) Implement — Build a feature. Code changes, commits, and tests. c) Fix — Targeted bug fixes or tech debt.
For implement without a spec: "Describe the feature in 1-3 sentences." For explore: "What areas should I focus on?" For fix: "Do you have a list of issues, or should I find them?"
Also read the project to detect the tech stack:
- Check for
package.json,Cargo.toml,pyproject.toml,go.mod, etc. - Run
lson the project root
Step 4: Generate Configuration
Create .loop/config.json with this EXACT structure:
{
"tool": "claude",
"mode": "<implement|explore|fix>",
"maxIterations": 20,
"skipEval": false,
"evalRetries": 2,
"autoHooks": true,
"branchPrefix": "loop/",
"scopeBudgets": {
"explore": {
"maxFilesToRead": 15,
"maxLinesToWrite": 0,
"maxFilesToModify": 0
},
"implement": {
"maxFilesToRead": 50,
"maxLinesToWrite": 500,
"maxFilesToModify": 10
},
"fix": {
"maxFilesToRead": 30,
"maxLinesToWrite": 200,
"maxFilesToModify": 5
}
}
}
Adjust maxIterations based on estimated story count (stories + 30% for rejections).
Create .loop/init.sh with project-specific setup commands. Make it executable.
Step 5: Flow into Planning
Say:
"Project configured. Generating stories..."
Then invoke /agent-loop:plan. If a spec was found in Step 2, tell the plan skill to use it.