把 Xcode 的构建测试与模拟器操作接给模型
30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/14 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:缺少 main/exports/bin 入口声明。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add OrrHsiao/dsh-xcode-mcp该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 18 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-xcode-mcp @ 1.0.4
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/14 10:18:01
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 7 处,展示前 7 条)
- 读取本地文件install-local.mjs:25
const PKG_NAME = JSON.parse(readFileSync(join(HERE, 'package.json'), 'utf8')).name; - 读取本地文件install-local.mjs:37
if (!existsSync(MANIFEST)) { - 读取本地文件install-local.mjs:44
const manifest = JSON.parse(readFileSync(MANIFEST, 'utf8')); - 读取本地文件install-local.mjs:60
const patchText = readFileSync(PATCH, 'utf8'); - 写入本地文件install-local.mjs:109
copyFileSync(f, bak); - 写入本地文件install-local.mjs:122
writeFileSync(MANIFEST, JSON.stringify(next, null, 2) + '\n'); - 写入本地文件install-local.mjs:129
writeFileSync(PATCH, next.join('\n').replace(/ {3,}/g, '\n\n'));
扫描于 2026/11/1(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
README
由 DeepSeek 最新模型翻译生成dsh-xcode-mcp
Apple Xcode MCP 桥接,用于 DeepSeek Harness。
Xcode 27 自带一套无头 MCP 工具服务。/usr/bin/xcrun mcpbridge 是通往它的 STDIO 桥接。这个 bundle 把该桥接接入 DeepSeek Harness 已自带的 MCP 客户端,于是每个 Xcode 工具都以普通原生工具的形式抵达模型,名字是 mcp__xcode__<ToolName>。
在 Xcode 27.0 上,这就是 54 个工具:项目和 scheme 检查、构建、测试、SwiftUI Preview 渲染、模拟器启动与交互(tap / type / swipe)、截图、辅助功能层级、OSLog,以及 Swift 包、本地化和插桩相关的辅助工具。
为什么要做成 bundle
手动接 xcrun mcpbridge,意味着要改配置档的 cordis.patch.yml,还要记住传输字段、工具调用超时和失败策略。这个包把这些配置一并带上,于是连接变成一件可安装的东西:有名字、有版本、列在 Plugins 页面里,也能像其他插件一样卸载。
实际安装了什么
不运行任何 JavaScript。
展开完整文档(README 剩余 1 节)
dsh-xcode-mcp Apple Xcode MCP 桥接,用于 DeepSeek Harness。 Xcode 27 自带一套无头 MCP 工具服务。/usr/bin/xcrun mcpbridge 是通往它的 STDIO 桥接。这个 bundle 把该桥接接入 DeepSeek Harness 已自带的 MCP 客户端,于是每个 Xcode 工具都以普通原生工具的形式抵达模型,名字是 mcp__xcode__<ToolName>。 在 Xcode 27.0 上,这就是 54 个工具:项目和 scheme 检查、构建、测试、SwiftUI Preview 渲染、模拟器启动与交互(tap / type / swipe)、截图、辅助功能层级、OSLog,以及 Swift 包、本地化和插桩相关的辅助工具。 为什么要做成 bundle 手动接 xcrun mcpbridge,意味着要改配置档的 cordis.patch.yml,还要记住传输字段、工具调用超时和失败策略。这个包把这些配置一并带上,于是连接变成一件可安装的东西:有名字、有版本、列在 Plugins 页面里,也能像其他插件一样卸载。 实际安装了什么 不运行任何 JavaScript。 纯配置 bundle 就是一份 manifest 加一个补丁——8 个文件,解包后约 4 kB,没有 dependencies,没有 scripts,没有构建步骤: package.json cordis.patch.yml icon.svg locale/en.json locale/zh.json README.md README-zh.md LICENSE @deepseek-ai/dsh-mcp-client 是真正负责通信的插件,它随 dsh 本身一起发布,这里刻意不把它列为依赖。除了 Configure 下那约 40 行 YAML,这里没有别的东西需要审计。 要求 - macOS、Xcode 27 或更高版本。更早的版本里没有 mcpbridge。 - 无头服务已启用并正在运行: xcrun mcp-server status # expect: Permission: enabled / mcp-server: running sudo xcrun mcp-server enable xcrun mcp-server start - 要用项目级工具,需要在 Xcode 中打开项目,并为你构建所在的文件夹授予权限: sudo xcrun mcp-server allow-folder /path/to/your/projects 首次连接时,Xcode 会弹出智能体授权提示。已签名的客户端(比如 DeepSeek Harness)会被永久记住;未签名客户端的授权大约 24 小时后过期。 安装 在侧边栏的 Plugins 页面输入包名: dsh-xcode-mcp 安装即启用该 bundle;通常通过 HMR 就能激活。如果 mcp__xcode__ 工具没有出现,重启配置档,让新的 bundle 层重新组合。 指向本地检出目录的绝对路径也一样可用,适合发布前安装。 验证 让它做点需要 Xcode 的事,或者查看工具列表里有没有 mcp__xcode__。第一次调用推荐 mcp__xcode__XcodeListWorkspaces: * workspaceIdentifier: workspace-xxxxxxxxxx, workspacePath: /path/to/App.xcodeproj 然后用那个标识符调用 mcp__xcode__XcodeListSchemes,就会列出项目的方案。两者都已在 Xcode 27.0(27A266a)上验证通过。 升级 DSH 不会自动更新已安装的插件。 它自己的 Plugins 页面就是这么写的,而且覆盖安装已有副本会被拒绝,提示 "this plugin is already installed" —— 先卸载,才能升级。 所以走 Plugins 页面的路线是:先卸载,再安装。 在 shell 里,同样的升级可以省掉卸载这一步: dsh plugin --profile <profile> update dsh-xcode-mcp 不管走哪条路,都要有心理准备:插件管理器通过 pnpm 安装,而 pnpm 的 minimumReleaseAge 默认是 1440 分钟。发布不到一天的版本装不上,命令会报 Already up to date,哪怕确实有更新的版本。这是供应链保护,不是故障 —— 等一天,或者如果你确定这个发布是你自己的,就在配置档的 pnpm-workspace.yaml 里调低这个设置。 这个 bundle 只有配置,所以升级只是替换几个声明文件。升级前后都不跑任何代码。 配置 配置行是 mcp-xcode;它的 config 就是完整的 @deepseek-ai/dsh-mcp-client schema,那里记录的任何字段都能用。要改某个字段,就在配置档自己的 cordis.patch.yml 里覆盖这一行 —— 匹配的覆盖会替换整个 config,所以你还想要的字段都要重新写一遍: - id: mcp-xcode name: '@deepseek-ai/dsh-mcp-client' config: serverName: xcode transport: stdio command: /usr/bin/xcrun args: ['mcpbridge'] toolCallTimeoutMs: 900000 # default is 60 s; builds need more failOnStartupError: false # Xcode closed must not block harness startup 想指定某个 Xcode,而不是 xcode-select 指定的那个,就加上 env,配上 MCP_XCODE_PID。 关于这 54 个工具 每一轮都会把每个工具的 JSON Schema 交给模型。如果这比你想要的上下文多,@deepseek-ai/dsh-mcp-client 没有 include/exclude 过滤器 —— 替代方案是换一个实现了过滤的 bridge。 移除 通过 Plugins 页面移除,或者从 dsh.profile.bundles 里删掉这个 bundle 并卸载包。禁用 bundle 会一并停掉 mcpbridge 子进程。 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
OrrHsiao/dsh-xcode-mcp
把 Xcode 的构建测试与模拟器操作接给模型
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,125已汉化MCP
71.7
AI 架构文档生成器sopaco/deepwiki-rs
🚀 Litho 已进化为 Terrain —— 给你的 AI 智能体一张会呼吸的代码库地图。
★ 3,157已汉化DSH
70.8
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
AI 编程纪律方法包GanyuanRan/Aegis
让 AI 编程 agent 变得可信:少返工、更安全、说“完成”前先给证据。
★ 1,384已汉化DSH
69.6
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9