English | 中文
TomorrowEdge / 明日边缘是一个面向异构 Coding Agent 的本地编排治理与策略演化运行时。
它提供一个 GUI/runtime 编排层,用来治理强 Agent、在预算约束下组织多模型执行、召集 Agent Council、分派 TaskGraph、记录证据、审查交付,并从 objective-action-feedback trace 中离线演化编排策略。
它不是聊天机器人,不是某个模型的一层 CLI 壳,不是 benchmark dashboard,也不是泛个人 Agent OS。TomorrowEdge 把 Codex、Claude Code、DeepSeek、MiMo、Ollama、OpenRouter 模型、本地模型、命令行 Agent、MCP Agent 和自定义 adapter 变成可替换的能力节点,放进一个可治理的软件工程 Council。
Governed orchestration. Full traceability.
强 Agent 负责决策,高性价比 Agent 负责执行。
Codex / Claude Code 给 Agent full access。
TomorrowEdge 给异构 full-access Agent 治理、trace、预算和策略演化。

AI coding 的核心问题已经不只是“模型不够强”。强模型已经能写很多代码。
真正困难的是编排和治理:
OpenRouter 路由请求。TomorrowEdge 路由目标、能力、角色、工具、预算、证据、任务所有权、策略变异和工程交付。
TomorrowEdge 1.6 Canopus 是 The Convergence Runtime Release,也就是目标收敛运行时版本。
Canopus 在现有编排治理运行时之上,引入目标收敛层。它不替代 TomorrowEdge “异构 Coding Agent 本地编排治理与策略演化运行时”的主定位,而是在其内部增加一条可验证目标收敛路径:Agent 不能因为“自称完成”就结束任务;一次运行必须满足 ObjectiveContract,通过 AcceptanceMatrix,留下 Evidence,更新 RunState,并服从有界 ConvergencePolicy。
当前状态:Canopus 已提供可运行的 convergence runtime,支持 mock、noop、shell 和 Sirius Council AgentBridge 路径。AgentBridge 可以提出或执行动作,但是否收敛只由结构化目标条件和阻断验收检查决定。
.runs/<run_id>/trace.jsonl、status.latest.json、progress.md 和 evidence artifacts。observe -> pre-acceptance -> act -> observe -> post-acceptance -> write RunState -> decide next loop。tedge control 继续作为 1.6 的兼容 CLI alias 保留,并会在 stderr 输出兼容提示。新旧命名 mapping:
| 早期 control-plane 命名 | Canopus 公开命名 |
|---|---|
| Agent Control Plane | Canopus convergence layer / Canopus Runtime |
| GoalSpec | ObjectiveContract / CanopusObjective |
| EvalSpec | AcceptanceMatrix |
| LoopSpec | ConvergencePolicy |
| StatusSpec | RunState / TraceState |
| ReconciliationController | ConvergenceEngine |
| EvaluationRunner | AcceptanceRunner |
| StatusStore | TraceStateStore / RunLedger |
| DesiredStateDiff | ObjectiveDelta |
| hard_gate | blocking_check |
| soft_gate | advisory_check |
| checker_agent | reviewer_role / review_agent |
| actuator | AgentBridge / worker_adapter |
快速开始:
tedge canopus init --title "Fix bug" --mode coding
tedge canopus validate goal.yaml
tedge canopus run goal.yaml
tedge canopus status
tedge canopus report
tedge control ... 继续作为同一组命令的兼容 alias 保留。旧版 goal/evaluation/loop schema 在 v1.6 中继续兼容;新的 Canopus 示例使用 objective/acceptance/convergence。
源码 checkout 离线 demo:
npm run dev -- canopus validate examples/canopus/simple_bugfix_runtime/objective.yaml
npm run dev -- canopus run examples/canopus/simple_bugfix_runtime/objective.yaml \
--cwd examples/canopus/simple_bugfix_runtime \
--adapter shell \
--action-command "node fix-bug.mjs" \
--run-id simple_bugfix_runtime
npm run dev -- canopus status --cwd examples/canopus/simple_bugfix_runtime --run-id simple_bugfix_runtime
npm run dev -- canopus report --cwd examples/canopus/simple_bugfix_runtime --run-id simple_bugfix_runtime
完整设计见 Canopus Runtime。
Sirius 是 TomorrowEdge 1.5 版本线。它的主线运行时是 Agent Council Governance Runtime。
用户给出一个高层软件工程任务后,任务先进入 Chief Agent。Chief Agent 可以召集 Council Members 进行 critique、gap fill、alternative plan 和 task claim。Council 形成 consensus TaskGraph。每个核心 TaskNode 会得到 owner agent、provider、model 和 assignment reason。随后 TomorrowEdge 委派执行,同时由 EvidenceGate、BudgetGate、Debate v2、Objective Contract、Strategy Memory 和事件账本治理整个流程。最终交付会回到 Chief Agent 做 final review / judge。
默认 Sirius fixture/native 运行是治理型委派运行:它会产出 TaskGraph ownership、evidence packet、artifact、mutation event 和 Chief review,但除非配置的 command adapter、MCP adapter 或 Canopus shell 路径实际执行工作,否则不会声称已经产生真实文件 patch 或 shell test 结果。trace 会记录 delegated_execution_mode,用于区分 native governance evidence 和 command-backed execution artifact。
flowchart LR
User["高层任务"] --> Chief["Chief Agent"]
Chief --> Council["Agent Council"]
Council --> Graph["Consensus TaskGraph"]
Graph --> Own["任务所有权分配"]
Own --> Exec["委派执行"]
Exec --> Gates["EvidenceGate + BudgetGate + Debate v2"]
Gates --> Mutate["有界策略变异"]
Mutate --> Final["Chief final review / judge"]
Final --> Deliver["交付物 + trace"]
Sirius 核心模块:
ownerAgentId、assignedProvider、assignedModel 和 assignmentReason。Sirius 仍是 experimental,但已经是项目主线。
下面是从本地 tedge client GUI 对 Sirius council fixture session 实际截取的运行时截图,不是静态设计稿。




| 类别 | 常见做法 | TomorrowEdge |
|---|---|---|
| 单 Agent coding CLI | 一个强模型包办整个任务 | 多个 Agent 按角色、能力、成本、信任和证据被治理 |
| Model router | 给一次请求选择一个模型 | 路由目标、角色、工具、上下文、所有权、验证和交付 |
| Agent framework | 构建 agent graph | 作为 native workflow 和外部框架之上的 cockpit / governance layer |
| Benchmark dashboard | 优化榜单输出 | benchmark / dashboard 只是辅助评估工具 |
| Prompt optimization | 调 prompt 或固定 workflow | 从 objective-action-feedback trace 中演化编排策略 |
| Full-access 工具 | 给 Agent 很大权限 | 让 full-access 执行可见、可记录、可预算、可审查、可回滚 |
npm install
npm run build
npm run client
GUI client 会打开本地 cockpit,用于自然语言任务、权限模式、provider 配置、角色路由、approval、telemetry、drawer details 和 trace inspection。
安装后的命令:
tedge client
tedge desktop
无 API key 体验:
npm run dev -- run "fix failing test" --headless --fixture-mode --approve-patch --approve-shell
运行 Sirius council:
npm run dev -- council run "Rewrite a small TypeScript utility as a Rust module with tests" --headless --fixture-mode
npm run dev -- council run \
--headless \
--fixture-mode \
--config examples/configs/sirius-codex-deepseek-mimo.mock.yaml \
--cwd examples/agent-council-rust-rewrite \
"rebuild this JS CLI app in Rust"
Headless Sirius runs print configSource and configPath. The packaged mock
config can run from outside the repo root and records chief_agent / agent
sources when the mock command agents are invoked.
Installed-package equivalent:
tedge council run \
--headless \
--fixture-mode \
--config node_modules/@axobase001/tomorrowedge/examples/configs/sirius-codex-deepseek-mimo.mock.yaml \
--cwd node_modules/@axobase001/tomorrowedge/examples/agent-council-rust-rewrite \
"rebuild this JS CLI app in Rust"
也可以通过普通 run 入口进入 council:
tedge run "rewrite this service with a safer architecture" --agent-council
打开 GUI 后点击 Keys 配置 provider 和 role routing。TomorrowEdge 使用本地加密 secret store 或环境变量间接引用保存 key;配置文件只保存 env-var 引用,不保存明文 key。
推荐首次配置:
auto。Provider 运行时控制和工作流限制是分开的:
providers.<id>.requestTimeoutMs 控制单次 HTTP / 模型请求超时。providers.<id>.maxRetries 控制 provider 级请求重试次数。autonomy.max_iterations、repair 和 debate 限制控制工作流轮数,不控制 HTTP 请求超时。示例角色意图:
chief_agent:
prefer: [strong_reasoning, external_codex, external_claude]
role_routing:
planner:
prefer: [strong_reasoning]
coder_a:
prefer: [coding, fast]
coder_b:
prefer: [cheap, coding]
reviewer:
prefer: [strong_reasoning, conservative]
judge:
prefer: [strong_reasoning]
截图里的模型名只是示例,不是产品硬编码要求。
TomorrowEdge 在 planning 前插入可验证的目标契约。契约定义 success criteria、failure criteria、allowed tools、forbidden actions、required evidence、budget bounds、role permissions 和 stop conditions。Planner 可以补充执行细节,但不能放松契约。
Chief Agent 可以召集多个可替换 Agent 组成 Council。Council move 包括:
TaskGraph node 不只是抽象 label。核心节点会带上具体所有权:
ownerAgentIdassignedProviderassignedModelassignmentReason运行时完整 artifact 会保留用于 replay,同时只把压缩后的 evidence packet 投影给模型。每个关键动作都会进入事件账本:routing decision、budget decision、model call、council move、task result、review、judge、patch、shell、repair、mutation 和 final summary。
受进化算法启发,TomorrowEdge 把编排策略作为演化单位。
系统不演化模型权重、原始 prompt 或单个答案,而是演化有界 runtime policy:如何生成契约、如何规划、如何路由角色、如何验证证据、如何修复失败、如何检索 trace、什么时候停止或询问用户。
进化单位不是答案、prompt 或 Agent,而是 orchestration policy。
安全边界不可被变异。
| 模式 | 行为 |
|---|---|
restricted |
不执行 patch 或 shell,只读和 advisory workflow。 |
partial |
patch 和 shell 需要审批。 |
full |
在 policy 允许时自动执行 patch、shell 和 repair,但每一步仍然写入 ledger。 |
Full access 的含义是 governed autonomy + full traceability,不是静默执行。
tedge client # 本地 GUI client
tedge desktop # 可选桌面窗口
tedge run "fix failing test" # native workflow
tedge run "..." --agent-council # Sirius council path
tedge council run "..." # 显式 council runtime
tedge models --connection-test # provider 连接测试
tedge trace latest --verbose # 查看最新事件账本
tedge sessions inspect latest # 结构化 session inspector
tedge policy inspect # policy genome
tedge policy evolve --offline # 离线策略演化
tedge skills list # governed skills and tool packs
tedge mcp serve # 外部 Agent MCP bridge
开发检查:
npm run build
npm run web:build
npm run docs:status
npm run secrets:scan
npm run test:council
TomorrowEdge 不替代 Codex、Claude Code 或其他 coding agent。它可以通过 MCP 或 command adapter 把它们绑定到 workflow roles 里。
例子:
外部 Agent 应提交 typed role output,而不是只提交 opaque final answer。
TomorrowEdge 路由的是能力,不只是请求。
例子:
Screenshot / diagram / error image
-> Vision Agent
-> Structured Visual Spec
-> Planner / Coder
-> Patch / Test
-> Reviewer / Judge
能看图的模型不一定要写代码。写得快的模型不一定要负责最终判断风险。
当前版本:1.6.3 Canopus。
主要已实现能力:
仍处于实验状态的部分:
TomorrowEdge local-first。Session、artifact、trace 和本地 secret 默认留在本地 workspace,除非你显式配置外部 provider 或发布 artifact。
不要提交真实 API key。使用环境变量或本地加密 secret store。如果 key 曾经出现在聊天、截图或公开日志里,建议轮换。
MIT
$ claude mcp add tomorrowedge \
-- python -m otcore.mcp_server <graph>