核心用法
map-search 是一款面向中国用户的本地生活地图聚合搜索工具,通过统一接口调用高德、百度、腾讯三大地图服务。支持两种调用模式:
1. 关键词搜索:按城市/区域检索 POI,如「咖啡馆 上海」
2. 附近搜索:基于 IP 自动定位或指定经纬度,检索周边服务设施
配置层面提供双轨制密钥管理——优先读取 ~/.config/openclaw/map_config.json 中的 api_keys 与 priority 字段,若配置缺失则回退至环境变量。搜索顺序遵循 priority 数组,首个返回有效结果即停止,避免无效调用浪费配额。
CLI 封装后可直接作为系统命令使用,输出格式简洁,包含名称、地址、距离(附近模式)等核心字段。
显著优点
- 国产适配:深度对接三大本土地图服务商,POI 数据贴合中国场景,比 Google Maps 更适合国内使用
- 多源冗余:单平台 API 故障或限流时自动降级,提升可用性
- 灵活配置:JSON 配置 + 环境变量双通道,支持 CI/CD 无侵入部署
- 零依赖轻量:仅依赖标准库
os、json与requests,无复杂框架 - 扩展友好:代码结构清晰,新增地图源仅需实现统一接口即可接入
潜在局限
- 密钥门槛:三平台均需独立申请 API Key,个人开发者需完成企业认证或面临调用额度限制
- 数据异构:各平台返回字段存在差异(如百度
location为字符串 "lat,lng",高德为逗号分隔),聚合时需额外标准化 - IP 定位依赖:附近搜索的自动定位依赖高德 IP 定位服务,精度约城市级,室内场景偏差较大
- 缺乏持久化:无本地缓存机制,重复搜索将消耗 API 配额
- CLI 体验有限:相比交互式地图应用,纯文本输出对路径规划、导航场景支持不足
适合人群
- 需要批量查询 POI 信息的自动化脚本开发者
- 构建本地生活类 Bot/Agent 的 AI 应用开发者
- 对数据新鲜度要求高、愿承担 API 成本的商业分析人员
- 已持有三平台 API Key 的企业级用户
常规风险
| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 密钥泄露 | API Key 以明文存储于配置文件或环境变量 | 使用密钥管理服务(如 AWS Secrets Manager),配置目录设 600 权限 |
| 过度调用 | 无速率限制逻辑,高频调用易触发平台限流 | 增加指数退避重试,监控 HTTP 429/403 状态码 |
| 数据合规 | 地理位置属敏感个人信息,需符合《个人信息保护法》| 匿名化处理用户坐标,明确告知数据使用范围 |
| 服务依赖 | 任一平台 API 变更或下线将影响功能 | 定期回归测试,订阅平台变更公告 |
| 超时阻塞 | `requests.get` 默认无超时重传,网络抖动易挂死 | 已设 5 秒超时,建议增加异常捕获与降级逻辑 |
综合评估
该 Skill 定位精准,填补了国产地图聚合工具的生态空白,适合作为后端服务或自动化工作流的组件。若用于生产环境,建议补充缓存层、熔断机制及字段标准化中间件。