Summary
多轮对抗式稿件打磨技能。通过"批评→改写→综合→盲评"循环,像学术同行评审一样反复打磨稿件直到收敛。所有中间产物(批评、改写、综合、评分)保存为独立文件,完整记录进化过程。当用户说"对抗打磨""反复打磨""深度打磨""多轮润色""盲评打磨""打磨到收敛""帮我把这篇稿子磨一磨""pressure…
jimliu/illustrated-agent-skills · Archived
>- 多轮对抗式稿件打磨技能。通过"批评→改写→综合→盲评"循环,像学术同行评审一样反复打磨稿件直到收敛。所有中间产物(批评、改写、综合、评分)保存为独立文件,完整记录进化过程。当用户说"对抗打磨""反复打磨""深度打磨""多轮润色""盲评打磨""打磨到收敛""帮我把这篇稿子磨一磨""pressure polish""adversarial polish"时触发。也适用于用户说"这篇稿子很重要,帮我好好打磨"或"我需要更高质量的润色"等暗示需要?
npx skills add jimliu/illustrated-agent-skills --skill adversarial-polish
多轮对抗式稿件打磨技能。通过"批评→改写→综合→盲评"循环,像学术同行评审一样反复打磨稿件直到收敛。所有中间产物(批评、改写、综合、评分)保存为独立文件,完整记录进化过程。当用户说"对抗打磨""反复打磨""深度打磨""多轮润色""盲评打磨""打磨到收敛""帮我把这篇稿子磨一磨""pressure…
This repository is archived — consider an actively maintained alternative.
素材深度分析技能。当用户提供文章、推文、视频文稿等? 适用于:(1) 理解素材核心观点和论证逻辑,(2)…
6 installs科技专栏提纲生成技能。当用户提供素材(文章、推文、视频文稿等) 要求生成写作提纲时使用。生成 3-5…
3 installs把任何输? 适用于新闻、报道、长文、研究报告、论文、政策文件、产品资料、官方博客、链接等各类信息…
3 installsRelated neighbors and high-traction skills in the same topics — useful to compare before installing.
Helps users discover and install agent skills when they ask questions like "how do I do X", "fi…
3.3M installsBrowser automation CLI for AI agents. Use when the user needs to interact with websites, includ…
810.4K installsReview UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "chec…
617.3K installsBuild, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and …
576.5K installsPrepare azd-based Azure projects for deployment: generates azure.yaml, infrastructure (Bicep/Te…
568.3K installsOther skills from jimliu/illustrated-agent-skills.
npx skills add jimliu/illustrated-agent-skills
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
main
Parsed from SKILL.md frontmatter.
Files included with this skill beyond the listing page.
SKILL.md
16,520 B
SUMMARY.md
766 B
用独立角色的对抗与盲评替代主观判断,让稿件在"批评→改写→综合→盲评"的循环中自然收敛到最优状态。
单次润色的问题:模型要么过度迎合(你说改我就改),要么过度批判(为了批而批),要么过度折中(两边都不得罪)。结果是稿件被 prompt 的措辞而非内容质量所左右。
对抗式打磨的解法:把每个角色拆成独立视角,各自只看到必要信息,然后让盲评来决定谁赢。赢家成为新基准,循环直到没人能改得更好。
对抗式打磨的一切价值都建立在上下文隔离之上。 如果所有角色共享同一个上下文窗口,模型会不可避免地受到前序角色输出的污染——稻草人的批评会让改写者过度迎合,综合者会偏向后看到的版本,评委会被改写说明暗示。这不是"注意力不集中"的问题,是架构层面的根本缺陷。
每个角色必须作为独立的 sub-agent 生成(spawn)。 这是硬性要求,不是建议。
具体做法:
关键原则:
稻草人 prompt:
你是一位挑剔的资深中文科技内容编辑。你的任务是审阅一篇文章,只找问题,不给修复方案。
## 任务描述
{task_prompt}
## 待审阅文章
{current_A_text}
## 你的职责
[...稻草人角色指令全文,见下方"角色 1"章节...]
请直接输出批评报告,不要输出任何前言。
改写者 prompt:
你是一位有能力的中文科技内容作者。你需要根据一份批评报告改写一篇文章。
## 任务描述
{task_prompt}
## 原文
{current_A_text}
## 批评报告
{strawman_critique}
## 你的职责
[...改写者角色指令全文,见下方"角色 2"章节...]
请输出完整的改写版本,不要输出任何前言。
综合者 prompt:
你是一位客观的中文科技内容编辑。你面前有同一任务的两个版本,需要取长补短合成最优版本。
## 任务描述
{task_prompt}
## 版本甲
{randomly_assigned_version_1}
## 版本乙
{randomly_assigned_version_2}
## 你的职责
[...综合者角色指令全文,见下方"角色 3"章节...]
请输出完整的综合版本,不要输出任何前言。
评委 prompt(每位评委相同模板,独立 spawn):
你是一位盲审评委。你需要从三个版本中选出最好的一个。你不知道这些版本的作者或来历。
## 任务描述
{task_prompt}
## 版本 X
{randomly_labeled_version_X}
## 版本 Y
{randomly_labeled_version_Y}
## 版本 Z
{randomly_labeled_version_Z}
## 你的职责
[...评委角色指令全文,见下方"角色 4"章节...]
请直接输出你的排名和理由,不要输出任何前言。
Claude.ai 没有 sub-agent,所有角色在同一个上下文中执行。这意味着真正的上下文隔离无法实现。为了尽可能模拟隔离效果:
- 上下文中已有 → 直接使用 - 用户上传文件 → 直接使用 - 用户给出 URL → 使用 web_fetch 获取
`` <文章目录>/adversarial-polish/ ├── round-0/ │ └── A-original.md # 原始稿件 ├── round-1/ │ ├── strawman-critique.md # 稻草人批评 │ ├── B-rewrite.md # 改写版本 │ ├── AB-synthesis.md # 综合版本 │ ├── judge-ballots.md # 三位评委投票 │ └── round-summary.md # 本轮总结 ├── round-2/ │ └── ... ├── evolution-log.md # 全程进化日志 └── final/ ├── final-article.md # 最终定稿 └── polish-report.md # 打磨报告 ``
- 向用户确认或自动生成一个清晰的"任务描述"(task prompt),作为所有角色的锚点 - 示例:"将这篇关于 AI Agent 架构的技术博客打磨到可发布水平,目标读者是有一定技术背景的中文互联网用户" - 这个 task prompt 所有角色都能看到,是唯一的共享上下文 - task prompt 中应包含写作风格要求(如有),比如目标读者画像、语言风格偏好、术语处理规范等
round-0/A-original.md每轮循环包含四个角色 + 一个收敛判断。
⚡ 执行方式:spawn 为独立 sub-agent(使用上方稻草人 prompt 模板)
身份: 一个挑剔的资深读者/编辑。
可见信息: 任务描述 + 当前版本 A(仅此而已,不看历史批评和修改)。
职责:
- 结构:逻辑是否通顺?段落顺序是否最优?有没有多余或缺失? - 表达:有没有 AI 味?有没有废话?节奏感如何? - 读者体验:开头抓人吗?中段有没有走神点?结尾有力吗? - 信息密度:有没有灌水?有没有信息过载? - 说服力:论证逻辑有没有漏洞?有没有未支撑的断言?
输出格式:
# 稻草人批评报告 - 第 N 轮
## 总体印象(2-3 句话)
## 问题清单
### 🔴 致命问题
1. [具体位置] [问题描述]
2. ...
### 🟡 显著问题
1. [具体位置] [问题描述]
2. ...
### 🟢 轻微问题
1. [具体位置] [问题描述]
2. ...
## 稻草人总结
- 致命问题 X 个,显著问题 Y 个,轻微问题 Z 个
- 最关键的一个问题是:[...]
保存到: round-N/strawman-critique.md
⚡ 执行方式:在稻草人完成后,spawn 为新的独立 sub-agent(使用上方改写者 prompt 模板)
身份: 一个有能力的作者,接到了修改任务。
可见信息: 任务描述 + 当前版本 A + 稻草人批评报告。
职责:
输出: 完整的改写版本(不是 diff,是完整文章)。
在文章末尾附上改写说明:
---
## 改写说明
- 采纳批评 N 条,忽略 M 条
- 主要改动:[列出 3-5 个关键修改]
- 忽略理由:[解释为什么某些批评不采纳]
保存到: round-N/B-rewrite.md
⚡ 执行方式:在改写者完成后,spawn 为新的独立 sub-agent(使用上方综合者 prompt 模板)
身份: 一个客观的编辑,面前有两个版本,需要取长补短。
可见信息: 任务描述 + 版本 A + 版本 B(随机标记为"版本甲""版本乙",打乱顺序避免位置偏差)。
职责:
输出: 完整的综合版本。
在文章末尾附上综合说明:
---
## 综合说明
- 版本甲贡献:[哪些段落/表达来自甲]
- 版本乙贡献:[哪些段落/表达来自乙]
- 原创融合:[哪些地方做了创造性合并]
保存到: round-N/AB-synthesis.md
⚡ 执行方式:同时 spawn 3 个独立 sub-agent 并行执行(使用上方评委 prompt 模板)。三位评委之间完全隔离,互不可见。
身份: 三位独立评委,只关心"哪个版本最好地完成了任务"。
可见信息: 任务描述 + 三个版本(随机标记为 X/Y/Z,打乱顺序,隐去所有作者信息和改写说明)。
重要: 提交给评委的版本必须去掉末尾的"改写说明"和"综合说明",只保留文章正文。
评判标准:
每位评委独立排名并给出理由,然后用 Borda 计分汇总:
# 盲评投票 - 第 N 轮
## 评委 1
排名:[X > Y > Z] 或其他顺序
理由:[2-3 句话]
## 评委 2
排名:[...]
理由:[...]
## 评委 3
排名:[...]
理由:[...]
## Borda 计分
(第一名 2 分,第二名 1 分,第三名 0 分)
| 版本 | 评委 1 | 评委 2 | 评委 3 | 总分 |
|------|-------|-------|-------|------|
| X | ? | ? | ? | ? |
| Y | ? | ? | ? | ? |
| Z | ? | ? | ? | ? |
## 结果
- 胜出版本:[X/Y/Z](揭晓为 [A/B/AB])
- 得分差距:[大/小/微弱]
保存到: round-N/judge-ballots.md
每轮结束后,检查收敛条件:
- streak = 2 → 收敛! 循环结束 - streak < 2 → 继续下一轮(A 不变)
安全阀: 最多循环 4 轮。如果 4 轮后仍未收敛,取历史最高分版本作为最终结果。
每轮结束生成轮次总结:
# 第 N 轮总结
- 稻草人发现:🔴 X 个 / 🟡 Y 个 / 🟢 Z 个
- 改写者采纳:M 条批评
- 盲评结果:[版本] 胜出(Borda 分 X 分)
- 收敛状态:streak = N / 未收敛,继续
- 当前最佳版本:[来源说明]
保存到: round-N/round-summary.md
汇总所有轮次的演变过程,保存到 evolution-log.md:
# 稿件进化日志
## 任务描述
[task prompt]
## 进化轨迹
### 第 1 轮
- 稻草人核心批评:[...]
- 改写关键改动:[...]
- 盲评结果:[版本] 胜出
- streak: 0 → N
### 第 2 轮
...
## 收敛分析
- 总轮次:N
- 收敛方式:[A 连续两轮胜出 / 达到最大轮次]
- 最终版本来源:[第 X 轮的 A/B/AB]
- 关键进化点:[稿件在哪些方面有了质的提升]
final/final-article.md):干净的文章正文,不含任何说明final/polish-report.md):- 原文 vs 定稿的关键差异摘要 - 主要改进点(3-5 个) - 每个改进的具体对比示例(原文 → 定稿) - 质量评估: - H (Hook):标题和开头能否抓住读者? - K (Knowledge):读完有没有收获?信息密度够不够? - R (Resonance):有没有共鸣点?能否引发"我也这么想"?
outputs/将以下文件复制到输出目录:
final-article.md — 最终定稿polish-report.md — 打磨报告evolution-log.md — 进化日志使用 present_files 展示最终定稿和打磨报告。
有 sub-agent 时:每个角色必须 spawn 为独立 sub-agent。 这是对抗式打磨的根基,详见上方"执行模型"章节。
每个 sub-agent 只接收其"可见信息"范围内的内容:
所有角色都必须尊重原文的核心观点、态度和风格。打磨是优化表达,不是重写内容。改写者和综合者首先忠于原作者的意图。
评委必须真实评判,不能"为了显示价值而选新版本"。如果原版确实更好,就选原版。真正好的内容能经受住对抗式检验。
每个角色的每次输出都保存为独立文件。这不仅是为了可追溯,也让用户可以在任何阶段介入:
如果用户明确说"快速打磨"或稿件较短(< 1000 字),可以缩减:
默认使用完整模式。
循环中的每一轮结束后,简要向用户报告本轮结果。默认自动继续下一轮,除非:
每轮开始时告诉用户当前状态:
第 2 轮开始(streak=0,上轮 AB 综合版胜出,已替换为新基准)
稻草人正在审视新基准…