Skip to main content

Koleo CLI

PyPI - Version PyPI - Python Version

Installation

install via pip by running pip install koleo-cli

gif showcasing the functionality

it currently allows you to:

  • get departures/arrival list for a station
  • get train info given its number and name(pull requests are welcome if you know how to get a train object by just the number)
  • find a station or list all known stations
  • find a connection from station a to b, with filtering by operators
  • save a station as your favourite to quickly check it's departures
  • add station aliases to query them more easily
  • check seat allocation statistics( authentication is required since may 2026 :< )
  • check delays(after login)

login

  • the current implementation allows you to store the credentials as cleartext, or instruct the koleo-cli to execute a command to retrieve them
  • the builtin login function allows you to store the data using secret-tool on linux, or cleartext on other platforms
  • you can create your own auth provider using the command auth type:
    • the program has to output a json k: v dump of cookies to be used, it must include:
      • the _koleo_token cookie(the v2 bearer auth token)

coming soon™️:

  • TUI ticket purchase interface
  • ticket display
  • your previous tickets + stats
  • find empty compartments

additionally you can also use the KoleoAPI wrapper directly in your own projects, all returns are fully typed using typing.TypedDict

MY(possibly controversial) design choices:

  • platforms and track numbers are shown using arabic numerals instead of roman
    • you can change it by adding use_roman_numerals: true to your koleo-cli.json config file
  • most api queries are cached for 24h
    • you can change it by adding disable_cache: true to your koleo-cli.json config file
  • stations/ls uses emojis by default
    • you can disable them by adding use_country_flags_emoji: false and use_country_flags_emoji: false to your koleo-cli.json config file pull requests are welcome!!
usage: koleo [-h] [-c CONFIG] [--ignore_cache] [--nocolor]
             {departures,d,dep,odjazdy,o,arrivals,a,arr,przyjazdy,p,all,w,wszystkie,all_trains,pociagi,trainroute,r,tr,t,poc,pociąg,traincalendar,kursowanie,tc,k,traindetail,td,tid,id,idpoc,stations,s,find,f,stacje,ls,q,connections,z,szukaj,path,destinations,do,to,z3,trainstats,ts,tp,miejsca,frekwencja,trainconnectionstats,tcs,aliases,clear_cache,login} ...

Koleo CLI

options:
  -h, --help            show this help message and exit
  -c, --config CONFIG   Custom config path.
  --ignore_cache
  --nocolor             Disable color output and formatting

actions:
  {departures,d,dep,odjazdy,o,arrivals,a,arr,przyjazdy,p,all,w,wszystkie,all_trains,pociagi,trainroute,r,tr,t,poc,pociąg,traincalendar,kursowanie,tc,k,traindetail,td,tid,id,idpoc,stations,s,find,f,stacje,ls,q,connections,z,szukaj,path,destinations,do,to,z3,trainstats,ts,tp,miejsca,frekwencja,trainconnectionstats,tcs,aliases,clear_cache,login}
    departures (d, dep, odjazdy, o)
                        Allows you to list station departures
    arrivals (a, arr, przyjazdy, p)
                        Allows you to list station departures
    all (w, wszystkie, all_trains, pociagi)
                        Allows you to list all station trains
    trainroute (r, tr, t, poc, pociąg)
                        Allows you to check the train's route
    traincalendar (kursowanie, tc, k)
                        Allows you to check what days the train runs on
    traindetail (td, tid, id, idpoc)
                        Allows you to show the train's route given it's koleo ID
    stations (s, find, f, stacje, ls, q)
                        Allows you to find stations by their name
    connections (z, szukaj, path)
                        Allows you to search for connections from a to b
    destination_connections (destinations, do, to)
                        Allows you to search for connections from favourite_station to x
    v3_connections (z3)
                        Allows you to search for connections from a to b using V3 Koleo Search
    trainstats (ts, tp, miejsca, frekwencja)
                        Allows you to check seat allocation info for a train.
    trainconnectionstats (tcs)
                        Allows you to check the seat allocations on the train connection given it's koleo ID
    aliases             Save quick aliases for station names!
    clear_cache         Allows you to clear koleo-cli cache
    login               Allows you to login(this is required for trainstats:<)

Example Config

{
  "cache": {},
  "favourite_station": "czarna-bialostocka",
  "disable_cache": false,
  "use_roman_numerals": false,
  "aliases": {
    "bzw": "bialystok-zielone-wzgorza",
    "b": "bialystok",
    "s": "sokolka",
    "su": "suwalki",
    "bp": "bielsk-podlaski",
    "ww": "warszawa-wschodnia",
    "e": "elk",
    "og": "olsztyn-glowny",
    "kg": "krakow-glowny",
    "k": "katowice",
    "bb": "bialystok-bacieczki",
    "wg": "warszawa-gdanska",
    "wz": "warszawa-zachodnia",
    "wc": "warszawa-centralna",
    "bbg": "bielsko-biala-glowna",
    "cb": "czarna-bialostocka",
    "bdg": "bydgoszcz-glowna",
    "sg": "szczecin-glowny"
  },
  "show_connection_id": false,
  "use_country_flags_emoji": true,
  "use_station_type_emoji": true,
  "platform_first": false,
  "auto_głównx": true,
  "show_seconds": false,
  "auth": {
    "type": "command",
    "data": [
      "secret-tool",
      "lookup",
      "service",
      "koleo-cli",
      "account",
      "default"
    ],
    "on_update": [
      "secret-tool",
      "store",
      "--label='Koleo-CLI Auth'",
      "service",
      "koleo-cli",
      "account",
      "default"
    ]
  }
}

Metadata

Release files for koleo-cli 0.2.137.35

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for koleo-cli 0.2.137.35
File Size Uploaded
koleo_cli-0.2.137.35.tar.gz 17.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for koleo-cli 0.2.137.35
File Interpreter ABI Platform
koleo_cli-0.2.137.35-py3-none-any.whl Python 3 none any Details

Total release size: 33.4 kB

Release files / koleo_cli-0.2.137.35.tar.gz

Download URL koleo_cli-0.2.137.35.tar.gz
Size 17.2 kB
Tags Source
SHA-256 checksum
How to use checksums
6b7305dea0f6ed75617fda650e43a12b66e0562062185b0d49e70757ce2c91f0
BLAKE2b-256 checksum
How to use checksums
09c5bb94772b0e0666ebe98f68711f5015912db0f36d3a91c8a11773eada7b88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / koleo_cli-0.2.137.35-py3-none-any.whl

Download URL koleo_cli-0.2.137.35-py3-none-any.whl
Size 16.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0428e18305e73541b5486665c3ba54059dc469c1a774d65790ff0893eb53b5bb
BLAKE2b-256 checksum
How to use checksums
8e1546f47b25dc9a9068c656832a41223fb0bbc42c8ca614e7197fdd1cf41c0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release history Release notifications | RSS feed

This release

0.2.137.35 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page