# conversation_agent.py  — 独立 Agent 模板

核心：DeepSeek function calling + SQLite 会话管理 + we-mp-rss 文章查询。

## 部署位置
`~/project/scripts/conversation_agent.py`

## 依赖
- `requests`
- `sqlite3`（标准库）
- DeepSeek API key（`.env` 中 `DEEPSEEK_API_KEY`）
- we-mp-rss 数据库（`~/project/we-mp-rss-data/db.db`）

## 设计要点

### 工具函数
- `get_today_articles()` — 从 we-mp-rss SQLite 查今日文章
- `get_article_detail(article_id)` — 查单篇文章详情（含正文）

### 会话存储
`state/conversations/{chat_id}.json`，每会话独立，1 小时 TTL。

### 工具调用循环
最多 5 轮。模型返回 tool_calls → 执行工具 → 追加 tool 消息 → 继续循环 → 纯文本则返回。

### 调优参数
- `max_tokens: 1500`（避免过长导致超时）
- `temperature: 0.5`
- `model: deepseek-chat`
- 文章内容截断 `content[:2000]`
- 会话历史 `MAX_HISTORY = 10`
- 回复截断 `reply[:4000]`（企微限制）

## 已验证的对话流程
```
👤 今天有什么文章
🤖 [调 get_today_articles] → 7 篇文章列表
👤 第3篇升本那个，小红书选题
🤖 [调 get_article_detail] → 4 个选题角度，各含标题建议
👤 第二个角度写完整文案
🤖 生成小红书完整文案草稿
```
