{"generated_at":"2026-08-31T13:15:28.851412+00:00","robots":[{"id":"so101-twin-b","status":"G","twin":true,"kind":"digital-twin","skill":"reach","last_seen":"2026-08-31T13:15:28.848994+00:00","last_seen_human":"2026-08-31 13:15 UTC (just now)"},{"id":"so101-twin-a","status":"G","twin":true,"kind":"digital-twin","skill":"reach","last_seen":"2026-08-31T13:15:26.781070+00:00","last_seen_human":"2026-08-31 13:15 UTC (just now)"},{"id":"so101-twin-web","status":"G","twin":true,"kind":"digital-twin","skill":"place","last_seen":"2026-08-31T12:48:55.376015+00:00","last_seen_human":"2026-08-31 12:48 UTC (26 min ago)"}],"n_twins":3,"n_arms":0,"n_robots":3,"n_skills":3,"n_evals":1,"kpis":{"uptime":{"label":"Arms online","display":"—","missing":true},"throughput":{"label":"Tests finished / hour","display":"—","missing":true},"mtbi":{"label":"Time between human help","display":"—","missing":true},"success_rate":{"label":"How often the skill worked","display":"barrier 100%","missing":false},"interventions_per_hour":{"label":"Human help / hour","display":"—","missing":true},"cost_per_task":{"label":"Cost per finished task","display":"—","missing":true}},"latest_evals":[{"skill":"barrier","eval_id":"eval-2026-08-31T110554.379836-0000","success_rate":1.0,"n_episodes":50,"promoted":true,"created_at":"2026-08-31T11:05:54.380053+00:00","mean_distance_cm":0.4706226259848513,"checkpoint_uri":"twin:scripted"},{"skill":"place","eval_id":null,"success_rate":null,"n_episodes":0,"promoted":false,"created_at":null,"mean_distance_cm":null,"checkpoint_uri":null},{"skill":"reach","eval_id":null,"success_rate":null,"n_episodes":0,"promoted":false,"created_at":null,"mean_distance_cm":null,"checkpoint_uri":null}],"tools":[{"id":"robots","name":"Robots hub","blurb":"Landing: train online, watch arms and twins, open every tool.","dns":"robots.fimpo.net","url":"https://robots.fimpo.net","origin":"Node C Traefik → mission-control :8091","group":"Hub","work":"Monitor the fleet. Start a training session."},{"id":"mission","name":"Floor board","blurb":"Shift KPIs, heartbeats, latest eval per skill.","dns":"robo-mission.fimpo.net","url":"https://robo-mission.fimpo.net/floor","origin":"Node C Traefik → mission-control :8091 /floor","group":"Hub","work":"Watch numbers for this shift."},{"id":"twin","name":"Twin classroom","blurb":"Browser 3D twin. Drag the marker, the claw follows. Online teaching.","dns":"robo-twin.fimpo.net","url":"https://robo-twin.fimpo.net","origin":"Node C Traefik → twin-classroom :8092","group":"Train","work":"Teach and practice a skill without the plastic arm."},{"id":"isaac-lab","name":"Isaac Lab","blurb":"GPU reinforcement learning (Jupyter on Node D).","dns":"robo-arm.fimpo.net","url":"https://robo-arm.fimpo.net","origin":"Node D Cloudflare tunnel → :8888","group":"Train","work":"Run long PPO/SAC jobs on the RTX 5070 Ti."},{"id":"lerobot","name":"LeRobot","blurb":"Imitation-learning API (datasets, checkpoints, health).","dns":"robo-lerobot.fimpo.net","url":"https://robo-lerobot.fimpo.net","origin":"Node D Cloudflare tunnel → :8001","group":"Train","work":"List datasets and checkpoints. Kick imitation jobs."},{"id":"tensorboard","name":"TensorBoard","blurb":"Live training curves from Isaac and the CPU twin.","dns":"tensorboard.fimpo.net","url":"https://tensorboard.fimpo.net","origin":"Node D Cloudflare tunnel → :6006","group":"Watch","work":"See whether a run is actually learning."},{"id":"videos","name":"Rollout videos","blurb":"Click-to-play eval clips from sim rollouts.","dns":"robo-videos.fimpo.net","url":"https://robo-videos.fimpo.net","origin":"Node D Cloudflare tunnel → :8090","group":"Watch","work":"Scrub a policy instead of reading a loss curve."}]}