telagod/loop-engineering
The engineering loop - select, advance, distill, deliver - for running a work session on a project. Invoke when STARTING a session or picking the next thing to work on; sizing a unit of work or matching it to your model tier; running long/autonomously and deciding pace or when to stop; deciding where a learning should live (lesson vs memory vs project-level skill); or wrapping up a unit/session (commit, report, handoff note).
npx skills add https://github.com/telagod/code-abyss --skill loop-engineering
Rule content lives in the four files below; this SKILL.md only routes
(doctrine/04-maintenance.md governs edits to this bundle too).
| You are about to… | Read (in this folder) |
|---|---|
| Start a session; choose the next unit; size it; decide who/which tier runs it | select.md |
| Push a unit forward; wonder if you're stalled; pace an unattended run | advance.md |
| Decide where a learning goes — lesson, memory, project-level skill, or nowhere | distill.md |
| Claim a unit done; commit; report; end the session | deliver.md |
A full pass is select.md → advance.md → distill.md → deliver.md, once per unit
of work; re-enter at select.md §5 after each landing.
This bundle is the outer cycle that sequences the others across a session and a
project. *Whether/how to delegate and judge* (escalate, done-gate, ask-user) is
doctrine; *how to work a problem* once inside a unit (investigate, design, execute,
verify, write) is methods; domain judgment is the matching domain bundle. When this
bundle and doctrine both fire, doctrine first — its three non-negotiables apply
inside every phase of the loop.
**A project advances as a sequence of landed loops, and compounds only if each loop
distills.** Progress is landed deliverables, not activity (advance.md §3); the next
session's speed is this session's runway (deliver.md §4); and the institution grows
one filed learning at a time (distill.md §1) — that is how weak sessions get strong.
Take telagod/loop-engineering from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.