authoring-godot-prompt…
Use when writing or editing a SKILL.md, a skill's references/*.md, or an agent definition in this repo — required frontmatter,…
Use when designing a new Godot feature or system — scene tree, node choice, and architecture decisions. Not for non-Godot work or changes to existing code
Claude Code
$ npx -y skills add jame581/GodotPrompter --skill godot-brainstorming --agent claude-code
Codex
$ npx skills add jame581/GodotPrompter --skill godot-brainstorming -a codex -y
Cursor
$ npx skills add jame581/GodotPrompter --skill godot-brainstorming -a cursor -y
Gemini CLI
$ npx skills add jame581/GodotPrompter --skill godot-brainstorming -a gemini-cli -y
GitHub Copilot
$ npx skills add jame581/GodotPrompter --skill godot-brainstorming -a github-copilot -y
OpenCode
$ npx skills add jame581/GodotPrompter --skill godot-brainstorming -a opencode -y
Windsurf
$ npx skills add jame581/GodotPrompter --skill godot-brainstorming -a windsurf -y
name: godot-brainstorming description: Use when designing a new Godot feature or system — scene tree, node choice, and architecture decisions. Not for non-Godot work or changes to existing code
A structured design process for Godot 4.3+ features and systems — from blank slate to a clear scene tree, signal map, and data flow before you write a single line of implementation code.
> **Related skills:** **godot-grill** for settling open design decisions first, **scene-organization** for scene tree composition patterns, **component-system** for component-based architecture, **event-bus** for signal-based communication design.
---
Do NOT jump straight to designing. Follow these steps:
If the request has open design decisions (scope, dimension, authority, data home, …), invoke `godot-prompter:godot-grill` and let it run to its end. Skip it when a record in the project's decisions or ADR directory already covers this feature, or the user has stated the decisions. Either way, check what already exists (code, scenes, assets). Carry the record into Step 2 — approaches must respect its settled rows.
With the decisions settled, propose architectural options with trade-offs. For example:
Lead with your recommendation and explain why.
Present the design section by section (scene tree, signal map, data flow). Ask "does this look right?" after each section before continuing.
After the design is approved:
1. **Offer the agent instructions section** — Ask whether to add the GodotPrompter integration section to the file this project already uses for agent instructions (see Agent Instructions Injection below). It is what tells subagents and future sessions to use GodotPrompter skills. Skip silently if a `## GodotPrompter` section already exists in any of them, or if the user has declined before. Never add it without agreement.
2. **Create implementation plan** — If a planning skill is available (e.g., `superpowers:writing-plans`), use it; if not, break the design into ordered tasks yourself. Either way the project decides where the plan is saved: the user's instructions or the project's agent instructions file; then the planning skill's convention; then an existing plans directory. If none applies, ask the user, suggesting `docs/plans/`, or use `docs/plans/` when you cannot ask.
3. **Annotate each task with skills** — Every task in the plan that involves a Godot system MUST list which `godot-prompter:*` skill(s) to invoke during implementation. Example:
Skills: `godot-prompter:player-controller`, `godot-prompter:input-handling`
This ensures that even when another plugin executes the plan, the implementing agent knows which GodotPrompter skills to load.
---
Start here whenever you are:
If you already know exactly what nodes you need and how they connect, skip this skill and build. Use it when uncertainty is slowing you down.
---
Sketch the scene tree on paper (or in a comment block) before opening the Godot editor. The goal is to answer three questions for every node:
1. **What does this node own?** (data, child nodes, visual representation) 2. **What does this node do?** (its single responsibility) 3. **How does it talk to neighbors?** (signals up, method calls down, EventBus sideways)
1. Name the root node and its type — this defines the scene's contract with the world. 2. List immediate children by responsibility group, not by Godot node type. 3. Assign a Godot node type to each entry. 4. Identify every signal the scene emits and every signal it consumes. 5. Mark which nodes should be separate `.tscn` files (reuse candidates).
**Step 1 — Name and root type**
A `Chest` is a world object the player walks up to and opens. It is not a physics body; it does not move. Root: `StaticBody2D` or `Node2D`.
**Step 2 — Responsibility groups**
**Step 3 — Assign node types**
Chest (StaticBody2D) ├── Sprite2D # closed/open frame, or swap texture on open ├── AnimationPlayer # open animation ├── CollisionShape2D # physical body shape (blocks player) ├── InteractionArea (Area2D) # detect when player is close enough │ └── CollisionShape2D # slightly larger than body shape ├── PromptLabel (Label3D or Label) # "Press F to open" └── LootTable (Node) # holds @export var items: Array[ItemData]
**Step 4 — Signal map**
| Signal | Emitted by | Connected to | Purpose | |---|---|---|---| | `body_entered(body)` | `InteractionArea` | `Chest._on_area_body_entered` | Show prompt when player enters range | | `body_exited(body)` | `InteractionArea` | `Chest._on_area_body_exited` | Hide prompt when player leaves | | `opened(loot: Array[ItemData])` | `Chest` | `InventorySystem` or `EventBus` | Deliver loot to whoever owns the inventory | | `animation_finishe
Agentic skills framework for Godot 4.x game development. Gives AI coding agents domain-specific expertise for GDScript and C# projects.
Use when writing or editing a SKILL.md, a skill's references/*.md, or an agent definition in this repo — required frontmatter,…
Use when cutting a GodotPrompter release or bumping its version — the version-bump sequence, tag-triggered workflow, and the…
Use when working with 2D-specific systems — TileMaps, parallax scrolling, 2D lights and shadows, canvas layers, particles 2D,…
Use when working with 3D-specific systems — materials, lighting, shadows, environment, global illumination, fog, LOD, occlusion…
Use when building or replacing an ability system — abilities with cost/cooldown, buffs/debuffs, stat modifiers, and gameplay…
Use when creating Godot editor plugins — EditorPlugin, @tool scripts, custom inspectors, and dock panels
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.