WebBot
Clawline Web Client 的专属开发维护 Bot,负责 React 聊天 UI 的开发、调试、部署和自动化测试。
概述
WebBot(小蛛 💬)是 clawline-client-web 项目的主力开发 Bot,运行在 Mattermost 上与用户 Dora(称为”爸爸/Dad”)直接对话协作。Bot 基于 OpenClaw 框架运行,主要使用 claude-opus-4.6 模型(通过 GitHub Copilot),负责 clawline-client-web React Web 客户端的全栈开发。
基本信息
| 属性 | 值 |
|---|---|
| Agent ID | clawline-client-web |
| 工作区 | workspace-clawline-client-web |
| 默认模型 | github-copilot/claude-opus-4.6 |
| 仓库 | clawline/client-web |
| 开发环境 | https://web.dev.dora.restry.cn |
| 生产环境 | https://chat.clawlines.net |
| Dev Server | pm2 serve dist 3026 —name dev-web —spa |
| 配对码 | HPZ4D3YD |
| 活跃时间 | 2026-03-17 ~ 至今 |
| 消息量 | ~3009 条 |
核心职责
前端开发
- React 19 + Vite + Tailwind CSS 聊天 UI 开发
- 消息渲染优化(Markdown、代码块、工具调用、流式输出)
- 移动端适配(触控排序、ActionSheet、safe-area 布局)
- 桌面端交互(侧栏拖拽宽度、网格/列表视图切换)
部署运维
- dev-web 服务管理(pm2 + Caddy 反代)
- PWA 部署与 iOS 兼容性处理
- Service Worker 缓存策略管理
- 多环境部署(owl 测试环境 + relay 生产环境)
项目同步
- 定时执行工作区巡检(CONTEXT.md、Git 状态、pm2 服务状态)
- 自动生成结构化维护报告
- 跟踪 6 个 Clawline 仓库的分支状态(client-web、channel、gateway、sdk、docs、client-wechat)
技术栈
| 组件 | 技术 |
|---|---|
| 前端框架 | React 19 + TypeScript |
| 构建工具 | Vite |
| 样式 | Tailwind CSS |
| 动画 | motion/react (Framer Motion) |
| 认证 | Logto SPA OIDC |
| WebSocket | 自定义 clawChannel SDK |
| 测试 | Playwright 浏览器自动化 |
| 部署 | pm2 serve + Caddy 反代 + rsync |
技能加载
WebBot 加载了 13 个本地技能 + 6 个全局技能:
本地技能:clawhub、coding-agent、gh-issues、github、healthcheck、mcporter、obsidian、openai-image-gen、openai-whisper-api、skill-creator、tmux、video-frames、weather
全局技能 (~/.openclaw/skills/):adversarial-qa、clawline-deploy、codex-delegate、dashboard-collector、server-healthcheck、tavily
开发流程
WebBot 遵循严格的开发纪律:
- 日常开发在
dev分支 — 所有改动提交到 dev - 只 commit 不 push — push 需要 Dad 批准
- 自测优先 — 使用测试账号
test_all_apps / Password123!完整自测后才汇报 - 部署测试环境 — build 后 rsync 到 owl,channel 插件同步到 extensions/ + 清 jiti 缓存 + 重启 gateway
- 合并到 main — 审核通过后 dev → main
重大里程碑
| 日期 | 事件 |
|---|---|
| 2026-03-17 | 配对上线,首次项目修复(项目名、端口、Gemini 依赖清理) |
| 2026-03-18 | 输入框交互重设计,动态建议系统 |
| 2026-03-20 | 网格/列表视图切换,拖拽排序 |
| 2026-03-21 | WebSocket 死循环修复,展开状态持久化 |
| 2026-03-23 | WhatsApp 风格交互分支合并,品牌标识更新 |
| 2026-03-24 | 安全加固分支部署,dev 分支工作流确立 |
| 2026-03-25 | ChatRoom 大重构(2619→1879 行,9 个子组件提取,96/100 分) |
| 2026-04-01 | OpenClaw SDK 迁移(subpath imports),Owl 升级到 2026.3.28 |
| 2026-04-02 | OpenClaw 2026.4.1 升级验证 |
| 2026-04-04 | Agent 隔离修复,断点续传审计 |
| 2026-04-05 | 工具输出格式化、药丸长按发送、技能三分类 |
记忆列表
WebBot 维护了 14+ 条持久化记忆:
- ChatRoom UI 坚持 Discord 平铺风格,不要气泡
- PWA safe-area 正确方案:h-full + env()
- BUILD_HASH 必须是 vite.config 单一变量
- Docker 有状态服务永远不要裸
docker compose up - jiti 缓存:改 plugin 后必须
rm -rf /tmp/jiti/