说明:Agent开发中,敬请期待

OpenLani 简介

OpenLani,是一个AI Agent(智能体)应用,集成:系统核心(Core)、工具调用(Tool Using)、记忆系统(Memory System)、任务系统(Task System)、多渠道输入输出(Multi-channel IO)、人格系统(Personality System)、插件系统(Plugin System)、页面展示(WebUI),轻量级Agent应用。

其中,Harness:
系统核心:核心推理与逻辑增强 (Reasoning & Planning)、可观测性与日志模块 (Observability)、安全与治理模块 (Guardrails & Sandbox);

工具调用:Function Calling、MCP、Web Searching;

记忆系统:长期记忆存储、短期记忆存储、语义检索和向量库、记忆压缩;

任务系统:Agent.md、Heartbeat、Cron Job;

多渠道IO:输入方式(社交媒体(QQ、微信)、WebUI),输出方式(TTS、社交媒体、邮件等);

人格系统:SOUL.md

插件系统:方便扩展,基础包括:SKILLs;

WebUI:提供完整的用户操作界面。

一、系统核心 (Core)

1、核心推理与逻辑增强 (Reasoning & Planning)

(1)计划

任务开始前要求Agent设定计划,保存在Plan.md中,按计划顺序交给Agent执行,并实时更新进度,以防任务中断导致重新制作。

(2)手动推理

得到Agent的结果后,将问题和结果再次发送给Agent,要求其评估答案的理想程度(挑刺),如果答案不理想,将获取不好的地方,再次发送给AI要求其修改。默认重复三次,可提前。

2、可观测性与日志模块 (Observability)

(1)日志系统

在控制台和WebUI输出项目详细自执行的流程和报错,方便Debug。

(2)数据收集、可视化

记录每一次 LLM 的输入输出、Token 消耗、耗时以及工具调用的状态。实时统计 API 调用产生的费用,这对于长期运行的 Heartbeat 任务尤为重要。当 Agent 在社交媒体(如微信/QQ)中“装死”或逻辑死循环时,后台能及时告警。

3、安全与治理模块 (Guardrails & Sandbox)

(1)代码沙箱 (Execution Sandbox)

如果 SKILLs 包含执行 Python 代码或 Shell 命令的功能,必须在 Docker 或隔离环境中运行,防止误删文件或系统被入侵。

(2)内容审查 (Content Filtering)

在输出到社交媒体渠道前,增加一道敏感词或合规性过滤,避免 Agent 输出违规内容导致封号。

(3)硬性安全熔断

在当日Token消耗到一个值后自行熔断,不再回答。确保不被恶意入侵、错误指令后将钱包消耗殆尽。

二、工具调用(Tool Using)

1、函数调用(Function Calling)、Web Searching

编写函数,放入Agent.md,函数包含Web Searching

2、MCP

三、记忆系统(Memory System)

1、短期记忆(Short Term Memory)

(1)短期记忆存放在Memory.json中,长度超过8条记录时,压缩最后4条记录为一句概述,将概述放在SUMMARY.md中。

(2)SUMMARY.md中长度超过12条时,将末尾4条放入放入日记系统和向量库。

(3)每次询问都包含Memory.json和SUMMARY.md的全部信息,总的上下文不会超过20条。

2、长期记忆(Long Term Memory)

(1)IDENTITY.md

存储关于Agent自身的记忆,可自行修改,添加

(2)USER.md

存储关于用户的信息,按ID检索,按需查找修改

(3) MASTER.md

存储关于主人的信息,Agent需绝对服从这位的一切命令

(3) Fact.md

当对话中出现事实依据时,将信息存储到Fact.md,这是短期内不会改变的客观事实,只有需要查找事实依据时,才获取当前文件。

(4)向量库和语义检索

向量库存放一切长期记忆,按需进行语义检索和关键词匹配,各获取2条信息,以2+2的方式返回给Agent(Mem0)

(5)日记系统

信息数据存放入向量库之前,会保存在当天的md文档中,命名格式为“YYYY-MM-DD.md”,给人类阅读为主,通常不检索。头部元数据可以摘要一天做的事情。

四、任务系统(Task System)

1、Heartbeat(心跳机制)

每间隔固定时间要求AI查询Agent.md,要求Agent看看有什么需要完成的事情,如果有可以按照任务完成,没有可以自行决定做些什么。(可关闭)

2、Cron Job(定时任务)

Agent操作的一个闹钟,可以设定几分钟或者几小时后,戳Agent一下,看看设定定时闹钟所需要的等待是否完成。

五、多渠道IO(Multi-channel IO)

1、社交媒体

2、STT、TTS

输入语音,通过语音转文字,发送给Agent,将AI的回复,通过TTS,转化为语音,输出。

3、图片

使用多模态模型,提取图片信息,发送给Agent;绘制图片也交给多模态模型

六、人格系统

SOUL.md

这是Agent的人格,Agent不可修改,不可违背

七、插件系统(Plugin System)

插件系统是方便后续扩展,而增加的后门,后续如要添加插件,可快速添加。默认的插件有:

SKILL

好的SKILL可以时任务的完成度提高好几个档次,所以SKILL在完成复杂任务时十分重要。

八、WebUI

提供完整的用户操作界面。

九、系统提示词(System Prompt)的构成

1、SOUL.md
2、Agent.md
3、SKILL List
4、Tool List
5、Memory.json和SUMMARY.md

十、任务完成流程

1、Agent通过多渠道IO获取命令
2、Agent整合System Prompt + User Prompt + 如有需要撰写Plan.md给AI
3、撰写完Plan.md后,依次进行完成
4、对于每一个任务,进入循环,每次将任务给AI,对于AI的回复,如需调用工具,将工具调用的结果返回给AI,如此循环,知道AI明确任务已完成或受挫,返回指定的停止标识。
5、最后将结果通过多渠道IO返回,具体渠道由AI给出,如未给出,默认按原输入路径返回。
6、异步多线程存入记忆。