尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

knowledge-work-plugins 之 crm-maintenance:用 Cowork Skill 实现 HubSpot CRM 免人工维护的自动化实践指南

knowledge-work-plugins 之 crm-maintenance:用 Cowork Skill 实现 HubSpot CRM 免人工维护的自动化实践指南 knowledge-work-plugins 之 crm-maintenance用 Cowork Skill 实现 HubSpot CRM 免人工维护的自动化实践指南【免费下载链接】knowledge-work-pluginsOpen source repository of plugins primarily intended for knowledge workers to use in Claude Cowork项目地址: https://gitcode.com/GitHub_Trending/kn/knowledge-work-plugins本篇指南系统讲解 knowledge-work-plugins 仓库中小型企业small-business插件内的crm-maintenanceSkill它如何在不打开 HubSpot 的情况下基于邮件与日历上下文自动创建/更新联系人、记录通话与邮件活动、审计并标记过时商机deal。读完本文你将掌握该 Skill 的三条工作路径Email / Call / Cleanup、完整的字段与活动类型白名单、每步操作的审批门禁Approval Gate以及如何结合/crm-cleanup命令执行全量 CRM 卫生检查。一、Skill 定位做“数据录入终结者”而非“全权接管 CRM”crm-maintenance是 small-business 插件 15 个基础技能Skills之一其核心设计理念在 SKILL.md 的元信息中写得很直白Keeps HubSpot current without the owner opening it: creates and updates contacts and deals from email and calendar context, logs notes and calls, and flags stale records. The stop doing data entry skill.也就是说它的目标是让小型企业主无需打开 HubSpot 界面就能让 CRM 保持最新从邮件线程和日历事件中提取上下文解析正确的联系人与商机写入活动记录并标记过时数据。使用场景由 README 归纳为四类触发语update the CRM、log a call、clean up HubSpot、add context to a deal。边界与适用前提该 Skill 是只读优先 最小写入的代理流程仅在用户明确要求时写活动清理路径cleanup下只提出修改建议未经批准绝不写入。它不负责删除任何记录、不自动改商机阶段、不自动创建商机——这些红线在“审批门禁”一节会详细展开。它依赖 HubSpot 连接器作为数据源可选接 Gmail / Google Calendar 提供邮件与日历上下文见 README 中的工具连接要求。如果你需要的是“扫描全库的过时商机、重复联系人、缺失字段”这类批量卫生巡检应使用更高层的/crm-cleanup命令见本文第六节它内部正是调用crm-maintenance的清理工作流。二、Quick Start从用户一句话到 CRM 更新完成SKILL.md 给出了最精简的运行模型从被引用的邮件或日历事件中拉取上下文 → 解析出正确的 HubSpot 联系人与商机 → 记录活动 → 汇报变更。以“记录通话”为例它的理想执行流如下User: log this call to the Acme deal → Read the most recent completed calendar event → Confirm attendees map to the Acme deals contacts → Write a call activity on the Acme deal → Report: Logged call to Acme Q2 Expansion. [deal link]注意这个链路里的三个关键判断点取哪个日历事件——用户没有显式指定时回退到最近 24 小时内已结束的会议且必须与用户确认后再继续参会人是否属于该商机——确认联系人映射关系避免把无关的人关联到商机上写入什么、写到哪里——调用活动Call engagement必须同时关联商机和至少一个联系人。三、核心工作流三条路径的意图识别、上下文收集与执行SKILL.md 将整个流程划分为 6 个步骤其中第一步“意图识别”决定了后续走哪条路径。3.1 第一步识别意图三条路径路径触发语示例数据来源Email path“update my CRM”“add this to the deal”或任何对邮件线程的引用邮件线程Call path“log this call”“log the meeting”或任何对日历事件的引用日历事件Cleanup path“clean up HubSpot”“is this deal up to date”或对某个具体商机的审计请求商机记录 近期邮件/日历若意图不明确例如只说“update HubSpot”却没有附带邮件/会议/商机引用必须先向用户询问走哪条路径不得擅自猜测。3.2 第二步收集上下文各路径差异显著Email 路径读取整个线程主题、参与者、最近 1–3 条消息识别主要的外部联系人。Call 路径读取日历事件标题、参会人、时间、描述未指定事件时取最近 24 小时内最近一次已结束的会议并在继续前与用户确认。Cleanup 路径拉取商机全貌阶段、金额、预计结单日期、下一步动作、关联联系人、近 60 天活动再拉取该商机联系人近 14 天的邮件线程与日历事件作为审计证据。3.3 第三步解析联系人与商机核心解析逻辑对 Email / Call 路径解析顺序固定为按邮箱搜索联系人大小写不敏感精确匹配详见第五节 gotcha 1若联系人不存在可从邮件签名或日历邀请数据中创建——但写入前必须在对话中宣布创建动作商机解析顺序四层递进(a) 用户显式指定的商机直接命中(b) 该联系人唯一未关闭的商机(c) 在联系人所有未关闭商机中用邮件主题或会议标题做模糊匹配——写入前需确认(d) 仍无匹配则询问用户任何情况下都不得自动创建商机。在执行任何写入之前先阅读 字段与活动类型参考 确认字段名、活动类型与关联规则如果去重或商机解析存在歧义先查阅 gotchas 清单。3.4 第四步执行动作各路径的写入差异Email 路径写入 Email engagement 活动。hs_email_subject取线程主题hs_email_text写简洁摘要而非完整线程hs_timestamp取最新一条消息的时间。完整示例见 log-email-happy-path.md。Call 路径写入 Call engagement 活动。hs_call_title取事件标题hs_call_body写入可得笔记hs_call_duration取自日历hs_timestamp取事件开始时间。含“联系人缺失需创建”场景的完整示例见 log-call-happy-path.md。Cleanup 路径按 清理检查清单 逐字段走查组装“拟变更清单”以当前值 → 建议值的并排形式展示只写入用户批准的项目。完整示例见 cleanup-deal.md。3.5 第五步与第六步审批门禁与结果汇报审批门禁联系人创建与活动记录写入前需宣布、写入后需汇报结果清理类修改则必须等用户逐项批准后才动手。结果汇报告诉用户“写入了什么、还挂着哪些待办”尽可能附带受影响商机的 HubSpot 链接保持简短。四、字段、活动类型与关联规则唯一的读写白名单hubspot-fields.md 是理解该 Skill 安全边界的关键只有清单中列出的字段在此 Skill 的读写范围内HubSpot 中其余一切字段一律不动。4.1 联系人Contacts——写入字段字段用途email查找与去重的主标识创建时必填firstname来自邮件签名或日历邀请未知则留空lastname同上company来自邮件签名域名或日历组织信息如可用规则不写任何其他联系人属性。Owner、lifecycle stage、lead source 属于用户托管字段绝不覆盖。4.2 联系人Contacts——读取字段用于查找email搜索键大小写不敏感精确匹配firstname·lastname·company用于歧义解析时向用户展示hs_object_id用于与商机、活动的关联。4.3 商机Deals——读取字段清理与解析路径通用字段用法dealname展示给用户用于与邮件/会议主题做模糊匹配dealstage清理时只读——发现不符只能标记绝不更改amount清理时读取若近期邮件/会议暗示金额变化则标记closedate清理时读取过时则标记hs_next_step清理时可读取并可建议更新hubspot_owner_id展示给用户从不更改hs_lastactivitydate用于检测过时商机关联联系人判断近期邮件/会议参与者是否已挂在该商机下4.4 商机Deals——写入字段仅清理路径 用户批准字段规则hs_next_step可建议更新仅在用户明确批准后写入closedate同上amount同上联系人关联可建议补充缺失的商机参与者仅在批准后写入红线清理过程中绝不写dealstage、pipeline、hubspot_owner_id或任何自定义属性——这些归 Owner 托管。4.5 活动Activities——写入类型活动类型使用方设置的字段Email engagementEMAILEmail 路径hs_email_subject线程主题、hs_email_text摘要非完整线程、hs_timestamp最新消息时间、关联联系人 商机Call engagementCALLCall 路径hs_call_title事件标题、hs_call_body摘要、hs_call_duration取自日历、hs_timestamp事件开始时间、关联联系人 商机NoteNOTECleanup 路径hs_note_body当标记某事项留待后续复查、且不适合做字段更新时使用规则使用 HubSpot 标准 engagement 词汇不得发明自定义活动类型。4.6 关联规则每条活动必须同时关联商机和至少一个联系人若在记录活动过程中即时创建了联系人应在同一次操作中将其关联到商机使活动同时出现在联系人与商机的时间线上除非该联系人的确是该邮件线程或会议的真实参与者否则不得在活动记录流程中把联系人关联到商机。五、反模式清单五个最容易污染 CRM 的“坑”gotchas.md 采用“为什么重要 → ✗ Bad → ✓ Good”的对比模式总结了该 Skill 最容易产出坏数据bad CRM data的五类边缘场景。这是判断 Skill 行为是否合格的行为准则也直接约束了任何基于该 Skill 的二次实现。5.1 大小写差异导致重复联系人HubSpot 按精确邮箱匹配去重Sarah.Linacme.com与sarah.linacme.com被视为两个不同联系人。若按原大小写搜索“无匹配”就创建新联系人会在 Owner 已有记录时静默产生重复摧毁信任。✗ 错误示范按Sarah.Linacme.com搜索无匹配直接新建联系人 Sarah Lin。✓ 正确示范查找前一律将邮箱归一化为小写搜索sarah.linacme.com并先宣布再写入让 Owner 有机会发现漏网情况。5.2 把完整邮件线程塞进活动正文HubSpot 活动是供快速扫读的信号面不是转录存档。12 条消息的完整线程粘贴进去毫无可用性三句话的“达成了什么”才可执行。✓ 正确摘要示例“Sarah confirmed scope for Q2 expansion — 50 seats, $18K ACV, start date June 1. Shell send the signed SOW by Friday. No open questions.”命名了决策、数字和下一步。5.3 商机无法解析时自动创建商机重复商机在 HubSpot 中极难解开——会分裂活动历史、干扰报表Owner 往往几周后看预测不对才发现。正确做法是问绝不在 Owner 不知情时新建商机No open deal found for Sarah Lin at Acme. Which deal should I log this to? Options: (1) Acme Q2 Expansion (closed-won Feb), (2) Acme Renewal 2027 (open). Or do you want to skip logging for now?5.4 仅凭邮件措辞就推进商机阶段“Were moving forward”不代表“进入 Closed Won”——客户可能指推进评估或采购流程Owner 拥有 Skill 看不到的上下文。自动推进阶段会破坏管道pipeline。✓ 正确做法摆出证据、暂停写入。例如“Flagging: the Apr 18 email from Sarah (were moving forward with the Anthropic evaluation) may indicate stage movement. Current stage is Proposal Sent. Do you want to advance it? I wont change stage without your explicit go-ahead.”5.5 清理时覆盖 Owner 设置的下一步动作Owner 设置的hs_next_step可能反映电话、Slack 线程、私人笔记等 Skill 不可见的上下文仅因一封邮件内容不同就覆盖等于抹掉真实工作。正确做法展示当前值、显式提出建议、等待批准例如hs_next_stepcurrently reads wait for legal review (set by you 3 days ago). The Apr 19 email from Sarah suggests a pricing review is also needed. Propose appending or replacing? Current → Proposed: wait for legal review → wait for legal review; then schedule pricing review. Approve?六、升级为批量巡检/crm-cleanup命令当用户说“clean up the CRM”“HubSpot is a mess”“stale deals”时small-business/README.md 会路由到/crm-cleanup命令。该命令定义在 crm-cleanup/SKILL.md本质是crm-maintenance清理工作流的批量执行器其元信息允许Read, WebFetch, Bash三类工具并明确指出“用户已输入 /crm-cleanup跳过意图识别步骤立即执行”。/crm-cleanup支持可选--scope参数默认alldeals仅做商机审计、contacts仅做联系人去重、all两者都做。四步执行流程扫描过时商机拉取所有未关闭商机标记近 14 天无任何活动邮件/通话/会议/笔记的商机对每个过时商机展示名称、阶段、最后活动日期、关联联系人与金额并建议动作更新下一步、改阶段、加笔记或关 lost。改动前先展示完整清单。扫描重复联系人查找疑似重复相同邮箱、相似姓名、同公司 相似姓名每组并排展示姓名、邮箱、公司、商机与最后活动建议保留哪个、合并哪些字段。合并前展示全部重复组。扫描缺失必填字段检查所有未关闭商机的 close date、amount、deal stage、关联联系人、next-step/notes检查与未关闭商机关联的联系人的 email、company、phone。应用已批准的修改逐条走查前三步发现只应用 Owner 明确批准的项目每项变更随附 HubSpot 链接即时汇报。连接器失败处理HubSpot 不可达时立即停止该命令以 HubSpot 为唯一数据源并提示“HubSpot isnt connected. Connect it in Cowork settings, then rerun /crm-cleanup.”。该命令的审批门禁与 Skill 一致绝不删除记录、绝不未经批准改阶段或关闭商机、绝不自动合并重复联系人逐对并排展示、逐对等批准、所有变更以“当前值 → 建议值”形式逐项等待批准。收尾输出汇总X deals updated, Y contacts merged, Z fields filled并附受影响记录链接。七、走查三个工作示例从 happy path 到完整清理7.1 Email 路径 happy pathlog-email-happy-path.md场景用户在查看主题为 “Acme Q2 pricing follow-up” 的邮件线程含 3 条消息联系人为已有的sarah.linacme.com且只关联一个未关闭商机 “Acme Q2 Expansion”Proposal Sent$18K5 月 15 日结单。用户说“Add this thread to the deal.”关键行为意图识别为 Email 路径 → 读取线程最新消息确认 50 seats $360/seat周五发已签 SOW→ 联系人存在、商机唯一解析无歧义 → 写入 Email 活动hs_email_subject线程主题hs_email_text“Sarah confirmed 50 seats at $360/seat ($18K). Signed SOW coming Friday.”hs_timestamp昨日 16:12→ 联系人已存在无需创建宣布 → 汇报含商机链接。该示例说明“happy path”成立的条件商机关联唯一无歧义、联系人已存在、线程主题可直接用作活动标题、摘要聚焦决策与数字而非全文转录。7.2 Call 路径 缺失联系人log-call-happy-path.md场景用户刚结束一场 30 分钟 Google Meet “Acme — technical deep dive”10:00 开始参会人有用户、sarah.linacme.com与ben.riveraacme.comSarah 已在 “Acme Q2 Expansion” 商机上Ben Rivera不在 HubSpot。用户只说“Log this call.”关键行为无指定事件 → 回退到最近 24 小时内最近一次已完成会议并先确认“Logging the Acme — technical deep dive call from 10:00am this morning — correct?”→ 查找ben.riveraacme.com不存在 →先宣布创建“Ben Rivera (ben.riveraacme.com) isnt in HubSpot. Creating the contact and associating to the Acme Q2 Expansion deal.”→ 创建联系人email、firstname: Ben、lastname: Rivera、company 由邮箱域名推断为 Acme并关联商机 → 写入 Call 活动标题、body 为占位符“Meeting held; notes to be added.”并提示用户补充、时长 30 分钟、时间戳 10:00、关联 Sarah Ben 两个联系人→ 汇报中含“创建了新联系人 Ben Rivera”“body 是占位符如需可补充笔记”等关键信息。该示例演示了未指定事件的回退逻辑、对推断上下文的确认、从邮箱域名推断公司、无会议笔记时用占位符 body 并通知用户、同一活动关联“已存在 新建”多个联系人。7.3 Cleanup 路径完整商机审计 cleanup-deal.md场景商机 “Acme Q2 Expansion”阶段 Proposal Sent、$18K、5 月 15 日结单、next step “send pricing”、hs_lastactivitydate为 22 天前关联 Sarah 与 Ben近 14 天邮件含 4 月 18 日线程Sarah 确认价格并说“well sign once our legal review wraps, should be mid-June”4 月 20 日 “Acme — legal review walkthrough” 会议出现新参会人maria.chenacme.com不在 HubSpot、不在商机上。用户说“Clean up the Acme Q2 Expansion deal.”Skill 在未写任何数据的情况下产出如下审查清单这正是第七节检查清单的落地最后活动日期商机显示 22 天前但发现 4/18 邮件与 4/20 会议均未入账 → 建议补录为活动无需动商机本身记录活动会自动更新hs_lastactivitydate。Next-step当前 “send pricing”而 4/18 邮件表明价格已发出并获确认 → 建议改为 “wait for legal review sign-off”。阶段无阶段移动证据Sarah 说法律审查之后才签→仅标记不改。Close date当前 5/15邮件说 “should be mid-June” → 建议 5/15 → 6/15。Amount$18K 与邮件确认的 50 seats × $360 一致 → 无需动作。关联联系人Maria Chen 参加 4/20 会议但不在商机、不在 HubSpot → 建议创建联系人并关联商机。笔记卫生近 90 天无冲突笔记 → 无需动作。用户回复“除第 4 项外全部批准close date 别动她可能过于乐观”。Skill 随后补录 4/18 邮件与 4/20 会议活动、更新 next-step、不改 close date、创建 Maria Chen 并关联商机。最终汇报逐项列出已写入与未改动的项目。该示例完整演示了检查清单 7 项全部落地的输出格式标记了什么、证据是什么——邮件主题 日期或会议标题 日期、建议动作或“仅标记”、每项建议的“当前 → 建议”并排呈现、阶段变更被正确扣为仅标记、用户选择性批准时精确执行所选子集、联系人创建并入同一审批周期。八、清理检查清单七项审计维度的证据标准cleanup-checklist.md 定义了清理路径必须逐项走查的七个维度以及触发标记所需的证据。任何基于该 Skill 的清理流程都应照此执行并以“编号列表 证据 建议动作”的格式呈现逐项或批量征求批准。最后活动日期hs_lastactivitydate商机最近活动是否早于关联联系人最近一次真实互动若近 14 天存在比hs_lastactivitydate更新的邮件/会议建议补录缺失活动不要直接改商机记录活动会自动刷新该字段。Next-step 字段hs_next_step当前值是否仍反映最新邮件/会议达成的共识证据如字段写着 “send pricing” 但后续邮件显示价格已发、或字段为空而会议明确约定了下一步 → 建议新值若步骤已完成可建议清空并排展示当前 → 建议。商机阶段dealstage近期互动是否暗示阶段移动proposal 已发、合同已签、输给竞对证据如 “were moving forward”“we signed”“we went with [competitor]” 或会议频率变化 →仅标记绝不自动改阶段摆出证据交由用户决策。结单日期closedate最新邮件/会议是否提及与当前值冲突的时间线证据如 “pushing to Q3”“well sign by end of month”“delayed until next quarter” → 建议更新日期并排展示。金额amount最新互动是否提及不同规模证据如定价邮件中的修订价格、会议扩大的范围或客户接受的缩减范围 → 建议更新金额并排展示。关联联系人近期与商机联系人互动的邮件/会议中是否存在未关联到商机的人证据如邮件抄送或会议参会人的域名与既有商机联系人同域但不在商机上 → 建议补充缺失联系人若不存在则先在 HubSpot 创建。笔记卫生是否有超过 90 天、与当前商机状态明确冲突的笔记或活动证据如写着 “customer is lost” 但商机仍处于未关闭阶段、或笔记中的合同金额已过时 →追加新笔记澄清当前状态绝不编辑或删除旧笔记——只追加不重写历史。九、审批门禁总览五条不可逾越的红线无论是 Skill 直接触发还是经/crm-cleanup批量触发SKILL.md 与 crm-cleanup/SKILL.md 共同定义了如下红线这也是将该 Skill 接入自有 CRM 自动化流程时必须保留的安全护栏红线说明绝不删除记录联系人、商机、活动一律不删用户要求时说明 Skill 无法执行并引导其前往 HubSpot绝不未经批准改阶段/关商机即使证据充分也只标记并暂缓交由用户决定绝不擅自创建新商机商机解析失败时询问用户而不是代为创建创建联系人前必须宣布一行声明即可让 Owner 有机会拦截错别字或重复清理改动必须并排 diff展示当前值与建议值逐项等待批准十、从源码结构看 Skill 的工程组织与二次实现要点从仓库目录结构看crm-maintenance采用“主流程 SKILL.md 领域知识 reference 示例 examples”的分层组织这本身就是可复用的工程模式small-business/skills/crm-maintenance/SKILL.md可执行主流程意图识别 → 上下文 → 解析 → 执行 → 门禁 → 汇报reference/hubspot-fields.md字段/活动/关联规则的唯一事实来源source of truth保证主流程与参考文档不会各说各话reference/cleanup-checklist.md审计维度的证据标准独立于执行流程可单独复用reference/gotchas.md反模式行为准则用 Bad/Good 对比约束输出质量reference/examples/*.md三条路径各一个可验证的端到端工作示例。与之配套的/crm-cleanup命令crm-cleanup/SKILL.md则演示了“命令包装技能”的写法命令负责批量扫描与参数解析--scope将具体字段审计委托给crm-maintenance的清理工作流并继承其全部审批门禁。十一、安装与启用在 Cowork 中从插件市场安装small-business插件即可获得crm-maintenanceSkill 与/crm-cleanup命令使用 Claude Code 时可通过插件市场命令安装。使用前需在 Cowork 设置中连接HubSpot必需并建议连接Gmail / Google Calendar可选以提供邮件与日历上下文/crm-cleanup要求 HubSpot 可达否则命令会停止并提示先在 Cowork 设置中连接。安装完成后直接对 Claude 说“log this call to the Acme deal”“update the CRM”“clean up HubSpot”即可触发对应路径。【免费下载链接】knowledge-work-pluginsOpen source repository of plugins primarily intended for knowledge workers to use in Claude Cowork项目地址: https://gitcode.com/GitHub_Trending/kn/knowledge-work-plugins创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表