← All skills
build-loop
87 / 100 · Low risk
Fine to try.
By mikeyobrien/pi-tidy-tools (GitHub) · other · 63 stars · scanned at commit b253d15
Build and independently verify one ready implementation ticket through a human-gated repair loop.
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
This is disclosed by the author in the skill's SKILL.md or README.
Found in 23 places.
Show 17 more
- .pi/skills/build-loop/SKILL.md, line 78
.pi/skills/build-loop/scripts/build-ledger.mjs append <run-dir> <fragment> - .pi/skills/build-loop/scripts/build-ledger.test.mjs, line 5
import { spawnSync } from "node:child_process"; - .pi/skills/build-loop/scripts/build-ledger.test.mjs, line 9
const run = (args, expected = 0) => { const result = spawnSync(process.execPath, [cli, ...args], { encoding: "utf8" }); assert.equal(result.status, expected, `$ - .pi/skills/build-loop/scripts/focused-commit.mjs, line 5
import { spawnSync } from "node:child_process"; - .pi/skills/build-loop/scripts/focused-commit.mjs, line 9
const execute = (args, options = {}) => { const { raw = false, ...spawnOptions } = options; const result = spawnSync("git", args, { encoding: "utf8", ...spawnOp - .pi/skills/build-loop/scripts/focused-commit.mjs, line 55
const result = spawnSync(process.execPath, [auditCli, "compare", resolve(auditBaseline), ...paths], { cwd: root, env: indexEnv, encoding: "utf8" }); - .pi/skills/build-loop/scripts/focused-commit.test.mjs, line 5
import { spawnSync } from "node:child_process"; - .pi/skills/build-loop/scripts/focused-commit.test.mjs, line 11
const invokeScript = (script, cwd, args, expected = 0, env = process.env) => { const result = spawnSync(process.execPath, [script, ...args], { cwd, encoding: "u - .pi/skills/build-loop/scripts/focused-commit.test.mjs, line 13
const git = (cwd, ...args) => { const result = spawnSync("git", args, { cwd, encoding: "utf8" }); assert.equal(result.status, 0, result.stderr); return result.s - .pi/skills/build-loop/scripts/focused-commit.test.mjs, line 21
await writeFile(wrapper, `#!/usr/bin/env node\nimport { spawnSync } from "node:child_process";\nconst args = process.argv.slice(2), real = process.env.REAL_GIT; - .pi/skills/build-loop/scripts/focused-commit.test.mjs, line 22
return { ...process.env, PATH: `${bin}:${process.env.PATH}`, REAL_GIT: spawnSync("which", ["git"], { encoding: "utf8" }).stdout.trim(), FAULT_MODE: mode, CONCUR - .pi/skills/build-loop/scripts/focused-plan.mjs, line 5
import { spawnSync } from "node:child_process"; - .pi/skills/build-loop/scripts/focused-plan.mjs, line 9
const execute = (args, options = {}) => { const { raw = false, ...spawnOptions } = options; const result = spawnSync("git", args, { encoding: "utf8", ...spawnOp - .pi/skills/build-loop/scripts/worktree-audit.mjs, line 5
import { spawnSync } from "node:child_process"; - .pi/skills/build-loop/scripts/worktree-audit.mjs, line 8
const git = (...args) => { const result = spawnSync("git", args, { encoding: null }); if (result.status !== 0) fail(result.stderr.toString("utf8").trim() || `gi - .pi/skills/build-loop/scripts/worktree-audit.test.mjs, line 5
import { spawnSync } from "node:child_process"; - .pi/skills/build-loop/scripts/worktree-audit.test.mjs, line 9
const run = (cwd, args, expected = 0) => { const result = spawnSync(process.execPath, [cli, ...args], { cwd, encoding: "utf8" }); assert.equal(result.status, ex
and 3 more places
Changes files outside its own folder
The author does not mention this.
Found in 1 place.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'build-loop' ] || [ -L ~/.agents/skills/'build-loop' ]; then echo 'A skill folder named build-loop already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/mikeyobrien/pi-tidy-tools' "$d" && git -C "$d" checkout --quiet 'b253d1504091e48e3d60ebab19535bf0d1cec363' -- '.pi/skills/build-loop' && mkdir -p ~/.agents/skills && cp -R "$d"/'.pi/skills/build-loop' ~/.agents/skills/'build-loop' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'build-loop' ~/.claude/skills/'build-loop' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for mikeyobrien/pi-tidy-tools shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/mikeyobrien/pi-tidy-tools/)
Score history
| Date | Version | Score |
|---|
| 2026-11-09 | b253d15 | 87 |