用途:每月对 CRM 中已结束的商机做一次赢单/丢单复盘,把 CRM 里关于"谁买、谁不买"的信息沉淀到代码库的 context/ 目录中,而不是停留在无人再看的报告里。
主要能力:首次运行会依据赢单与丢单验证 icp/,并给出一个失格条件;写入带日期的 insight/ 文件(我们与谁沟通、在哪里赢、在哪里输,每个计数都带分母)、来自丢单原因的 objection/ 文件、以及每个赢单客户的 client/ 文件。此后每月只追加新商机反映的内容,不修改已有文件。同时生成 outputs/<date>-win-loss-review/README.md 运行记录,只含查询结果、计数和 ID,使 context 文件中的 [R: <query>] 标签可核查。最后开一个 Pull Request 并向 Slack 发五行摘要,由人合并;下一次 cargo-ai cdk deploy 会把 context/ 同步到工作区上下文仓库。
使用方式:在 CDK 项目内执行 cargo-ai cdk add cookbook/win-loss-review 写入资源,或无项目时执行 cargo-ai cdk init <dir> --cookbook win-loss-review && cd <dir> && npm install。随后根据现有连接器与模型做对账,按实际 CRM 的 deal 模式调整 LOST_REASON_COLUMN、连接器与查询,设置 Slack 频道 ID 与模型,运行 node --import tsx evals/contract.mjs、npm run check && cargo-ai cdk plan,确认后 cargo-ai cdk deploy。首次运行可用工作区 UI 或 cargo-ai ai message create --agent-uuid <uuid> --parts '[{"type":"text","text":"Run the win-loss review first pass. Follow your system prompt exactly and open one pull request."}]' 手动触发,之后由 cron 接管。
限制:CRM 是唯一数据来源,只通过 models 提取,提取不计费;查询为 agent 提示中的固定 SQL,通过 cargo-ai storage query execute 执行,不含金额字段。窗口内赢单达 20 单以上进入 verify 模式,否则为 hypothesis 模式。agent 只有仓库写权限和一个锁定频道的 postMessage,不能直接写工作区 context、不能触碰 CRM、不能发邮件、不能自行合并。资料中状态为 to-be-approved,尚未在真实工作区部署验证,未提供定价信息。