zeroshot

the-open-engineMIT活跃维护

用 Rust 写的多智能体图编排引擎,自带工作流约束,帮你搭建自动化软件工厂,让编码智能体按既定流程干活。

Multi-agent graph orchestration engine for building your own software factory. Bring your own QA workflow, and the engine enforces it.

v12.0.0发布于 2026-11-09 01:29 UTC2,137star +16 / 7 天204fork同步于 2026-11-10 11:45 UTC

怎么上手

由 README 提炼,执行前请确认
npm install -g @the-open-engine-company/zeroshot
硬件要求按 README 说明

README 未说明

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

多智能体图编排引擎,用独立评审强制把关,防止编码代理自评自过

用 Rust 写的多智能体图编排引擎,自带工作流约束,帮你搭建自动化软件工厂,让编码智能体按既定流程干活。

核心能力

  • 用 JSON 定义图拓扑,含步骤、评审、分支、并行、有界循环
  • 评审返回枚举裁决,图据此路由下一步
  • 运行前校验类型不匹配、无界循环和不可达分支
  • 每个节点可单独指定代理与模型,支持 Claude Code、Codex 等
  • 凭据存为命名连接,不进入图、日志和运行记录

容易踩的坑

安装器会为 Claude Code、Codex、Copilot CLI 和 Pi 添加技能,不想装技能需参考安装文档跳过;本地运行依赖你已有代理的登录和订阅;内置模板 software-change 默认走 PR 交付,需显式加 --delivery none 才能导出不带 Git 交付的图

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v12.0.0
  1. zeroshot-python-v12.0.0_1Zeroshot Python SDK 12.0.0.post12026-11-09 · 2026-11-09 01:33 UTC
    查看更新说明

    Python SDK 12.0.0.post1 for Zeroshot 12.0.0.

  2. v12.0.0Zeroshot v12.0.0最新正式版2026-11-09 · 2026-11-09 01:29 UTC

    Changes since v11.1.0.

    Breaking changes

    Make machine size identifiers target-owned (#1463)

    Targets advertise machine size identifiers, descriptions and their default. zeroshot target sizes NAME displays the catalog as a formatted table or JSON. CLI, Python SDK and editor preserve target-owned size IDs; the target resolves defaults and rejects unavailable sizes.

    Public targets configure and enforce their catalog. Accepted history records the concrete size, while retries retain the original request identity. Local CLI and ACP resolve the host default while preserving authored request identity. The descriptor extension uses run_size_catalog so clients and servers can roll out independently.

    Breaking change: the shared RunSize enum is replaced by an opaque string; omitted size means the target default. Direct/local targets expose host.

    Features

    Replace merge plans with stacks delivered by merge or stacked pull requests (#1360)

    zeroshot stack replaces zeroshot plan for submitting a set of dependent runs to a hosted target. Manifests use "schema": "zeroshot.stack/v1" and a required "delivery":

    • merge: the same behaviour merge plans had. Each run merges into the base branch before the runs that need it start, and fan-in is allowed. The profile needs exactly one merge@2 or merge@3 delivery node.
    • stacked_pull_requests: validation and submission turn the runs into one linear stack, in dependency order with ties broken by run name. Each run then opens a pull request against the previous run's branch. Nothing is merged. The profile needs exactly one pr@2 delivery node. zeroshot stack validate prints the resulting order.

    The protocol, discovery (zeroshot.stacks/v1), Python SDK (Client.submit_stack, StackRequest(delivery=...), StackStatus), docs and skills are renamed to stacks, with no aliases. zeroshot plan and zeroshot.merge-plan/v1 are no longer accepted.

    Details

    • Protocol: Stack* types replace MergePlan*. The submit request carries delivery. Each run's status adds an explicit-nullable sourceBranch next to sourceRevision. Status uses stackId. Discovery uses the stacks extension, and its status and force route templates use a {stack_id} variable.
    • Delivery branch: native_v2_delivery::delivery_head_branch(&RunId) is the public function for the pull-request head branch that delivery pushes. First delivery, preflight and recovery all use it, and delivery receipts are unchanged.
    • Docs: a new guide, Submit a stack (docs/guides/stacks.md), covers both modes and the linear order. It also covers how a stacked chain is reviewed: GitHub moves a child pull request onto the base when its merged parent's branch is deleted, a squash-merged parent leaves the child needing a rebase, and changes to a parent pull request during review are not restacked. The SDK guide, Python reference, CLI reference (regenerated), AGENTS.md and related guides are updated.
    • Skills: when plans have depends_on, zeroshot-plan offers to write .zeroshot/plans/<id>.stack.json and leaves delivery to the user. The zeroshot skill explains how to submit a stack and the two delivery modes.
    • CI: a tooling test validates the guide's and the skill's stack manifests with zeroshot stack validate. Changes to the guide or the plan skill also run the tooling lane. Changes to the Rust validator already do, because every native change selects that lane, and a classifier test pins this.
    • Repository: the root .venv/ is ignored and not part of the change.

    Compatibility

    This CLI cannot submit stacks until Zeroshot Platform deploys its matching server side, and older CLIs cannot submit afterwards. Merge plans are used only internally today.

    Tests

    • Protocol tests cover se
  3. zeroshot-python-v11.1.0_1Zeroshot Python SDK 11.1.0.post12026-11-05 · 2026-11-05 12:12 UTC
    查看更新说明

    Python SDK 11.1.0.post1 for Zeroshot 11.1.0.

  4. v11.1.0Zeroshot v11.1.02026-11-05 · 2026-11-05 12:09 UTC
    查看更新说明

    Changes since v11.0.0.

    Features

    Add an opt-out for automatic skill installation (#1350)

    Add documented ZEROSHOT_SKIP_SKILLS=1 support for npm installation and self-update while preserving default managed-skill protections. Isolate updater tests from the exported setting.

    Allow disabling workspace checkpoints (#1344)

    Add workspaceCheckpoints to runtime plans, defaulting to enabled. Local runs can set it to false to skip Restic setup, workspace snapshots and snapshot cleanup while retaining durable run history, outputs, logs and usage.

    Normal restart preserves the saved policy and retained workspace. Selected checkpoint restore is rejected before credential resolution when snapshots were disabled. Named targets and contained hosting explicitly reject the opt-out until they support it. Decision bindings are excluded from workspace writers.

    The setting works in exact and uniform runtime plans, saved profiles and Python UniformRuntime. The SDK change also normalizes an existing type union to satisfy its pinned Ruff check.

    Add local script bindings (#1343)

    Add a local script runtime binding to typed graph steps. The runtime supplies an executable and literal arguments. Each invocation exchanges bounded JSON over stdin and stdout, validates the result against the step's output schema, and checks the serialized completion against the existing ledger event limit. Invalid or oversized results follow the graph's normal error handling.

    The adapter reuses process containment, cancellation, declared connections and credential redaction before diagnostic truncation. Agent instructions remain required for agent bindings, while script steps omit them. Scripts work inside existing maps and record execution timings and zero native model tokens. Decision HTTP timing uses the same small timing helper. Named targets and contained placements explicitly reject this initial local binding.

    Add the code-review built-in template (#1348)

    Adds code-review, an alternative to pr-review that inspects code and existing tests without installing dependencies or starting applications, services or browsers. It shares the existing PR input, source pinning and native comment delivery: --task-from <PR URL> or prepared {url, context, instructions?} input produces the same comment receipt.

    Triage partitions the change into units. Four reviewers inspect each unit beside five whole-change specialists; finalizers merge duplicates and try to disprove findings before the report agent writes one comment. Agent errors and map overflow stop publication; a crashed agent gets one retry. Prompt fragments concatenate at compile time, and the report budget leaves room for the publisher header. Models remain in the runtime plan.

    The supplied local runtime sets workspaceCheckpoints: false, skipping workspace snapshots and Restic while retaining durable history, outputs, usage, logs and comment receipts. Uniform runtimes can use the same setting. Named targets currently reject opt-out, so hosted users enable or omit the field as documented. This uses the checkpoint control from main; it adds no template-specific runtime override.

    Let hosts choose the author of delivered commits (#1359)

    • Hosted runs can choose the author and committer of the commits delivery creates: TargetRunRequest.commitIdentity ({name, email}) on submission, and RunResumeParams.commitIdentity for a resumed successor.
    • When present, it is used for every commit that attempt's delivery creates: prepared revisions, reconcile merges, target-integration merges, and the repository-local user.name/`use
  5. zeroshot-python-v11.0.0_1Zeroshot Python SDK 11.0.0.post12026-11-02 · 2026-11-02 22:45 UTC
    查看更新说明

    Python SDK 11.0.0.post1 for Zeroshot 11.0.0.

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    zeroshot

    A multi-agent orchestration engine that keeps coding agents from grading their own work.

    zeroshot.sh · Discord · Docs · Blog

    npm install -g @the-open-engine-company/zeroshot
    

    Single agents have a reliability ceiling. As context grows and complexity compounds, requirements get buried, assumptions go unchallenged, and shortcuts start to accumulate. The agent will optimize for completion and lose track of what correctness requires.

    Independent, adversarial review fixes that. A reviewer starts with fresh context and looks for reasons the work should fail. Rejection turns those failures into concrete repair tasks. Each revision faces renewed scrutiny, allowing the system to recover from mistakes that would otherwise survive all the way to “done.”

    zeroshot is a multi-agent framework built around this cycle. Define your graph topology, choose your agents and models, and make independent approval a requirement for delivery. The engine enforces the process.

    Build your own graph

    An example graph: independent reviews, end-to-end testing, and CI must pass before merge.

                               ┌─────────────────┐
                               │       Goal      │
                               └────────┬────────┘
                                        ▼
    ┌───────────────┐          ┌─────────────────┐
    │     Repair    ├─────────▶┤      Worker     │
    └───────┬───────┘          └────────┬────────┘
            ▲             ┌─────────────┴─────────────┐
            │             ▼                           ▼
            │  ┌─────────────────────┐     ┌─────────────────────┐
            │  │  Acceptance review  │     │     Code review     │
            │  └──────────┬──────────┘     └──────────┬──────────┘
            │             │                           │
            │             └─────────────┬─────────────┘
            ├◀─── either rejects ───────┤
            │                           │  both approve
            │                           ▼
            │                  ┌─────────────────┐
            ├◀───── fail ──────┤ End-to-end test │
            │                  └────────┬────────┘
            │                           ▼  pass
            │                        ┌─────┐     ┌─────┐        ┌───────┐
            │                        │  PR ├────▶┤  CI ├─pass──▶┤ Merge │
            │                        └─────┘     └──┬──┘        └───────┘
            └◀───────────── fail ───────────────────┘
    

    Save your graph as a reusable profile and run the same process across tasks.

    See more graph examples on zeroshot.sh.

    Features

    Bring your own graphs

    One graph per process your team runs.

    • Graphs are JSON: steps, reviewers, branches, parallel work, bounded loops and maps over lists.
    • Profiles: save each graph by name and pick one per run with --profile.
    • Agent and model per node: Claude Code, Codex, Copilot CLI, Pi and more, through the providers each agent supports: OpenAI, Anthropic, OpenRouter, Bedrock, Foundry or your own endpoint.
    • Delivery: a run can end by pushing a branch, opening a PR, or opening and merging one on GitHub, GitHub Enterprise or GitLab, or by leaving the change in your working copy. The built-in template software-change defaults to PR delivery.

    The engine enforces them

    Agents do the work. The graph decides what happens next.

    • Checked before it runs: type mismatches, unbounded loops and unreachable branches are rejected before any agent starts. --validate-only runs just the checks.
    • Reviewers route the run: each reviewer returns an enum verdict, and the graph routes on it.
    • Script steps: run a deterministic command as a step in local runs.
    • Secrets stay out of the record: credentials are stored once as named connections and kept out of graphs, run history, logs and the UI.

    See inside every run

    • zeroshot ui: each node's input, output and logs in the browser, on a timeline you can replay.
    • CLI: status and list return JSON, watch and logs stream resumable events, attach follows a running agent.
    • SQLite: one SQLite file per local run.
    • Resume: restart a failed run from a checkpoint without redoing finished steps.

    Build on it

    Drive zeroshot from your own code, CI or UI.

    • Python SDK: async Python client for submitting, watching and waiting on runs. Each wheel bundles the matching zeroshot binary.
    • JSON-RPC API: run zeroshot target serve and connect over WebSocket to submit runs, watch their status and which nodes are running, and stream logs. An OpenRPC spec describes the methods.
    • API keys: expiring, revocable CI keys for hosted targets.
    • Agent adapters: add support for another coding agent through a documented contract.

    Get started

    The installer adds skills for Claude Code, Codex, Copilot CLI and Pi. Open your agent in a repo and ask:

    design a zeroshot graph for this repo
    

    The skill reads your repo and builds the graph with you: agents, models, review gates, and delivery. Then plan a task:

    plan this with zeroshot: let users export their data as CSV
    

    Run the plan:

    zeroshot it
    

    Run locally with your agent's existing login and subscription. Watch with zeroshot ui. See installation options to skip skill installation.

    Edit a graph directly

    Export a template with Git delivery disabled:

    zeroshot template show software-change --delivery none > graph.json
    

    Edit the graph, choose a runtime, and run it. The review loop guide has complete graph, input, and runtime files; the CLI quick start shows validation and execution.

    Hosting

    Run locally, self-host with Docker, or share graphs and run on zeroshot Platform using your own model API keys.

    Contributing

    Development guide · UI development · Publishing · Security · Issues · Discord

    MIT. See LICENSE.