Gobot is a shared Go runtime for several Telegram bots and background scouts. Each bot has a distinct user-facing scope, while the process reuses common integrations such as Telegram, Yahoo Finance, Reddit, Supabase, Spotify, and YouTube.
finance: configurable watchlist analysis bot for stocks and ETFssaaham: stateless quote bot for exact-symbol stock and ETF lookupsfreegames: scout that posts free Steam and Epic finds to Telegramspotifytube: converts between Spotify tracks and YouTube linksantam: gold price bot for Antam pricing, digital gold pricing, and a weekly buy-price channel alertreddit: Reddit media scout that posts curated content to Telegram
The entrypoint is main.go.
- Background scouts start for
freegames,antam,reddit, andfinance - Interactive Telegram bots start for
antam,spotifytube,finance, andsaaham - Shared helpers live under
pkgand configuration keys live inconfig/config.go
- Project docs site: https://100nandoo.github.io/gobot/
- Docs index:
docs/index.md - Domain language:
CONTEXT.md - Architecture decision for the quote bot:
docs/adr/0001-separate-quote-bot-in-shared-runtime.md
The Antam bot currently exposes:
/start: onboarding and command guide/a: Antam price fromhargaemas.com/p: digital gold price frompluang.com/h: digital gold price fromharga-emas.org
The weekly Antam channel scout runs on Wednesday at 10:05 Singapore time and sends a buy-only summary from:
hargaemas.compluang.com
Environment variable names are defined in config/config.go.
Common keys used across the repo include:
SUPABASE_URLSUPABASE_KEYTELEGRAM_BOTANTAM_TELEGRAM_BOTSPOTIFYTUBE_BOTSAAHAM_BOTTELEGRAM_CHANNEL_FREE_GAMESTELEGRAM_CHANNEL_ANTAMTELEGRAM_CHANNEL_REDDITTELEGRAM_CHANNEL_FINANCESPOTIFY_IDSPOTIFY_SECRETYOUTUBE_TOKEN
Install the repo-local Air tool once:
go get -tool github.com/air-verse/air@latestThen run the shared Gobot runtime with automatic rebuild and restart on Go file changes:
go tool airAir is configured by .air.toml to rebuild main.go into ./tmp/main and restart that binary when tracked files change.