This is a strict architectural style guide for building Godot games using composition instead of inheritance hierarchies. You get nine ready-to-use components (health, hitbox, velocity, state machine, status effects) plus wiring patterns that enforce single responsibility through what it calls the "Orchestrator" model. The parent node does no logic, just connects specialized worker nodes via signals up and method calls down. It's opinionated about avoiding get_node calls, deep inheritance chains, and mixing input with physics. Best for mid-sized projects where you're tired of refactoring brittle player controllers or want to share combat logic between enemies and NPCs without copy-pasting. The "never" section is longer than the implementation examples, which tells you what kind of discipline this expects.

skills.sh installs
326
GitHub stars
464
last updated
Aug 21, 2026

Install

$ npx -y skills add thedivergentai/gd-agentic-skills --skill godot-composition --agent claude-code

Installs into .claude/skills of the current project.

Files

Core Philosophy

This skill enforces Composition over Inheritance ("Has-a" vs "Is-a"). In Godot, Nodes are components. A complex entity (Player) is simply an Orchestrator managing specialized Worker Nodes (Components).

The Golden Rules

  1. Single Responsibility: One script = One job.
  2. Encapsulation: Components are "selfish." They handle their internal logic but don't know who owns them.
  3. The Orchestrator: The root script (e.g., player.gd) does no logic. It only manages state and passes data between components.
  4. Decoupling: Components communicate via Signals (up) and Methods (down).

Decision Tree — Composition vs Autoload vs Inheritance

SituationChoose
Gameplay entity behaviors (HP, hitbox, move, interact)Composition — child components + orchestrator (composition_root_init.gd)
Cross-scene services (audio bus, save, net, economy ledger)Autoload — not a component on the player
True is-a engine specialization (custom Control/Node with shared lifecycle)Inheritance exception — rare; never for "adds a gun" / "adds HP"

Sponsors

Details

Repository
github.com/thedivergentai/gd-agentic-skills
Categories
Frontend Development, AI & Agent Building, Cloud & Infrastructure, Design & UI/UX, Game Development
First seen
Jun 3, 2026

More from thedivergentai/gd-agentic-skills

All 51
1glebis avatarpresentation-generatorglebis/claude-skillsGenerate interactive HTML presentations with neobrutalism styling, ASCII art decorations, and Agency brand colors. Outputs HTML (interactive with navigation), P325skills.sh installs
2base avatarconverting-minikit-to-farcasterbase/skillsConverts Mini Apps from MiniKit (OnchainKit) to native Farcaster SDK. Use when migrating from @coinbase/onchainkit/minikit, converting MiniKit hooks, removing M317skills.sh installs
3ndpvt-web avatarlatex-documentndpvt-web/latex-document-skillUniversal LaTeX document skill: create, compile, and convert any document to professional PDF with PNG previews. Supports resumes, reports, cover letters, invoi317skills.sh installs
4patricio0312rev avataropenapi-generatorpatricio0312rev/skillsGenerates OpenAPI 3.0/3.1 specifications from Express, Next.js, Fastify, Hono, or NestJS routes. Creates complete specs with schemas, examples, and documentatio316skills.sh installs
5jamditis avatarelectron-devjamditis/claude-skills-journalismElectron desktop application development with React, TypeScript, and Vite. Use when building desktop apps, implementing IPC communication, managing windows/tray315skills.sh installs
6jezweb avatarvercel-kvjezweb/claude-skillsIntegrate Redis-compatible Vercel KV for caching, session management, and rate limiting in Next.js. Powered by Upstash with strong consistency and TTL support. 314skills.sh installs