Install
openclaw skills install @jrrqd/transit-jakartaQuery real-time TransJakarta bus arrivals, schedules, routes, and stats via CLI using public transit.oyenza.com API without authentication.
openclaw skills install @jrrqd/transit-jakartaSkill ini memungkinkan query real-time bus TransJakarta via command line menggunakan API publik transit.oyenza.com. Tidak perlu browser — langsung curl ke API.
bus, halte, ETA, kapan, datang, rute, TransJakarta, nama halte# Buat file config jika belum ada
mkdir -p ~/.qclaw-oversea/skills/transit-jakarta
# Config auto-generated on first run
# Alias praktis (tambahkan ke ~/.zshrc)
alias tj='python3 ~/.qclaw-oversea/skills/transit-jakarta/transit.py'
# 1. Cari halte
tj search "Cibubur Junction"
# 2. Lihat arrivals di satu halte (semua rute)
tj halte B00248P
# 3. Filter by rute (e.g., P11)
tj halte B00248P --rute P11
# 4. Filter by arah (e.g., Blok M)
tj halte B00248P --arah "Blok M"
# 5. Gabungan rute + arah
tj halte B00248P --rute P11 --arah "Blok M"
# 6. Statistik seluruh bus
tj stats
# 7. Info satu bus
tj bus MYS-21238
# 8. Ranking rute tersibuk
tj top-routes 10
# 9. Help
tj help
https://transit.oyenza.comGET /api/meta → staticUrl, patternsUrlGET /api/stats → buses by kind & routeGET /api/halte/{halteId} → etaMin, route, head, bus, ageSGET /api/bus/{busId} → bus position, next haltewss://transit.oyenza.com/api/live → real-time positions// GET /api/halte/{id}
{
"id": "B00248P",
"name": "Cibubur Junction",
"now": 1791764678524,
"arrivals": [
{
"bus": "MYS-21238",
"route": "P11",
"head": "Blok M Jalur 4",
"kind": "jabodetabek",
"etaMin": 5,
"ageS": 34
}
]
}
// GET /api/stats
{
"now": 1791764672962,
"buses": 3811,
"byKind": {"mikrotrans": 2330, "brt": 666, ...},
"byRoute": {"1": 54, "P11": 27, ...}
}
~/.qclaw-oversea/skills/transit-jakarta/cache//api/meta → compare static fieldbrt, integrasi, mikrotrans, jabodetabek, royal, rusun, wisata🚌 P11 • Blok M Jalur 4 — Cibubur Junction
──────────────────────────────────────────
ETA 5 menit (MYS-21238) ⭐ Tiba sekarang
ETA 11 menit (BHL-210xxx)
ETA 18 menit (BHL-209xxx)
🕐 Updated: baru saja (live)
📡 3 bus P11 aktif di rute ini
transit.py — CLI entry point ( argparse + all commands)api.py — API client (requests + error handling)cache.py — Static data cache managerformatters.py — Output formatting (colored terminal output)