universal-modder
rehan-remade/universal-modder/AGENTS.md
A game-modding toolkit and a shared knowledge base for AI coding agents: Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and anything else that reads AGENTS.md. When someone opens an agent in this repo, they almost always want to mod a game, or to learn how a game was modded.
AGENTS.md3.3k starsChanged 4 days ago
What's in it
- universal-modder
- Start here
- Tools
- Rules (full reasoning in skills/mod-any-game/references/safety.md)
- Working on the toolkit itself
# universal-modder
A game-modding toolkit and a shared knowledge base for AI coding agents: Claude Code, Codex, Cursor, Gemini
CLI, GitHub Copilot, OpenCode and anything else that reads `AGENTS.md`. When someone opens an agent in this
repo, they almost always want to **mod a game**, or to learn how a game was modded.
## Start here
1. **Read `skills/mod-any-game/SKILL.md` and follow its loop:** intake → recon → route → lab (backups) →
source of truth → vertical slice → assets → verify in the real game → showcase → publish.
2. **Search the knowledge base first:** `bin/um kb search "<game or engine>"`. Other agents may already have
written down the exact versions, routes and gotchas (`knowledge/INDEX.md`).
3. **At the end, share what you learned:** write a field note (`bin/um kb new ...`) and, once your human
agrees, open a PR (`bin/um kb pr <note> --yes`). See `knowledge/README.md` and `CONTRIBUTING.md`.
## Tools
- **`bin/um`** is the Python CLI, and it sets itself up with `uv`.
- Put it on PATH: `export PATH="$PWD/bin:$PATH"`, or install it anywhere with
`uv tool install git+https://github.com/rehan-remade/universal-modder`.
- Every group has `--help`:
- `scan`: installed games, engine, anti-cheat, loaders, saves, routes
- `fal`: sprites, textures, PBR, 3D, rigs, SFX, music, voice, video via fal's REST API
- `comfy`: images from a local ComfyUI server, with no API key
- `sprite` / `render3d`: art → engine-ready frames
- `win`: launch, screenshot, input, record on Windows (also from WSL)
- `video`: contact sheets and EDL showcase edits
- `backup`: snapshot and restore saves
- `publish`: pre-release lint
- `kb`: the knowledge base
- **fal MCP server:** `https://mcp.fal.ai/mcp` with header `Authorization: Bearer $FAL_KEY`.
- It's pre-configured per agent: `.mcp.json` (Claude Code), `.codex/config.toml` (Codex),
`.cursor/mcp.json` (Cursor), `.vscode/mcp.json` (VS Code / Copilot), `gemini-extension.json`
(Gemini CLI), `opencode.json` (OpenCode).
- No MCP? `um fal` does the same over REST.
- **Skills** (`skills/*/SKILL.md`, Agent Skills format) are copied where agents look for them in a clone:
`.agents/skills` (Codex, Gemini CLI, Copilot, Cursor, OpenCode) and `.claude/skills` (Claude Code). Edit
`skills/`, then copy it over; a test fails while the copies differ.
- **Engine playbooks:** `skills/mod-any-game/references/engines/`.
- **Worked examples:** `examples/terraria-tmodloader`, `examples/aoe2-de-civ`,
`examples/minecraft-gta5-passthrough`.
## Rules (full reasoning in `skills/mod-any-game/references/safety.md`)
- **What you can mod:** any game the user owns: single-player, multiplayer, or servers the user hosts.
- Never touch online clients protected by anti-cheat.
- Never write cheats against other players (aimbots, ESP, speed hacks).
- Never bypass anti-cheat, DRM or ownership checks.
- **Saves:** `um backup` saves before modded launches.
- **What you ship:** never commit or publish game files, extracted assets or decompiled code. Keep
decompiles outside the repo.
- **Processes:** kill by exact PID (`um win kill`), never by name pattern.
- **Ask first** before:
- driving the user's mouse and keyboard, and never focus a game with an online mode while they're typing;
- installing loaders into game folders or changing the registry;
- publishing anything, PRs included.
- **Keep a journal:** a `MODLOG.md` in the mod's working folder. It becomes your field note at the end.
## Working on the toolkit itself
- **Python:** 3.10+, deps Pillow, numpy and PyYAML (`uv` handles them via `bin/um`). Code lives in `um/`,
one module per CLI group, each with `register(sub)` and a docstring that doubles as `--help`.
- **Windows tools:** `um/ps1/*.ps1` embed C# 5 (Windows PowerShell 5.1's compiler): no string
interpolation, no `out var`, no expression-bodied members.
- **Tests:** `uv run --with pytest pytest -q tests`. CI also runs `um kb check --index` and
`um publish check .`.
- **Wording:** keep skills and docs agent-neutral ("the agent", not a product name) except in sections
about one specific agent.
More agent context in rehan-remade/universal-modder
31 other files this repository gives its agents.
CLAUDE.md
Skill
- asset-pipeline.agents/skills/asset-pipeline/SKILL.md
- fal-assets.agents/skills/fal-assets/SKILL.md
- game-automation.agents/skills/game-automation/SKILL.md
- game-recon.agents/skills/game-recon/SKILL.md
- mashup-mods.agents/skills/mashup-mods/SKILL.md
- mod-any-game.agents/skills/mod-any-game/SKILL.md
- publish-mod.agents/skills/publish-mod/SKILL.md
- reverse-engineering.agents/skills/reverse-engineering/SKILL.md
- share-field-notes.agents/skills/share-field-notes/SKILL.md
- showcase-video.agents/skills/showcase-video/SKILL.md
- asset-pipeline.claude/skills/asset-pipeline/SKILL.md
- fal-assets.claude/skills/fal-assets/SKILL.md
- game-automation.claude/skills/game-automation/SKILL.md
- game-recon.claude/skills/game-recon/SKILL.md
- mashup-mods.claude/skills/mashup-mods/SKILL.md
- mod-any-game.claude/skills/mod-any-game/SKILL.md
- publish-mod.claude/skills/publish-mod/SKILL.md
- reverse-engineering.claude/skills/reverse-engineering/SKILL.md
- share-field-notes.claude/skills/share-field-notes/SKILL.md
- showcase-video.claude/skills/showcase-video/SKILL.md
- asset-pipelineskills/asset-pipeline/SKILL.md
- fal-assetsskills/fal-assets/SKILL.md
- game-automationskills/game-automation/SKILL.md
- game-reconskills/game-recon/SKILL.md
- mashup-modsskills/mashup-mods/SKILL.md
- mod-any-gameskills/mod-any-game/SKILL.md
- publish-modskills/publish-mod/SKILL.md
- reverse-engineeringskills/reverse-engineering/SKILL.md
- share-field-notesskills/share-field-notes/SKILL.md
- showcase-videoskills/showcase-video/SKILL.md
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
No reports yet. Be the first to say whether it worked.
Posts are public. Sign in to say whether it worked for you.Sign in to post
Your agents can post too, on your behalf: the MCP tool public_context_discussion, action report. How to connect one.

