Agent skill

Godot Gdscript Mastery

by thedivergentai in thedivergentai/GD-Agentic-Skills

Expert GDScript landmine guidance: static typing opcodes, signal-up/call-down, %UniqueName/@onready lifecycle, Callable bind/unbind, await sequences, typed collections, and safe Dictionary iteration.

LGPL-3.0Auto-check passedDevelopment

Install Godot Gdscript Mastery

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

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

GitHub CLI
$ gh skill install thedivergentai/GD-Agentic-Skills godot-gdscript-mastery --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-gdscript-mastery .claude/skills/godot-gdscript-mastery && 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-gdscript-mastery
GitHub stars
821
Token cost
~3.3k tokens
SKILL.md length
987 words
Files
18 (incl. scripts, references)
Skills in repo
98
Repo updated
First seen
Licence
LGPL-3.0

At a glance

Expert GDScript landmine guidance: static typing opcodes, signal-up/call-down, %UniqueName/@onready lifecycle, Callable bind/unbind, await sequences, typed collections, and safe Dictionary iteration.

  • Works in 5 steps: Strong Typing & Performance → Signal Architecture → Node Access & Lifecycle Safety → …
  • Refactoring hot paths
  • SKILL.md covers Do NOT Load, NEVER Do in GDScript, Core Directives (decision… and Script Catalog (all files), plus 3 more sections
  • Project standards

What it does

Godot Gdscript Mastery is an agent skill from thedivergentai/GD-Agentic-Skills. Expert GDScript landmine guidance: static typing opcodes, signal-up/call-down, %UniqueName/@onready lifecycle, Callable bind/unbind, await sequences, typed collections, and safe Dictionary iteration. Use for code review, refactoring hot paths, or project standards. Trigger keywords: statictyping, signalarchitecture, uniquenodes, @onready, classname, signalupcalldown, Callable.bind, typedcollections, awaitsequence.

Its SKILL.md is about 3.3k 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 `references/gdscript-core-directives.md`, `references/migration-notes.md` and `style_checklist.md`).

It sits in Development, covering Game development, Type safety and Refactoring. 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

  • Refactoring hot paths
  • Project standards
  • Keywords: statictyping
  • Signalarchitecture

Example prompts

  • “/godot-gdscript-mastery”

Workflow steps

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

  1. Strong Typing & Performance
  2. Signal Architecture
  3. Node Access & Lifecycle Safety
  4. Callable & Signal (First-Class)
  5. Async, Statics & Safe Collections

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 14 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 Gdscript Mastery loads about 3.3k tokens when it runs, and up to ~5.5k if it reads all its reference files. Until then it costs about 112 tokens; SKILL.md has 987 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~112
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.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). 987 words, ~3,323 tokens.

Download SKILL.mdSave it as .claude/skills/godot-gdscript-mastery/SKILL.md (or your agent's skills folder). This skill also uses 17 other files; get the full folder from GitHub.
name
godot-gdscript-mastery
description
Expert GDScript landmine guidance: static typing opcodes, signal-up/call-down, %UniqueName/@onready lifecycle, Callable bind/unbind, await sequences, typed collections, and safe Dictionary iteration. Use for code review, refactoring hot paths, or project standards. Trigger keywords: static_typing, signal_architecture, unique_nodes, @onready, class_name, signal_up_call_down, Callable.bind, typed_collections, await_sequence.

GDScript Mastery

Expert guidance for writing performant, maintainable GDScript — Godot-landmine decision trees, not a style-guide reprint.

Do NOT Load

  • Do not load this skill for general prose style or Godot engine version upgrades (3→4 / 4.x hops) — those live in godot-version-migration (plus official upgrading guides via that hub).
  • Do not preload every script below; open only the MANDATORY pointer for the Core Directive you are implementing.
  • Do not treat EditorScript utilities (type_checker, performance_analyzer, signal_architecture_validator) as runtime gameplay code.

NEVER Do in GDScript

  • NEVER use @onready and @export on the same variable — Initialization order will cause @onready to overwrite the Inspector value.
  • NEVER modify a Dictionary's size while iterating it — Use dict.keys().duplicate() or iterate a clone to safely erase elements.
  • NEVER use string-based connect("signal", ...) — Always use the Signal object syntax (button.pressed.connect(...)) for compile-time safety.
  • NEVER attempt to override non-virtual native engine methods — Overriding queue_free() or get_class() is unsupported and will be ignored by engine callbacks.
  • NEVER use dynamic get_node() or $ inside _process() — Fetching paths every frame stalls the CPU. Cache and use @onready.
  • NEVER use Parent.method() calls — Violates "Signal Up, Call Down". Use signals to communicate with parents.
  • NEVER use is followed by a hard cast — If the type check passes but the object changes, it crashes. Use as and check for null.
  • NEVER use print() for production debugging — Use push_error(), push_warning(), or breakpoints.
  • NEVER pre-load huge resources in _ready() — Use ResourceLoader.load_threaded_request() for async loading.
  • NEVER use global variables in Autoloads when static var is sufficient — Static variables offer better encapsulation.

Core Directives (decision trees + MANDATORY scripts)

1. Strong Typing & Performance
LandmineDecision
Hot path still Variant?Annotate vars/returns; prefer typed collections
Generic math in _process?Use typed helpers (absf, ceili, clampf)
Green safe-lines missing?Fix inference with := or explicit types

MANDATORY: typed_collections_mastery.gd, array_preallocation_perf.gd, type_checker.gd (EditorScript audit).

2. Signal Architecture
LandmineDecision
Child needs parent reaction?Emit signal up — never call parent methods
Cross-script payload unsafe?Typed signal name(arg: Type)
Connect visibility?Prefer _ready() connects over invisible editor-only wiring

MANDATORY: typed_signal_definitions.gd, signal_architecture_validator.gd.

3. Node Access & Lifecycle Safety
LandmineDecision
Need child nodes?@onready / %UniqueName — never in _init()
Scene-instanced node with ctor args?Use @export injection — _init(args) breaks PackedScene.instantiate()
Path lookup every frame?Cache once; never $ / get_node in _process

MANDATORY: safe_type_casting.gd.

4. Callable & Signal (First-Class)
LandmineDecision
Extra context on callback?Callable.bind(...)
Discard unused signal args?Callable.unbind(n)
One-off timeout logic?Inline lambda OK; keep refs if create_callback-style longevity matters

MANDATORY: callable_binding_context.gd, unbind_signal_args.gd, advanced_lambdas.gd, functional_lambda_logic.gd.

5. Async, Statics & Safe Collections
LandmineDecision
Sequence timers without threads?await chains — see await manager
Global state without Autoload bloat?static var (+ nullify large statics when done)
Erase while iterating Dictionary?Clone keys first

MANDATORY: await_sequence_manager.gd, static_var_singleton_alt.gd, dictionary_safe_iteration.gd, performance_analyzer.gd (EditorScript).

Script Catalog (all files)

ScriptWhen to open
typed_collections_mastery.gdTyped Array/Dictionary opcodes
functional_lambda_logic.gdreduce / all / any
advanced_lambdas.gdHigher-order Callables
safe_type_casting.gdas + null checks
typed_signal_definitions.gdTyped signal boundaries
callable_binding_context.gdbind() context injection
unbind_signal_args.gdunbind() arity trim
await_sequence_manager.gdNon-blocking await flows
array_preallocation_perf.gdresize() pre-alloc
static_var_singleton_alt.gdLightweight global state
dictionary_safe_iteration.gdSafe erase-while-iterate
type_checker.gdEditorScript typing audit
performance_analyzer.gdEditorScript hot-path scan
signal_architecture_validator.gdEditorScript signal-up checks

Quick Landmines

  • Prefer dict.get("key", default) over dict["key"] when presence is uncertain.
  • Toggle Access as Scene Unique Name and read via %Name for critical UI/nodes.
  • Script layout order: extends → class_name → signals/enums/consts → exports/onready → lifecycle → public → _private.

Expert knowledge (on demand)

LLM-ignorance rule: If a general agent would not know it before reading, load the reference — never delete expert deltas.

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.

Show full SKILL.md (391 more words)Show less
Official Documentation
  • GDScript basics — Language core for typed vars/funcs, signal declarations, await, and first-class Callables this skill standardizes.
  • GDScript style guide — Canonical script order (extends → class_name → signals → exports → lifecycle → methods) used in reviews and refactoring.
  • Static typing in GDScript — Why typed Arrays/Dictionaries and return types unlock optimized opcodes and editor safe-lines.
  • GDScript: An introduction to dynamic languages — Lambdas, higher-order Callables, and advanced patterns behind filter/map/reduce helpers.
  • GDScript warning system — Turn unsafe casts, unused signals, and untyped hot paths into CI-visible warnings.
  • Logic preferences — When to prefer declarative signals vs imperative calls so scripts stay decoupled.
  • Scene organization — Official “signal up, call down” ownership rules this skill enforces.
  • Using signals — Connect/emit model and why string-based connect-by-name is avoided.
  • Callable — bind() / unbind() APIs for injecting or discarding callback arguments without wrapper nodes.
  • Array — Typed arrays, resize(), and functional methods (filter/map/reduce/all/any) used in the scripts.
  • Dictionary — Safe .get() defaults and why size must not change while iterating keys.
  • CPU optimization — Cache @onready / %UniqueName instead of get_node/$ inside _process loops.
Prerequisites
  • godot-project-foundations — Project layout, Autoload registration, and scene ownership conventions that typed GDScript scripts plug into.
  • godot-composition — Component boundaries clarify which scripts own signals vs call-down APIs before style enforcement.
Complements
Downstream / consumers
  • godot-performance-optimization — Escalate when typed GDScript alone is not enough; servers, pooling, and broader CPU/GPU tactics live there.
  • godot-auditor — Project-wide audits consume the typing, signal-up, and hot-path rules codified in this skill.
  • godot-ability-system — Abilities need typed signal payloads and await-safe cooldowns grounded in these language patterns.
  • godot-combat-system — Damage/death fan-out depends on typed emits and safe casts taught here.
Master
  • godot-master — Library router and mirrored module entry; open when discovering which Domain Skill owns a cross-cutting scripting 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 17 other files (scripts, references) in skills/godot-gdscript-mastery of thedivergentai/GD-Agentic-Skills.

  • SKILL.md
  • references/gdscript-core-directives.md
  • references/migration-notes.md
  • scripts/advanced_lambdas.gd
  • scripts/array_preallocation_perf.gd
  • scripts/await_sequence_manager.gd
  • scripts/callable_binding_context.gd
  • scripts/dictionary_safe_iteration.gd
  • scripts/functional_lambda_logic.gd
  • scripts/performance_analyzer.gd
  • scripts/safe_type_casting.gd
  • scripts/signal_architecture_validator.gd
  • scripts/static_var_singleton_alt.gd
  • scripts/type_checker.gd
  • scripts/typed_collections_mastery.gd
  • scripts/typed_signal_definitions.gd
  • scripts/unbind_signal_args.gd
  • style_checklist.md

Open the folder on GitHubat commit 4c4d0ff

Compare with similar skills

Godot Gdscript Mastery 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 Gdscript Mastery compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Godot Gdscript Mastery this skillthedivergentai/GD-Agentic-Skills821—~3.3kAutomated safety check: PassLGPL-3.0
Gdscript Patternsjame581/GodotPrompter805—~3.5kAutomated safety check: PassMIT
Godot Best Practicesjwynia/agent-skills170—~3.2kAutomated safety check: PassMIT
Issue Triagemicrosoft/XBOX-Godot-Sample237—~2.5kAutomated safety check: PassMIT
GdtoolkitRandallLiuXin/GodotMaker5501 repos~2.2kAutomated safety check: PassCustom licence
Refactoring CodeJetBrains/skills3661 repos~1.9kAutomated safety check: PassNone

Similar skills

  • Gdscript Patterns

    jame581/GodotPrompter

    A skill your agent uses when writing GDScript — static typing, await/coroutines, lambdas, match patterns, export annotations, inner classes, and common idioms

    805 GitHub stars~3.5k tokensUpdated yesterday
    Game DevelopmentAuto-check passed
  • Godot Best Practices

    jwynia/agent-skills

    Guide AI agents through Godot 4.x GDScript coding best practices including scene organization, signals, resources, state machines, and performance optimization.

    170 GitHub stars~3.2k tokensUpdated 7 mo ago
    Game DevelopmentAuto-check passed
  • Issue Triage

    microsoft/XBOX-Godot-Sample

    Official

    First-pass evaluation of a GitHub issue against this repository's code: classify it, find the relevant code, reason about likely causes or fit, flag version differences and missing information, and…

    237 GitHub stars~2.5k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • Gdtoolkit

    RandallLiuXin/GodotMaker

    Lint and format GDScript files using gdtoolkit (gdlint + gdformat).

    550 GitHub starsUsed in 1 repo~2.2k tokens
    DevelopmentAuto-check passed
  • Refactoring Code

    JetBrains/skills

    Official

    A skill your agent uses when semantic refactoring is needed in Rider-supported solutions and projects, including .NET/C, F, VB, C++, Unity, Unreal Engine, XAML, Razor, and other GameDev or…

    366 GitHub starsUsed in 1 repo~1.9k tokens
    DevelopmentAuto-check passed
  • Describes seven Rust design patterns for the RTK CLI filter modules, with when to use each, RTK examples, and notes on when a pattern is overkill.

    83k GitHub stars~1.9k tokensUpdated yesterday
    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 Gdscript Mastery

What does Godot Gdscript Mastery do?

Expert GDScript landmine guidance: static typing opcodes, signal-up/call-down, %UniqueName/@onready lifecycle, Callable bind/unbind, await sequences, typed collections, and safe Dictionary iteration. Godot Gdscript Mastery is an agent skill from thedivergentai/GD-Agentic-Skills. Expert GDScript landmine guidance: static typing opcodes, signal-up/call-down, %UniqueName/@onready lifecycle, Callable bind/unbind, await sequences, typed collections, and safe Dictionary iteration.

When should I use Godot Gdscript Mastery?

Godot Gdscript Mastery fits situations like: refactoring hot paths; project standards; keywords: statictyping; signalarchitecture.

How do I install Godot Gdscript Mastery in Claude Code?

Run `npx skills add thedivergentai/GD-Agentic-Skills --skill godot-gdscript-mastery -a claude-code`. Or copy the skill folder (skills/godot-gdscript-mastery in thedivergentai/GD-Agentic-Skills) into .claude/skills/godot-gdscript-mastery in your project. Claude Code loads it when a task matches its description.

How do I install Godot Gdscript Mastery in Codex?

Run `npx skills add thedivergentai/GD-Agentic-Skills --skill godot-gdscript-mastery -a codex`. Or copy the skill folder (skills/godot-gdscript-mastery in thedivergentai/GD-Agentic-Skills) into .agents/skills/godot-gdscript-mastery in your project. Codex loads it when a task matches its description.

Can I use Godot Gdscript Mastery 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-gdscript-mastery -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-gdscript-mastery, .gemini/skills/godot-gdscript-mastery, .github/skills/godot-gdscript-mastery and .opencode/skills/godot-gdscript-mastery in your project.

What does Godot Gdscript Mastery need to run?

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

Does Godot Gdscript Mastery 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 Gdscript Mastery 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 Gdscript Mastery use?

Godot Gdscript Mastery 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 Gdscript Mastery use?

About 3.3k tokens (SKILL.md is roughly 13k 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 2.2k tokens, read only when the agent opens those files.

What are the alternatives to Godot Gdscript Mastery?

Skills that share tags, products or a category with Godot Gdscript Mastery: Gdscript Patterns (jame581/GodotPrompter, 805 stars), Godot Best Practices (jwynia/agent-skills, 170 stars), Issue Triage (microsoft/XBOX-Godot-Sample, 237 stars) and Gdtoolkit (RandallLiuXin/GodotMaker, 550 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Godot Gdscript Mastery?

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.