Agent skill · Business & Finance

scandinavia-transit

Search trains, buses, and ferries in Norway (Entur), Sweden (ResRobot), and Denmark (Rejseplanen). Intra-Scandinavia ground transport with schedules and Danish fare pricing.

borskigithub.com/borskiGitHub ↗
claude-codeMIT
Install
npx skills add borski/travel-hacking-toolkit --skill scandinavia-transit --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 18 KB
Bundled scripts: none
Path: plugins/travel-hacking-toolkit/skills/scandinavia-transit/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 611
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Scandinavia Transit Skill Search ground transport (trains, buses, ferries) within Norway, Sweden, and Denmark using their national transit APIs. **Sources:** - [Entur (Norway)](https://developer.entur.org) — Open GraphQL API for all Norwegian transit - [ResRobot (Sweden)](https://www.trafiklab.se/api/trafiklab-apis/resrobot-v21/) — REST API via Trafiklab for all Swedish transit - [Rejseplanen (Denmark)](https://labs.rejseplanen.dk) — REST API (HAFAS) for all Danish transit including pricing ## Norway: Entur (Journey Planner v3) Open GraphQL API. No key needed (but a client name header is required). Covers ALL Norwegian transit: Vy trains, buses, ferries, trams, metro. 60+ operators. ### Trip Search (Oslo to Bergen example) ```bash curl -s -X POST "https://api.entur.io/journey-planner/v3/graphql" \ -H "Content-Type: application/json" \ -H "ET-Client-Name: $ENTUR_CLIENT_NAME" \ -d '{"query": "{ trip(from: {place: \"NSR:StopPlace:59872\"}, to: {place: \"NSR:StopPlace:548\"}, numTripPatterns: 5) { tripPatterns { startTime duration legs { mode expectedStartTime expectedEndTime fromPlace { name } toPlace { name } line { publicCode name authority { name } } } } } }"}' | jq '.data.trip.t

What's inside
Steps it walks through
  1. Norway: Entur (Journey Planner v3)
  2. Trip Search (Oslo to Bergen example)
  3. Find Stop IDs
  4. Key Stop IDs
  5. Departure Board
  6. Notes
  7. Sweden: ResRobot v2.1
  8. Authentication
  9. Trip Search (Stockholm to Gothenburg)
  10. Trip Parameters
  11. Denmark: Rejseplanen API 2.0
  12. Common Parameters
  13. Product Bitmask
  14. Location Endpoints
Commands it runs
curl -s -X POST "https://api.entur.io/journey-planner/v3/graphql" \
curl -s "https://api.entur.io/geocoder/v1/autocomplete?text=Oslo%20S&size=3" \
Norway
curl -s "https://api.entur.io/geocoder/v1/autocomplete?text=Flåm&size=3" \
Sweden
Denmark
curl -s "https://www.rejseplanen.dk/api/reachability?accessId=$REJSEPLANEN_API_KEY&originId=8600626&duration=120&maxChange=2&format=json" | jq '.'
curl -s "https://www.rejseplanen.dk/api/himsearch?accessId=$REJSEPLANEN_API_KEY&format=json&lang=en" | jq '.'
More from travel-hacking-toolkit
All skills →
About this skill
What does the scandinavia-transit skill do?

Search trains, buses, and ferries in Norway (Entur), Sweden (ResRobot), and Denmark (Rejseplanen). Intra-Scandinavia ground transport with schedules and Danish fare pricing.

How do I install it?

Run `npx skills add borski/travel-hacking-toolkit --skill scandinavia-transit --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From borski/travel-hacking-toolkit, a repository with 611 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going