Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions build-an-oracle/reference/bundled-plugins/flows.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
icon: "diagram-project"
---

**Source:** [`packages/oracle-runtime/src/plugins/flows/`](https://github.com/ixoworld/ixo-oracles-boilerplate/blob/main/packages/oracle-runtime/src/plugins/flows/)

| Attribute | Value |
| --- | --- |
| Feature key | `flows` |
Expand All @@ -21,7 +23,7 @@

`flows` is a flow **builder** capability. The agent designs reusable flow *templates* — steps (action blocks), the data wired between them, conditions, schedules, assignees, and forms — and reads the live state of running flows. The agent never executes, signs, mints, holds a key, or enters a PIN; **the user runs the flow in the portal**, where signing and any state transitions happen.

It coexists with the [`editor`](/build-an-oracle/reference/bundled-plugins/editor) plugin: flows are written as documents over the `@ixo/editor` Qi Flow engine, using oracle-runtime's native yjs reads/writes. The plugin does not require `editor` to be loaded — it contributes its own tool surface.

Check warning on line 26 in build-an-oracle/reference/bundled-plugins/flows.mdx

View check run for this annotation

Mintlify / Mintlify Validation (ixoworld) - vale-spellcheck

build-an-oracle/reference/bundled-plugins/flows.mdx#L26

Did you really mean 'yjs'?

## When to use it

Expand All @@ -35,7 +37,7 @@

- Editing prose, pages, or BlockNote documents — use [`editor`](/build-an-oracle/reference/bundled-plugins/editor).
- Actually executing, running, or signing a step — that happens in the portal, by the user. No transaction tooling lives here.
- IXO entity lookups — use [`domain-indexer`](/build-an-oracle/reference/bundled-plugins/domain-indexer).

Check warning on line 40 in build-an-oracle/reference/bundled-plugins/flows.mdx

View check run for this annotation

Mintlify / Mintlify Validation (ixoworld) - vale-spellcheck

build-an-oracle/reference/bundled-plugins/flows.mdx#L40

Did you really mean 'lookups'?

## Environment variables

Expand All @@ -43,7 +45,7 @@

| Var | Required | Description |
| --- | --- | --- |
| `MATRIX_BASE_URL` | yes (base schema) | Matrix homeserver base URL. |

Check warning on line 48 in build-an-oracle/reference/bundled-plugins/flows.mdx

View check run for this annotation

Mintlify / Mintlify Validation (ixoworld) - vale-spellcheck

build-an-oracle/reference/bundled-plugins/flows.mdx#L48

Did you really mean 'homeserver'?
| `MATRIX_ORACLE_ADMIN_USER_ID` | yes (base schema) | Admin Matrix user ID. |
| `MATRIX_ORACLE_ADMIN_ACCESS_TOKEN` | yes (base schema) | Admin Matrix access token. |

Expand Down Expand Up @@ -85,10 +87,10 @@
- `connect_steps` — wire an upstream output to a downstream input.
- `update_step` — per-block / delta edit that never disturbs sibling steps.

**Settings** — per-step mutators with narrow scope.

Check warning on line 90 in build-an-oracle/reference/bundled-plugins/flows.mdx

View check run for this annotation

Mintlify / Mintlify Validation (ixoworld) - vale-spellcheck

build-an-oracle/reference/bundled-plugins/flows.mdx#L90

Did you really mean 'mutators'?

- `set_step_inputs` — set or replace a step's static inputs.
- `set_step_conditions` — set `props.conditions` directly in the frontend evaluator's operator vocabulary.

Check warning on line 93 in build-an-oracle/reference/bundled-plugins/flows.mdx

View check run for this annotation

Mintlify / Mintlify Validation (ixoworld) - vale-spellcheck

build-an-oracle/reference/bundled-plugins/flows.mdx#L93

Did you really mean 'evaluator's'?
- `set_step_schedule` — set or clear a step's schedule.
- `set_step_assignment` — set or clear a step's assignee.
- `set_step_confirmation` — toggle the user-confirmation gate before a step runs.
Expand All @@ -104,7 +106,7 @@

Follow a tight loop: **discover → plan → confirm → build → hand off.** One discovery pass, one short plan, one user confirmation, then build with the authoring tools. The plugin injects an operating guide into the system prompt while it is loaded — see the `FLOWS_OPERATING_GUIDE` exported from the package.

Conditions are written **directly as `props.conditions`** in the frontend evaluator's operator vocabulary; the compiler's verbatim operators never evaluate at runtime.

Check warning on line 109 in build-an-oracle/reference/bundled-plugins/flows.mdx

View check run for this annotation

Mintlify / Mintlify Validation (ixoworld) - vale-spellcheck

build-an-oracle/reference/bundled-plugins/flows.mdx#L109

Did you really mean 'evaluator's'?

## Opt in

Expand Down
Loading