核心用法
amap-cli-skill 是基于 Electron 容器封装的高德地图 JSAPI 2.0 命令行工具,通过 amap-gui CLI 实现地图操控。主要功能包括:
- 生命周期管理:
start/stop/status控制容器启停 - 地图状态控制:
mapState命令设置中心点、缩放、旋转、俯仰角及样式(支持 dark/light/macaron 等 12 种主题) - 路径规划:
route支持驾车/步行/骑行/公交四种模式,驾车支持途经点与策略选择(最快/最经济/避高速等) - POI 搜索:
searchPOI支持关键词搜索与周边搜索,自动分页返回 - 交互感知:
getLastEvent捕获用户在 GUI 上的点击/选点操作
所有命令返回结构化 JSON,便于 Agent 解析处理。
显著优点
1. 完整的地图能力:基于官方高德 JSAPI,POI 数据与路线算法权威可靠
2. Agent 友好:纯 JSON 输出,无需截图或 OCR,降低多模态处理成本
3. 双模式输入:地名自动 geocode(route 的 from/to),坐标精准控制(mapState/searchPOI 的 center)
4. 交互闭环:GUI 点选 → getLastEvent 获取坐标 → 自动衔接后续操作
潜在缺点与局限
- 依赖高德 Key:需申请 Web JS API Key 及安全密钥,国内服务需实名
- 容器资源占用:Electron 底层,启动耗时 3-8 秒,内存占用较高
- 命令行参数限制:
--center仅支持坐标格式,地名需用 JSON 模式 - 无持久化会话:停止后状态丢失,需重新配置视角
- 地域限制:数据覆盖以国内为主,海外场景受限
适合人群
- 需要结构化地图数据而非静态截图的 AI Agent 开发者
- 构建导航/选址/物流类对话机器人的技术团队
- 追求可编程地图工作流的自动化场景(如批量路径计算)
常规风险
| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| Key 泄露 | AMAP_KEY 注入 shell 环境,可能被 `ps`/`history` 捕获 | 使用专用 Key、限制配额、定期轮换 |
| 容器安全 | Electron 依赖 Chromium,存在 CVE 风险 | 保持 npm 包更新、网络隔离 |
| 服务可用性 | 高德 API 有调用配额与 QPS 限制 | 监控用量、配置降级策略 |
| 坐标精度 | 地名 geocode 存在歧义解析 | 关键场景要求用户确认坐标 |
配置检查清单
- [ ] 已申请 lbs.amap.com Web JS API Key
- [ ] 已配置
AMAP_KEY环境变量(OpenClaw WebGUI 或手动 export) - [ ] 新版账号已配置
AMAP_SECURITY_KEY(推荐) - [ ] 已全局安装
@amap-lbs/amap-gui