loom
Opinionated process layer: design-before-code, autonomous execution, verify-before-done.
Open source Open in the app JSON README (API)
About
Opinionated process layer: design-before-code, autonomous execution, verify-before-done.
Details
- Kind
- Plugins
- Topic
- No topic detected
- Publisher
- mountain-dr3w
- Origin
- gemini
- Category
- ferramentas
- Last push
- 2026-05-31T14:46:01Z
- Repository state
- ativo
- Language
- Shell
- License
- MIT
- Added
- 2026-08-30 14:13:39
- Updated
- 2026-08-30 14:13:39
- Origin id
mountain-dr3w/loom
README
# Loom > Drew's opinionated Claude Code process layer — **design before code · autonomous execution · verify before done** — layered on [superpowers](https://github.com/obra/superpowers). A 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"). ## The three gates 1. **Plan on disk** before any implementation. Design before code — but the gate is "a plan exists," not "a human approved it." 2. **Verify before done.** No "it works" without fresh command output as evidence. 3. **Autonomous by default.** Plan → implement via subagents → verify → small commits. Pause only for destructive, irreversible, or outward-facing actions. Tests are written **only when asked** — Loom does not enforce TDD. ## What's inside | Component | What it does | |---|---| | `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. | | `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. | | `hooks/session-start` | Injects `using-loom`. | | `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. | | `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. | | `setup/statusline.sh` | Context% (1M-aware) + cost + branch statusline. | ## Design philosophy (the layer model) Each concern lives where it's best enforced: - **CLAUDE.md** — always-on judgment rules only (kept lean). - **`.claude/rules/`** — path-scoped house style (loads only when matching files open). - **Hooks** — deterministic enforcement (formatting, lint, the verification gate). A CLAUDE.md line is a request; a hook is enforcement. - **Skills** — on-demand workflows + the bootstrap constitution. Kept tiny (the skill-listing budget is ~5× smaller than it looks on a 1M-context model). - **Subagents** — context isolation + adversarial review. - **This plugin** — the versioned container that ships the hooks + skills as one auto-updating unit. ## Portable across agents Loom'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: | Agent | How it gets Loom | |---|---| | **Claude Code** | Full integration: plugin + SessionStart hook injects `AGENTS.md`; format/lint + verification hooks; `using-loom` + `loom-autopilot` skills. | | **Codex** | Reads `AGENTS.md`; install as a plugin via `.codex-plugin/plugin.json` for the skills. | | **Cursor** | Reads `AGENTS.md`; `.cursor-plugin/plugin.json` for the skills. | | **Gemini CLI** | `gemini-extension.json` + `GEMINI.md` (→ symlink to `AGENTS.md`). | | **opencode / Amp / others** | Read `AGENTS.md`. | Only 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. ## Install See [`install.md`](install.md). TL;DR: ```bash /plugin marketplace add Mountain-Dr3w/loom /plugin install loom@loom ``` …then add the sandbox + deny-floor + statusline block from `install.md` to `~/.claude/settings.json`. ## License MIT