这个项目能做什么
Koris Assistant是一个自主AI代理框架,使用严格的TypeScript编写,运行于Node.js 24+和pnpm环境。它采用模块化系统组织,包含四个插件系列:渠道、工具、技能和MCP服务器。插件可从配套的集线器仓库按需下载,并可在不重启代理的情况下热加载。
渠道包括Telegram、WhatsApp、交互式终端界面和React 19 Web仪表板。统一的消息网关和会话管理器驱动所有这些渠道。框架还支持通过Streamable HTTP的模型上下文协议,发现远程工具并将其在LLM工具管道中命名为server__tool。
语音支持为本地化:语音转文本使用通过sherpa-onnx的Whisper,文本转语音使用Piper神经语音,两者均由端口6006上的轻量级sidecar提供服务。WhatsApp或Web界面中的语音笔记会自动转写,并提供按对话的语音回复模式。
记忆和会话持久化在SQLite中,涵盖长期事实、经验教训、摘要、语义嵌入、会话跟踪和对话历史。模型访问为多提供商:Ollama、OpenAI兼容预设(如openai、deepseek、groq、openrouter、xai、mistral、together、gemini和nvidia),以及Mock提供商。不同提供商和模型可按角色分配,例如主代理与后台工作者或嵌入模型。
客户端外壳包括Web仪表板、TUI、使用原生OS webview的Tauri桌面应用和Electron桌面外壳。计划中的cron驱动后台子代理(称为心跳代理)处理自主例程、维护和通知。工具执行被沙箱化,包括域限制的HTTP curl、自托管SearXNG网络搜索、问题跟踪、节拍管理、贴纸和自定义插件。
项目文档描述了“差事”功能:由Negotiator代理插件运行的委派对话,该插件与联系人追求目标,同时让请求用户知情。每个差事为每个目标创建新的委派子会话,父会话ID、差事ID和指令存储在SQLite元数据中。命令包括列出、批准、回复、重试、关闭和取消差事。README描述了状态转换、投递恢复、队列提升、过期行为以及围绕Web轮询和精确一次投递的已知限制。
设置涉及安装依赖、将示例设置文件复制到koris.json或使用Web设置向导、验证配置和构建。代理随后可作为Web服务、TUI或桌面应用运行。可选的Docker Compose服务提供SearXNG和音频sidecar。项目声明使用严格的TypeScript检查、Vitest测试套件和Stryker突变测试,并采用ISC许可证。
评论
0 评分人数达到10人后显示
登录后参与讨论。