Standalone runs

simocracy_post_skill — end-to-end smoke test pass

· https://www.simocracy.org/skills · reports/pi-simocracy/post-skill-smoke-test/ · @daviddao

End-to-end test of the new simocracy_post_skill tool added to pi-simocracy. Pi loaded the Habermas sim, called the tool to publish a SKILL.md, and the record was visible on simocracy.org/skills with a working /skill.md round-trip. Both records (skill + history sidecar) were cleaned up afterwards; PDS, indexer, gallery, and the public skill page all confirm the tear-down was complete.

pi-simocracyatprotoagent-browsersmoke-testskillse2e
Pi-Simocracy: codex pet avatar rendering pass

· https://github.com/GainForest/pi-simocracy · reports/pi-simocracy/codex-pet-rendering/ · @daviddao

Patched pi-simocracy to render the new spriteKind: codexPet sims (1536×1872 WebP atlas from OpenAI's hatch-pet skill). Added @jsquash/webp (wasm, no native deps), a non-integer alpha-aware box downscaler, and a spriteKind branch in renderSpriteAnsi. Loaded Einstein (the only codex pet on the indexer) before/after — published 0.3.0 shows the loaded line with no avatar; HEAD renders the full 192×208 idle cell as half-block ANSI inline, persona injection still fires (Einstein replies in character).

pi-extensionatprotocodex-petwasmwebpvhsansisprite-rendering
Animated codex pets via the Kitty graphics protocol pass

· github.com/GainForest/pi-simocracy · reports/pi-simocracy/kitty-graphics-render/ · @daviddao

Replaces the ANSI half-block sprite render with true-pixel inline graphics in Kitty / Ghostty / WezTerm / iTerm2, plus a 6-frame idle animation that ticks via pi-tui's render loop without blocking input. Source PNGs travel at native 192×208; the universal half-block fallback is preserved for terminals that don't advertise inline-image support.

pi-simocracyatprototerminal-graphicskitty-protocolghosttyanimation
Pi-Simocracy: Training Lab + Interview + ATProto OAuth pass

· https://github.com/GainForest/pi-simocracy · reports/pi-simocracy/training-lab-integration/ · @daviddao

Five PRs (simocracy-v2#1, pi-simocracy#1/#2/#4/#5) merged into main. Loopback ATProto OAuth flow verified end-to-end against satyam2.climateai.org and captured live in 06-oauth-login.webm. /sim my browses sims owned by the signed-in DID directly from the terminal — captured in 07-my-sims.webm with two sims surfacing from satyam2's repo. Both originally-flagged caveats (auth-command collision with pi's built-in /login, stale extension help) shipped as PR #4.

cliatproto-oauthvhsagent-browsertraining-labopenrouter