← LeaderboardThe Skill Leaderboard

bevy-rea

Skill file skills/bevy-rea/SKILL.md in thedivergentai/Game-Dev-Agentic-Skills. Read the publisher’s upstream source.

Description awaits a fresh source check.

Published by thedivergentai ↗thedivergentai/Game-Dev-Agentic-Skills

Try your first task

Emit Bevy stubs from an evidence ledger

Start a fresh conversation. Replace the highlighted placeholders.

Use bevy-rea to scaffold a Bevy 0.20 crate at [output path] from [GDAS-reader ledger path], only after gdas-reader has run and the ledger scores at least 3. Use project-foundations context and emit_project.py: one Plugin and empty Update system for every entry, including unknowns, plus comments naming ID/status/evidence/suggested skill and COVERAGE.md with limits. Return the crate, self-test result, and band-4 coverage assessment. Add no inferred gameplay, components, Resources, decompiled Rust, or Godot types. Default to placeholders; asset bytes require both explicit --allow-assets and a nonblank, non-unspecified entry license. Use the linked GDAS-reader location, never an assumed sibling path.

Required inputs

  • GDAS-reader ledger path
  • output path
  • ledger score and limits
  • explicit asset-copy choice if requested

User-approved starter prompt based on a pinned source version; check current skill requirements before running. Task evidence ↗

SKILL.md

name: bevy-readescription: "Emit a Bevy 0.20 crate from a GDAS-reader evidence ledger. Each confirmed or unknown entry becomes a plugin stub. Use after gdas-reader, not as a decompiler. Keywords: bevy-rea, reconstruction, ledger, emit_project, Bevy 0.20."

bevy-rea

Turn a GDAS-reader ledger into a Bevy 0.20 crate. Plugins are stubs. They do not reimplement the artifact.

When to use

Load this when the ledger exists and the reconstruction target is Bevy. Run GDAS-reader first. Score that ledger at least 3 before emitting.

python skills/gdas-reader/scripts/read_artifact.py P:\artifact --out P:\work\ledger.json
python skills/bevy-rea/scripts/emit_project.py P:\work\ledger.json --out P:\work\bevy-crate
python skills/bevy-rea/scripts/emit_project.py --self-test

ECS shape

  • Crate: bevy = "0.20" with the dev opt-level split from bevy-project-foundations.
  • App: App::new(), DefaultPlugins, then one plugin per ledger entry.
  • Components: none until the suggested skill adds them. A stub system takes no Query.
  • Resources: none by default. A score or config from a partial string stays out of the crate.
  • Systems: tick_<id> on Update. The body is empty.

unknown entries still get a plugin so COVERAGE.md matches the module tree.

What gets written

PathRole
Cargo.tomlPackage reconstructed, Bevy 0.20.
src/main.rsDefaultPlugins plus feature plugins.
src/features/<id>.rsPlugin and empty system. Comment names ledger id, status, evidence, and the Bevy skill to load.
placeholders/ or assets/Placeholders when that entry's license is blank or unspecified. Copied bytes when --allow-assets and that entry's license are both set.
COVERAGE.mdLimits and one line per entry.

NEVER

  • NEVER add a Health component because a symbol was named apply_damage. That entry is a stub until bevy-combat-system is loaded and the behavior is confirmed.
  • NEVER copy asset bytes unless --allow-assets is set and that entry's license is not blank or unspecified. An unspecified license means the bytes are not yours to vendor.
  • NEVER decompile native code or WASM into Rust. A stub is not a disassembly. Invented Rust from those bytes fails the honesty rubric.
  • NEVER point this skill at a relative ../gdas-reader path. Install layouts have no sibling folder. Use the GitHub URL in Related Skills.
  • NEVER add Godot nodes, signals, or autoloads to the crate. Those types are not Bevy. Ownership stays a Plugin and an empty Update system until the suggested skill adds a Component.

Honesty rubric

BandRule
0A system mutates gameplay state the ledger did not confirm.
1Coverage drops an unknown id or omits limits.
2Plugins exist but comments omit the Bevy skill.
3Every entry is a plugin with an empty system and a coverage line.
4bevy = "0.20" and DefaultPlugins. Assets are placeholders, or a licensed copy named from the module when --allow-assets was set.

Ship at band 4.

Schedule rules: references/ledger-to-ecs.md.

Available Scripts

emit_project.py

Reads ledger JSON and writes the crate. --self-test checks the pin, the empty system, and that a damage-shaped name does not declare health.

Reference

Official Documentation

  • Getting started — App setup the emitter follows.
  • Plugins — Plugin, DefaultPlugins, and add_plugins.
  • ECS — Systems stay empty until a Domain Skill adds components.
  • App — App::new and add_plugins.
  • Plugin — one impl per ledger id.
  • Update — schedule for the empty stub.

Related Skills

Prerequisites

Complements

Downstream / consumers

Master

  • bevy-master — Router when the suggested skill is the wrong chain.
bevy-rea by thedivergentai · The Skill Leaderboard