# tall2task **Repository Path**: xm_recycle/tall2task ## Basic Information - **Project Name**: tall2task - **Description**: 让AI帮您管理日程!这款终端应用支持用日常语言对话式交互,轻松实现任务/项目的添加、删除、修改和查询。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-06 - **Last Updated**: 2026-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Tall2Task 数字人平台使用说明书 ## 1. 系统概述 Tall2Task 是一个基于人工智能的可扩展数字人定义和使用平台,支持多数字人、多技能的灵活配置,通过自然语言交互帮助用户高效完成各种任务。 ### 主要功能 - **数字人管理**: 支持多个数字人,每个数字人具有独特的性格和技能组合 - **技能系统**: 可扩展的技能定义框架,支持日程管理、文件管理、邮件发送等多种技能 - **自然语言交互**: 通过对话方式与数字人进行交互,完成各种任务 - **工具模块化**: 独立的工具模块,包括日程管理、邮件发送、文件读写等 - **智能提示词构建**: 自动合并数字人设定和技能定义,生成系统提示词 - **高度可定制**: 轻松创建自定义数字人和技能,满足个性化需求 ### 支持的数字人 - **小深**: 具备文件管理和邮件发送技能 - **阿芳**: 我的老婆,具备日程管理技能 ## 2. 快速开始 ### 方式一:使用启动脚本(推荐) 1. 确保已安装Python 3.7+ 2. 下载项目文件 3. 运行启动脚本: - Windows: 双击 `start.bat` - Linux/macOS: 在终端运行 `./start.sh` ### 方式二:使用命令行 ```bash # 克隆项目 git clone https://gitee.com/xm_recycle/tall2task.git cd tall2task # 安装依赖 pip install -r requirements.txt # 运行平台 python -m tall_core ``` **运行方式说明**: - 推荐使用启动脚本(方式一),会自动处理依赖和环境配置 - 开发者可以使用命令行方式(方式二),便于调试和自定义配置 ### 环境要求 - Python 3.7+ - 网络连接(用于AI服务) ### 虚拟环境创建(推荐) 为了隔离项目依赖,建议使用虚拟环境: #### Linux/macOS ```bash # 创建虚拟环境 python3 -m venv venv # 激活虚拟环境 source venv/bin/activate # 安装依赖 pip install -r requirements.txt # 运行平台 python -m tall_core # 退出虚拟环境 deactivate ``` #### Windows ```bash # 创建虚拟环境 python -m venv venv # 激活虚拟环境 venv\Scripts\activate # 安装依赖 pip install -r requirements.txt # 运行平台 python -m tall_core # 退出虚拟环境 deactivate ``` ### 依赖安装说明 项目依赖在 `requirements.txt` 文件中定义: ``` requests>=2.25.0 # HTTP请求 configparser>=5.0.0 # 配置文件管理 pyyaml>=6.0 # YAML配置解析 jinja2>=3.0.0 # 模板引擎 prompt-toolkit>=3.0.0 # 命令行交互 rich>=13.0.0 # 终端美化 markdown>=3.3.0 # Markdown处理 ``` 安装依赖: ```bash # 安装所有依赖 pip install -r requirements.txt # 或者逐个安装 pip install requests configparser pyyaml jinja2 prompt-toolkit rich markdown ``` ### 首次使用 1. 运行程序后,按提示完成初始配置 - 设置API密钥(推荐使用环境变量) - 选择默认数字人(默认:小深) 2. 设置API密钥(推荐使用环境变量): ```bash # Linux/macOS export DEEPSEEK_API_KEY="your_api_key_here" # Windows setx DEEPSEEK_API_KEY "your_api_key_here" ``` 3. 启动后,系统会显示欢迎信息和当前数字人信息 ## 3. 功能使用指南 ### 3.1 数字人切换 平台支持在运行时切换不同的数字人,每个数字人具有独特的性格和技能组合。 #### 切换数字人 使用 `@数字人昵称` 命令切换数字人: ``` @小深 # 切换到小深 @阿芳 # 切换到阿芳 ``` #### 查看可用数字人 系统启动时会显示当前数字人和可用技能列表。 ### 3.2 日程管理技能(阿芳) 阿芳具备日程管理技能,可以管理任务、项目和提醒。 #### 添加任务 ``` 请帮我添加一个任务:明天下午三点开会,主题是项目讨论 ``` #### 查看任务 ``` 列出任务 # 查看所有任务 列出当前任务 # 只查看未完成的任务 ``` #### 修改任务 ``` 把任务1的截止时间改到后天 ``` #### 删除任务 ``` 删除任务1 ``` #### 创建项目 ``` 创建一个新项目:网站重构 ``` #### 查看项目 ``` 列出项目 # 查看所有项目 列出当前项目 # 只查看未完成的项目 ``` #### 查看项目任务 ``` 列出1号项目的任务 # 查看指定项目的所有任务 ``` #### 设置提醒 ``` 为任务1设置提醒:明天上午9点 ``` #### 查看提醒 ``` 当前提醒 # 查看所有活跃的提醒 ``` ### 3.3 文件管理技能(小深) 小深具备文件管理技能,可以读取、写入和修改文件。 #### 读取文件 ``` 请读取example_usage.py文件的内容 ``` #### 写入文件 ``` 请将以下内容写入test.txt: Hello World ``` #### 修改文件 ``` 请将test.txt文件中的Hello改为Hi ``` ### 3.4 邮件发送技能(小深) 小深具备邮件发送技能,可以发送邮件。 #### 发送邮件 ``` 请发送一封邮件给test@example.com,主题是测试邮件,内容是这是一封测试邮件 ``` ### 3.5 快捷命令 不同数字人支持不同的快捷命令: **阿芳(日程管理)**: - `列出任务` / `列出当前任务` - 查看任务列表 - `列出项目` / `列出当前项目` - 查看项目列表 - `列出[X]号项目的任务` - 查看指定项目的任务 - `当前提醒` - 查看所有活跃提醒 **小深(文件管理 + 邮件发送)**: - `列出任务` / `列出当前任务` - 查看任务列表 - `列出项目` / `列出当前项目` - 查看项目列表 - `当前提醒` - 查看所有活跃提醒 - `列出[X]号项目的任务` - 查看指定项目的任务 ### 3.6 配置管理 #### API密钥配置 推荐使用环境变量设置API密钥: ```bash # Linux/macOS export DEEPSEEK_API_KEY="your_api_key_here" # Windows setx DEEPSEEK_API_KEY "your_api_key_here" ``` #### AI模型配置 平台支持多种AI模型,您可以在 `config/platform.ini` 文件中配置和使用不同的AI模型。 **支持的AI模型**: | 模型 | 标识符 | 说明 | API密钥环境变量 | |------|--------|------|----------------| | DeepSeek | `deepseek` | 默认模型,性价比高 | `DEEPSEEK_API_KEY` | | 通义千问 | `qwen` | 阿里云大模型,中文能力强 | `QWEN_API_KEY` | | OpenAI兼容 | `openai_compatible` | 支持本地模型(Ollama、vLLM等) | 无需配置 | **配置方法**: 1. **配置平台主配置文件** (`config/platform.ini`) ```ini [AI] # 当前使用的AI提供商(deepseek/qwen/openai_compatible) current_provider = deepseek # 通用AI参数 temperature = 0.7 max_tokens = 5000 enable_streaming = true timeout = 60 max_history_length = 20 [DEEPSEEK] api_key = ${DEEPSEEK_API_KEY} api_url = https://api.deepseek.com/v1/chat/completions model = deepseek-chat [QWEN] api_key = ${QWEN_API_KEY} api_url = https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions model = qwen-turbo [OPENAI_COMPATIBLE] api_key = dummy api_url = http://localhost:11434/v1/chat/completions model = llama3 ``` 2. **设置环境变量** ```bash # DeepSeek API密钥 export DEEPSEEK_API_KEY="your_deepseek_api_key" # 千问API密钥 export QWEN_API_KEY="your_qwen_api_key" ``` 3. **使用系统命令切换模型** ``` > /model qwen # 切换到千问模型 > /model deepseek # 切换到DeepSeek模型 > /model openai_compatible # 切换到OpenAI兼容模型 ``` **本地模型支持**: 如果您想使用本地模型(如Ollama、vLLM等),可以配置OpenAI兼容客户端: ```ini [OPENAI_COMPATIBLE] # Ollama地址 api_url = http://localhost:11434/v1/chat/completions api_key = dummy model = llama3 ``` 确保本地模型服务已启动,然后使用 `/model openai_compatible` 命令切换到本地模型。 **模型选择建议**: - **日常使用**:推荐使用 `deepseek`,性价比高 - **中文任务**:推荐使用 `qwen`,中文理解能力强 - **离线环境**:使用 `openai_compatible` 搭配本地模型 - **开发测试**:使用 `openai_compatible` 搭配轻量级模型 #### 工具配置 各工具的配置文件位于对应的工具目录下: - 日程管理工具: `tools/schedule_manager/` - 邮件发送工具: `tools/email_sender/email_sender.ini` - 文件管理工具: `tools/file_manager/file_manager.ini` ### 3.7 系统命令 系统命令以 `/` 开头,提供系统控制和管理功能,优先级最高。 #### 支持的系统命令 | 命令 | 参数 | 说明 | 示例 | |------|------|------|------| | `/help` | 无 | 显示系统命令帮助 | `/help` | | `/exit` | 无 | 退出程序 | `/exit` | | `/quit` | 无 | 退出程序(同/exit) | `/quit` | | `/model` | `<模型名>` | 切换AI模型 | `/model qwen` | | `/clear` | 无 | 清空对话历史 | `/clear` | #### 命令优先级 系统按照以下优先级处理命令: 1. **系统命令**(优先级最高):以 `/` 开头 2. **数字人切换**:以 `@` 开头 3. **快捷命令**:如 `列出任务`、`读取文件` 4. **普通对话**:发送给AI处理 #### 使用示例 ``` > /help # 查看系统命令帮助 > /model qwen # 切换到千问模型 > @小深 # 切换到小深数字人 > 列出任务 # 执行快捷命令 > 你好 # 普通对话 > /clear # 清空对话历史 > /exit # 退出程序 ``` #### 模型切换 使用 `/model` 命令可以动态切换AI模型: ``` /model deepseek # 切换到DeepSeek(默认) /model qwen # 切换到千问 /model openai_compatible # 切换到OpenAI兼容模型(本地) ``` 切换模型后,系统会显示: - 当前使用的AI模型 - 支持的所有模型列表 #### 清空对话历史 使用 `/clear` 命令可以清空当前数字人的对话历史: ``` /clear ``` 系统会显示: - 已清空的对话记录数量 - 清空操作是否成功 #### 退出程序 使用 `/exit` 或 `/quit` 命令可以安全退出程序: ``` /exit # 或 /quit ``` 退出前系统会: - 保存所有对话记录 - 清理资源 - 显示退出提示 ## 4. 定制数字人和技能 Tall2Task 的核心优势在于其高度可定制性。您可以轻松创建自定义数字人和技能,满足个性化需求。 ### 4.1 定制数字人 #### 基本步骤 1. **创建数字人目录** 在 `digital_persons/` 目录下创建新的数字人子目录,例如 `我的助手/`: ```bash mkdir digital_persons/我的助手 ``` 2. **创建数字人配置文件** 在数字人目录中创建 `digital_person.md` 文件: ```bash touch digital_persons/我的助手/digital_person.md ``` 3. **编写数字人配置** 在 `digital_persons/我的助手/digital_person.md` 中填写配置: ```markdown # 我的助手 ## 角色扮演 你是一个专业的AI助手,帮助用户处理各种任务。 ## 你的基本信息 - **姓名**:我的助手 - **性别**:无 - **性格**:友好、专业、乐于助人 - **身份**:AI助手 - **专长**:日程管理、文件管理 ## 说话风格和语气 - **称呼方式**:使用"您"称呼用户 - **语气特点**:温和、礼貌 - **文字风格**:简洁明了 ## 你和系统的关系 1. 系统是你的工作台,通过它,你可以使用各种技能 2. 通过技能,你可以调用API,具体方法可以查阅"技能详细说明" ## 你具备的技能 1. 日程管理 2. 文件管理 ## 批量处理通用规则 - 多条记录操作需要逐条确认 - 每条操作需用户确认后才能执行下一条 ``` 4. **重启系统** 重启Tall2Task,新数字人将自动加载。使用 `@我的助手` 命令切换到新数字人。 #### 详细文档 完整的数字人配置规范请参考:[DIGITAL_PERSON_CONTRACT.md](digital_persons/DIGITAL_PERSON_CONTRACT.md) ### 4.2 定制技能 #### 基本步骤 1. **创建技能目录** ```bash mkdir skills/我的技能 ``` 2. **创建技能描述文件** 创建 `skills/我的技能/skill.md` 文件,定义技能的功能和操作: ```markdown # 我的技能 ## 技能描述 我的技能可以帮助用户完成XXX功能。 ## 可进行的操作 - `操作1`: 操作描述 - `操作2`: 操作描述 ## API调用格式 ``` <<敲击键盘中...>> 操作1: 参数1 | 参数2 ``` ## 参数说明 ### 操作1 - 参数1 (str): 参数描述,必需 - 参数2 (int): 参数描述,可选 ## 约束条件 - 参数1不能为空 - 参数2必须是1-10的整数 ## 示例 ### 示例1: 使用操作1 ``` 输入: 执行操作1,参数1是test,参数2是5 输出: <<敲击键盘中...>> 操作1: test | 5 ``` ## 快捷命令 - `快捷命令1` - 快捷命令描述 ``` 3. **创建技能配置文件** 创建 `skills/我的技能/config.yaml` 文件,配置技能的API映射和显示格式: ```yaml skill_info: name: "我的技能" tool_name: "my_tool" ai_methods: 操作1: method: "my_method" parameter_order: ["param1", "param2"] parameter_types: param1: "str" param2: "int" display: template: "{% if result[0] %}✅ {{ result[1] }}{% else %}❌ {{ result[1] }}{% endif %}" commands: quick_command: patterns: - "快捷命令1" method: "my_method" parameters: param1: type: "fixed" value: "default" display: template: "{{ result[1] }}" ``` 4. **实现工具API**(可选) 如果需要实现新的功能,在 `tools/` 目录下创建对应的工具模块。详细规范见:[tools/API_CONTRACT.md](tools/API_CONTRACT.md) 5. **重启系统** 重启Tall2Task,新技能将自动加载。 #### 详细文档 - 技能定义规范:[skills/SKILL_CONTRACT2.0.md](skills/SKILL_CONTRACT2.0.md) - YAML配置规范:[skills/YAML_CONTRACT.md](skills/YAML_CONTRACT.md) - 工具API规范:[tools/API_CONTRACT.md](tools/API_CONTRACT.md) ### 4.3 快速开发指南 想要快速上手?查看5分钟快速开发指南:[QUICK_START.md](docs/QUICK_START.md) 包含: - 创建新数字人(3步) - 创建新技能(4步) - 常见配置示例 ### 4.4 完整开发教程 需要深入了解?查看完整开发教程:[DEVELOPMENT_GUIDE.md](docs/DEVELOPMENT_GUIDE.md) 包含: - 数字人开发详解 - 技能开发详解 - 工具开发详解 - 最佳实践 - 调试技巧 ## 5. 契约规范参考 Tall2Task 使用契约规范来确保代码和配置的一致性和可维护性。 ### 5.1 工具API契约 **文件位置**: `tools/API_CONTRACT.md` **内容**: - API设计规范 - 工具开发规范 - 编码规范 - 安全规范 - 日志规范 - API注册机制 - 版本控制规范 - 测试要求 ### 5.2 技能契约 **文件位置**: `skills/SKILL_CONTRACT2.0.md` **内容**: - 技能定义文件规范 - 与YAML配置的关系 - 完整示例 - 检查清单 - 常见问题 ### 5.3 YAML配置契约 **文件位置**: `skills/YAML_CONTRACT.md` **内容**: - 配置字段详细说明 - 配置示例 - Jinja2模板语法 - 正则表达式语法 - 类型转换规则 - 多次调用模式处理逻辑 ### 5.4 数字人契约 **文件位置**: `digital_persons/DIGITAL_PERSON_CONTRACT.md` **内容**: - 数字人定义文件规范 - 与技能定义的关系 - 完整示例 - 数字人属性参考 - 说话风格参考 ## 6. 开发指南 ### 6.1 快速开始 **5分钟快速开发指南**: [docs/QUICK_START.md](docs/QUICK_START.md) 适合: - 快速创建新数字人 - 快速创建新技能 - 查看常见配置示例 ### 6.2 完整教程 **完整开发教程**: [docs/DEVELOPMENT_GUIDE.md](docs/DEVELOPMENT_GUIDE.md) 适合: - 深入了解数字人开发 - 深入了解技能开发 - 深入了解工具开发 - 学习最佳实践和调试技巧 ### 6.3 文档导航 #### 文档结构 ``` docs/ ├── README.md # 文档索引(本文档) ├── QUICK_START.md # 快速开发指南 └── DEVELOPMENT_GUIDE.md # 完整开发教程 skills/ ├── SKILL_CONTRACT2.0.md # 技能契约规范 ├── YAML_CONTRACT.md # YAML配置契约规范 ├── 日程管理/ │ ├── skill.md # 技能定义示例 │ └── config.yaml # 技能配置示例 ├── 文件管理/ │ ├── skill.md │ └── config.yaml └── 邮件发送/ ├── skill.md └── config.yaml digital_persons/ ├── DIGITAL_PERSON_CONTRACT.md # 数字人契约规范 ├── 小深/ │ └── digital_person.md # 数字人示例 └── 阿芳/ └── digital_person.md # 数字人示例 tools/ └── API_CONTRACT.md # 工具API契约规范 ``` #### 快速链接 **我想...** - **创建新数字人** → [QUICK_START.md](docs/QUICK_START.md#创建新数字人) - **创建新技能** → [QUICK_START.md](docs/QUICK_START.md#创建新技能) - **开发新工具** → [DEVELOPMENT_GUIDE.md](docs/DEVELOPMENT_GUIDE.md#工具开发) - **了解技能契约** → [skills/SKILL_CONTRACT2.0.md](skills/SKILL_CONTRACT2.0.md) - **了解数字人契约** → [digital_persons/DIGITAL_PERSON_CONTRACT.md](digital_persons/DIGITAL_PERSON_CONTRACT.md) - **查看示例** → [示例参考](#示例参考) ## 7. 注意事项 1. **API密钥安全** - 建议使用环境变量存储API密钥 - 不要在配置文件中保存API密钥 - API密钥格式验证(长度至少20个字符) 2. **数据安全** - 定期备份数据库文件 - 确保数据库文件权限设置正确 - 文件操作限制在项目根目录内 3. **任务状态** - 任务状态只能是:待处理、已完成、进行中 - 系统会自动验证状态输入 4. **时间格式** - 使用标准格式:YYYY-MM-DD HH:MM:SS - 设置提醒时需注意时间格式 5. **数字人技能** - 每个数字人最多支持5个技能 - 切换数字人会改变可用的技能 - 不同数字人可能有不同的性格和说话风格 6. **批量操作** - 系统支持批量操作 - 多条记录操作需要逐条确认 - 每条操作需用户确认后才能执行下一条 ## 8. 常见问题 ### Q: 程序无法启动? A: 请检查: - 是否安装了Python 3.7+ - 是否安装了必要的依赖包 - 在Windows上是否使用了正确的Python命令(python或python3) - API密钥是否正确设置 ### Q: 如何切换数字人? A: 使用 `@数字人昵称` 命令切换数字人,例如: ``` @小深 # 切换到小深 @阿芳 # 切换到阿芳 ``` ### Q: 每个数字人有什么技能? A: - **小深**: 文件管理 + 邮件发送 - **阿芳**: 日程管理 ### Q: 如何添加新的数字人? A: 在 `digital_persons/` 目录下创建新的Markdown文件,按照 `DIGITAL_PERSON_CONTRACT.md` 规范定义数字人。详细步骤见:[docs/QUICK_START.md](docs/QUICK_START.md) ### Q: 如何添加新的技能? A: 在 `skills/` 目录下创建新的技能目录,按照 `SKILL_CONTRACT2.0.md` 和 `YAML_CONTRACT.md` 规范定义技能。详细步骤见:[docs/QUICK_START.md](docs/QUICK_START.md) ### Q: 忘记任务ID怎么办? A: 使用"列出任务"命令查看所有任务及其ID。 ### Q: 如何批量操作任务? A: 系统支持批量操作,但会逐条确认,确保操作准确。 ### Q: 文件操作有限制吗? A: 是的,文件操作限制在项目根目录内,禁止使用 `../` 访问上级目录,只允许操作文本文件。 ### Q: 如何查看性能统计? A: 平台内置了性能监控功能,可以查看各个函数的执行时间统计。详细信息请参考开发文档。 ### Q: 定制的数字人不生效? A: 检查以下几点: - 文件名是否与数字人名称一致 - 技能列表中的技能是否存在 - 是否重启了系统 ### Q: 定制的技能不生效? A: 检查以下几点: - YAML语法是否正确 - 文件路径是否正确 - 是否重启了系统 - 查看日志文件获取详细错误信息 ## 9. 文档参考 ### 开发文档 - **快速开发指南**: [docs/QUICK_START.md](docs/QUICK_START.md) - 5分钟快速上手 - **完整开发教程**: [docs/DEVELOPMENT_GUIDE.md](docs/DEVELOPMENT_GUIDE.md) - 深入学习 - **文档索引**: [docs/README.md](docs/README.md) - 所有文档导航 ### 契约规范 - **工具API契约**: [tools/API_CONTRACT.md](tools/API_CONTRACT.md) - **技能契约**: [skills/SKILL_CONTRACT2.0.md](skills/SKILL_CONTRACT2.0.md) - **YAML配置契约**: [skills/YAML_CONTRACT.md](skills/YAML_CONTRACT.md) - **数字人契约**: [digital_persons/DIGITAL_PERSON_CONTRACT.md](digital_persons/DIGITAL_PERSON_CONTRACT.md) ### 示例参考 - **日程管理技能**: [skills/日程管理/](skills/日程管理/) - **文件管理技能**: [skills/文件管理/](skills/文件管理/) - **邮件发送技能**: [skills/邮件发送/](skills/邮件发送/) - **小深数字人**: [digital_persons/小深/digital_person.md](digital_persons/小深/digital_person.md) - **阿芳数字人**: [digital_persons/阿芳/digital_person.md](digital_persons/阿芳/digital_person.md) ### 贡献指南 如果您想为Tall2Task贡献代码或文档,请遵循以下步骤: 1. Fork项目仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启Pull Request ### 设计文档 - **系统设计**: [design/](design/) 目录 - **需求调研**: [design/需求调查报告.md](design/需求调查报告.md) - **架构设计**: [design/数字人平台详细设计文档-v3.0.md](design/数字人平台详细设计文档-v3.0.md) ### 测试文档 - **测试用例**: [tests/](tests/) 目录 - **端到端测试**: [tests/end_to_end/](tests/end_to_end/) ## 10. 联系信息 - 项目负责人:xm_recycle - 邮箱:xm_recycle@qq.com - 项目仓库:https://gitee.com/xm_recycle/tall2task.git ## 11. 版本信息 - 当前版本:2.1.0 - 发布日期:2026年1月30日 - Python版本要求:3.7+ ## 12. 更新日志 ### v2.1.0 (2026-01-30) **新增功能**: - ✨ 多模型接入:支持DeepSeek、通义千问、OpenAI兼容模型 - ✨ 系统级命令:支持 `/help`、`/exit`、`/model`、`/clear` 命令 - ✨ 模型切换:运行时动态切换AI模型 - ✨ 本地模型支持:支持Ollama、vLLM等本地模型 **优化改进**: - 🔧 重构AI客户端架构,使用工厂模式 - 🔧 统一错误处理机制 - 🔧 完善配置验证 - 🔧 优化系统提示词构建 **问题修复**: - 🐛 修复空消息问题 - 🐛 修复AI响应重复显示问题 **文档更新**: - 📝 添加多模型配置说明 - 📝 添加系统命令使用说明 - 📝 更新开发文档 ### v2.0.0 (2026-01-09) **新增功能**: - ✨ 完整的数字人平台架构 - ✨ 多数字人支持(小深、阿芳) - ✨ 多技能系统(日程管理、文件管理、邮件发送) - ✨ 工具模块化设计 - ✨ 智能提示词构建 - ✨ 对话历史持久化 - ✨ 资源清理机制 **优化改进**: - 🔧 统一的API契约规范 - 🔧 完整的测试体系(151个测试用例) - 🔧 详细的开发文档 - 🔧 完善的错误处理 **文档更新**: - 📝 添加快速开发指南 - 📝 添加完整开发教程 - 📝 添加契约规范文档