Skip to content

Latest commit

Β 

History

55 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

gotrain terminal preview

πŸš‚ gotrain

Atomic CLI for MTA system train departures (NYC Subway, LIRR, Metro-North)

No dependencies. No config. Just trains.

CI Platform License

Why?

Most train apps are bloated. This is one shell script.

Install

Via Homebrew:

brew tap gumadeiras/tap
brew install gotrain

Via npm:

npm install -g gotrain

One-liner (Universal Bash):

curl -sL https://github.com/raw/gumadeiras/gotrain-cli/main/install.sh | bash

Usage

# Search stations
gotrain stations penn       # Search for "penn"
gotrain stations            # List all stations

# Departures & Arrivals
gotrain departures MNR-149  # Departures from New Haven
gotrain departures nh --to MNR-1 # Filter departures to Grand Central (using alias)
gotrain arrivals MNR-1      # Arrivals at Grand Central
gotrain arrivals MNR-1 --from nh # Filter arrivals from New Haven

# Service alerts
gotrain alerts              # Active service alerts

# Favorites
gotrain favs add MNR-149 nh  # Add with alias 'nh'
gotrain favs rm nh           # Remove by alias
gotrain favs                 # List favorite stations

Examples

$ gotrain stations "new haven"
πŸŸ₯ MNR β”‚ New Haven (CT) Lines: New Haven β™Ώ ID: MNR-149
πŸŸ₯ MNR β”‚ New Haven-State St (CT) Lines: New Haven β™Ώ ID: MNR-150

$ gotrain departures MNR-149
Departures for New Haven (MNR-149)
──────────────────────────────────────────────────────────
10:39 AM EST β”‚ Grand Central  (Off Peak) [Line: New Haven]
             β”‚ On Time        Track 1 β€’ Ride 2h 04m (Train #1539)

11:24 AM EST β”‚ Grand Central  (Off Peak) [Line: New Haven]
             β”‚ On Time        Track 2 β€’ Ride 2h 01m (Train #1545)

$ gotrain arrivals MNR-1 --from nh
Arrivals for Grand Central (MNR-1)
Origin: New Haven (MNR-149)
──────────────────────────────────────────────────────────
12:43 PM EST β”‚ Grand Central  (Off Peak) [Line: New Haven]
             β”‚ On Time        No Track β€’ Dep 10:39 AM EST β€’ Ride 2h 04m (Train #1539)

$ gotrain favorite add MNR-149 home
Added MNR-149 to favorites (Alias: home) βœ…

$ gotrain departures home
🟦 Departures for New Haven (MNR-149)
──────────────────────────────────────────────────────────
...

$ gotrain alerts
⚠️  Uptown [4][5] trains are running with delays...
   No description....

Commands

Command Description
stations [query] Search/list stations
departures <id> [--to <id>] Show departures (optional destination filter)
arrivals <id> [--from <id>] Show arrivals (optional origin filter)
alerts [--station <id>] [--all] Active service alerts (optional station filter, all alerts)
`favs [add rm] [id] [alias]`

Clawdbot Integration

This tool is available as a ClawdHub skill! Use it from any chat where Clawdbot is connected.

Data Source

Powered by MetroFlow API β€” real-time MTA transit data.

Contributing

PRs are welcome! If you find any bugs or have feature requests, please open an issue.

  • Development: Run npm test and npm run build to verify changes locally.
  • Style: Keep the CLI small and direct.

Scripts

  • ./scripts/committer "message" path...: stage only the listed paths and create a commit
  • ./scripts/release check 1.2.1: verify synced release versions and run the release test gates
  • ./scripts/release run 1.2.1: bump versions, run tests, package artifacts, tag, push, wait for the release workflow, publish npm, and update Homebrew

Release CI publishes to npm with trusted publishing.

License

MIT 🐧

About

πŸš‚ Atomic CLI for NYC train departures (MTA, LIRR, Metro-North)

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages