Source:Documentation Index
Fetch the complete documentation index at: https://docs.ixo.world/llms.txt
Use this file to discover all available pages before exploring further.
packages/oracle-runtime/src/plugins/editor/
| Attribute | Value |
|---|---|
| Visibility | on-demand |
| Stability | stable |
| Category | data |
| Default state | On (needs an explicit Matrix client for production behaviour) |
| Depends on | — |
Summary
Reads and edits BlockNote pages — collaborative documents in the user’s workspace via Matrix CRDT. Behaviour depends on per-request state:state.editorRoomIdset → editor sub-agent (call_editor_agent) bound to that room; plusapply_sandbox_output_to_blockwhensandboxis also loaded.state.spaceIdset withouteditorRoomId→ standalonecall_editor_agenttool that accepts aroom_idargument per call.- Neither set → no contributions.
Environment variables
The plugin owns no env vars. It reads the following from the core base env schema:| Var | Required | Description |
|---|---|---|
MATRIX_BASE_URL | yes (base schema) | Matrix homeserver base URL. |
MATRIX_ORACLE_ADMIN_USER_ID | yes (base schema) | Admin Matrix user ID. |
MATRIX_ORACLE_ADMIN_ACCESS_TOKEN | yes (base schema) | Admin Matrix access token. |
SANDBOX_MCP_URL | no | Read when apply_sandbox_output_to_block is constructed. |
SKILLS_CAPSULES_BASE_URL | no | Read when apply_sandbox_output_to_block is constructed. |
ORACLE_SECRETS | no | Read when apply_sandbox_output_to_block is constructed. |
What it contributes
- Tools:
apply_sandbox_output_to_block(when an editor room + sandbox plugin are both available); standalonecall_editor_agent(when only aspaceIdis in scope). - Sub-agents:
call_editor_agent— built only whenstate.editorRoomIdis set. - Middleware: none.
- HTTP routes: none.
- Shared state: none.
Production constructor
The bundled singleton works for inspect / test; production behaviour needs an explicit Matrix client:Opt out / Opt in
When to use it
- User asks to read, summarise, or edit a page in their workspace.
- User wants to update specific blocks (status, properties, content) on a page.
- User wants to create a new page or update an existing one.
- A skill produced output (URLs, credentials, status values) that should land on specific blocks.
When NOT to use it
- IXO entity lookups — use
domain-indexer. Pages are documents, not entities. - Web search or scraping — use
firecrawl. - Long-term user memory — use
memory.
Where to read next
Add a sub-agent
How
call_editor_agent is built per-request.Shared state
editorRoomId and spaceId are state fields the client sets.