AI Coding时代的柔性之美:从静态软件到自演化软件,软件研发正在重新进化
【摘要】本文来自奇点智能研究院首席技术咨询师王博撰写的《柔性的力量——写在〈AI 原生软件研发成熟度模型 AISMM 2026〉白皮书发布之际》。文章以“柔性软件Elastic Software”为切入点探讨 Agent 参与软件演进之后软件形态、研发流程与工程体系正在发生的变化。在《AI 原生软件研发成熟度模型 AISMM 2026》白皮书中奇点智能研究院进一步从基础设施、知识工程、流程工具、组织人才、安全治理五大维度构建 AI 原生软件研发成熟度模型帮助企业理解并规划 AI 时代的软件研发演进路径。以下内容分享给正在探索 AI 原生研发的技术管理者与工程实践者。我们回顾今年 Agent Harness 的变化可以看到一条清晰而有趣的演进线。这条线的早期案例是 Nous Research 开发的 Hermes Agent。它的定位是个会 自我进化 的智能体完成复杂任务后自动创建新的 SkillSkill 在使用过程中还能持续自我改进。用户可以告诉它 记住以后回复简洁一些它就会把这条偏好固化下来它甚至能搜索自己的历史对话建立越来越深的用户模型。更特别的是Hermes 把这些 自生长 出来的 Skills 以标准化格式发布一个用户在某个场景下沉淀下来的能力理论上可以被另一个用户复用。随后很快事情往前跨出了一大步Agent 的自我迭代与定制从 Skill 层深入到了框架的核心功能与 UI而且开源社区和闭源产品先后给出了答案。开源这边是 DeepSeek Harnessdsh。它的架构哲学是 一切皆插件工具、技能乃至界面都以插件形式存在插件内核 Cordis 保证装卸可逆、副作用自动清理于是 Agent 可以放心地修改自己脚下的框架。你说一句 帮我写个番茄钟插件它就会自己读文档、查运行时、写代码、装插件、做验证完成一次自我定制与扩展。闭源产品这边是 Anthropic 十月初给 Claude Code 推出的 ModsMod 是改变 Claude Code 外观和行为的插件可以拦截工具调用、重写提示词也可以在终端里绘制窗格、按钮、输入框直接重绘 Claude Code 自己的界面连 /diff 这样的内置功能本身就是用 mod 实现的官方推荐的工作流就是 在会话里描述你想要什么Claude 自己通过 mod 完成自我扩展。一边是开源框架一边是闭源产品共同点是把 修改自己 做成了发布之后仍在运行时持续发生的正式能力。从 Hermes 的 Skill 层自迭代到 DSH 和 Claude Code 把核心功能与 UI 也纳入运行时的自迭代范围这条演进线指向一种新的软件形态。在我们奇点智能研究院今年发布的《AI 原生软件研发成熟度模型 AISMM 2026》白皮书中我们管它叫柔性软件Elastic Software。它不是那种 发布即定型 的传统软件也不是 AI 临时生成的 用完即弃 的脚本。它在两者之间找到了一个动态平衡点。如果你正在关注 Agent、Harness Engineering、AI Coding、软件研发范式变化这份白皮书可以作为一份重要参考。而围绕这些正在发生的软件研发变化2026 奇点智能技术大会也设置了 “AI 原生软件研发从 Harness 到 Loop”专题邀请腾讯 CodeBuddy WorkBuddy、小红书 AI Coding、百度 Comate、滴滴 AI Coding 平台等一线团队分享从 Coding Agent 到 Harness Engineering 的最新实践。11 月 20—21 日2026 奇点智能技术大会将在北京万达文华酒店举行。报名参会即可领取 《AI 原生软件研发成熟度模型 AISMM 2026》实体白皮书。软件形态的变化过去几十年软件的基本特点是软件在发布之前完成主要设计和实现用户通过预先定义好的界面使用它通过预先定义好的方式扩展它。变化通过需求、开发、测试、发布的周期进入系统。这条路径支撑了传统的严肃软件领域它背后是一整套围绕确定性构建的工程体系。Agent 的崛起让这个共识出现了裂痕。软件不再只是被人类使用的成品也越来越多地成为被 Agent 理解、调用、修改、拼装和临时生成的材料。由此软件的能力绑定时机不再只有 发布前绑定 这一种方式而是沿着一条光谱分化出了三种形态。在光谱左端是传统软件Traditional Software关键能力在发布前完成定义与实现强调的是确定性、可预期、可审计。金融交易系统、数据库内核、系统软件这些对正确性有极致要求的系统仍然依赖这种形态。在光谱右端是即时软件Instant Software由 Agent 按需生成用完即弃。临时数据处理脚本、一次性分析页面、探索性原型这类软件的生命周期往往从几分钟到几天不等。它的存在逻辑是对这类需求来说生成成本和沟通成本远低于长期维护成本所以干脆不维护用完就扔下次要的时候再生成一个。有趣的事情发生在光谱的中间地带。绝大部分真实的业务系统既不像传统软件那样完全锁定也不像即时软件那样完全放弃长期结构。它们身上同时存在 确定性强、不能随便动 的部分和 变化频繁、需要灵活适配 的部分。柔性软件就是为这个中间地带而生它把系统内部不同性质的能力区分开来把高确定性、强约束的部分固化在稳定核心中把高频变化、强个性化适配的部分放到运行时再绑定。打个比方传统软件像一栋固定户型的水泥建筑即时软件像临时搭的帐篷而柔性软件像一栋框架结构加固但内部隔墙可变的建筑承重墙不能动但房间怎么隔、家具怎么摆可以搬进来之后再决定甚至可以住着住着继续调整。在这里想起经常会被问到的一个问题既然 AI Agent 的能力在快速增强按需生成软件的边际成本持续下降未来是否所有软件都即时生成甚至直接生成到二进制追求复用性还有价值吗这个问题忽略了一个经济学上的基本考量即使生成成本趋近于零稳定部分的 固化 依然比 每次重新生成 更经济。原因不仅仅在于重复生成浪费了多少算力而在于软件中那些高度确定、反复使用的部分每重新生成一次就多了一次理解、验证和集成的开销。柔性软件的价值恰好体现在这里它把性能、成本和灵活性放在一起来权衡。稳定核心做好、持续复用获取工程上的规模经济。OK下一个问题柔性软件和传统的 可配置软件 到底有什么本质不同柔性软件的特点柔性软件之所以能成为一个独立的类别原因在于它背后的扩展逻辑变了。传统软件的扩展性建立在 设计者预判 之上架构师在软件设计阶段预见到可能的扩展方向在这些方向上预留钩子和接口用户通过填写配置项或编写插件来定制行为。这种模式在需求稳定时运作良好但当变化方向和速度超出预判范围预设的接口就成了限制。实际工程中常见的应对策略是不断增加配置项把所有差异压成参数或者抽象接口最后系统被挖的 千疮百孔依然面临预设变化方向之外的 子弹出现所谓的 配置/扩展爆炸。柔性软件是 AI 时代的另一条路它不再依赖人的先见之明来预设扩展点而是让 Agent 在运行时理解源码和设计意图然后在清晰的边界内进行定制。这里面有三个关键差异。第一软件对 Agent 修改是开放的。传统扩展机制建立在封装之上内部实现被隐藏外部通过标准化接口交互。这种方式保护了系统完整性但也限制了扩展深度。在柔性软件中源码对 Agent 是可见的Agent 理解软件的内部结构之后可以在更深的层面进行定制。这种开放不是无限制的核心层的代码仍然遵循严格的工程标准但是 Agent 对柔性部分的修改比传统的软件的扩展机制更具灵活性和适应性。第二交付物不再只是可运行程序。传统的交付物是二进制、容器镜像、安装包。柔性软件的交付物是一个分层的能力包核心部分二进制或 API加上面向 Agent 的扩展机制Skills、规则、模板、知识资源、评估样本甚至包括部分源码。交付对象从 一个成品软件 变成了 一个可以在运行时被继续塑形的能力基座。用户拿到的不是一个功能固定的工具而是一个可以持续贴合自己需求生长的系统。第三Agent 的角色从外部工具升级为运行时能力的一部分。在传统软件中Agent 主要参与研发辅助。在即时软件中Agent 是软件的生产者和消费者。而在柔性软件中Agent 的角色最为独特它不仅参与研发还直接介入软件的使用阶段承担扩展、定制、编排和适配职责成为软件开发与运行时能力体系的有机组成部分。传统软件的柔性化柔性软件为传统软件在 AI 时代的演进画出了一条渐进路线从 能被用 到 能生长从功能固化的工具走向持续演进的领域 Agent。第一步让软件能被 Agent 使用。这是软件柔性化的起始步。传统软件的设计长期以来主要考虑 如何让人使用界面设计、操作流程、错误提示都是围绕人类用户的认知特点展开的。在 Agent 时代软件还需要考虑 如何被 Agent 高效理解和使用在现有系统之上增加一层面向 Agent 的可操作接口。实践中两种最常见的做法是 MCP 封装或 CLI 化。MCP 提供了一种标准化的方式让 Agent 能够发现、理解和调用软件的能力。CLI 化则更轻量将核心功能封装为符合标准命令行规范的工具Agent 可以自行探索子命令、按需组合完成复杂任务。配套这些接口的还需要为 Agent 准备 Skills用 Agent 能理解的语言描述软件的领域概念、典型使用场景、边界约束和最佳实践。这就好比你不光给了 Agent 一把钥匙还附带了一本使用说明书。这一步的目标是 Agent 能用但软件本身的结构没有根本变化门槛低、收益立竿见影。第二步让软件能被 Agent 扩展和定制。当 Agent 能够稳定地使用软件之后下一步是让它拥有一定的改造权。这需要做出一个关键的设计决策把系统中哪些部分对 Agent 的修改进行开放哪些保持封闭。通常来说交易一致性、核心数据模型、权限与合规边界、关键算法这些属于 稳定核心一般继续以严肃的工程标准保障Agent 不能随意修改。而表达层、报表、用户偏好适配、流程编排、长尾自动化等属于变化部分可以交给 Agent 在运行时动态定制。这一步要求在交付方式上做出改变将 变化外壳 部分以源码形式发布并配套设计 如何扩展和定制 的 Skills。Agent 加载这些 Skills 之后结合对源码的理解就能按照最终用户的需求进行定制。改动边界由稳定核心的接口契约来约束Agent 可以在外围自由发挥但不能越过契约触及核心逻辑。第三步内置推理引擎和 Agent Runtime成为领域 Agent。当柔性化的程度足够深一个自然的问题会浮现既然 Agent 已经是软件运行时的一部分了为什么不干脆把它内置进去这就是第三步的潜力空间软件内部嵌入一个轻量推理引擎和 Agent Runtime把 AI 能力从 外部调用 变成 原生能力。当一个企业资源规划ERP系统内置了推理能力它不再只是一个被用户操作的软件而是一个能理解业务上下文、主动建议优化方案、根据使用模式持续调整行为边界的 领域 Agent。这一步虽然还在路上但方向是清晰的。DeepSeek Harness 已经展示了 Agent 既是智能体又是软件平台 的双重属性。随着端侧推理引擎越来越成熟内置小型模型做特定领域推理的成本正在快速下降。未来可能会有越来越多的软件出于数据隐私的考量和对 AI 能力深度内嵌的追求走上这条路把自己从一个静态工具变成一个能在使用中持续演进的领域智能体。对软件工程的影响柔性软件的出现对软件工程本身带来了深刻影响。软件设计从 空间规划 扩展到了 时间规划。 过去架构师的核心工作是决定软件由哪些部分组成、模块如何划分、接口如何定义。这些仍然重要但柔性软件要求架构师还回答一个新问题每一项能力应该在什么时候被绑定哪些必须在发布前固定哪些应该延迟到运行时哪些只在特定任务发生时才临时生成这种 绑定时机决策 正在成为架构设计的核心判断力之一。交付管理延伸到运行时。 当交付物不再是单一的可运行程序而是一个分层的能力组合二进制 部分源码 Skills 规则 模板 知识资源版本管理、验收标准、安全审计的复杂度都大幅上升。传统的验收只需要验证静态功能和性能指标柔性软件的验收还必须验证 Agent 在动态扩展场景下的行为边界和可控性。质量保障需要双层模型。 稳定核心沿用传统的确定性工程方法单元测试、集成测试、回归测试、性能测试、灰度发布这些在核心层依然有效。但在扩展层需要引入新的治理手段AgentOps通过可观测性、追踪、评估和护栏让 Agent 的行为符合预期成为质量保障的必要组成部分。这不是锦上添花而是柔性软件能成立的基础设施。复用和分发方式正在变化。 传统的软件分发倾向于黑盒客户端给编译好的二进制服务端给标准化 API。但柔性软件天然倾向于源码级别的分发和复用因为 Agent 需要读源码才能理解软件的结构和意图才能在此基础上进行定制。当代码的生产成本因为 AI 而急剧下降时源码的商业价值也在相对降低。开源不再只是一种理想主义的选择而可能成为吸引 Agent 生态和用户社区的有效策略。真正的竞争壁垒会转移到领域知识中的 Know-Why 和 Know-How、私有化的领域数据和工程化的 Agent 驾驭能力上。柔性的力量柔性软件 这个词听起来可能太温和了不够颠覆。但回顾软件工程的历史那些最终真正沉淀下来的变化往往不是推翻一切的革命叙事而是在确定性和灵活性之间找到新平衡点的实践。传统软件工业花了几十年时间建立起了一套围绕确定性运转的工程体系需求分析、架构设计、开发测试、发布运维。这套体系不会马上消失但它需要面对一个它从未认真考虑过的变量软件在使用阶段仍然可以被 Agent 使用、塑造和改变。基于此柔性软件给出了一个务实的回应把确定的交给工程把变化的交给 Agent。也许几年后回看即时软件的数量会是最多的毕竟不是每个需求都值得长期维护。但对软件工程这门学科产生最深刻影响的恐怕会是柔性软件。因为它并不把自己绑在 传统 或 颠覆 的任何一边而是在看似对立的诉求之间搭出了一条可以双向通行的路。我们奇点智能研究院最近发布的《AI 原生软件研发成熟度模型 AISMM 2026》白皮书也是按这个思路来设计的。它不会是一份 发布即定稿 的静态标准它有稳定的框架和原则也有可扩展的技术实践和行业案例会跟着技术演进和行业发展一起往前走持续迭代和扩展。软件如此白皮书依然都是 AI 时代 柔性力量 的展现。值得期待的是本文作者王博也将亮相 2026 奇点智能技术大会带来主题演讲 《企业AI原生软件研发转型实践探索与AISMM演进解读》。围绕企业在 AI Coding、AI Native 软件研发与工程效能升级中的真实挑战他将结合 AISMM 2026 白皮书分享从理念到方法、从实践到演进路径的系统思考。《AI 原生软件研发成熟度模型 AISMM 2026》白皮书围绕基础设施、知识工程、流程工具、组织人才、安全治理五大维度构建 AI 原生软件研发成熟度模型帮助技术 Leader 判断企业当前 AI 原生研发阶段识别关键短板规划下一阶段演进路径。11 月 20—21 日2026 奇点智能技术大会将在北京万达文华酒店举行大会将围绕 AI 原生软件研发、Agent、AI Infra、世界模型、Physical AI 等方向汇聚一线技术专家共同讨论从工具提效到组织级 AI 研发能力建设的演进路径。扫码领取《AI 原生软件研发成熟度模型 AISMM 2026》实体白皮书与一线技术实践者共同探索 AI 原生研发的下一阶段。附 2026 奇点智能技术大会出版日程。

相关新闻

Spring Boot项目Jacoco覆盖率统计实战:从配置到质量门禁

Spring Boot项目Jacoco覆盖率统计实战:从配置到质量门禁

1. 为什么要在Spring Boot项目里死磕覆盖率报告做过几年后端的人都有一个共识:单元测试这东西,写起来爽,维护起来要命。尤其是Spring Boot项目,业务逻辑一层套一层,Controller调Service,Service调Mapper&am…

2026/10/15 0:03:53 阅读更多 →
铝合金仿菠萝格木纹构件|复刻珍木肌理 以铝代木筑就恒久中式雅境

铝合金仿菠萝格木纹构件|复刻珍木肌理 以铝代木筑就恒久中式雅境

在中式院墅、古建廊道与高端商业中式营造中,菠萝格木素来以温润醇厚的棕红肌理、沉稳致密的质感著称,是檐廊、立柱、门楣、雀替等构件的优选名贵硬木。然而天然菠萝格造价高昂,户外应用易开裂变形、虫蛀腐朽,常年刷漆维护成本高,让许多项目难以兼得木韵质感与长久耐用。铝合金仿…

2026/10/15 0:02:51 阅读更多 →
影刀RPA深度实战:大模型Fine-tuning定制RPA专用Prompt与指令生成

影刀RPA深度实战:大模型Fine-tuning定制RPA专用Prompt与指令生成

影刀RPA深度实战:大模型Fine-tuning定制RPA专用Prompt与指令生成 一、技术背景 大模型(LLM)在通用场景下表现强大,但当我们将 GPT-4 或 Qwen 直接用于生成影刀RPA操作指令和 XPath 定位时,准确率通常只有 40%-60%。原因…

2026/10/15 0:02:51 阅读更多 →

最新新闻

区间DP解“拿糖果”:从贪心误区到最优策略实战解析

区间DP解“拿糖果”:从贪心误区到最优策略实战解析

说实话,我第一次看到“拿糖果”这道题的时候,差点把它当成热身题给秒了。题面本身非常朴素:有 n 堆糖果排成一行,每堆糖果数量用一个整数数组表示,两个人轮流从最左端或最右端拿走一整堆,直到全部取完&…

2026/10/15 0:46:40 阅读更多 →
光通信技术突破:陶瓷封装与智能光功率控制解析

光通信技术突破:陶瓷封装与智能光功率控制解析

1. 光通信行业现状与易天定位光纤通信作为现代信息社会的基石,其市场规模在过去五年保持着年均12%的复合增长率。根据行业调研数据显示,2023年全球光模块出货量已突破1.8亿只,其中数据中心互连场景占比达到47%。在这个快速扩张的市场中&#…

2026/10/15 0:46:40 阅读更多 →
CEC2010到CEC2017:进化计算基准测试集完整指南与避坑经验

CEC2010到CEC2017:进化计算基准测试集完整指南与避坑经验

简介:面向进化计算与智能优化领域的研究者、工程师及高校学生,这份测试集汇总了CEC2010、CEC2013、CEC2014、CEC2015、CEC2017等历届单目标实参数优化竞赛的基准问题,可用于验证和对比各类新颖优化算法的寻优能力与收敛性能。压缩包内共516个…

2026/10/15 0:45:39 阅读更多 →
Z源逆变器仿真建模与PWM控制策略详解

Z源逆变器仿真建模与PWM控制策略详解

1. Z源逆变器概述与仿真意义Z源逆变器作为电力电子领域的重要拓扑结构,近年来在新能源发电、电动汽车和工业驱动等领域展现出独特优势。与传统电压源型和电流源型逆变器不同,Z源网络通过独特的阻抗网络实现了升降压功能,同时避免了传统拓扑中…

2026/10/15 0:45:39 阅读更多 →
普通程序员有没有必要学习 Agent 开发?从零手写 ReAct Agent 到 LangGraph 实战

普通程序员有没有必要学习 Agent 开发?从零手写 ReAct Agent 到 LangGraph 实战

一、先说结论:有必要,而且窗口期就在当下 如果你是一个每天写 CRUD、调接口、改 Bug 的普通后端 / 前端 / 全栈程序员,看到「Agent」「智能体」这些词,第一反应很可能是:“这不就是调一下大模型 API 吗?跟我…

2026/10/15 0:45:39 阅读更多 →
深入理解 Claude Code:CLAUDE.md、Hooks、Skills、Subagents 全解析

深入理解 Claude Code:CLAUDE.md、Hooks、Skills、Subagents 全解析

1. 引言 Claude Code 是 Anthropic 推出的命令行 AI 编程助手,它不仅能理解自然语言指令,还能通过一系列机制实现高度可定制、可扩展的自动化编码工作流。对于想要真正驾驭 Claude Code 的开发者来说,仅仅会提问远远不够,理解其四…

2026/10/15 0:45:39 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

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

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

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

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

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

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

2026/10/14 16:30:29 阅读更多 →
影刀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/15 0:14:36 阅读更多 →
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/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练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 阅读更多 →