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.38

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.38
File Size Uploaded
koleo_cli-0.2.137.38.tar.gz 57.3 kB Details

Built distribution (wheel)

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

Total release size: 118.4 kB

Release files / koleo_cli-0.2.137.38.tar.gz

Download URL koleo_cli-0.2.137.38.tar.gz
Size 57.3 kB
Tags Source
SHA-256 checksum
How to use checksums
801a2b26ecfee6fe2d626b54ba32112c652d83ad987962f52b6ec83d2d27969a
BLAKE2b-256 checksum
How to use checksums
d8b846cc9ef254e1fd17d352bd51734d2ee53c1ea8349aa61673520cf62b717e
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.38-py3-none-any.whl

Download URL koleo_cli-0.2.137.38-py3-none-any.whl
Size 61.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
18dd0c774e172c1edb270a282397e23e3ad9cecb96ded2c55aab4b75d0d1e87f
BLAKE2b-256 checksum
How to use checksums
e258a1c59eeb8a0c43b0b1279556731ef690921146d1ae09e64b96861db29dff
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.38 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