Include Luna AI Assistant design docs covering channels, configuration, core architecture, memory, scheduler, and skills. Add reference docs from OpenClaw and ZeroClaw projects, plus Mistral and OpenAI API specs.
1.4 KiB
1.4 KiB
Web Interface Channel
[!info] Status: Not Yet Implemented
The Web Interface channel will provide a browser-based chat UI for interacting with Luna directly, without requiring the CLI or Telegram. It implements the IChannel interface defined in Channels.
Planned Approach
WebInterfaceChannel
A server-side IChannel implementation that bridges the web frontend to Luna's channel system. Similar to CLI Channel, it will likely use SignalR for real-time bidirectional communication.
Key responsibilities:
- Accept messages from authenticated browser sessions.
- Stream
ChatStreamUpdateresponses back to the frontend in real time. - Manage connection lifecycle (connect, disconnect, reconnect).
WebInterfaceAdapter
An IHostedService (similar to TelegramAdapter in Telegram Channel) responsible for:
- Registering
WebInterfaceChannelinstances withIChannelManagerfrom Channels. - Managing per-user or per-session channel lifecycle.
Configuration
Will follow the existing Configuration options pattern with a WebInterfaceOptions class containing settings such as:
- Authentication / authorization settings.
- CORS policy.
- Session timeout.
Dependencies
Expected Project References
Luna.Channels.AbstractionsLuna.ConfigurationLuna.Core.AbstractionsLuna.Shared
Namespace
Luna.Channels.Web