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 vucinatim/air-jam --skill debug-and-testgit clone --depth 1 https://github.com/vucinatim/air-jamWrote 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/vucinatim/air-jam/debug-and-test)<a href="https://agentmods.dev/skills/vucinatim/air-jam/debug-and-test"><img src="https://agentmods.dev/badge/skills/vucinatim/air-jam/debug-and-test.svg" alt="Measured on agentmods" 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.00032 | $0.00581 |
| Opus 5 | $0.00016 | $0.00291 |
| Sonnet 5 | $0.00006 | $0.00116 |
| Haiku 4.5 | $0.00003 | $0.00058 |
Grade A, and why
debug-and-test 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 7d 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 — 73 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Debug And Test
Use this skill when adding debug helpers, using logs, or deciding what to test.
Read First
docs/airjam/debug-and-testing.mddocs/airjam/development-loop.mddocs/airjam/generated/unified-dev-logs.md
Debug Order
- inspect the canonical Air Jam dev log stream first
- use framework diagnostics second
- use domain-level debug helpers third
- add custom logs only when they add clear value
Canonical Log Workflow
Use the unified Air Jam log stream early when debugging host/controller/server issues.
Key facts:
- the canonical file is
.airjam/logs/dev-latest.ndjson - it resets when the Air Jam server process restarts
pnpm exec air-jam-server logsis the preferred path- direct file reads are valid when you need the raw stream
- standard dev-runner failures from Vite and similar tools should also appear there as
workspaceevents - this should usually come before adding new temporary logs
Query order:
- start with
pnpm exec air-jam-server logs --view=signal - use
--tracefor host-session stories - use
--roomfor one multiplayer room story - use
--controllerfor one player/controller path - use
--runtimeand--epochfor embedded runtime problems - use
--processwhen the likely failure is in one local dev process such asplatform,server, or the active game - use
--sourcewhen you already know which producer layer you need - fall back to raw NDJSON when signal view is still not enough
Test Order
- pure domain logic with unit tests
- focused gameplay systems with behavior tests
- targeted integration coverage only where the boundary really matters
If the starter testing layout exists, prefer:
tests/game/domain/tests/game/stores/tests/game/engine/tests/game/adapters/tests/game/ui/
Structure Rules
- keep debug helpers under
src/game/debug/ - keep debug-only code out of hot gameplay paths
- prefer structured logs over ad hoc console noise
- keep core logic testable without rendering where practical
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.
- 7d ago First seen · 73 lines · 32 tokens per session scan A d3124e6006b9
debug-and-test is a skill published in the GitHub repository vucinatim/air-jam (6 stars, last pushed 3d ago), licensed MIT. It adds 32 tokens to every session and 581 once invoked, about $0.0002 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-31.
Other skills, from other repositories
test-electron-app
Drive the real running PostHog Electron app (live tRPC, workspace-server, real data) over CDP with agent-browser. Connect to the running app on port 9222, test desktop changes against a local Django stack, snapshot the accessibility tree, inspect network requests, and screenshot only when explicitly asked. Use when…
systematic-debugging
4-phase systematic debugging methodology with root cause analysis and evidence-based verification. Use when debugging complex issues.
verify-changes
Prove code works by running it, not just checking it exists. Verification through execution rather than inspection. Use after writing or modifying code to ensure it actually functions correctly.
server-side-calls
Call tRPC procedures directly from server code using t.createCallerFactory() and router.createCaller(context) for integration testing, internal server logic, and custom API endpoints. Catch TRPCError and extract HTTP status with getHTTPStatusCodeFromError(). Error handling via onError option.
migrate-oxlint
Guide for migrating a project from ESLint to Oxlint. Use when asked to migrate, convert, or switch a JavaScript/TypeScript project's linter from ESLint to Oxlint.
adversarial-reviewer
Adversarial code review that assumes bugs exist and hunts for them. Use when asked to review code, find bugs, audit for correctness, stress-test a PR, or when someone says "tear this apart" or "what's wrong with this". Give no benefit of the doubt — every line is guilty until proven innocent.