# `Cairnloop.AutomationPolicy`
[🔗](https://github.com/szTheory/cairnloop/blob/main/lib/cairnloop/automation_policy.ex#L1)

Behaviour for providing host application AI policy boundaries.
Allows host applications to dictate how AI drafts are handled.

# `decide`

```elixir
@callback decide(proposal :: map(), opts :: map()) ::
  :allow | :draft_only | :require_approval | :deny
```

Decides how a given AI proposal should be handled.
Returns :allow, :draft_only, :require_approval, or :deny.

---

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