从 Antigravity 1.x 升级到 2.x 后,不少开发者会发现终端命令的自动授权机制似乎变了。本文将介绍如何通过正则表达式解决命令频繁弹出授权确认的问题。
在 1.x(如 1.23.2)中,授权命令支持默认的“前缀匹配”(前方一致)。例如授权过 node --check 后,后续执行 node --check aaa.js 或 node --check bbb.js 都会直接放行。
但在升级到 Antigravity IDE 2.x(如 2.5.5) 后:
- 前缀匹配默认失效。
- 打开设置(Ctrl + ,)查看 Terminal Commands,虽然能看到注册记录,但带参数执行同一命令时依然会频繁弹出确认弹窗。
解决方案:改用正则表达式
在 2.x 中,可以通过显式声明 正则表达式 来恢复通配匹配。
配置规则
- 在命令规则的最前端加上前缀 regex:。
- 搭配正则通配符(如 .*)来匹配后续的可变参数。
- 注:2.x 系列已不再需要像早期版本那样使用 command(...) 进行包裹。
示例
如果你希望自动允许所有以 node --check 开头的指令,规则应写为:
regex:node --check.*
操作步骤
- 按下快捷键 Ctrl + , 打开设置。
- 向下滑动找到 Terminal Commands 设置项。
- 编辑已有规则:点击列表右侧的 铅笔图标,在原有命令前补上 regex: 并追加通配符(如将 node --check 改为 regex:node --check.*)。
- 新增规则:点击右上角 Add 按钮,直接粘贴完整的正则规则保存。
提示:从 1.x 升级到 2.x 时,旧版的白名单可能不会自动同步迁移。建议遇到弹窗时,直接在设置中补入对应的正则规则。
验证方法
配置完成后,可以直接在 Antigravity IDE 的聊天输入框中发送测试指令:
“我想确认点事情,请在终端执行一下 node --check test.js 这条命令。”
- 验证成功:终端直接静默执行,没有弹出权限确认框。
- 验证失败:依然弹出授权窗口,请检查规则中的 regex: 前缀及正则语法是否有误。