Files
Luna/Documentation/Luna AI Assistant/Channels/Web Interface Channel.md
T
darman 9929941748 Add project documentation and reference materials
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.
2026-04-04 04:14:06 +02:00

42 lines
1.4 KiB
Markdown

# 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 `ChatStreamUpdate` responses 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 `WebInterfaceChannel` instances with `IChannelManager` from [[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.Abstractions`
- `Luna.Configuration`
- `Luna.Core.Abstractions`
- `Luna.Shared`
## Namespace
`Luna.Channels.Web`