# AutoMate **Repository Path**: lethe3/AutoMate ## Basic Information - **Project Name**: AutoMate - **Description**: No description available - **Primary Language**: NodeJS - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-21 - **Last Updated**: 2026-03-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AutoMate 桌面智能体聊天系统 ## 项目概述 AutoMate 是一款基于纯前端技术栈构建的跨平台桌面智能体聊天系统,参照OpenClaw实现方式。该系统旨在为用户提供一个界面精美、安装轻量、功能强大的智能体交互平台。用户可以通过类似 QQ 等即时通讯软件的聊天界面与各种智能体进行对话交互,智能体根据用户输入调用相应的 skill 执行操作,并将执行过程或结果返回给用户。系统使用Node.js作为核心运行环境,实现数据库访问和大模型接口调用,智能体配置统一以 JSON 格式存储。 ## 项目定位 AutoMate 定位为一款智能体交互平台,通过聊天界面实现用户与智能体的交互,智能体根据用户输入调用不同的 skill 执行特定任务,将执行过程或结果返回给用户,提供高效、智能的任务处理体验。 ## 核心功能 ### 智能体管理 - 实现智能体的加载、分组、搜索和状态管理 - 支持智能体的在线状态监控和响应时间统计 ### 聊天交互 - 实现流畅的消息发送和接收功能 - 支持技能调用和执行结果展示 - 确保消息状态的正确流转 ### 文件处理 - 支持文件上传和管理 - 实现文件元数据的存储和检索 - 确保文件处理的安全性和可靠性 ### 主题定制 - 提供浅色/深色主题切换功能 - 支持界面个性化设置 - 确保主题切换的流畅性和一致性 ### 启动体验 - 优化应用启动流程 - 实现智能体配置的快速加载 - 提供友好的欢迎页和快速开始引导 ## 技术栈 ### 前端技术 - React 18+:UI 开发框架 - TypeScript 5.0+:类型安全 - Tailwind CSS 3.0+:原子化 CSS,快速还原 UI - Vite 5.0+:极速的开发服务器和打包工具 - Radix UI 1.0+:提供无样式的复杂交互逻辑(弹窗、菜单) - Lucide React 0.260+:矢量图标库 - Zustand 4.0+:轻量级全局状态管理(聊天记录、设置) - React Router 6.0+:页面视图切换 - react-markdown 9.0+:渲染 AI 的回复内容 - @tauri-apps/plugin-fs 2.0+:读写本地文件 - @tauri-apps/plugin-dialog 2.0+:原生文件选择/保存窗口 - Axios 1.0+:调用 AI 接口或本地 API ### 后端技术 - Node.js 18.0+:核心运行环境 - Playwright 1.30+:浏览器自动化测试工具,用于智能体的网页操作 - SQLite 3.40+:轻量级嵌入式数据库 - sqlite3 5.0+:SQLite 驱动 - better-sqlite3 8.0+:增强的 SQLite 驱动 ### 桌面框架 - Tauri 2.x:桌面框架、Rust 后端、打包成 exe/deb ## 文档导航 ### 基础规范 - [命名规范](./docs/基础规范/命名规范.md) - 变量/函数/表名/接口/文件的全局命名规则 - [编码规范](./docs/基础规范/编码规范.md) - React/TypeScript/Node.js的代码规范 ### 数据层设计 - [数据库设计](./docs/数据层设计/数据库设计.md) - 库表结构、索引、事务 - [数据存储设计](./docs/数据层设计/数据存储设计.md) - 本地存储、文件存储、加密存储 ### 接口层设计 - [前端组件接口](./docs/接口层设计/前端组件接口.md) - React组件接口定义 - [后端API接口](./docs/接口层设计/后端API接口.md) - Node.js API接口 - [Tauri通信接口](./docs/接口层设计/Tauri通信接口.md) - Tauri前后端通信接口 ### 业务功能模块 - [智能体模块](./docs/业务功能模块/智能体模块.md) - 智能体管理、分组、搜索、状态 - [聊天交互模块](./docs/业务功能模块/聊天交互模块.md) - 消息发送接收、技能调用、文件上传 - [主题模块](./docs/业务功能模块/主题模块.md) - 主题切换、样式适配 - [启动页模块](./docs/业务功能模块/启动页模块.md) - 启动流程、欢迎页 ### 非功能设计 - [性能设计](./docs/非功能设计/性能设计.md) - 接口性能指标、优化方案 - [安全设计](./docs/非功能设计/安全设计.md) - 鉴权/授权/防注入/防XSS/接口加密 - [兼容性设计](./docs/非功能设计/兼容性设计.md) - 跨平台兼容性 - [可用性设计](./docs/非功能设计/可用性设计.md) - 界面易用性 - [可维护性设计](./docs/非功能设计/可维护性设计.md) - 模块化、日志 - [可扩展性设计](./docs/非功能设计/可扩展性设计.md) - 插件化、扩展接口 ### 技术架构 - [前端技术栈](./docs/技术架构/前端技术栈.md) - React、TypeScript、Tailwind CSS、Vite - [后端技术栈](./docs/技术架构/后端技术栈.md) - Node.js、Playwright - [数据库技术](./docs/技术架构/数据库技术.md) - SQLite、sqlite3、better-sqlite3 - [架构设计](./docs/技术架构/架构设计.md) - 整体架构、模块划分、技术选型 ## 开发约定 ### 代码规范 - 遵循 React/TypeScript/Node.js 的代码规范 - 代码提交前必须通过 lint 和 typecheck - 所有新功能必须编写对应的测试用例 - UI/UX 设计必须使用 @[ui-ux-pro-max] skill 进行设计 ### 测试规范 - 前端测试必须使用 Playwright MCP 框架 - 后端测试必须使用 Chrome DevTools MCP 框架 - 每个测试用例必须有对应的测试函数,函数名以 `test_` 开头 - 测试文件放在 `/tests/` 目录下 ### 日期和时间约定 - 涉及当前日期或时间,都需要使用 `datetime.now()` 函数获取 - 数据库时间字段使用 `DATETIME` 类型,默认值为 `CURRENT_TIMESTAMP` - API 响应中的时间戳使用 ISO 8601 格式 ### 安全约定 - 敏感信息(API 密钥、密码等)必须加密存储 - 用户数据本地化存储,不上传云端 - 防止 SQL 注入和 XSS 攻击 - 文件传输和存储必须进行安全性保护 - 技能执行必须使用沙箱隔离 ## 配置约定 - 智能体配置文件路径:`./config/agents.json` - 技能存储路径:`./skills/` - 数据库文件路径:`./data/automate.db` - 日志文件路径:`./logs/` ## 版本约定 - 遵循语义化版本规范(Semantic Versioning) - 版本号格式:MAJOR.MINOR.PATCH - 主版本号:不兼容的 API 修改 - 次版本号:向下兼容的功能性新增 - 修订号:向下兼容的问题修正 ## 项目维护 - 文档维护责任人:开发团队 - 文档更新频率:随项目迭代同步更新 - 文档审核:每次重大更新前需经过团队审核 - 文档版本:与项目版本保持同步 ## 许可证 本项目采用 MIT 许可证。