Dependency Injection
jame581/GodotPrompter
A skill your agent uses when managing dependencies between systems — autoloads, service locators, @export injection, and scene injection patterns
Expert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components).
$ npx skills add thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install thedivergentai/GD-Agentic-Skills godot-composition-apps --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/thedivergentai/GD-Agentic-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/godot-composition-apps .claude/skills/godot-composition-apps && 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 "godot-composition-apps" agent skill from https://github.com/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-apps into .claude/skills/godot-composition-apps/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "godot-composition-apps", 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/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-appsType 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 thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install thedivergentai/GD-Agentic-Skills godot-composition-apps --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedivergentai/GD-Agentic-Skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/godot-composition-apps .agents/skills/godot-composition-apps && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "godot-composition-apps" agent skill from https://github.com/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-apps into .agents/skills/godot-composition-apps/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "godot-composition-apps", 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 thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install thedivergentai/GD-Agentic-Skills godot-composition-apps --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedivergentai/GD-Agentic-Skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/godot-composition-apps .cursor/skills/godot-composition-apps && 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 "godot-composition-apps" agent skill from https://github.com/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-apps into .cursor/skills/godot-composition-apps/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "godot-composition-apps", 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/thedivergentai/GD-Agentic-Skills.git --path skills/godot-composition-apps--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 thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install thedivergentai/GD-Agentic-Skills godot-composition-apps --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedivergentai/GD-Agentic-Skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/godot-composition-apps .gemini/skills/godot-composition-apps && 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 "godot-composition-apps" agent skill from https://github.com/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-apps into .gemini/skills/godot-composition-apps/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "godot-composition-apps", 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 thedivergentai/GD-Agentic-Skills godot-composition-appsInstalls 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 thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/thedivergentai/GD-Agentic-Skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/godot-composition-apps .github/skills/godot-composition-apps && 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 "godot-composition-apps" agent skill from https://github.com/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-apps into .github/skills/godot-composition-apps/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "godot-composition-apps", 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 thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install thedivergentai/GD-Agentic-Skills godot-composition-apps --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedivergentai/GD-Agentic-Skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/godot-composition-apps .opencode/skills/godot-composition-apps && 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 "godot-composition-apps" agent skill from https://github.com/thedivergentai/GD-Agentic-Skills/tree/main/skills/godot-composition-apps into .opencode/skills/godot-composition-apps/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "godot-composition-apps", 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.
godot-composition-appsExpert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components).
Godot Composition Apps is an agent skill from thedivergentai/GD-Agentic-Skills. Expert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components). Use when building dashboards, tool windows, forms, settings panels, or EditorPlugin UIs. Do NOT use for gameplay entities (Player/Enemy/Weapon/Hitbox) — route those to godot-composition. Trigger keywords: Control, EditorPlugin, tool UI, Orchestrator, VLS, rock test, AuthComponent, ThemeManager, Saveable component, dependency injection.
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 19 other files, including scripts and reference files (for example `QA_REPORT.md`, `references/app-orchestrator-examples.md` and `references/migration-notes.md`).
It sits in Game Development, covering Game development and Design patterns. It works with Godot. The repository describes itself as: The official "Long-Term Memory" for Godot 4.7+ AI Agents. A high-density library of 99 expert skills and 27 genre blueprints, providing audited, strictly typed GDScript patterns… The licence is LGPL-3.0.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4c4d0ff. 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.
Ships 11 files in scripts/, which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
docs.godotengine.orgFrom 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.
Godot Composition Apps loads about 3.6k tokens when it runs, and up to ~5k if it reads all its reference files. Until then it costs about 128 tokens; SKILL.md has 1,053 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); the scripts in this folder are not scanned.
The full file from thedivergentai/GD-Agentic-Skills at commit 4c4d0ff, republished under its LGPL-3.0 licence (© thedivergentai). 1,053 words, ~3,576 tokens.
.claude/skills/godot-composition-apps/SKILL.md (or your agent's skills folder). This skill also uses 16 other files; get the full folder from GitHub.| Root node / task | Route |
|---|---|
| Control, EditorPlugin, tool window, settings dock, form UI | Stay here — Orchestrator + components |
| Player, Enemy, Weapon, Hitbox, gameplay CharacterBody | godot-composition — not this skill |
App-only gate: If the node is a gameplay actor (Player/Enemy/Weapon/Hitbox), use godot-composition. This skill owns Control / EditorPlugin / tool composition.
Before writing a script, ask: "If I attached this script to a literal rock, would it still function?"
AuthComponent on a rock allows the rock to log in. (Context Agnostic)LoginForm script on a rock tries to grab text fields the rock doesn't have. (Coupled)MANDATORY: Validate new components with comp_rock_test_boilerplate.gd.
Treat the Root Node as an empty Backpack.
SubmitButton extends AnimatedButton extends BaseButton.AnimationComponent and HAS-A NetworkRequestComponent.| Direction | Source → Target | Method | Reason |
|---|---|---|---|
| Downward | Orchestrator → Component | Function Call | Manager owns the workers. |
| Upward | Component → Orchestrator | Signals | Workers are blind. |
| Sideways | Component A ↔ Component B | FORBIDDEN | Siblings never talk directly. |
Sideways Fix: Component A signals the Orchestrator; Orchestrator calls Component B.
MANDATORY: Read the matching script before implementing the pattern. Do not reinvent Orchestrator wiring inline.
MANDATORY first read — Attach-candidate-to-literal-rock harness that fails hard-coupled components early.
MANDATORY when creating any App/UI root — Signal-up / call-down wiring skeleton (0% business math).
MANDATORY for VLS — Logic emits state_changed; visuals/animations react without logic knowing AnimationPlayer/Theme.
Shared component lifecycle + dependency validation for app workers.
Typed export / registry injection so Orchestrators avoid brittle $ paths.
Context-agnostic clipboard worker — pairs with orchestrator toast pattern (see references).
Resource-backed config for tool settings and form defaults.
MANDATORY for saveable UI/tool state — Registers Saveable group + get_save_data() without putting I/O in visuals.
Ordered multi-step tool workflows (wizard pages, export pipelines) as child steps.
Only when an app/tool simulates entities; prefer godot-composition for real games.
Root script (LoginScreen.gd, UserProfile.gd, EditorPlugin dock root) is an Orchestrator:
MANDATORY: Extend patterns from comp_orchestrator_base.gd.
| Concept | App/UI Example |
|---|---|
| Orchestrator | UserProfile.gd / Editor dock root |
| Logic component | AuthValidator |
| VLS | AuthVisualSyncer via comp_logic_visual_syncer.gd |
| Theme ownership | Separate theme component — never mutated inside form logic |
| Focus ownership | Orchestrator grants/releases Control focus; components never steal siblings' focus |
class_name on components; no untyped core architecture.@export var auth: AuthComponent (Inspector / %UniqueNames). NEVER get_node("Path/To/Child") for components.@export or function args.@export / %._on_signal delegators.Do not put save I/O or Theme mutation inside form Controls. Route through components:
add_to_group("Saveable") + get_save_data().grab_focus() after validation failures so logic stays Control-agnostic.# settings_dock_orchestrator.gd (pattern — wire via @export, not $)
extends Control
@export var persistence: CompPersistenceComponent
@export var theme_mgr: Node # theme_manager.gd API
@export var form_logic: Node
func _ready() -> void:
form_logic.settings_valid.connect(_on_settings_valid)
form_logic.settings_invalid.connect(_on_settings_invalid)
func _on_settings_valid(payload: Dictionary) -> void:
theme_mgr.apply_user_theme(payload.get("theme_id"))
# Save systems collect via Saveable group — persistence component stays dumb
func _on_settings_invalid(field: StringName) -> void:
# Orchestrator owns focus; logic never touches sibling LineEdits
var target := get_node_or_null("%" + String(field))
if target is Control:
target.grab_focus()Prefer Engine.register_singleton() for lightweight non-Node services (Auth, Config) instead of dozens of Autoload Nodes [6].
MANDATORY comp_logic_visual_syncer.gd — logic never calls AnimationPlayer.play().
Orchestrator Dictionary registry for dashboard modules — still no sideways calls; registry is Orchestrator-private lookup.
MANDATORY for clipboard/share orchestrator examples and service-locator depth: app-orchestrator-examples.md. Do NOT Load when comp_orchestrator_base.gd covers your screen.
Progressive disclosure: open Official Documentation links only when researching a specific API; load Related Skills when routing to a peer domain — do not preload the whole lattice.
has_method) that let composition work without deep inheritance trees.@export dependency injection that replaces brittle get_node paths in the Inspector.%UniqueName for Orchestrator-local Control/Button wiring without string path fragility..tres configs so values stay outside logic components.class_name fluency required before dependency injection and rock-testable components..tres configs that feed data-driven components.© thedivergentai, LGPL-3.0. 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 16 other files (scripts, references) in skills/godot-composition-apps of thedivergentai/GD-Agentic-Skills.
Open the folder on GitHubat commit 4c4d0ff
Godot Composition Apps 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 |
|---|---|---|---|---|---|---|
| Godot Composition Apps this skillthedivergentai/GD-Agentic-Skills | 821 | — | ~3.6k | Automated safety check: Pass | LGPL-3.0 | |
| Dependency Injectionjame581/GodotPrompter | 805 | — | ~2.8k | Automated safety check: Pass | MIT | |
| Component Systemjame581/GodotPrompter | 805 | — | ~3.3k | 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 | 285 | — | ~1.5k | Automated safety check: Pass | MIT |
jame581/GodotPrompter
A skill your agent uses when managing dependencies between systems — autoloads, service locators, @export injection, and scene injection patterns
jame581/GodotPrompter
A skill your agent uses when building reusable node components — composition patterns, component communication, and interface design
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.
thedivergentai/GD-Agentic-Skills
Expert patterns for 2D animation in Godot using AnimatedSprite2D and skeletal cutout rigs.
thedivergentai/GD-Agentic-Skills
Expert patterns for 3D level design using GridMap with MeshLibrary, CSG constructive solid geometry, occlusion, and runtime GridMap builders.
thedivergentai/GD-Agentic-Skills
Expert patterns for migrating 2D games to 3D including node type conversions, camera systems (third-person, first-person, orbit), physics layer migration, sprite-to-model art pipeline, and control…
thedivergentai/GD-Agentic-Skills
Expert patterns for simplifying 3D games to 2D including dimension reduction strategies, 2.5D fake-depth, isometric ports, camera flattening, physics conversion, 3D-to-sprite art pipeline, and…
thedivergentai/GD-Agentic-Skills
Agentic eyes for Godot work: cross-platform screenshot CLI (asset/region/window/screen) to budgeted WebP, TEMP editor viewport bridge under .gdskills/, and Taste Receptor Atlas v2 (~237…
thedivergentai/GD-Agentic-Skills
Expert patterns for AnimationTree including StateMachine transitions, BlendSpace2D for directional movement, BlendTree for layered animations, root motion, transition conditions, advance…
Works with
Categories
Expert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components). Godot Composition Apps is an agent skill from thedivergentai/GD-Agentic-Skills. Expert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components).
Godot Composition Apps fits situations like: building dashboards; settings panels; editorPlugin UIs; gameplay entities (Player/Enemy/Weapon/Hitbox) — route those to godot-composition.
Run `npx skills add thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a claude-code`. Or copy the skill folder (skills/godot-composition-apps in thedivergentai/GD-Agentic-Skills) into .claude/skills/godot-composition-apps in your project. Claude Code loads it when a task matches its description.
Run `npx skills add thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a codex`. Or copy the skill folder (skills/godot-composition-apps in thedivergentai/GD-Agentic-Skills) into .agents/skills/godot-composition-apps 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 thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/godot-composition-apps, .gemini/skills/godot-composition-apps, .github/skills/godot-composition-apps and .opencode/skills/godot-composition-apps in your project.
SKILL.md names no scripts, command-line tools or credentials: Godot Composition Apps is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: docs.godotengine.org. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Godot Composition Apps is published under the LGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k 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 1.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Godot Composition Apps: Dependency Injection (jame581/GodotPrompter, 805 stars), Component System (jame581/GodotPrompter, 805 stars), Godot Gdscript Patterns (925236118/AlphaAgent, 103 stars) and 2D Map and Scene Generator (0x0funky/agent-sprite-forge, 4.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
thedivergentai (a GitHub user) maintains it in thedivergentai/GD-Agentic-Skills, which has 821 GitHub stars. The repository holds 98 skills in this directory. The repository was last updated on September 9, 2026.
Source: thedivergentai/GD-Agentic-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.