Babysitter godot-gdscript

GDScript programming skill for Godot Engine, including signals, coroutines, and performance optimization.

install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/game-development/skills/godot-gdscript" ~/.claude/skills/a5c-ai-babysitter-godot-gdscript && rm -rf "$T"
manifest: library/specializations/game-development/skills/godot-gdscript/SKILL.md
source content

Godot GDScript Skill

GDScript programming for Godot Engine development.

Overview

This skill provides capabilities for implementing game logic using GDScript, Godot's Python-like scripting language.

Capabilities

Language Features

  • Classes and inheritance
  • Signals and connections
  • Coroutines with await
  • Static typing

Node Interaction

  • Scene tree navigation
  • Node references
  • Group management
  • Signal connections

Performance

  • Object pooling patterns
  • Cache node references
  • Optimize loops
  • Use typed arrays

Best Patterns

  • State machines
  • Singletons (autoload)
  • Resource management
  • Export variables

Prerequisites

  • Godot 4.0+
  • GDScript knowledge

Usage Patterns

Signal Pattern

class_name Player extends CharacterBody2D

signal health_changed(new_health: int)
signal died

@export var max_health: int = 100
var health: int = max_health

func take_damage(amount: int) -> void:
    health = max(0, health - amount)
    health_changed.emit(health)
    if health <= 0:
        died.emit()

Coroutine Pattern

func spawn_enemies() -> void:
    for i in range(10):
        spawn_enemy()
        await get_tree().create_timer(1.0).timeout

Best Practices

  1. Use static typing
  2. Cache node references in _ready
  3. Use signals for decoupling
  4. Prefer composition over inheritance
  5. Profile with built-in profiler

References