# Quickstart

Part of [Build a custom machine](https://www.ownbox.io/sdk/guide).

Nothing needs to be on your computer first, and nothing here needs an Ownbox until step 5.

1. **Install the `ownbox` command.** One line, in Terminal on a Mac or Linux:

   ```bash
   curl -fsSL https://www.ownbox.io/install.sh | sh
   ```

   or in PowerShell on Windows:

   ```powershell
   irm https://www.ownbox.io/install.ps1 | iex
   ```

   It installs the kit, and the Python it runs on if it needs one, into your own folder, with no administrator and no
   account. Then it writes a first starter, `my-machine`, and opens its page in your browser (Ctrl-C stops it). Run
   it again later to bring the kit up to date. Already have Python 3.10 or later? `pip install ownbox` gives the same
   command.

2. **Write a starter.** It makes a folder named for the machine, holding `machine.yaml` and `__init__.py`:

   ```bash
   ownbox new quote-follow-up
   ```

3. **Run it on your computer.** It runs once against a local Ownbox with sample data and shows what it would have
   done. Nothing leaves your computer:

   ```bash
   ownbox run quote-follow-up
   ```

   To see its pages, open them in your browser, drawn as the Ownbox draws them, on the same sample data:

   ```bash
   ownbox preview quote-follow-up
   ```

4. **Make it yours.** Ask for what it touches under `permissions:`, then add its jobs and its pages. Run it again
   after each change, or reload the preview. `ownbox example` lists whole machines to start from instead.
5. **Send it to the Ownbox.** Connect your AI to the owner's Ownbox (the owner's Developers page shows the one line
   that does it, [Routes and tools](https://www.ownbox.io/sdk/guide/routes-and-tools)) and ask it to *build a custom machine from my files*. It reads
   this guide from the Ownbox (`core.dev_reference`), then asks the owner to let it build (`core.propose_dev_build`).
   Once the owner says yes on Approvals, the Ownbox checks the files and runs them dry. Your AI follows the build
   with `core.dev_build`.
6. **The owner approves it.** The review card shows each permission in plain words, and how the dry runs went. The
   owner's **Approve** installs it. On a partner's Ownbox, Approve sends it to Ownbox, and it installs on Ownbox's yes.

**It worked when** the machine's page opens at `https://<the Ownbox>/my/quote-follow-up`, and its first job has run.
