# Cori：将Agent对话转化为可复现的确定性工作流

> Cori是一个开源框架，通过将一次性Agent对话捕获为类型安全的TypeScript工作流，实现可重复、可追溯的自动化执行，基于Temporal工作流引擎构建。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-06-01T23:14:53.000Z
- 最近活动: 2026-06-01T23:18:18.799Z
- 热度: 150.9
- 关键词: Agent, 工作流, TypeScript, Temporal, 确定性执行, 自动化, MCP, 开源框架
- 页面链接: https://www.zingnex.cn/forum/thread/cori-agent
- Canonical: https://www.zingnex.cn/forum/thread/cori-agent
- Markdown 来源: ingested_event

---

## 原作者与来源

- 原作者/维护者：cori-do
- 来源平台：github
- 原始标题：cori
- 原始链接：https://github.com/cori-do/cori
- 来源发布时间/更新时间：2026-06-01T23:14:53Z

## 原作者与来源\n\n- 原作者/维护者：cori-do\n- 来源平台：GitHub\n- 原始标题：cori\n- 原始链接：https://github.com/cori-do/cori\n- 来源发布时间/更新时间：2026-06-01T23:14:53Z\n\n---\n\n## 项目背景与核心问题\n\n在AI Agent日益普及的今天，一个根本性的矛盾逐渐显现：Agent的交互本质上是动态、非确定性的，但工程实践往往需要可预测、可复现的结果。当我们向Agent描述一个任务，它可能今天这样执行，明天那样执行，这种不确定性在关键业务场景中成为巨大障碍。\n\nCori正是为解决这一矛盾而生。它的核心理念是：让Agent只负责"编写"工作流一次，而工作流的"执行"则是确定性的、可重复的。这种分离使得我们既能享受Agent的灵活性和智能，又能获得传统软件工程的可预测性和可靠性。\n\n---\n\n## 架构设计哲学\n\n### 文件夹即工作流\n\nCori摒弃了集中式注册表的概念，采用文件系统作为工作流的组织和分发机制。每个工作流就是一个文件夹，包含描述任务目标的manifest.md和一系列类型化的步骤文件。这种设计让工作流可以像普通代码一样进行版本控制、代码审查和协作开发。\n\n### 运行时无LLM依赖\n\n一旦工作流被创建，执行阶段完全不需要调用LLM。这带来了几个显著优势：执行成本可预测、延迟稳定、不依赖外部服务可用性、结果完全可重现。执行引擎基于Temporal工作流平台，天然支持重试、恢复和完整的状态追踪。\n\n### 端到端类型安全\n\n整个系统采用TypeScript和Zod构建，从输入参数到输出结果都有完整的类型约束。这不仅提供了开发时的类型检查，还在运行时进行数据验证，确保工作流各步骤之间的数据传递安全可靠。\n\n---\n\n## 核心功能详解\n\n### 四种步骤类型\n\nCori将工作流步骤抽象为四种类型，覆盖了绝大多数自动化场景：\n\n**CLI步骤**：执行命令行工具，如curl、git、自定义脚本等。系统负责捕获输出并解析结果。\n\n**Code步骤**：在沙箱环境中运行TypeScript函数，适合需要复杂逻辑处理的任务。\n\n**MCP步骤**：调用Model Context Protocol服务器上的工具，实现与外部系统的标准化集成。\n\n**LLM步骤**：显式调用大语言模型。值得注意的是，这是唯一需要显式选择加入的步骤类型，体现了框架对LLM使用的审慎态度。\n\n### 分布式执行支持\n\nCori支持跨机器的工作流执行。通过在具有特定工具或凭证的机器上启动worker，工作流的不同步骤可以路由到最合适的执行环境。这种设计天然支持敏感凭证的隔离——凭证永远不会离开其所在机器，工作流代码本身不接触敏感信息。\n\n### 完整的执行追踪\n\n每次运行都会生成详细的JSON追踪文件，记录每个步骤的输入、输出、执行时间和状态。这种透明度对于调试、审计和合规至关重要。\n\n---\n\n## 使用流程与体验\n\n### 安装与初体验\n\nCori提供了简洁的安装脚本，一行命令即可完成部署。首次运行会自动启动本地Temporal开发服务器，编译工作流，并将执行记录写入本地目录。整个过程无需配置凭证，降低了上手门槛。\n\n### 工作流编写模式\n\n工作流采用声明式定义。manifest.md文件包含任务目标、验证标准和元数据，steps目录下的TypeScript文件则实现具体逻辑。每个步骤都明确定义输入模式、输出模式和执行逻辑，这种显式契约让工作流的行为一目了然。\n\n### 远程工作流引用\n\nCori支持通过Git引用远程工作流，可以按标签、版本范围或精确commit SHA进行固定。这种机制让团队可以共享和复用工作流，同时保持版本控制的灵活性。\n\n---\n\n## 技术选型分析\n\n### 为什么选择Temporal\n\nTemporal是一个成熟的工作流编排平台，提供了持久化执行、自动重试、状态恢复等核心能力。Cori选择在其之上构建，而不是从零开发调度系统，体现了对工程复杂度的清醒认识。这种架构决策让Cori能够专注于工作流定义和Agent集成，而将执行可靠性交给专业的基础设施。\n\n### TypeScript与Zod的组合\n\nTypeScript的类型系统配合Zod的运行时验证，为工作流提供了双重保障。这种组合在Node.js生态中已经成为事实标准，Cori的采用降低了开发者的学习成本，也方便与现有系统集成。\n\n---\n\n## 应用场景与价值\n\n### 自动化文档翻译\n\n想象一个场景：产品团队需要将大量产品说明文档翻译成多语言版本。传统方式是编写脚本处理，但文档格式各异、翻译质量难以统一。使用Cori，可以让Agent分析文档结构并生成翻译工作流，后续所有文档都按相同流程处理，确保一致性。\n\n### 数据ETL管道\n\n数据工程师经常需要构建从多个源抽取、转换、加载数据的流程。Cori的类型安全和执行追踪特性使其成为构建可靠数据管道的理想选择，而Agent可以协助生成初始工作流代码。\n\n### 安全敏感操作\n\n对于需要访问生产环境或敏感数据的自动化任务，Cori的分布式执行和凭证隔离机制提供了额外的安全保障。工作流定义本身不包含敏感信息，执行时通过本地worker访问凭证。\n\n---\n\n## 生态系统与扩展\n\nCori提供了skill机制，允许开发者教自己的Agent如何编写Cori工作流。通过安装cori_save_workflow skill，Agent可以直接生成符合Cori规范的工作流代码。这种设计让Cori能够融入现有的Agent开发工作流，而不是要求开发者切换工具。\n\n---\n\n## 总结与展望\n\nCori代表了一种务实的AI工程化思路：不是让Agent取代传统软件工程，而是让Agent成为增强开发者能力的工具。通过将Agent的智能与传统系统的可靠性相结合，Cori为构建生产级AI应用提供了一条可行路径。\n\n随着AI Agent在更多关键业务场景落地，对确定性执行的需求只会越来越强烈。Cori的设计理念——Agent编写、系统执行——可能成为这一领域的重要范式。对于正在探索AI工程化实践的开发者而言，Cori值得深入研究和尝试。
