# Kortecx-core：面向AI Agent的分布式运行时内核

> Kortecx-core是一个用Rust编写的AI Agent分布式运行时，专注于解决Agent工作流中的精确一次执行（exactly-once orchestration）问题，为非确定性、会改变外部世界的Agent步骤提供可靠的故障恢复机制。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-05-23T09:14:46.000Z
- 最近活动: 2026-05-23T09:21:38.815Z
- 热度: 157.9
- 关键词: AI Agent, 分布式运行时, Rust, exactly-once, 容错, 事件溯源, 工作流编排
- 页面链接: https://www.zingnex.cn/forum/thread/kortecx-core-ai-agent
- Canonical: https://www.zingnex.cn/forum/thread/kortecx-core-ai-agent
- Markdown 来源: ingested_event

---

## 原作者与来源

- **原作者/维护者**: Kortecx团队
- **来源平台**: GitHub
- **原始标题**: kortecx-core
- **原始链接**: https://github.com/Kortecx/kortecx-core
- **发布时间**: 2026年5月23日

## 项目背景与动机

当前大多数Agent框架在处理故障恢复时存在根本性缺陷。Agent工作流与传统数据流水线不同：Agent步骤会调用模型采样，并可能改变外部世界——调用工具、访问API、写入外部系统。这些操作无法安全地重新计算：如果工作节点在执行过程中崩溃，可能导致重复支付、重复发送邮件或产生静默错误的数据。

现有框架通常采用简单的重试机制，或者根本不处理，导致隐藏状态泄漏到工作节点内存中，通过消息队列进行脆弱的协调，没有持久化的尝试记录与成功记录。当出现问题时，开发者只能通过阅读日志来调试。

Kortecx-core采取了完全相反的立场：每一次Agent尝试都是追加日志中的一个持久化事实。恢复时从不重新运行已提交的步骤——而是重新读取结果。

## 核心设计哲学

Kortecx-core将Agent工作流视为一组需要精确一次执行（exactly-once semantics）的原子操作。这与Spark等数据流处理系统类似，但针对Agent场景进行了根本性调整：

- **不是可重新计算的描述**：传统RDD是可重新计算的，而Mote（Kortecx的最小执行单元）是已持久化的尝试记录
- **追加日志作为协调机制**：调度器、执行器和恢复机制都通过提交到日志的事实进行协调，而非直接消息传递
- **投影作为读视图**：依赖图、就绪集、血缘关系等都是对日志的查询投影，而非持久化的可变图

## 核心概念详解

### Mote：原子执行单元

Mote是运行时调度、移动和恢复的最小不可分割单元。它是一个已持久化的尝试执行某事的记录，而非可重新计算的描述。已提交的Mote是日志中的一个事实，恢复时从不重新运行。

每个Mote携带一个非确定性标签：
- **PURE**：纯函数，无副作用
- **READ-ONLY-NONDET**：只读非确定性操作
- **WORLD-MUTATING**：会改变外部世界的操作

运行时根据标签使用不同的恢复策略：对安全标签采用积极恢复，对危险标签采用操作员门控恢复。

### 日志：同步基底

日志是追加写的，运行时的依赖图是从日志折叠出的投影（事件溯源），从不作为可变图存储。这使得从单节点到分布式的跳跃只是连线问题，而非重写。

### 内容存储：负载分离

日志只携带32字节的内容哈希（ContentRef），实际负载存储在内容存储中，采用内容寻址命名。自动去重是免费的副作用。本地文件系统实现随核心开源发布，S3和复制实现遵循相同的trait。

## 技术实现细节

### 构建要求

- Rust 1.94.0（通过rust-toolchain.toml固定，rustup自动安装正确通道）
- just（cargo install just或包管理器安装）

### 可复现构建

项目从第一天起就将可复现构建纳入CI门禁：

```bash
# 复合CI门禁：fmt + clippy + build + test + doc + 字节确定性检查
just ci

# 单独目标
just test
just check-reproducible  # 两次连续发布构建必须产生字节相同的产物
just doc
```

## 开发路线图

项目采用分阶段开发，每个阶段有明确的出口门禁：

### P1 — 单节点运行时核心

包括Mote、日志、内容存储、投影、调度器、执行器、推理路由器和运行时二进制文件。出口门禁：多Mote工作流在单进程中端到端运行，中途杀死工作节点能通过日志重播正确恢复。

### P2 — 协调器/工作节点分离

gRPC通信；放置策略trait可插拔。调度器/执行器/推理源必须保持与P1字节相同。分布是连线问题，不是重写。

### P3 — 容错与交付保证

故障注入混沌测试；在随机工作节点死亡、网络分区和级联场景下证明exactly-once保证。这是生产就绪证明。

### P4 — 平台层

TypeScript工作流编写SDK（编译为Mote DAG，通过gRPC与运行时通信）；日志源可观测性；可选仪表板。

### P5 — 云/托管服务

托管多租户协调器、复制日志、Triton支持的推理、在测量证明合理时的自定义GPU内核。

## 开源范围与许可

Kortecx-core采用Apache 2.0许可开源。它提供一个完整的、诚实的单机和小集群运行时——不是功能受限的"社区版"。

## 当前状态与使用建议

项目处于预发布阶段，v0.1正在积极开发中。直到P3混沌测试证明exactly-once保证之前，应将运行时视为积极开发中的基础设施，而非部署目标。

## 技术启示

Kortecx-core的设计对构建可靠的AI Agent系统有重要启示：

1. **持久化优先**：将每次尝试视为持久化事实，而非临时计算
2. **分层恢复**：根据操作的危险程度采用不同的恢复策略
3. **事件溯源**：通过日志投影状态，而非维护可变状态
4. **可复现构建**：从项目开始就将确定性构建纳入流程

这些原则不仅适用于Agent运行时，也对任何需要可靠执行的非确定性工作流系统具有参考价值。
