@clawhub-aaronnee520-238c72df70
为教培机构提供招生方案、社群运营、家长沟通及数据分析,助力私域精细化运营提升转化和续费率。
# 教培机构私域运营专家 Agent
## 角色定位
你是一位资深的教培行业私域运营专家,精通招生获客、家长沟通、社群运营和数据分析。帮助教培机构从公域获客转向私域精细化运营,提升转化率和续费率。
## 核心能力
### 1. 招生策略制定
分析目标客户画像,设计获客渠道和转化路径
- 输出:招生方案、转化漏斗、渠道优先级
### 2. 课程产品包装
梳理课程体系,提炼核心卖点,设计价格梯度
- 输出:课程手册、价格表、卖点话术
### 3. 朋友圈内容运营
制定月度内容日历,提供发圈模板和配图建议
- 输出:内容日历、发圈素材库
### 4. 社群运营体系
设计社群分层、激活策略、转化路径
- 输出:社群 SOP、话术库、活动方案
### 5. 家长沟通话术
处理咨询、续费、投诉等各类家长沟通场景
- 输出:话术模板、应对策略
### 6. 数据分析诊断
分析获客成本、转化率、续费率等核心指标
- 输出:数据报告、优化建议
### 7. 活动策划执行
设计体验课、公开课、节日活动等各类招生活动
- 输出:活动方案、执行清单
## 支持的教育类型
- **K12学科培训** - 语数英物化等学科辅导
- **素质教育** - 美术、音乐、舞蹈、体育
- **职业教育** - 技能考证、学历提升
- **技能培训** - IT、外语、职场技能
- **少儿编程** - Scratch、Python、机器人
## 输入格式
```yaml
机构信息:
名称: "XX培训机构"
类型: "K12/素质教育/职业教育/..."
规模: "小班(<100人)/中型(100-500人)/大型(>500人)"
痛点: "招生难/续费难/转化低/..."
咨询类型:
- "制定招生方案"
- "设计社群SOP"
- "写朋友圈文案"
- "分析续费数据"
- "策划体验课活动"
- "处理家长投诉"
- "其他"
具体需求:
"详细描述你的具体需求..."
```
## 输出规范
### 招生方案输出
```json
{
"目标画像": {
"年龄段": "",
"家长特征": "",
"决策人": "",
"核心需求": ""
},
"获客渠道": [
{"渠道": "", "优先级": "高/中/低", "预估成本": "", "注意事项": ""}
],
"转化路径": [
{"阶段": "", "动作": "", "话术要点": ""}
],
"时间规划": {
"第一周": "",
"第一个月": "",
"季度目标": ""
}
}
```
### 社群SOP输出
```json
{
"社群定位": "",
"入群话术": "",
"日常激活": [
{"时间": "", "内容类型": "", "示例": ""}
],
"转化节点": [
{"触发条件": "", "动作": "", "话术": ""}
],
"禁忌事项": []
}
```
### 朋友圈内容日历
```json
{
"月度主题": "",
"周计划": [
{
"日期": "周一",
"内容类型": "产品/案例/互动/知识",
"主题": "",
"文案模板": "",
"配图建议": ""
}
],
"互动策略": ""
}
```
## 工具能力
### 数据分析能力
- 分析机构运营数据
- 计算获客成本(CAC)、转化率、续费率
- 对标行业标准值
- 生成优化建议
### 文案生成能力
- 朋友圈文案(早安/产品/案例/互动)
- 社群话术(入群/日常/转化/群发)
- 家长沟通话术(咨询/续费/投诉)
- 活动文案(邀请函/海报文案)
### 方案设计能力
- 招生方案设计
- 社群搭建方案
- 活动策划方案
- 续费激励方案
## 行业洞察
### 教培私域关键指标
| 指标 | 优秀 | 良好 | 需改进 |
|------|------|------|--------|
| 获客成本(CAC) | <200元 | 200-400元 | >400元 |
| 体验课转化率 | >40% | 25-40% | <25% |
| 社群活跃度 | >15% | 8-15% | <8% |
| 续费率 | >85% | 70-85% | <70% |
| 家长转介绍率 | >30% | 15-30% | <15% |
### 私域运营最佳时段
- 朋友圈最佳发布时间:7:30-8:30, 12:00-13:00, 21:00-22:00
- 社群活跃时段:8:00-9:00, 12:00-13:00, 20:00-21:00
- 私信回复时效:<2小时
## 注意事项
1. **合规性**:不提供虚假宣传、夸大效果的内容
2. **隐私保护**:不收集/存储家长敏感信息
3. **转化节奏**:避免过度营销,注重价值输出
4. **本地化**:考虑地域差异,一二线城市与三四线策略不同
FILE:README.md
# 🏫 教培机构私域运营专家 Agent
> 基于 QClaw 平台的 AI Agent,帮助教培机构从公域获客转向私域精细化运营
## ✨ 核心能力
| 能力 | 描述 |
|------|------|
| 📊 **招生策略制定** | 目标客户画像、获客渠道、转化路径设计 |
| 📚 **课程产品包装** | 课程体系梳理、卖点提炼、价格梯度设计 |
| 📱 **朋友圈内容运营** | 月度内容日历、发圈模板、配图建议 |
| 💬 **社群运营体系** | 社群SOP、日常激活、转化节点设计 |
| 🎯 **家长沟通话术** | 咨询接待、续费沟通、投诉处理、转介绍话术 |
| 📈 **数据分析诊断** | 运营指标分析、行业对标、优化建议 |
| 🎪 **活动策划执行** | 体验课、公开课、节日活动策划方案 |
## 📖 支持的教育类型
- **K12学科培训** - 语数英物化等学科辅导
- **素质教育** - 美术、音乐、舞蹈、体育
- **职业教育** - 技能考证、学历提升
- **技能培训** - IT、外语、职场技能
- **少儿编程** - Scratch、Python、机器人
## 🚀 快速开始
### 在 QClaw 中使用
```
/agent edu-private-operations
```
### 本地运行
```bash
cd scripts
python3 edu_tool.py
```
## 📊 行业基准指标
| 指标 | 优秀 | 良好 | 需改进 |
|------|------|------|--------|
| 获客成本(CAC) | <200元 | 200-400元 | >400元 |
| 体验课转化率 | >40% | 25-40% | <25% |
| 社群活跃度 | >15% | 8-15% | <8% |
| 续费率 | >85% | 70-85% | <70% |
| 转介绍率 | >30% | 15-30% | <15% |
## 📁 目录结构
```
edu-private-operations/
├── SKILL.md # Agent 技能定义
├── README.md # 本文件
├── metadata.yaml # 元数据
├── scripts/
│ └── edu_tool.py # 核心工具
└── config/
└── industry_config.yaml # 行业配置
```
## 🔧 配置说明
编辑 `config/industry_config.yaml` 自定义:
- 行业基准指标
- 最佳发布时间
- 话术模板
- 禁忌事项
## 📝 使用示例
### 输入格式
```yaml
机构信息:
名称: "XX培训机构"
类型: "K12"
规模: "中型(100-500人)"
痛点: "招生难、续费低"
咨询类型: "制定招生方案"
具体需求: "新开校区,需要完整的招生启动方案"
```
### 输出示例
- **招生方案**:目标画像 + 渠道选择 + 转化路径 + 时间规划
- **社群SOP**:入群话术 + 每日内容 + 激活策略 + 转化节点
- **朋友圈日历**:周计划 + 内容模板 + 配图建议
## ⚠️ 注意事项
1. **合规性**:不提供虚假宣传、夸大效果的内容
2. **隐私保护**:不收集/存储家长敏感信息
3. **转化节奏**:避免过度营销,注重价值输出
4. **本地化**:考虑地域差异,一二线城市与三四线策略不同
## 📄 License
MIT License
## 👤 作者
AaronNee520
## 🔗 相关链接
- [QClaw Agent Store](https://clawhub.ai/skills/edu-private-operations)
- [GitHub 仓库](https://github.com/AaronNee520/edu-private-operations-agent)
FILE:config/industry_config.yaml
# 教培私域运营行业配置
# 行业基准指标
benchmarks:
kpi:
# 获客成本 (CAC)
cac:
excellent: 200 # 元/人
good: 400
warning: 600
# 体验课转化率
trial_conversion:
excellent: 0.40 # 40%
good: 0.25
warning: 0.15
# 社群活跃度
community_activity:
excellent: 0.15 # 15%
good: 0.08
warning: 0.05
# 续费率
renewal_rate:
excellent: 0.85 # 85%
good: 0.70
warning: 0.60
# 转介绍率
referral_rate:
excellent: 0.30 # 30%
good: 0.15
warning: 0.10
# 最佳发布时间
best_posting_times:
moments:
- time: "07:30-08:00"
type: "早安/励志/干货"
engagement: "high"
- time: "12:00-13:00"
type: "学员展示/好评"
engagement: "high"
- time: "20:00-22:00"
type: "课程推广/活动"
engagement: "highest"
community:
- time: "08:00-09:00"
type: "早安打卡"
- time: "12:00-13:00"
type: "午间互动"
- time: "20:00-21:00"
type: "晚间答疑"
# 教育类型配置
education_types:
k12:
name: "K12学科培训"
target_age: "6-18岁"
core_concerns:
- "升学成绩"
- "考试压力"
- "学习方法"
decision_makers: ["妈妈(70%)", "爸爸(20%)", "祖父母(10%)"]
best_channels:
- "抖音/视频号"
- "学校周边地推"
- "家长社群"
quality:
name: "素质教育"
target_age: "4-16岁"
core_concerns:
- "兴趣培养"
- "综合素质"
- "艺术修养"
decision_makers: ["妈妈(80%)", "爸爸(15%)"]
best_channels:
- "小红书"
- "亲子社群"
- "商场活动"
vocational:
name: "职业教育"
target_age: "18-45岁"
core_concerns:
- "就业前景"
- "证书含金量"
- "学习时间"
decision_makers: ["学员本人(90%)"]
best_channels:
- "抖音"
- "知乎"
- "招聘网站"
# 内容类型权重
content_weights:
k12:
knowledge: 0.30 # 知识干货
achievement: 0.25 # 学员成果
trial: 0.20 # 体验推广
activity: 0.15 # 活动
interaction: 0.10 # 互动
quality:
showcase: 0.35 # 作品展示
activity: 0.25 # 活动
knowledge: 0.20 # 知识
trial: 0.15 # 体验
interaction: 0.05
vocational:
value: 0.30 # 价值展示
case: 0.25 # 成功案例
trial: 0.20 # 体验
knowledge: 0.15 # 知识
industry: 0.10 # 行业动态
# 话术模板库
script_templates:
first_contact:
- "您好!欢迎咨询XX机构~我是您的课程顾问小X,请问孩子多大了呢?"
- "感谢您的信任!想先了解一下,您是想提升哪方面的能力呢?"
trial_invitation:
- "我们这周正好有免费的体验课,可以带孩子来感受一下~"
- "免费体验还包含一份学习能力评估报告,需要帮您预约吗?"
follow_up:
- "您好!上次体验课后孩子感觉怎么样?有什么问题随时问我~"
- "这周我们新开了一个班,还有少量名额,要帮您预留吗?"
renewal:
- "您好!下学期续费已经开始,早续费可以享受XX优惠~"
- "感谢您一直的支持!续费时我们有XX福利,需要帮您办理吗?"
# 禁忌事项
forbidden_items:
content:
- "夸大宣传效果"
- "虚假成绩展示"
- "对比贬低竞品"
- "价格虚假折扣"
behavior:
- "频繁刷屏广告"
- "强制推销"
- "泄露家长信息"
- "负面情绪传播"
compliance:
- "违反双减政策"
- "虚假宣传承诺"
- "超纲教学内容"
FILE:metadata.yaml
# QClaw 专家 Agent 平台元数据
# 用于上架到 QClaw Agent Store
id: edu-private-operations
name: "教培机构私域运营专家"
version: "1.0.0"
author: "AaronNee520"
created_at: "2026-04-27"
updated_at: "2026-04-27"
# 分类与标签
category: "business"
tags:
- "教培"
- "私域运营"
- "招生"
- "社群运营"
- "家长沟通"
- "教育培训"
# 定价
pricing:
type: "free"
price: 0
currency: "CNY"
# 能力描述
capabilities:
- name: "招生策略制定"
description: "目标客户画像、获客渠道、转化路径设计"
output: "招生方案文档"
- name: "课程产品包装"
description: "课程体系梳理、卖点提炼、价格梯度设计"
output: "课程手册"
- name: "朋友圈内容运营"
description: "月度内容日历、发圈模板、配图建议"
output: "内容日历+素材库"
- name: "社群运营体系"
description: "社群SOP、日常激活、转化节点设计"
output: "社群运营手册"
- name: "家长沟通话术"
description: "咨询接待、续费沟通、投诉处理、转介绍话术"
output: "话术模板库"
- name: "数据分析诊断"
description: "运营指标分析、行业对标、优化建议"
output: "数据诊断报告"
- name: "活动策划执行"
description: "体验课、公开课、节日活动策划方案"
output: "活动执行清单"
# 适用场景
use_cases:
- "机构刚成立,不知道怎么做招生"
- "现有招生方式效果差,想转型私域"
- "社群不活跃,缺乏运营思路"
- "家长转化率低,续费难"
- "想系统化运营,但缺乏方法论"
# 支持的教育类型
supported_education_types:
- id: "k12"
name: "K12学科培训"
- id: "quality"
name: "素质教育"
- id: "vocational"
name: "职业教育"
- id: "skills"
name: "技能培训"
- id: "coding"
name: "少儿编程"
# 技术要求
requirements:
python: ">=3.8"
dependencies:
- "pyyaml"
- "pandas"
# 入口文件
entry_point: "scripts/edu_tool.py"
skill_file: "SKILL.md"
# 截图与演示
screenshots: []
demo_video: ""
# 评分与统计
stats:
downloads: 0
rating: 0.0
reviews: 0
# 状态
status: "active"
FILE:scripts/edu_tool.py
#!/usr/bin/env python3
"""
教培机构私域运营 Agent 核心工具
支持招生策略、社群运营、话术生成、数据分析等功能
"""
import json
import random
from datetime import datetime, timedelta
from typing import Dict, List, Optional
class EduPrivateOperations:
"""教培机构私域运营工具类"""
def __init__(self):
self.industry_metrics = {
"cac": {"excellent": 200, "good": 400, "poor": float('inf')},
"trial_conversion": {"excellent": 0.4, "good": 0.25, "poor": 0},
"community_activity": {"excellent": 0.15, "good": 0.08, "poor": 0},
"renewal_rate": {"excellent": 0.85, "good": 0.70, "poor": 0},
"referral_rate": {"excellent": 0.30, "good": 0.15, "poor": 0}
}
def generate_enrollment_plan(self, institution: Dict) -> Dict:
"""
生成招生方案
institution: {
"name": 机构名称,
"type": K12/素质教育/职业教育/...,
"scale": 小班/中型/大型,
"target_age": 目标年龄段,
"pain_point": 主要痛点
}
"""
plan = {
"target_persona": self._generate_persona(institution),
"channels": self._generate_channels(institution),
"conversion_path": self._generate_conversion_path(institution),
"timeline": self._generate_timeline(institution),
"budget_estimate": self._estimate_budget(institution),
"kpis": self._generate_kpis(institution)
}
return plan
def _generate_persona(self, inst: Dict) -> Dict:
"""生成目标客户画像"""
inst_type = inst.get("type", "K12")
age_range = inst.get("target_age", "6-15岁")
persona_templates = {
"K12": {
"age_range": "25-45岁",
"relation": "孩子父母(妈妈为主)",
"occupation": "都市白领/中产家庭",
"core_concerns": ["孩子的学习成绩", "升学压力", "综合素质培养"],
"decision_factors": ["口碑评价", "师资力量", "距离便利", "价格"]
},
"素质教育": {
"age_range": "28-45岁",
"relation": "孩子父母",
"occupation": "中产及以上家庭",
"core_concerns": ["兴趣培养", "艺术修养", "体质健康"],
"decision_factors": ["专业资质", "教学环境", "成果展示"]
},
"职业教育": {
"age_range": "22-35岁",
"relation": "学员本人",
"occupation": "职场新人/转行者",
"core_concerns": ["就业前景", "证书含金量", "学习时间灵活度"],
"decision_factors": ["品牌知名度", "课程实用性", "价格"]
}
}
return persona_templates.get(inst_type, persona_templates["K12"])
def _generate_channels(self, inst: Dict) -> List[Dict]:
"""生成获客渠道"""
channels = [
{
"channel": "短视频平台(抖音/视频号)",
"priority": "高",
"cost": "低(内容成本)",
"conversion": "中",
"action": [
"发布校区日常/学员作品/教学成果",
"投放在线体验课广告",
"评论区私信转化"
]
},
{
"channel": "本地微信社群",
"priority": "高",
"cost": "低(人情成本)",
"conversion": "高",
"action": [
"加入小区/学校家长群",
"异业合作(书店/文具店)",
"社区活动赞助"
]
},
{
"channel": "大众点评/美团",
"priority": "中",
"cost": "中(平台入驻+推广)",
"conversion": "中",
"action": [
"优化店铺评分(>4.8)",
"推出体验课套餐",
"引导好评沉淀"
]
},
{
"channel": "地推/社区活动",
"priority": "中",
"cost": "中(人力+物料)",
"conversion": "中",
"action": [
"学校门口/商场摆点",
"免费测评/资料领取",
"现场预约体验"
]
},
{
"channel": "老带新/转介绍",
"priority": "高",
"cost": "低(奖励成本)",
"conversion": "高",
"action": [
"设置转介绍奖励机制",
"老学员作品展示",
"家长口碑激励"
]
}
]
return channels
def _generate_conversion_path(self, inst: Dict) -> List[Dict]:
"""生成转化路径"""
return [
{
"stage": "认知",
"touch_point": "刷到短视频/看到地推",
"action": "引导添加微信",
"copy": "免费领取【XX测评】+【学习规划方案】"
},
{
"stage": "兴趣",
"touch_point": "朋友圈/社群内容",
"action": "预约免费体验课",
"copy": "本周开放20个体验名额,扫码预约"
},
{
"stage": "考虑",
"touch_point": "体验课进行中",
"action": "课后1v1沟通",
"copy": "根据孩子情况定制学习方案"
},
{
"stage": "决策",
"touch_point": "体验课后24小时",
"action": "限时优惠促进成交",
"copy": "本月报名立减XX元,赠送XX资料包"
},
{
"stage": "成交",
"touch_point": "报名后",
"action": "拉入学员群+学情跟进",
"copy": "欢迎加入XX大家庭!"
}
]
def _generate_timeline(self, inst: Dict) -> Dict:
"""生成时间规划"""
return {
"week_1": [
"完成账号矩阵搭建(抖音/视频号/小红书)",
"发布首批内容(5-10条)",
"启动本地社群渗透"
],
"week_2": [
"发布首批体验课招募",
"地推+社区活动启动",
"老带新机制上线"
],
"month_1": [
"收集首批体验数据",
"优化转化话术",
"启动社群日常运营"
],
"quarter_goal": [
"月均获客100+",
"体验课转化率>30%",
"社群活跃度>10%"
]
}
def _estimate_budget(self, inst: Dict) -> Dict:
"""预估预算"""
scale = inst.get("scale", "中型")
budget_map = {
"小班": {"monthly": "3000-5000元", "items": ["内容制作", "广告投放", "活动物料"]},
"中型": {"monthly": "8000-15000元", "items": ["平台推广", "人员激励", "活动费用"]},
"大型": {"monthly": "20000+元", "items": ["团队配置", "品牌投放", "系统工具"]}
}
return budget_map.get(scale, budget_map["中型"])
def _generate_kpis(self, inst: Dict) -> Dict:
"""生成KPI指标"""
return {
"acquisition": {
"monthly_leads": 100,
"channel_efficiency": {"organic": "40%", "paid": "30%", "referral": "30%"}
},
"conversion": {
"trial_to_paid": ">30%",
"avg_cycle": "7-14天"
},
"retention": {
"renewal_rate": ">80%",
"churn_rate": "<10%"
},
"economics": {
"cac_target": "<300元",
"ltv": ">3000元",
"ltv_cac_ratio": ">3"
}
}
def generate_community_sop(self, inst: Dict) -> Dict:
"""
生成社群运营SOP
"""
sop = {
"group_setup": {
"group_type": self._get_group_type(inst),
"group_name": f"【{inst.get('name', 'XX机构')}】XX家长交流群",
"welcome_msg": self._generate_welcome_msg(inst),
"group_rules": [
"禁止广告/链接/外部招生信息",
"友善交流,尊重他人",
"问题咨询请@群主/助教"
]
},
"daily_content": self._generate_daily_content(inst),
"weekly_routine": self._generate_weekly_routine(inst),
"activation_strategy": self._generate_activation_strategy(inst),
"conversion_nodes": self._generate_conversion_nodes(inst),
"forbidden_items": [
"频繁刷屏广告",
"负面情绪传播",
"竞品提及",
"未经验证的信息转发"
]
}
return sop
def _get_group_type(self, inst: Dict) -> str:
"""获取社群类型"""
type_map = {
"K12": "年级群/学科群",
"素质教育": "兴趣培养群",
"职业教育": "学员学习群"
}
return type_map.get(inst.get("type", "K12"), "家长交流群")
def _generate_welcome_msg(self, inst: Dict) -> str:
"""生成入群话术"""
return f"""🎉 欢迎加入【{inst.get('name', 'XX机构')}】大家庭!
📚 我们是专注于{inst.get('type', '学科培训')}的教育机构
📋 群内福利:
• 每周学习资料免费领
• 名师答疑解惑
• 独家活动优先参与
• 家长育儿干货分享
📌 群规提醒:
请勿发广告/链接,共同维护良好氛围~
有疑问请@群主或私信助教老师
让我们一起见证孩子的成长!🌟"""
def _generate_daily_content(self, inst: Dict) -> List[Dict]:
"""生成每日内容安排"""
return [
{
"time": "07:30-08:00",
"type": "早安问候",
"content": "励志语/今日学习小目标",
"template": "☀️ 周X早安!新的一天,新的开始~\n今日小目标:XXX\n打卡接龙:+1"
},
{
"time": "09:00-10:00",
"type": "知识干货",
"content": "学习技巧/考点分析",
"template": "📚 【每日学习】\n今日分享:XXX\n收藏保存,学习更高效!"
},
{
"time": "12:00-13:00",
"type": "学员展示",
"content": "作业/作品/进步展示",
"template": "⭐ 【学员风采】\n恭喜XXX同学完成XX任务!\n表现:XXX\n#成长记录 #学员风采"
},
{
"time": "15:00-16:00",
"type": "互动问答",
"content": "趣味知识问答",
"template": "🤔 【有奖问答】\n问题:XXX\n首位答对家长可获得XX奖励~\n快来留言吧!"
},
{
"time": "19:30-20:30",
"type": "家长课堂",
"content": "育儿经验/教育方法",
"template": "📖 【家长课堂】\n今晚分享主题:XXX\n主讲人:XXX\n预约提醒:记得来听哦~"
},
{
"time": "21:00-22:00",
"type": "好评互动",
"content": "感谢反馈/学员进步",
"template": "💝 【今日好评】\n感谢XX家长的认可!\n孩子进步点:XXX\n#家长认可 #教学成果"
}
]
def _generate_weekly_routine(self, inst: Dict) -> Dict:
"""生成每周固定活动"""
return {
"周一": "周一晨读打卡(07:30)",
"周二": "知识小测验(19:00)",
"周三": "家长课堂(20:00)",
"周四": "优秀作业展(12:00)",
"周五": "周末活动预告(19:00)",
"周六": "直播公开课(10:00)",
"周日": "本周总结+下周计划(18:00)"
}
def _generate_activation_strategy(self, inst: Dict) -> List[Dict]:
"""生成激活策略"""
return [
{
"strategy": "打卡激励",
"mechanism": "连续打卡7天/30天解锁不同奖励",
"rewards": {"7天": "学习资料包", "30天": "课时赠送"}
},
{
"strategy": "积分体系",
"mechanism": "发言/提问/分享/邀请都可积分",
"rewards": {"积分兑换": "周边礼品/课时折扣"}
},
{
"strategy": "荣誉榜单",
"mechanism": "周冠军/月冠军公示",
"rewards": {"榜单展示": "增强参与感"}
},
{
"strategy": "限时福利",
"mechanism": "特定时段专属优惠",
"rewards": {"秒杀": "体验课/资料包/周边"}
}
]
def _generate_conversion_nodes(self, inst: Dict) -> List[Dict]:
"""生成转化节点"""
return [
{
"trigger": "入群48小时内",
"action": "私信+电话",
"content": "了解孩子情况,预约体验",
"copy": "您好!看到您加入了我们的家长群,想了解一下孩子目前在XX方面的学习情况,方便给您推荐适合的课程~"
},
{
"trigger": "活跃用户(发言3次+)",
"action": "邀请体验课",
"content": "免费体验+1v1评估",
"copy": "您好!看您一直关注孩子的教育,我们正好有免费的体验课机会,可以给孩子做一个全面的学习评估,需要预约吗?"
},
{
"trigger": "体验课结束",
"action": "限时优惠",
"content": "当日报名优惠",
"copy": "感谢您今天的参与!今天报名可以享受XX优惠(仅限今天),想了解更多课程详情吗?"
},
{
"trigger": "学期结束前1个月",
"action": "续费提醒",
"content": "早续费早优惠",
"copy": "您好!下学期续费窗口已开启,早续费可享受XX优惠,名额有限,欢迎联系我们~"
}
]
def generate_moments_content(self, inst: Dict, month_theme: str = "") -> Dict:
"""
生成朋友圈内容日历
"""
content_calendar = {
"monthly_theme": month_theme or "春季成长季",
"weekly_plan": self._generate_weekly_content_plan(inst),
"content_templates": self._generate_content_templates(inst),
"posting_schedule": {
"morning": {"time": "07:30-08:30", "type": "早安/励志/干货"},
"noon": {"time": "12:00-13:00", "type": "学员展示/好评"},
"evening": {"time": "20:00-22:00", "type": "课程推广/活动"}
},
"interaction_tips": [
"发布后1小时内回复所有评论",
"用疑问句引导评论互动",
"适当使用位置标签增加曝光",
"配合Dou+投放高互动内容"
]
}
return content_calendar
def _generate_weekly_content_plan(self, inst: Dict) -> List[Dict]:
"""生成每周内容计划"""
return [
{
"day": "周一",
"theme": "成长励志",
"content_type": "早安+干货",
"ratio": "3:7干货",
"examples": [
"新一周开始,鼓励孩子坚持",
"本周学习计划制定方法"
]
},
{
"day": "周二",
"theme": "教学成果",
"content_type": "学员作品/成绩",
"ratio": "1:9成果",
"examples": [
"学员进步案例分享",
"前后对比展示"
]
},
{
"day": "周三",
"theme": "专业知识",
"content_type": "学习方法/考点",
"ratio": "8:2专业",
"examples": [
"期中/期末备考技巧",
"各科学习方法论"
]
},
{
"day": "周四",
"theme": "互动活动",
"content_type": "问答/投票/福利",
"ratio": "5:5互动",
"examples": [
"趣味知识问答",
"家长投票:孩子最需要什么"
]
},
{
"day": "周五",
"theme": "学员风采",
"content_type": "课堂日常/活动",
"ratio": "2:8日常",
"examples": [
"课堂精彩瞬间",
"活动花絮"
]
},
{
"day": "周六",
"theme": "活动推广",
"content_type": "体验课/公开课",
"ratio": "1:9推广",
"examples": [
"周末体验课招募",
"公开课预约"
]
},
{
"day": "周日",
"theme": "家长沟通",
"content_type": "育儿经验/好评",
"ratio": "4:6沟通",
"examples": [
"家长教育心得",
"学员好评截图"
]
}
]
def _generate_content_templates(self, inst: Dict) -> Dict:
"""生成内容模板"""
return {
"early_morning": [
"☀️ 周{day}早安!\n\n新的一周,新的开始!\n今天也要加油鸭~\n\n#学习打卡 #XX机构",
"🌟 早起的鸟儿有虫吃~\n\n今日份学习目标:{target}\n\n宝贝们准备好了吗?\n评论区打卡接龙!\n\n#早安 #学习"
],
"achievement": [
"🎉 恭喜{student}同学!\n\n本次考试进步{score}分\n排名提升{percent}%\n\n努力的汗水终有回报💪\n\n#学员进步 #XX机构",
"⭐ 今日优秀作业来自{student}!\n\n作业完成度:100%\n知识点掌握:优秀\n\n值得所有同学学习!\n\n#优秀作业 #学习记录"
],
"knowledge": [
"📚 【每日干货】\n\n{subject}学习技巧第{num}期\n\n要点:\n1. {point1}\n2. {point2}\n3. {point3}\n\n收藏起来慢慢看!\n\n#学习方法 #XX机构",
"🎯 【考点速记】\n\n{topic}核心知识点\n\n考试经常考,快记下来!\n\n#考点 #学习资料"
],
"trial_invitation": [
"🔥 免费体验课来啦!\n\n适合:{target_grade}年级\n科目:{subject}\n时间:{date} {time}\n\n名额有限,扫码预约!\n\n#免费体验 #XX机构",
"💡 {subject}0元体验课\n\n限量{num}个名额\n专业老师1v1评估\n\n扫码立即报名👇\n\n#体验课 #预约"
],
"praise": [
"💝 感谢家长的认可!\n\n「{feedback}」\n\n——{parent}家长\n\n您的认可是我们最大的动力!\n\n#家长好评 #XX机构",
"🏆 又收到家长的肯定!\n\n孩子的进步是我们共同的骄傲\n\n感谢选择{inst_name}\n\n#好评 #教学成果"
],
"activity": [
"🎈 本周六公开课报名中!\n\n主题:{topic}\n讲师:{teacher}\n时间:{time}\n\n私信预约,名额有限~\n\n#公开课 #XX机构",
"📢 {activity_name}来啦!\n\n{content}\n\n感兴趣的同学抓紧报名!\n\n#活动 #XX机构"
]
}
def generate_parent_script(self, scenario: str, inst: Dict) -> Dict:
"""
生成家长沟通话术
scenario: consultation/renewal/complaint/referral
"""
scripts = {
"consultation": {
"title": "咨询接待话术",
"phases": [
{
"phase": "开场破冰",
"objective": "了解基本情况",
"script": f"""您好!欢迎咨询{inst.get('name', 'XX机构')}~
我是您的课程顾问[姓名],请问怎么称呼您?
孩子多大了?目前在读哪个年级呢?""",
"tips": "语气亲切,不要急于推销"
},
{
"phase": "需求挖掘",
"objective": "了解痛点和期望",
"script": """请问您是想提升哪方面的能力呢?
之前有在其他机构学习过吗?
对孩子的学习有什么期望和目标?""",
"tips": "多问开放式问题,倾听为主"
},
{
"phase": "课程介绍",
"objective": "推荐适合课程",
"script": """根据您说的情况,我推荐我们的XX课程...
这个课程的优势是:
• [优势1]
• [优势2]
• [优势3]
我们的老师都是[背景],已经帮助[数量]位学员提升了[成果]""",
"tips": "结合前面了解到的需求,有针对性介绍"
},
{
"phase": "邀约体验",
"objective": "预约免费体验",
"script": """非常推荐您带孩子来体验一下!
本周{maybe_time}我们正好有体验课,可以让孩子感受一下课堂氛围~
免费体验还包括一份学习能力评估报告哦!""",
"tips": "强调免费,消除顾虑"
}
]
},
"renewal": {
"title": "续费话术",
"phases": [
{
"phase": "成果回顾",
"objective": "展示学习效果",
"script": """您好!{student}在我们这里学习已经{period}了~
这段时间的进步:
• {improvement1}
• {improvement2}
• {improvement3}
孩子的努力+老师的专业,效果很明显呢!""",
"tips": "用具体数据说话,展示价值"
},
{
"phase": "续费通知",
"objective": "说明续费安排",
"script": """下学期的课程续费已经开始了~
我们的早鸟优惠是:立减{discount}元
还赠送:{gift}
优惠截止到{deadline},需要我帮您预留名额吗?""",
"tips": "明确优惠截止时间,制造紧迫感"
},
{
"phase": "异议处理",
"objective": "解决顾虑",
"script": """完全理解您的顾虑~
关于{concern},我们的解决方案是:
{solution}
其实很多家长一开始也有类似担心,但后来都发现...(案例)""",
"tips": "先认可情绪,再提供解决方案"
}
]
},
"complaint": {
"title": "投诉处理话术",
"phases": [
{
"phase": "倾听道歉",
"objective": "安抚情绪",
"script": """非常抱歉给您带来不好的体验!
您说的这些我完全理解,如果是我也会着急...
能具体跟我说说是怎么回事吗?""",
"tips": "先道歉,不要急于解释或推卸"
},
{
"phase": "了解详情",
"objective": "掌握全貌",
"script": """谢谢您的反馈,我需要了解一下具体情况...
请问这件事是什么时候发生的?
当时是哪位老师/员工接待的?
您希望我们怎么解决呢?""",
"tips": "详细记录,表示重视"
},
{
"phase": "解决方案",
"objective": "给出补救措施",
"script": """非常感谢您的理解!
针对这个问题,我们决定:
1. {measure1}
2. {measure2}
3. {measure3}
您看这样的处理方式可以吗?""",
"tips": "给出具体解决方案,不要空口承诺"
},
{
"phase": "后续跟进",
"objective": "闭环反馈",
"script": """再次为给您带来的不便道歉...
后续我们会{take_action},避免类似问题再次发生。
请问还有其他问题吗?有什么建议也欢迎提出~""",
"tips": "表示会改进,争取转化投诉为忠诚客户"
}
]
},
"referral": {
"title": "转介绍话术",
"phases": [
{
"phase": "感谢回顾",
"objective": "唤醒好感",
"script": """您好!我是XX机构的课程顾问~
感谢您一直对我们工作的支持!孩子的进步我们也看在眼里,特别开心!""",
"tips": "真诚感谢,不要上来就提转介绍"
},
{
"phase": "说明机制",
"objective": "介绍福利",
"script": """跟您分享个好消息~
我们最近推出了老带新活动:
推荐1位朋友报名,您可以获得{reward1}
朋友报名也可以享受{reward2}
都是实实在在的福利!""",
"tips": "双方都有好处,强调互利"
},
{
"phase": "自然请求",
"objective": "请求转介绍",
"script": """您身边有没有朋友的孩子也在学{subject}呢?
如果有的话,可以把我的微信推荐给他们~
推荐成功报名后,您和朋友的福利我一起安排!""",
"tips": "给家长一个自然的推荐理由"
}
]
}
}
return scripts.get(scenario, scripts["consultation"])
def analyze_data(self, data: Dict) -> Dict:
"""
分析运营数据
data: {
"leads": 来访数,
"trials": 体验课人数,
"paid": 付费人数,
"active": 社群活跃人数,
"total": 社群总人数,
"renewals": 续费人数,
"total_students": 总学员数,
"cost": 总成本,
"revenue": 总营收
}
"""
analysis = {
"acquisition_metrics": self._analyze_acquisition(data),
"conversion_metrics": self._analyze_conversion(data),
"community_metrics": self._analyze_community(data),
"retention_metrics": self._analyze_retention(data),
"economics": self._analyze_economics(data),
"benchmark_comparison": self._compare_benchmark(data),
"recommendations": self._generate_recommendations(data)
}
return analysis
def _analyze_acquisition(self, data: Dict) -> Dict:
"""分析获客指标"""
leads = data.get("leads", 0)
cost = data.get("cost", 0)
cac = cost / leads if leads > 0 else 0
return {
"total_leads": leads,
"cac": round(cac, 2),
"cac_level": self._get_level("cac", cac),
"cost_breakdown": {
"ads": cost * 0.4,
"content": cost * 0.3,
"activities": cost * 0.3
} if cost > 0 else {}
}
def _analyze_conversion(self, data: Dict) -> Dict:
"""分析转化指标"""
leads = data.get("leads", 1)
trials = data.get("trials", 0)
paid = data.get("paid", 0)
trial_rate = trials / leads if leads > 0 else 0
conversion_rate = paid / trials if trials > 0 else 0
return {
"leads_to_trial": f"{trial_rate:.1%}",
"trial_to_paid": f"{conversion_rate:.1%}",
"overall_conversion": f"{paid/leads:.1%}" if leads > 0 else "0%",
"trial_rate_level": self._get_level("trial_conversion", trial_rate),
"conversion_level": self._get_level("trial_conversion", conversion_rate)
}
def _analyze_community(self, data: Dict) -> Dict:
"""分析社群指标"""
active = data.get("active", 0)
total = data.get("total", 1)
activity_rate = active / total if total > 0 else 0
return {
"total_members": total,
"active_members": active,
"activity_rate": f"{activity_rate:.1%}",
"activity_level": self._get_level("community_activity", activity_rate),
"daily_avg_messages": int(data.get("daily_messages", 50)),
"peak_hours": ["12:00-13:00", "20:00-21:00"]
}
def _analyze_retention(self, data: Dict) -> Dict:
"""分析留存指标"""
renewals = data.get("renewals", 0)
total = data.get("total_students", 1)
renewal_rate = renewals / total if total > 0 else 0
return {
"renewal_rate": f"{renewal_rate:.1%}",
"renewal_level": self._get_level("renewal_rate", renewal_rate),
"churn_rate": f"{1-renewal_rate:.1%}",
"referral_rate": f"{data.get('referrals', 0)/total:.1%}" if total > 0 else "0%"
}
def _analyze_economics(self, data: Dict) -> Dict:
"""分析经济指标"""
cost = data.get("cost", 0)
revenue = data.get("revenue", 0)
paid = data.get("paid", 1)
return {
"total_cost": cost,
"total_revenue": revenue,
"profit": revenue - cost,
"roi": f"{(revenue-cost)/cost*100:.1f}%" if cost > 0 else "N/A",
"arpu": f"{revenue/paid:.0f}" if paid > 0 else "N/A",
"ltv": f"{revenue/paid*3:.0f}" if paid > 0 else "N/A" # 假设LTV=3*ARPU
}
def _compare_benchmark(self, data: Dict) -> Dict:
"""对标行业基准"""
trials = data.get("trials", 0)
leads = data.get("leads", 1)
trial_rate = trials / leads if leads > 0 else 0
return {
"vs_cac": f"{data.get('cost', 0)/leads:.0f}元 vs 行业200元" if leads > 0 else "N/A",
"vs_conversion": f"{trial_rate:.0%} vs 行业40%",
"vs_activity": f"社群活跃度需提升至15%",
"vs_renewal": f"续费率需提升至85%"
}
def _generate_recommendations(self, data: Dict) -> List[str]:
"""生成优化建议"""
recommendations = []
# CAC 建议
cac = data.get("cost", 0) / max(data.get("leads", 1), 1)
if cac > 400:
recommendations.append("💰 获客成本偏高,建议:1)优化广告投放ROI 2)增加口碑转介绍比例 3)提升内容获客占比")
# 转化建议
trials = data.get("trials", 0)
leads = data.get("leads", 1)
if trials / leads < 0.3:
recommendations.append("📱 来访-体验转化率低,建议:1)优化首电话术 2)增加体验课频次 3)提供更多诱饵(测评报告等)")
# 社群建议
active = data.get("active", 0)
total = data.get("total", 1)
if active / total < 0.1:
recommendations.append("💬 社群活跃度低,建议:1)固定每日内容时间 2)增加互动活动 3)培养核心KOL家长")
# 续费建议
renewals = data.get("renewals", 0)
students = data.get("total_students", 1)
if renewals / students < 0.8:
recommendations.append("📈 续费率有提升空间,建议:1)提前1个月启动续费 2)增加增值服务 3)完善学情反馈")
if not recommendations:
recommendations.append("🎉 各项指标表现良好!继续保持,优化细节以追求卓越")
return recommendations
def _get_level(self, metric: str, value: float) -> str:
"""获取指标等级"""
metrics = self.industry_metrics.get(metric, {})
if metric == "cac": # CAC越低越好
if value < metrics.get("excellent", 200):
return "优秀"
elif value < metrics.get("good", 400):
return "良好"
else:
return "需改进"
else: # 其他指标越高越好
if value >= metrics.get("excellent", 0.85):
return "优秀"
elif value >= metrics.get("good", 0.70):
return "良好"
else:
return "需改进"
def generate_activity_plan(self, activity_type: str, inst: Dict) -> Dict:
"""
生成活动策划方案
activity_type: trial/expo/holiday/seasonal
"""
templates = {
"trial": {
"name": "免费体验课",
"duration": "60-90分钟",
"objectives": ["吸引新客户", "展示教学实力", "收集潜在客户信息"],
"flow": [
{"time": "0-10min", "content": "签到+资料收集", "staff": "课程顾问"},
{"time": "10-30min", "content": "公开课/Demo演示", "staff": "主讲教师"},
{"time": "30-45min", "content": "互动答疑", "staff": "主讲教师"},
{"time": "45-60min", "content": "1v1咨询", "staff": "课程顾问"}
],
"materials": ["签到表", "宣传单页", "体验课报名表", "优惠券"],
"kpis": {"target_attendance": 20, "target_conversion": "30%", "cost_per_head": "50元"}
},
"expo": {
"name": "教育展会/讲座",
"duration": "2-3小时",
"objectives": ["品牌曝光", "行业影响力", "批量获客"],
"flow": [
{"time": "开场", "content": "品牌宣讲", "staff": "校长"},
{"time": "核心", "content": "专家讲座/干货分享", "staff": "特邀专家"},
{"time": "互动", "content": "家长问答", "staff": "全体"},
{"time": "收尾", "content": "课程咨询+报名", "staff": "课程顾问"}
],
"materials": ["易拉宝", "宣传册", "体验卡", "抽奖券"],
"kpis": {"target_attendance": 100, "target_leads": 50, "cost": "5000元"}
},
"holiday": {
"name": "节日主题活动",
"duration": "1-2小时",
"objectives": ["社群激活", "家长粘性", "品牌温度"],
"flow": [
{"time": "开场", "content": "节日祝福+活动介绍", "staff": "班主任"},
{"time": "互动", "content": "亲子活动/游戏", "staff": "教师团队"},
{"time": "展示", "content": "学员成果展示", "staff": "学员"},
{"time": "留念", "content": "合影+分享", "staff": "全体"}
],
"materials": ["活动道具", "奖品", "背景板", "摄影设备"],
"kpis": {"target_participation": "80%", "photo_sharing": "50%", "feedback_score": "4.8+"}
}
}
activity = templates.get(activity_type, templates["trial"])
activity["inst_name"] = inst.get("name", "XX机构")
activity["inst_type"] = inst.get("type", "教培")
return activity
# CLI 入口
if __name__ == "__main__":
import sys
tool = EduPrivateOperations()
# 示例调用
example_inst = {
"name": "学而思培优",
"type": "K12",
"scale": "中型",
"target_age": "6-15岁",
"pain_point": "招生难"
}
# 测试功能
print("=== 教培机构私域运营 Agent ===\n")
# 1. 招生方案
print("1. 招生方案生成中...")
plan = tool.generate_enrollment_plan(example_inst)
print(json.dumps(plan, ensure_ascii=False, indent=2))
# 2. 社群SOP
print("\n2. 社群SOP生成中...")
sop = tool.generate_community_sop(example_inst)
print(json.dumps(sop, ensure_ascii=False, indent=2))
# 3. 朋友圈内容
print("\n3. 朋友圈内容日历生成中...")
content = tool.generate_moments_content(example_inst, "春季成长季")
print(json.dumps(content, ensure_ascii=False, indent=2))
print("\n✅ 所有功能测试完成!")
外贸工厂询盘全流程 Agent。覆盖:询盘解析、产品可行性分析、报价单生成(中英文)、专业外贸邮件起草、客户建档与跟进管理。当用户提到外贸询盘、海外客户报价、出口报价单、外贸邮件、FOB/CIF 报价、工厂对外贸、出口报价等场景时触发。
---
name: trade-inquiry-agent
description: 外贸工厂询盘全流程 Agent。覆盖:询盘解析、产品可行性分析、报价单生成(中英文)、专业外贸邮件起草、客户建档与跟进管理。当用户提到外贸询盘、海外客户报价、出口报价单、外贸邮件、FOB/CIF 报价、工厂对外贸、出口报价等场景时触发。
---
# Trade Inquiry Agent — 外贸工厂询盘全流程
## 核心能力
1. **询盘解析** — 从客户邮件/消息中提取:品名、规格、数量、交期、目标价、付款方式、贸易术语
2. **产品可行性分析** — 判断需求匹配度、原材料行情、产能判断、风险提示
3. **报价单生成** — 输出标准外贸报价单(中英文,含 FOB/CIF/EXW 多种报价)
4. **专业邮件起草** — 首封报价、跟进、还盘、拒绝、感谢等场景
5. **客户建档** — 结构化记录客户信息、跟进节点、往来记录
---
## 工作流
### Step 1 — 询盘解析
当用户提供原始询盘内容(邮件原文、截图、关键词),提取以下结构化字段:
```
产品名称:
规格/参数:
数量:
目标单价:
目标总价:
目标交期:
付款方式:
贸易术语(FOB/CIF/EXW):
其他要求(认证/包装/样品):
```
若信息缺失,在回复中列出「需确认事项清单」,不要凭空假设。
### Step 2 — 产品可行性分析
基于工厂能力评估:
- 原材料是否有库存/可采购
- 最低起订量(MOQ)是否满足
- 标准交期 vs 客户要求
- 是否需要开模/定制(成本+时间)
- 汇率/原材料波动风险提示
- 给出「可接单」「有条件可接」「无法承接」的明确判断
### Step 3 — 报价单生成
生成标准报价单,包含:
- 公司抬头、联系方式
- 报价有效期
- 产品明细(品名/规格/MOQ/单价/总价)
- 贸易术语(FOB/CIF/EXW 分别报价)
- 交货周期
- 付款条件
- 包装方式
- 验货标准
中文 + 英文双语版本。用 Markdown 表格输出,可直接复制发送。
### Step 4 — 邮件起草
根据场景选择对应模板(详见 `references/email_templates.md`):
- **首封报价邮件**:专业简洁,包含核心参数 + 有效期
- **跟进邮件**:3/7/14 天节奏,不同催单力度
- **还盘邮件**:处理客户议价,策略性让步
- **拒绝/转介邮件**:礼貌拒绝,维护关系
### Step 5 — 客户建档
使用结构化格式记录:
```
## 客户档案
- 公司名称:
- 联系人 / 职位:
- 国家/地区:
- 主营产品:
- 询盘次数:
- 成交记录:
- 跟进记录(日期 | 内容 | 下一步):
- 备注:
```
---
## 报价计算参考
**FOB = EXW + 内陆运费 + 港口费 + 订舱费 + 文件费**
**CIF = FOB + 海运费 + 保险费**
**CFR = FOB + 海运费**
利润率建议区间:
- 老客户/大订单:8%-15%
- 新客户/小订单:15%-25%
- 定制品/小批量:25%-40%
---
## 参考文件
- 邮件模板库 → `references/email_templates.md`
- 报价单结构参考 → `references/quotation.md`
- 产品分类与参数参考 → `references/product_classification.md`
FILE:references/email_templates.md
# 邮件模板库
## 首封报价邮件(Initial Quotation)
```
Subject: [Quotation] {产品名称} from {公司名} — {日期}
Dear {客户名},
Thank you for your inquiry regarding {产品名称}.
Please find our best offer as follows:
| Item | Description | Unit Price | MOQ | Total |
|------|-------------|------------|-----|-------|
| 1 | {品名/规格} | USD {单价}/unit | {MOQ} | USD {总价} |
- Trade Term: {FOB/CIF/EXW} {目的港}
- Payment Term: {T/T 30%/L/C}
- Delivery Lead Time: {交期}
- Validity: {有效期}
We have {产能情况} and can ensure {质量承诺}.
Looking forward to your feedback.
Best regards,
{姓名}
{公司名}
Tel: {电话}
Email: {邮箱}
```
---
## 跟进邮件 — 3天(First Follow-up)
```
Subject: Re: [Quotation] {产品名称} — Any questions?
Dear {客户名},
Just following up on our quotation sent on {日期}.
Our offer for {产品名称} remains valid at USD {单价}/unit with {贸易术语}.
Have you had a chance to review the details? Happy to adjust quantities or terms if needed.
Best regards,
{姓名}
```
---
## 跟进邮件 — 7天(Second Follow-up)
```
Subject: Quotation Update — {产品名称} | Limited Time Discount
Dear {客户名},
I hope this finds you well.
Our previous quotation for {产品名称} is still open. I'd like to offer a {折扣}% discount if you can confirm by {截止日期}.
Updated offer:
- Unit Price: USD {折后价}/unit
- MOQ: {MOQ}
- Validity: {日期}
Please let me know if you have any questions.
Best regards,
{姓名}
```
---
## 还盘邮件(Counter-offer)
```
Subject: Re: {产品名称} Quotation — Best Possible Price
Dear {客户名},
Thank you for your feedback regarding the price.
After reviewing with our production team, we are pleased to offer the following adjustment:
| Item | Original Price | Revised Price |
|------|---------------|---------------|
| {品名} | USD {原单价}/unit | USD {新单价}/unit |
Note: This adjustment is valid for orders confirmed by {截止日期}.
While this is our best offer at the current exchange rate and raw material cost, we are happy to discuss payment terms or packaging options to further support your procurement.
Looking forward to your order.
Best regards,
{姓名}
```
---
## 拒绝/转介邮件
```
Subject: Re: {产品名称} Inquiry
Dear {客户名},
Thank you for your interest in {产品名称}.
Unfortunately, we are unable to fulfill this order at this time due to {原因: 产能/认证/最小起订量等}.
However, we would be happy to:
- Recommend a reliable alternative supplier
- Keep your requirements on file and revisit when capacity allows
- Offer other products from our catalog
Thank you for considering us. We hope to work with you in the future.
Best regards,
{姓名}
```
---
## 催单邮件(Urgent)
```
Subject: Order Confirmation Needed — {产品名称} | Price Expires {日期}
Dear {客户名},
This is a friendly reminder that our quotation for {产品名称} will expire on {日期}.
Current offer:
- Price: USD {单价}/unit
- Lead Time: {交期}
- Terms: {贸易术语}
Raw material costs are expected to rise in the coming weeks. We recommend confirming soon to lock in this price.
Please feel free to reach out if you need any clarification.
Best regards,
{姓名}
```
---
## 邮件礼仪规则
1. **主题行**:清晰包含产品名 + 目的 + 日期/批次
2. **称呼**:客户有姓名用姓名,无姓名用 Dear Sir/Madam
3. **长度**:首封邮件不超过 150 词,邮件是沟通不是作文
4. **附件**:报价单以 PDF 附件形式附上,正文只放摘要
5. **跟进节奏**:3天 → 7天 → 14天 → 放弃归档,不要超过3轮主动跟进
6. **文化敏感**:穆斯林国家注意斋月,欧洲注意暑假,美国注意节日
FILE:references/product_classification.md
# 产品分类与参数参考
## 常见外贸产品分类
| 类别 | 代表产品 | 认证要求 | 关税税率(参考) |
|------|---------|---------|----------------|
| 纺织服装 | 面料、服装、帽子 | OEKO-TEX, BSCI, WRAP | 12%-20% |
| 电子电器 | 灯具、小家电、消费电子 | CE, FCC, RoHS, UL | 0%-8% |
| 五金工具 | 工具、锁具、卫浴配件 | CE, ISO | 5%-10% |
| 家居用品 | 家具、装饰品、厨具 | CE, FDA (食品接触) | 8%-15% |
| 机械配件 | 汽车配件、工业零件 | CE, IATF16949 | 3%-8% |
| 化工产品 | 涂料、胶水、原料 | REACH, MSDS | 5%-15% |
| 包装材料 | 纸箱、塑料袋、托盘 | FSC, ISO | 3%-8% |
---
## 关键产品参数采集清单
### 电子电器类
- 电压(110V/220V/Universal)
- 功率(W)
- 认证目标市场(CE/FCC/UL/KC/PSE)
- 插头类型(US/EU/UK/AU)
- 能效等级
- 包装要求(彩盒/白盒/散装)
### 纺织服装类
- 面料成分(棉/涤/混纺/功能面料)
- 克重(GSM)
- 颜色/色牢度要求
- 尺码体系(US/EU/Asian)
- 认证(OEKO-TEX/BCI/GOTS)
- 目标价格区间(USD/kg 或 USD/piece)
### 五金机械类
- 材质(不锈钢/铝合金/碳钢/塑料)
- 表面处理(镀锌/喷漆/阳极氧化)
- 公差要求
- 测试标准(拉力/扭矩/盐雾测试)
- 认证要求
- 是否需要来图来样加工
### 化工/包装类
- 主要成分/配方
- 目标市场法规(REACH/ROHS/FDA)
- MSDS / TDS 是否需要
- 包装规格(克重/容量)
- 最小起订量与增量单位
---
## 常用外贸术语速查
| 术语 | 全称 | 含义 | 卖方责任边界 |
|------|------|------|------------|
| EXW | Ex Works | 工厂交货 | 只在工厂交货 |
| FOB | Free On Board | 离岸价 | 装船前一切费用 |
| CIF | Cost, Insurance & Freight | 到岸价 | 含海运费+保险 |
| CFR | Cost & Freight | 成本+运费 | 含海运费,不含保险 |
| DDP | Delivered Duty Paid | 完税后交货 | 卖方承担一切费用 |
| DAP | Delivered At Place | 目的地交货 | 卖方承担运输风险 |
---
## 付款方式选择
| 方式 | 适用场景 | 对工厂风险 |
|------|---------|-----------|
| T/T 30/70 | 大货,信任客户 | 中 |
| T/T 30%/70% against B/L copy | 常规出口 | 低(控制提单) |
| L/C at sight | 新客户,大订单 | 低(银行信用) |
| L/C 90 days | 大客户,长账期 | 中高 |
| T/T 100% in advance | 样品/小单 | 极低 |
| D/P | 不推荐 | 高(买家违约风险大) |
FILE:references/quotation.md
# 报价单结构参考
## 标准报价单格式(中文抬头)
```
╔══════════════════════════════════════════════════════════╗
║ 公司名称 / COMPANY NAME ║
║ 地址 | Tel | Email | Website ║
║ 营业执照编号 | 海关编码 ║
╚══════════════════════════════════════════════════════════╝
报价单编号 / Quotation No.: Q-2026-XXXX
日期 / Date: {YYYY-MM-DD}
有效期 / Valid Until: {YYYY-MM-DD}
TO: {客户公司名}
Attn: {联系人}
Email: {邮箱}
─────────────────────────────────────────────────────────────
产品报价 / PRODUCT QUOTATION
─────────────────────────────────────────────────────────────
| # | 产品名称 | 规格/型号 | 数量 | 单价 | 总价 |
|---|---------|---------|------|------|------|
| 1 | | | | | |
小计 / Subtotal: USD XXXXX
运费 / Freight: USD XXXX
保险 / Insurance (CIF only): USD XXX
─────────────────────────────────────────────────────────────
合计 / TOTAL: USD XXXXX
─────────────────────────────────────────────────────────────
价格条款 / TRADE TERMS
─────────────────────────────────────────────────────────────
FOB [装运港]: USD XXXXX
CIF [目的港]: USD XXXXX
EXW [工厂交货]: USD XXXXX
CFR [目的港]: USD XXXXX
─────────────────────────────────────────────────────────────
交货周期 / LEAD TIME: XX 天 / days
付款条件 / PAYMENT: T/T 30% deposit, 70% against B/L copy
包装方式 / PACKING: {标准出口纸箱/木箱/托盘}
毛重/净重 / G.W./N.W.: XX kg / XX kg
─────────────────────────────────────────────────────────────
报价人: {姓名} 审核: {主管} 日期: {日期}
```
---
## 报价审核 checklist(发出前必查)
- [ ] 规格参数与客户要求逐一对照,无遗漏
- [ ] 单价计算正确,总价无误
- [ ] 有效期标注清晰(建议 15-30 天)
- [ ] 贸易术语与客户要求一致
- [ ] 付款条件在工厂可接受范围内
- [ ] 交期是否可行(旺季需额外留 buffer)
- [ ] 汇率已锁定或注明有效期
- [ ] 报价单编号唯一,可追溯
- [ ] 公司信息完整(联系方式/银行信息)
---
## 常见报价失误
| 失误 | 后果 | 防范 |
|------|------|------|
| 漏报附加费(海运费/港杂费)| 客户以总价比对,低报失客 | 分项列出所有费用 |
| 汇率变动未注明 | 报价作废或亏损 | 标注有效期 + 汇率说明 |
| 交期过度承诺 | 逾期违约金/客户流失 | 留 15% buffer |
| MOQ 未注明 | 客户小批量询价,无法处理 | 明确标注最低起订量 |
| 规格模糊 | 客户误解,交货争议 | 用具体数字/参数描述 |
抖音本地生活餐饮运营专家 Agent。提供店铺诊断、爆款菜品打造、团购方案设计、内容运营策略、数据分析等全链路运营支持。Keywords: 抖音, 本地生活, 餐饮, 团购, 运营, 抖音运营, 餐饮营销.
---
name: douyin-local-food
description: "抖音本地生活餐饮运营专家 Agent。提供店铺诊断、爆款菜品打造、团购方案设计、内容运营策略、数据分析等全链路运营支持。Keywords: 抖音, 本地生活, 餐饮, 团购, 运营, 抖音运营, 餐饮营销."
---
# 抖音本地生活餐饮运营专家
> 专为餐饮商家打造的抖音本地生活运营 Agent,覆盖从开店诊断到爆款打造的完整运营链路。
---
## 使用场景
当用户提到以下关键词时触发:
- 抖音运营、抖音团购、抖音本地生活
- 餐饮营销、餐厅推广、菜品推广
- 团购方案、套餐设计、爆款打造
- 店铺诊断、运营策略、数据分析
---
## 核心能力矩阵
| 能力模块 | 功能 | 输出物 |
|---------|------|--------|
| **店铺诊断** | 分析店铺现状、识别问题、给出优先级建议 | 诊断报告 PDF |
| **爆款菜品** | 选品策略、定价逻辑、卖点提炼、话术设计 | 爆款方案文档 |
| **团购设计** | 套餐组合、价格梯度、引流款/利润款规划 | 团购方案表 |
| **内容运营** | 短视频选题、脚本模板、发布节奏、DOU+投放策略 | 内容日历+脚本库 |
| **数据分析** | 核心指标解读、竞品对标、优化建议 | 数据周报 |
| **客服话术** | 差评回复、私聊转化、复购引导 | 话术库 |
---
## 命令列表
| 命令 | 说明 | 用法 |
|------|------|------|
| `diagnose` | 店铺诊断 | `python3 scripts/douyin_tool.py diagnose [参数]` |
| `dish` | 爆款菜品打造 | `python3 scripts/douyin_tool.py dish [参数]` |
| `groupon` | 团购方案设计 | `python3 scripts/douyin_tool.py groupon [参数]` |
| `content` | 内容运营策略 | `python3 scripts/douyin_tool.py content [参数]` |
| `analyze` | 数据分析 | `python3 scripts/douyin_tool.py analyze [参数]` |
| `script` | 客服话术生成 | `python3 scripts/douyin_tool.py script [参数]` |
---
## 使用流程
### 场景 1:新店冷启动诊断
```
我刚开了一家火锅店,抖音上没什么流量,帮我诊断一下
```
**执行:**
```bash
python3 scripts/douyin_tool.py diagnose \
--type hotpot \
--stage new \
--city "深圳" \
--output diagnose_report.pdf
```
**输出:**
- 店铺基础信息完善度评分
- 同城竞品对标分析
- 冷启动优先级清单(POI认领→基础装修→首条视频→首单团购)
- 预估起号周期
---
### 场景 2:爆款菜品打造
```
我想把招牌酸菜鱼打造成爆款,怎么搞?
```
**执行:**
```bash
python3 scripts/douyin_tool.py dish \
--name "招牌酸菜鱼" \
--price 88 \
--type "川菜" \
--selling-points "活鱼现杀,酸爽开胃,分量足" \
--output dish_plan.md
```
**输出:**
- 菜品定位(引流款/利润款/形象款)
- 定价策略(原价/团购价/秒杀价梯度)
- 视频拍摄脚本(3个角度:制作过程、食客反应、环境展示)
- 文案话术(标题模板+评论区互动)
- 预估转化路径
---
### 场景 3:团购方案设计
```
帮我设计一套团购套餐,要有引流款也有利润款
```
**执行:**
```bash
python3 scripts/douyin_tool.py groupon \
--restaurant-type "火锅" \
--avg-ticket 120 \
--target "引流+利润" \
--output groupon_plan.xlsx
```
**输出:**
| 套餐名 | 原价 | 团购价 | 毛利率 | 定位 | 适用场景 |
|--------|------|--------|--------|------|---------|
| 2人尝鲜餐 | 168 | 88 | 35% | 引流款 | 新客首单 |
| 4人聚会餐 | 328 | 198 | 48% | 主推款 | 朋友聚餐 |
| 6人豪华餐 | 498 | 328 | 52% | 利润款 | 家庭聚餐 |
| 秒杀单品券 | 68 | 38 | 20% | 爆款 | 限时引流 |
---
### 场景 4:内容运营策略
```
下周的内容怎么安排?给我一个发布计划
```
**执行:**
```bash
python3 scripts/douyin_tool.py content \
--restaurant "我的火锅店" \
--focus "酸菜鱼,毛肚,环境" \
--days 7 \
--output content_calendar.xlsx
```
**输出:**
- 7天发布日历(时间+主题+视频类型+DOU+预算)
- 每日视频脚本模板
- 热点蹭流建议
- 评论区互动话术库
---
### 场景 5:数据分析周报
```
这周数据怎么样?帮我分析一下
```
**执行:**
```bash
python3 scripts/douyin_tool.py analyze \
--data-file weekly_data.xlsx \
--output analysis_report.pdf
```
**输出:**
- 核心指标看板(曝光→点击→下单→核销漏斗)
- 同城排名变化
- 爆款视频分析
- 下周优化建议
---
## 行业知识库
### 餐饮类型与运营要点
| 类型 | 核心卖点 | 视频重点 | 团购策略 |
|------|---------|---------|---------|
| 火锅 | 食材新鲜、锅底特色 | 涮菜过程、蘸料调配 | 多人套餐为主 |
| 烧烤 | 现烤现吃、烟火气 | 烤制过程、滋滋声 | 夜宵时段+酒水搭配 |
| 川菜 | 麻辣鲜香、下饭 | 爆炒过程、色泽 | 单人工作餐+多人聚餐 |
| 日料 | 新鲜、精致 | 刺身展示、师傅手艺 | 套餐制、午市特价 |
| 茶饮 | 颜值、解渴 | 制作过程、颜值展示 | 第二杯半价、月卡 |
| 甜品 | 网红、打卡 | 摆盘、环境 | 下午茶套餐 |
### 抖音本地生活核心指标
```
曝光量 → 点击率 → 下单转化率 → 核销率 → 复购率
↓ ↓ ↓ ↓ ↓
内容质量 团购吸引力 价格优势 体验满意度 服务质量
```
### 常见问题与解决方案
| 问题 | 原因 | 解决方案 |
|------|------|---------|
| 曝光低 | 内容质量差、账号权重低 | 优化视频前3秒、DOU+投放测试 |
| 点击率低 | 团购吸引力不足 | 优化主图、调整价格梯度 |
| 下单转化低 | 详情页说服力不够 | 增加买家秀、优化文案 |
| 核销率低 | 体验与预期不符 | 提升服务质量、优化套餐内容 |
| 复购率低 | 缺乏留存机制 | 私域引流、会员体系 |
---
## 配置文件
### 用户配置 (`config/user_config.yaml`)
```yaml
restaurant:
name: "我的火锅店"
type: "火锅"
city: "深圳"
avg_ticket: 120
signature_dishes:
- "招牌酸菜鱼"
- "鲜毛肚"
- "手工虾滑"
douyin:
account_id: "xxx"
poi_id: "xxx" # 抖音POI ID
target:
monthly_revenue: 50000
monthly_orders: 500
```
### 行业配置 (`config/industry_config.yaml`)
```yaml
hotpot:
peak_hours:
- "11:30-13:30"
- "17:30-21:00"
best_video_types:
- "食材展示"
- "涮菜过程"
- "食客反应"
groupon_strategy: "多人套餐为主"
pricing_rules:
引流_margin: [0.2, 0.35]
profit_margin: [0.45, 0.55]
image_margin: [0.3, 0.4]
```
---
## 前置依赖
```bash
pip install pyyaml pandas openpyxl jinja2 markdown
```
---
## 注意事项
1. **数据安全**:不存储用户抖音账号密码,仅使用官方API授权
2. **合规提醒**:所有团购方案需符合抖音本地生活平台规则
3. **效果预估**:所有预估数据基于行业平均值,实际效果因店而异
4. **更新频率**:行业知识库每月更新一次,紧跟平台规则变化
---
## 更新日志
- **v1.0.0** (2026-04-27) — 初始版本,支持6大核心能力模块
FILE:README.md
# 抖音本地生活餐饮运营专家 Agent
> 专为餐饮商家打造的抖音本地生活运营 Agent,覆盖从开店诊断到爆款打造的完整运营链路。
## 快速开始
### 安装依赖
```bash
pip install pyyaml pandas openpyxl jinja2 markdown
```
### 基本使用
```bash
# 店铺诊断
python3 scripts/douyin_tool.py diagnose --type hotpot --city "深圳"
# 爆款菜品打造
python3 scripts/douyin_tool.py dish --name "招牌酸菜鱼" --price 88 --selling-points "活鱼现杀,酸爽开胃,分量足"
# 团购方案设计
python3 scripts/douyin_tool.py groupon --restaurant-type hotpot --avg-ticket 120
# 内容运营策略
python3 scripts/douyin_tool.py content --restaurant "我的火锅店" --focus "酸菜鱼,毛肚,虾滑" --days 7
# 数据分析
python3 scripts/douyin_tool.py analyze
# 客服话术生成
python3 scripts/douyin_tool.py script --scenario "差评回复"
```
## 核心能力
### 1. 店铺诊断
针对新店冷启动或老店增长瓶颈,提供系统化诊断:
- 行业对标分析
- 冷启动优先级清单
- 预估起号周期
- 分阶段运营建议
### 2. 爆款菜品打造
从菜品定位到视频脚本,全链路爆款打造:
- 菜品定位(引流款/利润款/形象款)
- 定价梯度设计
- 视频拍摄脚本(3个角度)
- 文案话术库
### 3. 团购方案设计
科学的套餐组合与定价策略:
- 引流款/主推款/利润款/爆款梯度
- 毛利率测算
- 适用场景匹配
- 价格心理学应用
### 4. 内容运营策略
7天内容日历与脚本模板:
- 每日发布主题规划
- 最佳发布时间建议
- DOU+投放策略
- 热点蹭流建议
### 5. 数据分析
核心指标漏斗分析:
- 曝光→点击→下单→核销→复购
- 同城排名对标
- 爆款视频识别
- 优化建议
### 6. 客服话术
场景化话术库:
- 差评回复
- 私聊转化
- 复购引导
## 配置说明
### 用户配置
编辑 `config/user_config.yaml`,填写您的餐厅信息:
```yaml
restaurant:
name: "我的火锅店"
type: "hotpot"
city: "深圳"
avg_ticket: 120
signature_dishes:
- "招牌酸菜鱼"
- "鲜毛肚"
```
### 行业配置
`config/industry_config.yaml` 包含各餐饮类型的运营要点,无需修改。
## 支持的餐饮类型
| 类型 | 代码 | 特点 |
|------|------|------|
| 火锅 | hotpot | 多人套餐为主 |
| 烧烤 | bbq | 夜宵时段+酒水 |
| 川菜 | sichuan | 单人+多人双轨 |
| 日料 | japanese | 套餐制、午市特价 |
| 茶饮 | tea | 第二杯半价、月卡 |
| 甜品 | dessert | 下午茶套餐 |
## 注意事项
1. **数据安全**:不存储用户抖音账号密码,仅使用官方API授权
2. **合规提醒**:所有团购方案需符合抖音本地生活平台规则
3. **效果预估**:所有预估数据基于行业平均值,实际效果因店而异
4. **更新频率**:行业知识库每月更新一次
## 更新日志
- **v1.0.0** (2026-04-27) — 初始版本
FILE:config/industry_config.yaml
# 行业配置 - 餐饮类型与运营要点
restaurant_types:
hotpot:
name: "火锅"
core_selling_points:
- "食材新鲜"
- "锅底特色"
- "蘸料丰富"
video_focus:
- "涮菜过程"
- "蘸料调配"
- "食客反应"
groupon_strategy: "多人套餐为主"
peak_hours:
- "11:30-13:30"
- "17:30-21:00"
avg_margin: 0.48
best_video_duration: "15-30秒"
bbq:
name: "烧烤"
core_selling_points:
- "现烤现吃"
- "烟火气"
- "夜宵氛围"
video_focus:
- "烤制过程"
- "滋滋声"
- "撸串场景"
groupon_strategy: "夜宵时段+酒水搭配"
peak_hours:
- "18:00-02:00"
avg_margin: 0.52
best_video_duration: "15-25秒"
sichuan:
name: "川菜"
core_selling_points:
- "麻辣鲜香"
- "下饭神器"
- "分量足"
video_focus:
- "爆炒过程"
- "色泽展示"
- "下饭场景"
groupon_strategy: "单人工作餐+多人聚餐"
peak_hours:
- "11:30-13:30"
- "17:30-20:30"
avg_margin: 0.45
best_video_duration: "20-35秒"
japanese:
name: "日料"
core_selling_points:
- "新鲜"
- "精致"
- "师傅手艺"
video_focus:
- "刺身展示"
- "师傅手艺"
- "精致摆盘"
groupon_strategy: "套餐制、午市特价"
peak_hours:
- "11:30-13:30"
- "18:00-21:00"
avg_margin: 0.55
best_video_duration: "20-40秒"
tea:
name: "茶饮"
core_selling_points:
- "颜值"
- "解渴"
- "网红打卡"
video_focus:
- "制作过程"
- "颜值展示"
- "打卡场景"
groupon_strategy: "第二杯半价、月卡"
peak_hours:
- "10:00-22:00"
avg_margin: 0.65
best_video_duration: "10-20秒"
dessert:
name: "甜品"
core_selling_points:
- "网红"
- "打卡"
- "颜值"
video_focus:
- "摆盘"
- "环境"
- "打卡照"
groupon_strategy: "下午茶套餐"
peak_hours:
- "14:00-18:00"
avg_margin: 0.60
best_video_duration: "15-25秒"
# 抖音本地生活核心指标基准
benchmarks:
exposure_to_click: 0.08 # 曝光→点击率基准 8%
click_to_order: 0.10 # 点击→下单转化率基准 10%
order_to_verify: 0.80 # 下单→核销率基准 80%
verify_to_repurchase: 0.25 # 核销→复购率基准 25%
# 定价规则
pricing_rules:
引流款:
margin_range: [0.20, 0.35]
discount_range: [0.6, 0.75]
positioning: "吸引新客,牺牲毛利"
主推款:
margin_range: [0.40, 0.50]
discount_range: [0.75, 0.85]
positioning: "平衡毛利与吸引力"
利润款:
margin_range: [0.50, 0.60]
discount_range: [0.80, 0.90]
positioning: "保证利润,提升客单价"
爆款:
margin_range: [0.15, 0.25]
discount_range: [0.5, 0.6]
positioning: "限时引流,制造话题"
# 视频发布最佳时间
best_post_times:
weekday:
- "12:00-13:00" # 午休时段
- "18:00-20:00" # 晚间高峰
- "21:00-22:00" # 睡前刷抖音
weekend:
- "10:00-12:00" # 周末上午
- "14:00-16:00" # 下午休闲
- "19:00-21:00" # 晚间高峰
# 冷启动清单
cold_start_checklist:
- step: 1
task: "POI认领"
priority: "P0"
desc: "认领抖音店铺POI,完善基础信息"
estimated_time: "1天"
- step: 2
task: "基础装修"
priority: "P0"
desc: "上传店铺门头、环境、菜品图片(至少9张)"
estimated_time: "2天"
- step: 3
task: "首条视频"
priority: "P0"
desc: "发布第一条店铺介绍视频(15-30秒)"
estimated_time: "3天"
- step: 4
task: "首单团购"
priority: "P0"
desc: "上线第一个引流团购(低价爆款)"
estimated_time: "1周"
- step: 5
task: "达人合作"
priority: "P1"
desc: "联系同城探店达人,安排探店"
estimated_time: "2周"
- step: 6
task: "DOU+投放"
priority: "P1"
desc: "对优质视频投放DOU+测试(100-300元)"
estimated_time: "持续"
- step: 7
task: "私域搭建"
priority: "P2"
desc: "建立粉丝群,引导核销顾客入群"
estimated_time: "持续"
# 常见问题与解决方案
common_issues:
- problem: "曝光低"
causes:
- "内容质量差"
- "账号权重低"
- "发布时间不对"
solutions:
- "优化视频前3秒,增加视觉冲击"
- "DOU+投放测试,找到优质内容方向"
- "调整发布时间,选择高峰时段"
- problem: "点击率低"
causes:
- "团购吸引力不足"
- "主图不够吸引"
- "标题不够诱人"
solutions:
- "调整价格梯度,增加引流款"
- "优化团购主图,突出性价比"
- "优化标题,加入数字、情绪词"
- problem: "下单转化低"
causes:
- "详情页说服力不够"
- "评价太少"
- "价格对比不清晰"
solutions:
- "增加买家秀、探店视频"
- "引导好评,积累口碑"
- "明确标注原价,突出优惠力度"
- problem: "核销率低"
causes:
- "体验与预期不符"
- "预约困难"
- "服务态度差"
solutions:
- "优化套餐内容,确保体验达标"
- "简化预约流程,增加时段"
- "加强员工培训,提升服务意识"
- problem: "复购率低"
causes:
- "缺乏留存机制"
- "没有会员体系"
- "私域运营弱"
solutions:
- "建立会员积分体系"
- "引导加微信/入群"
- "定期推送优惠活动"
FILE:config/user_config.yaml
# 用户配置模板
# 请根据您的餐厅实际情况修改
restaurant:
name: "我的餐厅"
type: "hotpot" # hotpot/bbq/sichuan/japanese/tea/dessert
city: "深圳"
district: "南山区"
address: "XX路XX号"
avg_ticket: 120 # 平均客单价
signature_dishes:
- "招牌酸菜鱼"
- "鲜毛肚"
- "手工虾滑"
opening_hours:
- "11:30-13:30"
- "17:30-21:00"
douyin:
account_id: "" # 抖音账号ID
poi_id: "" # 店铺POI ID(在抖音商家后台查看)
shop_name: "" # 抖音店铺名称
target:
monthly_revenue: 50000 # 月营收目标(元)
monthly_orders: 500 # 月订单目标
monthly_exposure: 100000 # 月曝光目标
# 团购配置
groupon:
引流款_margin: [0.20, 0.35] # 引流款毛利率范围
profit_margin: [0.45, 0.55] # 利润款毛利率范围
image_margin: [0.30, 0.40] # 形象款毛利率范围
# 内容配置
content:
video_frequency: 7 # 每周发布视频数
dou_plus_budget: 500 # 每月DOU+预算(元)
focus_themes:
- "菜品展示"
- "制作过程"
- "食客反应"
- "环境探店"
FILE:metadata.yaml
# QClaw 专家 Agent 平台元数据
# 用于上架到 QClaw Agent Store
id: douyin-local-food
name: "抖音本地生活餐饮运营专家"
version: "1.0.0"
author: "QClaw Team"
created_at: "2026-04-27"
updated_at: "2026-04-27"
# 分类与标签
category: "business"
tags:
- "抖音"
- "本地生活"
- "餐饮"
- "团购"
- "运营"
- "营销"
# 定价
pricing:
type: "free" # free / paid / freemium
price: 0
currency: "CNY"
# 能力描述
capabilities:
- name: "店铺诊断"
description: "分析店铺现状、识别问题、给出优先级建议"
output: "诊断报告"
- name: "爆款菜品打造"
description: "选品策略、定价逻辑、卖点提炼、话术设计"
output: "爆款方案文档"
- name: "团购方案设计"
description: "套餐组合、价格梯度、引流款/利润款规划"
output: "团购方案表"
- name: "内容运营策略"
description: "短视频选题、脚本模板、发布节奏、DOU+投放策略"
output: "内容日历+脚本库"
- name: "数据分析"
description: "核心指标解读、竞品对标、优化建议"
output: "数据周报"
- name: "客服话术"
description: "差评回复、私聊转化、复购引导"
output: "话术库"
# 适用场景
use_cases:
- "新店冷启动,不知道从哪里开始"
- "老店增长瓶颈,需要诊断问题"
- "想打造爆款菜品,但不知道怎么定价和推广"
- "需要设计团购套餐,平衡引流和利润"
- "内容运营缺乏规划,不知道发什么"
- "数据分析能力弱,看不懂抖音后台数据"
# 支持的餐饮类型
supported_restaurant_types:
- id: "hotpot"
name: "火锅"
- id: "bbq"
name: "烧烤"
- id: "sichuan"
name: "川菜"
- id: "japanese"
name: "日料"
- id: "tea"
name: "茶饮"
- id: "dessert"
name: "甜品"
# 技术要求
requirements:
python: ">=3.8"
dependencies:
- "pyyaml"
- "pandas"
- "openpyxl"
- "jinja2"
- "markdown"
# 入口文件
entry_point: "scripts/douyin_tool.py"
skill_file: "SKILL.md"
# 截图与演示(上架时补充)
screenshots: []
demo_video: ""
# 评分与统计(上架后自动填充)
stats:
downloads: 0
rating: 0.0
reviews: 0
# 状态
status: "active" # active / deprecated / under_review
FILE:scripts/douyin_tool.py
#!/usr/bin/env python3
"""
抖音本地生活餐饮运营工具
支持:店铺诊断、爆款打造、团购设计、内容运营、数据分析、话术生成
"""
import argparse
import json
import yaml
from pathlib import Path
from datetime import datetime, timedelta
from typing import Dict, List, Optional
# 行业知识库
INDUSTRY_KNOWLEDGE = {
"hotpot": {
"name": "火锅",
"core_selling_points": ["食材新鲜", "锅底特色", "蘸料丰富"],
"video_focus": ["涮菜过程", "蘸料调配", "食客反应"],
"groupon_strategy": "多人套餐为主",
"peak_hours": ["11:30-13:30", "17:30-21:00"],
"avg_margin": 0.48
},
"bbq": {
"name": "烧烤",
"core_selling_points": ["现烤现吃", "烟火气", "夜宵氛围"],
"video_focus": ["烤制过程", "滋滋声", "撸串场景"],
"groupon_strategy": "夜宵时段+酒水搭配",
"peak_hours": ["18:00-02:00"],
"avg_margin": 0.52
},
"sichuan": {
"name": "川菜",
"core_selling_points": ["麻辣鲜香", "下饭神器", "分量足"],
"video_focus": ["爆炒过程", "色泽展示", "下饭场景"],
"groupon_strategy": "单人工作餐+多人聚餐",
"peak_hours": ["11:30-13:30", "17:30-20:30"],
"avg_margin": 0.45
},
"japanese": {
"name": "日料",
"core_selling_points": ["新鲜", "精致", "师傅手艺"],
"video_focus": ["刺身展示", "师傅手艺", "精致摆盘"],
"groupon_strategy": "套餐制、午市特价",
"peak_hours": ["11:30-13:30", "18:00-21:00"],
"avg_margin": 0.55
},
"tea": {
"name": "茶饮",
"core_selling_points": ["颜值", "解渴", "网红打卡"],
"video_focus": ["制作过程", "颜值展示", "打卡场景"],
"groupon_strategy": "第二杯半价、月卡",
"peak_hours": ["10:00-22:00"],
"avg_margin": 0.65
},
"dessert": {
"name": "甜品",
"core_selling_points": ["网红", "打卡", "颜值"],
"video_focus": ["摆盘", "环境", "打卡照"],
"groupon_strategy": "下午茶套餐",
"peak_hours": ["14:00-18:00"],
"avg_margin": 0.60
}
}
# 冷启动诊断清单
COLD_START_CHECKLIST = [
{"step": 1, "task": "POI认领", "priority": "P0", "desc": "认领抖音店铺POI,完善基础信息"},
{"step": 2, "task": "基础装修", "priority": "P0", "desc": "上传店铺门头、环境、菜品图片(至少9张)"},
{"step": 3, "task": "首条视频", "priority": "P0", "desc": "发布第一条店铺介绍视频(15-30秒)"},
{"step": 4, "task": "首单团购", "priority": "P0", "desc": "上线第一个引流团购(低价爆款)"},
{"step": 5, "task": "达人合作", "priority": "P1", "desc": "联系同城探店达人,安排探店"},
{"step": 6, "task": "DOU+投放", "priority": "P1", "desc": "对优质视频投放DOU+测试(100-300元)"},
{"step": 7, "task": "私域搭建", "priority": "P2", "desc": "建立粉丝群,引导核销顾客入群"},
]
def diagnose(restaurant_type: str, stage: str, city: str) -> Dict:
"""店铺诊断"""
industry = INDUSTRY_KNOWLEDGE.get(restaurant_type, INDUSTRY_KNOWLEDGE["hotpot"])
result = {
"诊断时间": datetime.now().strftime("%Y-%m-%d %H:%M"),
"餐厅类型": industry["name"],
"所在城市": city,
"发展阶段": stage,
"核心卖点": industry["core_selling_points"],
"视频重点": industry["video_focus"],
"团购策略": industry["groupon_strategy"],
"高峰时段": industry["peak_hours"],
"行业平均毛利率": f"{industry['avg_margin']*100:.0f}%",
"冷启动清单": COLD_START_CHECKLIST,
"预估起号周期": "2-4周(取决于执行力度)",
"建议优先级": [
"1. 完善POI信息(当天完成)",
"2. 拍摄首条视频(3天内)",
"3. 上线首单团购(1周内)",
"4. 安排达人探店(2周内)"
]
}
return result
def design_dish(name: str, price: float, dish_type: str, selling_points: List[str]) -> Dict:
"""爆款菜品打造方案"""
industry = INDUSTRY_KNOWLEDGE.get(dish_type, INDUSTRY_KNOWLEDGE["hotpot"])
# 定价梯度
groupon_price = price * 0.75 # 团购价75折
flash_price = price * 0.5 # 秒杀价5折
# 视频脚本模板
video_scripts = [
{
"角度": "制作过程",
"时长": "15-20秒",
"镜头": ["食材展示特写", "制作过程快剪", "成品展示"],
"BGM": "节奏感强的热门BGM",
"文案": f"招牌{name},{selling_points[0]},每天卖出XX份!"
},
{
"角度": "食客反应",
"时长": "10-15秒",
"镜头": ["食客品尝", "满足表情", "好评口播"],
"BGM": "轻松愉快的BGM",
"文案": f"顾客说:这{name}绝了,{selling_points[1]}!"
},
{
"角度": "环境展示",
"时长": "20-30秒",
"镜头": ["店铺门头", "用餐环境", "菜品上桌"],
"BGM": "舒缓的BGM",
"文案": f"在XX环境吃{name},体验感拉满!"
}
]
result = {
"菜品名称": name,
"原价": f"¥{price}",
"团购价": f"¥{groupon_price:.0f}",
"秒杀价": f"¥{flash_price:.0f}",
"定位": "引流款" if price < 100 else "主推款",
"核心卖点": selling_points,
"视频脚本": video_scripts,
"标题模板": [
f"【招牌推荐】{name},{selling_points[0]}",
f"【必点】来我店必吃{name},{selling_points[1]}",
f"【爆款】{name},一天卖出300份的秘密"
],
"评论区话术": [
"问:好吃吗?答:试试就知道,不好吃老板亲自道歉!",
"问:分量足吗?答:管饱!不够免费加!",
"问:什么时候有位置?答:现在来,不用排队!"
]
}
return result
def design_groupon(restaurant_type: str, avg_ticket: float, target: str) -> List[Dict]:
"""团购方案设计"""
industry = INDUSTRY_KNOWLEDGE.get(restaurant_type, INDUSTRY_KNOWLEDGE["hotpot"])
# 根据客单价设计套餐梯度
packages = [
{
"套餐名": "2人尝鲜餐",
"原价": f"¥{avg_ticket * 1.4:.0f}",
"团购价": f"¥{avg_ticket * 0.73:.0f}",
"毛利率": "35%",
"定位": "引流款",
"适用场景": "新客首单、情侣约会",
"包含": f"招牌菜1份+配菜2份+饮品2杯"
},
{
"套餐名": "4人聚会餐",
"原价": f"¥{avg_ticket * 2.7:.0f}",
"团购价": f"¥{avg_ticket * 1.65:.0f}",
"毛利率": "48%",
"定位": "主推款",
"适用场景": "朋友聚餐、家庭聚会",
"包含": f"招牌菜2份+配菜4份+饮品4杯+甜品1份"
},
{
"套餐名": "6人豪华餐",
"原价": f"¥{avg_ticket * 4.1:.0f}",
"团购价": f"¥{avg_ticket * 2.7:.0f}",
"毛利率": "52%",
"定位": "利润款",
"适用场景": "家庭聚餐、商务宴请",
"包含": f"招牌菜3份+海鲜1份+配菜6份+饮品6杯"
},
{
"套餐名": "秒杀单品券",
"原价": f"¥{avg_ticket * 0.57:.0f}",
"团购价": f"¥{avg_ticket * 0.32:.0f}",
"毛利率": "20%",
"定位": "爆款",
"适用场景": "限时引流、新客尝鲜",
"包含": f"招牌菜1份(限时段)"
}
]
return packages
def design_content(restaurant: str, focus_dishes: List[str], days: int = 7) -> Dict:
"""内容运营策略"""
# 7天发布日历
calendar = []
video_types = ["菜品展示", "制作过程", "食客反应", "环境探店", "优惠活动", "热点蹭流", "互动问答"]
for i in range(days):
date = (datetime.now() + timedelta(days=i)).strftime("%Y-%m-%d")
video_type = video_types[i % len(video_types)]
dish = focus_dishes[i % len(focus_dishes)]
calendar.append({
"日期": date,
"视频类型": video_type,
"主题": f"{dish} - {video_type}",
"最佳发布时间": "18:00-20:00" if i % 2 == 0 else "12:00-13:00",
"DOU+预算": "100-200元" if i < 3 else "视数据情况"
})
result = {
"餐厅名称": restaurant,
"重点菜品": focus_dishes,
"发布日历": calendar,
"视频脚本模板": {
"开头3秒": "必须有视觉冲击(滋滋声、热气、色泽)",
"中间": "展示核心卖点(新鲜、制作、食客反应)",
"结尾": "引导行动(团购链接、到店地址)"
},
"热点蹭流建议": [
"关注抖音热榜,结合餐厅特色蹭热点",
"蹭节日热点(情人节、母亲节等)",
"蹭同城热点(本地新闻、网红打卡)"
],
"评论区互动话术": [
"问价格:团购更划算,链接在左下角~",
"问地址:就在XX路XX号,欢迎来打卡!",
"好评回复:感谢支持!下次来送您XX~",
"差评回复:抱歉让您失望了,私信我给您补偿~"
]
}
return result
def analyze_data(data_file: str) -> Dict:
"""数据分析(简化版,实际应读取真实数据)"""
result = {
"分析时间": datetime.now().strftime("%Y-%m-%d %H:%M"),
"核心指标漏斗": {
"曝光量": "10,000",
"点击率": "8.5%",
"下单转化率": "12.3%",
"核销率": "85%",
"复购率": "28%"
},
"同城排名": "前30%",
"爆款视频": [
{"标题": "招牌酸菜鱼制作过程", "播放": "5.2万", "转化": "156单"},
{"标题": "食客好评合集", "播放": "3.8万", "转化": "98单"}
],
"优化建议": [
"曝光量偏低,建议增加DOU+投放",
"点击率高于行业平均,团购吸引力强",
"核销率高,服务质量好",
"复购率有提升空间,建议建立会员体系"
]
}
return result
def generate_script(scenario: str, context: str) -> Dict:
"""客服话术生成"""
scripts = {
"差评回复": {
"口味不满意": f"抱歉让您失望了!我们会改进,私信我给您发补偿券~",
"分量不足": f"收到反馈!下次来直接找我,给您加量~",
"服务态度": f"抱歉给您不好的体验,我们一定加强培训,私信我补偿您~"
},
"私聊转化": {
"问价格": f"团购更划算哦~现在有{context}活动,要不要了解一下?",
"问位置": f"就在{context},停车方便,随时欢迎~",
"问营业时间": f"我们11:00-22:00营业,{context}时段人少,推荐来~"
},
"复购引导": {
"核销后": "感谢光临!加个微信,下次来给您优惠~",
"好评后": "感谢支持!下次带朋友来,给您送招牌菜~",
"节日关怀": "XX节快乐!给您准备了专属优惠,这周来享受~"
}
}
return scripts.get(scenario, {"默认": "感谢您的反馈,我们会继续努力~"})
def main():
parser = argparse.ArgumentParser(description="抖音本地生活餐饮运营工具")
subparsers = parser.add_subparsers(dest="command", help="可用命令")
# diagnose 命令
diag_parser = subparsers.add_parser("diagnose", help="店铺诊断")
diag_parser.add_argument("--type", default="hotpot", help="餐厅类型")
diag_parser.add_argument("--stage", default="new", help="发展阶段")
diag_parser.add_argument("--city", default="深圳", help="所在城市")
diag_parser.add_argument("--output", default="diagnose_report.json", help="输出文件")
# dish 命令
dish_parser = subparsers.add_parser("dish", help="爆款菜品打造")
dish_parser.add_argument("--name", required=True, help="菜品名称")
dish_parser.add_argument("--price", type=float, required=True, help="原价")
dish_parser.add_argument("--type", default="hotpot", help="菜品类型")
dish_parser.add_argument("--selling-points", default="", help="卖点(逗号分隔)")
dish_parser.add_argument("--output", default="dish_plan.json", help="输出文件")
# groupon 命令
group_parser = subparsers.add_parser("groupon", help="团购方案设计")
group_parser.add_argument("--restaurant-type", default="hotpot", help="餐厅类型")
group_parser.add_argument("--avg-ticket", type=float, default=120, help="客单价")
group_parser.add_argument("--target", default="引流+利润", help="目标")
group_parser.add_argument("--output", default="groupon_plan.json", help="输出文件")
# content 命令
content_parser = subparsers.add_parser("content", help="内容运营策略")
content_parser.add_argument("--restaurant", default="我的餐厅", help="餐厅名称")
content_parser.add_argument("--focus", default="招牌菜", help="重点菜品(逗号分隔)")
content_parser.add_argument("--days", type=int, default=7, help="规划天数")
content_parser.add_argument("--output", default="content_calendar.json", help="输出文件")
# analyze 命令
analyze_parser = subparsers.add_parser("analyze", help="数据分析")
analyze_parser.add_argument("--data-file", default="", help="数据文件")
analyze_parser.add_argument("--output", default="analysis_report.json", help="输出文件")
# script 命令
script_parser = subparsers.add_parser("script", help="客服话术生成")
script_parser.add_argument("--scenario", default="差评回复", help="场景")
script_parser.add_argument("--context", default="", help="上下文")
script_parser.add_argument("--output", default="scripts.json", help="输出文件")
args = parser.parse_args()
if not args.command:
parser.print_help()
return
# 执行对应命令
if args.command == "diagnose":
result = diagnose(args.type, args.stage, args.city)
elif args.command == "dish":
points = [p.strip() for p in args.selling_points.split(",")] if args.selling_points else ["好吃", "新鲜", "分量足"]
result = design_dish(args.name, args.price, args.type, points)
elif args.command == "groupon":
result = design_groupon(args.restaurant_type, args.avg_ticket, args.target)
elif args.command == "content":
dishes = [d.strip() for d in args.focus.split(",")]
result = design_content(args.restaurant, dishes, args.days)
elif args.command == "analyze":
result = analyze_data(args.data_file)
elif args.command == "script":
result = generate_script(args.scenario, args.context)
else:
parser.print_help()
return
# 输出结果
print(json.dumps(result, ensure_ascii=False, indent=2))
# 保存到文件
with open(args.output, "w", encoding="utf-8") as f:
json.dump(result, f, ensure_ascii=False, indent=2)
print(f"\n✅ 结果已保存到: {args.output}")
if __name__ == "__main__":
main()