mirror of
https://github.com/qingchencloud/clawpanel.git
synced 2026-05-30 21:00:30 +08:00
Hermes 内核没有「群聊」概念,由 ClawPanel 前端编排:
- 用户选 1-N 个 Profile(每个对应一个 Agent 配置)
- 发消息 → 串行调度(用 hermes_profile_use 切换 + hermesAgentRun 阻塞调用)
- 每个 Profile 的回复用 @profile_name 标记后显示在统一界面
## 新页面 /h/group-chat(~250 行)
### UI 布局
- 左侧 240px: Profile 多选列表
· 顶部说明 + 已选 N 个统计
· checkbox 风格,is-checked 高亮
- 右侧主区: 消息列表 + 输入框
· user 消息右对齐(accent 蓝色气泡)
· assistant 消息左对齐(每条带 @profile 徽章)
· loading 状态用三点跳动动画
· error 状态红色 + ⚠️ 图标
· 输入框 Enter 发送 / Shift+Enter 换行
### 调度策略
- 当前实现:串行(hermes_profile_use 切换 + hermesAgentRun)
· 简单稳健,避免后端并发对同一 profile 状态的竞态
· 缺点:N 个 profile 总耗时 = N × 单次耗时
- 真正并发需后端支持 hermes_agent_run(profile=...) 参数
· 留作下次内核改造(设计稿已记下)
### 限制(明确告知用户)
- 仅 Tauri 桌面端(Web 模式显示禁用提示)
- 非流式(用阻塞式 hermesAgentRun,等所有完成后一起显示)
- 不持久化(一次性会话,刷新清空,不挂 chat-store)
- 切 profile 后不还原(用户后续 /h/chat 会保持最后切到的 profile)
### sidebar
- 监控 section 加群聊入口(agents icon,紧跟 /h/chat 之后)
- /h/group-chat 路由注册
### CSS(~180 行)
- .hm-gc-layout: grid 双栏(响应式 → 单栏)
- .hm-gc-side: 左侧 profile 多选
- .hm-gc-main: 右侧消息列表 + 输入区
- 加载点动画 hm-gc-pulse
- @profile 徽章用 mono 字体 + accent 色
### i18n
- 13 个新键 × 3 语言(hermesGroupChat*)
## 累计
- 1 个新页面 ~250 行 + CSS ~180 行 + i18n 39 字符串
- npm build ✓