Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
London TfL transit — real-time Tube arrivals, bus predictions, line status, service disruptions, journey planning, and route info for the London Underground,...
London TfL transit — real-time Tube arrivals, bus predictions, line status, service disruptions, journey planning, and route info for the London Underground,...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Real-time London TfL transit data — Tube arrivals, bus predictions, line status, disruptions, journey planning, and route information. Uses TfL's single unified REST API for all modes. API key optional (free, recommended for higher rate limits).
User asks about the Tube, London Underground, TfL, or London public transport User mentions specific Tube lines (Bakerloo, Central, Circle, District, Hammersmith & City, Jubilee, Metropolitan, Northern, Piccadilly, Victoria, Waterloo & City) User asks "is the Northern line running" or "when's the next Tube" User mentions London stations (King's Cross, Oxford Circus, Waterloo, Victoria, Paddington, etc.) User asks about London buses, DLR, Overground, Elizabeth line, or trams User asks about TfL service status, delays, disruptions, or planned closures User asks about Oyster, contactless, or TfL fares User asks about journey planning in London
TfL has a single unified REST API (api.tfl.gov.uk) that returns JSON for ALL modes — Tube, bus, DLR, Overground, Elizabeth line, trams, river bus, cable car. No protobuf, no SIRI, no multiple feed formats. Just one clean REST API with consistent JSON responses. API key: Register for a free app_key at https://api-portal.tfl.gov.uk/ — append ?app_key={KEY} to requests. The API works without a key for basic usage but is rate-limited; with a key you get 500 requests per minute.
EndpointDescription/Line/Mode/tube/StatusAll Tube line statuses/Line/{lineId}/StatusSpecific line status/StopPoint/{naptanId}/ArrivalsArrivals at a stop/Line/{lineId}/Arrivals/{stopPointId}Arrivals filtered by line/StopPoint/Search/{query}Search stops by name/StopPoint?lat=&lon=&radius=Stops near location/Line/{lineId}/StopPointsStops on a line/Line/{lineId}/Route/Sequence/{dir}Route stop sequence/Line/{lineId}/DisruptionDisruptions on a line/Journey/JourneyResults/{from}/to/{to}Journey planning/Line/Mode/busAll bus routes All endpoints return JSON. Append ?app_key={KEY} for authenticated requests.
The scripts in this skill's scripts/ directory handle fetching, parsing, and presenting TfL data.
Main entry point. Supports these commands: # Tube line status node scripts/tfl.mjs status node scripts/tfl.mjs status --all node scripts/tfl.mjs status --line victoria # Arrivals at a station node scripts/tfl.mjs arrivals --station "Oxford Circus" node scripts/tfl.mjs arrivals --stop 940GZZLUOXC node scripts/tfl.mjs arrivals --stop-search "kings cross" node scripts/tfl.mjs arrivals --stop-search "kings cross" --line piccadilly # Bus arrivals node scripts/tfl.mjs bus-arrivals --stop 490005183E node scripts/tfl.mjs bus-arrivals --stop-search "oxford circus" node scripts/tfl.mjs bus-arrivals --stop-search "oxford circus" --route 24 # Disruptions node scripts/tfl.mjs disruptions node scripts/tfl.mjs disruptions --line northern # Routes and stops node scripts/tfl.mjs routes node scripts/tfl.mjs routes --all node scripts/tfl.mjs bus-routes node scripts/tfl.mjs stops --search "waterloo" node scripts/tfl.mjs stops --near 51.5074,-0.1278 --radius 500 node scripts/tfl.mjs stops --line victoria node scripts/tfl.mjs route-info --line bakerloo node scripts/tfl.mjs route-info --route 24 # Journey planning node scripts/tfl.mjs journey --from "waterloo" --to "kings cross" node scripts/tfl.mjs journey --from "51.5031,-0.1132" --to "51.5308,-0.1238"
Basic functionality works without a key (rate-limited). For 500 requests/minute: Register at https://api-portal.tfl.gov.uk/ Set environment variable: TFL_API_KEY
Line IDLine NameEmojiTerminalsbakerlooBakerloobrownHarrow & Wealdstone <-> Elephant & CastlecentralCentralredEpping / Ealing Broadway <-> West RuislipcircleCircleyellowHammersmith (loop via Liverpool Street)districtDistrictgreenRichmond / Ealing Broadway <-> Upminsterhammersmith-cityHammersmith & CitypinkHammersmith <-> BarkingjubileeJubileesilverStanmore <-> StratfordmetropolitanMetropolitanmagentaChesham / Amersham / Uxbridge <-> AldgatenorthernNorthernblackEdgware / High Barnet <-> Morden / BatterseapiccadillyPiccadillydark blueHeathrow T5 / Uxbridge <-> CockfostersvictoriaVictorialight blueWalthamstow Central <-> Brixtonwaterloo-cityWaterloo & CitytealWaterloo <-> Bank
Line IDNameTypedlrDLRDocklands Light RailwaylibertyLibertyOverground (Romford — Upminster)lionessLionessOverground (Watford — Euston)mildmayMildmayOverground (Stratford — Richmond/Clapham)suffragetteSuffragetteOverground (Gospel Oak — Barking)weaverWeaverOverground (Liverpool St — Enfield/Cheshunt/Chingford)windrushWindrushOverground (Highbury — Crystal Palace/Clapham/W Croydon)elizabethElizabeth lineCrossrailtramLondon TramsCroydon Tramlink
Fare TypePriceTube Zone 1 (Oyster/contactless, peak)£2.80Tube Zone 1 (Oyster/contactless, off-peak)£2.70Tube Zones 1-2 (peak)£2.80Tube Zones 1-2 (off-peak)£2.70Tube Zones 1-3 (peak)£3.50Tube Zones 1-3 (off-peak)£2.80Bus & Tram (any journey)£1.75Hopper fare (unlimited bus/tram within 1 hour)£1.75 totalDaily cap Zones 1-2£8.90Weekly cap Zones 1-2£44.70Cash single (ticket machine)£6.70 (Zone 1) Peak: Mon-Fri 6:30-9:30am and 4:00-7:00pm (except public holidays).
NaPTAN IDs are the station identifiers — Tube stations use 940GZZLU{code} format Use --station or --stop-search for name-based lookups; use --stop for exact NaPTAN IDs Times are shown in 24-hour format (London convention) The arrivals command uses timeToStation (seconds) from the TfL API for ETA Bus stops have their own NaPTAN IDs in 490{code} format Journey planning returns fare estimates when available
If TFL_API_KEY is not set, requests still work but are rate-limited — a note is printed 429 rate limit responses print a helpful message with the key signup URL Invalid station/stop searches show "No matching station found" with suggestions Network errors and API error responses produce friendly messages Station closed or no service shows an appropriate message
When presenting transit info to the user: Lead with the most actionable info (next arrival time, line status) Show line name with color emoji (e.g., "🔴 Central: Good Service") Show times in 24-hour format (London convention) For arrivals: show line + destination + minutes (from timeToStation / 60) Show platform name when available For journey planning: show step-by-step with mode, line, duration, and fare Always mention disruptions for queried lines
EndpointData SentData Receivedapi.tfl.gov.uk/Line/*/StatusAPI key (query param, optional)Line status (JSON)api.tfl.gov.uk/StopPoint/*/ArrivalsAPI key (query param, optional)Arrivals (JSON)api.tfl.gov.uk/StopPoint/Search/*API key (query param, optional)Stop search results (JSON)api.tfl.gov.uk/StopPoint?lat=&lon=API key (query param, optional)Nearby stops (JSON)api.tfl.gov.uk/Line/*/StopPointsAPI key (query param, optional)Stops on line (JSON)api.tfl.gov.uk/Line/*/Route/Sequence/*API key (query param, optional)Route sequence (JSON)api.tfl.gov.uk/Line/*/DisruptionAPI key (query param, optional)Disruptions (JSON)api.tfl.gov.uk/Journey/JourneyResults/*API key (query param, optional)Journey results (JSON)api.tfl.gov.uk/Line/Mode/busAPI key (query param, optional)Bus routes (JSON) API key is passed as a query parameter to TfL's official API. No other user data is transmitted.
API key optional — TfL Unified API works without a key (rate-limited); with a free key you get 500 req/min No user data transmitted — requests contain only the optional API key and route/stop identifiers, no personal information No local storage — this skill does not write any files to disk (no GTFS cache needed — TfL is all live API) No telemetry — this skill does not phone home or collect usage data Input handling — stop names and route IDs from user input are URL-encoded in API queries, never interpolated into shell commands
This skill reads publicly available transit data from TfL's official Unified API. The optional API key is used only for TfL API rate-limit authentication. The skill does not access, store, or transmit any personal information beyond the API key configured by the user.
Agent frameworks, memory systems, reasoning layers, and model-native orchestration.
Largest current source with strong distribution and engagement signals.