con un clic
puzzle-author
Create high-quality Rust learning puzzles for experienced programmers.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Create high-quality Rust learning puzzles for experienced programmers.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
Create reverse Rust puzzles with intentional, educational bugs.
Review reverse Rust puzzles for realism, focus, and teaching value.
Help record Rust learning progress, mistakes, debug attempts, and concept gaps.
Review Rust puzzles for quality, correctness, and learning value.
| name | puzzle-author |
| description | Create high-quality Rust learning puzzles for experienced programmers. |
Create Rust puzzles for a learner who already knows Python, TypeScript, C++, Java, and Go.
The goal is to teach Rust-specific thinking, not programming basics.
Use these themes for standalone puzzles:
Result-based parsersUse P00 only for bundled syntax warmups.
Use P01 for small transition exercises that still require Rust-specific thinking.
Use P10+ for normal standalone puzzles.
A new standalone puzzle should usually be P10 or above.
Do not create standalone trivial puzzles. If a simple concept is needed, add it to a P00 gym or as a small subtask inside a higher-level puzzle.
Each puzzle directory must include:
Cargo.tomlREADME.mdPuzzle.tomlsrc/lib.rstests/judge.rsStarter code should compile.
Use todo!() for unimplemented functions unless the puzzle intentionally teaches a compiler error.
Avoid giving the full solution in comments.
Tests should include:
Tests should be deterministic and use only the standard library unless there is a strong reason otherwise.
Puzzle.toml must include:
id = "p20_example"
title = "Example"
level = "P20"
track = "lifetime"
difficulty = "medium"
status = "active"
topics = ["&str", "lifetime"]
estimated_minutes = 45