# `Plushie.Automation.Runner`
[🔗](https://github.com/plushie-ui/plushie-elixir/blob/v0.7.2/lib/plushie/automation/runner.ex#L1)

Executes parsed `.plushie` automation files.

Starts a real Plushie app, attaches a `Plushie.Automation.Session`, runs each
instruction sequentially, and collects results.

The parsed automation header is forwarded to `app.init/1` under the `:script`
option so apps can opt into script-specific setup if they want to.

# `run`

```elixir
@spec run(script :: Plushie.Automation.File.t(), opts :: keyword()) ::
  :ok | {:error, [{Plushie.Automation.File.instruction(), String.t()}]}
```

Runs a parsed automation file.

Returns `:ok` on success or `{:error, failures}` where failures is a list
of `{instruction, reason}` tuples.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
