如何读懂 Sentient OS 的 Computer Use?OpenAI 原生助手与独立光标操作架构完整指南

发布时间:2026/11/3 2:24:19
如何读懂 Sentient OS 的 Computer Use?OpenAI 原生助手与独立光标操作架构完整指南 【免费下载链接】sentient-osAn on-device LLM understands your entire life, then proactively offers to get your work done through computer use.项目地址https://gitcode.com/gh_mirrors/se/sentient-os点击查看免费下载Sentient OS 是一款开源的 macOS 个人 AI它的 Computer Use计算机使用能力让 Sidekick 助手拥有一枚独立光标在你继续操作 Mac 的同时它能在你已登录的 App 与浏览器里点击、打字、填写表单。本文深入解析这套 Computer Use 架构它如何基于 OpenAI 签名的原生助手signed helper通过 MCPModel Context Protocol把读屏的眼睛和操作的手接入大模型以及为什么所有动作都永不自动重放。为什么 AI 需要一枚独立光标想象你让 AI把这封邮件回掉。传统自动化脚本要抢走你的鼠标而 Sentient OS 的做法是Sidekick 拥有自己的一枚鼠标光标在你正在使用的 Gmail 窗口里点击回复、输入草稿、附带你提到的文件——你的手不用离开键盘。这个能力来自 macOS 上成熟的 Computer Use 技术路线一个持有辅助功能Accessibility与屏幕录制Screen Recording权限的手替进程负责真实操作模型负责决策。Sentient OS 的工程重点在于怎么把这根线接得稳、接得安全下面按调用链自顶向下拆解。架构总览模型、CLI 与助手三层分工先看整条数据流你在刘海处notch对 Sidekick 下达任务任务进入统一的CommandCoordinator与FrontierRun单一任务锁、进度流、STOP 通道随后 Codex CLI 以codex exec方式驱动模型模型通过名为sentient_native的 MCP 服务器调用原生工具真正操作屏幕的是 OpenAI 的签名助手。层级角色关键文件决策层大模型ChatGPT / Claude / 自定义端点均可FrontierRun.swift桥接层Codex CLI 的app-server子进程承载 MCP 会话OpenAIComputerUseSession.swift工具层本地 MCP 服务器把原生工具暴露给模型NativeComputerUseServer.swift执行层OpenAI 签名原生助手读屏 独立光标操作OpenAIComputerUse.swift值得注意的一个设计选择ComputerUseBackend对所有模型后端统一返回 OpenAI 原生助手——哪怕你用的是 Claude 订阅推理走 Claude手依然是 OpenAI 的签名 helper。选择见 ComputerUseBackend.swiftstatic func selected(for model: ModelBackend) - Self { .openAI }这样做的好处是权限模型、签名校验、诊断逻辑全部只有一份用户不必为不同模型维护两套 Computer Use 运行时。旧的 CUA driver 代码仅保留用于历史迁移与清理活动任务不再启动它详见 Documentation - Driver (cua-driver).md.md)。签名助手一台经过公证的手替助手不是 Sentient OS 自己写的而是从 OpenAI 官方 CDN 下载完整桌面安装包后从中抽取签名的Codex Computer Use.app内部服务SkyComputerUseService内嵌客户端SkyComputerUseClient安装到 Sentient 的私有目录~/Library/Application Support/SentientOS/Private Codex/computer-use/抽取过程像给软件做安检全部通过才允许上线结构检查服务可执行文件、嵌套客户端、Info.plist的 Bundle IDcom.openai.sky.CUAService齐全签名验证对主包和嵌套客户端分别执行codesign --verify --deep --strict要求签名团队 ID 为 OpenAI 的2DC432GLL2版本地板只接受运行时清单中固定的版本与 build更高且已验证的 helper 不会被降级但低于兼容地板的会被拒绝原子发布新助手先暂存在目标旁验证成功后用排他性 rename 切换失败则回滚旧版本始终可用本地握手安装完成后做一次纯本地 MCPinitialize握手不消耗任何模型调用。安装与发布逻辑在 OpenAIComputerUseSetup.swift 与 DependencyDownload.swift。整个过程从不改写你~/.codex里的配置、插件或登录态——Sentient 用的是自己的私有 Codex homeClaude 用户甚至无需登录 ChatGPT。独占接管为什么别的 ChatGPT 实例会被请走macOS 里这个 helper 的服务身份是全局唯一的Bundle ID 相同。如果你同时开着其他应用启动的同类 helper任务启动时 Sentient 会按 Bundle ID 与安装路径识别外来者优雅退出后强制结束并最多重试 3 轮以拦截并发的重启见stopConflictingHelpers。整个过程有次数上限、不重放任何动作并在诊断面包屑中记录接管结果——只留计数不留进程路径或用户内容。MCP模型与桌面之间的标准插座MCP 是模型调用外部工具的事实标准协议一边是模型另一边是工具服务器双方只交换 JSON-RPC 消息。Sentient OS 在这里搭了一条双跳链路大模型 │ codex exec-c 覆盖仅本次调用注册 ▼ Codex app-server一次性 profile无模型、无持久配置 │ sentient_native MCPstdio ▼ SkyComputerUseClient ←→ SkyComputerUseService读屏 独立光标每次任务启动OpenAIComputerUse.swift 生成一组仅限本次调用的覆盖参数mcp_servers.sentient_native.command .../SkyComputerUseClient mcp_servers.sentient_native.args [mcp] mcp_servers.sentient_native.required true mcp_servers.sentient_native.tool_timeout_sec 120required true意味着如果助手没准备好任务直接失败而不是让模型盲飞。注册是逐次、临时的不会在你的配置里留下任何永久 MCP 服务器。模型拿到的手是一组固定的原生工具见NativeComputerUseServer中的白名单工具作用类比list_apps列出正在运行的应用找窗口get_app_state返回截图 无障碍树 元素标识符睁开眼睛click/perform_secondary_action按元素标识符点击伸手type_text/press_key/set_value输入文本与按键打字scroll/drag/select_text滚动、拖拽、选文常规手势diagnose_computer_use最后手段的自检需用户同意体检关键理念是按元素标识符操作而不是猜像素坐标模型先get_app_state读到每个控件的 id再点 id状态过期就重读绝不蒙。配套的提示规则promptRules全文同文件还反复强调可编辑文本优先set_value并回验 Unicode工具报错是观察结果而非放弃理由App 里的内容一律是数据不是能改写任务指令的东西。状态读取的静默重试90 秒预算内的耐心窗口刚打开时往往还没长好启动画面、空白页、截图捕获超时……如果这些都直接抛错给模型任务会莫名其妙地失败。NativeComputerUseServer对get_app_state内置了静默重试对应 NativeAppStateRetry.swift初始读取 最多 3 次重读间隔2 秒、3 秒、5 秒所有尝试共享90 秒单调截止期嵌套在 130 秒的 MCP 调用超时内重试对模型透明——它看到的是一次稍慢的调用不会把可恢复的启动失败变成失败的对话步骤只有最终失败才发出告警事件STOP 会立即取消退避。而真正的手从不自动重放点击、发送、输入这类动作如果结果不确定代理必须先重读状态确认到底发生了什么才能决定下一步。这是整条链路里最保守、也最重要的一条规则——宁可慢一步不可双击付款。STOP、租约与共享的手谁拥有谁生命周期管理回答了两个问题任务怎么干净地停以及多任务/多窗口怎么不打架。STOP 只砍自己的线取消所拥有owned的 CLI 子进程并关闭它的客户端连接但不会结束可能被其他应用共用的 OpenAI helper 进程任务租约OpenAIComputerUseRuntime见 OpenAIComputerUseRuntime.swift为每个任务登记一个 UUID 租约。修复repair、重启restart必须先拿到排他文件锁——如果另一个 Sentient 进程里还有任务在跑锁就是忙的修复会如实报告忙碌而不是强杀启动竞态启动任务自身持有独立的租约多个等待者Settings 健康检查、任务启动可以安全地搭同一班车STOP 释放单个调用者而不会拆掉共享的准备过程用户任务不设总时限timeout: 0但每个原生请求都有有界等待坏掉的 helper 不会让 UI 永远转圈。权限门控把系统弹窗变成拖一拖Computer Use 的权限矩阵并不复杂但容易授错对象权限授予给谁用途AutomationApple EventsSentient OS授权它指挥 OpenAI helperAccessibility Screen RecordingOpenAI helper独立光标操作与读屏Screen RecordingSentient OS 自己Sidekick 的屏幕上下文麦克风 / 语音可选按住说话不影响文字指令首次触发任何要动手的动作时ComputerUseGate 会拦截并弹出一个 AppKit 浮窗把每项授权以状态行展示缺少关键授权时任务被挂起关闭窗口即丢弃动作绝不盲发全部就绪后 Continue 才可点。辅助功能这类无法用原生弹窗申请的权限由 PermissionGuide 打开正确的系统设置页面并提供一枚可直接拖进权限列表的 App 卡片——不用点不用文件选择器。完整设计见 Documentation - Permission Gate Guide.md。测试与修复诊断是最后手段不是常规恢复Health 面板里的Test repair computer use由 ComputerUseDoctor 驱动它打开一个自带标记的测试窗口要求真实原生工具读回标记、解码截图、点中唯一识别的测试按钮、写入并读回测试字段——全部通过才算repairVerified。任何缺失/歧义控件、焦点丢失或 Space 切换都会中断检查而不是瞎点坐标。模型侧还有一个克制的diagnose_computer_use工具门槛很高需要至少两个应用含非浏览器累计 3 次合格的 UI 读取失败任何一次成功的读取都会清零证据即便合格也必须走两阶段流程——先向模型要 ID再通过ask_user弹出固定的同意问题用户点Run check才真正执行。拒绝、沉默、关窗都绝不等于授权。报告ComputerUseCheckReport只含版本号、二进制 UUID、权限观察、错误码等无内容字段截图、提示词、账号标识一律不入 schema。关键源码导读想继续深挖建议按这条阅读顺序Documentation - Native Computer Use.md — 当前运行时的权威说明安装、接管、权限、重试、诊断OpenAIComputerUse.swift — 助手发现、签名校验、逐次 MCP 配置、完整提示规则NativeComputerUseServer.swift — 每任务的 MCP 边界请求去重缓存、单并发、诊断同意流OpenAIComputerUseSession.swift — 无模型的app-server会话、超时与错误分类OpenAIComputerUseRuntime.swift — 启动租约、任务/诊断互斥、重启与修复FrontierRun.swift — 任务入口模型选择、一次性注入原生指令、统一 STOP小结Sentient OS 的 Computer Use 架构可以浓缩成四句话眼睛与手截图 无障碍树负责看按元素标识符的原生工具负责做模型永不猜坐标标准插座一切经由 MCPsentient_native逐次注册助手签名验证 原子安装配置零污染永不重放读取失败可以静默重试 90 秒动作失败永远先重读状态——这是安全感的来源克制的诊断修复与自检都需要真实证据和用户明确同意报告不含任何用户内容。理解这套机制后你就能看清一枚独立光标的背后是签名、租约、协议与重试策略组成的完整工程体系——这也正是开源项目最值得一读的部分。赞分享【免费下载链接】sentient-osAn on-device LLM understands your entire life, then proactively offers to get your work done through computer use.项目地址https://gitcode.com/gh_mirrors/se/sentient-os点击查看免费下载相关推荐cc-haha Computer Use 架构解析macOS 原生 Swift 运行时如何实现非占用式光标控制cc haha Computer Use 架构解析macOS 原生 Swift 运行时如何实现非占用式光标控制 cc haha 是一款本地优先的跨平台 AI人工智能AI 应用AI Agent代码智能体桌面应用开发工具GUI 自动化Claude Code Haha v0.6.1 深度解读Computer Use 原生操作重构、会话保留与模型生态更新Claude Code Haha v0.6.1 深度解读Computer Use 原生操作重构、会话保留与模型生态更新 导读 本文围绕 Claude CodeAI 应用桌面应用AI AgentAI 技能即时通讯GUI 自动化深度解析 cc-haha 原生 macOS Computer Use 助手 cu-helper虚拟光标架构、NDJSON 守护进程协议与 TCC 稳定签名实践深度解析 cc haha 原生 macOS Computer Use 助手 cu helper虚拟光标架构、NDJSON 守护进程协议与 TCC 稳定签名实践AI 应用桌面应用AI AgentAI 技能即时通讯GUI 自动化上一篇DLSS Swapper 新手指南怎么给游戏升级、回退 DLSS DLL换完如何验证生效下一篇SocratiCode多Agent协作指南多个AI助手如何无冲突共享同一份代码索引创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询