Available surfaces
Sessions per surface
Each interface maps surface state onto AgentOS sessions, so a follow-up in the same thread continues the same conversation.
For Telegram and WhatsApp,
/new preserves earlier sessions and creates a session whose ID has a new eight-character suffix. This command requires a database.
Stored memory can follow a user across surfaces when the interfaces resolve to the same user_id and use the same agent database and memory configuration. Session history remains scoped to each interface-generated session_id. Interfaces can add surface metadata and dependencies to a run.
Register several interfaces
Conditional registration
Register only the interfaces you have credentials for, so a dev run without secrets does not crash.Resolving Slack identities
Slack hands you opaque IDs likeU07ABCXYZ. Set resolve_user_identity=True on the Slack interface and it resolves the ID to the user’s email, which becomes the run’s user_id. The display name is added to run metadata. Off by default because it costs an extra Slack API call per message.