38 Commits

Author SHA1 Message Date
8cb876b532 feat(partnerctl): add --log-level option for run command and wire runtime log level to Partner-Core 2026-05-09 14:12:32 +08:00
e6e0eef161 refactor(interaction-api): extract interaction data models into new Partner-Interaction-Api module and update imports/dependencies 2026-05-08 20:32:11 +08:00
bd4d5164d3 feat(partnerctl): add run and shutdown commands with process lifecycle handling 2026-05-05 23:39:17 +08:00
c3dc8180f1 feat(partnerctl): initialize PartnerCtl maven module with CLI dependencies 2026-05-02 23:35:39 +08:00
dd31f6a20d chore(idea): update project dictionary and encodings 2026-05-01 21:11:13 +08:00
9144cd90ce refactor(project): remove Partner-Common module and move InProcessMcpTransport into Partner-Core 2026-04-26 19:45:38 +08:00
c23bda430f refactor(project): remove Partner-SandboxRunner module and clean related files 2026-04-26 18:20:07 +08:00
503afecbe2 refactor(action): redefine ExtractorResult structure to support openai sdk better, and make failed meta-action executing should be recorded as history normally 2026-04-16 23:27:46 +08:00
fac6e24e49 feat(exception): support report necessary exception info into context 2026-04-11 18:52:53 +08:00
3640cc2108 feat(action): support continuing executable actions after state restored 2026-04-07 23:16:12 +08:00
57bc63c57b refactor(perceive): manage state serialization via StateCenter in PerceiveCore 2026-04-07 10:05:35 +08:00
6c8a1b2636 refactor(action): support built-in actions 2026-03-12 10:41:17 +08:00
0f3d4659ae chore(project): remove legacy module Partner-Test-Demo 2026-03-10 15:04:16 +08:00
3c6076ee0a chore(idea): update misc.xml 2026-03-06 12:49:02 +08:00
c30ec35f85 refactor(framework): rename @AgentModule to @AgentRunningModule 2026-02-19 21:39:59 +08:00
73ab40416d refactor(Project): rename Partner-Api/Partner-Main modules to Partner-Framework/Partner-Core and update Maven dependencies 2026-02-19 10:39:21 +08:00
abe5dd5251 chore(idea): update misc.xml 2025-12-26 21:28:10 +08:00
dcbd2c6569 build(maven): introduce common module 2025-12-24 19:21:53 +08:00
ad973d4230 对 ActionExecutor 下子模块的功能分布、某些实体类进行了调整; 完善了 ActionExecutor 中的大致执行逻辑
- 梳理执行链路时发现 ActionRepairer 的能力明显超出可实现边界,故将其能力进行限定
- 新增 ActionCorrector 负责单组行动执行完毕后,根据意图和执行状况进行行动链修正
- 将 PhaserRecord 拆分为独立实体,未来将封装一部分流程控制逻辑
2025-12-02 22:35:53 +08:00
3f59719e16 调整 MetaAction 的执行方式,将交给 ActionCapability、SandBoxRunnerClient 执行 2025-11-30 22:16:57 +08:00
c548cceec6 新增 SandboxRunner 项目子模块,该模块将在指定容器运行持久服务,与外部主进程通信,将用于后续执行JARSCRIPT两类行动类型 2025-11-30 18:41:42 +08:00
4757425a15 推进 ActionDispatcher 模块、完善行动程序规范与加载逻辑
- 明确行动程序的存储形式与加载规则,分为执行程序和描述文件,前者负责逻辑,后者提供必要的描述性信息;
- 将 ActionInfo 重命名为 ActionData,更新相关接口和实现,增强代码一致性和可读性;
- 添加异常处理类以支持行动程序、描述信息的初始化和加载失败的场景;
- 实现行动程序目录的监控功能,支持行动程序的动态加载与管理;
- 明确了 ActionDispatcher 两个子模块的输入输出规范
2025-10-31 21:25:12 +08:00
7094a8a68b 推进 ActionExtractor 语义缓存机制: 两种嵌入模型的连接方式测试完毕,在高性能主机上,可以通过ollama调用mxbai-embed-large这类模型,但放到4核8G香橙派3B就会出现推理时长过长,哪怕换成ONNX RUNTIME JAVA 也难以避免,但如果更换成 nomic-embed-text + ONNX RUNTIME JAVA ,仍能够拿到70左右ms的推理时长,远低于提取模型以及向量模型API的调用时长。预期可提供两种语义缓存所用的嵌入模型接入方式: 通过 http 调用 本地ollama接口; 指定 ONNX 格式的嵌入模型直接调用。 2025-10-16 23:04:41 +08:00
84f7befb75 推进 ActionPlanner: 完成了 ActionPlanner 模块中的执行逻辑,同步调整了数据类中的字段。下一步将进行 ActionPlanner 子模块的开发。 2025-10-16 15:34:30 +08:00
a10a149edb 开始推进行动模块(ActionModule); 针对框架与本体分别进行了一系列架构优化。
框架:
- 调整模块注册以及AgentRunningFlow的相关逻辑,以支持同组模块并发执行,将以@AgentModule注解中的order属性区分组间顺序先后及是否同组
- 针对@CoordinateManager注解新增了Core的自动注入处理,以便更好的协调不同Core的逻辑

本体: - 开始推进行动模块。将采取类似记忆模块的分层思路,分为ActionPlanner与ActionDispatcher两个主要模块,再各自细分子模块划分
- 将CognationCore从核心统筹的身份下降至与其他核心平级,同时将其中的序列化逻辑抽取至统一的PartnerCore父类,所有核心都将继承该类以获得序列化能力,不同core的内容将序列化至各自的memory文件
- 将SessionManager移除,相关逻辑迁移至CognationCore,统一序列化逻辑的同时又保证语义正确
- 将CognationCore中的某些缓存性质逻辑移动至CacheCore,确保语义正确
- 调整了目录结构以适应优化过的架构
2025-10-12 16:23:11 +08:00
941943f696 Partner 主体与框架适配完成! 完整逻辑已达到适配框架之前的完成度。发现并修复了不少问题,以及更新了README
框架:
- 由于`Gateway`的启动属于`Agent`启动流程的子线程,而主线程可能由于逻辑执行结束时机早于`Gateway`创建完成时机而报错,故引入`CountDownLatch`进行阻塞
- 在`AgentRunningModule`与`AgentRunningSubModule`中添加日志hook,记录模块执行的起始与截止时机
- 修复了`AgentUtil`中收集继承链时遗忘起始类的错误
- 在`CapabilityCheckFactory`中针对`CoordinateManager`无参构造方法的实现检验
- 在`CapabilityRegisterFactory`中添加了收集模块之外的CapabilityHolder的逻辑,与`@InjectCapability`的校验与注入逻辑保持一致
- 修复了‘生成模块启用配置时,多余局部变量导致无法执行流正确读取启用情况’的错误
- 在GlobalExceptionHandler中添加了对于未知异常的处理逻辑,确保不会导致程序异常终止
- 发现`ModuleProxyFactory`中使用`record`类型会导致`ByteBuddy`无法正确创建代理类,已修复,替换成普通类

本体:
- `ActiveData`由于`CognationCore`的引用,也需要实现序列化,已修复
- 修复了`MemorySelectExtractor`中由于匹配到的主题列表为空导致的空指针异常
- 将后置模块的trigger判定抽取到新的父类中,统一判断
- 修复了`WebSocketServer`如果存在过ws连接,关闭后短时间再次启动内仍提示端口占用的情况,设置允许端口重用
- 在`WebSocketGateway`新增了断开ws客户端连接的逻辑
2025-09-30 15:46:05 +08:00
3c2ac32708 完成了本体与框架的适配工作,并修复了某些问题。需要进一步进行测试
- 修复了 CognationCapability 相关的注解使用错误
- 将前置模块中的 setAppendedPrompt 与 setActiveModule 方法抽取到 execute 模板方法中
- 完善了已有模块的适配工作, 并去除了不必要的单例配置
2025-09-18 16:03:59 +08:00
c1018d6b54 进行 Partner 框架层的部分调整
- 新增 AgentSubModule 注解,用于标识子模块
- 新增 MetaSubModule 类,用于存储子模块元信息
- 支持子模块初始化和注入逻辑,不再使用单例模式为执行模块提供子模块服务
- 重构模块初始化流程,支持模块和子模块的初始化
- 优化模块注册流程,分别处理模块和子模块
2025-09-11 13:07:48 +08:00
47684c78e0 进行 Partner 本体对于框架的适配,以及框架层的部分调整
框架:

- 调整 ActivateModel 中模型初始化设置的 initHook 权重为-1(最优先)
- 为 AgentGateway 中 receive 操作提供模板方法,子类需实现发送逻辑并提供适配器
- 取消了 AgentInteractionAdapter 的单例配置
- 调整 RunningFlow 的异常处理,并在RunningFlowContext中提供错误码进行判断
- 调整模块基类
-

本体:
- 新增配置加载异常,继承自Agent启动异常
- 修改 GlobalExceptionData 获取逻辑
- 移除 MessageSender 等交互接口,适配框架的交互逻辑
- 异常处理已适配
- 配置加载逻辑已适配
- Gateway 已适配
- CoreModel 已适配
2025-09-09 20:42:28 +08:00
cf1578fd14 模块注解机制完成,待测试。
- 调整Api包下的目录结构
- 抽取方法‘递归收集某类的继承链上的所有类’中
- 移除 ModuleFactoryContext、ModuleRegisterFactory 中关于 Init 方法的加载逻辑,将在 ModuleInitHookExecuteFactory 中加载并执行
- 完善了 ActivateModel 接口中prompt通用加载的实现
- 移除原有的框架Demo实现,开始进行测试Demo的编写
2025-08-07 23:33:11 +08:00
b1ed79ae9d 推进框架中的模块注册机制; 完善启动逻辑流程。
- 调整 InteractionFlowContext 为抽象类,实现者的模块上下文应当继承自该类。
- 完善 Agent 启动类具体逻辑
- 取消 Agent 类中 launchRunners 中关闭虚拟线程池的行为,交由JVM等待线程关闭,而非直接停止整个进程。
- 调整原hook注解分别为 BeforeExecute 、 AfterExecute,该注解用于模块抽象类的子类时可抽取重复逻辑
- 新增 Init 注解,用于执行初始化逻辑,可通过 order 属性指定顺序,默认为 0
- ModuleRegisterFactory 中新增‘加载 Init 注解标注的方法’的相关逻辑
- ModuleCheckFactory 添加对于 Init 注解的校验
- 完善了 ModuleProxyFactory 中设置代理实例的内容,可同时添加pre、post hook逻辑
2025-08-06 00:17:10 +08:00
507917157d 推进框架中的模块注册机制。引入 ByteBuddy 完成针对模块的代理实现。
- 调整部分包结构
- 重构 AgentRegisterContext ,将不同的 Context 内容按照对应模块进行封装
- 调整了‘添加可扫描包’的添加逻辑、新增了添加外部目录的扫描逻辑
- 新增几个异常类
- 在 ModuleCheckFactory 中新增了对于执行模块‘是否实现无参构造方法’的校验逻辑
- 引入 ByteBuddy 库负责构造执行模块实例,并添加对应的hook逻辑
- 调整 ModuleRegisterFactory 的逻辑,允许注册加载Module内的Hook方法
- 调整依赖引用关系,因为Partner-Main、Partner-Demo都继承自Partner-Api包,故将通用依赖移动至Api的pom文件中
2025-08-05 01:01:42 +08:00
ade922cbc2 推进核心服务与模块注册机制
- 完善Agent流程执行框架
- Api包下新增flow流程包,该部分对应模块的执行流程
- 明确ModuleFactory与CapabilityFactory以及ModuleHook的共同运作流程
- 调整了Hook注解名称
2025-07-25 23:46:54 +08:00
effa1df7fa 需继续为上层模块构建注册体系以适应完整的加载逻辑。
- 移除了 BaseCoordinateManager 抽象类,而是添加了 @CoordinateManager 注解
- 移除了 CapabilityHolder 抽象类,换成 @CapabilityHolder 注解
- 新增了适应新注册机制的部分类,仍需进一步推进
2025-07-22 22:04:46 +08:00
954095aa55 - 新建模块Partner-Api,推进Partner适配核心服务注册机制。
- 将原有的模块体系进一步区分,分离模型持有能力与调用能力,Model将有Module自身持有,可通过ActivateModel开启相应能力
2025-07-21 23:47:52 +08:00
dd10b00fb6 推进核心服务注册机制,并调整了Partner的模块结构
- 为了方便调试,将项目分为两个子模块,demo模块中进行新机制的开发工作,core模块为原来的Partner项目;
- 新增了多个注解,用于适配新的核心服务注册机制;
- 在`CapabilityRegisterFactory`中,将首先启动`statusCheck`,检查各个注解是否正常工作,包括以下内容:
   - `CapabilityCore`核心服务与`Capability`接口是否匹配
   - 核心服务中的`CapabilityMethod`是否与`Capability`接口中的方法匹配
   - 是否存在待协调方法`ToCoordinatedMethod`以及对应的存在于`BaseCognationManager`子类实现中
2025-07-15 16:48:27 +08:00
34c6b861c8 refactor(agent): 明确模块化设计流程,具体逻辑待实现
- 调整配置文件路径
- 新增 InteractionModulesLoader 用于动态加载交互模块,加载扩展模块待实现
- 修复 MemoryGraph 和 MemoryNode 的部分逻辑
- 改进 ModelConfig 类,支持单独配置文件, 用于动态加载模块
- 新增 PreprocessExecutor 和 TaskEvaluator模块, 待后续实现
2025-04-17 23:12:13 +08:00
cad3af346f 实现了MemoryGraph的序列化/反序列化;
实现了MemoryGraph的插入功能;
2025-04-08 22:31:48 +08:00