Ouroboros 递归自省与元编程自愈引擎

@q00/ouroboros · v2.0.0

赋予智能体自省、修改与持续优化自身执行代码能力的元编程引擎。支持运行时死循环自适应熔断、动态编译失败重试补丁生成以及自愈式单元测试驱动演化(TDD)。

自愈引擎TDD驱动代码修复元编程
GitHub Stars
42 K+
+12.4% this month
月度调用量
156 K+
Monthly registry pulls
Reach 影响力
98.7/ 100
Top Tier Ecosystem
运行环境
Cordis v3+
Node 18+ / Bun / Deno

安装与配置

支持 CLI 一键执行、包管理器以及 Cordis 总线编排

bash
manager:
$ pnpm add @q00/ouroboros

架构解析

「Ouroboros Evolution」(衔尾蛇)赋予智能体在逆境中自我修复的韧性。在执行复杂的代码工程任务时,智能体生成的代码难免遇到语法错误、测试用例红温报错或依赖包版本冲突。 本引擎为智能体构建了一个严密的“感知 -> 假设 -> 试错 -> 编译 -> 验证”自省循环(Self-Repair Loop)。当沙箱中产生测试未通过或报错堆栈时,Ouroboros 会自动抓取核心错误行与上下文变量,引导智能体反思错误根因并合成最小化修复补丁,直到所有自动化测试用例全部变绿,实现真正的全自主自愈演进。

架构设计原则与约束

01
强类型契约隔离

基于 TypeScript 编译期深度推断,跨插件总线调用享受严格类型校验与零偏差提示。

02
毫秒级热插拔调度

支持微内核动态注册与安全平滑卸载,无需重启主宿主进程即可完成逻辑热替换。

03
确定性有限状态机

内置严谨的多阶段任务生命周期控制,防止复杂长时迭代推理场景中会话状态丢失。

04
零动态构建底层依赖

采用纯原生跨平台运行时环境设计,在 Node.js、Bun 及 Deno 容器中极速冷启动。

核心特性

01
自适应 TDD 自愈闭环:以测试用例全部通过作为客观验收标准,杜绝虚假完成
02
精准堆栈提纯算法:自动剥离海量控制台无用输出,提取核心报错根因信息
03
自省轮次防死循环硬限制:设定最大重试次数与超时熔断,防止消耗失控
04
修复经验自动提炼入库:将修复成功的代码模式自动总结并持久化为防坑记忆

核心机制

01

执行故障精准截获

沙箱捕获编译错误、未捕获异常或失败的单元测试用例堆栈。

02

堆栈回溯与根因定界

自动过滤第三方框架内部日志,精准定位业务源码中的故障行号与原因。

03

假设生成与补丁合成

智能体分析错误日志并提出针对性修复方案,输出最小化代码差异补丁。

04

沙箱重新回归测试

在隔离环境中重新运行测试套件,验证问题是否彻底解决,循环直至收敛。

配置参数参考 (YAML / JSON)

参数名类型默认值说明
maxRepairAttemptsnumber5单次任务遭遇失败时允许自我尝试修复的最大轮次
autoCommitOnSuccessbooleantrue测试全部通过后是否自动提交带有清晰说明的 Git Commit
testCommandstringnpm test用于验证代码修复是否达标的默认测试指令

应用场景

企业级生产智能体运行时

依托微内核生命周期与容错状态机,保障企业复杂 Agent 全天候稳定执行不崩溃。

基准测试标准化评测运行

深度原生集成 SWE-bench 标准流程,自动化抓取代码变更并产出规范复现指标。

全自主代码工程重构演进

精准拆解模型思考流与具体操作,跨多文件自主排查并高质量完成大型模块重构。

跨系统多工具流协同自动化

在多进程沙箱间安全并发调度事件,打通研发上下游系统实现端到端自动化流转。

最佳实践

01
权限沙箱隔离机制

严格限定子进程系统调用与外部网络范围,在生产环境中建议结合 Docker 独立容器执行。

02
配置指数退避重试

针对上游模型接口限流与偶发网络抖动,建议开启自适应退避重试并设定最大执行上限。

03
长时任务状态快照

利用内核事件总线快照功能实时固化会话节点,发生不可抗意外时支持秒级断点恢复。

04
全量结构化链路追踪

开启全量 Trace 日志输出,将大模型思考过程与具体工具入参返回值集中汇聚至监控。

常见问题

Q1:长时间执行任务超时如何正确配置?

可在配置文件中调大 timeout 阈值,并通过生命周期钩子定期向总线派发心跳信号。针对长耗时推理与工具调用,建议配合持久化会话快照机制,在任务暂停或重启后无缝恢复执行上下文,避免会话被内核提前回收。

Q2:如何捕获并流式解析模型思考过程?

框架原生提供流式回调机制,会话状态机自动拦截并剥离大模型的 <think> 思考标签。开发者只需监听 onThink 事件即可实时获取推理增量,结合前端流式渲染呈现动效,并支持将完整推导链沉淀至审计日志。

Q3:多个插件依赖冲突时如何按需加载?

Cordis 微内核基于有向无环图进行拓扑排序并解析依赖树。当插件间存在同名服务或版本冲突时,可通过命名空间隔离机制按需挂载;结合上下文注入与惰性初始化技术,仅在工具唤起时动态加载资源,保障系统稳定。

Q4:生产环境中如何实施权限与沙箱隔离?

推荐结合容器沙箱与细粒度权限管控,严密禁止插件越权访问敏感文件与未授权外部网络。可通过微内核提供的权限白名单机制严格限制系统调用,并将工具执行环境置于隔离容器内,彻底阻断潜在的代码注入与提权安全风险。

相关生态插件推荐

为你推荐同分类及高度协同的 Cordis 扩展