What problem does it solve? Rearranging Littleman rooms and directed pipes into a smaller .man program footprint is error-prone: pipe capacities, cyclic FIFO state, port identities, and display-side rules must all be preserved while minimizing layout size. This Skill automates that placement, routing, and verification workflow. ## Core Features & Use Cases - Whole-program placement and routing: Accepts an existing .man file or room ASCII plus a directed connection graph, then searches layouts from the strongest lower bound upward to minimize max(width, height) and ticks. - Optimizer integration: Drives the repository's pipeopt and roomopt tools for annealed placement, room-interior optimization, and pipe-only rerouting. - Behavioral validation: Runs lman check and lman test on every candidate and ranks passing candidates with the score_candidates.py script, never trusting structural checks alone. - Use Case: Given a working but oversized .man solution for an ICFPC problem, produce a smaller verified layout that preserves FIFO capacities, Y-runner semantics, and display connections, then report old versus new footprint and tick scores. ## Quick Start Use the place-littleman-rooms skill to compact my solution.man file for the reverse-a-list problem and verify the result with the official lman test command.