
拆解 RemoveMacAI 的配置档案restriction 键、MCX 强制设置与把模型下载指向 127.0.0.1 的拦截技巧【免费下载链接】RemoveMacAITurn off Apple Intelligence on macOS 27 and get its disk space back. One command, fully reversible.项目地址: https://gitcode.com/gh_mirrors/re/RemoveMacAImacOS 27 取消了 Apple Intelligence 的总开关关掉功能后十几 GB 的模型文件仍然留在磁盘上。开源工具RemoveMacAI用一条命令就能关闭功能、删除模型并阻止 macOS 再次下载而且全程可逆。这篇文章拆解它的核心产物——一个 配置档案configuration profilerestriction键如何关掉有官方开关的设置、MCX 强制设置如何接管没有开关的设置以及把模型下载指向 127.0.0.1 的拦截技巧到底是怎么回事。为什么选择配置档案而不是改注册表macOS 27 不再有单个总开关如果只去关各个功能系统需要时又会把模型悄悄下载回来直接删文件又不稳定还可能触碰系统保护边界。RemoveMacAI 选择的是 Apple 自己的MDM 配置档案机制工具生成一个标准的.mobileconfig文件引导用户在系统设置 配置文件中批准这一下点击是 macOS 的硬性要求见 Commands.swift。档案装上是系统级生效的macOS 更新不会把它冲掉而把档案删掉所有改动原样恢复——这就是完全可逆的来源。整个档案只有一个Configuration类型的主 payload里面装了三类子 payload各管一件事子 payload类型负责的事① restriction 键com.apple.applicationaccess关掉所有有官方开关键的功能② MCX 强制设置com.apple.ManagedClient.preferences接管没有开关键的设置项③ 下载拦截com.apple.ManagedClient.preferences把模型下载地址指向本机死地址三类 payload 的生成代码集中在 Profile.swift 的data(keeping:)里不到 40 行。第一层restriction 键——给官方开关上锁com.apple.applicationaccess是 Apple 经典的限制payload企业设备管理里用它锁 App Store、锁蓝牙等。它的每个键对应一个官方命名的功能开关关 SiriallowAssistant false关写作工具allowWritingTools false关 GenmojiallowGenmoji false关邮件摘要allowMailSummary false工具遍历要关闭的功能列表把每个功能对应的键全部写成falseProfile.swift。哪个功能对应哪些键的完整映射在 Catalog.swift 的features目录里——从 Siri、写作工具、Genmoji、Image Playground到邮件/信息/Safari/备忘录的摘要共 13 项。这种上锁的可见效果设置页面对应的开关会被系统锁定用户点不回去。removemacai status里那些绿色的off (locked)就是读到了这些被强制的键判定逻辑见 System.swift。第二层MCX 强制设置——没有开关的设置怎么办有些设置根本不在applicationaccess的键表里Siri 菜单栏图标StatusMenuVisible、语音唤醒VoiceTriggerUserEnabled、通知摘要summarize_previews、行内文本预测NSAutomaticInlinePredictionEnabled……这些没有官方开关键restriction 层管不到。RemoveMacAI 用第二个 payload 类型com.apple.ManagedClient.preferences补上也就是 macOS 的MCXManaged Client偏好强制机制每个偏好域如com.apple.Siri、group.com.apple.mail、.GlobalPreferences单独生成一个 payload内容统一是Forced→mcx_preference_settings结构Profile.swift。哪个域、哪个键、强制成什么值由目录里的ForcedPreference描述Catalog.swift。比如通知摘要这条功能没有任何 restriction 键靠的正是group.com.apple.usernoted域里summarize_previews false这一个强制项Catalog.swift。两层合起来的原则很简单有官方键的用 restriction 上锁没有的用 MCX 兜底确保每个被关的功能都处于用户改不回来的状态。第三层把模型下载指向 127.0.0.1——最精巧的一步删掉模型只是上半场macOS 在功能需要时会自动把模型重新下载回来磁盘空间又没了。RemoveMacAI 的拦截技巧源自先行工具 paredApple 的资产服务Asset Service支持按资产类型覆盖下载服务器地址。工具在com.apple.MobileAsset域下为每一个被删除的模型集强制一个键DownloadServerBaseURLOverride-资产类型 https://127.0.0.1:9/removemacai-blocked/关键点127.0.0.1是本机回环地址端口9discard 端口上没有任何服务在监听。于是 macOS 每次尝试下载模型都会立刻失败——不是慢是秒失败磁盘永远不会被重新占满。这个地址定义在 Profile.swift。哪些模型集会被拦截只拦截不再被任何人需要的集合。判定函数 setsToRemove 的规则是一个模型集若仍被某个保留功能需要就不删、也不拦。这正是off --keep writing-tools能保住写作工具及其依赖模型的原因——保留项会自动传导到模型层。可逆性是怎么做到的稳定 UUID每个 payload 的 UUID 由标识符经 SHA-1 生成version 5 风格永远不变。重新安装新档案时是覆盖而非新增不会留一堆残留Profile.swift。自标记 payload档案里额外写了一个以工具自身标识符为域的 payloadinstalled: true 保留的功能清单status命令靠它判断档案是否在生效Profile.swift。允许移除主 payload 显式设置PayloadRemovalDisallowed: false用户随时可自行删除。revert 就是删档案removemacai revert会打开配置文件页面引导你点移除Commands.swift。移除后你原来的设置全部回来macOS 需要时也会重新下载模型。不碰系统就能先自检removemacai selftest在不改动系统任何东西的情况下把配置档案的生成逻辑重新跑一遍并验证restriction 值是否正确、每个待删模型集是否都有127.0.0.1:9的拦截键、保留功能是否未被误伤、UUID 是否唯一且稳定SelfTest.swift。想动手前心里有底可以先跑这个。试一试仓库是只读的克隆一份即可用 Swift 构建需 Apple 芯片的 Macgit clone https://gitcode.com/gh_mirrors/re/RemoveMacAI cd RemoveMacAI swift build -c release也可以用项目自带的 install.sh 一键下载最新 release会校验 SHA-256。关键文件速查想了解什么看哪里配置档案怎么拼出来的Sources/removemacai/Profile.swift功能 ↔ 开关键 / 模型集映射Sources/removemacai/Catalog.swiftoff (locked) 状态怎么判定Sources/removemacai/System.swift两步走装档案 → 删模型Sources/removemacai/Commands.swift一键自检Sources/removemacai/SelfTest.swift版本记录0.2.3 修复了模型大小统计CHANGELOG.md一句话总结RemoveMacAI 把关功能、删模型、防下载三件事全部装进一个标准配置档案——restriction 键上锁官方开关、MCX 强制设置兜底无键设置、DownloadServerBaseURLOverride把下载指向 127.0.0.1 的死端口。看懂这一个.mobileconfig就看懂了整个工具。【免费下载链接】RemoveMacAITurn off Apple Intelligence on macOS 27 and get its disk space back. One command, fully reversible.项目地址: https://gitcode.com/gh_mirrors/re/RemoveMacAI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考