Workflow 是独立Git仓库中的普通Python小项目。它使用现有 Agent method,通过正常import相互调用,并可按任务组合 goal()、agent() 与 llm()。详细设计已按阅读主题拆成三页。
系统需要管理多个可复用Workflow。一个Workflow可以调用另一个Workflow,也可以直接调用普通Function、单次模型请求、Agent loop和Goal loop。调用方不应学习另一套API,生成代码也不应把字符串名称交给额外dispatcher。
不在范围:Workflow DSL、自定义revision数据库、远程Marketplace、自动push、后台分布式调度和新的模型工具协议。
| 当前事实 | 剩余偏差 | 目标页 |
|---|---|---|
Agent method 已支持Python调用、工具注册、Runtime继承和DAG。 | 旧设计曾重复增加 @workflow 与调用适配层,现已从目标设计删除。 | 编程模型 |
| 发现、创建、修订和用户手动自动执行已经拆为四个注册函数;旧复合入口不再注册。 | workflow/ 分类目录仍需与Programs运行身份彻底分离,并完成默认App验收。 | 发现、创建与自动执行 |
openprogram/programs/workflow/ 已是事实来源。 | Programs尚未展示Exports、Calls / Used by、Git和测试状态。 | DAG与网页 |
@workflow、call_workflow()、invoke_workflow()、Function sidecar和公开resolver/executor均不属于目标架构。抽象结构、llm/agent/goal、项目目录、跨Workflow import和运行快照。
打开专题页 →文档 2search/create/revise公共合同、用户级auto入口、组件复用、生命周期、迁移和验收。
打开专题页 →文档 3运行父子关系、静态Calls / Used by、Programs完整原型和交互合同。
打开专题页 →| 参考 | 采用 | 不采用 |
|---|---|---|
| Python 导入系统 / contextvars | 标准package/import与现有调用上下文继承。 | 自定义import hook和字符串dispatcher。 |
| Git commits / git worktree | 项目历史、提交快照和隔离修改。 | revisions目录与active pointer。 |
| GitHub 可复用工作流 | 独立可复用单元、明确输入和组合调用。 | YAML Workflow DSL。 |
现有OpenProgram Agent method | 工具注册、DAG、Runtime、权限、取消和provider/model继承。 | 并行注册体系。 |
| 能力 | 状态 | 说明 |
|---|---|---|
| 参数化入口、多文件package、独立Git仓库 | 阶段1–3完成 | 新项目使用与项目同名的 method_options = dict(task)。 |
| 静态跨Workflow imports与可达commit快照 | 阶段4完成 | 缺失/循环拒绝、依赖快照和共享Runtime已有实现证据。 |
| 旧零参数单文件Workflow | 仅恢复兼容 | 只服务显式resume的历史run。 |
| 单一Agent authoring | 设计完成 · 待实现 | 删除decision JSON与独立author turn。 |
| 发布前可执行测试门 | 设计完成 · 待实现 | 失败、超时或取消不得产生commit。 |
| 程序 → 应用 | 设计完成 · 待实现 | Workflow作为Application的source type;不增加并列的Workflows分类。 |
规范设计集入口。阶段4及以前的已实现证据,与三个已批准但没有实现证据的目标保持区分。
llm_knowledge_research 在官方 arXiv 检索前,使用既有 llm primitive 执行一次有界规划调用。严格 plan 含一至四条有序查询,每条最多 256 字符并标注支持的主题,遵守任务优先级和排除范围。规划只提供检索意图,不提供证据、日期、路径或论文结果。无效 plan 在 HTTP 与输出写入前失败,不做验证重试或固定主题回退。检索保留最多四次、每次 25 条结果的限制,以及既有 2025/2026 年份过滤、去重、来源记录和每个纳入主题最多五篇的选择。报告只渲染 plan 主题和实际规范化的摘要,省略被排除主题的固定文字。调用开始时捕获一次 Asia/Shanghai 获取日期,并原样传给报告。缺少获取元数据的独立渲染调用单独标注当前渲染日期。无结果、规划、传输、取消和写入失败保留既有失败与原输出保护行为。公开验收通过真实注册 Workflow 执行宽范围与窄范围任务,核对实际查询回执和落盘主题、日期,并证明无效 plan 不检索、不写入。真实模型规划质量单独验收。
配置的 Provider 没有经验证的原生或严格工具结构化输出契约时,plan 明确允许既有的 prompt fallback。Schema 验证与零次验证重试仍有效,不新增模型请求、修复 plan 或固定查询。验收覆盖此类 Provider 的生产结构化协议选择,验证单次返回 plan 后才进入来源请求。格式错误仍为结构化失败,不检索、不写报告。真实 Provider 与远程来源结果独立于受控验收记录。