← 返回 Skills 市场
C+服务需求匹配
作者
perrykono-debug
· GitHub ↗
· v1.0.0
· MIT-0
16
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install service-matching
功能描述
C+服务需求匹配技能。基于真实Excel台账(美兰中心C+服务.xlsx)挖掘企业需求,匹配C+服务资源。触发场景:(1) 管家上传走访记录,(2) 定时任务每日10:00分析昨日走访记录,(3) 手动触发服务匹配(@企服助手 服务匹配)。
使用说明 (SKILL.md)
C+服务需求匹配技能 (Service Matching Skill)
功能概述
本技能用于从走访记录中自动挖掘企业需求,基于中集金地美兰中心真实Excel台账,根据企业类型和画像匹配适合的C+服务,生成推荐方案供管家确认。
数据源配置
数据文件: /Users/mac/美兰中心C+服务.xlsx
工作表映射:
| 功能模块 | 工作表名 | 用途 |
|---|---|---|
| C+服务记录 | C+服务记录 | 主数据源(走访记录、需求描述) |
| 客户画像 | customer-management技能 | 企业画像(企业类型、等级、经营范围) |
数据接口(依赖 customer-management 技能)
核心依赖
本技能依赖 customer-management 技能获取企业画像数据:
# 调用示例
customer_profile = call_skill("customer-management", {
"action": "query_customer",
"tenant_name": "上海铭尤力食品有限公司"
})
# 获取企业画像数据
enterprise_type = customer_profile.get("企业类型", "")
level = customer_profile.get("等级", "")
business_scope = customer_profile.get("经营范围", "")
tax_qualification = customer_profile.get("纳税人资质", "")
Excel工作表字段映射
C+服务记录表(10字段)
| Excel列序号 | 字段名 | 用途 |
|---|---|---|
| 1 | 租户名 | 关联客户管理表 |
| 2 | 走访时间 | 时间 |
| 3 | 走访管家 | 人员 |
| 4 | 客户情绪 | 满意/一般/不满意 |
| 5 | 成交情况 | 是/否 |
| 6 | 服务类别 | 室内保洁/商务接待等 |
| 7 | 成交金额 | 金额 |
| 8 | 详情记录 | 企业需求描述 |
| 9 | 月份 | 月份 |
| 10 | 备注 | 备注 |
核心逻辑
1. 需求挖掘(NLP提取)
def extract_needs_from_visit(detail_record):
"""
从走访记录中提取企业需求
Args:
detail_record: 走访详情文本
Returns:
list: 需求列表
"""
# NLP关键词匹配
needs_keywords = {
"保洁需求": ["清洁", "卫生", "保洁", "打扫"],
"商务接待": ["接待", "会议室", "访客", "客人"],
"室内维修": ["维修", "修理", "更换", "安装"],
"环境优化": ["空气", "绿植", "噪音", "光线"],
"能源管理": ["电费", "水费", "节能", "空调"],
"证照服务": ["许可证", "执照", "审批", "证照"],
"企业服务": ["注册", "变更", "年检", "税务"]
}
needs = []
for need_type, keywords in needs_keywords.items():
for keyword in keywords:
if keyword in detail_record:
needs.append(need_type)
break
return needs
2. 企业画像获取(调用customer-management)
def get_enterprise_profile(tenant_name):
"""
调用 customer-management 技能获取企业画像
Args:
tenant_name: 租户名
Returns:
dict: 企业画像
"""
customer_profile = call_skill("customer-management", {
"action": "query_customer",
"tenant_name": tenant_name
})
if not customer_profile:
return None
return {
"租户名": customer_profile.get("租户名", ""),
"企业类型": customer_profile.get("企业类型", ""),
"等级": customer_profile.get("等级", ""),
"经营范围": customer_profile.get("经营范围", ""),
"纳税人资质": customer_profile.get("纳税人资质", ""),
"天眼评分": customer_profile.get("天眼评分", 0)
}
3. 服务推荐算法
def recommend_services(enterprise_profile, needs):
"""
根据企业画像和需求推荐服务
Args:
enterprise_profile: 企业画像
needs: 需求列表
Returns:
list: 推荐服务列表
"""
# 服务匹配规则库
service_rules = {
"餐饮配套": {
"优先服务": ["卫生许可证提醒", "固废清运", "室内保洁", "能源管理"],
"优惠政策": "首月9折"
},
"制造业": {
"优先服务": ["固废清运", "环境检测", "安全生产培训"],
"优惠政策": "包年8折"
},
"商务配套": {
"优先服务": ["商务接待", "会议室预定", "室内保洁", "绿植租赁"],
"优惠政策": "首次免费体验"
},
"科技企业": {
"优先服务": ["企业注册变更", "知识产权服务", "政策申报"],
"优惠政策": "代办服务9折"
}
}
enterprise_type = enterprise_profile.get("企业类型", "商务配套")
level = enterprise_profile.get("等级", "B")
# 获取匹配规则
rules = service_rules.get(enterprise_type, service_rules["商务配套"])
recommendations = []
# 1. 基于企业类型的推荐
for service in rules["优先服务"]:
recommendations.append({
"服务名称": service,
"推荐理由": f"适合{enterprise_type}企业",
"优先级": "高" if level == "A" else "中",
"优惠政策": rules["优惠政策"],
"跟进状态": "待确认",
"跟进时间": None,
"跟进结果": None
})
# 2. 基于需求的推荐
for need in needs:
if need not in [r["服务名称"] for r in recommendations]:
recommendations.append({
"服务名称": need,
"推荐理由": "走访需求匹配",
"优先级": "高",
"优惠政策": rules["优惠政策"],
"跟进状态": "待确认",
"跟进时间": None,
"跟进结果": None
})
return recommendations
4. 服务跟踪闭环功能
def track_service_followup(tenant_name, service_name, followup_status, notes=""):
"""
跟踪服务跟进状态
Args:
tenant_name: 租户名
service_name: 服务名称
followup_status: 跟进状态(待确认/已推荐/已拒绝/已成交)
notes: 跟进说明
Returns:
bool: 是否更新成功
"""
wb = openpyxl.load_workbook('/Users/mac/美兰中心C+服务.xlsx')
ws_service = wb['C+服务记录']
today = datetime.now().date()
# 1. 查找匹配的服务记录
for row in ws_service.iter_rows(min_row=2):
if row[0].value == tenant_name and service_name in str(row[5].value): # 服务类别匹配
# 2. 更新跟进状态(需要扩展Excel列)
# 假设新增列:跟进状态、跟进时间、跟进结果
row[10].value = followup_status # 跟进状态
row[11].value = today.strftime("%Y年%m月%d日") # 跟进时间
row[12].value = notes # 跟进结果/说明
wb.save('/Users/mac/美兰中心C+服务.xlsx')
# 3. 发送跟进通知
send_followup_notification({
"租户名": tenant_name,
"服务名称": service_name,
"跟进状态": followup_status,
"跟进时间": today.strftime("%Y年%m月%d日"),
"说明": notes
})
return True
return False
5. 跟进提醒机制
def check_followup_reminders():
"""
检查需要跟进的服务推荐
Returns:
dict: 需要跟进的服务清单
"""
wb = openpyxl.load_workbook('/Users/mac/美兰中心C+服务.xlsx')
ws_service = wb['C+服务记录']
today = datetime.now().date()
reminders = {
"今日需跟进": [],
"逾期未完成": [],
"本周计划跟进": []
}
for row in ws_service.iter_rows(min_row=2, values_only=True):
tenant_name = row[0]
service_type = row[5] # 服务类别
followup_status = row[10] if len(row) > 10 else None # 跟进状态
followup_time = row[11] if len(row) > 11 else None # 跟进时间
if followup_status == "待确认":
# 判断是否需要提醒
if followup_time:
followup_date = parse_excel_date(followup_time)
days_pending = (today - followup_date).days
if days_pending == 0:
reminders["今日需跟进"].append({
"租户名": tenant_name,
"服务名称": service_type,
"待跟进天数": days_pending
})
elif days_pending > 3: # 超过3天未跟进
reminders["逾期未完成"].append({
"租户名": tenant_name,
"服务名称": service_type,
"逾期天数": days_pending
})
else:
# 没有跟进时间,加入本周计划
reminders["本周计划跟进"].append({
"租户名": tenant_name,
"服务名称": service_type
})
return reminders
6. 服务效果评估
def evaluate_service_effectiveness(tenant_name, service_name):
"""
评估服务效果
Args:
tenant_name: 租户名
service_name: 服务名称
Returns:
dict: 服务效果评估结果
"""
wb = openpyxl.load_workbook('/Users/mac/美兰中心C+服务.xlsx')
ws_service = wb['C+服务记录']
# 获取服务记录
service_record = None
for row in ws_service.iter_rows(min_row=2, values_only=True):
if row[0] == tenant_name and service_name in str(row[5]):
service_record = {
"走访时间": row[1],
"客户情绪": row[3],
"成交情况": row[4],
"服务类别": row[5],
"成交金额": row[6]
}
break
if not service_record:
return {'效果': '无记录', '评分': 0}
# 计算效果评分
score = 0
# 1. 成交情况(权重50%)
if service_record["成交情况"] == "是":
score += 50
# 成交金额加分
amount = float(service_record["成交金额"] or 0)
if amount > 5000:
score += 20
# 2. 客户情绪(权重30%)
if service_record["客户情绪"] == "满意":
score += 30
elif service_record["客户情绪"] == "一般":
score += 15
# 3. 跟进及时性(权重20%)
# 这里需要跟进时间数据,暂时简化处理
score += 20
# 确定效果等级
effect_level = "差"
if score >= 80:
effect_level = "优"
elif score >= 60:
effect_level = "良"
elif score >= 40:
effect_level = "中"
return {
"效果等级": effect_level,
"评分": min(score, 100),
"成交情况": service_record["成交情况"],
"客户情绪": service_record["客户情绪"],
"成交金额": service_record["成交金额"]
}
执行流程
Step 1 → 读取Excel C+服务记录表
工作表:C+服务记录
筛选:昨日走访记录 或 指定时间范围
Step 2 → NLP需求提取
从详情记录中提取关键词,识别需求类型
Step 3 → 调用 customer-management 技能
获取企业画像(企业类型、等级、经营范围)
Step 4 → 服务匹配
根据企业类型 + 需求 → 匹配服务规则库
Step 5 → 生成推荐方案
包含:服务名称、推荐理由、优先级、优惠政策
Step 6 → 推送企微
发送给管家确认
推送模板
━━━━━━━━━━━━━━━
【C+服务推荐】
🏢 企业:{tenant_name}
📍 单元:{unit_no}
━━━ 企业画像 ━━━
类型:{enterprise_type}
等级:{level}
经营范围:{business_scope}
━━━ 走访需求 ━━━
{needs}
━━━ 推荐服务 ━━━
{recommendations}
💡 建议:{suggestion}
⚡ 操作链接:[腾讯文档-C+服务]
━━━━━━━━━━━━━━━
定时任务配置
{
"name": "C+服务需求分析",
"schedule": {
"kind": "cron",
"expr": "0 10 * * *",
"tz": "Asia/Shanghai"
},
"payload": {
"kind": "agentTurn",
"message": "分析昨日C+服务走访记录,提取企业需求,匹配服务资源,生成推荐方案"
},
"sessionTarget": "isolated"
}
手动触发方式
- 企微 @提及:
@企服助手 服务匹配 - OpenClaw指令:
分析服务需求
配置参数
{
"service_matching": {
"excel_path": "/Users/mac/美兰中心C+服务.xlsx",
"auto_recommend": true,
"wecom_webhook": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx"
}
}
使用示例
用户输入: @企服助手 服务匹配 上海铭尤力
输出:
━━━━━━━━━━━━━━━
【C+服务推荐】上海铭尤力食品有限公司
━━━ 企业画像 ━━━
类型:食品制造业
等级:B级
经营范围:食品生产销售
━━━ 推荐服务 ━━━
1. 卫生许可证提醒(高优先级)
理由:适合食品制造业
优惠:首月9折
2. 固废清运(高优先级)
理由:适合食品制造业
优惠:首月9折
3. 室内保洁(中优先级)
理由:适合食品制造业
优惠:首月9折
⚡ 操作链接:[腾讯文档-C+服务]
━━━━━━━━━━━━━━━
当前状态: 技能已调整,依赖customer-management技能获取企业画像。
核心改进: 从独立的知识库查询 → 改为调用 customer-management 技能 + Excel C+服务记录表。
安全使用建议
Review before installing. Use this only with permission to access the specified Excel ledger and customer-management data. Confirm where the WeCom webhook posts, who can read that channel, and whether tenant/business details should be redacted. Treat ledger updates as a separate operator-approved action, with backups or audit logging, rather than letting routine analysis silently modify production records.
能力评估
Purpose & Capability
Reading the C+ service Excel ledger, querying customer profiles, extracting needs, and recommending services all fit the stated service-matching purpose.
Instruction Scope
The artifact includes a follow-up function that writes status, time, and notes back to the real Excel ledger and sends a notification; this is purpose-related but not clearly separated from read-only analysis or gated by explicit confirmation.
Install Mechanism
No package dependencies or substantive executable installer are present; the included script is a placeholder and static scan/VirusTotal are clean.
Credentials
The skill uses a fixed local Excel path, tenant profile data from another skill, and a WeCom webhook, which are proportionate to the workflow but involve sensitive business and tenant information.
Persistence & Privilege
A daily scheduled task and auto-recommend setting are disclosed, but recurring analysis plus outbound notifications and possible ledger mutation need clear operator control and audit expectations.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install service-matching - 安装完成后,直接呼叫该 Skill 的名称或使用
/service-matching触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
初始发布:走访记录挖掘、企业画像匹配、服务推荐
元数据
常见问题
C+服务需求匹配 是什么?
C+服务需求匹配技能。基于真实Excel台账(美兰中心C+服务.xlsx)挖掘企业需求,匹配C+服务资源。触发场景:(1) 管家上传走访记录,(2) 定时任务每日10:00分析昨日走访记录,(3) 手动触发服务匹配(@企服助手 服务匹配)。 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 16 次。
如何安装 C+服务需求匹配?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install service-matching」即可一键安装,无需额外配置。
C+服务需求匹配 是免费的吗?
是的,C+服务需求匹配 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
C+服务需求匹配 支持哪些平台?
C+服务需求匹配 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 C+服务需求匹配?
由 perrykono-debug(@perrykono-debug)开发并维护,当前版本 v1.0.0。
推荐 Skills