mcpField
C
cawplan-internal-qa-coding-humaninputs

cawplan-internal-qa-coding-humaninputs

github.com/cawcut测试与质量177 次安装2 天前更新
代码仓库

关于 cawplan-internal-qa-coding-humaninputs

这是用于按 CawPlan 分类体系标注单条人工输入的 QA 技能。它依据输入及可选的助手上下文进行推理,无需调用 API 或进行 CawPlan 身份验证。

主要功能

  1. 01分类单条人工输入
  2. 02应用分类与主题体系
  3. 03按需使用整理后的助手上下文
  4. 04返回有序分类及一个主题
  5. 05提供理由与置信度

适用场景

  1. 01手动核验人工输入分类
  2. 02检查消息所选的类别与主题
  3. 03评估分类规则是否适用于某条输入

安装

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

$npx skills add https://github.com/cawcut/skill-cawplan --skill cawplan-internal-qa-coding-humaninputs

安装后在 Claude Code 中输入/cawplan-internal-qa-coding-humaninputs确认已加载。

包含的文件

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

references/
CATEGORY_TAXONOMY.md
PRODUCTION_CLASSIFY_PROMPT.md
TOPIC_TAXONOMY.md
scripts/
sync-classify-prompt-from-core-product.mjs

详细介绍

CawPlan 内部 QA — 对一条人工输入进行分类

任务

给定一段 content(必填),以及可选的配对内容 assistant_message(本轮 AI 回复)和 prev_message(紧邻的上一条助手回复的最后一段——不是上一轮人工输入),使用 references/CATEGORY_TAXONOMY.md 和 references/TOPIC_TAXONOMY.md 进行分类。此操作不会调用任何 CawPlan API,也无需 cawplan 身份验证——它是根据 uid.core-product 当前分类规则进行的纯推理检查,而非查询。

工作流

  1. 如果本次会话中还没有阅读过,请阅读 references/CATEGORY_TAXONOMY.md、references/TOPIC_TAXONOMY.md 和 references/PRODUCTION_CLASSIFY_PROMPT.md(完整生产快照)。如果整理后的文档与快照不一致,以快照为准。
  2. new_feature 是最后的选择。 当多个主题都有合理依据时,不要选择它——优先选择具体主题(任何关于内容如何呈现的事项,包括新增节点/面板/屏幕且需求关注其显示内容时,选 design_ui;需要接线或外部系统必须携带某个字段时,选 integration_api;以及 security、infra、refactor、bug、investigation)。新增屏幕或新增字段本身并不意味着主题是 new_feature。
  3. 按生产环境的方式预处理 assistant_message,然后再阅读——不要基于未经截断的原始文本进行判断:
    • 将字面量 \n/\t 转义符和换行符规范化为空白字符。
    • 去掉 [REDACTED] 占位符(上传时的脱敏内容——真实的方括号文本,如 [Done]/[QA Testing],必须保留)。
    • 去掉每个段落中的 Markdown 噪声(表格分隔线、--- 水平线、标题/粗体标记、表情符号)。
    • 按空行拆分段落;仅保留前 3 个段落。
    • 用 \n\n 连接这些段落,然后限制为约 1200 个字符(如果更长,从开头截断并加上 ...)——这与 ClassifyAssistantSnippet/AISessionClassifyAssistantMaxRunes 的处理方式一致。
  4. 如果提供了 prev_message,请进行预处理(采用第 2 步中的段落拆分和逐段清理方式,但只取最后一个段落;限制为约 500 个字符)——这与 ClassifyPrevAssistantTail/AISessionClassifyPrevMaxRunes 的处理方式一致。省略时,将 prev 视为空;若没有它,简短的后续消息(如“commit & push”“直接改”)可能会有歧义。
  5. 严格按照生产环境的方式路由类别(参见 CATEGORY_TAXONOMY.md):
    • 首要信号:content。 始终先阅读它。
    • prev: 仅用于区分简短、直接的后续消息(通常不超过 12 个汉字或 6 个英文单词)属于 decision(用户提及或重复了助手提出的具体操作),还是 approval(笼统的许可,如“直接改”“可以”“do it”)。对于任何其他类别都不得使用 prev;也不得将其视为用户先前提出的要求。
    • assistant_message: 仅当 content 是不带意图词的纯交接内容(URL、文件路径、截图路径、日志路径)时,才用于判断类别。不得根据助手已经执行或验证的内容推断类别。
  6. 根据分类法确定所有明显适用的类别,然后按照参考文档中的优先级顺序排序(从高到低)。使用准确的 snake_case 叶节点名称(如 direction_constraint、rejection_rollback、question_clarification、other_meta 等——不得使用 direction/rejection/question/other 等简写形式)。不要为了填满列表而凭空添加次要类别。若仅有一个适用类别,列表中就只放一个元素。
  7. 排序后列表中的第一个元素是主要类别。
  8. 根据 content 和经过预处理的 assistant_message,从 TOPIC_TAXONOMY.md 中恰好选择一个主题——绝不可使用 prev_message 判断主题。遵循 ASKING 与 CHANGING 的区分、将纯粹的 commit & push 归为 git_ops,以及参考文档中有关 Slack 的提示。
  9. 撰写一句简短的 topic_reason,并按照 TOPIC_TAXONOMY.md 的要求设置 topic_confidence(0.0–1.0),与生产环境保持一致。

输出

报告:

  • category — 主要类别(categories 的第一个元素)。
  • categories — 按优先级排序的完整列表(可以只有一个值)。
  • topic — TOPIC_TAXONOMY.md 中 17 个主题之一,且只能有一个值。
  • topic_reason — 用一个简短句子解释主题选择。
  • topic_confidence — 0.0–1.0 之间的浮点数(表示对主题选择的把握程度)。
  • 用一个简短句子解释主要类别的选择,并引用 content、prev_message 或准备好的 assistant_message 中促成该判断的具体短语——这样,当调用方对此有异议(例如与已持久化的云类别不一致)时,可以进行审核,而不是面对一个不透明的结果。

参考资料

  • references/PRODUCTION_CLASSIFY_PROMPT.md — 从 uid.core-product 导出的完整提示词
  • references/CATEGORY_TAXONOMY.md — 精心整理的类别路由规则与示例
  • references/TOPIC_TAXONOMY.md — 精心整理的主题路由规则与示例

提示词发布后的同步快照:

node skills/cawplan-internal-qa-coding-humaninputs/scripts/sync-classify-prompt-from-core-product.mjs

评论

支持 Markdown