mcpField
P
prompt-review

prompt-review

github.com/tokorotenAgent 工作流359121 次安装28 周前更新
代码仓库

关于 prompt-review

prompt-review 分析用户过去的 AI Agent 对话,并生成日文报告,评估技术理解、提示词模式和对 AI 的依赖。它可收集所列工具的日志,并支持按日期和项目筛选。

主要功能

  1. 01收集所列 AI 工具的日志
  2. 02按日期和项目筛选
  3. 03梳理技术理解程度
  4. 04分析提示词模式与 AI 依赖
  5. 05生成包含证据的日文报告

适用场景

  1. 01跨项目回顾 AI 对话
  2. 02评估提示词随时间的变化
  3. 03识别反复出现的调试或委派模式
  4. 04检查收集的对话是否含有泄露的密钥

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tokoroten/prompt-review --skill prompt-review

安装后在 Claude Code 中输入/prompt-review确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
data-sources.md
report-template.md
scripts/
collect.py

详细介绍

prompt-review 技能

分析用户过去的 AI Agent 对话历史,评估其技术理解程度、提示词模式和 AI 依赖度,并生成报告。报告以日语写入 reports/prompt-review-YYYY-MM-DD.md。

处理参数

解析 $ARGUMENTS,并按照以下规则处理参数:

  • 无参数 → 跨所有项目,分析过去 7 天(默认)
  • 仅数字 → 天数筛选(例如:30 → 过去 30 天)
  • all 或 0 → 全部时间段(不进行天数筛选)
  • 仅字符串 → 项目名称筛选(部分匹配)
  • 字符串 + 数字 → 项目名称 + 天数筛选(例如:yonshogen 30)

步骤 1:收集数据(运行脚本)

运行预处理脚本 scripts/collect.py 收集数据。 该脚本会自动检测 Claude Code、GitHub Copilot Chat、Cursor、Cline、Roo Code、Windsurf、Antigravity、Gemini CLI、OpenAI Codex、OpenCode 的 日志,并将经过筛选的 JSON 输出到标准输出。

根据参数组装脚本选项

解析 $ARGUMENTS,并在 Bash 中按以下方式运行。 运行前生成带时间戳的文件名,并确保保存脚本输出和 Read 的引用使用同一路径。

OUTFILE="/tmp/prompt-review-data_$(date +%Y%m%d%H%M%S).json"
python ~/.claude/skills/prompt-review/scripts/collect.py [OPTIONS] > "$OUTFILE"
  • 无参数 → 不添加选项(默认:过去 7 天)
  • 仅数字(例如:30)→ --days 30
  • all 或 0 → --days 0(全部时间段)
  • 仅字符串(例如:yonshogen)→ --project yonshogen
  • 字符串 + 数字(例如:yonshogen 30)→ --project yonshogen --days 30

重要:脚本路径必须使用存放此技能的项目中的 .claude/skills/prompt-review/scripts/collect.py 的绝对路径,而不是相对于此技能文件的路径。以当前工作目录(cwd)为基准指定 .claude/skills/prompt-review/scripts/collect.py。

读取输出

脚本运行后,使用 Read 读取上面生成的 $OUTFILE 路径。

输出 JSON 结构:

{
  "summary": {
    "total_messages": 2616,
    "detected_tools": ["Claude Code", "GitHub Copilot Chat"],
    "filter_days": null,
    "filter_project": null
  },
  "sources": [
    {
      "tool": "Claude Code",
      "status": "検出",
      "messages": [
        {"text": "プロンプト本文", "timestamp": "2025-09-29 03:16", "project": "yonshogen"}
      ],
      "period": "2025-09-29 03:16 〜 2026-03-12 04:58"
    }
  ],
  "project_stats": {
    "farbrain": {"count": 668, "tools": ["Claude Code"]},
    "yonshogen": {"count": 215, "tools": ["Claude Code"]}
  },
  "secret_warnings": [
    {
      "tool": "Claude Code",
      "project": "some-project",
      "timestamp": "2025-10-01 12:00",
      "type": "OpenAI API Key",
      "masked_value": "sk-abc12***xyz9",
      "prompt_excerpt": "APIキーはsk-abc123..."
    }
  ]
}

步骤 2:分析

使用 Read 读取 $OUTFILE(步骤 1 中生成的带时间戳文件)后,从以下角度分析 messages 数组中的用户提示词。每个角度都必须包含具体证据(引用实际提示词片段)。

预处理:创建项目摘要并排除简短回复

首先使用 project_stats 了解各项目的消息数量和使用工具列表。 阅读各项目的提示词内容,并用一行概述该项目中的工作内容。 将此信息写入报告的“2. 项目摘要”部分。

接下来,从分析对象中排除简短的肯定回复。

预处理:忽略简短的肯定回复

Claude Code 经常会询问用户“是否……?”,而用户对此作出的简短肯定回复对分析提示词能力或技术理解程度没有价值。以下类型的消息应从分析对象中排除:

  • 简单肯定:y、yes、はい、うん、ok、sure、yep、yeah
  • 执行指示:進めて、やって、do it、doit、go、go ahead、proceed
  • 批准:それで、それでいい、それでお願いします、お願いします、いいよ、いいです、大丈夫
  • 仅表示感谢:ありがとう、ありがとうございます、thanks、thx

判定标准:消息较短(大致不超过 20 个字符),且符合上述模式。但即使是简短消息,只要包含具体技术指示(例如:“30pxがいいです”“asyncで”),也不要排除。

2a. 技术理解程度图谱

从提示词中提取提及的技术概念,并分为 3 个级别:

  • 熟悉:自信地给出指示,准确使用术语,提供具体实现方案
  • 基本理解:了解概念,但将细节交由 AI 处理
  • 正在学习/模糊:以提问形式表达,存在误解,或经常试错

分类信号:

  • 使用祈使句给出具体指示 → 熟悉
  • “请……+仅提及概念名称” → 基本理解
  • “……是什么?”“……不太顺利”“该怎么做?” → 正在学习
2b. 提示词模式分析
  • 有效模式:指定具体约束、分步骤给出指示、提供充分上下文、明确期望的输出格式
  • 可改进模式:指示含糊(如“弄得好看点”)、上下文不足、混淆目的与手段
  • 显著习惯:简短批准(如“y”“doit”)的频率、日语/英语的使用方式
2c. AI 依赖度分析

按项目和工具分析:

  • 用户决定方向并让 AI 负责实现的情况(主动)
  • 将方向决策也交由 AI 处理的情况(依赖)
  • 在调试/解决错误时依赖 AI 的模式
  • 频繁让 AI 确认状态的模式(如“确认一下情况”)
2d. 成长轨迹

按时间顺序分析:

  • 提示词质量和具体程度的变化
  • 开始使用的新技术概念
  • 反复出现的问题模式
2e. 跨项目、跨工具的趋势
  • 擅长和不擅长的领域
  • 不同项目类型下的行为差异
  • 使用 AI 工具的方式(检测到多个工具时)
2f. 密钥和凭据警告

如果 secret_warnings 数组不为空,请在报告开头(数据源摘要之后)输出警告部分。 列出脚本检测到的 API Key、Token、Password、连接字符串等机密信息, 并建议用户轮换密钥(重新签发或使其失效)。

绝对不要在报告中以明文写出机密值。脚本会返回已屏蔽的值(masked_value),请直接使用该值。

步骤 3:生成报告

按照 references/report-template.md 中的模板,以日语生成报告。

输出规则
  1. 如果 reports/ 目录不存在,使用 Bash 运行 mkdir -p reports
  2. 使用 Write 工具将报告写入 reports/prompt-review-YYYY-MM-DD.md(YYYYMMDD 为运行日期)
  3. 生成报告后,告知用户文件路径
写作注意事项
  • 报告必须使用日语输出
  • 对于推测,应明确标注“推测……”“可能……”
  • 引用提示词原文时,应截取简短片段,并注意保护隐私
    • 将文件路径中的个人姓名部分替换为 <user>
    • 隐去项目专属的机密信息
  • 无法分析的部分应如实写明“数据不足,无法进行分析”
  • 用括号注明信息来自哪个工具(例如:“(Claude Code)”“(Copilot Chat)”)
  • 没有证据支持的部分可以省略

参考资源

评论

支持 Markdown