# dao
**Repository Path**: starvv_w/dao
## Basic Information
- **Project Name**: dao
- **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-02-27
- **Last Updated**: 2026-03-24
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 《道》系统
一个会成长的数字伙伴
基于蚁群智能的个人AI助手系统 | 越用越懂你 | 本地隐私保护
---
## 简介
《道》是一个基于蚁群智能的个人AI助手系统。核心理念是 **"让每个普通人都能拥有一个会成长的数字伙伴"**。
**蚁群在背后工作,用户在面前享受** —— 不是用户学会用工具,而是工具学会懂用户。
### ✨ 核心特性
- 🐜 **蚁群智能** - 后台有"蚁后、兵蚁、工蚁、雄蚁"协同工作
- 🧬 **基因进化** - 越用越懂用户,形成专属知识库
- 🔒 **本地隐私** - 数据存储在用户本地,完全可控
- 📱 **多通道支持** - 钉钉、飞书、QQ 等多平台
- 🖥️ **Web 控制台** - 浏览器可视化管理界面
- ⚡ **轻量高效** - 基于 Go 语言,启动快、资源占用低
---
## 功能亮点
### 🐜 蚁群智能系统
模拟蚂蚁群体的协作行为,四种角色协同工作:
| 角色 | 职责 |
|------|------|
| **蚁后 (Queen)** | 任务解析、调度协调、结果整合 |
| **兵蚁 (Soldier)** | 约束检查、教训加载、风险预警 |
| **工蚁 (Worker)** | 内容生成、任务执行 |
| **雄蚁 (Drone)** | 创意探索、基因重组 |
### 🧬 基因库系统
系统会从用户交互中自动学习,形成四类基因:
| 基因类型 | 说明 |
|---------|------|
| **经验基因** | 从成功案例中提取的策略 |
| **教训基因** | 从失败中提取的警示 |
| **教导基因** | 用户直接教导的知识 |
| **信条基因** | 核心价值观,不可删除 |
### 🖥️ Web 控制台
提供浏览器可视化管理界面,一键启动即可使用:
```bash
./dao gateway
```
访问 http://127.0.0.1:8088 即可使用:
| 功能 | 说明 |
|------|------|
| **首页** | 系统概览、快速操作入口 |
| **对话** | 与 AI 助手交互对话 |
| **基因库** | 查看、管理、导入导出基因 |
| **定时任务** | 创建和管理定时任务 |
| **通道管理** | 配置消息通道 |
| **技能市场** | 浏览和安装技能包 |
| **数据统计** | 使用报告和成长曲线 |
| **隐私中心** | 数据管理和隐私控制 |
| **参数设置** | 模型配置、API Key 管理 |
### 📢 多通道集成
支持多种聊天平台,一个基因库共享所有通道:
| 通道 | 状态 | 特点 |
|------|------|------|
| 钉钉 | ✅ | Stream 模式,交互按钮 |
| 飞书 | ✅ | 事件订阅,卡片消息 |
| QQ | ✅ | 官方 API |
| Discord | ✅ | Socket 模式 |
| Telegram | ✅ | 语音支持 |
| 企业微信 | ✅ | 企业通讯 |
| Slack | ✅ | 团队协作 |
### 🔒 隐私保护
- 所有数据存储在本地(`~/.dao/`)
- 基因只存储抽象策略,不含原始内容
- 任务内容处理完毕后立即删除
- 支持数据导出、备份、清理
---
## 快速开始
### 安装
```bash
# 克隆仓库
git clone https://gitee.com/starvv_w/dao.git
cd dao/dao-app
# 构建(包含前端)
make build
# 或直接运行
make run
```
### 初始化
```bash
# 初始化配置
dao init
# 配置 API Key(编辑 ~/.dao/config.json)
# 在 model_list 中配置你的 API Key
```
### 启动服务
```bash
# 启动网关服务(包含 Web 控制台)
./dao gateway
# 访问 Web 控制台
# http://127.0.0.1:8088
```
### 基本使用
```bash
# 单次对话
dao agent -m "帮我写个周报"
# 交互模式
dao agent -i
# 查看帮助
dao --help
```
---
## 使用指南
### CLI 命令
#### 初始化
```bash
dao init # 交互式初始化
dao init --model glm-4.7 # 指定默认模型
```
#### 对话
```bash
# 单次对话
dao agent -m "帮我写封邮件给老板请假"
# 交互模式
dao agent -i
dao agent --interactive
# 指定模型
dao agent -m "消息" --model gpt-4
```
#### 基因管理
```bash
# 查看基因统计
dao genes stats
# 列出所有基因
dao genes list
# 按类型/分类筛选
dao genes list --type=experience --category=email
# 查看基因详情
dao genes show
# 教导系统
dao genes teach "周报要列数据" --category=report --priority=8
# 删除基因
dao genes delete
# 导出基因库
dao genes export --output=my_genes.dao
# 导入基因库
dao genes import my_genes.dao
```
#### 定时任务
```bash
# 列出定时任务
dao cron list
# 创建定时任务(支持自然语言)
dao cron add "每天早上9点提醒我开会"
# 查看任务详情
dao cron show
# 立即执行任务
dao cron run
# 暂停/恢复任务
dao cron pause
dao cron resume
# 删除任务
dao cron delete
# 查看执行历史
dao cron history
# 查看统计
dao cron stats
```
#### 技能管理
```bash
# 搜索技能
dao skills search "邮件"
# 查看技能详情
dao skills show
# 安装技能
dao skills install
# 列出已安装技能
dao skills list
# 卸载技能
dao skills uninstall
# 启用/禁用技能
dao skills enable
dao skills disable
# 创建技能包
dao skills create my-skill
# 查看统计
dao skills stats
```
#### 通道管理
```bash
# 查看已连接通道
dao channels list
# 查看通道详情
dao channels show dingtalk
# 测试通道连接
dao channels test dingtalk --message "测试消息"
```
#### 配置管理
```bash
# 查看配置
dao config show
# 获取配置项
dao config get model
# 设置配置项
dao config set model glm-4.7
```
#### 版本信息
```bash
dao version
```
#### 网关服务
```bash
# 启动网关服务(连接钉钉、飞书、QQ等通道 + Web 控制台)
./dao gateway
# 指定 HTTP 端口
./dao gateway -p 8080
# 指定监听地址
./dao gateway --host 0.0.0.0
# 详细输出
./dao gateway -v
```
### Web 控制台使用
启动网关服务后,访问 http://127.0.0.1:8088
#### 首页
- 系统状态概览
- 基因库、定时任务、通道统计
- 最近活动记录
- 快速操作入口
#### 对话
- 与 AI 助手交互
- 多轮对话支持
- 反馈收集
- 学习提示
#### 基因库
- 浏览所有基因
- 按类型/分类筛选
- 搜索基因内容
- 查看基因详情
- 导入/导出基因库
#### 定时任务
- 创建定时任务
- 支持自然语言输入
- 任务执行历史
- 启用/禁用任务
#### 参数设置
- 配置 AI 模型
- 管理 API Key
- 添加自定义模型
- 系统参数调整
### 对话交互
在对话中,系统会根据任务自动调度蚁群:
```
你: 帮我写封邮件通知大家下午开会
🐜 工蚁们正在工作...
🛡️ 兵蚁检查历史教训...
各位同事:
下午3点请在会议室开会,
讨论项目进展。
收到请回复。
这样可以吗?
[1] 👍 挺好 [2] ✏️ 改一下 [3] 🔄 重来
```
**反馈类型**:
| 反馈 | 效果 |
|------|------|
| 👍 挺好 | 强化当前策略,提升基因置信度 |
| ✏️ 改一下 | 分析修改意图,提取新基因 |
| 🔄 重来 | 记录教训,降低基因置信度 |
### 使用场景
| 场景 | 示例输入 |
|------|---------|
| 邮件撰写 | "帮我写封邮件给老板请假" |
| 周报生成 | "帮我写周报" |
| 会议通知 | "通知大家下午3点开会" |
| 创意探索 | "想几个公众号选题" |
| 催办跟进 | "帮我催一下客户" |
| 请假申请 | "帮我写个请假条" |
| 定时提醒 | "每周五提醒我写周报" |
| 用户教导 | "记住,周报要列数据" |
---
## 架构设计
### 系统架构
```
┌─────────────────────────────────────────────────────────────────────┐
│ 《道》系统架构 │
├─────────────────────────────────────────────────────────────────────┤
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ 用户界面层 │ │
│ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │
│ │ │ CLI │ │ Web控制台│ │ 聊天通道 │ │ 桌面应用 │ │ │
│ │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ 通道适配层 │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ 钉钉 │ │ 飞书 │ │ QQ │ │Discord │ │ 更多...│ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ 蚁群调度层 │ │
│ │ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ │ │
│ │ │ 蚁后 │ ←→ │ 兵蚁 │ ←→ │ 工蚁 │ ←→ │ 雄蚁 │ │ │
│ │ └──────┘ └──────┘ └──────┘ └──────┘ │ │
│ │ ┌──────────────────────────────────────────────────┐ │ │
│ │ │ 黑板系统 │ │ │
│ │ └──────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ 核心引擎层 │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │
│ │ │ 基因引擎 │ │ 进化引擎 │ │ 记忆引擎 │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────┘ │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ 模型服务层 │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ 智谱 │ │ OpenAI │ │ Claude │ │ Qwen │ │ Ollama │ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ └─────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────┘
```
### 目录结构
```
dao-app/
├── cmd/ # 命令行入口
│ └── dao/ # CLI 主命令
│ ├── main.go # 入口
│ ├── cmd_agent.go # agent 子命令
│ ├── cmd_gateway.go # gateway 子命令
│ ├── cmd_genes.go # genes 子命令
│ ├── cmd_cron.go # cron 子命令
│ ├── cmd_skills.go # skills 子命令
│ ├── cmd_channels.go # channels 子命令
│ └── cmd_config.go # config 子命令
├── internal/ # 内部包
│ ├── agent/ # 蚁群智能系统
│ │ ├── queen.go # 蚁后
│ │ ├── soldier.go # 兵蚁
│ │ ├── worker.go # 工蚁
│ │ ├── drone.go # 雄蚁
│ │ ├── blackboard.go # 黑板系统
│ │ └── types.go # 类型定义
│ ├── gene/ # 基因库系统
│ │ ├── gene.go # 基因接口
│ │ ├── experience.go # 经验基因
│ │ ├── lesson.go # 教训基因
│ │ ├── teaching.go # 教导基因
│ │ ├── belief.go # 信条基因
│ │ └── library.go # 基因库管理
│ ├── evolution/ # 进化引擎
│ ├── memory/ # 记忆系统
│ ├── channel/ # 通道适配器
│ │ ├── dingtalk/ # 钉钉
│ │ ├── feishu/ # 飞书
│ │ ├── qq/ # QQ
│ │ ├── discord/ # Discord
│ │ ├── telegram/ # Telegram
│ │ ├── wecom/ # 企业微信
│ │ └── slack/ # Slack
│ ├── model/ # 模型服务
│ ├── cron/ # 定时任务
│ ├── skill/ # 技能系统
│ ├── conversation/ # 对话管理
│ ├── privacy/ # 隐私保护
│ └── web/ # Web 服务
│ ├── server_embed.go # Web 服务器
│ ├── embed.go # 静态文件嵌入
│ ├── api/ # API 路由
│ ├── handler/ # HTTP 处理器
│ ├── static/ # 前端构建输出
│ └── frontend/ # 前端源码
├── pkg/ # 公共包
│ ├── config/ # 配置管理
│ ├── storage/ # 存储抽象
│ ├── logger/ # 日志系统
│ ├── crypto/ # 加密工具
│ └── utils/ # 工具函数
├── configs/ # 配置文件模板
├── docs/ # 文档
├── Makefile # 构建脚本
├── go.mod
└── go.sum
```
---
## 开发指南
### 环境要求
- Go 1.21+
- Node.js 18+ (仅前端开发需要)
- Make (可选)
### 构建
```bash
# 完整构建(包含前端)
make build
# 仅构建 Go
go build -o dao.exe ./cmd/dao
# 开发模式
make run
# 前端开发
cd internal/web/frontend
npm install
npm run dev
# 构建前端
cd internal/web/frontend
npm run build
# 测试
make test
# 清理
make clean
```
### 开发前端
前端使用 React + TypeScript + Vite + Tailwind CSS:
```bash
cd internal/web/frontend
# 安装依赖
npm install
# 开发模式
npm run dev
# 构建生产版本
npm run build
```
前端构建后会自动输出到 `internal/web/static/`,然后通过 Go 的 `embed` 功能嵌入到二进制文件中。
---
## 配置说明
配置文件位于 `~/.dao/config.json`:
```json
{
"version": "1.0.0",
"workspace": "~/.dao",
"model_list": [
{
"model_name": "deepseek-chat",
"model": "deepseek-chat",
"api_key": "YOUR_API_KEY",
"api_base": "https://api.deepseek.com"
}
],
"agents": {
"defaults": {
"model": "deepseek-chat",
"max_tokens": 4096,
"temperature": 0.7
}
},
"channels": {
"dingtalk": {
"enabled": false,
"webhook": "",
"secret": ""
},
"feishu": {
"enabled": false,
"app_id": "",
"app_secret": ""
}
},
"genes": {
"auto_save": true,
"max_count": 1000
},
"privacy": {
"session_retention": 7,
"auto_cleanup": true,
"anonymization_level": 0
},
"web": {
"enabled": true,
"port": 8088,
"host": "127.0.0.1"
},
"cron": {
"enabled": true
},
"logging": {
"level": "info"
}
}
```
### 支持的模型
| 提供商 | 模型 | 说明 |
|--------|------|------|
| DeepSeek | deepseek-chat, deepseek-coder, deepseek-reasoner | 推荐,性价比高 |
| 智谱 AI | glm-4.7, glm-4, glm-4-flash | 中文能力强 |
| OpenAI | gpt-4o, gpt-4-turbo, gpt-3.5-turbo | 需要代理 |
| 通义千问 | qwen-plus, qwen-turbo, qwen-max | 阿里云 |
| Claude | claude-3-5-sonnet, claude-3-opus, claude-3-haiku | Anthropic |
| Moonshot | moonshot-v1-8k, moonshot-v1-32k | 长文本 |
| Ollama | llama3, qwen2, mistral, codellama | 本地模型,隐私优先 |
| 自定义 | 任意 OpenAI 兼容 API | 支持私有部署 |
在 Web 控制台的「参数设置」中可以方便地添加和管理模型配置。
---
## 数据存储
所有数据存储在本地 `~/.dao/` 目录:
```
~/.dao/
├── config.json # 配置文件
├── genes/ # 基因库
│ ├── library.json # 索引
│ ├── experiences/ # 经验基因
│ ├── lessons/ # 教训基因
│ ├── teachings/ # 教导基因
│ └── beliefs/ # 信条基因
├── sessions/ # 会话数据
├── cron/ # 定时任务
├── skills/ # 已安装技能
├── logs/ # 日志
└── backups/ # 备份
```
---
## 路线图
| 版本 | 里程碑 | 状态 |
|------|--------|------|
| v0.1.0 | 核心基础(CLI、基因库、蚁群) | ✅ 完成 |
| v0.2.0 | 多通道集成(钉钉、飞书、QQ) | ✅ 完成 |
| v0.3.0 | Web 控制台 | ✅ 完成 |
| v0.4.0 | 高级特性(进化引擎、技能市场) | ✅ 完成 |
| v1.0.0 | 优化发布 | ✅ 完成 |
详细路线图请查看 [docs/03路线图.md](docs/03路线图.md)
---
## 文档
- [用户故事](docs/00用户故事.md)
- [产品需求文档](docs/01PRD.md)
- [开发进度](docs/02开发进度.md)
- [功能文档](docs/features/)
- [F001-基因库系统](docs/features/F001-基因库系统.md)
- [F002-蚁群智能系统](docs/features/F002-蚁群智能系统.md)
- [F003-定时任务系统](docs/features/F003-定时任务系统.md)
- [F004-智能对话系统](docs/features/F004-智能对话系统.md)
- [F005-技能市场系统](docs/features/F005-技能市场系统.md)
- [F006-多通道集成系统](docs/features/F006-多通道集成系统.md)
- [F007-Web控制台](docs/features/F007-Web控制台.md)
- [F008-隐私保护系统](docs/features/F008-隐私保护系统.md)
---
## 许可证
MIT License
---
《道》系统 - 让每个普通人都能拥有一个会成长的数字伙伴