ClickClickClick

用可选的本地或远程模型执行 Android 与 macOS 界面操作任务。

Star 数
★ 716
最近更新
7 个月前
License
MIT
主语言
Python

30 秒速览

运行形态
命令行工具自托管服务网页应用
可在哪里用
通用 · 跨平台OpenAI API
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
Python 3adbOllama(用于本地模型)Shell / 命令行网络访问本地文件系统
典型场景
需要在已配置 adb 的本地环境中,根据自然语言任务操作 Android 应用的自动化开发者。
不适合
  • 需要稳定生产级自动化、不能接受实验性代码的团队
  • 没有安装 adb 的机器上做 Android 自动化

这个 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 对局。

  1. 需要在已配置 adb 的本地环境中,根据自然语言任务操作 Android 应用的自动化开发者。
  2. 希望把“打开 Google 新闻”一类浏览器操作交给 Gemini、OpenAI 或 Ollama 组合执行的原型团队。
  3. 需要以 HTTP 服务方式向 POST /execute 提交移动端或 macOS 任务的内部工具开发者。
  4. 想以 Ollama 本地视觉模型测试基础导航、并接受较慢响应和较弱元素定位能力的实验者。
  5. 需要用不同 Planner 与 Finder 模型组合评估界面自动化效果的工程人员。

如何安装或部署这个 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 请求。

这个 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 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
ClickClickClick 当前 23 · 缺口较多 命令行工具免费 + 模型费 ★ 716 7 个月前 Python OpenAI API
macOS Harness 55 · 缺口较多 命令行工具免费 + 模型费 ★ 1k 22 天前 Python Codex · Claude Code
mobile-use:自然语言操控手机的开源智能体 33 · 缺口较多 命令行工具免费 + 模型费 ★ 3.4k 1 天前 Python OpenAI API · Claude API
Mac Computer Use 13 · 缺口较多 命令行工具免费 + 模型费 ★ 891 2 年前 Python Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
23/ 100 五分制 1.2 / 5
信任安全 0/29
可靠稳定 5/14
适用触发 6/18
规范维护 5/18
有效结果 4/13
证据核验 3/8
查看各维度的扣分理由
信任安全0 / 29 · 0.0/5

证据显示:仓库未提供任何权限最小化、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚或来源归属的机制。所有信任相关标准均缺失,因此得分为0。

可靠稳定5 / 14 · 1.8/5

证据显示:测试文件存在,但仅覆盖部分执行器功能,且未覆盖核心LLM交互。依赖列表完整,但未验证可用性。错误处理在测试中有体现,但实际代码中未充分展示。因此自洽性、依赖可用性和失败消息均得1分。

适用触发6 / 18 · 1.7/5

证据显示:README提供了Raspberry Pi和macOS的使用场景,但未明确目标受众。能力边界在测试中有所体现,但未在文档中明确。触发精度未定义。环境适配仅部分说明。因此各得1分。

规范维护5 / 18 · 1.4/5

证据显示:README和pyproject.toml提供了基本安装说明,但缺少FAQ、已知限制、版本变更日志。许可证为MIT,但版权归属不一致。维护责任未明确。因此信息架构、安装说明、命名稳定性、示例和FAQ、维护责任得1分,已知限制和版本变更日志得0分,许可证得2分。

有效结果4 / 13 · 1.5/5

证据显示:输出可用性未明确,边际价值未量化,成本效益未分析。因此各得1分。

证据核验3 / 8 · 1.9/5

证据显示:README中的声明与代码部分一致,但缺乏独立验证。测试文件提供了部分佐证,但未覆盖所有功能。事实与推断未明确区分。因此各得1分。

风险与缓解建议
  • 源码中未见:最小权限约束只授予完成任务所需的权限:用专用账号或只读令牌,并限定可访问的目录和仓库。
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 源码中未见:数据流向说明运行时观察它连接了哪些外部服务(代理或防火墙日志);弄清数据去向之前不要输入敏感数据。
  • 源码中未见:敏感信息处理使用专用、低权限、可随时吊销的 API 密钥,不要复用生产凭据,也不要让密钥出现在日志里。
  • 源码中未见:依赖安全审查安装前固定版本并做一次依赖扫描(如 npm audit、pip-audit);优先放在容器里运行。
  • 源码中未见:外部影响披露先弄清它会写入、发送或修改哪些外部系统,用测试账号或测试仓库验证后再接入正式环境。
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 源码中未见:来源归属可核验从官方仓库或包源安装,核对发布者和仓库地址,避免同名仿冒包。
  • 仓库未提供任何安全机制,如权限最小化、用户确认或数据流透明,可能允许LLM执行任意操作。
  • 依赖列表包含多个未固定版本的包,存在供应链风险。
  • 测试覆盖不完整,未覆盖核心LLM交互和错误处理。
  • 文档缺少已知限制和版本变更日志,维护责任不明确。
证据充分度:低 评估于 2026年8月9日 审查版本 e4ce8f958b4d
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.3.0 Added Molmo support via mlx
    发布说明摘录
    What's Changed * Local finder support via mlx-vlm and Molmo 7B 4bit model for Apple silicon by @mkagenius in https://github.com/BandarLabs/clickclickclick/pull/4 Full Changelog: https://github.com/BandarLabs/clickclickclick/compare/v0.2.0-alpha...v0.3.0
    在 GitHub 查看 ↗

常见问题

支持哪些模型提供方?
文档列出 OpenAI、Gemini 和 Ollama;README 还提到本地 Ollama 的 Llama 3.2-vision 与 qwen3.5:4b,以及 GPT-4o。
Android 运行需要什么?
需要在执行代码的本机安装 adb,并在启动任务前完成模型与密钥配置。
能否作为 HTTP 服务调用?
可以。使用 uvicorn api:app --reload 启动后,向 POST /execute 提交任务参数。
本地 Ollama 是否适合界面元素定位?
README 说明 qwen3.5:4b 可用于较慢的基础导航规划,但不可靠于 Finder 的 UI 元素检测。
任务失败时 API 如何响应?
不支持的平台或模型参数会返回 400;执行过程中发生错误时可返回 500,并在 detail 中说明原因。
在 GitHub 查看 ↗ 安装 ↓

相关 Agents