nagobot

command module
v1.7.64 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 11, 2026 License: MIT Imports: 5 Imported by: 0

README

nagobot

nagobot

Autonomous AI bot framework built with Go. Multi-channel, multi-provider, multi-agent.

Website · Releases · Docs

Web Dashboard

Telegram Bot

Install

curl -fsSL https://nagobot.com/docker_install.sh | bash

One command: it writes ~/.nagobot/docker-compose.yml, asks for a provider API key (or takes one non-interactively: DEEPSEEK_API_KEY=sk-... curl -fsSL https://nagobot.com/docker_install.sh | bash), and starts the container. Web UI on port 8080 — login-gated: mint a one-time login link with nagobot login-link (in Docker: docker compose -f ~/.nagobot/docker-compose.yml exec nagobot nagobot login-link), open it, and register a passkey.

Everything lives in ~/.nagobot — config, sessions, memory, plus the compose file and .env — the same layout as a native install, so migrating between native and container is zero-copy and backup/uninstall is one directory. Update by re-running the script, or docker compose -f ~/.nagobot/docker-compose.yml pull && docker compose -f ~/.nagobot/docker-compose.yml up -d.

The image (ghcr.io/linanwx/nagobot, amd64/arm64) ships python3 with document libs, poppler, node, and ripgrep, so the agent's exec tool is fully capable in the container. Add an OPENROUTER_API_KEY to ~/.nagobot/.env to enable semantic pre-think (recommended — it powers destructive-action detection).

Native (macOS / Linux)
curl -fsSL https://nagobot.com/install.sh | bash

Windows (PowerShell):

irm https://nagobot.com/install.ps1 | iex

Then run the setup wizard:

nagobot onboard

This handles provider selection, API keys, channel configuration, and service installation. Re-run after updating.

Start chatting:

nagobot cli

What it does

  • Multi-provider — DeepSeek, OpenAI, OpenRouter, Moonshot, Zhipu
  • Multi-channel — Telegram, Discord, Feishu, Web, CLI
  • Multi-agent — Custom agent templates with async thread spawning
  • Always on — Cron scheduling, auto-restart, three-tier context compression
  • 38+ skills — Web search, code execution, file management, and more

Build from source

go build -o nagobot .

Docs

Documentation

Overview

nagobot is a lightweight, Go-based AI assistant.

Directories

Path Synopsis
Package agent provides prompt builders.
Package agent provides prompt builders.
Package auth implements web login for nagobot.
Package auth implements web login for nagobot.
Package channel provides messaging channel interfaces and implementations.
Package channel provides messaging channel interfaces and implementations.
cmd
Package cmd provides CLI commands.
Package cmd provides CLI commands.
Package config handles configuration loading and saving.
Package config handles configuration loading and saving.
experiments
glm5 command
Minimal experiment for Zhipu GLM-5 API.
Minimal experiment for Zhipu GLM-5 API.
minimax command
Minimal experiment for MiniMax M2.7 API.
Minimal experiment for MiniMax M2.7 API.
internal
Package logger provides a minimal slog-based logging wrapper.
Package logger provides a minimal slog-based logging wrapper.
Package media provides helpers for the upfront media preview: MIME detection for building "<<media:mime:path>>" markers, and tag formatting for injecting a preview result into the wake payload.
Package media provides helpers for the upfront media preview: MIME detection for building "<<media:mime:path>>" markers, and tag formatting for injecting a preview result into the wake payload.
Package monitor provides metrics collection, storage, and balance checking.
Package monitor provides metrics collection, storage, and balance checking.
Package obs provides request tracing for the message pipeline: one trace per inbound message, from the channel that received it through the queue, the turn, every LLM call and every tool execution.
Package obs provides request tracing for the message pipeline: one trace per inbound message, from the channel that received it through the queue, the turn, every LLM call and every tool execution.
provider/chat_result.go
provider/chat_result.go
Package push implements Web Push notification delivery for the web channel: VAPID key management, a file-backed subscription store, and best-effort sending.
Package push implements Web Push notification delivery for the web channel: VAPID key management, a file-backed subscription store, and best-effort sending.
Package skills provides the skill system for nagobot.
Package skills provides the skill system for nagobot.
Package tgmd converts standard Markdown into Telegram-compatible HTML.
Package tgmd converts standard Markdown into Telegram-compatible HTML.
msg
Package msg defines the WakeMessage type and the YAML-frontmatter helpers shared across thread, tools, session, and cmd.
Package msg defines the WakeMessage type and the YAML-frontmatter helpers shared across thread, tools, session, and cmd.
Package tools provides the tool interface and built-in tools.
Package tools provides the tool interface and built-in tools.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL