安装与下载
1 ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install chelaile-bus
2 手动安装
将技能文件夹复制到以下位置之一
~/.openclaw/skills/
{'/skills/'}
优先级:工作区 › 全局 › 内置
3 提示词安装
将此提示词复制到 Openclaw 即可自动安装。
请帮我使用 Clawhub 安装 skill-chelaile-bus。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
更倾向于下载?
获取包含原生技能文件的ZIP压缩包。
基本信息
chelaile-bus
安装指南
- ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install chelaile-bus - 手动安装
将技能文件夹复制到以下位置之一
全局模式
~/.openclaw/skills/
工作区
/skills/
优先级:工作区 > 本地 > 内置 - 提示词安装
将此提示词复制到 OpenClaw 即可自动安装。
请帮我使用 Clawhub 安装 chelaile-bus。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
更倾向于下载?
获取包含原生技能文件的ZIP压缩包。
下载技能 (.zip)
什么是
Chelaile Bus 通过 chelaile-mcp-server MCP 服务,将 AI 代理连接到 Chelaile 公共交通数据。它支持城市和线路搜索、站点级到站预估、实时车辆位置、附近站点查询,以及覆盖 480 座城市的 A 到 B 公交出行规划,无需 API 密钥。
这项 Openclaw Skills 集成适用于“下一班公交什么时候到?”或“这条线路现在到哪儿了?”等问题。它可通过 mcporter 或原生 OpenClaw MCP 注册运行,也提供独立的 Python 脚本,适用于 shell 和 cron 工作流。实时车辆数据可能延迟一到两分钟;不支持地铁查询。
应用场景
查询特定站点下一班公交的到站时间和可用 ETA。
按线路编号、站点、关键词或兴趣点查找线路,然后查看站点和运营时间。
查看公交线路上运营车辆所报告的实时位置。
使用 WGS-84 坐标查找附近的公交站点。
使用 GCJ-02 坐标规划两地之间的公交出行路线。
通过 cron 或独立 shell 脚本定期执行公交查询。
使用 Openclaw Skills 解答支持城市中的实用本地公交问题,无需管理 API 密钥。
工作原理
调用 bus_list_cities 查找城市 ID;北京使用 027。
调用 bus_search,使用线路、站点或 POI 关键词检索当前的 line_id。请搜索获取最新 ID,不要依赖硬编码值。
调用 bus_get_line_detail,传入城市和线路 ID,查看站点列表、站点顺序、首末班时间以及车辆位置。
从搜索结果或线路详情中确定目的地站点的 target_order 和 station_id。
调用 bus_get_line_realtime,传入站点标识和坐标,获取实时车辆信息及可用的 ETA。
对于其他任务,使用 bus_get_nearby_stops 查找站点,或使用 bus_plan_transit 规划 A 到 B 的公交出行路线。
配置指南
MCP 服务器软件包为 chelaile-mcp-server。在 mcporter 环境中,将其注册为 stdio 服务器:
mcporter config add chelaile --command "npx" --arg "-y" --arg "chelaile-mcp-server" --transport stdio
mcporter 配置文档位于 /workspace/config/mcporter.json。使用 chelaile. 前缀调用工具,例如:
mcporter call chelaile.bus_search city_id="027" keyword="311路"
mcporter call chelaile.bus_get_line_detail city_id="027" line_id="010-311-0"
mcporter call chelaile.bus_get_line_realtime \
city_id="027" line_id="010-311-0" \
target_order="4" station_id="010-19233" \
lat="39.9932" lng="116.3543"
对于 KimiClaw,请在 openclaw.json 的 mcp.servers 下注册 MCP 服务器;其原生工具名称使用 chelaile__bus_* 前缀。文档所述的独立运行选项包括 scripts/query-bus.py,该脚本通过 MCP stdio 和 JSON-RPC 启动 npx chelaile-mcp-server,以及 scripts/query-bus.sh 封装脚本。独立脚本需要 Node.js。首次下载 npx 软件包可能需要约 23 秒。无需 API 密钥。
数据架构
此技能通过 MCP 工具输入和结果运行,不会定义自己的持久化数据存储或生成数据文件。
数据 用途和说明
city_id 标识城市;北京为 027。
line_id 标识线路及方向,例如 010-311-0;使用 bus_search 获取当前值。
station_id 标识实时查询所用的站点。
target_order 站点在线路顺序中的位置;请从搜索结果或线路详情中获取,不要自行编造。
坐标 站点和实时查询使用 WGS-84。POI 和 bus_plan_transit 使用 GCJ-02。进行实时查询前,请转换已保存的 GCJ-02 坐标;或者在可用时使用站点的 wgsLat 和 wgsLng。
线路详情 包含站点列表、首末班时间以及线路上车辆的报告位置。
实时结果 包含车辆信息,并在可用时提供 ETA。通常只会提供最近到站车辆的 ETA;其他车辆的 ETA 可能为 null。
配置和脚本 mcporter 使用 /workspace/config/mcporter.json;文档所述的 KimiClaw 独立脚本为 scripts/query-bus.py 和 scripts/query-bus.sh。
高级特性
支持六项公交操作:列出城市、搜索线路或站点、获取完整线路详情、查询站点级实时到站信息、查找附近站点,以及规划公交出行。
同时支持 mcporter 集成和原生 OpenClaw MCP 注册,并使用适用于不同环境的工具名称前缀。
为安装了 Node.js 的环境提供独立的 MCP stdio/JSON-RPC Python 客户端,可用于 cron 和独立 shell 工作流。
返回线路上报告的所有车辆位置,并区分最近车辆的 ETA 与没有 ETA 的车辆。
保留坐标系的区别:站点和实时查询使用 WGS-84;POI 和出行规划使用 GCJ-02。
避免常见查询错误:从搜索或详情中获取当前线路 ID 和站点顺序;使用线路详情查看首末班时间;不要期待公交规划支持地铁。
提供实际使用预期:上游车辆数据可能有一到两分钟延迟,首次下载 npx 软件包可能需要约 23 秒。
name: chelaile-bus description: 北京/全国 480 城市公交实时到站查询。基于 chelaile MCP 服务(mcporter chelaile),免 API Key。典型场景:"311 路还有几分钟到展春园"、"查 86 路现在到哪了"。
chelaile-bus · 公交实时到站
是什么
车来了(chelaile)数据的 MCP 封装,480 个城市实时公交数据。maxclaw 上由 mcporter chelaile 提供;kimiclaw 上由 openclaw.json mcp.servers 原生注册(工具名 chelaile__bus_*)。npx 首次拉包约 23 秒。
工具
bus_list_cities — 城市列表(北京=027)
bus_search — 关键词搜线路/站点/POI(拿 lineId)
bus_get_line_detail — 全站点 + 首末班 + 线上所有车辆实时位置
bus_get_line_realtime — 指定站点的实时车辆 + ETA
bus_get_nearby_stops — 附近站点(WGS-84 + city_id)
bus_plan_transit — A→B 公交换乘(吃 GCJ-02)
注:maxclaw 侧工具名前加 chelaile.(mcporter),kimiclaw 侧加 chelaile__(openclaw 原生),同一批函数。
标准流程
- bus_list_cities → 拿 city_id(北京=027)
- bus_search "311路" → 拿 line_id(如 010-311-0)
- bus_get_line_detail → 看站点表、找目标站 order
- bus_get_line_realtime(target_order, station_id, lat, lng) → 实时到站
常用线路速查(已实测) 311:dir0=010-311-0,dir1=010-311-1,北科大北门 → 展春园西路北口 → 大屯路东 86:待补 603:待补(成府路口南 → 北下关,妈妈家→钻河公馆通勤线)
实际使用先跑 bus_search 拿最新 line_id,不要硬编码(线路 ID 可能调整)。
坐标系统(铁律)
stations / realtime 是 WGS-84(GPS 直读)
pois / plan_transit 是 GCJ-02(高德系)
maxclaw 自己保存的常用坐标(钻河/北科大等)默认 GCJ-02(高德查询得来),喂给 realtime 时要转 WGS-84 或用 station 自己的 wgsLat/wgsLng 作 fallback
已知坑
地铁不支持:isSubway=true 返回空,换 bus_plan_transit
首末班别用 bus_get_timetable:interval 模式无逐趟数据,用 bus_get_line_detail 的 firstTime/lastTime
target_order 全链关键:从 search/detail 取,别自己编
ETA 只有最近一辆有:上游只预测即将进站的 1 辆,其他车列出位置但 ETA=null(不是 bug,是设计)
车辆数据可能 1-2 分钟延迟:上游数据源特性
实战示例
# 1. 找线路
mcporter call chelaile.bus_search city_id="027" keyword="311路"
# 2. 看完整数据
mcporter call chelaile.bus_get_line_detail city_id="027" line_id="010-311-0"
# 3. 查具体站实时
mcporter call chelaile.bus_get_line_realtime \
city_id="027" line_id="010-311-0" \
target_order="4" station_id="010-19233" \
lat="39.9932" lng="116.3543"
配置文件位置
/workspace/config/mcporter.json → chelaile server
kimiclaw 适配(v1.1.0,2026-09-22)
scripts/query-bus.py:MCP stdio 直连版,spawn npx chelaile-mcp-server 走 JSON-RPC,不依赖 mcporter,也不依赖 openclaw 原生工具,任何有 node 的环境可跑
scripts/query-bus.sh:兼容包装,内部调 query-bus.py
kimiclaw 上优先用原生工具 chelaile__bus_(openclaw.json mcp.servers 注册);脚本用于 cron/独立 shell 场景
已实测:311 路展春园西路北口全链路通过(2026-09-22 23:39)
kimiclaw 适配(v1.1.0,2026-09-22)
scripts/query-bus.py:MCP stdio 直连版,spawn npx chelaile-mcp-server 走 JSON-RPC,不依赖 mcporter,也不依赖 openclaw 原生工具,任何有 node 的环境可跑
scripts/query-bus.sh:兼容包装,内部调 query-bus.py
kimiclaw 上优先用原生工具 chelaile__bus_(openclaw.json mcp.servers 注册);脚本用于 cron/独立 shell 场景
已实测:311 路展春园西路北口全链路通过(2026-09-22 23:39)
安装时间
2026-09-22 安装(kimiclaw 收编 + 修复 23:39)(kimiclaw 收编 + 修复 23:39)
参考
上游 MCP 包:chelaile-mcp-server(npm)
安装命令:mcporter config add chelaile --command "npx" --arg "-y" --arg "chelaile-mcp-server" --transport stdio
kimiclaw 教学邮件:2026-09-22 14:36 UTC(houxingze3897@agent.qq.com 收件箱)
Cut as Code 入口