大家好,我最近在做蜂壳云的 Developer CLI 。
背景是这样的:
如果想让脚本、自动化程序或 Agent 操作 Android ,传统方式通常要准备一台实体手机,然后处理 USB 、开发者模式、ADB 、授权、驱动、设备断连、息屏、充电、远程访问等问题。
个人开发时还好,但如果 Agent 跑在云端、CI 机器上,或者团队里有人远程协作,第一步“让程序稳定碰到手机”就会变得很重。
所以我们做了一个比较直接的方案:
把 Android 设备放在云端,然后通过 phones-cloud-cli 操作。
Agent 不需要知道手机在哪里,也不需要处理 USB / ADB 本地连接,只要能调用命令行,就可以对一台云端 Android 做截图、点击、滑动、输入、安装 APK 等动作。
目前 CLI 的基本用法大概是这样:
# 下载 CLI ,以 macOS Apple Silicon 为例
curl -Lo phones-cloud-cli https://www.phones-cloud.cn/static/cli/phones-cloud-cli-darwin-arm64
chmod +x phones-cloud-cli
sudo mv phones-cloud-cli /usr/local/bin/
# 设置 API Key
phones-cloud-cli auth set-key --key pk_xxxx.yyyy
# 查看设备并选择默认设备
phones-cloud-cli device list
phones-cloud-cli device use dev_xxxxxxxxxxxxxxxx
# 截图、点击、输入
phones-cloud-cli adb screenshot --out screen.png
phones-cloud-cli adb tap --x 540 --y 960
phones-cloud-cli adb text --text "hello"
对 Agent 来说,最小闭环就是:
截图 -> 观察屏幕 -> 决定下一步 -> 点击 / 输入 / 滑动 -> 再截图
再往前一点,可以把 CLI 包成几个工具:
phone_screenshot(device_id) -> image file
phone_tap(device_id, x, y) -> result
phone_text(device_id, text) -> result
phone_swipe(device_id, x1, y1, x2, y2, duration) -> result
phone_keyevent(device_id, keycode) -> result
这样 Agent 不用直接接触复杂的设备连接协议,只要把“我要看屏幕”“我要点这里”“我要输入这段文字”翻译成 CLI 命令。
我们现在比较想验证的场景包括:
- App 冒烟测试 Agent
- Android 页面巡检 Agent
- APK 安装验证 Agent
- 移动端演示流程 Agent
- 内部业务流程检查 Agent
- 把真实 Android 接到 AI coding / automation workflow 里
Developer CLI 页面在这里: https://www.phones-cloud.cn/developer-cli
想听听大家的真实反馈:
- 如果你要让 Agent 操作 Android ,最麻烦的是 USB / ADB 环境,还是屏幕理解和动作决策?
- 你会更希望 CLI 提供 ADB 风格命令,还是更上层的 action API ?
- 如果用于 CI 或自动化测试,你会最先需要哪些能力:截图、安装 APK 、录屏、日志、坐标点击、元素识别,还是多设备并发?
- 这种“云端 Android + CLI”的方式,在你看来更像测试工具、Agent 执行环境,还是远程设备管理工具?
感谢,欢迎拍砖。