Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Forge 🔨 — Repair-Inspect loop orchestrator. Automated code repair with independent inspection, dependency-aware parallel execution, protected file guardrail...
Forge 🔨 — Repair-Inspect loop orchestrator. Automated code repair with independent inspection, dependency-aware parallel execution, protected file guardrail...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Automated repair-inspect loop with state persistence, dependency analysis, and safety guardrails.
Multiple repair tasks from review board / audit / user instructions Need independent verification (not just "looks fixed") Want protected file safety + auto-commit on PASS
cd /path/to/project # 1. Initialize python3 ~/clawd/skills/forge/scripts/forge.py init # 2. Add tasks python3 forge.py add "修复空值处理" --criteria "空输入不崩溃" --priority P0 python3 forge.py add "清理废弃代码" --criteria "无import报错" --depends task-001 # 3. See execution plan python3 forge.py plan # 4. Run (outputs spawn instructions) python3 forge.py run # 5. Execute spawns, then run again to check results python3 forge.py run # checks results, auto-loops on FAIL # 6. When all done python3 forge.py summary
CommandDescriptioninit --workdir DIRInitialize forge sessionadd "desc" --criteria "..." --depends task-001 --priority P0Add repair taskplanShow dependency graph + parallel execution wavesrunAdvance state machine (spawn or check results)statusShow current progresscheckPre-commit safety check (protected files, deletions)summaryGenerate completion reportresetClear state
pending → repairing → inspecting → done ↑ │ └── fail ──┘ (auto-loop, max 5 rounds) inspecting → needs_human (pause, escalate) inspecting → escalated (>5 rounds) repairing → needs_human (all BLOCKED)
Tasks without dependencies run in parallel. forge.py plan shows execution waves: Wave 1: task-001, task-002, task-003 (并行) Wave 2: task-004 ← task-001 (等task-001完成)
Protected files — protected-files.txt in project root. Listed files cannot be modified by repair agents. Touching them → BLOCKED → NEEDS_HUMAN. Pre-commit diff check — forge.py check detects: file deletions, protected file modifications, abnormally large changes. Prompt constraints — Repair engineer prompt explicitly forbids deletions, protected files, cron changes.
Each repair produces a repair_pattern with error classification and reusable solution templates. These are stored in forge-reflections.jsonl and the most recent 5 patterns are injected into future repair tasks as context.
When the agent receives repair tasks (from code review, audit, or user): # 1. Init forge in project dir exec("cd /path/to/project && python3 ~/clawd/skills/forge/scripts/forge.py init") # 2. Add tasks exec("python3 forge.py add 'Fix null handling in processor' --criteria 'No crash on empty input' --priority P0") # 3. Run to get spawn instructions exec("python3 forge.py run") # → Script outputs spawn instructions # 4. Execute spawns sessions_spawn(task=read(task_file), label=label, model=model) # 5. After spawn completes, run again exec("python3 forge.py run") # → Checks repair result → prepares inspector spawn # → Or auto-loops on FAIL → prepares next repair spawn # 6. On all PASS → git commit + notify
forge/ ├── SKILL.md # This file ├── scripts/ │ └── forge.py # Core orchestrator ├── references/ │ └── protocol.md # Full protocol documentation └── assets/ └── templates/ ├── repair-engineer.md # Repair agent role reference └── inspector.md # Inspector role reference
project/ ├── forge-state.json # State persistence (crash recovery) ├── forge-reflections.jsonl # Project-specific experience (stays with project) ├── forge-output/ # Task files and results │ ├── task-001-repair-r1.task.md # Repair spawn task │ ├── task-001-repair-r1.json # Repair result │ ├── task-001-inspect-r1.task.md # Inspect spawn task │ └── task-001-inspect-r1.json # Inspect result └── protected-files.txt # (optional) Protected file list
forge/reflections/patterns.jsonl # Universal patterns (cross-project, stays with skill) project/forge-reflections.jsonl # Project-specific patterns (stays with project) Universal layer (forge/reflections/patterns.jsonl): Abstract lessons stripped of file paths and project context. Auto-extracted from project patterns after each repair. Deduped by pattern_name. Injected into ALL future repairs across any project. Project layer ({project}/forge-reflections.jsonl): Full detail with file names, paths, project-specific context. Only injected when working on that project. Auto-extraction: After each repair, extract_universal_pattern() checks if the pattern is generalizable (not too many project-specific paths). If so, it's added to the universal layer with dedup.
Forge收尾时自动检查:修改的代码文件是否有关联文档需要同步更新。
优先运行 scripts/tools/doc-sync-checker.py --json(如果存在) 回退到 references/doc-sync-manifest.yaml:交叉对比forge修改的文件与manifest中的authority→consumer映射
在项目中创建 references/doc-sync-manifest.yaml: facts: api_config: authority: src/config.py consumers: - docs/api-reference.md - docs/deployment-guide.md last_synced: 2026-03-01 Forge完成报告会显示: 📄 文档同步检查 — 2 个文档可能需要更新: ⚠️ docs/api-reference.md 可能需要同步更新(api_config 的权威源 src/config.py 已修改)
Via init flags or forge-state.json config section: KeyDefaultDescriptionmodelanthropic/claude-opus-4-6LLM model for agentsmax_rounds5Max repair-inspect cycles before escalationrepair_timeout600Repair agent timeout (seconds)inspect_timeout300Inspector timeout (seconds)auto_committrueAuto git-commit on PASS
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.