夜雨聆风学习资料网

ARTICLE · 1191111

Flutter 开发又有新工具了:让 AI 直接操作正在运行的 App

Flutter 开发又有新工具了:让 AI 直接操作正在运行的 App

平时使用 AI 编程助手开发 Flutter,修改代码后通常还需要自己操作 App,检查页面是否更新、状态是否正确、路由能否正常跳转。

flutter_ai_whisper 提供了另一种思路:通过 MCP 连接正在运行的 Flutter 调试应用,让 AI 直接读取状态、修改数据和执行页面导航。

一、它能做什么?

关注
重播 分享 赞

1. 读取运行时状态

可以发现正在运行的 Flutter 应用,并读取 Cubit、Bloc、Notifier、GetX Controller 等对象的状态,帮助 AI 理解应用当前的运行情况。

2. 直接修改状态

AI 可以在 App 进程中执行 Dart 表达式,调用已有方法或修改状态。例如,将计数器设置为 42:

1counterCubit.setValue(42)

对于 GetX、Riverpod、Bloc 等状态管理方案,也提供了对应的操作方式。

3. 自动执行页面导航

只需要指定已经注册的命名路由,例如 /profile,AI 就可以尝试跳转到对应页面,不需要额外添加 navigatorKey。

4. 验证页面实际变化

修改变量不代表 UI 一定刷新。工具还可以读取 Widget 树中的文本,帮助 AI 确认页面是否真正更新,而不只是检查数据有没有变化。

二、如何安装?

它不是普通的 Flutter 插件,不需要添加到应用的 pubspec.yaml 中,而是作为 MCP Server 注册给 AI 编程工具。

首先,确保 Dart SDK 满足 3.8 及以上版本,并启动 Flutter 调试应用:

1flutter run

然后安装工具:

1dart pub global activate flutter_ai_whisper

确认命令可用:

1flutter_ai_whisper --help

以 Cursor 为例,在项目的 .cursor/mcp.json 中添加:

1{
2"mcpServers": {
3"flutter-ai-whisper": {
4"command": "flutter_ai_whisper"
5    }
6  }
7}

配置完成后,在 AI 对话中提出需求:

连接正在运行的 Flutter 应用,读取计数器,将它设置为 42,并告诉我页面显示了什么。

AI 就可以通过 MCP 工具发现调试会话、连接应用、修改状态并检查结果。

三、支持哪些开发场景?

  • AI 辅助调试
    :让 AI 直接检查运行中的状态,而不是只分析静态代码。
  • 状态管理调试
    :适用于 GetX、Riverpod、Bloc 等常见方案。
  • 页面跳转验证
    :自动打开已有路由,辅助检查页面状态。
  • 开发流程自动化
    :减少手动操作 App、反复截图和描述问题的工作量。

项目还支持 Claude Desktop、Claude Code、VS Code 和 OpenCode 等 MCP 客户端。

四、使用时需要注意

它要求应用运行在 Debug 模式。Profile、Release 以及混淆后的构建不受支持。

Flutter Web 可以执行表达式和进行命名路由导航,但不能像原生调试目标那样枚举堆内存实例,因此需要通过明确的表达式读取状态。

此外,这个工具能够在应用进程中执行任意 Dart 代码,具有较高权限。应仅用于自己控制的本地调试应用,不要连接生产环境,也不要将 VM Service 暴露给外部网络。

总结

flutter_ai_whisper 的价值不在于帮你生成更多代码,而是让 AI 从单纯的代码阅读者,进一步成为能够观察和操作运行中 App 的调试助手。

如果你正在尝试 AI 驱动的 Flutter 开发流程,这个项目值得关注。

项目地址:https://pub.dev/packages/flutter_ai_whisper

相关学习资料