/** * 星环OPC中心 — AI 员工内置任务模板 * * 每种角色有预定义的日常/周常任务模板。 * 模板生成 sessions_spawn 的 task prompt,由 AI 调用 sessions_spawn 执行。 */ export interface TaskTemplate { role: string; taskType: string; title: string; schedule: "daily" | "weekly" | "hourly" | "on_demand"; description: string; buildPrompt: (ctx: TaskContext) => string; } export interface TaskContext { companyId: string; companyName: string; industry: string; agentId: string; staffRole: string; staffRoleName: string; staffSystemPrompt: string; date: string; } export const BUILTIN_TASK_TEMPLATES: TaskTemplate[] = [ // ── 市场推广 ────────────────────────────────────────────────── { role: "marketing", taskType: "daily_news", title: "每日行业资讯搜集", schedule: "daily", description: "搜集行业最新资讯,整理成简报", buildPrompt: (ctx) => `你是「${ctx.staffRoleName}」,为「${ctx.companyName}」(${ctx.industry}行业)服务。 ${ctx.staffSystemPrompt} ## 今日任务:行业资讯搜集(${ctx.date}) 请完成以下工作: 1. 使用 opc_search 搜索「${ctx.industry} 最新动态 ${ctx.date}」 2. 搜索「${ctx.industry} 行业新闻」获取更多信息 3. 从搜索结果中筛选 3-5 条最有价值的资讯 4. 用 opc_media create_content 将整理好的资讯写入系统,格式: - title: "${ctx.date} ${ctx.industry}行业日报" - content_type: "article" - content: 整理好的资讯(标题+摘要+来源链接) 5. 调用 opc_staff update_task 更新任务状态为 completed,result_summary 填写关键发现 ## 可用工具 - opc_search: 联网搜索 - opc_media: 内容管理(create_content 写入) - opc_staff: 更新任务状态`, }, { role: "marketing", taskType: "content_creation", title: "内容创作与发布", schedule: "weekly", description: "基于行业热点创作一篇内容", buildPrompt: (ctx) => `你是「${ctx.staffRoleName}」,为「${ctx.companyName}」(${ctx.industry}行业)服务。 ${ctx.staffSystemPrompt} ## 本周任务:内容创作(${ctx.date}) 请完成以下工作: 1. 使用 opc_search 搜索「${ctx.industry} 热点话题」和「${ctx.industry} 行业趋势」 2. 选择一个与公司业务最相关的话题 3. 撰写一篇 800-1500 字的专业文章 4. 用 opc_media create_content 将文章写入系统: - content_type: "article" - status: "draft" 5. 调用 opc_staff update_task 更新任务状态 ## 可用工具 - opc_search: 联网搜索 - opc_media: 内容管理 - opc_staff: 更新任务状态`, }, // ── 财务顾问 ────────────────────────────────────────────────── { role: "finance", taskType: "daily_finance_check", title: "每日财务巡检", schedule: "daily", description: "检查未开票收入、到期发票、异常支出", buildPrompt: (ctx) => `你是「${ctx.staffRoleName}」,为「${ctx.companyName}」服务。 ${ctx.staffSystemPrompt} ## 今日任务:财务巡检(${ctx.date}) 请完成以下检查: 1. 调用 opc_finance finance_summary 查看整体财务状况 2. 调用 opc_finance list_invoices status=draft 查看草稿发票 3. 调用 opc_finance list_invoices status=sent 查看已发未收款发票 4. 分析是否有异常情况(超 30 天未收款、大额支出等) 5. 将巡检结果通过 opc_staff update_task 写回 ## 可用工具 - opc_finance: 财务数据查询 - opc_staff: 更新任务状态`, }, // ── 法务助理 ────────────────────────────────────────────────── { role: "legal", taskType: "contract_review", title: "合同到期巡检", schedule: "weekly", description: "检查即将到期的合同,提醒续签", buildPrompt: (ctx) => `你是「${ctx.staffRoleName}」,为「${ctx.companyName}」服务。 ${ctx.staffSystemPrompt} ## 本周任务:合同到期巡检(${ctx.date}) 请完成以下检查: 1. 调用 opc_legal list_contracts 查看所有合同 2. 筛选出 30 天内即将到期的合同 3. 检查是否有需要续签或关闭的合同 4. 将巡检结果通过 opc_staff update_task 写回,列出需要关注的合同 ## 可用工具 - opc_legal: 合同管理 - opc_staff: 更新任务状态`, }, // ── 运营经理 ────────────────────────────────────────────────── { role: "ops", taskType: "daily_ops_report", title: "每日运营报告", schedule: "daily", description: "汇总今日各部门工作,生成运营日报", buildPrompt: (ctx) => `你是「${ctx.staffRoleName}」,为「${ctx.companyName}」服务。 ${ctx.staffSystemPrompt} ## 今日任务:运营日报(${ctx.date}) 请完成以下工作: 1. 调用 opc_staff staff_standup 查看各员工工作状态 2. 调用 opc_finance finance_summary 查看今日财务动态 3. 调用 opc_project list_projects 查看项目进度 4. 综合以上信息,生成一份运营日报 5. 用 opc_media create_content 写入系统(content_type=report) 6. 调用 opc_staff update_task 更新任务状态 ## 可用工具 - opc_staff: 员工状态查询 - opc_finance: 财务数据 - opc_project: 项目管理 - opc_media: 内容管理`, }, // ── HR 专员 ─────────────────────────────────────────────────── { role: "hr", taskType: "hr_monthly_check", title: "月度人力资源巡检", schedule: "weekly", description: "检查社保缴纳、合同到期、薪酬异常", buildPrompt: (ctx) => `你是「${ctx.staffRoleName}」,为「${ctx.companyName}」服务。 ${ctx.staffSystemPrompt} ## 本周任务:人力资源巡检(${ctx.date}) 请完成以下检查: 1. 调用 opc_hr list_employees 查看所有在职员工 2. 检查合同即将到期的员工(30天内) 3. 核查薪酬数据是否完整 4. 将巡检结果通过 opc_staff update_task 写回 ## 可用工具 - opc_hr: 人力资源管理 - opc_staff: 更新任务状态`, }, ];