A field guide, not a reference
The Hermes Cookbook
This is the book I wanted when I started shipping bots on Hermes: short chapters, real code, and the mistakes called out before you make them. It assumes you know Go and have talked to BotFather at least once. Everything else, we build up.
Hermes is a Telegram bot framework for Go with a simple promise: the core module depends on nothing outside the standard library, routing is allocation-free, and every one of the 185 Bot API methods is typed. You write ordinary Go; Hermes stays out of the way.
package main
import (
"context"
"log"
"os"
"github.com/sidwiskers/hermes"
)
func main() {
bot := hermes.New(os.Getenv("BOT_TOKEN"))
bot.Use(hermes.Recover())
bot.Command("start", func(c *hermes.Context) error {
return c.Send("Hello.")
})
log.Fatal(bot.Run(context.Background()))
}
That is a complete, production-shaped bot. The rest of the book is about everything between this and a fleet of hardened, well-tested bots: webhooks, keyboards, typed callbacks, sessions, state machines, media, ephemeral messages, rate limiting, deduplication, testing, and running many bots in one process.
Chapters 1–3 are the spine, so read them in order. After that, jump around. Code samples track the current Hermes release, and every claim about behaviour comes from the framework's own test suite and release evidence, not from wishful thinking.