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

# Select and edit

> Click any element in the live preview, describe the change, and WPOS edits it at the source: the widget and style rule behind it.

export const YouTubeVideo = ({id, title, caption}) => {
  const [playing, setPlaying] = useState(false);
  return <div className="demo-embed">
      {playing ? <iframe src={`https://www.youtube-nocookie.com/embed/${id}?autoplay=1&rel=0&playsinline=1`} title={title} allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerPolicy="strict-origin-when-cross-origin" allowFullScreen /> : <button type="button" className="yt-facade" onClick={() => setPlaying(true)} aria-label={`Play video: ${title}`} title={title}>
          <span className="yt-facade-thumb" style={{
    backgroundImage: `url(https://i.ytimg.com/vi/${id}/maxresdefault.jpg)`
  }} aria-hidden="true" />
          <span className="yt-facade-play" aria-hidden="true">
            <svg width="26" height="26" viewBox="0 0 24 24" fill="currentColor">
              <path d="M8 5.14v13.72a1 1 0 0 0 1.52.85l10.97-6.86a1 1 0 0 0 0-1.7L9.52 4.29A1 1 0 0 0 8 5.14z" />
            </svg>
          </span>
        </button>}
      {caption ? <p className="demo-caption">{caption}</p> : null}
    </div>;
};

The fastest way to change something on a page is to point at it. Select an
element in the live preview, say what you want, and your instruction travels
with that exact element, so WPOS knows precisely what "this" means.

<YouTubeVideo id="CJdEid0JP0w" title="Select and Edit Any Element in WPOS" caption="Click it, describe it, done" />

## Select an element

<Steps>
  <Step title="Turn on the inspector">
    In the chat box of the [Command Center](/operate/command-center), click
    **Inspect element**. Click it again (**Disable inspector**) to turn it off.
  </Step>

  <Step title="Click the element">
    In the preview, click the heading, button, card, image, or section you want
    to change. It gets a numbered pin on the page and appears as a pill in the
    chat box, attached to your next message. You can keep clicking to select
    **up to 5 elements** for one message.
  </Step>

  <Step title="Describe the change">
    Type what you want in plain language and send it, for example:

    ```text theme={null}
    Make this heading larger and add a little space below it.
    ```
  </Step>
</Steps>

## Select up to 5 elements at once

One message can carry **up to 5 selected elements**, for example two buttons
that should line up, or three cards that should match.

<Frame caption="Five elements selected: numbered pins on the preview, a numbered pill for each in the chat box, and a pin's Comment box open.">
  <img src="https://mintcdn.com/wpos/0iN1wl9s70lh6vWp/images/surfaces/select-multiple.png?fit=max&auto=format&n=0iN1wl9s70lh6vWp&q=85&s=35dee5ac0317d614af5249249503ae83" alt="The WPOS Command Center with five selected elements. The chat box shows numbered pills such as h1.mb-hero__title and a Clear all link; the preview shows numbered pins on the selected elements and an open Comment box that reads Tell the AI what to do here." width="1742" height="852" data-path="images/surfaces/select-multiple.png" />
</Frame>

* **Numbered pins.** Each element you select gets a pin on the page, numbered
  1 to 5 in the order you picked them, so you can refer to them in your
  message: "make 2 match 1".
* **Click again to deselect.** Clicking a selected element again removes it
  from the selection.
* **A note per element.** Click a pin to open its **Comment** box and tell WPOS
  what to do with that element alone, then use **Add to chat**. **Remove this
  element** drops it from the selection.
* **Selection full.** After 5, WPOS will not select any more: the preview stops
  highlighting other elements, and **Inspect element** says the selection is
  full. Remove one to pick another.

In the chat box, each pill shows its number and the element's tag and class,
for example `<h1.mb-hero__title>`. Remove a single pill to swap that element
for another, or click **Clear all** to start again.

```text theme={null}
Give 1 and 2 the same height, and style 3 like 1.
```

## What WPOS does with your selection

* **Finds the source.** WPOS traces the element back to the widget and the
  style rule behind it, and makes the change there, instead of patching the
  page on top.
* **Checks the result.** It looks at the live page after the change to confirm
  it landed before it reports back.
* **Tells you what it found.** If something gets in the way, such as a
  conflict with another rule, it says so plainly rather than hiding it.

If the result is not quite right, reply in the same chat. The element stays in
context, so "a little smaller" is enough.

<Tip>
  Select first, then ask. "Make the header bigger" without a selection leaves
  WPOS guessing which header you mean. With the element selected, the same
  sentence lands exactly where you intended.
</Tip>

<CardGroup cols={2}>
  <Card title="The Command Center" icon="grid-2" href="/operate/command-center">
    The chat and live preview where you select and edit.
  </Card>

  <Card title="Build by voice" icon="microphone" href="/operate/voice">
    Speak your request instead of typing it.
  </Card>
</CardGroup>
