← Back to Skills Marketplace
danihe001

12306 Backup

by steve xia · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
101
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install 12306-backup
Description
Query China Railway 12306 for train schedules, remaining tickets, and station info. Use when user asks about train/高铁/火车 tickets, schedules, or availability...
README (SKILL.md)

12306 Train Query

Query train schedules and remaining tickets from China Railway 12306.

Query Tickets

node {baseDir}/scripts/query.mjs \x3Cfrom> \x3Cto> [options]
  • HTML mode (default): writes file, prints path to stdout
  • Markdown mode (-f md): prints table to stdout

Examples

# All trains from Beijing to Shanghai (defaults to today)
node {baseDir}/scripts/query.mjs 北京 上海

# Markdown table output (to stdout, good for chat)
node {baseDir}/scripts/query.mjs 北京 上海 -t G -f md

# Morning departures, 2h max, with second class available
node {baseDir}/scripts/query.mjs 上海 杭州 -t G --depart 06:00-12:00 --max-duration 1h --seat ze

# Only bookable trains arriving before 6pm
node {baseDir}/scripts/query.mjs 深圳 长沙 --available --arrive -18:00

# Custom output path
node {baseDir}/scripts/query.mjs 广州 武汉 -o /tmp/tickets.html

# JSON output (to stdout)
node {baseDir}/scripts/query.mjs 广州 武汉 --json

Options

  • -d, --date \x3CYYYY-MM-DD>: Travel date (default: today)
  • -t, --type \x3CG|D|Z|T|K>: Filter train types (combinable, e.g. GD)
  • --depart \x3CHH:MM-HH:MM>: Depart time range (e.g. 08:00-12:00, 18:00-)
  • --arrive \x3CHH:MM-HH:MM>: Arrive time range (e.g. -18:00, 14:00-20:00)
  • --max-duration \x3Cduration>: Max travel time (e.g. 2h, 90m, 1h30m)
  • --available: Only show bookable trains
  • --seat \x3Ctypes>: Only show trains with tickets for given seat types (comma-separated: swz,zy,ze,rw,dw,yw,yz,wz)
  • -f, --format \x3Chtml|md>: Output format — html (default, saves file) or md (markdown table to stdout)
  • -o, --output \x3Cpath>: Output file path, html mode only (default: {baseDir}/data/\x3Cfrom>-\x3Cto>-\x3Cdate>.html)
  • --json: Output raw JSON to stdout

Output Columns

Column Meaning
商务/特等 Business class / Premium (swz)
一等座 First class (zy)
二等座 Second class (ze)
软卧/动卧 Soft sleeper / Bullet sleeper (rw/dw)
硬卧 Hard sleeper (yw)
硬座 Hard seat (yz)
无座 Standing (wz)

Values: number = remaining seats, = available (qty unknown), = not applicable

Station Lookup

node {baseDir}/scripts/stations.mjs 杭州
node {baseDir}/scripts/stations.mjs 香港西九龙

Notes

  • Data comes directly from 12306 official API (no key needed)
  • Station data is cached for 7 days in {baseDir}/data/stations.json
  • Supports city names (resolves to main station) or exact station names
  • Works for all train types: G (高铁), D (动车), Z (直达), T (特快), K (快速)
Usage Guidance
Functionally and security-wise the skill is coherent with its purpose: it fetches data from official 12306 endpoints and caches station data locally, and it does not request secrets. Before installing, however, verify the skill's provenance (source/homepage is unknown here) and run it in a trusted/isolated environment if you don't trust the author. Also ensure you have Node.js >=18 (the code uses global fetch) and be aware the scripts will create/overwrite files under the skill's data directory and any output paths you provide. If you need higher assurance, review the included scripts locally (they are short and readable) or run them with network monitoring to confirm they only contact 12306 domains.
Capability Analysis
Type: OpenClaw Skill Name: 12306-backup Version: 1.0.0 The skill bundle is a legitimate tool for querying China Railway 12306 train schedules and ticket availability. The code in `scripts/query.mjs` and `scripts/stations.mjs` interacts exclusively with official 12306 domains (kyfw.12306.cn and www.12306.cn) to fetch and cache station data and ticket information. It uses standard Node.js built-in modules, contains no obfuscation, and lacks any indicators of data exfiltration, unauthorized execution, or malicious prompt injection.
Capability Assessment
Purpose & Capability
Name/description, SKILL.md, and the two JS scripts all focus on querying 12306, parsing results, and producing HTML/MD/JSON output. The only required binary is node, which is appropriate for the provided Node.js scripts.
Instruction Scope
Runtime instructions only run the included scripts. The scripts fetch data from 12306 domains, parse and filter results, and write cache/output files under the skill's data path — all within the described scope. No unrelated files, system credentials, or external endpoints are accessed.
Install Mechanism
This is an instruction-only skill with included scripts and no install spec. No downloads from third-party URLs or archive extraction are performed by the skill itself.
Credentials
The skill requires no environment variables or credentials. It only needs Node.js runtime; no unexpected secret access is requested.
Persistence & Privilege
always is false and the skill does not request permanent platform privileges. It caches station data and writes output files under its own data path only, which is expected behavior.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install 12306-backup
  3. After installation, invoke the skill by name or use /12306-backup
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of 12306-backup skill. - Query China Railway 12306 for train schedules, remaining tickets, and station information. - Supports detailed filtering (train type, departures, arrivals, duration, seat type, availability). - Multiple output formats: HTML, Markdown (table), and JSON. - Includes station lookup by city or station name. - Data sourced directly from the official 12306 API; no key required.
Metadata
Slug 12306-backup
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is 12306 Backup?

Query China Railway 12306 for train schedules, remaining tickets, and station info. Use when user asks about train/高铁/火车 tickets, schedules, or availability... It is an AI Agent Skill for Claude Code / OpenClaw, with 101 downloads so far.

How do I install 12306 Backup?

Run "/install 12306-backup" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is 12306 Backup free?

Yes, 12306 Backup is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does 12306 Backup support?

12306 Backup is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created 12306 Backup?

It is built and maintained by steve xia (@danihe001); the current version is v1.0.0.

💬 Comments