by htdt
Autonomous game development for Godot and Bevy with Claude Code and Codex
# Add to your Claude Code skills
git clone https://github.com/htdt/godogenGuides for using cli tools skills like godogen.
Last scanned: 4/22/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-04-22T06:01:10.043Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
30 days in the Featured rail · terms & refunds
Autonomous game development for Godot, Bevy, and Babylon.js with Claude Code and Codex.
Describe a game. Godogen plans it, writes the code, generates assets, runs the engine, checks screenshots, and fixes what looks wrong.
This repo is not a game. It is the source for a generator that produces games: godogen -> game repo -> game. You publish the skills into a fresh game repo, choosing the engine and host-agent flavor, then the agent runs inside that repo to build the actual game.
The source is organized along the engine axis:
shared/ — engine-agnostic godogen stages, asset-generation tooling, shared stop hook, and common game-repo instructionsgodot/ — Godot-specific godogen stages, Godot capture helpers, and the godot-api skillbevy/ — Bevy-specific godogen stages, Bevy capture helpers, and the bevy-help skillbabylon/ — Babylon.js-specific godogen stages, Vite scaffold, browser capture helpers, and the babylon-help skillClaude Code vs Codex is a publish-time render choice, not a separate source tree. The root publish.sh renders the right runtime layout for the chosen engine and host agent.
--video_hook at publish time to install a stop hook that pushes the latest screenshots/result/{N}/video.mp4 to Telegram when tg-push and the TG_* env vars are configured. No-op otherwise. Off by default.PATH for Godot projectsGOOGLE_API_KEY — Google AI Studio for Gemini image generationXAI_API_KEY — xAI Grok for image/video generationTRIPO3D_API_KEY — Tripo3D for 3D generationvulkan-tools, xvfb, ffmpeg, imagemagick, plus platform-specific extrasPick the engine and host agent:
./publish.sh --engine godot --agent claude --out ~/my-game # CLAUDE.md + .claude/skills/
./publish.sh --engine godot --agent codex --out ~/my-game # AGENTS.md + .agents/skills/
./publish.sh --engine bevy --agent claude --out ~/my-game
./publish.sh --engine bevy --agent codex --out ~/my-game
./publish.sh --engine babylon --agent claude --out ~/my-game
./publish.sh --engine babylon --agent codex --out ~/my-game
Pass --force to wipe existing contents at the target before publishing — use this when re-publishing over a previous run. Pass --video_hook to install the optional Telegram stop hook (off by default; see below).
If you're working on Bevy generation, configure and populate a shared Bevy docs folder once after clone:
./setup_bevy_docs.sh /absolute/or/user/path/to/bevy-docs
The setup script links bevy/skills/bevy-help/docs/ to that folder, creates shallow Bevy docs source checkouts for new caches, and builds local rustdoc for the current stable release. No default path is assumed. See setup.md for the full workstation setup.
A full generation run can take hours, so it's convenient to offload it to a server, ideally a GPU instance, since engine rendering and video capture are much faster with hardware acceleration.
tmux or screen.--video_hook: the stop hook auto-sends the final proof video to Telegram on completion.After a full generation session, ask the agent you used to review how the pipeline performed:
Analyze this session. Were the instructions optimal? Flag anything that was too obvious, missing, or misleading. Did any tools pollute context with noise? Did the capture loop catch the real problems? Any tool failures or workarounds?
See CHANGELOG.md.
Follow progress: @alex_erm