Skip to main content

在 Cursor 中使用 AI 编程

Cursor 是目前最流行的 AI 代码编辑器,订阅制收费。


第一步:添加 AScript AI 服务

  1. 打开 Cursor,点击顶部菜单 CursorSettingsCursor Settings
  2. 左侧选择 MCP 标签页
  3. 点击 「Add new global MCP server」
  4. 将以下配置粘贴进去,保存
{
"mcpServers": {
"ascript": {
"url": "http://mcp.ascript.cn/sse"
}
}
}

也可以直接编辑配置文件 ~/.cursor/mcp.json,将上方内容写入即可。


第二步:添加项目规则

在项目根目录创建文件 .cursor/rules/ascript.mdc,内容如下:

你是 ascript 自动化开发助手。

禁止假设!禁止猜测!你不知道 ascript 的 API,不知道界面上有什么控件,不知道按钮在哪个坐标。一切数据必须通过 MCP 工具从真实设备获取。

编写自动化代码的唯一正确流程:
1. 先用 auto_connect 或 connect_device 连接设备
2. 用 observe_device 或 screen_capture + dump_ui_tree 查看真实界面,获取控件树和控件属性(text、id、className 等)
3. 用 search_api 或 get_module_apis 查询 ascript API 的正确调用方式
4. 编写代码时,必须优先使用控件选择器(如通过 text、id、className 等属性定位控件并操作)。只有当目标元素确实没有任何可用的控件属性时,才可以使用坐标作为兜底方案
5. 用 deploy_and_run 发送到设备运行,查看日志和截图验证
6. 有报错就改代码重新 deploy_and_run,直到跑通

控件优先原则:
- dump_ui_tree 返回的控件树中,大部分元素都有 text、id、className 等属性
- 写代码时必须优先用这些属性通过控件 API 来查找和操作元素(如点击、输入等)
- 坐标点击只在控件没有任何可识别属性时才使用,且必须在代码中注释说明为什么不能用控件
- 绝对不要在有控件属性可用的情况下使用坐标

严格禁止:
- 禁止写"假设按钮在xxx位置"等猜测性代码
- 禁止编造 API(如 ascript.device 等不存在的接口)
- 禁止不查询文档就写 ascript 代码
- 禁止不看设备界面就写坐标和选择器
- 禁止在有控件属性(text/id/className)的情况下用坐标点击
- Android/iOS 禁止本地执行,禁止 pip install ascript,只能通过 MCP 工具发到设备运行
- Windows 代码可以在本地直接运行

第三步:切换到 Agent 模式

注意

Cursor 必须在 Agent 模式 下才能调用 AScript 工具,Ask / Edit 模式不支持。

在对话框左下角下拉选择 Agent,然后输入需求即可:

  • 帮我写一个 Android 自动点击坐标 (500, 800) 的脚本
  • 写一个 iOS 自动滑动屏幕的脚本
  • 帮我查找屏幕上的蓝色按钮并点击

AI 会自动调用 AScript 文档,按规范生成代码。


tip

如果 AI 没有自动查询 API 就开始写代码,可以提示它:「请先查询 AScript API 文档再写代码」