RTGS2017/NagaAgent

A simple yet powerful agent framework for personal assistants, designed to enable intelligent interaction, multi-agent collaboration, and seamless tool integration.

NagaAgent – A desktop‑centric AI assistant

What it is – NagaAgent is an open‑source, cross‑platform desktop application (Windows / macOS / Linux) that bundles a large‑language‑model chat interface with a rich set of “agentic” tools. It is built with a Python backend (FastAPI, Neo4j, LiteLLM) and an Electron/Vue front‑end, and it targets users who want a personal AI companion that can remember past conversations, call external tools, render a Live2D avatar, and even control the computer (launch apps, browse the web, play games).


Core capabilities (as described in the README)

Area What NagaAgent does
Chat & tool calling Streamed LLM responses (any OpenAI‑compatible provider or Anthropic) with a custom “tool” JSON block syntax that the backend parses and executes. Supports up to 5 tool‑call loops per turn.
Memory (GRAG) Extracts subject‑predicate‑object quintuple facts from dialogue, stores them locally and in a Neo4j graph, and automatically retrieves relevant facts for later turns (Graph‑RAG).
Live2D avatar Shows a 2‑D animated character (Live2D Cubism) that reacts to mouse movement, speech, and tool events. Users can upload their own model directories.
Voice Edge‑TTS for speech synthesis (streamed per sentence) and FunASR / Qwen‑Omni for speech‑to‑text, with lip‑sync driving the Live2D face.
MCP tool framework A plug‑in system (Model Context Protocol) that ships agents for weather, system launcher, game guides, web search, web‑scraping, Playwright automation, vision, MQTT, document extraction, etc. New agents can be added without restarting.
OpenClaw integration A local “agent server” that can run arbitrary Python/Playwright tasks, schedule them, and report results back to the chat.
Knowledge‑graph UI 3‑D “memory cloud” visualisation of the Neo4j graph (nodes = entities, edges = predicates) with mouse‑drag rotation, zoom, and keyword filtering.
Community features Built‑in forum (娜迦网络), points/affinity system, market for downloading community‑made Skills, and a “marketplace” for backgrounds, music, and character packs.
Floating ball mode A lightweight always‑on‑top window that can be toggled between compact, full, and classic layouts for quick chat access.
Music player Integrated BGM player with playlists, synchronized to TTS lip‑sync.

Quick start (from the README)

  1. Clone & install
    git clone https://github.com/Xxiii8322766509/NagaAgent.git
    cd NagaAgent
    # front‑end
    cd frontend && npm install && cd ..
    # back‑end (recommended)
    uv sync   # or create a venv and pip install -r requirements.txt
    
  2. Configure – copy config.json.example to config.json and fill in an LLM API key (DeepSeek, OpenAI, Anthropic, Ollama, etc.).
  3. Run – the front‑end script npm run dev launches the Electron window and starts the Python services automatically.

Typical use cases

  • Personal AI companion – chat with a stylised avatar that remembers your preferences across sessions.
  • Tool‑augmented workflow – ask the assistant to search the web, fetch a document, launch an app, or control IoT devices via the built‑in MCP agents.
  • Game assistance – use the game_guide skill to get strategy tips, auto‑recognise game screens, or hook into external bots (e.g., MAA) for automated play.
  • Knowledge management – let the system extract facts from conversations, store them in a Neo4j graph, and later query them as context for new chats.
  • Voice‑first interaction – speak to the assistant and hear responses, with live lip‑sync on the avatar.

License

  • Dual licensing: AGPL‑3.0 for the open‑source parts and a proprietary “closed‑source” license for commercial use (requires written permission). The repository includes both LICENSE (AGPL) and LICENSE-CLOSED-SOURCE files.

Bottom line

NagaAgent is a full‑stack, desktop‑focused AI assistant that combines LLM chat, tool calling, graph‑based memory, Live2D avatar rendering, voice I/O, and a plug‑in ecosystem. It is a genuine software project aimed at users who want an extensible, visually rich AI companion rather than a simple tutorial or curated list.

Related

  • Project
  • Project
  • Project
  • Project
  • Project