Godot Gdscript Patterns
925236118/AlphaAgent
Master Godot 4 GDScript patterns including signals, scenes, state machines, and optimization.
A skill your agent uses when building inventory systems — Resource-based items, slot management, stacking, and UI binding
$ npx skills add jame581/GodotPrompter --skill inventory-system -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jame581/GodotPrompter inventory-system --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jame581/GodotPrompter.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/inventory-system .claude/skills/inventory-system && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "inventory-system" agent skill from https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-system into .claude/skills/inventory-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inventory-system", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-systemType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jame581/GodotPrompter --skill inventory-system -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jame581/GodotPrompter inventory-system --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jame581/GodotPrompter.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/inventory-system .agents/skills/inventory-system && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "inventory-system" agent skill from https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-system into .agents/skills/inventory-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inventory-system", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jame581/GodotPrompter --skill inventory-system -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jame581/GodotPrompter inventory-system --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jame581/GodotPrompter.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/inventory-system .cursor/skills/inventory-system && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "inventory-system" agent skill from https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-system into .cursor/skills/inventory-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inventory-system", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jame581/GodotPrompter.git --path skills/inventory-system--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jame581/GodotPrompter --skill inventory-system -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jame581/GodotPrompter inventory-system --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jame581/GodotPrompter.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/inventory-system .gemini/skills/inventory-system && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "inventory-system" agent skill from https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-system into .gemini/skills/inventory-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inventory-system", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jame581/GodotPrompter inventory-systemInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jame581/GodotPrompter --skill inventory-system -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jame581/GodotPrompter.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/inventory-system .github/skills/inventory-system && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "inventory-system" agent skill from https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-system into .github/skills/inventory-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inventory-system", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jame581/GodotPrompter --skill inventory-system -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jame581/GodotPrompter inventory-system --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jame581/GodotPrompter.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/inventory-system .opencode/skills/inventory-system && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "inventory-system" agent skill from https://github.com/jame581/GodotPrompter/tree/master/skills/inventory-system into .opencode/skills/inventory-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inventory-system", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
inventory-systemA skill your agent uses when building inventory systems — Resource-based items, slot management, stacking, and UI binding
Inventory System is an agent skill from jame581/GodotPrompter. Use when building inventory systems — Resource-based items, slot management, stacking, and UI binding
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `references/core-classes.md`, `references/equipment.md` and `references/serialization.md`).
It sits in Game Development, covering Game development. It works with Godot. The repository describes itself as: Agentic skills framework for Godot 4.x. Domain-specific skills for AI coding agents (Claude Code, Copilot, Antigravity, Cursor). The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1e7d79d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Inventory System loads about 2k tokens when it runs, and up to ~8.2k if it reads all its reference files. Until then it costs about 30 tokens; SKILL.md has 719 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from jame581/GodotPrompter at commit 1e7d79d, republished under its MIT licence (© jame581). 719 words, ~1,957 tokens.
.claude/skills/inventory-system/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.All examples target Godot 4.3+ with no deprecated APIs. This skill carries the decisions; the implementations live in references/ (GDScript first, then C#) — load the one you need.
Related skills: resource-pattern for custom Resource data containers, save-load for inventory serialization, event-bus for inventory change notifications, hud-system for inventory UI display, popochiu for adventure-game inventory.
┌─────────────────────────────────────────────────────────┐
│ UI Layer │
│ InventoryUI (Control) │
│ └─ GridContainer │
│ └─ SlotUI × N (Button) │
│ └─ TextureRect (icon) + Label (qty) │
│ │
│ Connects to: inventory_changed signal │
│ Drag-and-drop via _get_drag_data / _drop_data │
└───────────────────────┬─────────────────────────────────┘
│ reads / mutates
┌───────────────────────▼─────────────────────────────────┐
│ Inventory (Node) │
│ slots: Array[InventorySlot] │
│ add_item(item, qty) → leftover: int │
│ remove_item(item, qty) │
│ has_item(item, qty) → bool │
│ get_item_count(item) → int │
│ │
│ signals: inventory_changed │
│ item_added(item, quantity) │
│ item_removed(item, quantity) │
└───────────────────────┬─────────────────────────────────┘
│ references
┌───────────────────────▼─────────────────────────────────┐
│ Data Layer (Resources) │
│ ItemData (Resource) │
│ id, name, description, icon, max_stack_size, │
│ item_type enum │
│ │
│ InventorySlot (inner class / Resource) │
│ item: ItemData, quantity: int │
└─────────────────────────────────────────────────────────┘Three choices shape every inventory. Make them explicitly and state which you picked — the rest is mechanical.
| Decision | Take | Why |
|---|---|---|
Item identity: Resource vs. Dictionary / JSON | Resource in .tres | @export slots accept typed items, the Inspector edits them, and shared instances compare by reference |
Slot container: Resource vs. RefCounted | RefCounted | Slots are runtime state, not authored assets. A Resource invites saving slots to disk and reloading stale item copies |
add_item return: bool vs. leftover count | leftover int | Partial adds are the common case (stack caps, full bag). A bool forces the caller to re-query what actually fit |
If your game needs something else — a weight-based bag with no slots, a grid inventory with shaped items, an infinite stack list — say so before building. The fixed slot array this skill describes is the wrong skeleton for all three.
inventory_changed once per operation, after both passes complete — not once per slot touched. Per-slot emission re-renders the whole UI N times for one add_item.load() on the same .tres returns the same instance and slot.item == item is correct and cheap. If you duplicate() items at runtime, that breaks — key off ItemData.id instead.item to null when quantity reaches 0, or is_empty() lies and the slot is never reusable.max_stack_size = 1 on EQUIPMENT and KEY_ITEM items rather than special-casing them in add_item.ItemData [GlobalClass] or the Inspector will not offer it as a type when creating .tres files.| Member | Returns | Contract |
|---|---|---|
add_item(item, quantity) | int | Leftover that did not fit; 0 means everything was added |
remove_item(item, quantity) | — | Removes up to quantity; silent when fewer are held |
has_item(item, quantity) | bool | Convenience over get_item_count |
get_item_count(item) | int | Summed across every slot |
inventory_changed | signal | Fired once per mutating operation — drives all UI |
item_added(item, quantity) | signal | Carries the amount actually added |
item_removed(item, quantity) | signal | Carries the amount actually removed |
Full
ItemData,Inventory, andInventorySlotimplementations in GDScript and C#: references/core-classes.md
Add equipment slots (HEAD, CHEST, WEAPON, etc.) by extending the Inventory class with a typed slot map. Stat aggregation runs by summing ItemData.stats across equipped items; signal equipment_changed when slots change.
See references/equipment.md for the full GDScript and C#
Equipmentclass withEquipmentSlotTypeenum, equip / unequip API, and stat aggregation.
Slot-grid UI: a GridContainer of Panel slot widgets, each rendering one InventorySlot. Drag-and-drop uses _get_drag_data / _drop_data / _can_drop_data on the slot widget. The Inventory emits inventory_changed; the UI re-renders affected slots.
See references/ui-binding.md for the full GDScript and C# slot widget (drag/drop, hover preview), inventory grid layout, and tooltip wiring.
Persist Inventory + Equipment as a Dictionary keyed by item resource path (since ItemData lives at res://items/<name>.tres). Reload by load(path) and reconstructing the slot list. Version field gates migration on load.
See references/serialization.md for the GDScript and C# save/load implementation with
versionfield and ConfigFile / JSON variants.
ItemData extends Resource with a stable id string set in the InspectorItemData files live under res://items/ and are committed to version controlInventory.add_item() returns leftover count; callers handle a full inventoryinventory_changed signal drives all UI updates — UI never polls per-frameInventorySlot.remove_from_stack() clears item to null when quantity reaches 0SlotType enum, not by string, to catch typos at compile timeEquipment.get_total_stat() is called when stats are needed, not cached unless profiling demands itid + quantity only — never full ItemData objects or resource pathsItemRegistry loads items at startup; all deserialization goes through itinventory_changed oncemax_stack_size = 1 on EQUIPMENT and KEY_ITEM types to prevent stackingpush_error() messages include the class name and method for easy tracing© jame581, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (references) in skills/inventory-system of jame581/GodotPrompter.
Open the folder on GitHubat commit 1e7d79d
Inventory System next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Inventory System this skilljame581/GodotPrompter | 799 | — | ~2k | Automated safety check: Pass | MIT | |
| Godot Gdscript Patterns925236118/AlphaAgent | 103 | 10 repos | ~5k | Automated safety check: Pass | MIT | |
| 2D Map and Scene Generator0x0funky/agent-sprite-forge | 4.4k | — | ~2.9k | Automated safety check: Pass | MIT | |
| Godot UI Integrationzimo-xiao-zheng/godot-ui-integration | 277 | — | ~1.5k | Automated safety check: Pass | MIT | |
| Godot Wechat Minigame Adaptergodothub/godot-minigame | 187 | — | ~1.5k | Automated safety check: Pass | MIT | |
| AI Game Art Pipelineybuild-ai/ai-game-art-pipeline-skill | 297 | — | ~1.1k | Automated safety check: Pass | MIT |
925236118/AlphaAgent
Master Godot 4 GDScript patterns including signals, scenes, state machines, and optimization.
0x0funky/agent-sprite-forge
Plans and builds 2D game maps and scenes, from tilemaps and parallax backgrounds to HD-2D plates, with collision checks, a playable HTML preview and Tiled, Godot or LDtk export.
zimo-xiao-zheng/godot-ui-integration
Build or revise Godot UI from an approved design, separated art, or a visual reference when scene structure, gameplay binding, and runtime visual verification all matter.
godothub/godot-minigame
Apply the bundled self-contained Godot WeChat Mini Game adapter kit to an official Godot checkout.
ybuild-ai/ai-game-art-pipeline-skill
Provider-neutral open-source skill for planning and producing game-runtime art assets and animation: static props/icons, canonical character sheets, combat sprites, 3D/video motion references…
RandallLiuXin/GodotMaker
Runtime debugging and live project inspection via godot-mcp.
jame581/GodotPrompter
Covers Godot 4.3+ 2D systems with GDScript and C# examples: canvas layers, draw order, TileMaps, parallax, lights and shadows, particles and custom drawing.
jame581/GodotPrompter
Covers Godot 4.3+ 3D systems such as materials, lighting, shadows, environment, global illumination, fog, LOD, occlusion culling and decals, with GDScript first and C# second.
jame581/GodotPrompter
Builds a data-driven ability system in Godot 4 from Resources and a component node, with cooldowns, buffs, stat modifiers, gameplay tags and HUD binding.
jame581/GodotPrompter
Covers Godot 4.3+ editor plugins: plugin folders, @tool scripts, the EditorPlugin lifecycle, custom inspectors, dock panels and gizmos, in GDScript and C#.
jame581/GodotPrompter
Covers pathfinding and enemy movement in Godot 4.3 and later: navigation regions, NavigationAgent nodes, steering, behavior trees and patrol routes.
jame581/GodotPrompter
Covers animation in Godot 4.3 and later: AnimationPlayer basics, AnimationTree blend trees and state machines, sprite animation, skeleton IK and code-driven motion.
Works with
Categories
A skill your agent uses when building inventory systems — Resource-based items, slot management, stacking, and UI binding. Inventory System is an agent skill from jame581/GodotPrompter.
Inventory System fits situations like: building inventory systems — Resource-based items; slot management.
Run `npx skills add jame581/GodotPrompter --skill inventory-system -a claude-code`. Or copy the skill folder (skills/inventory-system in jame581/GodotPrompter) into .claude/skills/inventory-system in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jame581/GodotPrompter --skill inventory-system -a codex`. Or copy the skill folder (skills/inventory-system in jame581/GodotPrompter) into .agents/skills/inventory-system in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jame581/GodotPrompter --skill inventory-system -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/inventory-system, .gemini/skills/inventory-system, .github/skills/inventory-system and .opencode/skills/inventory-system in your project.
SKILL.md names no scripts, command-line tools or credentials: Inventory System is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Inventory System is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Inventory System: Godot Gdscript Patterns (925236118/AlphaAgent, 103 stars), 2D Map and Scene Generator (0x0funky/agent-sprite-forge, 4.4k stars), Godot UI Integration (zimo-xiao-zheng/godot-ui-integration, 277 stars) and Godot Wechat Minigame Adapter (godothub/godot-minigame, 187 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jame581 (a GitHub user) maintains it in jame581/GodotPrompter, which has 799 GitHub stars. The repository holds 58 skills in this directory. The repository was last updated on October 8, 2026.
Source: jame581/GodotPrompter on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.