SuperAPI AI 工具集

julep

Julep 是一个面向开发者的 AI 智能体(Agent)框架,核心是把智能体构建为可组合、可持久化的数据流,而非临时拼凑的循环。其流程可以在崩溃后恢复、安全重试,并能通过派生投影解释每一步,同时拒绝模型未被明确允许调用的工具。主要编写方式是 define-by-construction 的 @flow:用普通 Python 名称来定义图步骤,已注册的工具、pures、reasoners、分支、扇出、重试和超时等都会编译为同一套冻结的 wire-format IR。纯核心无依赖,Temporal 层为可选。当前 Julep 3 为发布候选版,安装时需加 --pre 标志。配套的 julep 命令行工具被称为“面向 agents 的 dbt,终端原生”,可指向目录发现所有 @flow / Agent(...),将其视为跨智能体图中的节点,并提供统一的选择语法。项目采用 Apache-2.0 协议。

访问官网

工具介绍

Julep 是一个用于构建 AI 智能体的开发者框架,其核心理念是把智能体写成可组合、可持久化的数据流,而不是使用临时的循环逻辑。这样流程可以在崩溃后恢复、安全地重试,并通过派生投影解释每一步的执行过程,同时可以拒绝任何模型未被明确允许调用的工具。

用途

Julep 主要用于构建具备持久化执行、可恢复、可解释能力的 AI 智能体系统。它适合需要可靠编排、工具权限控制、跨智能体协作的复杂场景。

主要能力

  • 可组合的数据流:智能体被定义为数据流,支持崩溃后恢复、安全重试、步骤解释。
  • define-by-construction 的 @flow:主要的编写接口。使用普通 Python 名称定义图步骤,注册的工具、pures、reasoners、branches、fan-out、retries、timeouts 等都会编译为统一的冻结 wire-format IR。
  • 纯核心无依赖:核心部分不依赖外部库,Temporal 层是可选的。
  • 工具与推理器表面冻结:通过 deploy(..., tools=..., reasoners=...) 冻结工具和推理器接口;dry_run(...) 使用内存工具和确定性 fake reasoners 在本地执行。
  • MCP 支持:在 @flow 内使用 mcp_tool(server, tool) 引用 MCP;其 schema 和行为契约来自冻结的 MCP 快照;带句柄的关键字参数可直接构建输入记录。
  • 安全与密钥管理:自托管控制平面包含只写操作员保险库,值静态加密;支持为每次运行绑定短期凭证到 secret://name MCP 头部引用,仅通过加密的 Temporal 载荷传输,不进入存储的运行数据和投影。
  • CLI 工具:julep 是面向整个 agent 模块的开发者 CLI,被称为“面向 agents 的 dbt,终端原生”。指向目录即可发现所有 @flow / Agent(...),将其视为跨智能体图中的节点,并提供统一选择语法。
  • 选择器语法:支持组合选择器,如 tag:support、state:modified(Slim-CI)、+agent / agent+ / @agent 图遍历、a,b 交集、--exclude 等。
  • 计划、应用与状态:julep plan --env staging 报告 artifact、MCP-schema、Helm/KEDA 及运行时漂移;julep apply --env staging 发布不可变 S3-artifact 存储版本并协调每个 lane 的 digest-pinned Helm 版本;julep status --env staging 聚合版本与实时 lane 状态。
  • 签名与安全发布:应用发布要求在 JULEP_BUNDLE_SIGNING_KEY 中提供 64 位十六进制 Ed25519 种子;生产环境需在非秘密的 JULEP_BUNDLE_ALLOWED_SIGNERS worker 环境中设置对应公钥。
  • worker 运行:julep worker 根据环境契约持续运行,支持 --smoke-test-seconds N 进行连通性验证。

使用方式

  • 安装基础包即可进行编写和编译,需要 Python 和 PyYAML。当前 Julep 3 为发布候选版,安装时需加 --pre 标志(例如 pip install --pre julep)。
  • 10 分钟无 API key 的快速体验:安装基础包后,将示例作为普通 Python 脚本运行。@flow 在定义时使用数据句柄运行一次;注册的工具、pures、think(...)、cond(...)、switch(...)、each(...)、reschedule(...) 会追加图步骤而非执行运行时工作;| 合并记录,h["key"] 提取字段。deploy(..., tools=..., reasoners=...) 冻结工具和推理器表面,dry_run(...) 在本地执行。更多 @flow 示例见 examples/episode_summary_flow.py 和 examples/cluster_labeling_flow.py。
  • 生产应用需声明显式对象而非添加第二个发现约定。
  • 对于 julep plan、apply 和应用级 status,每个 snapshot_source 接收只读映射,来源为所选环境的 [vars] 后跟 [worker_environment](worker 值在重名时优先)。密钥支持的 worker 变量有意缺席。回调必须返回 McpSnapshot。
  • 将 [tool.julep].application 指向该对象,使用 module:attribute 值。每个可部署环境也命名 worker 的显式上下文工厂。
  • payload_encryption_secret 对于应用发布是必需的,命名 kubernetes_namespace 中已有的 Kubernetes Secret,包含 keyring 和 active-key-id 条目。worker_priority_class 可选。
  • 安装 julep[store,temporal] 以使用 S3 发布和 Temporal workers。控制平面主机也需要已认证的 helm、kubectl 和 temporal CLI;apply --publish-only 跳过 Helm 协调。
  • 基础安装仅包含编写与编译(PyYAML)。可选 extras 添加运行时功能。julep.HAVE_TEMPORAL 报告运行时是否可用。

适用场景

适合需要持久化、可恢复、可解释的 AI 智能体编排的开发场景,尤其是涉及工具权限控制、跨智能体协作、MCP 集成、S3 制品发布、Temporal 工作流的生产应用。

限制与注意事项

  • Julep 3 当前为发布候选版,--pre 标志在 3.0.0 正式版发布后才会取消。
  • Julep 3 是彻底重写,与 Julep v1(agents API 平台)没有迁移路径,两者是不同产品。v1 保留在 v1 分支及其文档 at v1.docs.julep.ai。
  • 应用发布需要签名密钥和允许列表配置。
  • 项目采用 Apache-2.0 许可证。

(注:以上内容均基于所提供资料,未提供的功能、收费、价格、平台或效果等信息暂未提供。)