Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add neuromechanist/research-skills --skill engineering-loopgit clone --depth 1 https://github.com/neuromechanist/research-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/neuromechanist/research-skills/engineering-loop)<a href="https://agentmods.dev/skills/neuromechanist/research-skills/engineering-loop"><img src="https://agentmods.dev/badge/skills/neuromechanist/research-skills/engineering-loop/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/neuromechanist/research-skills/engineering-loop"><img src="https://agentmods.dev/badge/skills/neuromechanist/research-skills/engineering-loop.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00082 | $0.01618 |
| Opus 5 | $0.00041 | $0.00809 |
| Sonnet 5 | $0.00016 | $0.00324 |
| Haiku 4.5 | $0.00008 | $0.00162 |
Grade A, and why
engineering-loop scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 118 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Engineering Loop (single change, one PR)
The standard loop for one ordinary change: spec to merged PR with review and verification. Lightweight counterpart to the epic-dev workflow.
Scale check (before starting)
| Signal | Route |
|---|---|
| One reviewable unit: one subsystem, roughly a day or less | This skill. |
| 2+ independently reviewable/testable units, or multiple subsystems | epic-dev (phased epic with worktrees). |
| You have not worked in this code before | codebase-onboarding first, then return here. |
| Behavior is wrong and cause unknown | debugging skill first; the fix then follows this loop. |
| No issue exists yet | Create one (except trivial fixes); it is the durable spec. |
The loop
- Read the spec.
gh issue view N. If the request is a one-line or ambiguous instruction, restate your interpretation in one sentence with an opt-out ("proceeding on that basis; tell me if you meant X") and continue; do not stall. - Explore just enough, then find the pattern to mirror. Read the target area and locate an existing correct implementation of the same shape (a similar route, a similar test, the sibling module). New code mirrors the house pattern; do not invent a new one for an ordinary change. If the change builds on a third-party API you have not used in this repo, probe the installed version first (import and inspect; do not trust memory).
- Branch.
gh issue develop N --checkout(orgit checkout -b feature/issue-N-<slug>per repo convention). Never work on the default branch. - Pin test first (refactors only). If the change claims to preserve behavior, commit #1 is a characterization test captured against the ORIGINAL code (route inventory, golden output). A pin test written after the move proves nothing.
- Implement the smallest coherent diff. Match surrounding style. Discard incidental churn before committing (lockfiles, formatting of untouched lines). No backward-compatibility shims when the user confirms zero consumers; remove outright and preserve the substantive invariant instead. For every new guard or error path, decide fail-open vs fail-closed explicitly and say why in the code or PR. If you find a genuine adjacent bug outside the assigned scope: fix it only if it is small and mechanistically connected to the change you are already making, and disclose it under its own heading in the PR with evidence; otherwise file an issue. Never fold it silently into the main diff.
- Gate every commit. Format, lint, typecheck, test; the bar is zero NEW
diagnostics against the MEASURED baseline (measure it; do not trust a
documented number, and note discrepancies). Python:
uv run ruff format && uv run ruff check --fix && uv run ty check && uv run pytest. JS/TS:bun run biome check --write && bun test(or the project's configured commands). Commit atomically: subject under 50 characters, no emojis, no AI attribution. For changes to decision logic (parsing, approve/deny paths, routing, security gates), green tests alone are not enough: run a repeatable scenario suite and quote the before/after scores in the PR. - Long-running steps (benchmarks, big builds, batch jobs over ~10
minutes): detach them per
references/background-jobs.md; never leave them as session-tracked shells. Commit expensive-to-reproduce results the moment they land, separately from code. - Push and open the PR. Body: what changed, why (link "Closes #N"), and what was tested with commands and counts. No emojis, no AI attribution. Semantic line breaks remain the default for prose source, but GitHub issue and PR bodies are the exception: keep each paragraph on one source line and separate paragraphs with blank lines; do not insert sentence- or clause-level newlines inside a paragraph. Verify any user-supplied factual claim (dates, numbers, attributions) against available evidence before writing it into a PR, issue, or other durable document; if the evidence contradicts the claim, surface the discrepancy instead of transcribing it.
- Review. Run the pr-review-toolkit skill (or repo review command) on the PR. Address ALL findings: fix, or reject with a one-sentence reason posted to the PR ("false positive" / "intentionally different by design"). No silent drops; a deleted test that held the only coverage of a scenario is a blocking gap, not a nit.
- CI, then merge. Wait for checks (background watch:
gh pr checks N --watch); merge only when green, using the repo's merge convention (regular merge unless the repo says squash; when a local skill/command convention conflicts with the user's standing preference, surface it once BEFORE the first merge, not after). Confirm any irreversible cleanup (deleting remote branches beyond the PR's own, force-removing dirty worktrees) with the user instead of folding it into a broad "proceed". - Close out. Close the issue with a substantive comment (evidence, not "done"), update project state/memory files with anything reusable learned, close/remove completed one-off agent threads, and clean up artifacts you created. Retain an agent only for a named recurring role with a concrete next task. If stopping mid-stream instead, write a handoff note with exactly these sections: Shipped (commit/PR refs), Operational state (what is running and how to verify it), Resource constraints (quotas, accounts, hardware), Immediate next steps, and Fallback if the happy path fails.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 118 lines · 82 tokens per session scan A 732a2f600a06
engineering-loop is a skill published in the GitHub repository neuromechanist/research-skills (45 stars, last pushed 7d ago), licensed BSD-3-Clause. It adds 82 tokens to every session and 1,618 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
n8n-architect
Use when the user explicitly wants to create, edit, validate, sync, or troubleshoot n8n workflows, asks about n8n nodes or automation, or wants to use n8n-as-code in the current context root.
ai-navigation
Use when implementing AI movement — NavigationAgent2D/3D, steering behaviors, behavior trees, and patrol patterns.
animation-system
Use when implementing animations — AnimationPlayer, AnimationTree, blend trees, state machines, sprite animation, and code-driven animation.
csharp-godot
Use when working with C# in Godot — conventions, GodotSharp API differences from GDScript, project setup, and interop.
export-pipeline
Use when exporting and distributing Godot games — export presets, platform settings, CI/CD with GitHub Actions.
phantom-camera
Use when using the Phantom Camera addon — PhantomCamera2D/3D with priority-based switching, follow and look-at modes, and tween transitions.