项目简介
xClaude Plugin 是一个专为AI助手(如Claude Code)设计的Model Context Protocol (MCP) 服务器集合,旨在简化iOS应用的开发、测试和自动化流程。它包含8个专注于不同工作流的MCP服务器,提供了共22个工具,涵盖了Xcode项目管理、iOS模拟器操作以及Facebook IDB高级UI自动化功能。通过模块化设计,用户可以根据当前任务启用特定的MCP服务器,从而优化上下文并提高效率。
主要功能点
- 模块化MCP服务器: 提供8个不同工作流(如编译、UI交互、构建、AI辅助、环境设置、测试、项目维护、混合模式)的MCP服务器,每个服务器仅加载所需工具,实现上下文信息的极致精简。
- 丰富的工具集: 包含22个工具,用于:
- Xcode操作: 构建项目、清理构建产物、运行测试、列出Scheme/Target、检查Xcode版本。
- iOS模拟器管理: 列出设备、启动/关闭设备、创建/删除模拟器、安装/启动/终止应用、截屏、打开URL、获取应用容器路径、健康检查。
- IDB UI自动化: 查询无障碍树(UI元素描述)、点击UI坐标、文本输入/按键、手势操作、语义化查找UI元素、评估无障碍数据质量。
- AI原生设计: 专注于为LLM提供结构化的工具接口和上下文信息,支持AI模型直接调用工具完成复杂的iOS开发任务。
- 智能目的地解析: 在构建和测试工具中,能够自动解析不完整的模拟器目的地字符串,自动补齐最新的OS版本信息。
安装步骤
- 环境要求:
- macOS 13.0+ 或 Linux (部分功能可能仅限macOS)
- Xcode 15.0+ (仅限macOS,用于iOS开发)
- Node.js 18+
- 可选: IDB (Facebook iOS Development Bridge),用于高级UI自动化
- 安装插件:
在你的MCP客户端(如Claude Code)的命令行界面中执行以下命令:
或从本地文件路径安装(请将 '/path/to/xclaude-plugin' 替换为你的本地仓库实际路径):/plugin marketplace add conorluddy/xclaude-plugin /plugin install xclaude-plugin/plugin marketplace add /path/to/xclaude-plugin /plugin install xclaude-plugin
MCP服务器配置
xClaude Plugin 提供了多个独立的MCP服务器。为了优化LLM的上下文和响应效率,强烈建议每次只启用一个MCP服务器。MCP客户端需要配置MCP服务器的启动命令及其参数才能建立连接。
以下是MCP客户端配置各个服务器的示例信息(您无需直接编辑JSON,MCP客户端通常会提供友好的图形界面或命令行工具进行配置):
-
xc-compile (极简编译)
- server_name: 'xc-compile'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-compile/dist/index.js"]'
- 描述: 仅用于快速编译和错误提取。
-
xc-interact (纯UI交互)
- server_name: 'xc-interact'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-interact/dist/index.js"]'
- 描述: 用于UI交互和验证,无构建操作。
-
xc-build (核心构建)
- server_name: 'xc-build'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-build/dist/index.js"]'
- 描述: 提供构建验证、清理和Scheme发现功能。
-
xc-ai-assist (AI辅助UI)
- server_name: 'xc-ai-assist'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-ai-assist/dist/index.js"]'
- 描述: AI驱动的UI自动化,支持构建、UI检查和截屏。
-
xc-setup (环境设置)
- server_name: 'xc-setup'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-setup/dist/index.js"]'
- 描述: 用于初始化环境配置和验证。
-
xc-testing (测试执行)
- server_name: 'xc-testing'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-testing/dist/index.js"]'
- 描述: 运行测试套件和UI流程自动化。
-
xc-meta (项目维护)
- server_name: 'xc-meta'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-meta/dist/index.js"]'
- 描述: 用于项目维护和工具健康检查。
-
xc-hybrid (全功能)
- server_name: 'xc-hybrid'
- command: 'node'
- args: '["/path/to/xclaude-plugin/mcp-servers/xc-hybrid/dist/index.js"]'
- 描述: 包含所有22个工具,适用于复杂的多任务工作流。
请将上述命令中的 '/path/to/xclaude-plugin/' 替换为你的本地 'xclaude-plugin' 仓库的实际路径。
基本使用方法
- 选择MCP服务器: 根据您当前需要执行的任务,在MCP客户端中启用对应的MCP服务器(例如,如果要修复编译错误,请启用'xc-compile')。
- 向LLM提问: 在您的LLM聊天界面中,像平常一样描述您的任务。LLM将识别并调用已启用MCP服务器中的相关工具。
- 示例1 (快速编译): 启用'xc-compile'后,提问:"Build the project and show me the errors." (构建项目并显示错误)
- 示例2 (UI交互): 启用'xc-interact'后,提问:"Tap the Login button, then check if the profile screen appears." (点击登录按钮,然后检查个人资料页面是否出现)
- 示例3 (AI驱动UI迭代): 启用'xc-ai-assist'后,提问:"Update the button color to blue, rebuild, and show me a screenshot." (将按钮颜色更新为蓝色,重新构建,并显示截图)
- 遵循LLM提示: LLM可能会要求提供更多信息(例如scheme名称、设备ID等),请根据提示进行回复。
- 避免直接调用Bash: 除非是文件操作或Git命令,否则对于iOS开发任务,总是优先使用插件提供的工具,而非直接使用'xcodebuild'或'xcrun simctl'等Bash命令,因为插件工具提供了更结构化和精简的输出。
信息
分类
开发者工具