Agent skill

Godot Composition Apps

by thedivergentai in thedivergentai/GD-Agentic-Skills

Expert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components).

LGPL-3.0Auto-check passedGame Development

Install Godot Composition Apps

skills CLI
$ npx skills add thedivergentai/GD-Agentic-Skills --skill godot-composition-apps -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install thedivergentai/GD-Agentic-Skills godot-composition-apps --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ 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-src

Use ~/.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/

Facts

Skill name
godot-composition-apps
GitHub stars
821
Token cost
~3.6k tokens
SKILL.md length
1,053 words
Files
17 (incl. scripts, references)
Skills in repo
98
Repo updated
First seen
Licence
LGPL-3.0

At a glance

Expert architectural standards for scalable Godot Apps, Tools, EditorPlugins, and Control-heavy UIs using Composition (Has-A Orchestrator + components).

  • Works in 3 steps: App-Level Service Locator → Visual-Logic-Syncers (VLS) → O(1) Component Registry
  • Building dashboards
  • SKILL.md covers Decision Gate — App vs…, The Core Philosophy, The Hierarchy of Power… and Available Scripts, plus 6 more sections
  • Settings panels

What it does

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.

When your agent uses it

  • Building dashboards
  • Settings panels
  • EditorPlugin UIs
  • Gameplay entities (Player/Enemy/Weapon/Hitbox) — route those to godot-composition

Example prompts

  • “/godot-composition-apps”

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. App-Level Service Locator
  2. Visual-Logic-Syncers (VLS)
  3. O(1) Component Registry

What it can do on your machine

Read from SKILL.md and the folder at commit 4c4d0ff. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 11 files in scripts/, which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • docs.godotengine.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

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.

Always · name and description, kept in context so the agent knows when to use it
~128
When it runs · the whole SKILL.md, loaded when a task matches
~3.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5k

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.

Safety

Auto-check passed

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.

SKILL.md

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.

Download SKILL.mdSave it as .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.
name
godot-composition-apps
description
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.

Godot Composition & Architecture (Apps & UI)

Decision Gate — App vs Gameplay Entity

Root node / taskRoute
Control, EditorPlugin, tool window, settings dock, form UIStay here — Orchestrator + components
Player, Enemy, Weapon, Hitbox, gameplay CharacterBodygodot-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.

The Core Philosophy

The Litmus Test (Rock Test)

Before writing a script, ask: "If I attached this script to a literal rock, would it still function?"

  • Pass: An AuthComponent on a rock allows the rock to log in. (Context Agnostic)
  • Fail: A 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.

The Backpack Model (Has-A > Is-A)

Treat the Root Node as an empty Backpack.

  • Wrong: SubmitButton extends AnimatedButton extends BaseButton.
  • Right: Root HAS-A AnimationComponent and HAS-A NetworkRequestComponent.

The Hierarchy of Power (Communication Rules)

DirectionSource → TargetMethodReason
DownwardOrchestrator → ComponentFunction CallManager owns the workers.
UpwardComponent → OrchestratorSignalsWorkers are blind.
SidewaysComponent A ↔ Component BFORBIDDENSiblings never talk directly.

Sideways Fix: Component A signals the Orchestrator; Orchestrator calls Component B.

Available Scripts

MANDATORY: Read the matching script before implementing the pattern. Do not reinvent Orchestrator wiring inline.

comp_rock_test_boilerplate.gd

MANDATORY first read — Attach-candidate-to-literal-rock harness that fails hard-coupled components early.

comp_orchestrator_base.gd

MANDATORY when creating any App/UI root — Signal-up / call-down wiring skeleton (0% business math).

comp_logic_visual_syncer.gd

MANDATORY for VLS — Logic emits state_changed; visuals/animations react without logic knowing AnimationPlayer/Theme.

comp_base_component.gd

Shared component lifecycle + dependency validation for app workers.

comp_dependency_injector.gd

Typed export / registry injection so Orchestrators avoid brittle $ paths.

clipboard_copier.gd

Context-agnostic clipboard worker — pairs with orchestrator toast pattern (see references).

comp_data_driven_config.gd

Resource-backed config for tool settings and form defaults.

comp_persistence_component.gd

MANDATORY for saveable UI/tool state — Registers Saveable group + get_save_data() without putting I/O in visuals.

comp_ability_sequencer.gd

Ordered multi-step tool workflows (wizard pages, export pipelines) as child steps.

comp_health_component.gd / comp_hitbox_component.gd

Only when an app/tool simulates entities; prefer godot-composition for real games.

The Orchestrator Pattern

Root script (LoginScreen.gd, UserProfile.gd, EditorPlugin dock root) is an Orchestrator:

  • Math/Logic: 0% · State wiring: 100%
  • Job: listen to component signals → call other component methods

MANDATORY: Extend patterns from comp_orchestrator_base.gd.

ConceptApp/UI Example
OrchestratorUserProfile.gd / Editor dock root
Logic componentAuthValidator
VLSAuthVisualSyncer via comp_logic_visual_syncer.gd
Theme ownershipSeparate theme component — never mutated inside form logic
Focus ownershipOrchestrator grants/releases Control focus; components never steal siblings' focus

Implementation Standards

  1. Type Safety — class_name on components; no untyped core architecture.
  2. Dependency Injection — @export var auth: AuthComponent (Inspector / %UniqueNames). NEVER get_node("Path/To/Child") for components.
  3. Stateless workers — Orchestrator passes data into functions; components do not scrape sibling Controls.

NEVER Do (Expert Architectural Rules)

Hierarchy & Dependencies
  • NEVER use get_parent() to fetch data — Inject via @export or function args.
  • NEVER talk sideways — Signal up; Orchestrator calls down.
  • NEVER use brittle Node Paths — Prefer @export / %.
Logic & State
  • NEVER put business logic in the Orchestrator — Only _on_signal delegators.
  • NEVER store global state in individual components — Shared Context Resource or Autoload.
  • NEVER assume a component's parent is a specific type — Rock Test failure.
Polish & Orchestration
  • NEVER skip signal cleanup — Disconnect on exit / use CONNECT_ONE_SHOT where appropriate.
  • NEVER let Logic know about Visuals — Emit; VLS / Orchestrator plays animations and applies Theme.

Fragile App Workflow: Saveable + Theme Ownership

Do not put save I/O or Theme mutation inside form Controls. Route through components:

  1. MANDATORY comp_persistence_component.gd on the Orchestrator (or a dedicated Saveable child) — add_to_group("Saveable") + get_save_data().
  2. Theme / StyleBox changes belong in a theme component (theme_manager.gd) called down by the Orchestrator after logic signals success/failure.
  3. Focus: Orchestrator owns grab_focus() after validation failures so logic stays Control-agnostic.
gdscript
# 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()

Expert Composition Patterns (Apps)

1. App-Level Service Locator

Prefer Engine.register_singleton() for lightweight non-Node services (Auth, Config) instead of dozens of Autoload Nodes [6].

2. Visual-Logic-Syncers (VLS)

MANDATORY comp_logic_visual_syncer.gd — logic never calls AnimationPlayer.play().

Show full SKILL.md (426 more words)Show less
3. O(1) Component Registry

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.

Reference

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.

Official Documentation
  • Scene organization — Canonical signal-up / call-down ownership so Orchestrators wire components without sibling coupling.
  • When and how to avoid using nodes for everything — Prefer Resources/RefCounted for pure data and logic services so components stay lean and rock-testable.
  • Godot interfaces — Duck-typed method contracts (has_method) that let composition work without deep inheritance trees.
  • What are Godot classes? — Why Godot favors scene composition (Has-A) over classical Is-A hierarchies for reusable behaviors.
  • Using signals — Upward component→Orchestrator events that keep workers blind to parents and siblings.
  • GDScript exports — Typed @export dependency injection that replaces brittle get_node paths in the Inspector.
  • Scene Unique Nodes — %UniqueName for Orchestrator-local Control/Button wiring without string path fragility.
  • Resources — Data-driven .tres configs so values stay outside logic components.
  • Groups — Mass registration (e.g. Saveable/Components) for Orchestrator registries without hard sibling refs.
  • Autoloads versus regular nodes — When a scene-local Orchestrator beats a global Autoload for app/UI composition.
  • Singletons (Autoload) — Safe registration of cross-scene services when a true app-level locator is justified.
  • Saving games — Persistence patterns that map cleanly onto modular saveable components.
Prerequisites
  • godot-project-foundations — Project layout, Autoload registration, and scene ownership that Orchestrators and components plug into.
  • godot-gdscript-mastery — Typed exports, signals, and class_name fluency required before dependency injection and rock-testable components.
  • godot-composition — Core Has-A component model (game-focused sibling); this skill specializes the same rules for Apps/Tools/UI.
Complements
  • godot-signal-architecture — Connect flags, ghost cleanup, and EventBus patterns Orchestrators use for upward wiring.
  • godot-autoload-architecture — Boot order and ownership when composition needs a thin global service instead of scene-local state.
  • godot-resource-data-patterns — Custom Resources and hot-swap .tres configs that feed data-driven components.
  • godot-ui-containers — Control trees that should signal intent upward while Orchestrators call down into layout.
  • godot-ui-theming — Theme/visual syncers stay separate from auth/form logic under the VLS pattern.
  • godot-scene-management — Scene swaps must re-inject exports and reconnect Orchestrator wiring without sideways sibling links.
  • godot-testing-patterns — Rock-test and signal spies that prove components stay context-agnostic.
Downstream / consumers
Master
  • godot-master — Library router and mirrored module entry; open when discovering which Domain Skill owns a cross-cutting architecture concern.

© 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

Files

SKILL.md and 16 other files (scripts, references) in skills/godot-composition-apps of thedivergentai/GD-Agentic-Skills.

  • SKILL.md
  • QA_REPORT.md
  • references/app-orchestrator-examples.md
  • references/migration-notes.md
  • resources/auth_component.gd
  • resources/theme_manager.gd
  • scripts/clipboard_copier.gd
  • scripts/comp_ability_sequencer.gd
  • scripts/comp_base_component.gd
  • scripts/comp_data_driven_config.gd
  • scripts/comp_dependency_injector.gd
  • scripts/comp_health_component.gd
  • scripts/comp_hitbox_component.gd
  • scripts/comp_logic_visual_syncer.gd
  • scripts/comp_orchestrator_base.gd
  • scripts/comp_persistence_component.gd
  • scripts/comp_rock_test_boilerplate.gd

Open the folder on GitHubat commit 4c4d0ff

Compare with similar skills

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.

Godot Composition Apps compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Godot Composition Apps this skillthedivergentai/GD-Agentic-Skills821—~3.6kAutomated safety check: PassLGPL-3.0
Dependency Injectionjame581/GodotPrompter805—~2.8kAutomated safety check: PassMIT
Component Systemjame581/GodotPrompter805—~3.3kAutomated safety check: PassMIT
Godot Gdscript Patterns925236118/AlphaAgent10310 repos~5kAutomated safety check: PassMIT
2D Map and Scene Generator0x0funky/agent-sprite-forge4.4k—~2.9kAutomated safety check: PassMIT
Godot UI Integrationzimo-xiao-zheng/godot-ui-integration285—~1.5kAutomated safety check: PassMIT

Similar skills

  • Dependency Injection

    jame581/GodotPrompter

    A skill your agent uses when managing dependencies between systems — autoloads, service locators, @export injection, and scene injection patterns

    805 GitHub stars~2.8k tokensUpdated yesterday
    Game DevelopmentAuto-check passed
  • Component System

    jame581/GodotPrompter

    A skill your agent uses when building reusable node components — composition patterns, component communication, and interface design

    805 GitHub stars~3.3k tokensUpdated yesterday
    Game DevelopmentAuto-check passed
  • Godot Gdscript Patterns

    925236118/AlphaAgent

    Master Godot 4 GDScript patterns including signals, scenes, state machines, and optimization.

    103 GitHub starsUsed in 10 repos~5k tokens
    Game DevelopmentAuto-check passed
  • 2D Map and Scene Generator

    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.

    4.4k GitHub stars~2.9k tokensUpdated 4 days ago
    Game DevelopmentAuto-check passed
  • Godot UI Integration

    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.

    285 GitHub stars~1.5k tokensUpdated 1 mo ago
    Game DevelopmentAuto-check passed
  • Godot Wechat Minigame Adapter

    godothub/godot-minigame

    Apply the bundled self-contained Godot WeChat Mini Game adapter kit to an official Godot checkout.

    187 GitHub stars~1.5k tokensUpdated 25 days ago
    Game DevelopmentAuto-check passed

More from thedivergentai/GD-Agentic-Skills

All 98 skills in this repo
  • Godot 2D Animation

    thedivergentai/GD-Agentic-Skills

    Expert patterns for 2D animation in Godot using AnimatedSprite2D and skeletal cutout rigs.

    821 GitHub stars~3.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Godot 3D World Building

    thedivergentai/GD-Agentic-Skills

    Expert patterns for 3D level design using GridMap with MeshLibrary, CSG constructive solid geometry, occlusion, and runtime GridMap builders.

    821 GitHub stars~3.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Godot Adapt 2D To 3D

    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…

    821 GitHub stars~4.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Godot Adapt 3D To 2D

    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…

    821 GitHub stars~4.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Godot Agent Vision

    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…

    821 GitHub stars~3.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Godot Animation Tree Mastery

    thedivergentai/GD-Agentic-Skills

    Expert patterns for AnimationTree including StateMachine transitions, BlendSpace2D for directional movement, BlendTree for layered animations, root motion, transition conditions, advance…

    821 GitHub stars~3.6k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Godot Composition Apps

What does Godot Composition Apps do?

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).

When should I use Godot Composition Apps?

Godot Composition Apps fits situations like: building dashboards; settings panels; editorPlugin UIs; gameplay entities (Player/Enemy/Weapon/Hitbox) — route those to godot-composition.

How do I install Godot Composition Apps in Claude Code?

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.

How do I install Godot Composition Apps in Codex?

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.

Can I use Godot Composition Apps in Cursor, Gemini CLI or GitHub Copilot?

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.

What does Godot Composition Apps need to run?

SKILL.md names no scripts, command-line tools or credentials: Godot Composition Apps is instructions for the agent only.

Does Godot Composition Apps access the network?

SKILL.md names 1 domain. As links in the text: docs.godotengine.org. This is read from the text; nothing was executed.

Is Godot Composition Apps safe to install?

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.

What licence does Godot Composition Apps use?

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.

How many tokens does Godot Composition Apps use?

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.

What are the alternatives to Godot Composition Apps?

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.

Who maintains Godot Composition Apps?

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.