NagaAgent
NagaAgent 是一款专为个人用户打造的智能助手框架,旨在通过生动的二次元虚拟形象(Live2D)提供亲切自然的交互体验。它不仅仅是一个聊天机器人,更是一个具备“超能力”的桌面伙伴,能够解决用户在信息检索、任务自动化及游戏辅助等方面的复杂需求。
普通用户无需具备编程背景即可轻松上手。NagaAgent 支持一键登录自动配置,让用户能立即与拥有独特人设的虚拟角色进行语音或文字互动。其核心优势在于强大的自主执行能力:内置的 OpenClaw 模块可自动探索网络知识、规划并执行多步骤任务;独特的“记忆云海”技术能将对话历史转化为三维知识图谱,确保持续且连贯的智能记忆;此外,它还具备游戏画面识别与自动操作功能,甚至能操控浏览器和管理本地文件。
对于喜欢个性化体验的用户,NagaAgent 提供了丰富的自定义选项,包括角色音色、背景故事及技能插件。无论是希望提升日常效率的办公族,还是寻求智能游戏辅助的玩家,亦或是喜爱虚拟陪伴的二次元爱好者,都能在其中找到适合自己的使用场景。通过将复杂的 AI 技术封装在直观的界面之下,NagaAgent 让尖端的人工智能真正成为了触手可及的日常工具。
使用场景
独立游戏开发者小林正在攻克一款动作 RPG 的关卡设计,同时需要实时参考大量攻略数据并管理复杂的开发任务。
没有 NagaAgent 时
- 信息检索割裂:需要在浏览器、攻略网站和笔记软件间反复切换,手动复制粘贴关键数值,效率极低且容易出错。
- 缺乏长期记忆:每次开启新对话都要重新向 AI 陈述项目背景、角色设定和当前进度,上下文丢失严重。
- 操作繁琐枯燥:测试游戏时需要人工重复跑图记录数据,无法自动识别画面细节或执行批量操作,占用大量创意时间。
- 交互体验冰冷:传统的命令行或文本框交互缺乏情感连接,长时间独自开发容易产生孤独感,难以维持高昂热情。
使用 NagaAgent 后
- 智能探索执行:通过内置 OpenClaw 技能,NagaAgent 能自动搜索最新攻略并提取数值,甚至直接规划任务链路完成资料整理。
- 三维记忆云海:基于对话历史自动构建记忆图谱,NagaAgent 能主动调用之前的设定和线索,无需重复交代背景即可无缝续接工作。
- 自动化游戏辅助:利用视觉识别分析实时游戏画面,NagaAgent 可联动 MAA 插件自动执行刷图测试,并即时给出平衡性调整建议。
- 沉浸式伙伴协作:Live2D 虚拟形象配合语音交互,让 NagaAgent 成为有温度的“二次元同事”,鼠标互动与亲切对话显著缓解开发压力。
NagaAgent 将碎片化的工具链整合为具备记忆与情感的智能伙伴,让开发者从机械劳动中解放,专注于核心创意创造。
运行环境要求
- Windows
- macOS
- Linux
未说明
未说明

快速开始
NagaAgent
你的二次元超能AI助手
流式工具调用 · 知识图谱记忆 · Live2D 虚拟形象 · 语音交互 · 娜迦网络社区
《娜迦协议》包括对话、记忆、MCP、skills、openclaw集成,以打造丰富且易用的ai工具为核心,成为用户端侧的二次元超能ai助手。
软件包含如下功能:①一键登陆自动配置所有apikey,与具备Live2d形象的娜迦进行鼠标互动和亲切对话;②通过内置openclaw快速探索自己需要的知识领域,或是列出任务方向让其自动探索执行;③根据对话历史自动构建三维记忆云海,并将记忆注入后续对话;④通过对话之余留下的线索碎片,探索娜迦网络中的神秘娜迦世界;⑤内置游戏攻略功能,可通过交互或自动识别游戏画面,了解到游戏正在进行的细节信息,并给出建议。可通过MAA等游戏操作插件来自动打游戏;⑥还具有自我配置、浏览器操纵、音乐盒等丰富组件。
娜迦的一切未来,等你探索。
双许可证 · 开源采用 AGPL-3.0,闭源采用 专属许可(需书面授权)。 商业合作:contact@nagaagent.com / bilibili【柏斯阔落】
更新日志
| 日期 | 版本 | 内容 |
|---|---|---|
| 🛰️ 2026-03-14 | — | 干员通讯录升级为设置弹窗(名称 / 人设 / 引擎 / 灵魂文档 / 专有 MCP·Skill);技能工坊接入 NagaHub 与通用 MCP 预热;探索链路新增 QQ / 飞书完成通知;云端记忆优先时不再回退本地 Neo4j |
| 🧩 2026-03-13 | — | OpenClaw 编排链路与打包集成继续扩展;后端 spec 修复 Windows 控制台 Unicode 输出报错 |
| 🧱 2026-03-11 | — | OpenClaw Skill 自动执行;干员独立 workspace;模型选择器与定价显示接入 Default / Deepseek-V3.2 / Kimi-K2.5 |
| 🛠️ 2026-03-09 | — | 深度集成 OpenClaw vendor 源码编译与统一配置;论坛未登录 401 风暴修复;Windows 托盘图标修复 |
| 📦 2026-03-08 | — | naga-backend.spec 持续修正;应用扫描器支持环境变量与 macOS;工具结果默认折叠;枢机集市移除记忆云迁 / MCP 工具 / 智能体技能三板块 |
| 🚦 2026-03-07 | — | Node.js 与 uv 运行时随包分发;MCP 命令解析器统一;OpenClaw Gateway 启动诊断增强;打包版音乐 / 唤醒语音 / 记忆云海等问题修复 |
| 🧰 2026-03-06 | — | GitHub Actions 构建发布流水线;Electron 自动更新替换旧补丁系统;CI 构建资源与 charset_normalizer 打包修复;论坛与积分轮询细节优化 |
| 🔊 2026-03-05 | — | TTS 开关、消息队列与串行发送重构;RAG 记忆召回增强;Gemini / 自动 Function Calling 支持;充值界面与远程记忆稳定性修复 |
| 🧠 2026-03-04 | — | 迁移到原生 Function Calling;DogTag 接管 heartbeat / proactive vision;前后端热补丁系统与 4 层安全防护;流式文本与渐进式 TTS 优化 |
| 🔎 2026-03-03 | — | web_search 直接接入 NagaBusiness 搜索代理;论坛连接、TTS 流式播放与 OpenClaw 轮询降级修复;Live2D 与 Electron 稳定性修复 |
| ❤️ 2026-03-02 | — | Heartbeat v3 事件驱动重构;naga_control 自编排工具;打包时嵌入 agent-browser;启动诊断、健康检查与 OpenClaw 配置路径修复 |
| 🌐 2026-03-01 | — | 已登录走 NagaBusiness、未登录走 Brave / OpenClaw 的搜索代理成型;OpenClaw 工具直调与自动启动完善;游戏攻略与角色音色配置更新 |
| 🗂️ 2026-02-28 | — | 持久化存储统一迁移到 ~/.naga 用户目录;ForumQuotaView 网络探索控制中心;旅行模块与语音交互全面升级 |
| 🎙️ 2026-02-27 | — | 接入 ASR 语音识别(MediaRecorder + NagaBusiness 代理);会话风格、Electron 背景、MCP vision 与服务器配置整理 |
| 🎆 2026-02-26 | 5.1.0 | 娜迦网络社区论坛上线;设置三合一重构;旅行模式;积分配额页;枢机集市与主面板更新 |
| ⚡ 2026-02-25 | 5.1.0 | TTS 全链路修复(CORS / asyncio);build.py 跨平台构建;上下文压缩持久化;角色系统更新;提示词注入架构重构 |
| 🎵 2026-02-24 | — | Neo4j 连接超时修复;统一 BGM 播放器;音律坊歌单编辑;MCP 管理 UI;悬浮球透明窗口 + 悬停亮度 |
| 🏗️ 2026-02-23 | — | 跨平台构建完善;版本号统一 pyproject.toml 管理;提示词/截图/视觉优化;角色文件打包迁移 |
| 💕 2026-02-22 | — | 积分好感度系统(签到 / 好感度 / 积分);悬浮球阴影与拖拽修复;登录自动恢复;OpenClaw hooks 修复 |
| 🎶 2026-02-21 | — | 音律坊图标更新;MCP Agents 更新;悬浮球小按钮 |
| 🗜️ 2026-02-20 | — | 上下文压缩三级重构(<compress> 标签 / 跨会话继承);MCP 管理 UI;悬浮球透明窗口;音律坊功能修正 |
| 🔄 2026-02-19 | — | SSE 去除 base64 直接 JSON 传输;移除冗余后台意图分析器;config_manager 自动检测编码 |
| 🔧 2026-02-17 | — | 悬浮球序列帧路径改为相对路径,修复打包后头像不显示 |
| 🚀 2026-02-16 | 5.0.0 | NagaModel 网关统一接入;DeepSeek 推理链实时展示;记忆云海 UI 自适应修复 |
| 🧠 2026-02-15 | — | 统一附加知识块 + 消除历史污染;LLM 流式重试;七天自动登录;开机自启动 |
| 🌊 2026-02-14 | — | NagaMemory 云端远程记忆;意识海 3D 重写;启动粒子动画;版本更新检查弹窗;用户使用协议 |
| ✨ 2026-02-13 | — | 悬浮球 4 状态模式;截屏多模态视觉切换;技能工坊重构;Live2D 表情通道独立 |
| 🎨 2026-02-12 | — | NagaCAS 认证;Live2D 4 通道正交动画架构;Agentic Tool Loop;明日方舟风格启动界面 |
| 📦 2026-02-11 | — | 嵌入式 OpenClaw 打包;启动自动从模板生成配置文件 |
| 🛠️ 2026-02-10 | — | 后端打包优化;技能工坊 MCP 状态修复;去除冗余 Agent/MCP 仅保留 OpenClaw |
| 🌱 2026-02-09 | — | 前端重构;Live2D 禁用眼睛追踪;OpenClaw 更名为 AgentServer |
目录
快速开始
环境要求
- Python 3.11(
>=3.11, <3.12) - 可选:uv — 加速依赖安装
- 可选:Neo4j — 本地知识图谱记忆
安装
git clone https://github.com/Xxiii8322766509/NagaAgent.git
cd NagaAgent
#前端安装
cd frontend
npm install
cd..
#后端安装
# 方式一:setup 脚本(自动检测环境、创建虚拟环境、安装依赖)
python setup.py
# 方式二:uv
uv sync
# 方式三:手动
python -m venv .venv
source .venv/bin/activate # Windows: .\.venv\Scripts\activate
pip install -r requirements.txt
最小配置
复制 config.json.example 为 config.json,填入 LLM API 信息:
{
"api": {
"api_key": "your-api-key",
"base_url": "https://api.deepseek.com",
"model": "deepseek-v3.2"
}
}
支持所有 OpenAI 兼容 API(DeepSeek、通义千问、OpenAI、Ollama 等)。
启动
cd frontend && npm run dev (配置了一键启动)
功能导览(主面板)
启动后进入主面板(PanelView),采用 3D 视差效果(鼠标移动触发透视旋转)。 所有功能从主面板的八个入口按钮展开:
| # | 入口 | 路由 | 功能概要 |
|---|---|---|---|
| 1 | 对话 | /chat |
AI 对话、流式工具调用、上下文压缩 |
| 2 | 记忆云海 | /mind |
知识图谱 3D 可视化与 GRAG 记忆管理 |
| 3 | 技能工坊 | /skill |
MCP 工具管理与社区 Skill 安装 |
| 4 | 娜迦网络 | /forum / /forum/quota |
社区论坛、积分好感度 |
| 5 | 枢机集市 | /market |
背景、音乐、角色、记忆迁移、充值 |
| 6 | 终端设置 | /config |
模型连接、记忆连接、音画配置(三合一) |
| 7 | 音律坊 | /music |
BGM 播放器与歌单管理 |
| 8 | 悬浮球 | — | 进入轻量悬浮球窗口模式 |
1. 对话 · MessageView
流式工具调用
对话引擎通过 SSE 流式输出,同时实时送达前端显示与 TTS 分句播放。
工具调用不依赖 OpenAI Function Calling API,LLM 在文本中以 ```tool``` 代码块嵌入 JSON,任何 OpenAI 兼容提供商均可使用。
单轮工具调用流程:
LLM 流式输出 ──SSE──▶ 前端实时显示
│
▼
parse_tool_calls_from_text()
├─ Phase 1: 提取 ```tool``` 代码块
└─ Phase 2: 兜底提取裸 JSON
│
▼
按 agentType 路由
├─ "mcp" → MCPManager.unified_call()
├─ "openclaw" → Agent Server /openclaw/send
└─ "live2d" → UI 动画通知
│
▼
asyncio.gather() 并行执行所有工具
│
▼
结果注入 messages,进入下一轮 LLM 调用(最多 5 轮)
- 文本解析:
json5容错解析,全角字符自动标准化 - SSE 格式:
data: {"type":"content"|"reasoning","text":"..."}\n\n(直接 JSON,不含 base64) - 循环上限:
max_loop_stream = 5(可配置)
源码:apiserver/agentic_tool_loop.py
上下文压缩
会话 token 超过 100k 时自动触发压缩,避免上下文溢出:
| 阶段 | 触发时机 | 行为 |
|---|---|---|
| 启动压缩 | 会话加载时 | 历史超阈值则立即压缩前段消息 |
| 运行时压缩 | 每轮对话后 | 超限则压缩并注入 <compress> 标签 |
| 跨会话继承 | 新会话启动 | 读取上次摘要,滚动累积上下文 |
摘要结构(6 分区):关键事实 / 用户偏好 / 重要决定 / 待办事项 / 背景信息 / 最近状态。
<compress> 标签持久化到会话文件,不计入 LLM token 统计。
DeepSeek 推理链展示
使用 DeepSeek 时,reasoning 字段通过 SSE 实时推送,前端以独立样式展示思考过程。
2. 记忆云海 · MindView
GRAG 知识图谱记忆
GRAG(Graph-RAG)从对话中自动提取五元组并存入 Neo4j,对话时自动检索作为 LLM 上下文。
五元组结构:(主体, 主体类型, 谓词, 客体, 客体类型)
提取流程:
- 结构化提取(优先):
beta.chat.completions.parse()+ PydanticQuintupleResponse,temperature=0.3,重试 3 次 - JSON 党底:解析失败时提取首个
[到末尾]的内容 - 过滤规则:只保留事实(行为、关系、状态、偏好),过滤隐喻、假设、纯情感
实体类型: person / location / organization / item / concept / time / event / activity
任务管理器:
- 3 个 asyncio worker 消费
asyncio.Queue(maxsize=100) - SHA-256 去重:相同文本的重复任务自动跳过
- 每小时清理超过 24h 的已完成任务
双重存储:
- 本地:
logs/knowledge_graph/quintuples.json - 云端:Neo4j 图数据库,
graph.merge()upsert
RAG 检索: 关键词提取 → Cypher 查询 → 格式化为 主体(类型) —[谓词]→ 客体(类型) 注入上下文
远程记忆: 登录用户优先使用 NagaMemory 云端;未登录时可使用本地 GRAG。为避免性能损耗,云端链路不再自动回退本地 Neo4j。
意识海 3D 可视化
Canvas 2D + 手写 3D 投影(非 WebGL),球面坐标相机,透视除法 700 / depth。
7 层渲染顺序: 背景渐变 → 地面网格 → 水面平面 → 体积光(3 束光柱)→ 粒子系统(3 层 125 颗)→ 生物荧光浮游生物(10 个带拖尾)→ 知识图谱节点与边(深度排序)
图谱映射: subject/object → 节点,predicate → 有向边,度中心性 → 节点高度权重,上限 100 节点
交互: 拖拽旋转、中键平移、滚轮缩放、节点点选/拖拽、关键词搜索过滤
3. 技能工坊 · SkillView
内置 MCP Agent
基于 Model Context Protocol 的可插拔工具架构,每个工具以独立 Agent 运行:
| Agent | 功能 |
|---|---|
weather_time |
天气查询 / 预报、系统时间、自动城市 / IP 检测 |
open_launcher |
扫描系统已安装应用,自然语言启动程序 |
game_guide |
游戏策略问答、伤害计算、配队推荐、自动截图注入 |
online_search |
基于 SearXNG 的网络搜索 |
crawl4ai |
基于 Crawl4AI 的网页内容提取 |
playwright_master |
基于 Playwright 的浏览器自动化 |
vision |
截图分析与视觉问答 |
mqtt_tool |
MQTT 协议 IoT 设备控制 |
office_doc |
docx / xlsx 内容提取 |
注册与发现: mcp_registry.py glob 扫描 **/agent-manifest.json,importlib.import_module 动态实例化。
MCP 管理 UI
前端 McpAddDialog.vue 提供图形化 MCP 工具管理界面,支持在线添加 / 删除工具(无需重启)。
社区 Skill 安装
技能工坊支持一键安装社区发布的 Skill(Agent Browser、Brainstorming、Context7、Firecrawl Search 等)。
后端接口:GET /openclaw/market/items、POST /openclaw/market/items/{id}/install
源码:mcpserver/
4. 娜迦网络 · 论坛社区
社区论坛
从主面板"娜迦网络"区块进入,内嵌完整社区功能:
| 视图 | 路由 | 功能 |
|---|---|---|
ForumListView |
/forum |
帖子列表、分类筛选 |
ForumPostView |
/forum/post/:id |
帖子详情浏览(当前版本为只读,不提供前端评论与“想要认识”操作) |
ForumMessagesView |
/forum/messages |
私信消息 |
ForumMyPostsView |
/forum/my-posts |
我的发帖 |
ForumMyRepliesView |
/forum/my-replies |
我的回复 |
ForumQuotaView |
/forum/quota |
积分配额与探索入口 |
积分好感度系统
登录用户专属的游戏化互动体系:
| 维度 | 说明 |
|---|---|
| 积分 (Credits) | 签到 / 连签奖励积累,用于兑换模型额度 |
| 好感度 (Affinity) | 每次签到增长,反映与娜迦的关系深度 |
| 每日签到 | 用户菜单一键签到,连续签到触发额外奖励 |
相关 API(通过 API Server 代理至 Naga 门户):/api/checkin、/api/affinity、/api/credits
5. 枢机集市 · MarketView
枢机集市整合了所有资源获取与管理入口,分为七个 Tab:
| Tab | 说明 |
|---|---|
| 界面背景 | 切换应用主题背景 |
| 音之巷 | 购买 / 解锁音乐专辑(当前:沙之书) |
| 角色注册 | 绑定 / 切换 AI 角色(需登录) |
| 记忆云迁 | 云端记忆数据迁移与管理 |
| MCP 工具 | MCP 工具图形化管理 |
| 智能体技能 | 社区 Skill 一键安装 |
| 模型充值 | Naga 门户积分充值 |
6. 终端设置 · ConfigView
设置页三合一重构,原分散配置集中在单一页面的三个 Tab:
| Tab | 内容 |
|---|---|
| 模型连接 | LLM API Key、Base URL、模型选择 |
| 记忆连接 | Neo4j 连接参数、NagaMemory 云端配置 |
| 音画配置 | 角色档案、Live2D 模型与 SSAA、TTS 声音、聊天字号 |
角色卡系统
characters/ 目录管理可切换的 AI 角色,每个角色以 JSON 配置文件描述:
{
"ai_name": "娜杰日达",
"user_name": "用户",
"live2d_model": "NagaTest2/NagaTest2.model3.json",
"prompt_file": "conversation_style_prompt.txt",
"portrait": "Naga.png",
"bio": "由开发者柏斯阔落亲手创造的AI助手,简称娜迦。"
}
- 每个角色目录包含独立的对话风格提示词、Live2D 模型资源、立绘图像
- 激活角色后,AI 名称与 Live2D 模型由角色 JSON 统一管理,不可在界面手动覆盖
- 默认角色:娜杰日达
源码:characters/
7. 音律坊 · MusicView
独立音乐播放器,与主界面 BGM 共享同一播放实例(统一 BGM 架构):
- 歌单编辑(
MusicEditView):管理曲目列表,保存后实时同步至全局播放器 - 播放状态同步:播放 / 暂停图标与音频事件实时联动
- 列表循环:当前曲目结束后自动播放下一首
- Live2D 口型同步:TTS 播放期间,
AdvancedLipSyncEngineV2以 60FPS 驱动 Live2D 嘴形
8. 悬浮球 · FloatingView
点击主面板"悬浮"按钮进入轻量悬浮球窗口模式,四种状态循环切换:
ball(100×100 圆球)→ compact(420×100 折叠条)→ full(420×N 展开)→ classic(正常窗口)
外观与动效:
- 序列帧眨眼动画:5 帧(睁眼 → 半闭 → 闭眼 → 半闭 → 着眼),70ms / 帧,随机间隔触发
- 生成回复时:球体光晕脉冲特效
- 悬停时:亮度提升效果
- 透明无边框窗口,支持自由拖拽定位
功能:
- 悬浮状态下可直接输入对话,历史消息在 compact / full 状态下可回溯
- 截图捕获面板:选取屏幕窗口作为图像附件
- 文件上传支持
- 右键菜单通过 Electron 原生菜单实现(避免小窗口裁剪)
全局功能
语音交互
TTS(语音合成)
- 引擎:Edge-TTS,OpenAI 兼容接口
/v1/audio/speech - 架构:3 线程流水线 — 分句队列 → TTS 调用(Semaphore(2) 并发)→ pygame 播放
- Live2D 口型同步:60FPS 提取 5 参数(mouth_open / mouth_form / mouth_smile / eye_brow_up / eye_wide)
- 端口清理:启动时自动检测并释放占用端口
ASR(语音识别)
- 本地引擎:FunASR,支持 VAD 端点检测与 WebSocket 实时流
- 三模式自动切换:
LOCAL(FunASR)→END_TO_END(Qwen Omni)→HYBRID
实时语音对话(需 DashScope API Key)
- 基于 Qwen Omni 的全双工 WebSocket 语音交互
- 回声抑制、VAD 检测、音频分块(200ms)、会话冷却控制
{
"voice_realtime": {
"enabled": true,
"provider": "qwen",
"api_key": "your-dashscope-key",
"model": "qwen3-omni-flash-realtime"
}
}
源码:voice/
Live2D 虚拟形象
使用 pixi-live2d-display + PixiJS WebGL 渲染 Cubism Live2D 模型。
SSAA 超采样抗锯齿:Canvas 按 width × ssaa 渲染,CSS transform: scale(1/ssaa) 缩放。
4 通道正交动画系统(live2dController.ts):
| 通道 | 控制内容 | 特性 |
|---|---|---|
| 体态 (State) | idle / thinking / talking 循环 | hermite 平滑插值,从 naga-actions.json 加载 |
| 动作 (Action) | 点头 / 摇头等头部动作 | FIFO 队列,单一执行 |
| 表情 (Emotion) | .exp3.json 表情文件 |
Add / Multiply / Overwrite 三种混合模式,指数衰减过渡 |
| 追踪 (Tracking) | 鼠标视线跟随 | 可配延迟启动,tracking_hold_delay_ms |
合并顺序:体态 → 嘴形 → 动作 → 手动覆盖 → 表情混合 → 追踪混合
OpenClaw 电脑控制
对接 OpenClaw Gateway(端口 18789),通过自然语言调度 AI 编程助手执行本地任务。
- 三级回退启动: 打包内嵌 → 全局
openclaw命令 → 自动npm install -g openclaw - 支持 sessionKey hooks(2026.2.17+),可配置自定义 hooks 路径
POST /openclaw/send发送指令,最长等待 120 秒
任务调度器(TaskScheduler):
- 任务步骤记录(目的 / 内容 / 输出 / 分析 / 成功与否)
- 自动提取"关键发现"标记
- 内存压缩:步骤数超阈值时调用 LLM 生成
CompressedMemory(key_findings / failed_attempts / current_status / next_steps) schedule_parallel_execution()通过asyncio.gather()并行执行任务列表
源码:agentserver/
启动动画
| 阶段 | 内容 |
|---|---|
| 标题阶段 | 黑色遮罩 + 40 颗金色上升粒子 + 标题图片 2.4s CSS keyframe;标题出现时自动播放唤醒语音 |
| 进度阶段 | Neural Network 粒子背景 + Live2D 透出框 + 金色进度条(requestAnimationFrame 插值,最低速度 0.5 兜底) |
| 停滞检测 | 3 秒无进度变化显示重启提示;进度 25% 后每秒轮询后端 /health |
| 唤醒 | 进度 100% 后显示"点击唤醒"脉冲提示 |
后端架构
NagaAgent 由四个独立微服务组成,main.py 统一编排启动:
┌─────────────────────────────────────────────────────────┐
│ Electron / PyQt5 前端 │
│ Vue 3 + Vite + UnoCSS + PrimeVue + pixi-live2d-display │
│ │
│ PanelView · MessageView · MindView · SkillView │
│ MarketView · ConfigView · MusicView · FloatingView │
│ ForumListView · ForumPostView · ForumQuotaView … │
└──────────┬─────────────┬──────────────┬─────────────────┘
│ │ │
┌───────▼──────┐ ┌────▼────┐ ┌─────▼──────┐
│ API Server │ │ Agent │ │ Voice │
│ :8000 │ │ Server │ │ Service │
│ │ │ :8001 │ │ :5048 │
│ 对话 / SSE │ │ │ │ │
│ 工具调用 │ │ 任务调度│ │ TTS / ASR │
│ 上下文压缩 │ │ OpenClaw│ │ 实时语音 │
│ 文档上传 │ │ │ │ │
│ 认证代理 │ └────┬────┘ └────────────┘
│ 记忆 API │ │
│ Skill 市场 │ ┌───▼──────────┐
│ 配置管理 │ │ OpenClaw │
└──────┬───────┘ │ Gateway │
│ │ :18789 │
┌──────▼──────┐ └─────────────┘
│ MCP Server │
│ :8003 │
│ 工具注册 │
│ Agent 发现 │
│ 并行调度 │
└──────┬──────┘
│
┌───────┴───────────────────────┐
│ MCP Agents(可插拔) │
│ 天气 | 搜索 | 抓取 | 视觉 │
│ 启动器 | 攻略 | 文档 | MQTT │
└───────────────────────────────┘
│
┌──────▼──────┐
│ Neo4j │
│ :7687 │
│ 知识图谱 │
└─────────────┘
目录结构
NagaAgent/
├── main.py # 统一入口,编排所有服务
├── build.py # 跨平台构建脚本
├── config.json # 运行时配置(从 config.json.example 复制)
├── pyproject.toml # 版本 5.1.0,项目元数据与依赖
│
├── apiserver/ # API Server(:8000)
│ ├── api_server.py # FastAPI 主应用
│ ├── agentic_tool_loop.py # 多轮工具调用循环
│ ├── llm_service.py # LiteLLM 统一 LLM 调用
│ └── streaming_tool_extractor.py # 流式分句 + TTS 分发
│
├── agentserver/ # Agent Server(:8001)
│ ├── agent_server.py
│ └── task_scheduler.py # 任务编排 + 压缩记忆
│
├── mcpserver/ # MCP Server(:8003)
│ ├── mcp_server.py
│ ├── mcp_registry.py # manifest 扫描 + 动态注册
│ ├── mcp_manager.py # unified_call() 路由
│ ├── agent_weather_time/
│ ├── agent_open_launcher/
│ ├── agent_game_guide/
│ ├── agent_online_search/
│ ├── agent_crawl4ai/
│ ├── agent_playwright_master/
│ ├── agent_vision/
│ ├── agent_mqtt_tool/
│ └── agent_office_doc/
│
├── summer_memory/ # GRAG 知识图谱记忆
│ ├── quintuple_extractor.py
│ ├── quintuple_graph.py
│ ├── quintuple_rag_query.py
│ ├── task_manager.py
│ ├── memory_manager.py
│ └── memory_client.py # NagaMemory 远程客户端
│
├── voice/ # 语音服务(:5048)
│ ├── output/ # TTS + 口型同步
│ └── input/ # ASR + 实时语音
│
├── characters/ # 角色配置目录
│ └── 娜杰日达/ # prompt / Live2D 模型 / 立绘
│
├── frontend/ # Electron + Vue 3 前端
│ ├── electron/ # 主进程
│ │ └── modules/ # backend / hotkeys / menu / tray / updater / window
│ └── src/
│ ├── views/ # 所有页面视图
│ ├── forum/ # 论坛模块
│ ├── components/ # 通用组件
│ ├── composables/ # useAuth / useBackground / useAudio …
│ └── utils/ # live2dController / session / config
│
├── system/ # 配置加载、环境检测、系统提示词
├── guide_engine/ # 游戏攻略引擎
└── logs/ # 运行日志、知识图谱文件
可选配置
知识图谱记忆(Neo4j)
安装 Neo4j(Docker 或 Neo4j Desktop),配置 config.json:
{
"grag": {
"enabled": true,
"neo4j_uri": "neo4j://127.0.0.1:7687",
"neo4j_user": "neo4j",
"neo4j_password": "your-password"
}
}
不配置 Neo4j 时,GRAG 仅使用本地 JSON 文件存储,功能不受影响。
语音交互(TTS / ASR)
{
"system": { "voice_enabled": true },
"tts": {
"port": 5048,
"default_voice": "zh-CN-XiaoxiaoNeural"
}
}
实时全双工语音对话(需通义千问 DashScope API Key):
{
"voice_realtime": {
"enabled": true,
"provider": "qwen",
"api_key": "your-dashscope-key",
"model": "qwen3-omni-flash-realtime"
}
}
Live2D 虚拟形象(自定义模型)
{
"web_live2d": {
"ssaa": 2,
"model": {
"source": "./models/your-model/model.model3.json",
"x": 0.5,
"y": 1.3,
"size": 6800
},
"face_y_ratio": 0.13,
"tracking_hold_delay_ms": 100
}
}
启用角色卡后,ai_name 与 model.source 由角色 JSON 自动覆盖,无需手动修改。
MQTT 物联网控制
{
"mqtt": {
"enabled": true,
"broker": "mqtt-broker-address",
"port": 1883,
"topic": "naga/agent/topic",
"client_id": "naga-agent-client"
}
}
端口一览
| 服务 | 端口 | 说明 |
|---|---|---|
| API Server | 8000 | 主接口:对话、配置、认证、Skill 市场 |
| Agent Server | 8001 | 任务调度、OpenClaw |
| MCP Server | 8003 | MCP 工具注册与调度 |
| Voice Service | 5048 | TTS / ASR |
| Neo4j | 7687 | 知识图谱(可选) |
| OpenClaw Gateway | 18789 | AI 电脑控制(可选) |
故障排除
| 问题 | 解决方案 |
|---|---|
| Python 版本报错 | 必须使用 Python 3.11;推荐用 uv 自动管理版本 |
| 端口被占用 | 检查 8000、8001、8003、5048 是否可用 |
| Neo4j 连接超时 / 挂起 | 已在 2.24 修复;确认 Neo4j 服务已启动 |
| TTS 无声音 / CORS 报错 | 已在 2.25 修复;确认 voice_enabled: true |
| 启动卡在进度条 | 检查 API Key 是否正确;等待 3 秒后出现重启提示 |
| 悬浮球头像不显示 | 已在 2.17 修复序列帧路径;确认使用最新打包版本 |
| config.json 乱码 | 已在 2.19 修复:config_manager 自动检测文件编码 |
| OpenClaw 启动失败 | 已在 2.24 修复全局模式缺少配置文件的问题 |
python main.py --check-env --force-check # 完整环境诊断
python main.py --quick-check # 快速检查
python update.py # 自动 git pull + 依赖同步
贡献
欢迎提交 Issue 和 Pull Request。如有问题,可加入 QQ 频道 nagaagent1。
Star History
版本历史
v5.1.02026/03/06相似工具推荐
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。
OpenHands
OpenHands 是一个专注于 AI 驱动开发的开源平台,旨在让智能体(Agent)像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点,通过自动化流程显著提升开发速度。 无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员,还是需要快速原型验证的技术团队,都能从中受益。OpenHands 提供了灵活多样的使用方式:既可以通过命令行(CLI)或本地图形界面在个人电脑上轻松上手,体验类似 Devin 的流畅交互;也能利用其强大的 Python SDK 自定义智能体逻辑,甚至在云端大规模部署上千个智能体并行工作。 其核心技术亮点在于模块化的软件智能体 SDK,这不仅构成了平台的引擎,还支持高度可组合的开发模式。此外,OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩,证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能,支持与 Slack、Jira 等工具集成,并提供细粒度的权限管理,适合从个人开发者到大型企业的各类用户场景。

