Real-time query tool for Austrian trains, buses, and trams via VOR AnachB.
Install
mkdir -p .claude/skills/anachb && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/5516" && unzip -o skill.zip -d .claude/skills/anachb && rm skill.zipInstalls to .claude/skills/anachb
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Austrian public transport (VOR AnachB) for all of Austria. Query real-time departures, search stations/stops, plan routes between locations, and check service disruptions. Use when asking about Austrian trains, buses, trams, metro (U-Bahn), or directions involving public transport in Austria.Key capabilities
- →Search station/stop IDs by name
- →Query real-time departure boards with delays
- →Plan multi-stop public transport routes
- →Retrieve current service disruption reports
How it works
It maps local scripts to HAFAS API endpoints to fetch, format, and present transport schedule and status data.
Inputs & outputs
When to use anachb
- →Checking real-time train departures
- →Planning travel in Austria
- →Finding transport disruptions
- →Searching for station IDs
About this skill
VOR AnachB - Austrian Public Transport API
Query Austrian public transport for real-time departures, route planning, and service disruptions using the HAFAS API.
Quick Reference
| Script | Purpose |
|---|---|
search.sh | Find stations/stops by name |
departures.sh | Real-time departures at a station |
route.sh | Plan a trip between two locations |
disruptions.sh | Current service disruptions |
API: HAFAS (Hacon Fahrplan-Auskunfts-System)
Endpoint: https://vao.demo.hafas.de/gate
1. Search Stations/Stops
Find station IDs by name:
./search.sh "Stephansplatz"
./search.sh "Wien Hauptbahnhof"
./search.sh "Linz"
./search.sh "Salzburg Hbf"
Returns station names, IDs (extId), and coordinates.
Response fields:
name: Station nameextId: Station ID for use in other queriestype: S (Station), A (Address), P (POI)coordinates: WGS84 coordinates (lon/lat in 1e-6 format)
2. Real-Time Departures
Get next departures from a station:
./departures.sh <station-id> [count]
# Examples:
./departures.sh 490132000 # Wien Stephansplatz, 10 departures
./departures.sh 490132000 20 # Wien Stephansplatz, 20 departures
./departures.sh 490060200 # Wien Hauptbahnhof
./departures.sh 444130000 # Linz Hbf
./departures.sh 455000100 # Salzburg Hbf
Response fields:
line: Line name (U1, S1, RJ, etc.)direction: Final destinationdeparture: Scheduled departure timedelay: Delay in minutes (if any)platform: Platform/track number
3. Route Planning
Plan a trip between two stations:
./route.sh <from-id> <to-id> [results]
# Examples:
./route.sh 490132000 490060200 # Stephansplatz → Hauptbahnhof
./route.sh 490132000 444130000 5 # Wien → Linz, 5 results
./route.sh "Graz Hbf" "Wien Hbf" # Search by name (slower)
Response fields:
departure: Departure timearrival: Arrival timeduration: Trip durationchanges: Number of transferslegs: Array of trip segments with line info
4. Disruptions
Check current service disruptions:
./disruptions.sh [category]
# Examples:
./disruptions.sh # All disruptions
./disruptions.sh TRAIN # Train disruptions only
./disruptions.sh BUS # Bus disruptions only
Common Station IDs
| Station | ID |
|---|---|
| Wien Stephansplatz | 490132000 |
| Wien Hauptbahnhof | 490134900 |
| Wien Westbahnhof | 490024300 |
| Wien Praterstern | 490056100 |
| Wien Karlsplatz | 490024600 |
| Wien Schwedenplatz | 490119500 |
| Linz Hbf | 444116400 |
| Salzburg Hbf | 455000200 |
| Graz Hbf | 460086000 |
| Innsbruck Hbf | 481070100 |
| Klagenfurt Hbf | 492019500 |
| St. Pölten Hbf | 431543300 |
| Wiener Neustadt Hbf | 430521000 |
| Krems a.d. Donau | 431046400 |
Tip: Always use ./search.sh to find the correct station ID.
Transport Types
| Code | Type |
|---|---|
| ICE/RJ/RJX | High-speed trains |
| IC/EC | InterCity/EuroCity |
| REX/R | Regional Express/Regional |
| S | S-Bahn (suburban rail) |
| U | U-Bahn (Vienna metro) |
| STR | Tram/Straßenbahn |
| BUS | Bus |
| AST | Demand-responsive transport |
API Details (for advanced usage)
The scripts use the HAFAS JSON API. For custom queries:
curl -s -X POST "https://vao.demo.hafas.de/gate" \
-H "Content-Type: application/json" \
-d '{
"svcReqL": [{
"req": { ... },
"meth": "METHOD_NAME",
"id": "1|1|"
}],
"client": {"id": "VAO", "v": "1", "type": "AND", "name": "nextgen"},
"ver": "1.73",
"lang": "de",
"auth": {"aid": "nextgen", "type": "AID"}
}'
Available methods:
LocMatch- Location/station searchStationBoard- Departures/arrivalsTripSearch- Route planningHimSearch- Disruptions/service messagesJourneyDetails- Details of a specific journey
Tips
-
Find station IDs first: Always use
search.shto find the correct station ID before querying departures or routes. -
Station vs Stop: Major stations have multiple platforms - the main station ID covers all platforms.
-
Real-time data: Departures include real-time delays when available.
-
Austria-wide: This API covers all Austrian public transport, not just Vienna.
-
Cross-border: Some routes extend to neighboring countries (Germany, Czech Republic, etc.).
When not to use it
- →Non-Austrian public transport queries
- →Locating private, non-public transportation systems
Prerequisites
Limitations
- →Reliant on HAFAS API data availability
- →ID mapping required before route planning
How it compares
It provides structured, real-time command-line access to official Austrian transport data instead of generic web scraping.
Compared to similar skills
anachb side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| anachb (this skill) | 1 | 7mo | Review | Beginner |
| session-logs | 8 | 2mo | Review | Intermediate |
| context-management-context-restore | 10 | 4mo | Review | Advanced |
| conversation-memory | 8 | 6mo | No flags | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by mitsuhiko
View all by mitsuhiko →You might also like
session-logs
openclaw
Search and analyze your own session logs (older/parent conversations) using jq.
context-management-context-restore
sickn33
Use when working with context management context restore
conversation-memory
davila7
Persistent memory systems for LLM conversations including short-term, long-term, and entity-based memory Use when: conversation memory, remember, memory persistence, long-term memory, chat history.
zlibrary-to-notebooklm
zstmfhy
自动从 Z-Library 下载书籍并上传到 Google NotebookLM。支持 PDF/EPUB 格式,自动转换,一键创建知识库。
workiq-copilot
github
Guides the Copilot CLI on how to use the WorkIQ CLI/MCP server to query Microsoft 365 Copilot data (emails, meetings, docs, Teams, people) for live context, summaries, and recommendations.
compound-learnings
parcadei
Transform session learnings into permanent capabilities (skills, rules, agents). Use when asked to "improve setup", "learn from sessions", "compound learnings", or "what patterns should become skills".