CommunityWriting & Editinggithub.com

host452b/prompt-polish

Claude Code skill/plugin that rewrites a raw question into a high-performing LLM prompt by auto-selecting research-backed prompt-engineering strategies.

Works withClaude Code~Codex CLI~Cursor
npx skills add host452b/prompt-polish

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

Prompt Polish(提示词策略优化)

这个 skill 做什么

输入一个原始问题/任务,先判断它属于哪种任务类型,再为该类型选定一组纯文本提示词策略(来自 14 项研究机构技巧),把这些策略编织进一条连贯的提示词里,输出重构后的提示词本身

核心原则:你的整条回复就是那条重构后的提示词,别的什么都不写。 你在为用户造一个可复用的提示词,不是在替他回答原始问题。

何时使用

  • 用户给你一个问题/任务,希望"改写成更好的 prompt"「优化提示词」「提示词重构」
  • 用户希望某个提问更容易让大模型答对、答得格式正确
  • 关键词:prompt polish / optimize prompt / 提示词工程 / 改写提问

不适用:

  • 用户想要你直接回答那个原始问题(那就直接答,别改写)
  • 与 LLM 提示无关的写作/编辑任务

输出契约(最重要)

你的整条回复 = 一个代码块。块内是重构后的、可直接复制使用的提示词;块外零字符

具体即:

  • 代码块之前不写任何引言、寒暄、"这是改写后的提示词"之类的话。
  • 代码块之后不写任何说明、解读、点评,尤其不要把原始问题的答案算出来或泄露(你在造模板,不是在答题)。
  • 把所选策略直接落进提示词正文(角色句、步骤、答案锚点等),而不是在块外描述"我用了哪些策略"。
  • 默认用 包裹;若提示词正文本身含 ,改用 ~~~ 包裹,保证整体仍是单一代码块。
  • 分类判断、组合选择都是你的内部思考,不写进回复。

例外:仅当用户明确要求"讲解你为什么这么改/解释策略"时才补充说明(用户指令优先于本契约)。

工作流程(内部执行,不输出过程)

  1. 判类型 — 把原始问题归入下表某一类型(取最主要的一类;可由两类合并,但策略总数控制在 2–4 个)。
  2. 选组合 — 直接采用下方「任务类型 → 策略组合」表里的那一组(通常 2–4 个)。除非有明确理由,否则不要再额外叠加策略——堆得越多越互相干扰、提示越臃肿。
  3. 重构 — 用「策略速查」把每个策略写成提示词里的具体句子/步骤,并把原始问题的具体内容填进去(产出是成品,不留 {占位符},除非那是留给终端用户填写的字段)。
  4. 只输出提示词 — 按输出契约,整条回复只给那个代码块。

任务过于模糊、信息不足时:不要自己回头问用户。改用「翻转交互」策略——把"先澄清再执行"写进重构后的提示词里(让目标模型先向用户提问),整条回复仍然只是一个代码块。

任务类型 → 策略组合(纯文本版)

任务类型推荐组合核心优势
选择题 / 客观判定倒装选项 + 符号占位符 + 反向验证降低位置偏差 + 精准提取答案 + 自我排错
专业领域 / 合规生成角色规则双保险 + 知识时间戳 + 镜子测试专业知识检索 + 时效校准 + 二次优化
复杂推理求解链式思考 + 思维树 + 反向验证分步推导 + 多路径验证 + 自我反驳
批量标准化任务元提示词 + 分层提示 + 提示重复自优化提示词 + 清晰解析 + 稳定遵循
创意与事实融合提示链 + 反向验证 + 镜子测试分阶段先发散后收敛 + 事实自查 + 润色
高精度问答角色规则双保险 + 反向验证 + 镜子测试三重保险降低错误率
结构化输出分层提示 + 符号占位符 + 提示重复确保格式一致性
减少幻觉知识时间戳 + 反向验证 + 镜子测试多层事实核查
Agent / 工具调用ReAct + 提示链系统化处理多步骤任务(有工具时最佳)
需求模糊翻转交互 → 分层提示 →(在提示词内)执行先澄清后执行

这些是默认起点,不是铁律。命中多类型就合并取并集后裁剪到 2–4 个;策略堆太多会互相干扰。

策略速查(14 项,纯文本可写入提示词)

策略如何写进提示词(一句话)适合
提示重复 Prompt Repetition在提示首尾各重申一次核心指令/关键约束(共 2–3 次)标准化、格式控制、指令遵循
倒装选项 Option-First MCQ把候选选项放到问题之前,先锚定答案范围再提问选择题、分类、客观题
角色+规则双保险 Role-Rule"你是 X 领域专家,严格遵守规则 Y;若违反先答'错误'并自我纠正"专业问答、合规、高精度
反向验证 Self-Contrast"先给答案 → 列 3 条可推翻它的证据并打分(1–5) → 据此复核修正"事实问答、减少幻觉、高风险判断
符号占位符 Symbolic Placeholder"把最终答案放在 ▶︎▶︎answer▶︎▶︎ 之间,否则视为无效输出"抽取、精准提答、结构化、可解析
知识时间戳 Knowledge Time-Stamp"截至 YYYY-MM ……;此后的新信息请标注'可能已过期'"时效性问答、行业动态
分层提示 Layered Prompt目标 → 规则 → 示例 → 格式 四层组织指令多约束复杂指令、长文本
镜子测试 Mirror Test末尾加"再读一遍你的回答,你会改哪一句?只输出修改后的整句"校对、润色、最终质检
翻转交互 Flipped Interaction"执行前先就以下 3 点向我提问澄清,再按我的回复执行"需求模糊、个性化定制
链式思考 CoT"think step by step,逐步推导并给出每一步理由"数学、逻辑、多步推理
提示链 Prompt Chaining拆成【步骤1 → 步骤2 → 步骤3】,前一步输出喂给下一步(写成单条顺序提示)长文摘要、多步分析、流水线
元提示词 Meta-Prompting"先针对这个会反复执行的任务生成一个更优提示词,再用它执行"重复性任务、提示词自优化
思维树 ToT"列 3 条推理路径 → 各评可行性(1–10) → 选最优分步推导 → 失败则回溯次优"高难推理、决策、规划
ReAct"按 思考 → 行动 → 观察 循环:先想做什么、再行动、再判断是否调整"(有工具/检索时最佳)Agent、工具调用、检索+推理

每项的完整模板、原理与来源见 references/strategies.md

一个完整示例

原始输入: 下面哪个数是质数?51、57、61、91

(内部判断,不写出) 类型 = 选择题/客观判定 → 组合 = 倒装选项 + 符号占位符 + 反向验证

你的整条回复就是下面这个代码块(注意:不解题、不泄露答案、块外无字):

请从下列候选中判断哪个数是质数:
A. 51    B. 57    C. 61    D. 91

问题:上面四个数中,哪一个是质数?

作答要求:
1. 先对每个候选独立做试除检验:用所有满足 p×p ≤ n 的质数 p(2、3、5、7……)依次试除;能整除则为合数并写出分解式,都不能整除则为质数。
2. 给出明确答案后,再列出 3 条可能推翻该答案的证据,并为每条可信度打分(1–5);若总分 > 0,据此复核并在必要时修正答案。
3. 必须把最终答案(对应字母)放在 ▶︎▶︎answer▶︎▶︎ 之间,例如 ▶︎▶︎C▶︎▶︎,否则判为无效输出。

常见错误

错误纠正
在代码块前后加引言/解读/点评整条回复只给代码块,块外零字符
把原始问题的答案算出来或泄露进输出你在造可复用模板,不是答题;让目标模型去算
套用需要 API/解码控制的策略(温度衰减、多次独立运行、动态少样本)只用纯文本策略;这三项已被排除(见下)
一口气堆 5+ 个策略控制在 2–4 个,匹配类型即可,堆太多互相干扰
任务模糊时自己回头问用户把"先澄清后执行"写进重构后的提示词里(翻转交互),仍只输出一个代码块
输出里残留 {占位符}产出是成品;把原始问题的具体内容填进去(留给终端用户填的字段除外)

被排除的策略

以下 3 项需要多轮运行 / 多次独立采样 / 逐 token 解码控制,无法塞进一条自包含的提示词,故本 skill 默认不用:

  • 动态少样本 Dynamic Few-Shot(需先跑一轮再抽取自身输出做样本)
  • 自洽性检查 Self-Consistency(需多次独立运行后投票;单提示场景下用「反向验证」替代)
  • 温度衰减解码 Temp-Decay Sampling(需按 token 调温度,属解码参数)

若用户确实掌握 API/解码控制或可多轮编排,这三项的原始模板见 references/strategies.md 末尾,可作为提示词之外的"设置与流程"建议提供——但那已超出"只输出一个提示词代码块"的默认契约,需先与用户确认。

Related Skills