OpenClaw WebUI 中 Chat 的工作流程及主要程序名称


## 整体架构
OpenClaw WebUI 是一个基于 Web Components 的现代前端应用,提供了直观的聊天界面来与 OpenClaw Agent 进行交互。

## 主要程序名称
### 前端程序
1. control-ui/index.html - WebUI 主页面
2. control-ui/assets/index-BeKTXH1m.js - 打包后的前端核心代码
3. control-ui/assets/index-DWhx-9JL.css - 前端样式文件
### 后端服务
1. Gateway 服务 - 运行在端口 18789,提供 API 端点
2. Agent 服务 - 处理代理逻辑
3. Session 服务 - 管理会话状态
## Chat 工作流程
### 1. 初始化阶段
- 页面加载 :用户访问 WebUI 地址(通常是 http://localhost:18789 )
- WebSocket 连接 :前端与 Gateway 建立 WebSocket 连接,用于实时通信
- 会话加载 :前端加载默认会话或上次活动的会话
- 历史记录获取 :调用 chat.history API 端点获取历史消息
### 2. 消息发送流程
1. 用户输入 :用户在聊天输入框中输入消息
2. 消息处理 :
   - 前端验证输入内容
   - 显示"正在发送"状态
   - 生成唯一的 runId 标识本次对话
3. API 调用 :
   - 前端调用 chat.send API 端点
   - 发送数据包括:会话密钥、消息内容、幂等性密钥
   - 支持附件(如图片)上传
4. 后端处理 :
   - Gateway 接收请求并路由到相应的 Agent
   - Agent 分析消息内容
   - 可能调用工具(如 web_search)获取信息
   - 生成回复内容
5. 消息接收 :
   - 后端通过 WebSocket 流式返回回复
   - 前端实时显示回复内容
   - 支持工具调用结果的展示
### 3. 会话管理
- 会话选择 :用户可以在下拉菜单中选择不同的会话
- 会话切换 :切换会话时会加载对应会话的历史记录
- 会话刷新 :用户可以手动刷新聊天数据
### 4. 工具调用流程
1. 工具检测 :Agent 分析用户请求,确定是否需要调用工具
2. 工具调用 :
   - 前端显示工具调用状态
   - 后端执行工具操作(如搜索)
3. 结果处理 :
   - 工具执行结果返回给 Agent
   - Agent 分析结果并生成回复
   - 前端显示工具调用结果和 Agent 回复
### 5. 界面交互
- 主题切换 :支持系统、浅色、深色三种主题
- 思考模式 :可切换显示/隐藏 Agent 的思考过程
- 专注模式 :可切换显示/隐藏侧边栏和页面标题
- 消息滚动 :新消息自动滚动到底部
- 加载状态 :显示各种操作的加载状态
## 核心 API 端点
1. chat.send - 发送聊天消息
   
   - 参数:sessionKey, message, idempotencyKey, attachments
   - 返回:Agent 回复
2. chat.history - 获取聊天历史
   
   - 参数:sessionKey, limit
   - 返回:历史消息列表
3. status - 获取系统状态
   
   - 返回:系统运行状态
4. health - 获取系统健康状态
   
   - 返回:系统健康信息
## 技术特点
1. 流式响应 :支持模型回复的流式展示,提升用户体验
2. 实时通信 :使用 WebSocket 实现实时消息传递
3. 模块化设计 :前端代码采用模块化结构,易于维护
4. 响应式布局 :适配不同屏幕尺寸
5. 丰富的交互 :支持表情、图片、工具调用等多种交互方式

工作流程图

┌─────────────┐     ┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   用户界面   │     │  前端处理   │     │ Gateway服务 │  │   Agent服务  │
└─────┬───────┘     └─────┬───────┘     └─────┬───────┘     └─────┬───────┘
      │                  │                  │                  │
      │ 输入消息          │                  │                  │
      ├─────────────────>│                  │                  │
      │                  │ 验证输入          │                  │
      │                  │ 生成runId         │                  │
      │                  │                  │                  │
      │                  │ 调用chat.send API │                  │
      │                  ├─────────────────>│                  │
      │                  │                  │ 路由请求          │
      │                  │                  ├─────────────────>│
      │                  │                  │                  │
      │                  │                  │                  │ 处理消息
      │                  │                  │                  ├─────────┐
      │                  │                  │                  │         │
      │                  │                  │                  │ 调用工具
      │                  │                  │                  │         │
      │                  │                  │                  │         │
      │                  │                  │                  │<────────┘
      │                  │                  │                  │
      │                  │                  │                  │ 生成回复
      │                  │                  │                  │
      │                  │                  │<─────────────────┘
      │                  │<─────────────────┘
      │                  │
      │                  │ 流式返回回复
      │                  │
      │<─────────────────┘
      │
      │ 显示回复
      │
┌─────┴───────┐
│   用户界面   │
└─────────────┘

Read more

Alpamayo-R1-10B部署教程:/etc/supervisor/conf.d下WebUI端口自定义修改实录

Alpamayo-R1-10B部署教程:/etc/supervisor/conf.d下WebUI端口自定义修改实录 1. 项目概述 Alpamayo-R1-10B是专为自动驾驶研发设计的开源视觉-语言-动作(VLA)模型,具备100亿参数规模。该模型通过整合AlpaSim模拟器与Physical AI AV数据集,构建了完整的自动驾驶研发工具链。其核心价值在于通过类人因果推理机制,显著提升自动驾驶决策的可解释性,特别是在处理长尾场景时展现出优异的适应能力。 2. 环境准备 2.1 硬件要求 * GPU配置:至少需要NVIDIA RTX 4090 D级别显卡(22GB显存) * 内存需求:推荐32GB以上系统内存 * 存储空间:需预留30GB以上可用空间 2.2 软件依赖 # 基础环境检查 nvidia-smi # 确认GPU驱动正常 python --version # 需Python 3.12 supervisord --version # 需Supervisor 4.x 3.

StructBERT中文情感分类WebUI教程:多语言界面切换(中/英)实现

StructBERT中文情感分类WebUI教程:多语言界面切换(中/英)实现 基于百度StructBERT模型的中文情感分类WebUI,支持中英文界面切换,让非技术用户也能轻松进行情感分析 1. 项目概述与环境准备 StructBERT中文情感分类模型是百度基于StructBERT预训练模型微调后的经典模型,专门用于识别中文文本的情感倾向(正面/负面/中性)。这个模型在中文NLP领域有着很好的效果和效率平衡,特别适合实际业务应用。 本项目提供了一个完整的WebUI界面,支持单文本和批量情感分析,并且实现了中英文界面切换功能,让不同语言习惯的用户都能方便使用。 环境要求: * Python 3.8+ * PyTorch 1.8+ * Gradio 3.0+ * 至少4GB内存 快速安装: # 创建conda环境 conda create -n sentiment python=3.8 conda activate sentiment # 安装核心依赖 pip install torch gradio flask

浏览器 Web Bluetooth API使用方法

浏览器 Web Bluetooth API使用方法

浏览器 Web Bluetooth API 完整指南 一、简介 什么是 Web Bluetooth API? Web Bluetooth API 让网页应用可以与蓝牙设备通信。通过这个 API,你可以: * 👂 扫描并连接蓝牙设备 * 📤 发送命令到设备 * 📥 接收数据从设备返回 * ⚙️ 控制设备的各种操作 适用场景 医疗设备、手环、手表、传感器、遥控器、音箱、灯等 ↓ 所有支持蓝牙的设备都可以通过这个 API 与网页应用通信 浏览器支持 浏览器支持最低版本Chrome/Edge✅56+ / 79+Firefox⚠️ 需启用98+Safari❌- 二、核心概念(5 分钟快速理解) 2.1 蓝牙通信的三层结构 物理设备(

GitHub热榜----前端已死?AionUi 横空出世:首个开源“生成式UI”框架,让 AI 在运行时“手搓”界面

GitHub热榜----前端已死?AionUi 横空出世:首个开源“生成式UI”框架,让 AI 在运行时“手搓”界面

摘要:2025 年我们还在惊叹于 V0 和 Bolt 的代码生成能力,而 2026 年初,AionUi 的发布宣告了**“运行时生成 (Runtime GenUI)”**时代的到来。不再需要预先写好所有 Component,不再需要 Hardcode 每一个表单。AionUi 允许你的应用根据用户的意图,实时渲染出从未被编码过的 UI 界面。本文带你上手这个颠覆性的开源项目。 🚀 前言:从“写死”到“生成” 传统前端开发的逻辑是: 产品经理提需求 -> 设计师出图 -> 程序员把 UI 写成代码 (React/Vue) -> 打包发布 -> 用户看到静态界面。