dqsjqian/AriaAgent

dqsjqian★ 0C++最后同步: 2026-08-16

在 GitHub 打开

Industrial-grade C++20 Agent Tooling Framework GUI — provider-agnostic LLM agent with true SSE streaming, tool registry, approval gate. Built on Aria (C++20 MVVM).

README 摘要

✦ AriaAgent 工业级 C++20 Agent 工具框架 GUI · 基于 Aria (C++20 MVVM) Provider 无关 · 真流式 SSE · 工具调用链可视化 · 权限审批 · MIT License 这是什么? AriaAgent 是一个基于 Aria(C++20 MVVM 框架)构建的 provider 无关 LLM Agent 工具框架 GUI 。 它不绑定任何一家模型厂商 —— DeepSeek / OpenAI / Kimi / Qwen / GLM 等所有 OpenAI 兼容端点 开箱即用,换模型只需改一行配置,零代码改动、无需重新编译。 Agent 循环(思考 → 调工具 → 观察 → 再思考)用 C++20 协程实现,UI 层通过 Aria 的响应式引擎(Property / ObservableList)与引擎层彻底解耦。整体设计大量借鉴 DeepSeek 官方 harness 的架构精髓(事件日志 = 唯一事实源、工具 schema 驱动、权限默认拒绝)。 ✨ 特性 🧠 Agent 核心 - Provider 无关 —— 抽象 LlmClient 接口 + OpenAiCompatClient 实现,任何 OpenAI 兼容 API 无缝接入 - 真流式输出 —— token 级 SSE 流式渲染(cpp-httplib 0.53.1 ContentReceiver ),不是缓冲式假流式 - Agent 循环 —— 协程式 思考/工具调用/观察 循环,多工具 有界并行 执行(exclusive 屏障 + 并行池,结果按模型顺序提交),硬性轮数上限防失控 - 工具注册表 —— 一次注册即插即用: Tool{name, desc, schema, fn} ,无硬编码分支 - 参数校验 —— 轻量 JSON-Schema 校验器(类型/必填/枚举/范围),错误信息带 JSON 路径 🛠 内置工具(10+) 工具 说明 权限 calculator 四则/幂运算 无需审批 current time 当前本地时间 无需审批 run command 同步执行 Shell 命令(超时) 需审批 run in background / read output / kill process 后台进程句柄 + 增量轮询 需审批 read file / write file / edit file 文件读写改(防目录逃逸) 写操作需审批 list directory 目录列表 无需审批 todo set / todo add / todo list Agent 可见待办(快照 last-wins) 无需审批 🗂 会话与 UI - 多会话管理 —— 侧边栏会话列表(新建/切换/右键删除),JSON 持久化到 /.ariaagent/…

在 GitHub 查看完整 README →
Agent/智能体agentagent-frameworkariacmakecoroutinescpluspluscpp20deepseek

分类