{
  "markdown": "# Loom\n\n> Drew's opinionated Claude Code process layer — **design before code · autonomous execution · verify before done** — layered on [superpowers](https://github.com/obra/superpowers).\n\nA loom weaves threads into fabric. This one weaves agents, skills, gates, and guardrails into a process. It's a thin layer **on top of** superpowers: it keeps superpowers' battle-tested disciplines and adds three gates tuned to how Drew actually works (plan-then-build-without-approval, walk-away autonomy, evidence-based \"done\").\n\n## The three gates\n\n1. **Plan on disk** before any implementation. Design before code — but the gate is \"a plan exists,\" not \"a human approved it.\"\n2. **Verify before done.** No \"it works\" without fresh command output as evidence.\n3. **Autonomous by default.** Plan → implement via subagents → verify → small commits. Pause only for destructive, irreversible, or outward-facing actions.\n\nTests are written **only when asked** — Loom does not enforce TDD.\n\n## What's inside\n\n| Component | What it does |\n|---|---|\n| `skills/using-loom` | The **constitution**, injected every session by the SessionStart hook (matcher `startup\\|clear\\|compact` → survives compaction). Encodes the three gates and the no-approval override of superpowers. |\n| `skills/loom-autopilot` | `/loom:loom-autopilot` — a walk-away/unattended run harness. Arms the verification gate, strips `AskUserQuestion`, works a plan to completion, logs like an OVERNIGHT_LOG. |\n| `hooks/session-start` | Injects `using-loom`. |\n| `hooks/lint-changed.sh` | PostToolUse(Edit\\|Write): prettier + eslint `--fix` on the changed file; surfaces unfixable lint errors back to Claude. Graceful no-op when no linter. |\n| `hooks/verify-gate.sh` | Stop hook: blocks turn-end until typecheck/build passes — **only** during unattended runs (`LOOM_UNATTENDED=1` or a `.loom/unattended` marker). Bounded retries. |\n| `setup/statusline.sh` | Context% (1M-aware) + cost + branch statusline. |\n\n## Design philosophy (the layer model)\n\nEach concern lives where it's best enforced:\n\n- **CLAUDE.md** — always-on judgment rules only (kept lean).\n- **`.claude/rules/`** — path-scoped house style (loads only when matching files open).\n- **Hooks** — deterministic enforcement (formatting, lint, the verification gate). A CLAUDE.md line is a request; a hook is enforcement.\n- **Skills** — on-demand workflows + the bootstrap constitution. Kept tiny (the skill-listing budget is ~5× smaller than it looks on a 1M-context model).\n- **Subagents** — context isolation + adversarial review.\n- **This plugin** — the versioned container that ships the hooks + skills as one auto-updating unit.\n\n## Portable across agents\n\nLoom's process is **not Claude-Code-only**. The constitution lives in [`AGENTS.md`](AGENTS.md) — the open, tool-agnostic standard most modern agents read natively:\n\n| Agent | How it gets Loom |\n|---|---|\n| **Claude Code** | Full integration: plugin + SessionStart hook injects `AGENTS.md`; format/lint + verification hooks; `using-loom` + `loom-autopilot` skills. |\n| **Codex** | Reads `AGENTS.md`; install as a plugin via `.codex-plugin/plugin.json` for the skills. |\n| **Cursor** | Reads `AGENTS.md`; `.cursor-plugin/plugin.json` for the skills. |\n| **Gemini CLI** | `gemini-extension.json` + `GEMINI.md` (→ symlink to `AGENTS.md`). |\n| **opencode / Amp / others** | Read `AGENTS.md`. |\n\nOnly the **deterministic hook enforcement** (auto-format/lint, the verification gate) is Claude-Code-specific; the **gates themselves are universal** — other agents follow them as tier-1 instructions. `AGENTS.md` is the single source, so the rules never drift between tools.\n\n## Install\n\nSee [`install.md`](install.md). TL;DR:\n\n```bash\n/plugin marketplace add Mountain-Dr3w/loom\n/plugin install loom@loom\n```\n\n…then add the sandbox + deny-floor + statusline block from `install.md` to `~/.claude/settings.json`.\n\n## License\n\nMIT\n",
  "bytes": 3890,
  "sha": "c6709dc5d78b01a52c1513824874780cd05e7e444a71abd7321de0b1238df63d",
  "repo_slug": "mountain-dr3w/loom",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_mountain_dr3w_loom_8025b4ee/readme"
}