# openclaw-chat-app **Repository Path**: dongdong-git/openclaw-chat-app ## Basic Information - **Project Name**: openclaw-chat-app - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-08 - **Last Updated**: 2026-04-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OpenClaw Chat App - AI智能助手聊天系统 #### 项目简介 基于OpenClaw API的独立网页聊天应用,提供完整的前后端分离架构,支持实时AI对话、文件上传、文档解析等功能。无需依赖第三方平台,可直接部署使用。 #### 项目状态 - **当前分支**: `develop-v1.0.1` (活跃开发中) - **项目状态**: 🟡 90%完成,待配置和测试 - **创建时间**: 2026-03-05 - **最新更新**: 2026-03-29 ## 🏗️ 软件架构 ### 技术栈 #### 后端 (Node.js + Express) - **运行环境**: Node.js 18+ - **Web框架**: Express 4.18.2 - **数据库**: SQLite (better-sqlite3 12.6.2) - **文件处理**: multer、sharp、mammoth、pdf-parse - **实时通信**: WebSocket (ws 8.20.0) - **其他**: cors、compression、uuid、archiver #### 前端 (Vue.js + Tailwind CSS) - **框架**: Vue 3 (直接引入) - **样式**: Tailwind CSS + 自定义主题 - **功能库**: marked、highlight.js - **文件上传**: 分片上传实现 ### 架构特点 1. **模块化设计**: 已完成代码重构,各功能模块分离 2. **实时聊天**: WebSocket连接OpenClaw API 3. **文件处理**: 支持Word/PDF/Excel文档内容解析 4. **会话持久化**: SQLite数据库存储聊天历史 5. **响应式设计**: 移动端友好的聊天界面 ## 📦 安装教程 ### 前置要求 - Node.js 18+ - npm 或 yarn - OpenClaw 服务 (本地或远程) ### 快速开始 1. **克隆项目** ```bash git clone https://gitee.com/dongdong-git/openclaw-chat-app.git cd openclaw-chat-app ``` 2. **安装依赖** ```bash npm install ``` 3. **配置环境** ```bash cp config.js.example config.js # 编辑config.js配置OpenClaw连接 ``` 4. **启动服务** ```bash npm start # 或使用开发模式 npm run dev ``` 5. **访问应用** 打开浏览器访问: http://localhost:3001 ### Docker部署 ```bash # 构建镜像 docker build -t openclaw-chat-app . # 运行容器 docker run -p 3001:3001 -v ./data:/app/data openclaw-chat-app ``` ## 🚀 使用说明 ### 核心功能 1. **AI智能对话** - 实时与AI助手进行自然语言对话 - 支持流式响应,打字机效果展示 - 会话历史自动保存 2. **文件上传与解析** - 支持Word(.docx)、PDF、Excel(.xlsx)、图片等格式 - 自动提取文档内容进行分析 - 大文件分片上传支持 3. **会话管理** - 创建、切换、删除聊天会话 - 会话历史持久化存储 - 导出聊天记录 4. **系统管理** - 健康状态检查 - 系统配置管理 - 日志查看 ### API接口 - `GET /api/health` - 健康检查 - `POST /api/chat` - 发送消息 - `GET /api/chat/stream` - 流式聊天 - `POST /api/upload` - 文件上传 - `GET /api/sessions` - 会话管理 - `GET /api/documents` - 文档管理 ## 📁 项目结构 ``` openclaw-chat-app/ ├── server.js # 主入口 ├── config.js # 配置文件 ├── routes/ # API路由层 │ ├── index.js # 路由汇总 │ ├── chat.js # 聊天API │ ├── upload.js # 上传API │ └── health.js # 健康检查 ├── services/ # 业务逻辑层 │ ├── openclaw.js # OpenClaw调用 │ ├── documentParser.js # 文档解析 │ └── database.js # 数据库服务 ├── middleware/ # 中间件 │ ├── errorHandler.js # 错误处理 │ └── logger.js # 日志中间件 ├── utils/ # 工具函数 │ ├── fileParser.js # 文件解析 │ └── helpers.js # 辅助函数 ├── public/ # 前端静态文件 │ ├── index.html # 主页面 │ ├── assets/ # 静态资源 │ └── js/ # 前端脚本 ├── uploads/ # 上传文件存储 ├── data/ # 数据库文件 ├── docs/ # 技术文档 ├── docker/ # Docker配置 ├── package.json # 依赖配置 └── README.md # 项目说明 ``` ## 🔧 开发指南 ### 代码规范 - 使用ES6+语法 - 遵循模块化设计原则 - 每个模块不超过200行代码 - 必要的代码注释 ### 测试 ```bash # 运行测试 npm test # 运行测试并生成覆盖率报告 npm run test:coverage # 持续监听模式 npm run test:watch ``` ### 分支策略 - `master` - 生产分支 - `develop` - 开发主分支 - `develop-v1.0.x` - 版本分支 - `feature/*` - 功能分支 - `bugfix/*` - 修复分支 ## 📄 相关文档 ### 技术文档 - [项目章程](./PROJECT-CHARTER.md) - 项目整体规划 - [数据库设计](./docs/DATABASE-DESIGN.md) - 数据模型设计 - [WebSocket连接指南](./docs/Gateway-WebSocket-连接指南.md) - 实时通信配置 - [文件上传指南](./docs/CHUNKED-UPLOAD-GUIDE.md) - 大文件处理 - [重构计划](./docs/REFACTOR-PLAN.md) - 代码架构演进 ### 部署文档 - [Docker部署](./docker/README.md) - 容器化部署 - [快速启动](./docker/quick-start.md) - 快速部署指南 - [系统服务](./openclaw-chat-app.service) - systemd服务配置 ## 🤝 参与贡献 ### 贡献流程 1. Fork 本仓库 2. 创建功能分支 (`git checkout -b feature/amazing-feature`) 3. 提交更改 (`git commit -m 'Add some amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 提交 Pull Request ### 开发要求 - 确保代码通过所有测试 - 更新相关文档 - 遵循现有代码风格 - 添加适当的测试用例 ## 📞 支持与反馈 ### 问题报告 如果您遇到任何问题或有功能建议,请通过以下方式反馈: 1. 在Gitee Issues中提交问题 2. 查看现有文档寻求解决方案 3. 联系项目维护者 ### 联系方式 - **项目主页**: https://gitee.com/dongdong-git/openclaw-chat-app - **OpenClaw官网**: https://openclaw.ai - **社区支持**: https://discord.com/invite/clawd ## 📜 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。 --- **最后更新**: 2026-03-29 **当前版本**: v1.0.1 **开发状态**: 活跃开发中