看到「察元AI文档助手」的安装脚本时我第一反应是又见缝合怪一个脚本又要装 WPS 加载项又要装 MCP 服务还要往 Claude Code、Cursor 里投技能文件这不是把三件事搅在一起吗用了一段时间再回头看才发现这个双向自启的设计其实是整套产品最聪明的一笔。这篇就拆一拆它到底解决了什么问题。先看三个角色的分工察元的架构里有三个角色WPS 加载项负责在文档里干活二十九个内置助手、批注、批量替换、表格处理本机 MCP 服务127.0.0.1:62588对外暴露 46 个文档工具是外部 AI 智能体的入口技能文件则是投放给 Claude Code、Cursor、Codex 的说明书告诉这些 Agent 有这么一组 WPS 工具可以用、怎么用。传统分发方式会把这三样拆成三份文档三个流程想用加载项的去 WPS 市场想接 MCP 的手动改配置想给 Agent 加技能的去技能目录拷文件。结果是大多数用户装了一角就停了永远不知道另外两角存在——工具的价值被安装成本吃掉一大半。一个脚本四步闭环察元的答案是让安装脚本把四步一口气跑完第一步装加载项写 jsaddons 目录加 publish.xmlWPS 打开即加载第二步装 chayuan-mcp 单文件二进制并按平台注册开机自启Windows 注册表 HKCU\Run、macOS LaunchAgent、Linux systemd --user第三步四级体检从加载项文件到 healthz、握手、桥接工具逐层验通第四步把技能文件投进各家的技能目录。所谓双向自启就是这里的产物你本来只想装个 WPS 加载项结果 Claude Code 里也多了能用 WPS 的技能你本来只想给 Claude Code 投技能WPS 里的加载项也就位了。入口不重要落点都是同一套能力。一行 PowerShell 就是全部{[Net.ServicePointManager]::SecurityProtocol[Net.SecurityProtocolType]::Tls12;$wNew-ObjectNet.WebClient;$w.Encoding[Text.Encoding]::UTF8;$s$w.DownloadString(https://gitee.com/cloudshd/chayuan-wps-releases/raw/master/scripts/install-wps-skill-chayuan.ps1);if($s.Length-and$s[0]-eq[char]0xFEFF){$s$s.Substring(1)};([scriptblock]::Create($s))-Fetch}为什么技能和工具要捆绑现在 Claude Code 的技能生态很热大家都在给 Agent 塞各种技能包。但技能文件本质是提示词和流程说明没有工具支撑就是空菜谱。察元把技能投放和服务安装绑在一起恰好保证了菜谱和厨房同时到位Agent 读到技能知道该调document_chunks分块读长文、该用document_apply_ops批量写回上限 200 条操作、写批注前必须带确认标记。技能教方法MCP 工具给手脚加载项是最终落在纸面的那支笔。这个设计对升级也友好重跑同一行命令就是覆盖升级旧配置不动。4.1.1 修了-Fetch临时解压目录不清理的问题此前每次安装残留约 290MB4.1.2 修了 sidecar 黑窗一路都是同一行命令刷上来没有额外的迁移步骤。举个具体的例子感受两边的对齐。你让 Agent 做多文档交叉检查直接下这句打开目录下这几份文档交叉检查错别字与术语是否一致技能文件教它先列文档、分块读内容、汇总问题写回那一侧加载项提供了从插入光标处、替换、添加批注到批注加替换等多种写回方式还有二十九个内置助手兜底。技能教方法工具给手脚最后落笔的都是同一套文档能力用户在哪头发起任务都一样。想只要一半怎么办设计者留了口子加-SkillOnly参数就只投放技能文件不动加载项和服务适合服务端已经就位、只想补技能的机器。对做评测和分享的人也方便一个参数拿到干净的技能文件直接读里面的流程编排比装完再翻目录省事。反过来只想要 WPS 里那二十九个内置助手、暂时不碰外部 Agent 的装完不接 MCP 就是了加载项自身就能用摘要、翻译、术语统一这些活不依赖外部工具。一点评价双向自启的本质是把安装当产品设计而不是当运维步骤。用户不关心三件套的关系只关心我现在能不能让 AI 改我的文档这个脚本用一次执行回答了全部问题。当然边界也说清楚技能到位不代表结果可信批注和替换建议仍是辅助参考定稿在人。这种把复杂度藏进脚本、把简单留给用户的思路值得所有做企业端工具的团队抄作业。