
第7讲:Coze 实战:搭建办公助手 Skill
动手搭建一个完整的办公助手,掌握 Coze 实战开发。
一、项目概述
1.1 项目目标
搭建一个功能完整的办公助手 Bot,包含:
- 📊 Excel 数据处理(合并、拆分)
- 📝 周报自动生成
- ✅ 待办事项管理
1.2 技术架构
1 2 3 4 5 6 7 8 9 10
| 办公助手 Bot ├── 人设与回复逻辑 ├── 插件 │ ├── Excel Processor(Excel处理) │ └── File Manager(文件管理) ├── 工作流 │ ├── Weekly Report Generator(周报生成) │ └── Todo Manager(待办管理) └── 数据库 └── todos(待办表)
|
二、步骤一:创建 Bot
2.1 基础配置
- 登录 Coze 平台
- 点击「创建 Bot」
- 填写信息:
- 名称:办公小助手 Pro
- 描述:你的智能办公伙伴,帮你处理Excel、生成周报、管理待办
- 图标:上传办公相关图标
2.2 人设配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| # 角色 你是专业的办公助手,擅长帮助职场人士提升工作效率。
## 技能 ### 1. Excel 数据处理 - 合并多个 Excel 文件 - 拆分大型 Excel 表格 - 格式转换和数据清洗
### 2. 周报生成 - 根据工作内容自动生成周报 - 支持多种模板风格 - 可导出为 Word 或 PDF
### 3. 待办管理 - 添加、查看、完成待办事项 - 设置提醒时间 - 分类管理
## 工作流程 1. 理解用户需求 2. 确认必要信息 3. 调用相应工具 4. 返回处理结果
## 限制 1. 只处理办公相关任务 2. 不处理敏感或违法内容 3. 文件大小限制 50MB
## 回复格式 - 使用友好亲切的语气 - 关键信息用 **粗体** 标注 - 步骤用 1️⃣ 2️⃣ 3️⃣ 编号 - 适当使用 emoji 增加亲和力
## 开场白 你好!我是你的办公小助手 Pro 🎯
我可以帮你: 📊 **Excel 处理** - 合并、拆分、转换 📝 **周报生成** - 自动整理工作内容 ✅ **待办管理** - 记录和追踪任务
直接告诉我你想做什么,我会一步步引导你完成!
|
三、步骤二:开发 Excel 处理插件
3.1 创建插件
- 点击「插件」→「创建插件」
- 配置:
- 名称:Excel Processor
- 描述:专业的 Excel 文件处理工具
- 运行方式:云侧插件
3.2 创建工具:合并 Excel
工具配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| 名称: merge_excel 描述: 合并多个 Excel 文件
输入参数: file_urls: 类型: array 描述: Excel 文件的 URL 列表 必填: true merge_mode: 类型: string 描述: 合并方式 必填: false 默认值: vertical 枚举值: [vertical, horizontal]
输出参数: result_url: 类型: string 描述: 合并后的文件下载链接 row_count: 类型: number 描述: 总行数 success: 类型: boolean 描述: 是否成功
|
代码实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| import pandas as pd import requests from io import BytesIO
def main(args): file_urls = args.get('file_urls', []) merge_mode = args.get('merge_mode', 'vertical') if not file_urls: return {"error": "请提供文件", "success": False} try: dfs = [] for url in file_urls: response = requests.get(url, timeout=30) df = pd.read_excel(BytesIO(response.content)) dfs.append(df) if merge_mode == 'vertical': result = pd.concat(dfs, ignore_index=True) else: result = pd.concat(dfs, axis=1) output = BytesIO() result.to_excel(output, index=False) output.seek(0) result_url = upload_to_storage(output) return { "result_url": result_url, "row_count": len(result), "success": True } except Exception as e: return {"error": str(e), "success": False}
|
3.3 创建工具:拆分 Excel
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| def split_excel(args): file_url = args.get('file_url') split_column = args.get('split_column') response = requests.get(file_url) df = pd.read_excel(BytesIO(response.content)) grouped = df.groupby(split_column) result_urls = [] for name, group in grouped: output = BytesIO() group.to_excel(output, index=False) output.seek(0) url = upload_to_storage(output, f"{name}.xlsx") result_urls.append({"name": name, "url": url}) return { "files": result_urls, "count": len(result_urls), "success": True }
|
四、步骤三:创建周报生成工作流
4.1 工作流设计
1 2 3 4 5 6 7 8 9 10
| 开始(接收工作内容) │ ▼ 大模型节点(整理和润色) │ ▼ 代码节点(生成文档) │ ▼ 结束(返回下载链接)
|
4.2 节点配置
开始节点:
1 2 3 4 5 6 7 8 9 10
| 输入参数: work_items: 类型: array 描述: 本周完成的工作列表 challenges: 类型: string 描述: 遇到的问题 next_week_plan: 类型: string 描述: 下周计划
|
大模型节点:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| 系统提示: 你是一个专业的周报撰写助手。请根据用户提供的工作内容, 生成一份结构清晰、语言专业的周报。
周报结构: 1. 本周工作总结 2. 重点项目进展 3. 问题与反思 4. 下周工作计划
要求: - 使用专业但不生硬的语气 - 突出成果和亮点 - 问题部分要体现解决方案
|
代码节点:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| from docx import Document from docx.shared import Pt, RGBColor
def main(args): content = args.get('report_content') doc = Document() title = doc.add_heading('工作周报', 0) title.alignment = 1 doc.add_paragraph(f'报告周期:{get_week_range()}') doc.add_paragraph() doc.add_heading('一、本周工作总结', level=1) doc.add_paragraph(content['summary']) doc.add_heading('二、重点项目进展', level=1) for project in content['projects']: doc.add_heading(project['name'], level=2) doc.add_paragraph(project['progress']) output = BytesIO() doc.save(output) output.seek(0) url = upload_to_storage(output, "周报.docx") return {"download_url": url}
|
五、步骤四:创建待办管理工作流
5.1 数据库设计
1 2 3 4 5 6 7 8 9
| 表名: todos 字段: - id: 主键 - user_id: 用户ID - content: 待办内容 - status: 状态 (pending/done) - priority: 优先级 (high/medium/low) - created_at: 创建时间 - due_date: 截止日期
|
5.2 工作流:添加待办
1 2 3 4 5 6 7
| 开始(接收待办内容) │ ▼ 代码节点(保存到数据库) │ ▼ 结束(返回确认)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| def add_todo(args): user_id = args.get('user_id') content = args.get('content') priority = args.get('priority', 'medium') database.insert('todos', { 'user_id': user_id, 'content': content, 'status': 'pending', 'priority': priority, 'created_at': datetime.now() }) return { "message": f"✅ 已添加待办:{content}", "success": True }
|
5.3 工作流:查看待办
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| def list_todos(args): user_id = args.get('user_id') status = args.get('status', 'pending') todos = database.query('todos', { 'user_id': user_id, 'status': status }) result = [] for todo in todos: emoji = "🔴" if todo['priority'] == 'high' else "🟡" if todo['priority'] == 'medium' else "🟢" result.append(f"{emoji} {todo['content']}") return { "todos": result, "count": len(result) }
|
六、步骤五:整合到 Bot
6.1 添加插件
在 Bot 编辑页面:
- 点击「插件」→「+」
- 选择「Excel Processor」
- 添加到 Bot
6.2 添加工作流
- 点击「工作流」→「+」
- 选择「周报生成」和「待办管理」
- 添加到 Bot
6.3 更新人设
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| ## 工具使用说明
当用户需要处理 Excel 时: 1. 询问文件和合并/拆分方式 2. 调用 Excel Processor 插件 3. 返回处理结果
当用户需要生成周报时: 1. 收集工作内容、问题、计划 2. 调用周报生成工作流 3. 返回文档下载链接
当用户需要管理待办时: 1. 识别具体操作(添加/查看/完成) 2. 调用待办管理工作流 3. 返回操作结果
|
七、步骤六:测试与优化
7.1 测试用例
| 场景 | 输入 | 预期结果 |
|---|
| Excel 合并 | "合并这3个Excel" | 询问文件和方式,返回合并结果 |
| 周报生成 | "帮我生成本周周报" | 收集信息,生成文档 |
| 添加待办 | "记得下午开会" | 保存待办,返回确认 |
| 查看待办 | "有什么待办" | 返回待办列表 |
7.2 常见问题
Q1:插件调用失败
- 检查 API 地址是否正确
- 查看日志中的错误信息
- 确认网络连接
Q2:工作流执行超时
八、步骤七:发布
8.1 发布配置
- 点击「发布」
- 选择发布渠道:
- 填写发布信息:
- 分类:效率工具
- 标签:Excel, 周报, 待办, 办公
8.2 推广技巧
九、课后作业
作业1:扩展功能
为办公助手添加:
- PDF 转 Word 功能
- 数据统计图表生成
- 定时提醒功能
作业2:优化体验
十、下节预告
第8讲:OpenClaw 平台深度解析
我们将学习:
- OpenClaw 的架构和特点
- 本地开发环境搭建
- ClawHub 生态使用
加入学习群
实战遇到问题?欢迎加入交流群:
👉 加入AI编程学习交流群

本讲是《Skills 从入门到实践》系列课程的第7讲,恭喜你完成了第一个完整的办公助手 Skill!
🎓 AI 编程实战课程
想系统学习 AI 编程?程序员晚枫的 AI 编程实战课 帮你从零上手!