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/user-preferences/
| Attribute | Value |
|---|---|
| Visibility | always |
| Stability | stable |
| Category | core |
| Default state | On |
| Depends on | — |
Summary
Per-room user behavioural preferences (tone, length, format, language, what to call the agent).state.userPreferences is hydrated by the agent builder before the agent is compiled, so the system prompt sees the value on turn 1. The agent calls set_user_preferences when the user asks to change behaviour, and the change persists across sessions.
Environment variables
This plugin has no required env vars.What it contributes
- Tools:
set_user_preferences. - Sub-agents: none.
- Middleware: none directly (preferences are hydrated by the runtime’s agent builder, not a plugin middleware).
- Nest modules:
UserPreferencesHttpModule— registers theGET /user-preferencescontroller for client-side reads. - HTTP routes:
GET /user-preferences. - Shared state: none.
Opt out / Opt in
When to use it
- User states how they want you to behave: “be more terse”, “respond in Spanish”, “call me Alex”, “stop using emojis”.
- User asks to change the voice, formality, or language of your replies — save it so it persists across sessions, not just this turn.
When NOT to use it
- Facts about who the user is (name, role, project) — those go to
memory, not preferences. - Artifacts you have produced or how the user reacted to them — also
memory, not preferences. - One-turn formatting requests (“just for this answer, use bullets”) — adapt locally without saving.
Where to read next
Add HTTP endpoints
Pattern this plugin uses for
GET /user-preferences.memory
Where to put facts (vs preferences).