GoGogot — a self-hosted AI agent in 8,835 lines of Go
GoGogot is an open-source personal AI agent that runs on your own server. It has a shell, a
filesystem, four web tools, persistent memory and a cron scheduler, and you talk to it through
a Telegram bot you own. One Docker container — the Go binary inside it is about 15 MB, the image itself around 200 MB because it ships a working Ubuntu toolchain, and the agent idles at roughly 10 MB of RAM.
Your API keys stay in environment variables on your machine — there is no account and nothing
phones home. MIT licensed.
The whole agent is one loop
Call the model, run the tool calls it asked for, feed the results back, repeat until it stops
asking. Memory, scheduling, compaction and identity are not subsystems — they are tools the
model can call from inside that loop.
34 tools across 8 groups
- Shell & files — bash, read_file, write_file, edit_file, list_files, file_search, system_info
- Web — web_search, web_fetch, web_request, web_download
- Memory — memory_list, memory_read, memory_write, memory_delete. Plain markdown you can read yourself.
- Skills — skill_list, skill_read, skill_create, skill_update, skill_delete. Teach a procedure once; it runs it again by name.
- Identity — soul_read, soul_write, user_read, user_write. soul.md is who it is, user.md is what it learned about you.
- Scheduling — schedule_add, schedule_list, schedule_pause, schedule_remove. It writes its own cron entries and they survive restarts.
- Conversation — send_message, send_file, ask_user, report_status, recall
- Planning — task_plan
Any model you like
Set GOGOGOT_PROVIDER to anthropic, openai or openrouter, set GOGOGOT_MODEL, and supply the
matching API key. Claude, GPT, DeepSeek, Gemini, Qwen, Nemotron and anything else on
OpenRouter all work by slug. A typical session costs one or two cents.
How it compares
GoGogot is 8,835 lines of Go with 8 direct dependencies and idles at about 10 MB of RAM.
OpenClaw is roughly 430,000 lines of TypeScript with 800+ npm packages and 450 MB of RAM at
idle. Nanobot is about 4,000 lines of Python with 30+ pip packages and 100 MB of RAM.
GoGogot runs on a $4/month VPS. The competitor figures are the author's own measurements.
Deploy
One docker run: pass your Telegram bot token, your Telegram user ID, a provider,
a model and an API key. It is answering you in about a minute.
Read the source on GitHub — MIT licensed.