0
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill chen19007/my_skills --skill godot-tdd-full- SKILL.md21.6 KB
Overview
This skill implements a complete Test-Driven Development (TDD) workflow tailored for Godot projects. It integrates interface design, GUT test development, GDScript implementation conventions, and verification tools so you can deliver robust, testable Godot features. The workflow enforces user review points and repeatable cycles from design to verification and refactor.
How this skill works
The skill drives a phased TDD loop: design (generate design.md and related specs), wait for user approval, then create failing tests (red), implement the minimum code to pass tests (green), and run verification checks (lint/format). It supports GUT test scaffolding, singleton mocking strategies, GDScript style rules, and automated checks like gdlint and gdformat. Actions include start, approve_design, next_phase, run_tests, and verify to control the flow.
When to use it
- Adding a new feature that must follow explicit interface contracts
- Enforcing consistent, test-first development across a Godot team
- Creating integration tests for UI and manager interactions
- Automating linting and formatting checks before merge
- Teaching or enforcing TDD practices in Godot projects
Best practices
- Always wait for explicit user approval of design.md before writing tests or implementation
- Provide test-friendly query methods (getters/is_* functions) for state assertions
- Keep implementations strictly aligned with interface design; cycle back to design for any API changes
- Use partial doubles for Autoload singletons when you need most behavior preserved
- Follow GDScript style: type annotations, @onready, private vars with underscore
Example use cases
- Start a Player damage feature: generate design.md, approve, add failing GUT tests, implement Player.take_damage, run verify and tests
- Add a UI-manager integration test to catch incorrect method names between modules
- Introduce a new Autoload and use partial_double_singleton to test interactions without breaking other behaviors
- Run gdlint and gdformat as part of verify to ensure code quality before merge
- Create parameterized tests for boundary conditions (damage values, health limits)
FAQ
Stop and update the design.md first. Propose the API change in design, get user approval, update tests, then reimplement. Directly changing code signatures is prohibited.
How do I run tests from CLI?
Use Godot with the GUT command-line script: godot --path <project> -s addons/gut/gut_cmdln.gd [options] (use -gtest, -gselect, -gexit as needed).