diff --git a/README.md b/README.md
index e9b7f25..fee0d46 100644
--- a/README.md
+++ b/README.md
@@ -1,108 +1,28 @@
-
-
-
+# Duckmind
-Microduck
+Duckmind is an experimental project for learning how natural language becomes robot motion,
+built from [Microduck](https://github.com/pollen-robotics/microduck).
-Duckmind adds [native Action Chunk execution](docs/design/action-chunks.md) to this Microduck runtime, currently available on fake and MuJoCo bodies.
+The goal is to walk through the complete learning loop on one Microduck body:
+collect demonstrations, train a policy, execute its predictions in MuJoCo, and evaluate the result.
-
- A tiny biped robot that moves using reinforcement learning policies.
-
+## The idea
-
- Get yours here ·
- Cheat sheet ·
- Training the policies ·
- How it works ·
- Contributing
-
+1. Use Microduck's existing command-driven motion policies to generate demonstrations.
+2. Pair each command with multiple equivalent text instructions and the corresponding state/action trajectories.
+3. Train a policy to predict **action chunks**—sequences of joint targets—from text and body observations.
-
-
-
+```text
+Text + body state/history → learned policy → action chunk → robotd → robot motion
+```
----
+Start with a language-conditioned motion policy, then add visual observations to explore
+vision-language-action (VLA) models. The model learns the motion; `robotd` owns timed execution
+and feedback. Training and model integration are ongoing work.
-**This repo is the duck's brain.** About 25 cm and 800 g of robot, run by a handful of daemons on a
-Rockchip RK3566: a 50 Hz control loop driving fifteen servos from neural policies, the radios and
-the camera, and the update machinery that gets new software onto a robot without bricking it.
+## Origin
-Everything you need to run a Microduck is here. **If you want one,
-[get yours here](https://pollen-robotics.com/microduck).**
-
-The policies it runs are trained next door, in
-**[microduck_rl](https://github.com/pollen-robotics/microduck_rl)** — MuJoCo and PPO, the sim2real
-recipe, and the export to ONNX that this repo loads.
-
-## It does things
-
-
-
-|
-
- |
-
-
-
- |
-
-
-| It walks. Pick up a gamepad and drive. |
-It rolls. Put wheels on, hold D-pad up, and it loads the other brain. |
-
-
-|
-
- |
-
-
- |
-
-
-| It picks things up. Beak to the floor, one button. |
-It gets back up. Knock it over and it stands itself up. |
-
-
-
-It also sits, kicks a ball, rolls forward on command, and quacks in a voice that is its own.
-
-## Where to find things
-
-### You have a duck
-
-| | |
-|---|---|
-| [Cheat sheet](docs/robot/cheatsheet.md) | Every `robotctl` command: drive, configure, voice, chorale, theremin, wifi, updates, logs. Start here. |
-| [Gamepad](docs/robot/cheatsheet.md#gamepad-configd) | The full button mapping, and pairing a pad — [once per pad](docs/robot/pair-a-gamepad.md), plus what to do when it will not bond. |
-| [`duckctl`](docs/robot/duckctl.md) | The robot from a laptop over Bluetooth, with no network and no ssh. |
-| [Updates](docs/robot/cheatsheet.md#updates-updaterd) | Install, roll back, pin. Every update is verified, health-gated and reversible. |
-
-### You are building on it
-
-| | |
-|---|---|
-| [microduck_rl](https://github.com/pollen-robotics/microduck_rl) | Where the policies come from: MuJoCo, PPO, domain randomisation, and the ONNX export this repo loads. |
-| [How it works](docs/design/architecture.md) | The whole system on one page — the daemons, the bus, how an update reaches a robot — then a page per part. |
-| [Set up a dev board](docs/robot/install-dev.md) | From a blank board to a robot that takes branch builds. |
-| [Dev cheat sheet](docs/robot/cheatsheet-dev.md) | Branch builds, release candidates, driving from a laptop, and the restart traps after an update. |
-| [Push your branch](docs/robot/dev-push.md) | Build on your machine, install over ssh, about a minute. |
-| [The simulated duck](docs/robot/simulation.md) | No robot on the desk? `scripts/duck-sim` runs the real daemons against a body in MuJoCo — one duck in a window, or four as machines you log into. |
-| [CONTRIBUTING.md](CONTRIBUTING.md) | Building, testing, layout, conventions, releasing. |
-| [Docs index](docs/README.md) | Everything, including the design pages and the open problems. |
-
-## Under the hood
-
-Rust, no framework, one workspace. `robotd` owns the control loop and the motor bus; `updaterd`
-installs signed releases and rolls them back when a robot comes up unhealthy; `configd` owns wifi
-and identity; `btd` is the Bluetooth path a phone uses; `padd` reads the gamepad; `mediad` streams
-the camera over WebRTC; `tofd` serves the depth sensor. They talk over one JSON-RPC contract on
-Unix sockets, and every client — the app, the console, the gamepad, your script — sends exactly the
-same calls.
-
-The interesting decisions are written down: [`docs/design/`](docs/design/) is why things are the
-way they are, and [`docs/project/`](docs/project/) is what has gone wrong and what would close it.
-
-## A note on ducks
-
-No duck was harmed in the making of this robot. Several were consulted.
+Microduck provides the robot runtime and hardware/simulation interfaces.
+[microduck_rl](https://github.com/pollen-robotics/microduck_rl) provides the upstream motion-policy
+training stack. See [CONTRIBUTING.md](CONTRIBUTING.md) for building the runtime and
+[the simulation guide](docs/robot/simulation.md) for running a simulated body.