Loom is a delivery harness that guides coding agents through defining, planning, implementing, checking, repairing, previewing, and handing off software changes. It is used with Claude Code, Codex, OpenCode, and other coding agents when work must be continued or inspected across sessions. The catalogue skills, hooks, commands, instructions, and plugin extend or operate this workflow.
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 valkor-ai/loom --skill threejs-qa-releasegit clone --depth 1 https://github.com/valkor-ai/loomWrote 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/valkor-ai/loom/threejs-qa-release)<a href="https://agentmods.dev/skills/valkor-ai/loom/threejs-qa-release"><img src="https://agentmods.dev/badge/skills/valkor-ai/loom/threejs-qa-release/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/valkor-ai/loom/threejs-qa-release"><img src="https://agentmods.dev/badge/skills/valkor-ai/loom/threejs-qa-release.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00063 | $0.01046 |
| Opus 5.5 | $0.00025 | $0.00418 |
| Sonnet 5.5 | $0.00013 | $0.00209 |
| Haiku 4.5 | $0.00006 | $0.00105 |
Grade A, and why
threejs-qa-release 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 1mo 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 — 56 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Three.js QA Release
Prove the game works the way a player will meet it, then prepare a shippable build with its known risks.
Resolve <this-skill-dir> and local references from the actual loaded skill file; resolve sibling skills beside it before using runner-discovered alternatives. Run the inspector from the game project with its npm dependencies installed.
References
| File | Read it when |
|---|---|
references/release-checks.md |
mobile verification, production release, performance evidence, or release-failure traps |
references/visual-test-harness.md |
screenshot baselines, visual regression, UI or generated-asset regression protection |
references/playtest-bot.md |
release-ready gameplay claims, difficulty and fairness checks, or a loop never driven by scripted input |
QA pass
For a complete game use the full pass below. For narrow edits select checks covering the affected behavior, states, and target viewports. Reuse valid specialist evidence from the same code revision; the lead owns one consolidated pass. Repeat only after relevant changes, failures, or unresolved concerns. An explicit desktop-only scope does not require adding mobile gameplay.
- Install dependencies, run build and typecheck, start the dev or preview server.
- Open the browser target and capture console, page, and network errors.
- Confirm non-blank, visually varied canvas pixels.
- Capture active play on each target viewport (desktop and mobile by default), not just the title screen.
- Exercise the main input, objective progression, fail and retry, and whatever changed most recently.
- Check HUD text fit, safe areas, touch targets, and responsive layout.
- When audio changed: user-gesture unlock, SFX triggers, ambience loop start and stop, pause and restart cleanup, mute and volume, decode errors.
- Decide on a visual test harness. For premium, release-ready, UI-heavy, or generated-asset work a harness is usually worth it; say so either way.
- Run the bot playtest (
tests/bot-playtest.template.tsin scaffold games) for release-ready gameplay claims and report its metrics JSON. - When animation changed, capture a short unpaused sequence and inspect locomotion, clip transitions, feet, rig deformation, and attack/contact timing using
references/visual-test-harness.md.
What ships with it
5 files 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.
- 1mo ago First seen · 56 lines · 63 tokens per session scan A 3dbad5a97398
threejs-qa-release is a skill published in the GitHub repository valkor-ai/loom (1,251 stars, last pushed 3d ago), licensed Apache-2.0. It adds 63 tokens to every session and 1,046 once invoked, about $0.0003 per session on Opus 5.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-09-15.
Other skills, from other repositories
develop-web-game
Use when Codex is building or iterating on a web game (HTML/JS) and needs a reliable development + testing loop: implement small changes, run a Playwright-based test script with short input bursts and intentional pauses, inspect screenshots/text, and review console errors with rendergametotext.
test-playable-web-games
Test a playable browser game end to end with deterministic fixtures and real browser evidence. Use for gameplay QA, regression testing, controls, accessibility, responsive/mobile testing, save flows, console checks, performance smoke tests, and release verification.
threejs-qa-release
Verify and release Three.js browser games: playtest QA, automated bot playtests, mobile and responsive checks, production builds, static-hosting base paths, debug gating, bundle review, screenshots, visual regression baselines, canvas-pixel inspection with measured metrics, and release risk reports.
pie-testing
Start, stop, and query Play-In-Editor (PIE) sessions for runtime testing of Blueprints, gameplay logic, widgets, AI, and any in-game behavior. Use when the user asks you to "play", "test", "run", "PIE", "start/stop the game", or otherwise needs a live game world to validate changes.
web-game-performance-and-testing
Use when working on any browser game (Phaser, PixiJS, three.js, Babylon.js, PlayCanvas, Excalibur, KAPLAY) - requestAnimationFrame with clamped delta and visibility pause, zero-allocation frame loops, measuring in DevTools, bundle and asset size budgets, Vitest with seeded RNG and injected time, and a seeded…
smoke-check
Run the critical path smoke test gate before QA hand-off. Executes the automated test suite, verifies core functionality, and produces a PASS/FAIL report. Run after a sprint's stories are implemented and before manual QA begins. A failed smoke check means the build is not ready for QA.