ClickClickClick
用可选的本地或远程模型执行 Android 与 macOS 界面操作任务。
按维度查看评分与理由
证据显示:仓库未提供任何权限最小化、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚或来源归属的机制。所有信任相关标准均缺失,因此得分为0。
证据显示:测试文件存在,但仅覆盖部分执行器功能,且未覆盖核心LLM交互。依赖列表完整,但未验证可用性。错误处理在测试中有体现,但实际代码中未充分展示。因此自洽性、依赖可用性和失败消息均得1分。
证据显示:README提供了Raspberry Pi和macOS的使用场景,但未明确目标受众。能力边界在测试中有所体现,但未在文档中明确。触发精度未定义。环境适配仅部分说明。因此各得1分。
证据显示:README和pyproject.toml提供了基本安装说明,但缺少FAQ、已知限制、版本变更日志。许可证为MIT,但版权归属不一致。维护责任未明确。因此信息架构、安装说明、命名稳定性、示例和FAQ、维护责任得1分,已知限制和版本变更日志得0分,许可证得2分。
证据显示:输出可用性未明确,边际价值未量化,成本效益未分析。因此各得1分。
证据显示:README中的声明与代码部分一致,但缺乏独立验证。测试文件提供了部分佐证,但未覆盖所有功能。事实与推断未明确区分。因此各得1分。
- 仓库未提供任何安全机制,如权限最小化、用户确认或数据流透明,可能允许LLM执行任意操作。
- 依赖列表包含多个未固定版本的包,存在供应链风险。
- 测试覆盖不完整,未覆盖核心LLM交互和错误处理。
- 文档缺少已知限制和版本变更日志,维护责任不明确。
这个 Agent 能做什么,适合哪些场景?
ClickClickClick 是一个用于自主 Android 与电脑界面操作的实验性框架。它将任务处理拆分为 Planner、Finder 和 Executor 三个组件,并可分别选择 OpenAI、Gemini 或 Ollama 作为规划与界面元素定位模型。项目提供命令行运行方式,以及用于提交任务的 `POST /execute` REST API;README 的目录也列出 Gradio Web 界面。任务结果通过 API 的 `result` 对象返回,Android 执行依赖运行代码的本机已安装 adb。作者明确说明当前代码高度实验性,建议自行承担使用风险。
用户先在 config/models.yaml 填写模型设置,并导出该文件指定的密钥;也可以运行 python main.py setup 交互选择 Planner 和 Finder。随后使用 python main.py run "<task>" 或 ./click3 run <task-prompt> 提交任务,并通过 --platform=android|osx、--planner-model=openai|gemini|ollama、--finder-model=gemini|openai|ollama 和 --image-quality 控制执行。REST 调用 POST /execute 接收 task_prompt、平台、规划模型、定位模型和图像质量,成功时返回 result 对象;无效参数返回 400,执行错误可返回 500。文档展示的任务包括创建 Gmail 草稿、在 Google Maps 查找公交站,以及在 Lichess 发起 3+2 对局。
- 需要在已配置 adb 的本地环境中,根据自然语言任务操作 Android 应用的自动化开发者。
- 希望把“打开 Google 新闻”一类浏览器操作交给 Gemini、OpenAI 或 Ollama 组合执行的原型团队。
- 需要以 HTTP 服务方式向
POST /execute提交移动端或 macOS 任务的内部工具开发者。 - 想以 Ollama 本地视觉模型测试基础导航、并接受较慢响应和较弱元素定位能力的实验者。
- 需要用不同 Planner 与 Finder 模型组合评估界面自动化效果的工程人员。
这个 Agent 有哪些优点和局限?
- Planner 与 Finder 可独立选择 OpenAI、Gemini 或 Ollama,便于组合云端与本地模型。
- 同时覆盖 Android 与
osx两个明确列出的执行平台。 - 除 CLI 外还记录了
POST /execute服务接口,适合嵌入现有程序。 - 提供图像质量参数;降低图像质量可减小处理量,并为 Ollama 给出
--image-quality=45的建议。
- 项目明确标注为高度实验性,行为和接口可能在后续提交中变化。
- Android 使用依赖本机 adb,部署环境需要具备该运行时条件。
- Ollama 的 qwen3.5:4b 被记录为规划较慢、仅适合基础导航,且不可靠于 Finder 的 UI 元素检测。
- 模型密钥和模型配置需要在
config/models.yaml与环境变量中自行管理。
如何安装或部署这个 Agent?
克隆 https://github.com/instavm/clickclickclick 并进入目录。创建并激活虚拟环境:python3 -m venv venv,然后 source venv/bin/activate;Windows 使用 venv\Scripts\activate。执行 pip install -r requirements.txt。在 Android 上运行前,需在执行代码的本机安装 adb;在 config/models.yaml 配置模型设置,并导出其中指定的密钥。若要使用本地模型,还需安装并配置 Ollama。
如何使用这个 Agent?
先执行 python main.py setup,按提示选择 Planner、Finder 并提供所需 API 密钥。首次可运行:python main.py run "Open Google news" --platform=android --planner-model=openai --finder-model=gemini。本地 Ollama 示例为:python main.py run "Open Reddit" --platform=android --planner-model=ollama --finder-model=gemini --image-quality=45。启动 API 服务可使用 uvicorn api:app --reload,然后向 http://127.0.0.1:8000/execute 发送包含 task_prompt 的 JSON POST 请求。
常见问题
支持哪些模型提供方?
Android 运行需要什么?
能否作为 HTTP 服务调用?
uvicorn api:app --reload 启动后,向 POST /execute 提交任务参数。本地 Ollama 是否适合界面元素定位?
任务失败时 API 如何响应?
detail 中说明原因。