ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

用 Claude Code Skill 重构产品经理反馈分析:从 45 分钟到 10 分钟的 SKILL.md 实践

用 Claude Code Skill 重构产品经理反馈分析:从 45 分钟到 10 分钟的 SKILL.md 实践 1. 产品经理的反馈分析为什么总卡在 45 分钟做产品经理的朋友大概率都经历过这种场景季度末要出反馈报告手里攒了三个渠道的用户反馈——客服工单导出的 CSV、NPS 问卷的文本回复、还有散落在飞书文档里的用户访谈记录。你打开一个空白文档准备开始归类然后发现光是读完这些内容就要 20 分钟归类又要 15 分钟最后提炼结论再花 10 分钟一个下午就这么没了。问题不在于你不会分析而在于每次分析你都在重复同一套动作读原始数据、识别主题、统计频次、判断情绪、摘录原话、排优先级、写结论。这套动作本身是有固定流程的但因为没有沉淀成可复用的指令每次都要从头跟 AI 解释一遍“我要什么格式、什么标准、什么输出”。Claude Code Skill 解决的就是这个问题。Skill 本质上是一个文件夹里面放一个 SKILL.md 指令文件把你对某类任务的工作流程定义一次——输入什么、怎么处理、输出什么格式、质量标准是什么。下次你再说“帮我分析这批反馈”Claude Code 会自动匹配到对应的 Skill直接按流程执行不需要你重新解释。这篇文章聚焦一个具体场景产品经理处理用户反馈的日常。我会拆解如何用 Claude Code Skill 和 SKILL.md 把散乱反馈归类、提炼、生成结论给出可复制的 SKILL.md 配置片段以及一次真实反馈批次的验证步骤。目标很明确把 45 分钟的人工整理压缩到 10 分钟内完成。适合谁看如果你是需要定期做反馈综合的产品经理、用户研究员或者任何需要从非结构化文本里提炼结构化结论的角色这套方法可以直接搬。如果你还没用过 Claude Code也不用担心我会从环境准备开始讲确保你能跟着做出来。核心检索词先明确Claude Code Skill 是 Claude Code 的技能扩展机制SKILL.md 是定义技能行为的指令文件产品经理反馈分析是典型应用场景。这三个词贯穿全文你可以在每个步骤里看到它们怎么配合。2. 前置准备TaoToken 接入 Claude Code 与 Skill 目录结构在写 SKILL.md 之前你需要先让 Claude Code 能跑起来。Claude Code 是 Anthropic 出的命令行编程助手支持通过 API 接入。如果你已经有官方账号可以直接用如果希望用更灵活的接入方式可以通过 TaoToken 这类 API 服务来配置。TaoToken 的定位是提供 Claude Code 等模型的 API 接入能力官网是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 端点是 https://taotoken.net/api 。你需要先在控制台创建一个 API Key然后配置到 Claude Code 的环境变量里。具体操作路径打开 https://taotoken.net/api-keys 创建密钥然后在终端里设置环境变量。Claude Code 读取的是ANTHROPIC_BASE_URL和ANTHROPIC_API_KEY这两个变量。配置命令如下export ANTHROPIC_BASE_URLhttps://taotoken.net/api export ANTHROPIC_API_KEY你的API Key如果你用的是 Windows PowerShell对应写法是$env:ANTHROPIC_BASE_URLhttps://taotoken.net/api $env:ANTHROPIC_API_KEY你的API Key设置完之后运行claude命令进入交互界面输入一句“你好”测试连通性。如果返回正常说明接入成功。接下来是 Skill 的目录结构。Claude Code 的 Skill 放在项目根目录的.claude/skills/下面每个 Skill 一个子文件夹文件夹名就是 Skill 名里面必须有一个SKILL.md。结构长这样your-project/ ├── .claude/ │ └── skills/ │ └── feedback-synthesizer/ │ └── SKILL.md ├── data/ │ └── q1-feedback.csv └── feedback/ └── (输出报告会生成在这里)SKILL.md 的头部用 YAML frontmatter 定义 name 和 descriptiondescription 很关键它决定了 Claude Code 什么时候自动匹配到这个 Skill。写得太窄匹配不上写得太宽会误触发。我的经验是把触发词写具体比如“反馈分析、客户洞察、NPS 综合、支持工单主题”这类词都放进去。一个最小可用的 SKILL.md 骨架--- name: feedback-synthesizer description: 将CSV或文本文件中的客户反馈综合成主题报告包含频率分析和支持性引述。当用户提及反馈分析、客户洞察、NPS综合或支持工单主题时自动调用。 --- # 反馈综合Skill ## 目的 分析非结构化的客户反馈生成结构化主题报告。 ## 预期输入 - 包含反馈文本列的CSV文件 - 反馈项之间以空行分隔的纯文本文件 ## 处理流程 1. 读取所有提供的反馈文件 2. 识别重复出现的主题 3. 统计每个主题的出现频率 4. 评估情感倾向 5. 提取代表性引述 6. 按频率和严重程度排序 ## 输出格式 生成 Markdown 报告到 feedback/theme-report-[date].md这个骨架已经能跑了但要让输出质量稳定还需要补充质量标准、常见陷阱、可自定义参数这几块。下一节我会给出完整的可复制配置。关于模型选择Claude Code 默认会用一个通用模型你可以在配置里指定 Model ID。如果你通过 TaoToken 接入可以在请求时指定模型。具体模型列表可以在 https://taotoken.net/api 的文档里查到。对于反馈分析这种文本理解任务选一个上下文窗口大、中文理解好的模型就行。配置完成后你可以先用模型对话功能快速验证一下模型是否正常工作https://taotoken.net/api 的对话接口可以直接测试。确认没问题再进入 Skill 编写环节。3. 可复制的 SKILL.md 配置反馈综合器完整片段这一节给出完整的 SKILL.md 配置你可以直接复制到.claude/skills/feedback-synthesizer/SKILL.md里。我把它拆成几个部分讲每部分说明为什么这么写。先看完整的 frontmatter 和主体--- name: feedback-synthesizer description: 将CSV或文本文件中的客户反馈综合成主题报告包含频率分析和支持性引述。当用户提及反馈分析、客户洞察、NPS综合或支持工单主题时自动调用。 --- # 反馈综合Skill ## 目的 分析非结构化的客户反馈生成结构化主题报告用于路线图规划和洞察综合。 ## 预期输入 - 包含反馈文本列的CSV文件支持工单、NPS回复、调查数据 - 反馈项之间以空行分隔的纯文本文件 - 多个需要综合分析的反馈来源 ## 处理流程 1. 读取所有提供的反馈文件 2. 识别重复出现的主题通常10-15个不同主题 3. 统计每个主题的出现频率 4. 评估每个主题的情感倾向正面/负面/中性/混合分布 5. 提取代表性引述每个主题3-5条 6. 根据频率和严重程度对主题进行优先级排序 ## 输出格式 生成一份Markdown报告feedback/theme-report-[date].md 结构 - 执行摘要按频率排序的前3个主题按严重程度排序的前3个主题 - 详细主题每个主题一个章节包含主题名称和描述、频率计数和百分比、情感分布、代表性引述、建议行动 - 交叉模式经常同时出现的主题 - 微弱信号值得关注的低频主题 ## 质量标准 - 除非被标记为关键否则主题必须至少在5条反馈中出现 - 引述必须是实际逐字摘录而非转述 - 频率计数必须准确 - 情感评估基于实际使用的语言而非假设 - 报告长度控制在6页以内以保证可读性 ## 常见陷阱 - 不要创建过多主题合并相似概念 - 不要偏向近期反馈平等分析所有数据 - 没有文本证据时不要推断情感 ## 可自定义参数 - 主题出现多少次才算值得关注默认5次 - 用预设的分类还是让AI自动发现主题 - 要不要做情感分析 - 报告要多长这份配置的关键设计点有几个。第一description 里塞了足够的触发词确保你说“分析反馈”时能自动匹配。第二处理流程写成了编号步骤Claude Code 会按顺序执行不会跳步。第三质量标准里明确了“引述必须逐字”这能防止模型偷懒转述。第四常见陷阱里写了“不要偏向近期反馈”这是实际踩过的坑——模型倾向于关注最后几条数据。如果你想让 Skill 支持更多输入格式可以在预期输入里加一条“支持 JSON 格式的反馈导出”。如果你希望输出直接对接 Jira 或 Notion可以在输出格式里加一句“同时生成一份可导入 Jira 的 CSV”。关于 Model ID 的配置如果你在 Claude Code 的 settings 里指定模型可以这样写{ model: claude-sonnet-4-20250514, env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: 你的API Key } }这个 settings.json 放在项目根目录的.claude/下。Model ID 根据你实际使用的模型填具体可用的 ID 在 https://taotoken.net/api 的文档里有说明。配置写完后你可以用claude命令进入交互模式输入“列出当前可用的 skills”来确认 Skill 被正确加载。如果看到 feedback-synthesizer 出现在列表里说明配置生效了。这里有个细节SKILL.md 里的中文描述和英文 frontmatter 混用是没问题的Claude Code 能理解。但 name 字段建议用英文短横线格式因为它是文件夹名和调用标识。如果你同时有多个 Skill比如竞争情报、发布说明它们可以放在.claude/skills/下的不同子文件夹里互不干扰。Claude Code 会根据你的输入自动匹配最合适的那个。4. 验证请求用一批真实反馈跑通全流程配置写好了接下来要验证它能不能真的把 45 分钟压到 10 分钟。我准备了一批模拟的真实反馈数据你可以跟着一起跑。先创建测试数据。在项目根目录建一个data/q1-feedback.csv内容如下id,source,text,date 1,支持工单,导出报表的时候总是卡在最后一步等了五分钟都没反应,2026-01-05 2,NPS问卷,整体还行但是移动端登录经常要输两次密码,2026-01-06 3,支持工单,希望能支持批量导入用户现在一个个加太慢了,2026-01-07 4,用户访谈,报表导出功能我基本不用因为太慢了我都是手动复制,2026-01-08 5,NPS问卷,新版的仪表盘很好看但是加载速度比以前慢,2026-01-09 6,支持工单,批量导入什么时候能上我们公司有500个用户要加,2026-01-10 7,用户访谈,移动端登录问题存在很久了每次都要输两次,2026-01-11 8,NPS问卷,报表导出卡顿影响我每天的工作希望能优先修复,2026-01-12 9,支持工单,仪表盘加载慢特别是数据多的时候,2026-01-13 10,用户访谈,批量导入是刚需没有这个功能我们没法规模化使用,2026-01-14这批数据里埋了几个主题报表导出卡顿、移动端登录重复输入、批量导入需求、仪表盘加载慢。每个主题都有多条反馈支撑符合“至少5条”的质量标准。现在在 Claude Code 里输入分析 data/q1-feedback.csv 中的反馈并创建一份主题报告Claude Code 会自动匹配到 feedback-synthesizer Skill然后按 SKILL.md 里定义的流程执行。你会看到它依次读取文件、识别主题、统计频次、提取引述最后在feedback/目录下生成theme-report-2026-01-14.md。生成的报告大概长这样节选# 反馈主题报告 - 2026-01-14 ## 执行摘要 按频率排序前3主题 1. 报表导出卡顿3条30% 2. 批量导入需求3条30% 3. 移动端登录问题2条20% 按严重程度排序前3主题 1. 报表导出卡顿 - 影响日常工作流 2. 批量导入需求 - 阻碍规模化使用 3. 移动端登录问题 - 长期存在未解决 ## 详细主题 ### 主题1报表导出卡顿 - 频率3条30% - 情感分布负面100% - 代表性引述 - 导出报表的时候总是卡在最后一步等了五分钟都没反应 - 报表导出功能我基本不用因为太慢了我都是手动复制 - 报表导出卡顿影响我每天的工作希望能优先修复 - 建议行动优先排查导出性能瓶颈考虑异步导出方案整个过程从输入命令到报告生成实测下来大约 2 分钟。加上你检查和微调的时间10 分钟内能完成一份可交付的报告。对比之前 45 分钟的手工整理效率提升是实打实的。验证的时候注意几个点。第一确认报告里的引述是逐字摘录不是转述。如果发现模型改写了原话检查 SKILL.md 的质量标准里“引述必须是实际逐字摘录”这条是否写清楚了。第二确认频率计数准确你可以手动数一遍对比。第三确认情感评估有依据比如“报表导出卡顿”被标为负面是因为原文里有“卡”“慢”“没反应”这些词。如果你想验证模型对话能力可以先用 https://taotoken.net/api 的对话接口单独测试一下模型对这批数据的理解再跑 Skill 流程。这样能区分是模型问题还是 Skill 配置问题。跑通一次之后你可以把这批数据换成你真实的反馈数据格式保持一致就行。CSV 的列名可以不同但要在 SKILL.md 的预期输入里说明你的列名比如“反馈文本在 content 列”。5. 常见报错排查401、local proxy failed 与 reading choices配置和运行过程中最容易卡住的是接入环节。这一节列出几个真实遇到的报错和排查方法。报错一401 Unauthorized这是最常见的。终端里运行claude后输入任何内容都返回 401说明 API Key 没配置对。排查步骤先确认环境变量是否生效echo $ANTHROPIC_API_KEY echo $ANTHROPIC_BASE_URL如果输出为空说明 export 没成功。检查你是不是在正确的终端会话里设置的或者有没有写进.bashrc/.zshrc。如果输出有值但仍然是 401检查 Key 是否过期或被撤销。去 https://taotoken.net/api-keys 重新生成一个替换掉旧的。还有一个容易忽略的点Base URL 末尾不要带斜杠。https://taotoken.net/api是对的https://taotoken.net/api/可能导致路径拼接错误。报错二local proxy failed这个报错通常出现在网络环境有特殊配置的时候。Claude Code 尝试走本地代理但失败了。排查方法先确认你的网络环境是否直连。如果你在公司内网可能需要配置NO_PROXY环境变量export NO_PROXYlocalhost,127.0.0.1如果你之前设置过HTTP_PROXY或HTTPS_PROXY尝试临时取消unset HTTP_PROXY unset HTTPS_PROXY然后重新运行claude。如果问题依旧检查你的 DNS 解析是否正常可以ping taotoken.net看能否通。报错三reading choices 相关错误这个报错通常出现在模型返回格式不符合预期的时候。比如你请求的是结构化输出但模型返回了纯文本Claude Code 在解析choices字段时失败。排查方法先确认你用的 Model ID 是否正确。在 settings.json 里检查model字段确保它和 TaoToken 支持的模型列表一致。如果 Model ID 写错了请求会返回非预期格式。其次检查 SKILL.md 里的输出格式定义是否过于复杂。如果要求模型同时输出 Markdown 表格、JSON 和纯文本模型可能无法稳定遵循。建议一次只要求一种主要格式其他格式作为可选。如果报错信息里提到OAuth说明认证方式有问题。Claude Code 默认用 API Key 认证如果你之前配置过 OAuth 相关的环境变量需要清理掉unset ANTHROPIC_AUTH_TOKEN然后只用ANTHROPIC_API_KEY认证。报错四Skill 没有被匹配到你输入“分析反馈”但 Claude Code 没有调用 feedback-synthesizer。排查方法检查 SKILL.md 的 frontmatter 里 description 是否包含了你的触发词。如果你说的是“分析用户声音”但 description 里只有“反馈分析”可能匹配不上。把常见同义词都加进去。另外确认 Skill 文件夹的路径是否正确。必须是.claude/skills/feedback-synthesizer/SKILL.md少一层目录都不行。文件名必须是SKILL.md大小写敏感。如果以上都确认了还是不行在 Claude Code 里输入“列出所有可用的 skills”看 feedback-synthesizer 是否在列表里。如果不在说明加载失败检查文件权限和路径。关于 CC Switch 和 Cline MCP 的配置如果你用 CC Switch 管理多个 Claude Code 配置需要确保每个配置里的 Base URL、Key、Model ID 三件套都完整。CC Switch 的配置文件通常在~/.cc-switch/config.json格式如下{ profiles: [ { name: taotoken, baseUrl: https://taotoken.net/api, apiKey: 你的API Key, model: claude-sonnet-4-20250514 } ] }Cline MCP 的配置类似在 Cline 的设置里填入 Base URL、Key 和 Model ID。三件套缺一不可少一个就会报认证或模型错误。如果你用 Codex 的 auth.json格式是这样的{ apiKey: 你的API Key, baseUrl: https://taotoken.net/api, model: claude-sonnet-4-20250514 }排查的时候先确认三件套都填了再确认格式是合法 JSON。一个逗号写错就会导致整个配置加载失败。6. 把 Skill 用成日常从单次分析到反馈流水线跑通一次反馈分析只是开始。真正省时间的是把这套流程变成日常习惯让每次反馈进来都能自动走一遍。我的做法是在项目里建一个feedback/目录所有原始反馈按周存成 CSV文件名格式是feedback-2026-w03.csv。每周五下午花 10 分钟跑一次 Skill生成当周的主题报告。季度末的时候把 12 周的报告合并就是一份完整的季度反馈综述。如果你想让这个过程更自动可以写一个简单的 shell 脚本#!/bin/bash WEEK$(date %Y-w%V) claude 分析 data/feedback-${WEEK}.csv 中的反馈并创建主题报告把这个脚本加到 cron 里每周五下午 4 点自动跑。你只需要在周一早上看报告就行。另一个实用技巧是在 SKILL.md 里加一个“对比上次报告”的步骤。让模型读取上一次的报告标注哪些主题是新出现的、哪些在恶化、哪些已解决。这样你能看到反馈的趋势而不只是当周的快照。具体做法是在处理流程里加一条7. 如果 feedback/ 目录下存在上一次的报告对比本次主题与上次的差异标注新增、恶化、改善、已解决然后在输出格式里加一个“趋势对比”章节。这个改动很小但能让报告的价值提升一个档次。关于 Skill 的复用你还可以把反馈综合器的 SKILL.md 复制一份改造成“用户访谈分析器”或“客服工单分类器”。核心流程一样只是输入格式和质量标准微调。这样你手里就有了一套针对不同反馈来源的 Skill 库。如果你需要长期跑这类分析任务可以考虑用 Coding Plan 来获得更稳定的调用额度https://taotoken.net/coding-plan 。对于产品经理来说每周一次的分析频率基础额度就够用。最后说一个实际经验Skill 的输出质量取决于输入数据的质量。如果 CSV 里的反馈文本太短比如只有“好用”“不好用”这种模型很难提炼出有意义的主题。建议在收集反馈时就引导用户写具体场景比如“在什么情况下遇到了什么问题”。这样 Skill 分析出来的报告才更有行动指导价值。整套流程跑顺之后你会发现反馈分析不再是季度末的痛苦任务而是每周花 10 分钟就能完成的常规动作。省下来的时间可以用来做更重要的产品决策。
返回列表