AutoGLM 中文文档 下载 App

Open-AutoGLM 项目目录结构解读

完整项目结构

Open-AutoGLM/
├── main.py                        # 命令行入口
├── requirements.txt               # 依赖清单
├── scripts/
│   └── check_deployment_cn.py      # 部署验证脚本
│
└── phone_agent/                   # ★ 核心框架包
    ├── __init__.py                # PhoneAgent 主类导出
    ├── agent.py                   # PhoneAgent 主类实现
    │
    ├── model/                     # 模型客户端层
    │   └── client.py               # OpenAI 兼容格式 API 调用
    │
    ├── adb/                       # ADB 工具(Android)
    │   ├── connection.py           # 远程/本地连接管理
    │   ├── screenshot.py           # 屏幕截图
    │   ├── input.py                # 文本输入(ADB Keyboard)
    │   └── device.py               # 设备控制(点击、滑动等)
    │
    ├── hdc/                       # HDC 工具(HarmonyOS NEXT)
    │   ├── connection.py
    │   ├── screenshot.py
    │   ├── input.py                # 鸿蒙原生支持中文输入
    │   └── device.py
    │
    ├── wda/                       # WDA 工具(iOS / WebDriverAgent)
    │   ├── connection.py
    │   ├── screenshot.py
    │   ├── input.py
    │   └── device.py
    │
    ├── actions/                   # 操作处理层
    │   └── handler.py              # ★ 所有动作的执行器
    │
    ├── config/                    # 配置层
    │   ├── apps.py                 # ★ App 名称 → 包名映射表
    │   ├── prompts_zh.py           # ★ 中文系统提示词
    │   └── prompts_en.py           # ★ 英文系统提示词
    │
    └── example/                   # 使用示例
        ├── basic_usage.py
        ├── single_step_debug.py
        ├── batch_tasks.py
        └── custom_callback.py

改代码应该改哪里

你想做什么改哪个文件
增加一个新的原子操作phone_agent/actions/handler.py + System Prompt 文件
新增一个 App 支持phone_agent/config/apps.py(加名称→包名映射)
修改模型的系统提示词phone_agent/config/prompts_zh.py 或 prompts_en.py
增加敏感操作规则System Prompt(告诉模型哪些场景要 Take_over)
改 ADB 截图命令phone_agent/adb/screenshot.py
改动作 JSON 解析逻辑phone_agent/actions/handler.py
改 Agent 主循环行为phone_agent/agent.py

三个设备适配层的作用

adb/、hdc/、wda/ 三个目录结构一模一样,对外暴露统一的接口:

Agent 主循环不关心底层是 ADB 还是 HDC——调 device.tap(x, y) 就行,具体翻译成 adb shell input tap 还是 hdc uitest click 由适配层决定。

Model 客户端层

model/client.py 实现了 OpenAI 兼容格式的 API 调用。vLLM、SGLang、智谱 BigModel、ModelScope 只要暴露 OpenAI 格式接口都能直接接上,框架不感知具体是哪个服务。

相关阅读