[{"data":1,"prerenderedAt":98},["ShallowReactive",2],{"header-counts":3,"footer-counts":6,"prompt-refactor-safe":9},{"tools":4,"reviews":5},65,7,{"tools":4,"reviews":5,"playbooks":7,"news":8},10,8,{"id":10,"title":11,"body":12,"description":84,"extension":85,"meta":86,"navigation":87,"path":88,"seo":89,"stem":90,"tags":91,"targetTools":93,"__hash__":97},"prompts\u002Fprompts\u002Frefactor-safe.md","重构 Prompt：安全改一段代码",{"type":13,"value":14,"toc":76},"minimark",[15,19,23,27,38,41,54,57,60,73],[16,17,18],"h2",{"id":18},"用法",[20,21,22],"p",{},"选中要重构的代码段，配合下面的 prompt：",[16,24,26],{"id":25},"prompt","Prompt",[28,29,35],"pre",{"className":30,"code":32,"language":33,"meta":34},[31],"language-text","请重构下面这段代码，要求：\n\n**目标**：{改进可读性 \u002F 提取函数 \u002F 消除重复 \u002F 改名 — 选 1}\n\n**铁律**：\n1. **不改变行为**。重构前后所有可观测行为必须 100% 一致（输入 → 输出 \u002F 副作用）。\n2. **不增加新功能**。如果你看到一个 bug，**告诉我但不要修**。\n3. **不改 public API**（函数签名、导出名）。\n4. **保留所有错误处理**。即使原代码错误处理写得很烂，也保留。修是另一个 PR 的事。\n5. **保留所有注释**（除非注释明显不再准确）。\n\n**输出**：\n- 重构后的完整代码\n- 一份 changelog：每条说明你**做了什么** + **为什么不破坏行为**\n- 如果你看到 bug 或可疑代码，列在最后，**不要顺手改**\n\n代码：\n```\n\u003Cpaste here>\n```\n","text","",[36,37,32],"code",{"__ignoreMap":34},[16,39,40],{"id":40},"为什么有效",[42,43,44,48,51],"ul",{},[45,46,47],"li",{},"\"铁律\"列得越具体，AI 越不容易\"自作主张\"",[45,49,50],{},"\"看到 bug 也不修\"是关键——AI 经常把重构 + bug fix 混在一起，让 review 变噩梦",[45,52,53],{},"\"changelog 解释为什么不破坏行为\"逼 AI 真正思考等价性，而不是拍脑袋改",[16,55,56],{"id":56},"进阶",[20,58,59],{},"如果代码段大、不放心 AI 一次改完，分两步：",[61,62,63,70],"ol",{},[45,64,65,66],{},"第一轮 prompt 加：",[67,68,69],"strong",{},"\"不要写代码，先告诉我你打算做哪些改动，列清单。\"",[45,71,72],{},"看清单 → 删掉你不同意的项 → 再让它执行剩下的",[20,74,75],{},"更安全。",{"title":34,"searchDepth":77,"depth":77,"links":78},3,[79,81,82,83],{"id":18,"depth":80,"text":18},2,{"id":25,"depth":80,"text":26},{"id":40,"depth":80,"text":40},{"id":56,"depth":80,"text":56},"让 AI 重构代码时不要顺手改行为？用这条 prompt 强制它","md",{},true,"\u002Fprompts\u002Frefactor-safe",{"title":11,"description":84},"prompts\u002Frefactor-safe",[92],"重构",[94,95,96],"Claude Code","Cursor","Windsurf","yYZ5mbpy8o88JySD2OQPueTfy-tWBRoIlzw7Ajb7frI",1782316489340]