superpowers技能包实战指南:让AI辅助开发输出稳定可预期
这年头做 AI 辅助开发的人十个里有九个都在跟“提示词质量”较劲。我之前也一样天天调的 prompt 长了又长效果却时好时坏。直到我把 superpowers 这套技能体系引进来才意识到问题根本不是“问得不够细”而是 AI 缺少一套可复用的、能按固定套路执行的方法包。这篇文章不聊虚的直接从安装、引入、技能拆解到避坑完整过一遍 superpowers 的实际用法。如果你想知道它到底包含哪些 skills、怎么装进自己的开发环境、又怎么在日常工作中真正触发它们那这篇应该能给你省下不少弯路。1. superpowers到底解决的是哪类痛点1.1 为什么“会提问”不等于“会干活”先说个非常典型的场景。你给 AI 编程工具扔过去一段代码说“帮我看看这段逻辑有没有问题”它通常能给出一个听起来很合理的答案。但你再追问一句“这个问题在哪一层出现的、怎么复现、影响范围多大”它就开始含糊了。原因很简单普通对话式提问是零散的每次 AI 都要临时理解你的意图、临时组织回答路径效果自然不稳定。superpowers 解决的就是这个问题。它把“理解代码”“定位缺陷”“生成测试”“评估方案”这些高频动作拆成一个个独立、可重复调用的技能模块。每个模块内部有明确的执行步骤和检查点AI 一旦识别到你要调用某个技能就会按固定流程走完整套动作而不是凭“感觉”给你一个泛泛而谈的结论。打个比方普通 prompt 像是你问一个实习生“这东西坏了你看看怎么回事”实习生可能凭直觉拆几下superpowers 则像给这个实习生一份检修手册手册里写明先查供电、再查信号、最后查负载每一步该测什么、什么时候停下来汇报。前者看运气后者看流程。1.2 技能包和普通提示词模板的区别很多人第一次接触 superpowers 都会有个困惑这不就是一堆写好的 prompt 吗我自己也这么想过用下来才发现差别很大。普通提示词模板是一段静态文字作用范围只限当场那次对话换个对话上下文就得重新粘贴。superpowers 中的每个 skill 是放在固定目录下的结构化说明文件AI 工具启动时会自动把它加载进可调用范围。你不需要每次粘贴只需要用自然语言表达意图AI 会自动匹配对应技能。普通模板难以组合比如“先审查我的代码再针对问题写测试”你要把两个模板手工拼在一起superpowers 的技能之间可以按顺序编排AI 会把上一个技能的产出作为下一个技能的输入形成一条完整流水线。这后面两个特点才是它值钱的地方。结构化意味着可管理、可复用可编排意味着能完成复杂任务而不是单点问答。我把这理解为“把零散的经验固化成团队的作业标准”这一点对长期使用 AI 做开发的团队来说价值远大于几条调得再好的 prompt。2. 动手前先理清准备事项2.1 安装前要确认的几个条件我在第一次安装时踩了不少坑基本都是环境问题所以这里先说清楚前置条件。superpowers 本质上是给 AI 编程工具提供“技能库”所以它依赖的是你已有的 AI 编程终端或 IDE 插件而不是独立运行的程序。按我的实践经验安装前至少要确认三件事你用的 AI 编程工具是否支持自定义 skills 目录。大部分主流 AI 编程终端、编辑器扩展都支持但具体的配置方式有差异。有些支持~/.config下的全局目录有些只认项目内的.xxx目录还有的会在首次启动时自动扫描。别想当然先看一眼工具的官方文档确认它读取技能包的路径规则。终端环境和 Git 是否就绪。因为安装动作本质上是从 GitHub 拉取项目所以本地要有 Git而且网络要能正常访问代码托管平台。注意我说的是正常访问不需要任何额外的网络工具如果你平时拉公开代码仓库都有问题那大概率也拉不动这个项目可以先换个时间段或镜像源再试。AI 工具的版本够不够新。技能包能否被自动加载和工具的版本关联很大。老版本可能只认固定的几个技能目录新版本才支持扫描自定义 skill 目录。我之前在一台旧版本工具上配置了半天都没生效升级之后同一套配置立刻就好了。2.2 skills 目录结构长什么样理清目录结构是理解 superpowers 的关键因为这决定了你把技能文件放在哪里、AI 才能找得到它。常见情况下superpowers 的项目仓库里会有一个集中存放技能的子目录例如根目录下的skills/文件夹。这个文件夹内通常每个技能一个子目录子目录里包含一个用 Markdown 编写的技能定义文件里面有技能的名称、适用场景、调用条件、执行步骤可能还会附带示例数据或模板文件辅助 AI 在执行时更好地组织输出。以我本地的实际布局为例大致是这个样子superpowers/ skills/ code-review/ SKILL.md test-generation/ SKILL.md examples/ debug-triage/ SKILL.md如果你把整个项目拉到本地后发现结构比这更复杂不用慌。核心仍然是找到那个技能目录然后在自己的 AI 工具配置里把路径指过去。宁可多花十分钟把目录结构完全摸清楚也别直接复制一个网上看到的路径就开跑因为项目版本更新后目录名可能变。这里有一个我特别想强调的操作习惯不要直接修改 superpowers 项目仓库里的原始技能文件除非你明确要贡献回上游。更好的做法是把项目放在一个独立目录然后在你自己的工具配置里引用它。这样你随时可以拉取更新不会因为本地改坏了导致整个技能库不可用。3. 完整安装流程从拉取到第一句触发3.1 拉取项目与目录落位安装的第一步当然是拉代码。以下是我本地的操作记录因为不同工具的配置目录不同路径我用了通用占位写法你根据自己的环境替换git clone https://github.com/你的目标仓库地址/superpowers.git cd superpowers拉下来之后不要急着复制文件。先看一遍项目根目录下的 README 和目录树确认当前版本的部署方式。有些版本会建议你把skills/目录软链到工具的技能目录有些版本则建议直接在工具配置里指向项目内的路径。我第二次安装时就偷懒没看 README直接按旧经验把文件夹复制到了工具目录结果版本更新后技能文件名变了工具扫描不到白折腾了半小时。所以这里啰嗦一句凡是这类会快速迭代的开源项目第一次部署一定以项目自带说明为准。如果是软链方式一般长这样ln -s /path/to/superpowers/skills ~/.config/your-ai-tool/skills如果是指定路径方式就在工具的配置文件里加一个指向/path/to/superpowers/skills的配置项。两种方式二选一不要同时用否则 AI 可能在扫描时加载到同一个技能的重复副本引发行为冲突后面我会单独讲。3.2 引入技能的具体操作步骤目录落好之后真正的“引入”不是启动工具就完事了还需要让工具在运行时能识别这些技能。常规操作流程大致分四步打开 AI 工具的配置文件找到 skills、技能目录或扩展能力相关的配置段。添加或修改路径让它指向你刚才放好的 superpowers 技能目录。保存配置退出并重启 AI 工具确保它重新扫描了一次技能目录。在终端里输入一条简短的检查指令例如“列出你当前可用的所有技能”看返回结果里是否出现了 superpowers 相关条目。第四步非常关键因为它能帮你确认技能是否真的被加载而不是你以为加载了。我见过太多人配置完不验证直接扔一个复杂任务进去结果 AI 根本没调用任何技能还在按普通对话模式回答于是就开始怀疑技能包有问题。实际上问题通常出在路径或重启步骤上。如果你发现工具列出的技能是英文名不要慌技能内部的说明通常也带英文但使用层面不受影响。你完全可以用中文表达“用代码审查技能帮我看看这段改动”AI 会自己完成技能名称到实际功能的匹配。3.3 用一条指令验证是否生效这里给一条我常用的验证指令帮助你在五分钟内确认安装结果请先读取 superpowers 技能库中关于代码审查的技能说明然后按该技能的完整流程审查我当前工作区中最近改动过的文件只输出问题清单和对应的修改建议。这条指令的设计思路是先强制 AI 读取技能定义再按定义执行动作。如果技能没被正确加载AI 通常会回答“我没有找到这个技能”或“技能库中没有对应内容”这时你就能立刻知道问题出在加载环节而不是执行环节。如果返回的结果是分步骤的、带检查项的、结论比平时细致得多的审查报告说明技能已经生效。我第一次验证时AI 给出的审查意见里居然还包括了“这段代码可能存在的并发边界条件”而普通模式下它只会说“逻辑基本正确”这种对比很明显。4. superpowers 内置技能拆解4.1 代码理解与审查类技能这是 superpowers 里我用得最勤的一类。和普通对话里的“帮我看看代码”完全不一样代码审查技能会先要求 AI 明确审查范围然后分层次检查先看整体结构再看关键函数实现再看错误处理与边界条件最后回到调用方确认影响面。实际用下来它最大的价值在于“会追问”。有一次我让它审查一段支付回调逻辑它在输出结论前主动问了三个问题这笔回调允许重复通知吗幂等键用的是哪个字段失败后重试上限是多少这些问题点醒了我自己都没意识到的隐藏假设。普通模式下的 AI 根本不会想到这些因为它没有一套固定的审查清单去逐项核对。4.2 测试与质量保障类技能测试生成技能不是简单地说“给这段代码写几个测试用例”它会尝试识别被测代码的核心行为分析输入输出约束再据此构造覆盖正常路径、异常路径和边界条件的用例。比如对处理金额的函数它会自动关注小数点精度、最大金额上限、负数输入这些边界。更实用的是这个技能生成测试后还会主动指出代码中的可测试性问题例如“这个函数内部直接依赖了外部时钟不好做确定性测试建议把时间源注入进来”。这种反馈对代码质量的提升比测试本身还要有价值。4.3 调试与性能排查类技能调试类技能是排查线上问题的利器。它会引导 AI 按“收集信息—缩小范围—提出假设—验证假设—输出结论”的套路工作而不是上来就猜。我印象最深的一次是排查一个内存缓慢增长的问题。如果按普通模式AI 会列出一堆可能原因连接池泄漏、缓存无限增长、大对象没释放……听起来都对但完全没法落地。换成 debug 技能后AI 直接建议我先打开堆转储按对象实例数排序然后只分析内存占用最大的那类对象。按这个思路操作十分钟就定位到了根因一个全局缓存 map 只往里写、从不淘汰。这就是带流程排查和凭感觉猜原因的区别。4.4 文档、提交与工作流辅助类技能除了代码相关技能superpowers 里还有一批处理工程协作场景的技能包括变更日志整理、提交说明生成、接口文档撰写等。这些技能的特点是输出格式极其规范例如生成提交说明时会自动判断变更类型区分是重构、修复还是新功能然后按对应模板组织内容。用顺了之后团队里的代码评审体验会好很多因为每一次评审请求里附带的上下文都足够完整评审人不用反复追问“你改了什么、为什么改、影响范围多大”。下表是我整理的部分技能与其典型触发方式方便你建立整体印象技能类别典型能力一句话触发示例代码审查结构、逻辑、边界、影响面用代码审查技能看一下这次改动测试生成正常/异常/边界用例与可测性建议为这个函数生成一组边界测试调试分析信息收集、根因定位、验证结论按调试流程分析这个报错性能排查瓶颈定位与优化建议帮我排查这个接口变慢的原因变更日志归类与格式化输出根据最近提交生成变更日志接口文档参数、返回、异常说明给这个模块生成接口文档5. 配置调优与引入度控制5.1 按项目粒度控制技能生效范围技能的加载是全局还是局部直接决定使用体验。我之前把 superpowers 配成了全局生效结果在写脚本这种轻量任务里AI 也频繁触发代码审查或测试生成输出变得拖沓反而降低了效率。后来我调整为按项目启用需要的时候才在特定项目里引入技能库。这种粒度控制通常有两种办法一种是在项目的本地配置里引用技能目录另一种是在对话中临时指定要加载某个技能。前者适合长期维护的大型项目后者适合偶尔处理的零散任务。我的建议很明确不要把技能库全局挂载。按需引入的效果远好于全量引入否则 AI 会在每一次请求中都做太多“额外思考”响应变慢不说输出还显得啰嗦。5.2 触发方式的三种形态技能触发方式主要有三种弄清楚之后能避免很多误用场景。第一种是显式触发就是用户直接在对话里说“用某某技能做某某事”。这种方式最可靠意图完全明确适合你已经知道自己需要什么工具的时候。第二种是隐式触发用户没有指名要什么技能但 AI 根据任务内容自动判断应该使用哪个技能。例如你说“帮我看看为什么这个接口超时了”AI 自动匹配到性能排查技能。方便是方便但偶尔会匹配偏所以第一种更稳。第三种是编排触发把多技能串成流水线。例如“先审查这段代码再根据审查结果生成测试”AI 会先调审查技能拿到问题清单后调测试生成技能让测试用例直接覆盖审查发现的高风险区域。这种方式适合复杂任务但需要你对技能边界足够了解不然编排出来可能就是四不像。5.3 组合技能的编排顺序编排顺序会影响最终质量。以“代码审查 测试生成”为例正确顺序一定是先审查、后测试因为审查能先暴露风险点测试生成才知道该侧重测哪里。反过来先生成测试再审查测试用例就会基于未经验证的假设质量就差很多。再比如“调试分析 文档生成”的组合调试分析产出的根因说明可以成为文档生成里故障说明部分的事实基础。这种场景下调试结果的质量直接决定文档的价值让两个技能串联执行比各跑各的高效得多。我现在的习惯是遇到复杂任务时先在本子上画一下技能调用顺序再对 AI 说明确指令。虽然看起来多了一步但避免了很多“AI 自动选择错误顺序导致结果不能用”的情况。6. 踩坑记录安装与使用中最容易翻车的环节6.1 技能装好但完全不生效权限与路径排查链路我在本地装好之后遇到过技能完全不生效的情况当时排查链路很有参考价值分享出来给同样踩坑的人。第一步是确认技能目录路径。我在工具配置里填的路径多写了一层目录把技能目录的上级目录填了进去AI 扫描不到任何技能。检查方法很简单直接在终端里对配置的路径执行一次目录列表命令看看第一层呈现的是 SKILL.md 还是子目录结构如果是子目录就要把路径再往下一层指。第二步是检查文件权限。有一次我把项目放在了系统目录下当前用户没有读取子目录的权限导致技能加载失败。排查方式是用普通用户身份执行读取命令如果提示无权限就调整属主。这个问题在 CLI 类工具里特别隐蔽因为错误信息往往不会直接说“技能目录权限不足”。第三步是环境缓存。工具可能会缓存技能清单技能目录更新后它依然按旧列表执行。这种情况通常重启工具就能解决如果还不行就检查工具的技能目录索引文件是否存在手动清理一次再重启。6.2 技能之间互相干扰的根因这是我用了两周后才遇到的问题表现是让 AI 做代码审查它生成的报告里混着一堆测试用例建议输出结构有点混乱。排查后发现原因是工具扫描技能目录时把多个技能包含的示例数据都加载进了上下文。在处理请求时AI 把示例数据当成了任务背景的一部分于是在输出里串了味。解决办法有两个方向一是在技能定义的头部明确写上“这是示例数据仅供格式参考不参与实际分析”让 AI 在读取时自动区分二是把示例数据单独放到子目录并在技能定义中注明只有在需要时才会读取。从我后面的经验看第二种方案更有效因为它直接避免了大段示例文本进场挤占上下文长度。6.3 一个容易被忽略的版本同步问题superpowers 这个项目迭代很快技能文件更新频繁。我早期同步过好几次每次拉完最新代码都发现 AI 的行为模式有细微变化。比如原先某个技能会先输出风险清单再给建议更新后变成了直接给建议、最后附一个简版风险提示。这种“静默变化”很影响团队协作的一致性。团队里如果有人用的旧版技能库有人用新版同一句话触发出的结果就是两套逻辑评审标准对不上。我的做法是固定版本。拉取时记下当前版本号工具配置里也标注版本需要升级时先看变更说明确认没有破坏性变更再更新并且全团队同步升级。这虽然听起来不够“极客”但对于长期用技能库做标准作业的团队来说稳定性永远比新功能更重要。关于 superpowers 引入再补两句实在话如果你刚上手我建议别一上来就把所有技能都加载进去。选两三个最贴合日常工作场景的技能先跑起来比如代码审查和测试生成用顺了再逐步加这样你能清楚感受到每个技能带来的变化到底在哪里。就我自己的经验来说技能库发挥最大价值的地方不是“让 AI 多能干”而是“让 AI 的输出变得稳定、可预期”。它把一次性的灵光乍现变成了重复可用的作业流程这一点在长期项目上尤其值回部署成本。

相关新闻

照明灯具标准体系全解析:从安全底线到市场准入

照明灯具标准体系全解析:从安全底线到市场准入

我在照明行业摸爬滚打了十几年,最深的体会是:让一个新人快速崩溃的方法,就是直接让他把照明灯具标准体系完整翻一遍。GB 7000.1、IEC 60598-1、UL 1598、EN 55015、GB/T 31897……一连串代号砸过来,如果只看单个标准,很…

2026/10/14 7:58:46 阅读更多 →
汽修行业变革:技术升级与经营转型的生存之道

汽修行业变革:技术升级与经营转型的生存之道

1. 汽修行业的现状与困境上周路过小区门口那家开了12年的"老张汽修",发现卷帘门已经拉下,玻璃门上贴着"店面转让"的告示。这已经是今年附近第三家关门的汽修店了。作为在汽车后市场摸爬滚打多年的从业者,我不得不思考&am…

2026/10/14 7:58:46 阅读更多 →
Grok Bot 从零搭建:群组集成与模型对接实战

Grok Bot 从零搭建:群组集成与模型对接实战

1. 从零理解 Grok Bot:它到底能帮你干什么1.1 一个真实的需求场景先说一个我身边经常发生的情况。某开发团队内部有一个几十人的技术交流群,每天消息量在几百到上千条之间。群里有人提问、有人贴日志、有人发链接、有人讨论方案,信息密度很高…

2026/10/14 7:58:46 阅读更多 →

最新新闻

CMS技术演进:从静态生成到云原生架构

CMS技术演进:从静态生成到云原生架构

1. 内容管理系统的前世今生1993年,伊利诺伊大学的学生们为了管理NCSA官网的新闻更新,编写了一个简单的网页发布脚本。这个看似不起眼的工具,后来被公认为世界上第一个内容管理系统(CMS)的雏形。当时没人能预料到&#…

2026/10/14 10:45:54 阅读更多 →
agent-skills 实战:从零构建可靠的 AI Agent 能力体系

agent-skills 实战:从零构建可靠的 AI Agent 能力体系

1. 从零理解 agent-skills:它到底是什么,为什么值得关注 第一次看到 “agent-skills” 这个词,很多人会下意识把它当成某个具体框架或者某个开源库的名字。但如果你最近在关注 AI 应用开发这个圈子,会发现它其实更像是一个正在快速…

2026/10/14 10:45:54 阅读更多 →
收藏 | 超详细解析LLM与Agent,小白也能轻松入门AI开发

收藏 | 超详细解析LLM与Agent,小白也能轻松入门AI开发

本文系统介绍了LLM(大型语言模型)和AI Agent的核心概念、特点及区别。LLM是经过海量文本训练的神经网络,擅长预测文本序列,但知识静态、被动响应。AI Agent则以LLM为核心,能自主规划、调用工具、自我优化,完…

2026/10/14 10:45:54 阅读更多 →
从AI设计到CAD绘制与Bug检测:开源工具实操指南

从AI设计到CAD绘制与Bug检测:开源工具实操指南

过去两年我一直在留意一个趋势:AI 已经不是只会在聊天框里写东西了,而是真的开始进入那些需要“职业手活”的岗位。最有代表性的三个方向,就是标题里说的这三个——AI 当设计师、AI 画 CAD、AI 测 Bug。对应到开源社区里,我也确实…

2026/10/14 10:45:54 阅读更多 →
神经网络前向传播详解:从手算到Python代码实现

神经网络前向传播详解:从手算到Python代码实现

开头这200来字我得说明白一件事:很多人学神经网络,一上来就被反向传播劝退,看了一堆偏导数、链式法则就开始怀疑人生。其实大可不必。我见过太多初学者最后能啃下深度学习,靠的不是一开始就把梯度背下来,而是老老实实把…

2026/10/14 10:45:54 阅读更多 →
Shell脚本多行注释技巧与工程实践

Shell脚本多行注释技巧与工程实践

1. Shell脚本多行注释的必要性与挑战 在Bash和KornShell(KSH)脚本开发中,我们经常遇到需要临时禁用大段代码或添加详细说明文档的情况。与大多数编程语言不同,Shell脚本原生并不支持类似C语言的/* */或Python的 这样的多行注释语法…

2026/10/14 10:44:53 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →