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 beremaran/godot-agent-loop --skill debug-godot-gamegit clone --depth 1 https://github.com/beremaran/godot-agent-loopWrote 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/beremaran/godot-agent-loop/debug-godot-game)<a href="https://agentmods.dev/skills/beremaran/godot-agent-loop/debug-godot-game"><img src="https://agentmods.dev/badge/skills/beremaran/godot-agent-loop/debug-godot-game.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.00069 | $0.00874 |
| Opus 5 | $0.00034 | $0.00437 |
| Sonnet 5 | $0.00014 | $0.00175 |
| Haiku 4.5 | $0.00007 | $0.00087 |
Grade A, and why
debug-godot-game 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 8d 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 — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Debug a Godot game
Preserve the failure, isolate one cause, apply the smallest repair, and rerun the same reproduction. Godot Agent Loop supports Godot 4.7 or later; report older engine behavior as outside the supported boundary.
Control contract
- Validate
projectPathagainst effective MCP roots and allowed directories before mutation. Preserve a reproducible baseline and changed-file snapshot. - Record whether the user requested watched or unattended work. For watched work,
call
editor_sessionwith ensure and launch enabled; stop if a usable editor cannot be established instead of silently continuing detached. Unattended repairs use the host's normal file tools on.tscn,.gd, andproject.godot. - Distinguish persistent scene/resource/script/settings repair from runtime-ephemeral observation or mutation. Stop the runtime before persistent repair unless an editor-native operation is explicitly safe during play and record why.
- Use canonical core tools directly (compact is only the compatibility alias).
Resolve hidden
game_get_property,game_set_property,game_call_method, andgame_evalthroughgodot_catalogdetail, then invoke them withgodot_call; never call a hidden tool directly. - If Pause Agent blocks a mutation, do not retry or bypass it. Continue only observation or safe teardown and report the effective blocked tool.
- Use privileged reflection or evaluation only when its group is already enabled, the hypothesis requires it, and safer observations cannot distinguish the cause.
Workflow
- Reproduce before editing. Use realtime
run_projectfor visual or timing complaints and repeat the user's exact input or a boundedgame_scenario. - Capture the minimum distinguishing evidence: cursor-bounded
game_get_logs,game_get_errors, concisegame_get_scene_tree/game_get_ui/game_get_node_infostate, andgame_screenshotonly when rendering matters. - Classify the failing boundary: parse/startup, persistent scene/resource, import, runtime state, input/timing, rendering, audio, export, or platform/toolchain.
- State one falsifiable hypothesis and one observation that distinguishes it from the nearest alternative. Change one independent variable per trial; do not disable multiple systems and infer a single cause.
- Drive input through
game_scenario. Use agame_key_holdstep for continuous movement with a bounded wait or observation and a release in the same scenario; do not hand-assemble repeatedgame_key_presstaps. Never leave input held across a separate MCP call or while reasoning. Use boundedgame_wait_until, never manual sleeps. - Stop the project before persistent repair. Apply the smallest matching scene,
script, resource, or setting change as one coherent undoable change through
editor_transaction(watched) or the host's file tools. - Run
run_project_testsdiscovery or headless checks before runtime proof. Repeat the exact baseline, stress/recovery input, and observation; then run adjacent regression checks withverify_projectorrun_project_tests. - Separate measured FPS/frame time/process/render data from unavailable GPU metrics and subjective reports of feel. Do not substitute simulation counters for displayed frame pacing.
- Release held input, call
stop_project, remove only identified probes and MCP-owned transient artifacts, and independently check cleanup.
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.
- 8d ago First seen · 70 lines · 69 tokens per session scan A 82c9b503bbb2
debug-godot-game is a skill published in the GitHub repository beremaran/godot-agent-loop (5 stars, last pushed 2d ago), licensed MIT. It adds 69 tokens to every session and 874 once invoked, about $0.0003 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
minecraft-debug-mcp
Operate and debug the live Minecraft bot through its built-in MCP REPL server. Use when work requires starting the bot with pnpm dev, connecting to the local MCP endpoint, inspecting cognitive state/logs/history, injecting synthetic chat/events, or running targeted REPL code against the running brain during…
graphics-api-hooking
Guide for graphics API interception, overlay rendering, and render-pipeline analysis across DirectX, OpenGL, and Vulkan. Use this skill when working with Present or SwapBuffers hooks, DXGI swap chains, shader or draw-call interception, screenshot-sensitive overlays, or graphics debugging in game security research.
console-get-logs
Retrieve Unity Editor logs from the MCP plugin's LogCollector, optionally filtered by log type or time window. Useful for debugging and monitoring Editor activity.
editor-application-get-state
Return the current state of UnityEditor.EditorApplication — playmode, paused state, compilation state, and related flags.
console-clear-logs
Clear the MCP log cache (used by 'console-get-logs') and the Unity Editor Console window. Useful for isolating logs to a specific action by clearing the slate first.
profiler-start
Enable Unity's runtime profiler and open the Profiler window. Idempotent: calling when already enabled returns the current enabled state without error.