Query China domestic transport options through one skill. Use when a user wants domestic flight or high-speed rail results, departure and arrival times, stations or airports, airline or train details, or public reference fares from open web sources. Route the request by transport mode and return a shared outer response shape. 一个同时支持中国国内航班和高铁查询的统一 transport skill,可根据 mode 路由到航班或高铁 provider。
Use the unified transport entrypoint in this skill to handle China domestic trip lookup for both flights and high-speed rail.
这是一个统一的中国境内出行查询 skill,同时支持航班和高铁。 它通过同一个 transport 入口按 mode 路由到底层 provider。
Require the following runtime environment before using this skill:
python3node使用这个 skill 前,运行环境必须具备:
python3nodeThese dependencies are required whether the skill is installed from GitHub or from ClawHub.
无论这个 skill 是从 GitHub 安装还是从 ClawHub 安装,这些依赖都必须满足。
Current implementation status:
flight mode is implemented through Tongcheng public flight pages.train mode is implemented through official 12306 public high-speed rail query and public price endpoints.Flight query:
python3 {baseDir}/scripts/transport_service.py search \
--mode flight --from 北京 --to 上海 --date 2026-03-20 --sort-by price --pretty
High-speed rail query:
python3 {baseDir}/scripts/transport_service.py search \
--mode train --from 北京 --to 上海 --date 2026-03-20 \
--seat-type second_class --sort-by price --pretty
The legacy flight-only entrypoint remains available for backward compatibility:
python3 {baseDir}/scripts/domestic_flight_public_service.py search \
--from 北京 --to 上海 --date 2026-03-20 --sort-by price --pretty
Optional local HTTP mode:
python3 {baseDir}/scripts/transport_service.py serve --port 8766
Determine transport mode.
Use flight for flights, airports, airlines, or plane tickets.
Use train for high-speed rail, rail tickets, stations, or train numbers.
If the user is ambiguous, infer conservatively from their wording or ask.
Route to the correct provider. Use scripts/transport_service.py as the shared entrypoint. Flight mode delegates to scripts/providers/flight_public_service.py. Train mode delegates to scripts/providers/train_public_service.py.
Preserve a shared outer response shape.
Return mode, provider, trip_type, outbound, and optional return.
Keep mode-specific fields inside each leg's options.
Apply only mode-specific filters that make sense. Flight filters: airline, direct-only, preferred airports. Train filters: train type, seat type, preferred stations.
Summarize results with the mode label. Clearly say whether the result is a flight result or a train result. Treat public-source prices as reference prices that can differ from final checkout prices.
YYYY-MM-DD.options.outbound and return.