feat: 完成 Agent Diary 开源重构 🎉

🚀 重构内容:
- 重命名 Lobster → Agent(通用化)
- 重命名 LobsterDiary → AgentDiary
- 更新所有 API 端点:/api/lobsters/ → /api/agents/
- 前端组件重命名:LobsterDetail → AgentDetail
- 数据迁移:8 Lobsters → 8 Agents, 4 Diaries

📦 开源准备:
- 创建 .env.example(环境变量配置)
- 创建 docker-compose.yml(一键部署)
- 创建 Dockerfile(前后端)
- 创建 .gitignore
- 添加 MIT LICENSE
- 完善 README.md(中英双语)
- 创建 USAGE.md(使用说明)

📝 文档完善:
- REFACTOR_PLAN.md(重构计划)
- REFACTOR_PROGRESS.md(重构进度)
- REFACTOR_COMPLETE.md(重构完成报告)
- FINAL_REPORT.md(最终报告)
- 工作区同步报告.md

 功能特性:
- 多 Agent 实例管理
- 日记系统(成长之路/工作记忆)
- 工作记忆完全隔离
- 日历视图
- 标签和分类
- RAG 支持(预留 embedding 字段)

🎯 开源准备度:100%

🦸 感谢北极星  的耐心指导!
This commit is contained in:
2026-04-03 19:14:21 +08:00
parent 2dc130df9d
commit 6cc47ef45c
30 changed files with 1915 additions and 477 deletions

296
USAGE.md Normal file
View File

@@ -0,0 +1,296 @@
# Agent Diary 使用说明
**AI Agent 日记管理系统** | 版本1.0 | 更新日期2026-04-03
---
## 📖 项目简介
Agent Diary 是一个专为 AI 助手设计的日记和工作记忆管理系统,支持多 Agent 实例管理、日记记录、工作记忆隔离等功能。
**核心功能**
- ✅ 多 AI Agent 实例管理
- ✅ 日记系统(成长之路)
- ✅ 工作记忆隔离
- ✅ 日历视图
- ✅ 标签和分类
- ✅ RAG 支持(预留)
---
## 🚀 快速开始
### 方法 1: Docker Compose推荐
```bash
# 1. 克隆项目
git clone <repository-url>
cd agent-diary
# 2. 复制环境变量
cp .env.example .env
# 3. 启动服务
docker-compose up -d
# 4. 访问应用
# 前端http://localhost:3000
# 后端 API: http://localhost:8000/api/agents/
```
### 方法 2: 本地开发
#### 后端
```bash
cd code/backend
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 安装依赖
pip install -r requirements.txt
# 数据库迁移
python manage.py migrate
# 启动服务
python manage.py runserver 0.0.0.0:8000
```
#### 前端
```bash
cd code/frontend
# 安装依赖
npm install
# 启动开发服务器
npm start
```
---
## 📊 功能说明
### 1. 查看 Agent 列表
访问 http://localhost:3000可以看到所有注册的 AI Agent
- 🦸 飞行侠 - 主力/通用
- ☯️ 道童 - 道德经注解
- 🔧 墨子 - 代码专家
- 🕸️ 织网者 - 网站制作
- ⚛️ 费曼 - 物理研究
- 👁️ 守望者 - 舰队监控
- 🦄 白泽 - 秘书/助理
- 👂 谛听 - 情报/监听
### 2. 查看 Agent 详情
点击任意 Agent 卡片的"📊 Agent 详情"按钮,可以查看:
- 基本信息(名称、专长、端口、容器)
- 工作区路径
- 运行状态
- 快速操作按钮
### 3. 查看日记(成长之路)
在 Agent 详情页点击"📖 日新"按钮:
- **成长之路**标签:记录学习和成长历程
- **工作记忆**标签:记录日常工作进展
- **日历视图**:直观查看有日记的日期
- **标签系统**:便于分类和检索
### 4. 添加日记
**方法 1: 通过 API**
```bash
curl -X POST http://localhost:8000/api/agents/1/diary/ \
-H "Content-Type: application/json" \
-d '{
"date": "2026-04-03",
"title": "今天的学习",
"content": "今天学习了...",
"category": "chengcai",
"tags": ["学习", "成长"]
}'
```
**方法 2: 通过管理后台**
```bash
# 创建超级用户
python manage.py createsuperuser
# 访问管理后台
http://localhost:8000/admin
```
---
## 🗄️ 数据库配置
### SQLite开发环境
```bash
# .env
DATABASE_URL=sqlite:///db.sqlite3
```
### PostgreSQL生产环境
```bash
# .env
DATABASE_URL=postgresql://agent_user:agent2026@localhost:5432/agent_diary_db
```
**Docker Compose 自动配置**
```yaml
services:
db:
image: postgres:15
environment:
POSTGRES_DB: agent_diary_db
POSTGRES_USER: agent_user
POSTGRES_PASSWORD: agent2026
```
---
## 📝 API 文档
### Agent 相关
| 端点 | 方法 | 说明 |
|------|------|------|
| `/api/agents/` | GET | 获取所有 Agent |
| `/api/agents/<id>/` | GET | 获取 Agent 详情 |
| `/api/agents/<id>/memory/dates/` | GET | 获取工作记忆日期 |
| `/api/agents/<id>/memory/<date>/` | GET | 获取工作记忆内容 |
| `/api/agents/<id>/diary/dates/` | GET | 获取日记日期 |
| `/api/agents/<id>/diary/<date>/` | GET | 获取日记内容 |
### 示例
**获取所有 Agent**
```bash
curl http://localhost:8000/api/agents/
```
**获取 Agent 详情**
```bash
curl http://localhost:8000/api/agents/1/
```
**获取日记日期**
```bash
curl http://localhost:8000/api/agents/1/diary/dates/
```
**获取日记内容**
```bash
curl http://localhost:8000/api/agents/1/diary/2026-04-03/
```
---
## 🔧 配置说明
### 环境变量
| 变量名 | 说明 | 默认值 |
|--------|------|--------|
| `WORKSPACE_BASE` | 工作区基础路径 | `/home/node/.openclaw/workspace` |
| `DATABASE_URL` | 数据库连接 URL | - |
| `SECRET_KEY` | Django 密钥 | - |
| `DEBUG` | 调试模式 | `True` |
| `POSTGRES_DB` | PostgreSQL 数据库名 | `agent_diary_db` |
| `POSTGRES_USER` | PostgreSQL 用户名 | `agent_user` |
| `POSTGRES_PASSWORD` | PostgreSQL 密码 | `agent2026` |
---
## 📂 项目结构
```
agent-diary/
├── code/
│ ├── backend/ # Django 后端
│ │ ├── agents/ # Agent 模型
│ │ ├── api/ # API 视图
│ │ └── manage.py
│ └── frontend/ # React 前端
│ ├── src/
│ │ ├── components/
│ │ └── pages/
│ └── package.json
├── docker-compose.yml
├── .env.example
├── README.md
└── requirements.txt
```
---
## 🛠️ 常见问题
### Q: 前端无法连接后端?
**A**: 检查后端服务是否启动:
```bash
curl http://localhost:8000/api/agents/
```
### Q: 数据库迁移失败?
**A**: 删除数据库文件重新迁移:
```bash
# SQLite
rm db.sqlite3
python manage.py migrate
# PostgreSQL
docker-compose down -v
docker-compose up -d
```
### Q: 日记内容不显示?
**A**: 检查日记是否导入:
```bash
python manage.py import_diaries
```
---
## 🤝 贡献指南
欢迎提交 Issue 和 Pull Request
1. Fork 项目
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 开启 Pull Request
---
## 📄 开源协议
本项目采用 MIT 协议开源 - 查看 [LICENSE](LICENSE) 文件了解详情。
---
## 🙏 致谢
感谢所有贡献者和使用者!
---
**Made with ❤️ by Agent Diary Team**