The Debugging Kit is designed to work in automated pipelines. Here are examples for common CI/CD systems.
Runs static checks before every commit — fast (~3 seconds), catches config/syntax errors early.
.github/workflows/pre-commit-checks.yml:
name: Pre-Commit Debugging Kit Checks
on:
pull_request:
push:
branches:
- main
- develop
jobs:
debug-kit-checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Run Debugging Kit Quick Mode
run: |
bash ./.claude/skills/debug-kit/driver.sh 1When to use: Every PR, every commit. Catches typos and obvious issues fast.
Runs full gameplay testing before release — slower (~20 seconds), verifies game stability.
.github/workflows/release-testing.yml:
name: Release Testing — Debugging Kit Autoplay
on:
push:
tags:
- 'v*'
jobs:
autoplay-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Godot 4.6
run: |
wget -q https://github.com/godotengine/godot-builds/releases/download/4.6-stable/Godot_v4.6-stable_linux.x86_64.zip
unzip -q Godot_v4.6-stable_linux.x86_64.zip
chmod +x Godot_v4.6-stable_linux.x86_64/Godot_v4.6-stable_linux.x86_64
- name: Update debug_config.json with Godot path
run: |
python3 << 'EOF'
import json
with open('debug_config.json', 'r') as f:
config = json.load(f)
config['godot_executable'] = './Godot_v4.6-stable_linux.x86_64/Godot_v4.6-stable_linux.x86_64'
with open('debug_config.json', 'w') as f:
json.dump(config, f, indent=2)
EOF
- name: Run Debugging Kit Autoplay Mode
run: |
bash ./.claude/skills/debug-kit/driver.sh 2
- name: Report Results
if: failure()
run: |
echo "❌ Autoplay test failed. Check logs above for invariant violations."
exit 1When to use: Before cutting a release. Ensures the game runs without crashing under random input.
Comprehensive testing — slowest (~30 seconds), for pre-release QA.
.github/workflows/full-testing.yml:
name: Full Debugging Kit Analysis
on:
schedule:
- cron: '0 22 * * *' # Nightly at 10 PM UTC
workflow_dispatch:
jobs:
full-analysis:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install Godot 4.6
run: |
wget -q https://github.com/godotengine/godot-builds/releases/download/4.6-stable/Godot_v4.6-stable_linux.x86_64.zip
unzip -q Godot_v4.6-stable_linux.x86_64.zip
chmod +x Godot_v4.6-stable_linux.x86_64/Godot_v4.6-stable_linux.x86_64
- name: Update debug_config.json with Godot path
run: |
python3 << 'EOF'
import json
with open('debug_config.json', 'r') as f:
config = json.load(f)
config['godot_executable'] = './Godot_v4.6-stable_linux.x86_64/Godot_v4.6-stable_linux.x86_64'
with open('debug_config.json', 'w') as f:
json.dump(config, f, indent=2)
EOF
- name: Run Debugging Kit Full Mode
run: |
bash ./.claude/skills/debug-kit/driver.sh 3
- name: Archive Results
if: always()
uses: actions/upload-artifact@v3
with:
name: debug-kit-results
path: debug_kit_results/When to use: Nightly builds, scheduled QA runs. Generates deep analysis for archive.
.gitlab-ci.yml:
debug-kit-quick:
stage: test
image: python:3.10
script:
- bash ./.claude/skills/debug-kit/driver.sh 1
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCHWhen to use: Catch errors early in merge requests.
.git/hooks/pre-commit:
#!/bin/bash
# Debugging Kit pre-commit hook
echo "Running Debugging Kit Quick Mode..."
bash ./.claude/skills/debug-kit/driver.sh 1
if [ $? -ne 0 ]; then
echo "❌ Pre-commit checks failed. Fix issues before committing."
exit 1
fi
echo "✅ Pre-commit checks passed!"
exit 0Setup:
chmod +x .git/hooks/pre-commitWhen to use: Local development, ensures every commit passes basic checks.
FROM ubuntu:22.04
# Install Godot 4.6
RUN apt-get update && apt-get install -y wget unzip python3
RUN wget -q https://github.com/godotengine/godot-builds/releases/download/4.6-stable/Godot_v4.6-stable_linux.x86_64.zip && \
unzip -q Godot_v4.6-stable_linux.x86_64.zip && \
chmod +x Godot_v4.6-stable_linux.x86_64/Godot_v4.6-stable_linux.x86_64
WORKDIR /game
COPY . .
# Run Debugging Kit
CMD ["bash", "./.claude/skills/debug-kit/driver.sh", "2"]Build and run:
docker build -t my-game-tests .
docker run my-game-testsFor most projects, start with:
- GitHub Actions + Quick Mode (PR checks, every commit)
- GitHub Actions + Autoplay Mode (Pre-release tags)
- Local pre-commit hook (Developer convenience)
This catches errors at multiple stages without slowing down the workflow.
| Error | Solution |
|---|---|
godot_executable: command not found |
Update .github/workflows/ to specify Godot path after download |
Config file not found |
Ensure debug_config.json exists in repo root |
Input action not defined |
Check that debug_config.json has been configured for your project |
Timeout |
Autoplay running too long; reduce test_duration_seconds or run Quick mode instead |
Questions? See HOW_TO_USER.md and HOW_TO_CLAUDE.md for more details.