Debug the playroom tidy loop (Track 12) — trace one run state by state, see every release, landing and fall with context, and re-measure the walker facts the brain's constants rest on.

Apache-2.0Auto-check passed

Install Tidy Trace

skills CLI
$ npx skills add jonathanhawkins/microduck-lab --skill tidy-trace -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jonathanhawkins/microduck-lab tidy-trace --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jonathanhawkins/microduck-lab.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/tidy-trace .claude/skills/tidy-trace && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
tidy-trace
GitHub stars
132
Token cost
~1.1k tokens
SKILL.md length
615 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

Debug the playroom tidy loop (Track 12) — trace one run state by state, see every release, landing and fall with context, and re-measure the walker facts the brain's constants rest on.

  • Works in 2 steps: trace-tidy — one run under a microscope → walker-facts — measure, don't assume
  • Eval-tidys numbers drop
  • SKILL.md covers 1. trace-tidy — one run under…, 2. walker-facts — measure,… and Rules of thumb that came out…
  • Calls uv

What it does

Tidy Trace is an agent skill from jonathanhawkins/microduck-lab. Debug the playroom tidy loop (Track 12) — trace one run state by state, see every release, landing and fall with context, and re-measure the walker facts the brain's constants rest on. Use when eval-tidy's numbers drop, a duck stalls or falls near the basket, or after changing the walker, the MJCF, tidy.py or the detector.

Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Train RL policies for the Pollen Microduck 🦆 on an ordinary Mac, no CUDA GPU, and watch them learn live in the browser. The licence is Apache-2.0.

When your agent uses it

  • Eval-tidys numbers drop
  • Falls near the basket
  • After changing the walker

Example prompts

  • “s constants rest on. Use when eval-tidy”
  • “/tidy-trace”

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. trace-tidy — one run under a microscope
  2. walker-facts — measure, don't assume

What it can do on your machine

Read from SKILL.md and the folder at commit bbf0326. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Tidy Trace loads about 1.1k tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 615 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jonathanhawkins/microduck-lab at commit bbf0326, republished under its Apache-2.0 licence (© jonathanhawkins). 615 words, ~1,144 tokens.

Download SKILL.mdSave it as .claude/skills/tidy-trace/SKILL.md (or your agent's skills folder).
name
tidy-trace
description
Debug the playroom tidy loop (Track 12) — trace one run state by state, see every release, landing and fall with context, and re-measure the walker facts the brain's constants rest on. Use when eval-tidy's numbers drop, a duck stalls or falls near the basket, or after changing the walker, the MJCF, tidy.py or the detector.

Tracing the tidy loop

eval-tidy tells you how many toys ended up in the basket. When the number is wrong, these two tools tell you why. Both run headless on CPU from microduck_local/ and need the microduck_rl + microduck checkouts next door (the shipped alpha_walking / alpha_ground_pick policies).

1. trace-tidy — one run under a microscope

bash
uv run trace-tidy --seed 2 --seconds 300            # transitions, releases, landings, falls
uv run trace-tidy --seed 0 --every 5                 # + a position/intent line every 5 s
uv run trace-tidy --seed 0 --odom hostile            # under odometry drift (roadmap 1.7)
uv run trace-tidy --seed 3 --tether-ms 250           # under a brain tether (12.10), the same queue eval-tidy uses
uv run eval-tidy --seeds 8 --jobs 4 --tether-ms 250  # the benchmark, parallel, over a brain tether (12.10)

Read it like this:

  • -> state lines are the brain's transitions (scan, explore, approach, blind, settle, pick, verify, carry, carry_explore, deliver, aim, drop, backoff, done). A run that is all carry/deliver turning is not seeing the basket; a run stuck in scan/explore is not seeing toys.
  • RELEASE prints the trunk→basket and beak→basket distances and the estimate's error against the truth; landed … IN/OUT follows 1.5 s later. Geometry that matters: the beak reaches 0.08 m past the trunk, the feet 0.04 m, a held toy sits 0.005–0.023 m beyond the tip, and the feet touch a 0.3 m tray's rim from 0.185 m to its centre. A release at trunk→basket 0.21–0.24 with an estimate error under 0.03 lands in; outside that, look at the estimate (the aim state should have fixed it at 0.42 m) or the leg.
  • === FALL prints the two seconds before a fall (state, position, projected gravity, intent, head pitch, skill, ToF minimum, held toy) and what was within 0.35 m; the last column is the trunk's distance to the basket centre. Almost every fall so far was the rim: an explore or approach leg ending 0.2 m from the basket centre, or the turn right after a release (under a tether or drift the stop lands 1–3 cm closer, and a turn in place with the feet 2 cm from the rim trips — measured standing at 0.17–0.23 m: a left sidestep first never fell, the plain left turn fell at 0.17, a kicked or right turn at every distance). The keep-out disc, the staged approach for rim toys and the sidestep-then-turn back-off exist for those; if they reappear, that is where to look first.
  • --every lines carry the intent's note — blocked (ToF guard), detour, basket keep-out, scan k/6 — which is how the stalls were found (a duck that prints blocked for a minute is turning at the servo's steering rate, which does not turn the walker).

The /sim page shows the same brain live (playroom scenario, inspector → brain tidy); .claude/skills/sim-smoke brings it up and screenshots it.

Show full SKILL.md (224 more words)Show less

2. walker-facts — measure, don't assume

bash
uv run walker-facts

Prints the beak/feet reach vs head pitch, the camera depression standing vs walking (the gait holds the head 0.08 rad higher and rocks it ±0.02 — that alone put basket estimates 0.8 m off until detection frames carried their camera pose), the stopping coast, the fact that the walker does not reverse at all, and the turn-in-place asymmetry (a right turn from a standstill barely happens unless the gait is already going or a 0.2 m/s forward kick is added). Every constant in brain/tidy.py quotes one of these; if a number here moves, the constant next to its quote is the one to revisit.

Rules of thumb that came out of this

  • Walk toward a target with the head LEVEL when it is 8 cm or higher off the floor (the basket marker), head DOWN only for floor toys, and never turn in place with the head down.
  • Never release on a long-range estimate: re-measure standing still at 0.42 m, square up, then walk the last 0.2 m straight with no steering.
  • A toy that projects into the basket is one already delivered; walking at it is walking into the rim.
  • Trust tracked ids, not confidence: a 2 cm toy at 1.5 m is found one frame in six at confidence 0.2 and is still a toy to walk toward.

© jonathanhawkins, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/tidy-trace of jonathanhawkins/microduck-lab.

Open the folder on GitHubat commit bbf0326

Compare with similar skills

Tidy Trace next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Tidy Trace compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Tidy Trace this skilljonathanhawkins/microduck-lab132—~1.1kAutomated safety check: PassApache-2.0
Debugasgeirtj/system_prompts_leaks69k—~439Automated safety check: PassCC0-1.0
Openclaw Debuggingopenclaw/openclaw392k—~1.9kAutomated safety check: PassMIT
Distributed Debugging Debug Traceaiskillstore/marketplace4307 repos~574Automated safety check: PassNone
LangSmith Trace DebuggingComposioHQ/awesome-claude-skills77k8 repos~2.7kAutomated safety check: PassNone
Debugging Executionsn8n-io/n8n207k—~2.6kAutomated safety check: PassCustom licence

Similar skills

  • Debug

    asgeirtj/system_prompts_leaks

    Enable debug logging for this session and help diagnose issues

    69k GitHub stars~439 tokensUpdated yesterday
    Auto-check passed
  • Openclaw Debugging

    openclaw/openclaw

    Debug OpenClaw model, provider, tool-surface, code-mode, streaming, and live/Crabbox behavior by choosing the right logs, probes, and proof path before changing code, including fetching stored…

    392k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Distributed Debugging Debug Trace

    aiskillstore/marketplace

    You are a debugging expert specializing in setting up comprehensive debugging environments, distributed tracing, and diagnostic tools.

    430 GitHub starsUsed in 7 repos~574 tokens
    DevelopmentAuto-check passed
  • LangSmith Trace Debugging

    ComposioHQ/awesome-claude-skills

    Debugs LangChain and LangGraph agents by pulling recent execution traces with the langsmith-fetch CLI and reporting errors, tool calls, timings and token use.

    77k GitHub starsUsed in 8 repos~2.7k tokens
    AI & LLM EngineeringAuto-check passed
  • Official

    Debug failed or wrong-output workflow executions using executions tools.

    207k GitHub stars~2.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Debugging

    JetBrains/intellij-community

    Official

    Debug IntelliJ IDE failures with repository-specific techniques.

    21k GitHub stars~422 tokensUpdated today
    DevelopmentAuto-check passed

More from jonathanhawkins/microduck-lab

  • Record World

    jonathanhawkins/microduck-lab

    Record a /sim WORLD scenario — the living room, the playroom tidy loop, a soccer pitch, any scenario JSON — to an mp4, a captioned contact sheet and an events log, headless and under a seed, then…

    132 GitHub stars~1.2k tokensUpdated 8 days ago
    Auto-check passed
  • Render Rollout

    jonathanhawkins/microduck-lab

    Render a microduck policy rollout to video AND to a frame contact sheet with per-frame diagnostics burned in, then READ the sheet to see what the policy actually does.

    132 GitHub stars~3.2k tokensUpdated 8 days ago
    Auto-check passed
  • Train Loop

    jonathanhawkins/microduck-lab

    Run the CLOSED training loop on a MOSS/duck policy without a human having to ask "is it done yet": launch through the lab, block until the run finishes, print the standard report and the per-term…

    132 GitHub stars~947 tokensUpdated 8 days ago
    Auto-check passed
  • Restart Servers

    jonathanhawkins/microduck-lab

    Restart the microduck dev stack — the duck-lab backend (farm, :8788) and the duck-viewer dev server (:63317).

    132 GitHub stars~1.1k tokensUpdated 8 days ago
    Auto-check passed
  • Sim Smoke

    jonathanhawkins/microduck-lab

    Look at the /sim world page the way a user would — bring up the lab in world mode and the viewer, open the page in headless Chromium, press keys, screenshot it, and READ the screenshot and console.

    132 GitHub stars~1.2k tokensUpdated 8 days ago
    Auto-check passed
  • Watch Training

    jonathanhawkins/microduck-lab

    Look at what the ACTIVE teach run is practicing right now: renders the live checkpoint under the trainer's own env knobs (actuator, spawn mix, reward gates — read from the live trainer process) and…

    132 GitHub stars~525 tokensUpdated 8 days ago
    Auto-check passed

Questions about Tidy Trace

What does Tidy Trace do?

Debug the playroom tidy loop (Track 12) — trace one run state by state, see every release, landing and fall with context, and re-measure the walker facts the brain's constants rest on. Tidy Trace is an agent skill from jonathanhawkins/microduck-lab. Debug the playroom tidy loop (Track 12) — trace one run state by state, see every release, landing and fall with context, and re-measure the walker facts the brain's constants rest on.

When should I use Tidy Trace?

Tidy Trace fits situations like: eval-tidys numbers drop; falls near the basket; after changing the walker.

How do I install Tidy Trace in Claude Code?

Run `npx skills add jonathanhawkins/microduck-lab --skill tidy-trace -a claude-code`. Or copy the skill folder (.claude/skills/tidy-trace in jonathanhawkins/microduck-lab) into .claude/skills/tidy-trace in your project. Claude Code loads it when a task matches its description.

How do I install Tidy Trace in Codex?

Run `npx skills add jonathanhawkins/microduck-lab --skill tidy-trace -a codex`. Or copy the skill folder (.claude/skills/tidy-trace in jonathanhawkins/microduck-lab) into .agents/skills/tidy-trace in your project. Codex loads it when a task matches its description.

Can I use Tidy Trace in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jonathanhawkins/microduck-lab --skill tidy-trace -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tidy-trace, .gemini/skills/tidy-trace, .github/skills/tidy-trace and .opencode/skills/tidy-trace in your project.

What does Tidy Trace need to run?

Going by SKILL.md and its folder, Tidy Trace needs the command-line tools its instructions call (uv).

Does Tidy Trace access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Tidy Trace safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Tidy Trace use?

Tidy Trace is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Tidy Trace use?

About 1.1k tokens (SKILL.md is roughly 4.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Tidy Trace?

Skills that share tags, products or a category with Tidy Trace: Debug (asgeirtj/system_prompts_leaks, 69k stars), Openclaw Debugging (openclaw/openclaw, 392k stars), Distributed Debugging Debug Trace (aiskillstore/marketplace, 430 stars) and LangSmith Trace Debugging (ComposioHQ/awesome-claude-skills, 77k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Tidy Trace?

jonathanhawkins (a GitHub user) maintains it in jonathanhawkins/microduck-lab, which has 132 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 1, 2026.

Source: jonathanhawkins/microduck-lab on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.