> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ionworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Operate overview

> Run the physical lab: model your equipment, watch channel occupancy, service channels, and plan the tests you want run

**Operate** covers running the physical lab — the equipment your data comes
from, what is on it right now, and what you want run next. It sits upstream of
[Data](/data/overview): Operate is where a test is requested and executed,
and Data is where the resulting measurement is uploaded, read, and analysed.

<CardGroup cols={2}>
  <Card title="Equipment" icon="server" href="/operate/equipment">
    Model your lab as sites, cyclers, and channels, and link each measurement
    to the channel it ran on.
  </Card>

  <Card title="Lab view" icon="grid-2" href="/operate/lab-view">
    A project-scoped dashboard of channel occupancy — what is running, and
    when a channel frees up.
  </Card>

  <Card title="Channel service" icon="wrench" href="/operate/channel-service">
    Take a channel out of service with a reason and read its incident history.
  </Card>

  <Card title="Planned measurements" icon="calendar-check" href="/operate/planned-measurements">
    Request a test, schedule it onto a channel, and link the real run back to
    the plan.
  </Card>

  <Card title="AI protocol authoring" icon="sparkles" href="/operate/ai-protocol-authoring">
    Describe a test in plain English on the request form and get back a
    validated UCP protocol.
  </Card>
</CardGroup>

## Where to start

If you are setting the lab up for the first time, build the
[equipment tree](/operate/equipment) first — everything else keys off channels.
Once channels exist, the [Lab view](/operate/lab-view) becomes useful, and the
[test scheduler](/operate/planned-measurements) can place requests onto real
hardware.

Recording equipment is optional. Measurements work fine without a `channel_id`,
so if you have a single cycler you can skip Operate entirely and use the
free-text [`test_setup`](/data/measurements#common-fields) fields instead.
