job-yang/jobyang-ai-skills/sansi-erhouxing
Claude Code and agent skill by job-yang/jobyang-ai-skills
- community
Checking that the SKILL.md file is still in the repository.
三思而后行:改任何已成形文档之前,先看全文骨架再动手,别只盯一段、别补丁摞补丁。用户说「改稿/加一节/精简润色已有段落/按评审意见改」时用。小改有投入闸门:≤3 句的微调只列影响面、免通读全文。前置动作技能,跟写作/改稿技能并行不占名额;从零新写、一句话答疑不启用。
Install
npx vskill@latest install job-yang/jobyang-ai-skills/sansi-erhouxingSKILL.md
三思而后行 · 改前通读的自律流程
改任何已成形的文档之前,先看整体,再动手。软约束,不阻断交付,只挡在"要动手改"这个动作前面。
范围说明:只管文档类产物(文章、调研、方案、技能文档等成形文字)的修改。代码/工程改动不在本技能范围。它是前置动作,跟写作/改稿技能并行,不是二选一。 那些技能管怎么把内容写好,本技能管动手之前先看整体——顺序是:先三思(看骨架、判断这处怎么改才不破坏整体),再动手写/改。本技能不吞文体:改的是哪类成稿(分享/观点硬文/方案/畅想),改完仍由那个文体主导,不从零新写、也不是只做一遍润色;实质修改先过本技能看骨架,再回原文体成稿。
0. 投入闸门:先定改动大小,再定走哪条道
不是所有改动都值得通读全文。先数清楚改动多大,再选流程——投入和问题大小匹配,小改大查是纯开销,大改小查是留硬伤。
| 档位 | 判据(数得出来的才算) | 走哪条道 | |
|---|---|---|---|
| 微改 | 改动 ≤3 句;不新增、不删除整段;不改任何一节的观点,只调措辞/改错/补一句事实 | 微改道:免通读全文,只做第二步"列影响面"(含前后向引用核对,见 §2)。说得出"这处改了谁会跟着变"才许下笔 | |
| 小改 | 改一节内的内容、或 4 句以上的措辞加工、或新增 1 个自然段 | 小改道:通读骨架出骨架清单(§2 第一步)+ 列影响面 + 三问过闸 | |
| 大改 | 删除整段/整节、合并章节、新增一节、通篇优化(没指改哪儿)、改一节的观点 | 大改道:完整流程全跑,三个检查器(围栏登记、首句连读)全上,报告写下来 |
判据模糊时按大的那档走。 数不准"删一段算微改还是小改"——删段落一律大改道,Chesterton 围栏检查必做(§2 问一)。
1. 触发场景(反模式清单)
命中任一即启动:
- 评审/反馈意见指出某处有问题,准备直接冲上去改那一处,没回头看全文。
- 用户说「改一下」「加一段」「顺手改一下」「只改这一处」「补一下」「快速改一下」。
- 用户说「润色一下」「精简一下」「压缩这段」「顺一顺」——文字加工也是改已有内容,先看这段在骨架里的位置再动。
- 用户丢一整篇说「优化一下」「通篇顺一顺」,没指改哪儿——别逐句润色,先抽骨架,自己找出承接断了、论据放错节、结论收不全的地方(细则见
doc-scope.md)。 - 新增一段/一节准备挂在已有文档末尾。
- 迭代一个已有技能文档、方案、配置说明。
不触发:从零新起一篇(没有既有骨架可通读)、纯一句话答疑、明确说"随手写个一次性草稿"。
2. 三步硬约束(按 §0 选定的档位跑)
底子是三条业界经典:Shotgun Surgery(改一处连带看多处)、Chesterton's Fence(拆之前先搞清它为什么在)、Outline-First(骨架先立)。源头见 references/prior-art.md。每条经典现在都配了一个能照做、能检查做没做的动作。
第一步:通读骨架 → 产物:骨架清单
按载体读到位,然后必须写出骨架清单这个产物(微改道可免)。格式硬规定:
要求:5–10 行;每节一句陈述句(标题是形式,观点才是骨头);用 ← 标出本次改动落点。 读完把清单顺一遍:相邻两节的观点接得上吗?立不住的节就是空模板,先标记。
填好的样例(假设要改《内部 API 文档为什么没人看》第 3 节):
看到落点在 §3,顺手就该发现:§5 的解法写着"先治二和三"——§3 的观点一动,§5 的解法条目就得跟着动。这一步不写清单,这个牵连看不见。
第二步:列影响面 → 产物:影响面清单 + 前后向引用核对表
两栏写下来,再加一张核对表(微改道只跑这一步):
- 这次要动的点:准备改/新增/删除的具体位置。
- 跟这个点相关的既有逻辑:前后章、已有的类似论述、下游依赖此处的章节。
检查器①|前后向引用核对表(对着文档真的查,不是凭印象):
| 我要改的点 | 前向:它依赖谁(它引用的编号/概念/术语/数据) | 后向:谁引用它(哪节提到这个概念、用了这个编号) | |
|---|---|---|---|
| 例:§3"太长" | 无(此处首提) | §2 的类比"3 行埋在 30 页";§5 解法"先治二" |
规则:后向那栏列不全,不许下笔。常见漏项:章节编号(§3 变 §2 后正文里"见第三节"全失效)、被别节当例子用的术语、结论节里对应病因的解法条目。
第三步:三问过闸(一问一个动作,不许心里默念)
问一:这个点之前动过吗?(Chesterton's Fence) → 前置一步:核对用户给的删除/合并理由。 用户说"这段重复/没用/跟别节撞了"才要删或合并时,先花一步对着文档核一遍:他给的理由成立吗?把核对结论明牌写成一句——"理由成立 / 不成立 / 部分成立" + 一句证据(例:"第 3 节'太长'与第 2 节'没想读者'不重复,是并列病因,理由不成立")。结论不影响执行——用户坚持要删照删——但理由核错了必须说破,因为它决定围栏表"谁兜底"那栏怎么写。 → 检查器②|围栏登记表:只要涉及删除/整段大改,动手前必须填这一行——
写不出"它原本服务谁"这一行 = 还没搞懂它为什么在,不许删;写得出但"谁兜底"是空 = 也不许删,回去补兜底方案再动手。
问二:修法的风险比原问题大吗?(Band-Aid 反模式) → 动作:把准备用的修法写一句话,再写一句"这个修法可能引入什么新问题"。写不出新问题 = 没想清楚;新问题比原问题扎眼 = 换修法,别硬扛。
问三:改这一处,会不会破坏整体连贯?(Shotgun Surgery) → 检查器③|相邻节首句连读 + 缺口如实登记:改完任何一节,把改动节 + 它前一节 + 后一节的首句抽出来连读一遍,结果写成一句登记:
- 读着顺 → 登记"连读顺,无缺口"。
- 读着别扭、要靠"其实""另外"硬接 → 先如实登记缺口:"缺口:从 X 节跳到 Y 节,缺一句什么"(例:§2 讲病因一,§4 直接讲截图旧,中间缺一个"还有别的病因"的转进)。登记之后再决定补不补过渡句;即使最终判断不补,这条缺口登记也必须留在报告里。
- 禁止把别扭论证成通顺:不许用"并列清单本来就不需要过渡""它们是平行关系"这类理由直接判无缺口。顺不顺是读出来的,不是论证出来的。
三问任一不过,给「不改」或「回骨架重设计」,不许硬修。
3. 改动类型 → 走哪些检查(速查)
完整矩阵见 references/check-routing.md。最小集:
| 改动类型 | 必跑动作 | |
|---|---|---|
| 调措辞(≤3 句、不动观点) | 只跑影响面两栏 + 引用核对表后向栏 | |
| 改一处(一节内内容) | 骨架清单 + 影响面全表 + 首句连读测试 | |
| 删整段/整节 | 微改道豁免取消,按大改:理由核对(用户说的"重复/没用"成立吗)+ 骨架清单 + 围栏登记表(必填)+ 引用核对表全栏 + 首句连读(别扭先登记缺口) | |
| 合并章节 | 理由核对("两节重复"成立吗)+ 围栏登记(两边各填一行)+ 引用核对(编号失效排查)+ 首句连读(别扭先登记缺口) | |
| 新增一节 | 骨架清单先标插入位置 + 重叠排查(已有章节覆盖过吗)+ 首句连读 | |
| 通篇优化(没指改哪儿) | 抽骨架 → 体检四步(承接/论据归位/闭合,细则 doc-scope.md)→ 体检查出的问题即改稿清单 |
4. 骨架优先(文档场景专用)
新写和大改文档时:骨架先立,内容后填,过渡最后加(对应 Outline-First)。列骨架 → 顺骨架 → 填内容 → 加过渡,每一步的判据、"没指定改哪儿怎么抽骨架体检"、"改一节后回扫哪三条",细则全在 references/doc-scope.md,本页不重复。
5. 产出:改前通读报告
大改道写下来,小改道口头说清,微改道一句话交代:
三问任一不过,给「不改」或「回骨架」,不许硬修。
6. 反模式硬禁止
- 「先改上再说,以后统一整理」:补丁摞补丁的入口,禁止。
- 「小问题快速改一下」:再小也要过投入闸门——≤3 句免通读可以,免列影响面不行。
- 「只改这一处,不动其他的」:不看引用核对表就不知道要不要动其他。
- 「说优化就逐句润色」:没指改哪儿时先抽骨架,论据放错节、结论收不全这类骨架病逐句读永远读不出来。
- 「新增的挂在末尾」:挂末尾也是骨架的一部分,先查 §3 重叠排查。
- 「上次刚删的又加回来」:不过问一动笔,禁止。
- 「凭感觉挺顺」:连贯与否必须列首句连读,不许凭感觉下结论。
7. 力度与豁免
- 大改道(对外文档/已发布技能文档更新/删段合并):三步全跑,报告写下来。
- 小改道(内部文档修改/手记类):三步跑,报告口头说清。
- 微改道(≤3 句措辞/typo/事实补一句):只列影响面 + 引用核对后向栏,一句话交代改动落点。
- 豁免:一次性丢弃的草稿、纯一句话答疑,跳过;豁免要在心里对自己说一句"这是草稿,不是产出",说出口才算数。
8. 出稿前自检
- 投入闸门先判档了吗?判据是数出来的,不是感觉的?
- (小/大改道)骨架清单写了吗:5–10 行、每节一句陈述句、落点标了吗?
- 影响面两栏列全了吗?引用核对表后向栏(谁引用了我要改的点)查了吗?
- 涉及删除时,围栏登记表那一行写了吗——"原本服务谁"和"谁兜底"都不空?
- 连贯判断是列首句连读得出的,还是凭感觉?
- 三问任一"不过",有没有硬修?
任一答不上,回去补。软约束不是可跳过,是"跑不过不阻断,但要显式说出豁免理由"。
9. 文件路由
| 文件 | 什么时候读 | |
|---|---|---|
SKILL.md(本文件) | 每次启用都读。含投入闸门、三步 + 三个检查器、改动类型速查 | |
references/check-routing.md | 拿不准本次改动"最小检查集"是哪几项时(改一处/删整段/合并章节/新增一节/调措辞 各自的完整动作清单) | |
references/doc-scope.md | 通篇优化/新写大改文档时:骨架四步判据、无指定改动点的骨架体检四步、改一节后的回扫规矩 | |
references/prior-art.md | 需要跟人解释"这套流程凭什么"时:Shotgun Surgery / Chesterton's Fence / Outline-First 的出处 |
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/sansi-erhouxing/SKILL.md
Popularity
- Repository stars
- 92
- Repository forks
- 5
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/job-yang/jobyang-ai-skills/sansi-erhouxing)