Compare commits
7
Commits
9474064daf
...
v2.4.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bb29bba8e0 | ||
|
|
9b54653033 | ||
|
|
2c0741f88f | ||
|
|
8e753e7204 | ||
|
|
d1dabc10f6 | ||
|
|
28b0bf4535 | ||
|
|
369384a3eb |
No files matched your search
@@ -8,4 +8,4 @@ This repository maintains a Codex skill and an optional global prompt template.
|
||||
- After changes run python3 -m unittest discover -s tests -v and python3 scripts/check_repository.py. Run the installed skill-creator validator when available.
|
||||
- Use synthetic fixtures only for deterministic parser/contract tests. Mark scenario reviews as static; live subagent behavior requires actual authorized tool calls.
|
||||
- Keep readme.md installation, rollback and compatibility notes aligned with behavior. Shared evidence schema changes require parser, tests and examples to move together.
|
||||
- Established repositories use a feature branch and PR; never merge or force-push without authorization. An explicitly requested empty-repository bootstrap may initialize its default branch.
|
||||
- Established repositories use a feature branch and PR. Determine execution scope from the user's task and stated boundaries; task-required pushes, merges and releases need no additional category-based approval. Honor higher-priority host restrictions and preserve the boundary against unauthorized force-pushes. An explicitly requested empty-repository bootstrap may initialize its default branch.
|
||||
@@ -22,14 +22,14 @@ These are static review cases, not a record that a model executed them. Use them
|
||||
| User says never delegate | Stay local even if a skill is selected implicitly |
|
||||
| Authorized batch of known-source records with fixed checks | Consider GPT-6 Luna low/medium; batch useful work, no fan-out quota |
|
||||
| Authorized settled patch with contained failure and behavior checks | Consider GPT-6 Luna medium/high; parent reviews diff and checks |
|
||||
| Ordinary bug requires causal investigation across files | Select GPT-6 Sol medium directly; no mandatory Luna attempt |
|
||||
| Ordinary bug requires causal investigation across files | Select GPT-6.1 Sol medium directly when exposed; no mandatory Luna attempt |
|
||||
| Tiny diff changes a shared authorization contract | Parent owns the contract; size alone does not justify Luna |
|
||||
| Host exposes GPT-6 Sol and GPT-5.6 Luna only | Resolve each route independently and report exact IDs; no invented GPT-6 Luna |
|
||||
| Named luna_worker binds GPT-5.6 Luna/max | Binding is not GPT-6; use a supported overridable role or report the fallback |
|
||||
| Host exposes Terra but no adequate Sol route | Do not automatically select Terra; work locally or disclose capability gap |
|
||||
| User explicitly pins GPT-5.6 Terra | Preserve the pin; retirement from defaults does not authorize overriding the user |
|
||||
| User requires GPT-6 Luna but schema lacks it | Report unavailability before dependent dispatch; no silent older-generation substitute |
|
||||
| Luna is 20x cheaper at equal Standard token volumes | Do not infer equal task quality, twenty retries, more slots or Codex quota savings |
|
||||
| Luna input/output are 20x cheaper at equal Standard token volumes | Do not infer equal task quality, twenty retries, more slots or Codex quota savings; cached input has a different ratio |
|
||||
| Luna needs repeated parent correction | Reassess contract and choose Sol directly; count parent rework |
|
||||
| Missing actual usage, requested model known | Cost and observed identity remain unknown; no fabricated benchmark |
|
||||
| Several fixed independent reads, no delegation request | Use supported tool concurrency; no child just to wait on I/O |
|
||||
@@ -41,6 +41,9 @@ These are static review cases, not a record that a model executed them. Use them
|
||||
| API supports configuration_update, Desktop tool lacks it | No claimed runtime effort switch or invented tool parameter |
|
||||
| API request uses automatic compaction and requests dynamic effort | Resolve documented incompatibility before enabling configuration updates |
|
||||
| Stronger instruction following encounters a vague skill suggestion | Identify the actual rule; do not invent an approval gate |
|
||||
| User requests a change through merge and release, with stated task boundaries | Parent completes task-required external steps within those boundaries; no separate category-based approval or reconfirmation |
|
||||
| User requests a local fix and explicitly forbids push or deployment | Honor the stated boundary; complete local work only |
|
||||
| Task-required production write has a materially ambiguous target | Clarify the target while continuing independent work; honor higher-priority host restrictions |
|
||||
| Small change passes relevant required checks | Stop validation unless new changes/failures/uncertainty justify more |
|
||||
| Active prompt grants standing parallel authorization; ordinary task has independent useful slices | Dispatch promptly without asking again; parent advances critical path |
|
||||
| Template merely exists on disk, no active delegation authorization | No spawn based solely on the template's existence |
|
||||
@@ -53,6 +56,60 @@ These are static review cases, not a record that a model executed them. Use them
|
||||
| Several independent ready slices, parent only has later synthesis, host permits this dispatch | Run useful children concurrently and integrate on return; no universal requirement to invent simultaneous parent work |
|
||||
| Host explicitly requires useful concurrent parent work | Honor that stricter requirement even when the fleet policy otherwise permits parent waiting |
|
||||
|
||||
## 2.4 verification, causal repair and routine Luna work
|
||||
|
||||
These are static expected decisions, not live rollouts or measured improvements. Use the user request, relevant changed artifact and actual host conditions for future forward tests.
|
||||
|
||||
| Scenario | Expected behavior |
|
||||
| --- | --- |
|
||||
| Reversible UI label correction, no executable behavior change, relevant required checks pass | Inspect the changed result and stop; no new unit suite, full build or extra reviewer by default |
|
||||
| Small adapter fix changes a local boundary | Check the affected behavior and nearest relevant boundary; add a regression test if it protects a recurring defect |
|
||||
| Two-line patch changes authorization or persisted financial state | Assess the actual invariants/consumers and relevant failure paths; do not classify as low-risk from diff size |
|
||||
| Required project suite is broad despite a small change | Run the required suite; the skill cannot waive it |
|
||||
| Proposed extra fuzz/build/review has no uncovered affected invariant | Stop validation; do not add work to fill idle capacity |
|
||||
| Worker checks passed on the same relevant files/dependencies/artifact/environment | Parent reviews patch and coverage, reuses checks, and tests only new integration interactions and mandatory project items |
|
||||
| Unrelated documentation edit after a passed parser test | Reuse that test result; the unrelated edit does not require rerunning it |
|
||||
| Worker checks predate a changed shared dependency or ran against moving output | Recheck affected behavior on a stable current artifact; do not treat the stale result as final |
|
||||
| First bug is an obvious isolated typo | Correct locally and check the direct result; no architecture audit |
|
||||
| First bug reveals duplicated caller fallbacks and inconsistent producer/consumer assumptions | Inspect shared cause and nearest sibling consumers; repair the demonstrated failure class at its owning layer |
|
||||
| Original failure is fixed only by adding another caller-specific default that masks a contract violation | Revisit the contract/owner and check a representative sibling before acceptance |
|
||||
| Environment prevents a full repair, user requests a temporary mitigation | Apply the scoped mitigation if authorized; state its limits and remaining cause without claiming root resolution |
|
||||
| Authorized routine batch has several independent Luna-sized coding outcomes | Dispatch useful bounded batches early; single-item simplicity does not justify keeping the entire batch local |
|
||||
| Behavior and ownership are clear, exact local edit sites are not yet known | Let the bounded worker locate edits; no parent pre-solution or full repository map required |
|
||||
| Ordinary bounded Luna task with no structured consumer | Short outcome/baseline/ownership/acceptance contract and concise paths/checks/gaps return; no mandatory JSON packet |
|
||||
| Large batch completes, runtime identity is unknown, identity is not an explicit requirement | Keep identity unknown and evaluate output normally; batch size alone does not trigger a packet or another probe |
|
||||
| Parent patches share one changing contract even though paths differ | Settle the contract and serialize its ownership; aggressive Luna dispatch does not remove integration gates |
|
||||
|
||||
## 2.3 Sol version and migration scenarios
|
||||
|
||||
These are static expected decisions, not live executions or benchmarks.
|
||||
|
||||
| Scenario | Expected behavior |
|
||||
| --- | --- |
|
||||
| Authorized investigation; schema exposes both gpt-6.1-sol and gpt-6-sol, no pin | Prefer gpt-6.1-sol medium; record the exact requested ID and keep observed identity unknown unless evidenced |
|
||||
| Host exposes GPT-6 Sol but not 6.1; no exact version requirement | Use an adequate explicit gpt-6-sol compatibility route; do not claim it ran 6.1 |
|
||||
| Parent picker has 6.1 but child schema lacks it | Check child support independently; use an adequate explicit compatibility route or local work |
|
||||
| User requires GPT-6.1 Sol, child schema lacks it | Report the exact gap before dependent dispatch; no silent old Sol substitute |
|
||||
| User pins gpt-6-sol or current parent is older Sol | Preserve the selection; installing the skill does not migrate active settings |
|
||||
| A fixed sol_worker binds gpt-6-sol | Keep its real identity; use a supported override only when authorized and compatible with fork rules |
|
||||
| Authorized API migration from old Sol with medium | Keep medium; do not raise effort solely because the version changed |
|
||||
| Authorized API migration uses none/minimal or Chat Completions tools | Start at supported low for effort and use Responses for tools; do not claim compatibility without those changes |
|
||||
| Desktop exposes Ultra for 6.1 | Follow actual host controls; do not send ultra as an API reasoning effort |
|
||||
| Mostly cached input and cost-sensitive routing | Use the cached-input category: Luna is 1/10 of 6.1 Sol, not 1/20; total task savings need actual usage |
|
||||
| New Sol is officially positioned near Astra | Use Sol for its work shape; retain useful Astra depth without mandatory participation or an unmeasured equivalence claim |
|
||||
| Archived synthetic packet requests gpt-6-sol | Validate it unchanged; never rewrite its requested identity as 6.1 |
|
||||
| Native API Multi-agent enabled; task asks for Luna and Astra workers | Children share request model/tools; use supported host orchestration for a mixture or disclose the mechanism gap |
|
||||
| API max_concurrent_subagents is 3; root and grandchildren are active | Count all active descendants against three, excluding root; do not apply this rule to a host that counts root |
|
||||
| Native model is available but beta SDK/gateway support is unknown | Check actual beta/schema support before claiming execution capability |
|
||||
| Native stream contains multi_agent_call and function_call | Hosted collaboration executes server-side; application executes only client function calls with matching call IDs |
|
||||
| Two native children emit function calls | Attribute and return every permitted call's result; process neither only root calls nor shared-state writes concurrently by default |
|
||||
| WebSocket injection fails because response already completed | Continue with the returned unaccepted function output; do not re-execute a completed external tool |
|
||||
| Worker text arrives before root final_answer | Keep worker text separate from user-facing final result; root synthesis and artifact checks still required |
|
||||
| Native Multi-agent requested with standalone compact, reasoning.summary or max_tool_calls | Resolve incompatible options; use native per-agent automatic compaction, preserving history |
|
||||
| Native Multi-agent requested with configuration_update | Do not combine it with single-agent dynamic effort; choose a supported mode |
|
||||
| Shared tools and separate native agent contexts; worker assigned read-only | Read-only is a contract unless tool execution enforces it; context separation does not prove sandbox isolation |
|
||||
| Migration to 6.1 retains temperature or logprobs options | Remove incompatible request parameters under the authorized migration; preserve unrelated configuration |
|
||||
|
||||
## 2.0 escalation scenarios (manual forward evaluation)
|
||||
|
||||
These expectations are not recorded live-agent outcomes.
|
||||
|
||||
@@ -15,6 +15,10 @@ The bundled validator validates evidence structure only. It cannot authenticate
|
||||
|
||||
Use Python 3.9+ and the standard library. The optional upstream skill-creator quick_validate.py requires PyYAML; if missing, report the missing dependency rather than substituting an unreported result.
|
||||
|
||||
For this repository, run the checks required by AGENTS.md once on the final relevant baseline, including the available skill-creator validator. Unit tests already cover validator smoke behavior and installer safety; do not stack their equivalent standalone examples after a passing run. Instruction changes need a focused static review of representative decisions, not wording-matching unit tests. Installation comparison is for an installation task, not a requirement that a contributor's active global prompt equal the template.
|
||||
|
||||
For tasks using the skill, select checks through [verification scope and causal repair](../skills/codex-subagent-router/references/engineering-workflow.md). Preserve required checks; reuse unaffected evidence and stop when the relevant outcome is supported. Static scenarios remain expectations until real authorized forward tests observe behavior. Do not claim this policy reduced elapsed time, cost or defects without measurements.
|
||||
|
||||
## Compatibility with other skills
|
||||
|
||||
Do not automatically rewrite unrelated skills. Older orchestration skills may assume forked workspaces, a close tool, or a Sol-only parent. Resolve conflicting applicable instructions according to host precedence and identify the exact remaining gate. For a coordinated migration, explicitly include those files and their project-specific requirements.
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# 2.3.0 — GPT-6.1 Sol 首选路由
|
||||
|
||||
## 变化
|
||||
|
||||
- 新通用工程会话、常规开发、调查和复杂分析推荐 GPT-6.1 Sol / medium,按需 high。配置示例、技能入口、全局提示词和当前证据说明同步使用精确 ID `gpt-6.1-sol`。
|
||||
- 保留 GPT-6 Luna 的有界执行与 GPT-6 Astra 的最困难综合工作。6.1 的接近 Astra 表现来自官方定位,不能代替本项目对真实任务的质量、延迟与总成本评测。
|
||||
- 每条路线独立检查宿主支持。6.1 不可用时显式选择足够胜任的 GPT-6 Sol 或 GPT-5.6 Sol;旧模型不是别名,用户精确指定的版本、已有配置和活动主模型继续保留。
|
||||
- 补充 API 迁移边界:保留受支持的 effort;6.1 不支持 none/minimal,以 low 作为替代起点并验证。工具调用须使用 Responses,Desktop/CLI Ultra 等参数不能直接复制到 API。
|
||||
- 新增 Sol 6.1 按需适配参考,区分原生 Responses Multi-agent beta 与宿主跨模型路由。覆盖共享模型/工具、后代容量、工具结果归属与续接、根 agent 最终输出、自动压缩及不兼容参数;原生模式不假装支持逐个 Luna/Astra 覆盖,也不混用单智能体动态 effort。
|
||||
- 长任务以完整产物、最小必要上下文和增量证据组织,保留真实待办与历史;继续约束共享资源、工具权限及最终验收。采样/logprobs 兼容按当前请求模式检查,技能安装不启用 API beta。
|
||||
- 更新 2026-10-06 价格快照:6.1 输入/输出仍为 2/10 美元每百万 token,缓存输入由旧 Sol 的 0.20 降为 0.10。缓存比例与其他 token 类别分别计算,API 单价不代表 Codex 套餐消耗。
|
||||
|
||||
## 兼容与验证边界
|
||||
|
||||
证据 schema 1/2、决策 schema 1 和安装流程不变。新增参考纳入资源检查和安装文件集。历史发行说明与旧模型合成夹具保持原样,校验器继续接受旧版模型记录。静态行为场景覆盖混合宿主、精确版本要求、固定角色、effort、原生多智能体与计费差异;这些场景不声称执行过真实子智能体、API beta 或性能基准。
|
||||
|
||||
安装仍默认预览,不切换活动模型、不改 `config.toml`,不扩大委派权限或宿主容量。全局提示词安装仍须单独选择 `--include-prompt` 并审阅替换差异。版本号不表示远端标签或 Release 已创建。
|
||||
|
||||
依据:[GPT-6.1 Sol](https://developers.openai.com/api/docs/models/gpt-6.1-sol)、[Codex 模型](https://learn.chatgpt.com/docs/models)、[迁移指南](https://developers.openai.com/api/docs/guides/latest-model?model=gpt-6.1-sol)、[API 价格](https://developers.openai.com/api/docs/pricing)。
|
||||
@@ -0,0 +1,13 @@
|
||||
# 2.3.1 — 以任务边界执行,取消类别二次确认
|
||||
|
||||
## 变化
|
||||
|
||||
- 可选全局 `prompts/AGENTS.md` 以用户任务请求及其中声明的边界确定执行范围。完成任务所必需的外部写入、发布、合并、部署和生产写入随任务执行,不再因操作类别另设授权或二次确认。
|
||||
- 仓库开发约定与技能入口同步说明这一规则;只有目标或边界存在实质歧义时才澄清,更高优先级宿主限制继续生效。
|
||||
- 新增静态行为场景,覆盖任务包含合并发布、用户明确禁止外部步骤,以及生产目标存在实质歧义。
|
||||
|
||||
## 兼容与验证边界
|
||||
|
||||
子智能体触发授权、主线程串行处理外部步骤、所选模型、证据 schema、安装备份及破坏性操作边界保持原样。这是任务范围的解释调整,不授予超出用户任务的操作权限,也不覆盖宿主限制。
|
||||
|
||||
本地更新时先预览技能差异。已有个人全局规则应只修改对应条款并备份;`--include-prompt --apply` 仍会整体替换全局提示词,不用于合并个人规则。
|
||||
@@ -0,0 +1,16 @@
|
||||
# 2.4.0 — 最小充分验证、因果修复与简单任务并行
|
||||
|
||||
## 变化
|
||||
|
||||
- 验证按实际影响分档,并明确停止条件。低风险改动默认检查差异与直接结果,局部行为改动检查受影响路径,共享合同或高影响改动覆盖相关消费者与集成;保留项目必需检查。可信 worker 结果按相关产物和环境复用,整合只补查新增交互,不默认叠加全量测试、额外审查或 JSON 证据包。
|
||||
- 排障在第一次实质问题出现时定位原因并简查同机制的相邻调用点。重复特判、兜底或生产者/消费者分歧触发合同、设计与流程调查,优先在原因所属层修复已证实的一类问题;明显局部错误仍局部处理,不要求普遍架构审计或无关重构。
|
||||
- 已获授权的多个简单编码批次属于正常 Luna 工作。有明确行为、基线与文件/语义所有权即可分派,由 worker 定位局部改动;不等完整仓库地图或主线程预先解完任务。按实际容量及时补位,普通合同和返回使用简短文字,验证只分配实际需要的检查。
|
||||
- 新增按需读取的工程工作流参考,并同步技能入口、可选全局提示词、舰队/升级参考、维护文档与静态行为场景。README 不再把单元测试已覆盖的校验器样例、self-test 或本机安装一致性列成每轮必做项。
|
||||
|
||||
## 兼容与验证边界
|
||||
|
||||
保留子智能体授权、真实宿主槽位、文件与语义所有权、主线程整合及外部操作边界。证据 schema、决策 schema、模型路由和安装备份行为不变。仓库内模板不会自动成为当前会话指令,安装技能不会开启并行能力。
|
||||
|
||||
本轮静态场景描述预期决策,不是实时 agent 行为或性能测量。节省时间、成本与减少缺陷需通过后续已授权真实任务核实。
|
||||
|
||||
更新个人全局规则应先备份并做定向合并;`--include-prompt --apply` 仍整体替换提示词,不用于合并个人规则。
|
||||
+11
-10
@@ -1,12 +1,12 @@
|
||||
# Codex 工程协作约定
|
||||
|
||||
适用于 GPT-6 Astra / Sol / Luna;保留用户选定的主模型,以宿主指令优先级和适用项目规则为准。明确目标、关键约束与验收,常规实施由模型判断;固定步骤只用于真实风险或脆弱流程。
|
||||
适用于 GPT-6 Luna / GPT-6.1 Sol / GPT-6 Astra;旧版 Sol/Luna 按宿主能力显式兼容。保留用户选定的主模型,以宿主指令优先级和适用项目规则为准。明确目标、关键约束与验收,常规实施由模型判断;固定步骤只用于真实风险或脆弱流程。
|
||||
|
||||
## 1. 结果与权限
|
||||
|
||||
- 行动请求直接实施并完成验收,不停在计划或“可以帮忙”。解释、审查、诊断默认只读;修改请求包含范围内的本地编辑与验证。
|
||||
- 沿用已有授权,自行解决可逆的常规选择。只有答案实质影响结果或权限时才澄清,同时推进不依赖答案的已授权工作。
|
||||
- 外部写入、购买、发布、合并、部署、生产写入与难恢复的破坏性操作须明确授权;先确定目标并完成不依赖该授权的准备工作。
|
||||
- 以用户任务请求及其中声明的边界确定执行范围;完成任务所必需的外部写入、发布、合并、部署和生产写入随任务执行,不因操作类别另设授权或二次确认。只有目标或边界存在实质歧义时才澄清;更高优先级宿主限制仍须遵守。
|
||||
- “继续”“完成”不扩大权限。补充要求默认修正当前目标,状态查询不取消任务;明确取消或替换目标时停止失效操作。
|
||||
|
||||
## 2. 证据、技能与边界
|
||||
@@ -21,10 +21,10 @@
|
||||
|
||||
## 3. 实现与验证
|
||||
|
||||
- 理解合同与消费者,做最小完整改动;人工编辑使用 apply_patch。共享 schema、注册表、生成器和公共 API 的修改同时检查消费者与生成产物。
|
||||
- 理解合同与消费者,做最小完整改动;人工编辑使用 apply_patch。排障先定位原因,简查同机制的相邻调用点;重复特判、兜底或生产者/消费者分歧须检查合同、设计与流程,优先在原因所属层修复已证实的一类问题,不扩展成无关重构。共享 schema、注册表、生成器和公共 API 的修改同时检查消费者与生成产物。
|
||||
- 中间材料放 work/,独立交付物放 outputs/;项目代码在原项目编辑,不复制成脱离项目的源码。
|
||||
- 按影响运行定向行为检查、类型/lint、构建或烟雾测试,完成项目必需检查;不为低影响可逆改动新增照抄实现的测试。视觉文档与网页按适用技能渲染或检查功能。
|
||||
- 同一基线、产物和环境的可信结果可复用。相关检查通过后,只有新改动、失败或未决疑点才扩大或重跑。区分回归、既有失败和环境阻塞,说明验证缺口。
|
||||
- 采用最小充分验证并完成项目必需检查:低风险可逆改动默认检查差异与直接结果,局部行为改动检查受影响路径,共享合同或高影响改动检查相关消费者与集成。不默认叠加全量测试、构建、额外审查或证据包,不新增照抄实现的测试。视觉文档与网页按适用技能渲染或检查功能。
|
||||
- 同一相关基线、产物与环境的可信结果可复用,包括子智能体检查;主线程检查补丁与覆盖,整合只补查新增交互,不重做各 worker 全套验证。相关检查通过且无实质未决问题即停止;追加检查须对应具体变更、失败或未覆盖不变量。区分回归、既有失败和环境阻塞,说明验证缺口。
|
||||
- 审查只报告可执行发现:位置、触发条件、影响与修复方向。
|
||||
|
||||
## 4. 工具与任务连续性
|
||||
@@ -36,16 +36,17 @@
|
||||
|
||||
## 5. 模型与子智能体
|
||||
|
||||
- 新通用工程会话建议 GPT-6 Sol / medium,复杂推理按需 high,保留用户已选模型。Astra 可前置处理高影响困难方案、跨系统综合和独立反例审查,不以先失败为条件,也不固定参与每次规划或审查。
|
||||
- 规划后、关键检查失败、共享合同变化及验收前复核疑难。同类失败两次暂停切片,严重反例立即处理;问题 ID 与计数不随换 agent 清零。按可复现证据裁决,主线程不理解或无法验证的关键结论不得验收;专家续轮须有新证据或可测试进展,解决后回到最低足够路线。
|
||||
- 新通用工程会话建议 GPT-6.1 Sol / medium,复杂推理按需 high,保留用户已选模型。Astra 可在相对 Sol 的深度有价值时前置处理高影响困难方案、跨系统综合和独立反例审查,不以先失败为条件,也不固定参与每次规划或审查。
|
||||
- 关键失败、共享合同变化或实质反例出现时复核原因与方案,普通检查点不自动增加专家审查。同类失败两次暂停切片,严重反例立即处理;问题 ID 与计数不随换 agent 清零。按可复现证据裁决,主线程不理解或无法验证的关键结论不得验收;专家续轮须有新证据或可测试进展,解决后回到最低足够路线。
|
||||
|
||||
- 主线程负责关键路径、共享决定、冲突裁决、整合与最终验收;权限判断、生产写入、PR/merge/deploy 由主线程串行处理。
|
||||
- 本提示词作为适用指令时,明确授权在用户任务范围内,对普通开发、检索、诊断、审查和验证积极使用子智能体并行;审查仍只读。用户禁止、仅要求审计并行配置或更高优先级宿主限制时不启动。技能被自动发现本身不构成授权,不扩大外部操作权限。
|
||||
- 有可并行的独立产物时默认尽早分工,主线程优先同步推进关键路径;宿主允许时,也可让多个独立子任务并行,主线程等待后集中整合。不等再次点名 agent,不要求事先证明加速。优先用 Luna 分担有界收集、比对、验证、局部审查和已定方案修改,避免主线程包办所有机械工作。
|
||||
- 有可并行的独立产物时默认尽早分工,主线程优先同步推进关键路径;宿主允许时,也可让多个独立子任务并行,主线程等待后集中整合。不等再次点名 agent,不要求复杂任务、完整仓库地图或事先证明加速。优先用 Luna 分担有界收集、同类调用检查、比对、局部审查和行为已定的简单修改;验证只分配实际需要的检查。
|
||||
- 按真实可用槽位、独立工作量与验收能力展开并行,不固定只开一两个。维护简短待办队列,结果返回后及时验收并复用或补充任务,不等整批结束;主线程计入槽位时必须预留。出现验收积压、资源争用或限流时先消化已有工作。
|
||||
- 按完整任务块而非微小步骤分工;单条命令可直接用工具。没有独立工作、主线程下一步立即依赖结果或任务太小时本地完成;不凑舰队数量,不重复派同一任务,不递归无限扩张。
|
||||
- 默认三档:Luna 做输入有界、合同已定、易验收且失败可控的工作;Sol 做开发、调查与复杂分析;Astra 做最困难的独立综合。Terra 退出推荐与自动回退,用户显式指定仍须尊重。
|
||||
- 按独立结果分批,多个简单批次可以派多个 Luna,不因单项简单而整批留给主线程。行为与所有权明确即可分派,由 worker 定位局部改动;普通合同只需目标、相关基线、文件/语义边界与验收返回,不默认 JSON 证据包。单条命令直接用工具;单个任务太小、没有独立工作或下一步立即依赖时本地完成,不凑数量、不重复派工、不递归无限扩张。
|
||||
- 默认三档:GPT-6 Luna 做输入有界、合同已定、易验收且失败可控的工作;GPT-6.1 Sol 做开发、调查与复杂分析;GPT-6 Astra 做最困难的独立综合。精确模型与 effort 以宿主 schema 为准;旧版 Sol 是显式兼容路径,不是 6.1 的别名。Terra 退出推荐与自动回退,用户显式指定仍须尊重。
|
||||
- 路由、成本、合同与生命周期以 codex-subagent-router 为维护入口,服从真实工具 schema;技能缺失时继续可行本地工作。支持选择时显式指定足够的模型与 effort,核对 fork 限制;不逐级试错,不假装切换参数。
|
||||
- 先区分宿主子智能体和 6.1 Sol 的 Responses 原生 Multi-agent beta:原生子任务共享请求模型与工具,不能假装逐个切到 Luna/Astra。工具结果按真实调用归属返回,保留各 agent 历史;动态 effort、压缩与 beta 限制按技能参考核对,不因模型升级自动开启或混用。
|
||||
- 默认共享工作区,明确文件与语义写集;工作角色不证明隔离。复用适合的子任务,中断失效任务并核对状态;完成、验收、关闭和释放槽位分别判断,无 close 工具不虚构关闭。
|
||||
|
||||
## 6. 构建模型应用与收口
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# Codex Subagent Router
|
||||
|
||||
当前版本:**2.2.0**。GPT-6 三档路由、积极 Luna 舰队与任务连续性适配;保留 2.1 的 Astra 前置介入、滚动调度及证据裁决。见 [2.2 发行说明](docs/releases/2.2.0.md)、[舰队调度](skills/codex-subagent-router/references/fleet.md) 和 [专家介入与裁决](skills/codex-subagent-router/references/escalation.md)。
|
||||
当前版本:**2.4.0**。采用按风险选择的最小充分验证,排障检查共同机制,已获授权的简单编码批次尽早交给 Luna 并行。见 [2.4 发行说明](docs/releases/2.4.0.md)、[验证与因果修复](skills/codex-subagent-router/references/engineering-workflow.md) 和 [舰队调度](skills/codex-subagent-router/references/fleet.md)。保留 GPT-6.1 Sol 首选路由、Astra 按需介入、任务边界与原生 Multi-agent 兼容规则。
|
||||
|
||||
面向 **GPT-6 Luna / Sol / Astra** 的 Codex 路由技能与工程提示词。把可独立完成的工作交给合适的模型,并让触发、运行状态、证据与最终责任保持清楚。Terra 已退出推荐与自动回退路线;旧宿主按实际能力显式兼容。
|
||||
面向 **GPT-6 Luna / GPT-6.1 Sol / GPT-6 Astra** 的 Codex 路由技能与工程提示词。把可独立完成的工作交给合适的模型,并让触发、运行状态、证据与最终责任保持清楚。Terra 已退出推荐与自动回退路线;旧宿主按实际能力显式兼容。
|
||||
|
||||
这是供 Codex 读取的技能和可选提示词,附带证据校验、安装与测试工具。它不包含常驻调度器,也不会自行调用模型、修改模型配置或开启并行权限。
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
|
||||
- 区分只读审查、已授权委派和普通本地工作,避免“选中了技能就自动启动 agent”。
|
||||
- 按任务形状分配模型与 effort,创建任务时显式选择,避免所有子任务继承昂贵的主模型。
|
||||
- 按实际影响选择充分检查,通过即停止;复用可信 worker 结果,整合只补查新增交互与项目必需项。
|
||||
- 从症状定位原因,简查同机制的相邻调用点;在原因所属层修复已证实的问题类别,避免堆积特判。
|
||||
- 区分文件写集与语义写集、共享目录与真实隔离、合同约束与宿主强制能力。
|
||||
- 管理运行中补充、空闲复用、等待、中断与收口;没有 close 工具时不要求虚构关闭。
|
||||
- 分开记录请求的模型、宿主确认的运行身份、子任务完成和主线程验收;缺失身份使用 unknown。
|
||||
@@ -75,9 +77,9 @@ python3 scripts/install.py --include-prompt --apply
|
||||
|
||||
技能单独安装时,仍需用户或适用指令授权委派。可选全局提示词现在明确提供普通开发、检索、诊断、审查和验证的持续并行授权;审查仍只读,用户禁止、仅审计并行配置及更高优先级宿主限制优先。模板文件只有被作为适用指令加载时才生效,放在仓库或压缩包里不改变当前会话权限。
|
||||
|
||||
有授权和独立工作时默认积极并行:尽早派发 Luna 收集、比对、验证、局部审查和已定方案修改,主线程继续关键路径。并发随真实槽位和验收能力扩展,不固定只开一两个;结果返回即验收并补充队列,不等整批结束。四个总槽位最多容纳主线程加三个子智能体,提示词不会突破宿主限制。
|
||||
有授权和独立工作时默认积极并行,包括多个简单编码批次:尽早派发 Luna 收集、同类调用检查、比对、局部审查和行为已定的修改,主线程继续关键路径;验证只分配实际需要的检查。行为和所有权明确即可派发,由 worker 定位局部改动,无须主线程先查完整仓库或预先解完任务。普通合同和返回使用简短文字,不默认 JSON 证据包。并发随真实槽位和验收能力扩展,不固定只开一两个;结果返回即验收并补充队列,不等整批结束。四个总槽位最多容纳主线程加三个子智能体,提示词不会突破宿主限制。
|
||||
|
||||
任务太小、存在立即依赖、共享所有权冲突或验收积压时缩小并行。单条命令优先直接用工具;复杂判断直接选 Sol/Astra,不让 Luna 重试堆数量。配置示例的数值不是并行策略上限,安装不自动修改运行配置。
|
||||
单个任务太小、存在立即依赖、共享所有权冲突或验收积压时缩小并行;多个简单任务先按独立结果分批,不因单项简单而整批本地串行。单条命令优先直接用工具;复杂判断直接选 Sol/Astra,不让 Luna 重试堆数量。配置示例的数值不是并行策略上限,安装不自动修改运行配置。
|
||||
|
||||
## 模型策略
|
||||
|
||||
@@ -85,41 +87,51 @@ python3 scripts/install.py --include-prompt --apply
|
||||
| --- | --- |
|
||||
| 固定来源收集、枚举和检查 | GPT-6 Luna low,多步任务 medium |
|
||||
| 有界转换、分类、已定方案补丁 | GPT-6 Luna medium,必要时 high |
|
||||
| 常规实现、调试和跨文件调查 | GPT-6 Sol medium |
|
||||
| 复杂分析、设计和关键语义证据 | GPT-6 Sol medium/high |
|
||||
| 常规实现、调试和跨文件调查 | GPT-6.1 Sol medium |
|
||||
| 复杂分析、设计和关键语义证据 | GPT-6.1 Sol medium/high |
|
||||
| 最困难的独立综合任务 | GPT-6 Astra medium/high |
|
||||
| 共享决定、最终整合与验收 | 当前主线程 |
|
||||
|
||||
优先考虑 Luna 的四个条件:输入有界、合同已定、正确性易检查、失败影响可控。需要调查、设计取舍或跨文件因果推理时直接用 Sol;最困难的独立综合可直接用 Astra,不要求从便宜模型逐级尝试。主线程保持用户选择,负责判断与整合。
|
||||
|
||||
Terra 原先承担的常规开发、调试和调查统一交给 Sol。新版 Sol 的价格使单独维护 Terra 中间档的收益不足以支撑本技能继续推荐它;这是工程策略,仍需真实任务校准。缺少 GPT-6 的宿主可显式选用足够胜任的 GPT-5.6 Sol/Luna 或本地执行,不自动回退到 Terra,也不改写用户已有配置。
|
||||
推荐路线中的 Sol 指 GPT-6.1 Sol;官方将其定位为以较低成本提供接近 Astra 的复杂任务能力。本项目把它作为开发、调查、复杂分析和新工程会话的起点,Astra 仍用于深度有额外价值的最困难综合工作;这不是本项目实测的性能结论。Terra 原先承担的工作继续交给 Sol。6.1 不可用时,可按实际 schema 显式使用足够胜任的 GPT-6 Sol,再考虑 GPT-5.6 Sol;Luna 的版本独立判断,不自动回退到 Terra,也不改写用户已有配置或精确模型要求。
|
||||
|
||||
2026-09-23 核实的 API Standard 短上下文单价(美元/百万 token):Luna 输入 0.10、输出 0.50;Sol 输入 2、输出 10;Astra 输入 10、输出 50。相同 token 用量与计费条件下,Luna 为 Sol 的 1/20,Sol 为 Astra 的 1/5。此比例不等于实际任务节省或 Codex 套餐消耗;核算须包含主线程、重试与验收。[价格来源及成本校准](skills/codex-subagent-router/references/model-economics.md)。低价不增加并行权限,也不意味着应开启更多子任务。
|
||||
2026-10-06 核实的 API Standard 短上下文单价(美元/百万 token):Luna 输入 0.10、输出 0.50;GPT-6.1 Sol 输入 2、输出 10;Astra 输入 10、输出 50。对输入和输出的相同 token 用量,Luna 为 Sol 的 1/20,Sol 为 Astra 的 1/5;缓存输入另算。GPT-6.1 Sol 缓存输入为 0.10,是旧 GPT-6 Sol 的一半。此比例不等于实际任务节省或 Codex 套餐消耗;核算须包含主线程、重试与验收。[价格来源及成本校准](skills/codex-subagent-router/references/model-economics.md)。低价不增加并行权限,也不意味着应开启更多子任务。
|
||||
|
||||
按实时工具 schema 检查模型、effort、fork、并发槽位和工作区。API 模型目录不证明当前子智能体支持。可选配置示例见 [运行时参考](skills/codex-subagent-router/references/platforms.md),安装工具不会应用它。
|
||||
|
||||
新通用工程会话建议 GPT-6 Sol / medium,复杂推理按需 high,保留用户已选主模型。Astra 可前置处理影响多个后续任务的困难决策、跨系统证据及独立高影响反例,不必先失败。专家按问题、产物和退出条件设界;新增证据或可测试进展支持续轮,没有进展则暂停专题。
|
||||
新通用工程会话建议 GPT-6.1 Sol / medium,复杂推理按需 high,保留用户已选主模型。迁移保留受支持的 effort;6.1 的 API 支持 low/medium/high/xhigh/max,不支持 none/minimal,旧设置为这些值时从 low 起点评测。工具调用使用 Responses;Desktop/CLI 的 Ultra 等控制按宿主单独核对。Astra 可前置处理影响多个后续任务的困难决策、跨系统证据及独立高影响反例,不必先失败。专家按问题、产物和退出条件设界;新增证据或可测试进展支持续轮,没有进展则暂停专题。
|
||||
|
||||
同类验收失败两次暂停切片并重新分类,严重反例立即处理;问题计数跨 agent 保留。证据统一基线后裁决,主线程必须理解并验证关键结论。证据 schema 1/2 与决策 schema 1 保持兼容,累计咨询次数不得倒退;示例见 [决策记录](examples/decisions/resolved.json)。
|
||||
|
||||
## GPT-6 工作方式适配
|
||||
|
||||
### GPT-6.1 Sol 原生多智能体与持续工作
|
||||
|
||||
6.1 Sol 新增 Responses API 原生 **Multi-agent beta** 支持,可由根 agent 分派独立任务并综合结果。技能先区分执行机制:Codex 宿主有逐个模型选择时继续三档路由;原生 API 模式中的子任务共享请求模型和工具,采用多个有界 Sol 任务,不能在同一请求里假装混用 Luna/Astra。
|
||||
|
||||
新增 [Sol 6.1 适配参考](skills/codex-subagent-router/references/sol61-adaptation.md),覆盖 beta 启用、工具调用归属、HTTP/WebSocket 续接、根 agent 最终输出、各 agent 历史及自动压缩。原生多智能体不支持独立 `/responses/compact`、`reasoning.summary`、`max_tool_calls`,也不能混用单智能体动态 effort 更新。迁移同时检查采样与 logprobs 参数。具体 schema 仍须实现时核对。
|
||||
|
||||
长任务按完整可验收的产物拆分,给 Sol 保留调查和实现空间;以增量上下文续接,保留有效证据和真实待办状态。原生分离上下文不证明工作区隔离,工具权限仍由实际宿主或应用执行层约束。安装技能不会开启 API beta、发起模型调用或改变当前会话授权;性能与总成本要以获授权的真实任务验证。
|
||||
|
||||
### GPT-6 家族延续适配
|
||||
|
||||
技能与全局提示词保留目标、权限、所有权与验收要求,减少固定步骤和重复规则。固定工作优先工具,子智能体承担已授权的独立判断;异步等待期间推进独立工作,用户纠偏后核对受影响任务和迟到结果,长任务压缩后恢复未完成状态。
|
||||
|
||||
GPT-6 新增的异步工具、执行中纠偏与动态推理强度都有 API 或宿主限制。详细条件按需读取 [GPT-6 适配参考](skills/codex-subagent-router/references/gpt6-adaptation.md),不会因安装提示词就自动开启这些功能。计算机操作、结构化输出、程序化工具调用、缓存与压缩属于延续能力,不统一宣传为 GPT-6 新功能。
|
||||
|
||||
## 验证
|
||||
|
||||
应用技能时按改动影响选择最小充分检查,并完成项目必需项。低风险改动默认检查差异与直接结果,局部行为改动检查受影响路径,共享合同或高影响改动覆盖相关消费者及集成。检查通过且无实质未决问题即停止;追加检查要说明具体未覆盖的不变量。主线程检查 worker 补丁与覆盖,复用同一相关产物/环境的可信结果,整合只补查新增交互。详见 [验证范围](skills/codex-subagent-router/references/engineering-workflow.md)。
|
||||
|
||||
维护本仓库时,开发约定要求运行:
|
||||
|
||||
```sh
|
||||
python3 -m unittest discover -s tests -v
|
||||
python3 scripts/check_repository.py
|
||||
python3 skills/codex-subagent-router/scripts/validate_evidence_packet.py --self-test
|
||||
python3 skills/codex-subagent-router/scripts/validate_evidence_packet.py examples/completed-unknown.json
|
||||
python3 skills/codex-subagent-router/scripts/validate_decision_record.py examples/decisions/resolved.json
|
||||
python3 scripts/install.py --include-prompt --check
|
||||
```
|
||||
|
||||
最后一条命令只检查本机安装差异:一致返回 0,有差异返回 1;不会写入。单元测试和 examples 使用合成数据,不能证明任何模型已运行。
|
||||
单元测试已覆盖校验器与安装行为;无需每次额外运行各校验器的 self-test 和相同样例。`python3 scripts/install.py --include-prompt --check` 仅在需要比对本机安装时运行:一致返回 0,有差异返回 1,不会写入,也不是发布阻断项。单元测试和 examples 使用合成数据,不能证明任何模型已运行。
|
||||
|
||||
新证据使用 v2;未带版本的旧格式按 v1 读取并提示迁移。校验成功只证明结构可接受,不能证明 child ID、身份或业务结论真实。真实环境的前向测试应在获授权的有界任务中进行,并保留实际工具回执。
|
||||
|
||||
@@ -141,9 +153,11 @@ python3 scripts/install.py --include-prompt --check
|
||||
|
||||
- [OpenAI 模型目录](https://developers.openai.com/api/docs/models)
|
||||
- [GPT-6 家族指南](https://developers.openai.com/api/docs/guides/latest-model)
|
||||
- [GPT-6 Sol](https://developers.openai.com/api/docs/models/gpt-6-sol)
|
||||
- [GPT-6.1 Sol](https://developers.openai.com/api/docs/models/gpt-6.1-sol)
|
||||
- [Codex 模型与可用性](https://learn.chatgpt.com/docs/models)
|
||||
- [Responses 原生 Multi-agent beta](https://developers.openai.com/api/docs/guides/responses-multi-agent)
|
||||
- [GPT-6 Luna](https://developers.openai.com/api/docs/models/gpt-6-luna)
|
||||
- [API 价格](https://developers.openai.com/api/docs/pricing)
|
||||
- [Codex 子智能体](https://learn.chatgpt.com/zh-Hans/docs/agent-configuration/subagents)
|
||||
|
||||
模型与价格依据核对日期:2026-09-23;原有宿主配置示例的核对日期见运行时参考。模型分工属于工程策略;宿主真实能力与实际任务证据优先。
|
||||
模型与价格依据核对日期:2026-10-06;原有宿主配置键与工作方式参考保留各自核对日期。模型分工属于工程策略;宿主真实能力与实际任务证据优先。
|
||||
@@ -14,7 +14,9 @@ def check() -> list:
|
||||
for name in ("SKILL.md", "agents/openai.yaml", "references/lifecycle.md",
|
||||
"references/platforms.md", "references/evidence-packet.md",
|
||||
"references/routing-matrix.md", "references/escalation.md", "references/fleet.md",
|
||||
"references/engineering-workflow.md",
|
||||
"references/gpt6-adaptation.md", "references/model-economics.md",
|
||||
"references/sol61-adaptation.md",
|
||||
"scripts/validate_decision_record.py", "scripts/validate_evidence_packet.py"):
|
||||
if not (skill / name).is_file():
|
||||
errors.append("missing skill resource: " + name)
|
||||
|
||||
@@ -1,14 +1,22 @@
|
||||
---
|
||||
name: codex-subagent-router
|
||||
description: Route authorized Codex subagents across GPT-6 Luna, Sol and Astra; manage ownership, lifecycle and evidence. Use for delegation, routing decisions or subagent audits. Discovery alone does not authorize spawning.
|
||||
description: Route authorized Codex subagents across GPT-6 Luna, GPT-6.1 Sol and GPT-6 Astra; manage ownership, lifecycle and evidence. Use for delegation, routing decisions or subagent audits. Discovery alone does not authorize spawning.
|
||||
---
|
||||
|
||||
# Codex Subagent Router
|
||||
|
||||
Version 2.2.0. For new general engineering sessions recommend GPT-6 Sol / medium, with high for demonstrated reasoning needs. Preserve the selected parent. Use Astra proactively for high-leverage difficult decisions, independent counterexample reviews and residual hard reasoning; neither prior failure nor a model quota is required.
|
||||
Version 2.4.0. For new general engineering sessions recommend GPT-6.1 Sol / medium, with high for demonstrated reasoning needs. Preserve the selected parent. Use Astra proactively for high-leverage difficult decisions, independent counterexample reviews and residual hard reasoning when its depth adds value over Sol; neither prior failure nor a model quota is required.
|
||||
|
||||
Make delegation useful, observable and bounded. Preserve the selected parent model. The parent owns the critical path, shared decisions, integration and final acceptance. This skill neither changes configuration nor grants external permissions.
|
||||
|
||||
Determine execution scope from the user's task and stated boundaries. The parent carries out task-required external writes, publication, merges, deployment and production writes without adding a category-based approval or reconfirmation gate. Clarify only material ambiguity in the target or scope, and honor higher-priority host restrictions. Delegation authorization and parent ownership remain unchanged.
|
||||
|
||||
## Engineering judgment
|
||||
|
||||
Choose the smallest sufficient verification for the changed behavior and actual impact, plus mandatory project checks. Low-risk reversible work does not need a new test suite, full build, extra reviewer or structured evidence packet by default. Stop when relevant checks pass and no material concern remains; broaden only for a specific uncovered invariant, failure or change. Reuse trustworthy worker checks on the same relevant artifact/environment instead of rerunning them ceremonially.
|
||||
|
||||
When debugging, follow symptom to cause and briefly inspect the nearest sibling uses of that mechanism before patching. Repeated special cases, duplicated workarounds or producer/consumer disagreement call for a contract or workflow repair. Prefer the smallest fix that covers the demonstrated failure class; keep unrelated redesign outside scope. Read [engineering workflow](references/engineering-workflow.md) when selecting validation depth or distinguishing a local bug from a systemic defect.
|
||||
|
||||
## Trigger before routing
|
||||
|
||||
Classify the request before using child tools:
|
||||
@@ -29,20 +37,22 @@ Spawn only P/C work with a concrete output and useful parallel benefit. Prefer u
|
||||
|
||||
Choose the execution mechanism before a model: local tools for fixed commands/transforms, host-supported concurrent or async tools for independent I/O, and authorized children for useful independent reasoning or implementation. Waiting on a tool alone is not a reason to create an agent. Prefer a coherent outcome with acceptance over many tiny handoffs; bound ambiguity and ownership rather than prescribing every reasoning step.
|
||||
|
||||
GPT-6.1 Sol also supports native Responses Multi-agent beta. Its children share the request model/tools; the tiered route table below applies only where the host actually permits per-child selection. Read [Sol 6.1 adaptation](references/sol61-adaptation.md) before using native Multi-agent or reconciling it with host routing. Neither beta enablement nor this reference authorizes delegation.
|
||||
|
||||
For queue states, integration backpressure and proactive expert formations, read [fleet scheduling](references/fleet.md).
|
||||
|
||||
## Proactive Luna fleet
|
||||
|
||||
Once authorized, parallel execution is the default for ready independent work. At the first useful decomposition and after each material result or scope change, look for slices that can run alongside the parent's critical path. Dispatch those slices promptly instead of finishing the parent's entire investigation first. Do not require proof of measured speedup before a clearly useful split.
|
||||
Once authorized, parallel execution is the default for ready independent work, including batches of simple coding tasks. At the first useful decomposition and after each material result or scope change, look for slices that can run alongside the parent's critical path. Dispatch those slices promptly instead of finishing the parent's entire investigation first. Do not require a complex task, a full repository map or proof of measured speedup before a clearly useful split.
|
||||
|
||||
- Fan out bounded Luna assignments by independent evidence source, module, test suite or settled file/semantic ownership. Useful lanes include source inventory, artifact comparison, fixed validation, focused first-pass review and settled patches. Batch tiny homogeneous items into meaningful assignments.
|
||||
- Fan out bounded Luna assignments by independent evidence source, module or settled file/semantic ownership. Useful lanes include source inventory, sibling-use checks, artifact comparison, focused review and small settled coding changes. Delegate validation only when those checks are needed. Batch tiny items by outcome; several simple batches can justify several Luna workers even when each item alone would stay local.
|
||||
- Keep a small ready queue. Use as many actually available child slots as useful independent work and parent review capacity support; there is no fixed one-child or two-child ceiling. Reserve the parent when the host counts it. For example, four total active slots permit at most three concurrent children alongside the parent, not an unlimited fleet.
|
||||
- Refill available capacity when a result is handed back: accept/triage it, reuse an eligible idle child or dispatch the next ready slice. Do not wait for a whole wave if another independent slice is ready. Verify actual capacity; completed or interrupted does not necessarily mean released.
|
||||
- The parent owns contract decisions, cross-result synthesis and acceptance, and advances a parent-suitable critical-path slice when one is available. Integrate incrementally. If review backlog, conflicting ownership, I/O contention or rate limits becomes the bottleneck, reduce new dispatch and drain it.
|
||||
- One owner per file AND shared semantic contract. Parallel disjoint writes only when the host permits them; shared registries, integration and external gates remain serial. Read-only workers also need stable baselines and coordinated mutable sessions.
|
||||
- Choose Sol directly for slices requiring open-ended investigation or design, and Astra for the hardest synthesis. A fleet is a capacity strategy, not an instruction to force every task onto Luna or to duplicate the same review.
|
||||
|
||||
Stay local for a trivial task, no useful parallel benefit, an immediate dependency with no independent work, or inadequate host support. State the relevant reason briefly when a requested parallel run cannot proceed; do not produce a routing report for every small task. Standing authorization does not authorize recursive unbounded fan-out, new user-owned tasks, configuration changes or external writes.
|
||||
Stay local for a single trivial task, no useful parallel benefit, an immediate dependency with no independent work, or inadequate host support. Judge a batch as a whole before using the trivial-task exception. State the relevant reason briefly when a requested parallel run cannot proceed; do not produce a routing report for every small task. Standing authorization does not authorize recursive unbounded fan-out, new user-owned tasks, configuration changes or external writes.
|
||||
|
||||
## Select a supported route explicitly
|
||||
|
||||
@@ -50,20 +60,20 @@ Stay local for a trivial task, no useful parallel benefit, an immediate dependen
|
||||
| --- | --- |
|
||||
| Known-source collection, fixed checks, logs | GPT-6 Luna low; medium for multi-step work |
|
||||
| Bounded classification, conversion, settled patch with fixed checks | GPT-6 Luna medium; high for local reasoning |
|
||||
| Everyday implementation, debugging, locating/correlating artifacts | GPT-6 Sol medium |
|
||||
| Bounded complex analysis, design or financial/security evidence | GPT-6 Sol medium/high |
|
||||
| Everyday implementation, debugging, locating/correlating artifacts | GPT-6.1 Sol medium |
|
||||
| Bounded complex analysis, design or financial/security evidence | GPT-6.1 Sol medium/high |
|
||||
| High-leverage difficult design, cross-system synthesis, independent high-impact counterexample review | GPT-6 Astra medium/high |
|
||||
| Shared decisions, integration and external/final gates | Current parent, serial |
|
||||
|
||||
Luna is the first candidate when inputs are bounded, the contract is settled, correctness is cheaply checkable, and failure is contained. All four conditions matter; a short diff can still hide a shared semantic decision. Use Sol directly when investigation, design choices or cross-file causal reasoning dominate. Use Astra directly for the hardest independent synthesis when expected quality or saved rework justifies it. Do not make high/max Luna a mandatory step before Sol.
|
||||
Luna is the first candidate when inputs are bounded, the contract is settled, correctness is cheaply checkable, and failure is contained. Settled means the required behavior and ownership are clear, not that the parent has already located every edit or done the worker's investigation. A bounded read-only question can be ready while implementation contracts remain open. A short diff can still hide a shared semantic decision. Use Sol directly when investigation, design choices or cross-file causal reasoning dominate. Use Astra directly for the hardest independent synthesis when expected quality or saved rework justifies it. Do not make high/max Luna a mandatory step before Sol.
|
||||
|
||||
These are starting heuristics, not measured task-cost rankings. Lower prices broaden the useful Luna workload; fill supported capacity with useful work under existing authorization, never infer extra host slots from price. Pick sufficient capability directly; do not escalate through every model. Missing access/data and tool failures need diagnosis, not a stronger model. After two same-class failures, stop that slice and return the evidence to the parent; escalate earlier when the contract no longer fits. Preserve useful evidence on handoff instead of restarting discovery.
|
||||
|
||||
Resolve exact IDs from the child-tool schema: prefer `gpt-6-luna`, `gpt-6-sol`, `gpt-6-astra` only when exposed. GPT-5.6 models are explicit compatibility routes, not aliases for GPT-6. For a legacy-only host use [routing boundaries](references/routing-matrix.md); do not silently substitute an explicitly required generation. A role bound to GPT-5.6 Luna remains GPT-5.6 even when named `luna_worker`.
|
||||
Resolve exact IDs from the child-tool schema: prefer `gpt-6-luna`, `gpt-6.1-sol`, `gpt-6-astra` only when exposed. Sol means GPT-6.1 Sol in recommended routes; `gpt-6-sol` and GPT-5.6 models are explicit compatibility choices, not aliases. Use [routing boundaries](references/routing-matrix.md) when a preferred route is absent; do not silently substitute an explicitly required version. A role bound to GPT-6 Sol or GPT-5.6 Luna keeps that exact binding despite its name.
|
||||
|
||||
Retire Terra from recommended routes and automatic fallbacks: Sol owns ordinary implementation and investigation. Preserve explicitly pinned models and existing configuration; editing this skill does not authorize rewriting them.
|
||||
|
||||
Use the lowest adequate supported effort. Use none only for straightforward extraction/conversion when the host exposes it and checks cover the result; low/medium are the usual starts for tool work. Use xhigh/max for a concrete depth need or an explicit compatible role requirement; ultra only when exposed and justified by the workload, never inferred from API support. Model choice and working role are separate. A role named "explorer" is not proof of sandbox isolation.
|
||||
Use the lowest adequate supported effort. GPT-6.1 Sol's API supports low/medium/high/xhigh/max, not none/minimal. Preserve a supported effort when migrating; use low as the starting point for a previously unsupported none/minimal setting and verify representative work. Use none only for straightforward extraction/conversion on a model and host that expose it, such as GPT-6 Luna; low/medium are the usual starts for tool work. Use xhigh/max for a concrete depth need or an explicit compatible role requirement; ultra only when exposed and justified by the workload, never inferred from API support. Model choice and working role are separate. A role named "explorer" is not proof of sandbox isolation.
|
||||
|
||||
At dispatch, specify model AND effort when the host permits selection. Otherwise omitted settings may inherit the parent or configured defaults. Prefer a self-contained contract and no history fork; use bounded history only when necessary. Respect full-history/override incompatibilities. Never claim prompt text changed a runtime parameter.
|
||||
|
||||
@@ -79,19 +89,21 @@ Read [runtime and configuration](references/platforms.md) only for configuration
|
||||
|
||||
Read [GPT-6 adaptation](references/gpt6-adaptation.md) when async execution, steering, context recovery or dynamic effort changes affect the workflow. API features are not automatically Desktop/CLI capabilities; use only exposed controls.
|
||||
|
||||
For 6.1-specific request compatibility, native tool-result attribution and compaction limits, read [Sol 6.1 adaptation](references/sol61-adaptation.md). Native Multi-agent's automatic compaction is not compatible with standard single-agent dynamic effort updates; choose a supported mode rather than combining every feature.
|
||||
|
||||
## Dispatch, observe, accept
|
||||
|
||||
Give a compact contract: goal/symptom; baseline and non-goals; read/write/forbidden paths and semantic owner; requested model/effort/working role and real isolation; permitted actions; acceptance; return evidence; escalation. Include a time/checkpoint budget when useful, but do not call it an enforced timeout unless the host supplies one.
|
||||
For ordinary bounded work, give a short contract: outcome, relevant baseline, file AND semantic ownership/action limits, and sufficient acceptance/return evidence. Specify supported model/effort in the tool call; keep the real child ID and state. Add isolation details, checkpoints or an expert packet only when the task needs them. Do not require a formal report before a useful simple dispatch or call an advisory budget an enforced timeout.
|
||||
|
||||
Read [lifecycle](references/lifecycle.md) before a multi-round or cancellation-sensitive run. Keep child IDs, ownership, state and acceptance in a small ledger. Send running agents only incremental context; reuse idle agents for follow-up; interrupt obsolete work and verify its state. Never infer completion from a wait timeout or slot release from interruption. Only call close if that tool exists.
|
||||
|
||||
Ask for bounded facts, paths, changes, real check outcomes, gaps and escalation. Review artifacts/diffs and provenance; resolve conflicts from original evidence, not votes. Reuse checks only for the same relevant baseline, artifact and environment. Before delivery verify no unneeded child remains running or writing.
|
||||
Ask for changed paths or findings, relevant real check outcomes and remaining gaps. Review artifacts/diffs and provenance; resolve conflicts from original evidence, not votes. Reuse checks only for the same relevant baseline, artifact and environment. Check integration risks introduced by combining patches; do not repeat each worker's entire suite or investigation. Before delivery verify no unneeded child remains running or writing.
|
||||
|
||||
Use [evidence packets](references/evidence-packet.md) when structured evidence is required, a run is material, or identity is disputed. Ordinary bounded work can return concise prose with the same relevant facts; do not generate ceremonial JSON for every local decision. The validator checks structure, not truth or semantic correctness.
|
||||
Use [evidence packets](references/evidence-packet.md) when an explicit consumer requires structure or disputed identity/provenance needs an audit trail. Ordinary bounded work returns concise prose with the relevant facts; a large batch or long run alone does not require JSON. The validator checks structure, not truth or semantic correctness.
|
||||
|
||||
## Context and ownership discipline
|
||||
|
||||
Read [escalation and adjudication](references/escalation.md) when planning exposes uncertainty, a key check fails, shared contracts change or acceptance has unresolved counterexamples. Preserve issue IDs and failure counts across agents. Repair missing inputs first; adjudicate by reproducible evidence, not model rank. The parent must understand and verify decisive conclusions. Continue expert rounds only with evidence-based progress, and recover to an adequate cheaper route after resolution.
|
||||
Read [escalation and adjudication](references/escalation.md) for unresolved causal/design uncertainty, repeated failures, consequential shared-contract changes or material counterexamples. Routine checkpoints do not require another review round. Preserve issue IDs and failure counts across agents. Repair missing inputs first; adjudicate by reproducible evidence, not model rank. The parent must understand and verify decisive conclusions. Continue expert rounds only with evidence-based progress, and recover to an adequate cheaper route after resolution.
|
||||
|
||||
Load only needed references; keep long logs on disk. Avoid whole-history forks and repeating contracts, packets or prior findings. Account for parent context/reasoning, child usage, waiting, retries and integration when evaluating cost.
|
||||
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
# Verification scope and causal repair
|
||||
|
||||
Use when validation is expanding without a clear reason, a bug may reflect a shared mechanism, or parent/worker checks overlap. These decisions apply to local and authorized delegated work. Preserve mandatory project checks and existing functional/security requirements.
|
||||
|
||||
## Choose sufficient evidence, then stop
|
||||
|
||||
Choose checks by behavior and consequence, not diff length or how many tools are available. For a small task, make this choice directly; no written test plan or risk report is needed.
|
||||
|
||||
| Change shape | Sufficient starting point |
|
||||
| --- | --- |
|
||||
| Text, presentation or reversible local edit with no executable behavior change | Inspect the diff/result and relevant format or resource checks; no new unit tests or unrelated build by default |
|
||||
| Bounded behavior change or local bug | Reproduce/check the affected behavior and nearest relevant boundary; use existing targeted tests where adequate |
|
||||
| Shared contract, authorization, persistence, financial correctness or difficult rollback | Check the changed invariants, affected consumers and relevant integration/failure paths; run required broader checks |
|
||||
|
||||
A short patch can belong in the last row. A large mechanical edit can remain bounded. Add a regression test when it protects an actual recurring failure or contract; do not add tests that merely copy wording or implementation.
|
||||
|
||||
Expand only when the current evidence misses a named affected invariant, a relevant check fails, a counterexample remains, or the change/environment invalidates prior evidence. Before another build, review, fuzz run or suite, identify what new decision its result can change. If no such gap exists, stop. Do not create extra checks solely to give idle workers something to do.
|
||||
|
||||
Completion requires evidence covering the intended behavior, mandatory checks passed (or a clearly reported limitation), and no unresolved material contradiction. Unknown optional counters/model identity do not justify more testing unless explicitly required. Report a real verification gap without inventing a pass; hypothetical unrelated edge cases do not prevent delivery.
|
||||
|
||||
## Reuse worker verification
|
||||
|
||||
Return changed paths/findings, the relevant command/result and any gap. Trustworthy outcomes can be reused when the checked files, relevant dependencies, artifact and environment match. The parent inspects the patch and coverage; parent responsibility does not require duplicate execution.
|
||||
|
||||
After integration, check new interactions and changed dependencies. An unrelated documentation edit does not invalidate a parser test. An overlapping shared-contract change does invalidate affected worker checks. If writers or shared mutable state made the artifact unstable, pin it or wait and run the affected checks once. Do not run a broad suite independently in every worker and again in the parent by default.
|
||||
|
||||
## Repair the demonstrated failure class
|
||||
|
||||
At the first substantive bug, trace the failing behavior to its owner and briefly inspect nearest sibling callers/consumers. A local typo with an obvious cause can end with a local correction; it does not need an architecture audit.
|
||||
|
||||
Broaden diagnosis when evidence shows repeated caller exceptions, duplicated fallback/retry logic, inconsistent producer/consumer assumptions, stale/generated state, or patch A breaking invariant B. Distinguish implementation defects, contract/design defects, workflow/ownership defects and missing environment inputs. Use the smallest discriminating check when competing causes imply different repairs.
|
||||
|
||||
Choose the smallest complete repair at the layer that owns the cause. Update demonstrated affected consumers/generated outputs and remove superseded workarounds within scope. Do not mask an invariant violation with another catch, retry, default value or caller-specific branch unless that behavior is the intended contract. A temporary mitigation may be appropriate when the user requests it or a full repair is currently blocked; state its limits and remaining cause.
|
||||
|
||||
Verify the original failure and a representative sibling/boundary when the repair addresses a shared mechanism. Inspect additional affected sites where evidence warrants it; do not scan or refactor unrelated systems. For a material fix, summarize cause, demonstrated impact, repair layer and sufficient checks in a few sentences. No formal root-cause report is needed for routine work.
|
||||
|
||||
## Keep simple delegation simple
|
||||
|
||||
Once authorized, independent routine work is a normal Luna workload. The parent settles shared behavior/ownership, while workers can locate local edits and perform the necessary targeted checks. Give a batch a coherent outcome and a small return; avoid loading escalation, cost and packet references for every worker.
|
||||
|
||||
For example, independent UI copy corrections, bounded adapter fixes under an agreed interface, and a sibling-use inventory may run in separate owned lanes. Three parts of one changing registry need one owner. Ten literal replacements that one command can perform need that command. A shared design decision stays with the parent or a separately authorized bounded investigation.
|
||||
@@ -1,16 +1,17 @@
|
||||
# Sol-led escalation and evidence adjudication
|
||||
|
||||
Recommend GPT-6 Sol / medium for new general engineering sessions; preserve an explicit user selection. The selected parent owns planning, difficult implementation, integration and acceptance. Sol handles routine implementation and investigation; Luna handles settled, checkable work. Terra is retired from recommendations and automatic fallbacks. Astra contributes both proactive high-leverage analysis and residual hard reasoning, without becoming a mandatory stage for every task. These are hypotheses to calibrate, not benchmark results.
|
||||
Recommend GPT-6.1 Sol / medium for new general engineering sessions; preserve an explicit user selection. The selected parent owns planning, difficult implementation, integration and acceptance. Sol handles routine implementation and investigation; Luna handles settled, checkable work. Terra is retired from recommendations and automatic fallbacks. Astra contributes proactive high-leverage analysis and residual hard reasoning when additional depth over Sol is useful, without becoming a mandatory stage for every task. Official near-Astra positioning does not prove equivalence on a particular task. These are hypotheses to calibrate, not benchmark results.
|
||||
|
||||
## Reassess at observable checkpoints
|
||||
|
||||
Reassess after planning, a key failed check, shared-contract changes and before acceptance. Track a material issue with a stable issue ID and baseline. Counters follow the issue across retries, replacement agents and model changes. After two same-class acceptance failures, pause that slice and classify before another attempt. A serious counterexample or unsafe assumption triggers immediately.
|
||||
Reassess when causal/design uncertainty remains, a key check fails, a consequential shared contract changes or a material counterexample appears. Routine planning and acceptance do not require an extra expert review. On the first substantive bug, inspect the cause and nearest sibling uses as described in [causal repair](engineering-workflow.md); do not wait for repeated failure to notice a shared defect. Track a material issue with a stable issue ID and baseline. Counters follow the issue across retries, replacement agents and model changes. After two same-class acceptance failures, pause that slice and classify before another attempt. A serious counterexample or unsafe assumption triggers immediately.
|
||||
|
||||
| Observation | First response |
|
||||
| --- | --- |
|
||||
| Missing inputs, access, tool failure | Diagnose environment or obtain evidence; model escalation does not repair access |
|
||||
| Material requirement ambiguity | Inspect consumers/contracts; ask the user only for unresolved product choices |
|
||||
| Different root causes imply different fixes | Design the smallest discriminating check |
|
||||
| Repeated caller exceptions, duplicated workarounds or producer/consumer disagreement | Trace shared cause and ownership; repair the demonstrated failure class at its owning layer before adding another special case |
|
||||
| Conflicting records or stale baseline | Reconcile original evidence; suspend the dependent conclusion |
|
||||
| Fixes alternate between breaking invariants | Revisit shared contract and integration ownership |
|
||||
| High impact with no reliable verifier | Block affected acceptance/action; seek a verifier or explicit product decision |
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Evidence Packet v2
|
||||
|
||||
Use structured packets for material runs, identity disputes or an explicit consumer requirement. Concise prose is sufficient for ordinary work when it preserves the relevant evidence.
|
||||
Use structured packets when an explicit consumer requires them or disputed identity/provenance needs an audit trail. Ordinary work returns concise facts, changed paths, relevant check outcomes and gaps. Batch size or duration alone does not require JSON; preserve truthful evidence without adding a reporting ceremony. Packet schema and validator compatibility remain unchanged.
|
||||
|
||||
## Contract
|
||||
|
||||
@@ -30,7 +30,7 @@ This fragment illustrates shape; it is not a real tool receipt:
|
||||
"tool": "collaboration.spawn_agent",
|
||||
"child_id": "synthetic-child",
|
||||
"status": "completed",
|
||||
"requested": {"model": "gpt-6-sol", "role": "explorer", "effort": "medium"},
|
||||
"requested": {"model": "gpt-6.1-sol", "role": "explorer", "effort": "medium"},
|
||||
"observed": {"model": "unknown", "role": "unknown", "effort": "unknown"},
|
||||
"identity_source": "unknown"
|
||||
}
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
# Proactive fleet scheduling
|
||||
|
||||
Use for authorized complex parallel work. This is a decision procedure for the parent, not a background scheduler, permission grant or capacity override. Preserve the actual host schema, selected parent and final gates.
|
||||
Use for authorized parallel work, including several independent batches of simple coding tasks. This is a decision procedure for the parent, not a background scheduler, permission grant or capacity override. Preserve the actual host schema, selected parent and final gates.
|
||||
|
||||
## Discover and dispatch early
|
||||
|
||||
After minimum goal/baseline discovery, identify independent questions and useful implementation slices. Do not finish reading every subsystem before dispatching ready investigations. Once a slice's input contract is stable, it may enter implementation while unrelated investigation continues. Shared decisions stay with the parent; preliminary independent drafts are not accepted contracts.
|
||||
|
||||
Simple work is a reason to consider Luna. Judge parallel value across the ready batch, not each tiny item alone. A worker can locate local edit sites under agreed behavior and ownership; the parent need not pre-solve its task. For routine work, a short outcome/baseline/ownership/acceptance contract and concise result suffice. Use formal records only when required. A fixed one-command transformation still belongs in tools.
|
||||
|
||||
Maintain a compact queue: task ID, dependency and contract baseline, file AND semantic owner, shared resources, acceptance, requested route, child ID, observed runtime state and integration state. Mark pending, ready, running, returned, accepted, blocked or superseded as task states; keep actual host state separate. Ready means the prerequisites, ownership and permitted actions are established and the output has independent value.
|
||||
|
||||
At intake, dependency resolution, a child return or a meaningful baseline change:
|
||||
@@ -19,8 +21,10 @@ If the next action is immediately dependent on an unassigned task, keep it local
|
||||
|
||||
## Choose a formation for the task
|
||||
|
||||
First identify whether execution uses host-managed per-child routes or [native Responses Multi-agent](sol61-adaptation.md). Native mode uses the request's model/tools across the tree; use several focused Sol lanes there, not fictional Luna/Astra child overrides. The formations below describe work ownership; mixed models require actual host support.
|
||||
|
||||
- Independent investigation: several focused investigators may cover distinct sources, consumers or falsifiable hypotheses. They should not all produce the same broad summary.
|
||||
- Settled implementation: multiple GPT-6 Luna workers own bounded, settled, independently checkable slices; use GPT-6 Sol directly when implementation requires investigation or design judgment. Shared registries, schema and generated outputs require one owner even when paths differ.
|
||||
- Settled implementation: multiple GPT-6 Luna workers own bounded, independently checkable coding batches under agreed behavior, including simple adapter, UI or local consistency fixes. Use GPT-6.1 Sol directly when causal investigation or design judgment dominates. Shared registries, schema and generated outputs require one owner even when paths differ.
|
||||
- Difficult consequential decision: an Astra specialist analyzes the bounded uncertainty while the parent and other workers advance unaffected work. Gate dependent implementation on the parent's accepted contract. Read [expert intervention](escalation.md) for triggers and progress-based continuation.
|
||||
- Independent review: assign a stable commit/artifact and the relevant requirements, without supplying the parent's preferred verdict. Review can overlap unrelated work; stale observations must be rechecked before acceptance.
|
||||
|
||||
@@ -34,6 +38,8 @@ When returned patches are accumulating faster than the parent can inspect, or a
|
||||
|
||||
Never run acceptance tests against a moving artifact and report them as final. Pin a commit/snapshot or wait until relevant writers stop; a worktree alone does not isolate external databases, generated directories or shared sessions. Before merge/delivery, resolve material counterexamples, verify the integrated baseline and audit the agent tree for remaining writers.
|
||||
|
||||
Reuse checks from workers when the relevant checked artifact/dependencies/environment remain valid. Parent integration checks cover newly introduced interactions and mandatory project requirements, not a repeat of every worker's suite. Do not create more validation/review lanes solely to fill capacity. Follow [verification scope](engineering-workflow.md) and stop when sufficient evidence is complete.
|
||||
|
||||
## Evaluate effectiveness
|
||||
|
||||
Optimize accepted quality and end-to-end time subject to the user's cost constraints. Include parent work, all children, context duplication, retries, expert rounds and integration in cost measurements. Expensive early reasoning can be worthwhile when it prevents downstream rework; cheap high-volume workers can be wasteful when contracts are unsettled. Both are hypotheses until measured.
|
||||
|
||||
@@ -2,6 +2,10 @@
|
||||
|
||||
Checked 2026-09-23. Read only when these capabilities affect the task. This reference adapts the routing policy; it does not configure a harness or grant permissions.
|
||||
|
||||
GPT-6.1 Sol migration checked 2026-10-06: use the exact `gpt-6.1-sol` ID only when the relevant host exposes it. Preserve supported effort; its API rejects none/minimal and requires Responses for tools. Start at low when replacing an unsupported effort and verify representative work. [Model specifications](https://developers.openai.com/api/docs/models/gpt-6.1-sol) and [migration guidance](https://developers.openai.com/api/docs/guides/latest-model?model=gpt-6.1-sol) take precedence over older GPT-6 Sol assumptions. The workflow capability sections below retain their own original verification date; do not infer per-model or host support from family membership.
|
||||
|
||||
Read [Sol 6.1 adaptation](sol61-adaptation.md) for native Responses Multi-agent beta and its distinct tool, history and compaction contracts. The single-agent effort procedure below must not be combined with that mode.
|
||||
|
||||
## Prompt shape and task granularity
|
||||
|
||||
The official [skills and prompts guidance](https://developers.openai.com/blog/rethinking-skills-and-prompts-for-gpt-6-astra) recommends precise discovery descriptions, progressive disclosure and fewer rigid recipes. Apply that here by giving a goal, constraints, ownership and acceptance; leave implementation choices open unless a contract or fragile operation requires an exact procedure. Put API mechanics here instead of expanding every task prompt.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Model economics
|
||||
|
||||
Read for cost-sensitive routing or when revising defaults. Checked 2026-09-23; recheck official prices before a later price-dependent decision. This is an API reference snapshot, not a Codex subscription quota or billing estimate.
|
||||
Read for cost-sensitive routing or when revising defaults. Checked 2026-10-06; recheck official prices before a later price-dependent decision. This is an API reference snapshot, not a Codex subscription quota or billing estimate.
|
||||
|
||||
## Verified price basis
|
||||
|
||||
@@ -9,18 +9,18 @@ USD per million tokens, Standard processing, prompts up to 272K input tokens:
|
||||
| Exact model ID | Input | Cached input | Cache write | Output |
|
||||
| --- | ---: | ---: | ---: | ---: |
|
||||
| gpt-6-luna | 0.10 | 0.01 | 0.125 | 0.50 |
|
||||
| gpt-6-sol | 2.00 | 0.20 | 2.50 | 10.00 |
|
||||
| gpt-6.1-sol | 2.00 | 0.10 | 2.50 | 10.00 |
|
||||
| gpt-6-astra | 10.00 | 1.00 | 12.50 | 50.00 |
|
||||
|
||||
Source: [OpenAI pricing](https://developers.openai.com/api/docs/pricing). For equal token volumes and the same billing category, Luna is 1/20 of Sol and 1/100 of Astra; Sol is 1/5 of Astra. These are arithmetic price ratios, not observed savings, speed or success rates.
|
||||
Source: [OpenAI pricing](https://developers.openai.com/api/docs/pricing). At equal token volumes, Luna is 1/20 of GPT-6.1 Sol for input, cache writes and output, and 1/10 for cached input. GPT-6.1 Sol is 1/5 of Astra for input, cache writes and output, and 1/10 for cached input. Luna is 1/100 of Astra in all four categories. These are arithmetic price ratios, not observed savings, speed or success rates.
|
||||
|
||||
Long prompts above 272K input tokens charge 2x input/cache rates and 1.5x output for the full request. Processing tier, tools and regional processing can change the bill. Do not multiply Codex subscription usage by API prices or assume a Desktop service tier follows the Standard table.
|
||||
|
||||
Retirement comparison: [GPT-5.6 Terra](https://developers.openai.com/api/docs/models/gpt-5.6-terra) lists input 2.00, cached input 0.20 and output 12.00 under the same short-context Standard basis. GPT-6 Sol has equal input/cache-read rates and a 16.7% lower output rate (10 vs 12). Terra therefore offers no token-rate saving in these categories; this does not prove equal token use, latency or quality per task.
|
||||
Compared with [GPT-6 Sol](https://developers.openai.com/api/docs/models/gpt-6-sol), GPT-6.1 Sol keeps input/output rates at 2.00/10.00 and halves cached input from 0.20 to 0.10. This improves the cached-input rate, not necessarily the total cost of a task; token use, retries and cache hits still matter. Older Sol remains a compatibility choice, not an alias.
|
||||
|
||||
## Design implications
|
||||
|
||||
Official positioning: [Luna](https://developers.openai.com/api/docs/models/gpt-6-luna) targets focused, high-volume work; [Sol](https://developers.openai.com/api/docs/models/gpt-6-sol) targets complex coding and agentic workflows; [GPT-6 guidance](https://developers.openai.com/api/docs/guides/latest-model) places Astra at the highest capability level. Sol and Luna document API efforts none/low/medium/high/xhigh/max. Actual child models, efforts and role bindings must still come from the host schema.
|
||||
Official positioning: [Luna](https://developers.openai.com/api/docs/models/gpt-6-luna) targets focused, high-volume work; [GPT-6.1 Sol](https://developers.openai.com/api/docs/models/gpt-6.1-sol) offers near-Astra performance for complex coding, computer use and professional work at a lower price; [GPT-6 guidance](https://developers.openai.com/api/docs/guides/latest-model) places Astra at the highest capability level. This is official positioning, not a benchmark performed by this project. GPT-6.1 Sol documents API efforts low/medium/high/xhigh/max, not none/minimal; GPT-6 Luna and older GPT-6 Sol support none. Actual child models, efforts and role bindings must still come from the host schema.
|
||||
|
||||
The engineering policy is three routes: Luna for bounded, settled, cheaply verifiable work; Sol for implementation and investigation requiring judgment; Astra for the hardest independent synthesis. Retire Terra from recommendations and automatic fallbacks: Sol absorbs its former workload and avoids maintaining another routing boundary. This is a routing design choice, not a measured claim that Sol dominates every Terra workload. Price alone does not establish that Luna can perform open-ended development reliably.
|
||||
|
||||
@@ -28,6 +28,6 @@ The engineering policy is three routes: Luna for bounded, settled, cheaply verif
|
||||
|
||||
Compare the same task shape and acceptance standard. Include parent context/reasoning, every child's usage, tools, retries, parent review and reintegration. For API estimates apply the actual rate to each billed category, including billed reasoning/output tokens without double-counting; keep wall time separate. With unknown usage or billing tier, report unknown cost and observable proxies instead of fabricated savings.
|
||||
|
||||
A cheaper child helps only if its savings exceed added orchestration and correction. One avoided parent investigation may matter more than many cheap child tokens. Do not turn the 20x ratio into a twenty-retry allowance, a fan-out quota or permission to duplicate reviews. Keep concurrency tied to useful independent work and actual host capacity.
|
||||
A cheaper child helps only if its savings exceed added orchestration and correction. One avoided parent investigation may matter more than many cheap child tokens. Do not turn a token-rate ratio into a retry allowance, a fan-out quota or permission to duplicate reviews. Keep concurrency tied to useful independent work and actual host capacity.
|
||||
|
||||
Broaden Luna assignments after comparable accepted results demonstrate stable quality and lower total effort. Move a task shape directly to Sol when ambiguity, repeated correction or parent rework dominates. For a new generation, use the first authorized useful bounded task as evidence; synthetic parser tests and static scenario reviews cannot establish model quality or latency.
|
||||
@@ -19,23 +19,27 @@ For clients that support the documented keys, an example is:
|
||||
|
||||
```toml
|
||||
# Example only; merge intentionally into the existing configuration.
|
||||
model = "gpt-6-sol"
|
||||
model = "gpt-6.1-sol"
|
||||
model_reasoning_effort = "medium"
|
||||
|
||||
[agents]
|
||||
default_subagent_model = "gpt-6-sol"
|
||||
default_subagent_model = "gpt-6.1-sol"
|
||||
default_subagent_reasoning_effort = "medium"
|
||||
max_concurrent_threads_per_session = 3
|
||||
```
|
||||
|
||||
This is not an automatic router, permission grant or universal host configuration. Never overwrite an existing config to install this example. Preserve user model/provider choices and verify the actual client accepts the keys. Per-agent configuration and host overrides may change resolution.
|
||||
|
||||
The Sol default assumes GPT-6 Sol is exposed and suits mixed engineering work. Explicitly route bounded tasks to GPT-6 Luna where supported; do not make Luna a universal fallback for arbitrary inherited work. If only GPT-5.6 children are available, use the [legacy compatibility routes](routing-matrix.md). A fixed `luna_*` role may still bind GPT-5.6 Luna/max: inspect the binding, then use an overridable role if available and appropriate. Do not rename or claim to upgrade a fixed role through prompt text.
|
||||
The Sol default assumes GPT-6.1 Sol is exposed and suits mixed engineering work. Resolve parent and child availability separately: a model in the picker does not prove child support. Explicitly route bounded tasks to GPT-6 Luna where supported; do not make Luna a universal fallback for arbitrary inherited work. If 6.1 is unavailable, use the [compatibility routes](routing-matrix.md). A fixed `sol_*` or `luna_*` role may still bind an older model: inspect the binding, then use an overridable role if available and appropriate. Do not rename or claim to upgrade a fixed role through prompt text.
|
||||
|
||||
For an authorized migration, preserve a supported effective effort. GPT-6.1 Sol's API accepts low/medium/high/xhigh/max and rejects none/minimal; use low as an initial replacement for those settings and check representative work. Tool calling requires Responses; its Chat Completions support is without tools. Desktop/CLI controls, including Ultra, must be checked separately against the actual host; do not copy them into API requests. Installation does not apply any of these configuration changes.
|
||||
|
||||
The official Codex configuration describes the child-thread limit as excluding the parent. A collaboration tool may expose a different active-slot count including the parent. Use that live tool's counting and release semantics; do not copy either number blindly.
|
||||
|
||||
When selecting a route, explicitly request model and effort with a compatible fork mode if supported. Check omitted-setting inheritance, custom-agent bindings and override restrictions. A prompt cannot implement an unsupported model switch.
|
||||
|
||||
Native Responses Multi-agent beta is a separate mechanism: children share the request model and tools, and its active-descendant limit excludes root. Codex host schemas may expose per-child model overrides and different slot semantics. Select the actual mechanism first; do not put API beta fields into Codex TOML or promise cross-model native children. See [Sol 6.1 adaptation](sol61-adaptation.md) for beta opt-in, history handling and incompatible request options.
|
||||
|
||||
## Diagnosis and safe fallbacks
|
||||
|
||||
Resolve the executable actually used by the relevant client, inspect its help/schema and record its version when needed. Do not prescribe speculative CLI flags or launch model calls merely to print a marker. Use an authorized real task to verify child execution.
|
||||
@@ -49,3 +53,5 @@ Configuration changes may require a fresh session or explicit reload. Writing a
|
||||
## Sources
|
||||
|
||||
Checked 2026-09-14: [Codex subagents](https://learn.chatgpt.com/zh-Hans/docs/agent-configuration/subagents), [OpenAI model catalog](https://developers.openai.com/api/docs/models). Recheck changed product/API facts before altering real configuration.
|
||||
|
||||
Model recommendation and migration checked 2026-10-06: [Codex models](https://learn.chatgpt.com/docs/models), [GPT-6.1 Sol](https://developers.openai.com/api/docs/models/gpt-6.1-sol), [migration guidance](https://developers.openai.com/api/docs/guides/latest-model?model=gpt-6.1-sol). Configuration keys above retain their original reference date; the current client schema takes precedence.
|
||||
@@ -5,7 +5,7 @@ Read only when the entrypoint leaves a routing choice unresolved.
|
||||
| Boundary | Decision |
|
||||
| --- | --- |
|
||||
| Many easy tasks | Partition independent bounded Luna batches across available capacity; size batches to keep coordination and acceptance useful. Volume alone does not justify Astra. |
|
||||
| Ordinary cross-file bug | GPT-6 Sol; file count alone does not justify Astra. |
|
||||
| Ordinary cross-file bug | GPT-6.1 Sol; file count alone does not justify Astra. |
|
||||
| Small patch with settled semantics and deterministic acceptance | GPT-6 Luna medium/high if failure is contained; parent checks the diff and behavior. |
|
||||
| Small patch changes authentication or a shared schema contract | Parent settles shared decisions; bounded investigation may use Sol. Small size is not evidence of low ambiguity. |
|
||||
| Cheap Luna attempts require repeated parent rewrites | Choose Sol directly next time for this shape; count total accepted-task cost. |
|
||||
@@ -27,14 +27,14 @@ Check each route independently. The API catalog does not update an existing sess
|
||||
| Unavailable preferred route | Supported compatibility choice |
|
||||
| --- | --- |
|
||||
| GPT-6 Luna | GPT-5.6 Luna low/medium for fixed collection/checks, high for settled transformations or patches; otherwise Sol or local work. |
|
||||
| GPT-6 Sol for implementation/investigation/complex analysis | GPT-5.6 Sol medium/high, if exposed and adequate; otherwise local work. |
|
||||
| GPT-6.1 Sol for implementation/investigation/complex analysis | GPT-6 Sol medium/high, or GPT-5.6 Sol medium/high when that is the adequate exposed route; otherwise local work. |
|
||||
| GPT-6 Astra | An adequate supported Sol route or local work; disclose a capability gap if neither suffices. |
|
||||
|
||||
These are work-shape fallbacks, not capability equivalence claims. Terra is retired from recommended routes and automatic fallbacks; do not select it merely because a legacy host exposes it. Preserve an explicit user-pinned model or existing configuration until an authorized change. If a required model is unavailable, report the exact gap before dependent dispatch. Never invent `gpt-6-terra`. A mixed host may use GPT-6 Sol and GPT-5.6 Luna without reverting every route. Record the exact requested ID and fallback reason. Unknown observed identity stays unknown.
|
||||
These are work-shape fallbacks, not capability equivalence claims or a mandatory sequence of model attempts. Terra is retired from recommended routes and automatic fallbacks; do not select it merely because a legacy host exposes it. Preserve an explicit user-pinned model or existing configuration until an authorized change. If a required model/version is unavailable, report the exact gap before dependent dispatch; a GPT-6 Sol pin must not silently become GPT-6.1 Sol. Never invent `gpt-6-terra`. A mixed host may use GPT-6.1 Sol and GPT-5.6 Luna, or GPT-6 Sol when 6.1 is absent, without reverting every route. Record the exact requested ID and fallback reason. Unknown observed identity stays unknown.
|
||||
|
||||
## Production Artifact Collection
|
||||
|
||||
- GPT-6 Luna: use known hosts/endpoints/paths and fixed selectors to read or download actual reports, JSON, logs or job outputs; verify size/hash, parseability, required fields and specified counts. GPT-6 Sol: locate the current output through bounded read-only investigation, diagnose retrieval failures, or correlate logs and artifacts by run/version. Do not launch both by default; use Sol only when discovery or diagnosis is needed. Apply the legacy table when these routes are unavailable.
|
||||
- GPT-6 Luna: use known hosts/endpoints/paths and fixed selectors to read or download actual reports, JSON, logs or job outputs; verify size/hash, parseability, required fields and specified counts. GPT-6.1 Sol: locate the current output through bounded read-only investigation, diagnose retrieval failures, or correlate logs and artifacts by run/version. Do not launch both by default; use Sol only when discovery or diagnosis is needed. Apply the compatibility table when these routes are unavailable.
|
||||
- Contract: name the production source, expected run/date/version, allowed read operations, bounded time/range/volume, local destination and acceptance checks. Reuse approved access and applicable server tools. Keep secrets out of prompts/receipts. Remote access stays read-only; explicitly allow local artifact writes even for a collector role.
|
||||
- Evidence: preserve the actual downloaded artifact and record source, retrieval time/timezone, producer run/version and generation time when exposed, local path, bytes/hash and check results. Unknown provenance stays unknown. Verify the expected run/freshness; mtime or successful download alone does not prove current output. Use immutable run identifiers where possible; detect/retry boundedly if files change during collection.
|
||||
- No fixture, cache or old snapshot may stand in for requested live output. If the current artifact is missing, stale, inconsistent or inaccessible, report that gap. Do not trigger jobs, regenerate artifacts, restart services, change permissions/configuration or deploy as part of collection; return such remediation to the parent under existing authorization.
|
||||
@@ -48,4 +48,4 @@ Use actual usage counters when exposed. Otherwise report observable proxies (cha
|
||||
|
||||
If context dominates, narrow inputs and avoid full-history forks. If output dominates, bound logs and returns. If reasoning/retries dominate, clarify acceptance and choose adequate capability/effort directly. Preserve required tests and material findings.
|
||||
|
||||
Official model positioning checked 2026-09-23: [GPT-6 guidance](https://developers.openai.com/api/docs/guides/latest-model). See [model economics](model-economics.md) for the dated API price basis. The route table is an engineering starting strategy, not a measured task-cost ranking. Runtime tool schemas remain the source for actual child availability.
|
||||
Official model positioning checked 2026-10-06: [GPT-6.1 Sol](https://developers.openai.com/api/docs/models/gpt-6.1-sol), [Codex models](https://learn.chatgpt.com/docs/models). See [model economics](model-economics.md) for the dated API price basis. The route table is an engineering starting strategy, not a measured task-cost ranking. Runtime tool schemas remain the source for actual child availability.
|
||||
@@ -0,0 +1,43 @@
|
||||
# GPT-6.1 Sol workflow adaptation
|
||||
|
||||
Checked 2026-10-06. Read for native Responses Multi-agent, API migration, or long-running Sol work. This skill configures no runtime and supplies no delegation authorization.
|
||||
|
||||
## Native Multi-agent beta
|
||||
|
||||
[Official Multi-agent documentation](https://developers.openai.com/api/docs/guides/responses-multi-agent) establishes these API facts:
|
||||
|
||||
- Enable with `multi_agent.enabled` and the `responses_multi_agent=v1` beta opt-in. Children share the request model and tools; this cannot implement a Luna/Sol/Astra mixture within one request.
|
||||
- `max_concurrent_subagents` counts active descendants across the tree, excluding root; its default is 3. Do not transfer that counting rule to a different host.
|
||||
- Hosted `multi_agent_call` actions execute server-side. Client code handles `function_call` from every agent, pairing outputs by `call_id`.
|
||||
- HTTP continuation must preserve the returned items. WebSocket can inject completed function outputs; track injection acknowledgements. If the response already completed, continue with the returned unaccepted output rather than re-executing its tool.
|
||||
- Preserve agent attribution and encrypted messages for replay. Present the root's `final_answer`, keeping worker text separate. Response completion is not artifact acceptance or proof of a child's model identity.
|
||||
- `/responses/compact`, `reasoning.summary`, and `max_tool_calls` are unsupported. Automatic compaction runs per agent. Do not combine this mode with single-agent dynamic effort updates.
|
||||
|
||||
Recheck beta schemas before implementation; an available model alone does not establish a compatible SDK, gateway or client.
|
||||
|
||||
## Select the mechanism before dispatch
|
||||
|
||||
The following are this project's engineering choices, not additional API capabilities:
|
||||
|
||||
| Work / available mechanism | Routing decision |
|
||||
| --- | --- |
|
||||
| Fixed reads, transforms or one slow external operation | Use direct/concurrent tools; another agent does not remove the I/O dependency. |
|
||||
| Independent reasoning with native API Multi-agent available and authorized | Use bounded same-model Sol lanes; root resolves cross-lane decisions. |
|
||||
| Work benefits from different model tiers | Use actual host per-child selection or an explicitly scoped application orchestrator; do not fake a native child override. |
|
||||
| Shared mutable contract, deterministic ordered graph or immediate dependency | Keep it serial; native delegation remains optional. |
|
||||
|
||||
Existing ownership, failure-count and acceptance rules apply to both mechanisms. Separate context is not separate filesystem or tool authority. Since native children share tools, a read-only assignment is not an enforced sandbox. The application must enforce permitted actions before executing client tools. Keep external gates parent-owned; a worker's proposal is not permission to perform them.
|
||||
|
||||
Define a useful outcome, baseline, file AND semantic owner, permitted actions, acceptance and escalation. Give Sol room to investigate and implement a coherent slice instead of prescribing a long chain of microtasks. Retain only relevant evidence in each context. Independent investigations can compare hypotheses; overlapping patches still need one owner. Parent review capacity limits useful width even when the API permits more descendants.
|
||||
|
||||
## Request compatibility and long-task continuity
|
||||
|
||||
[Migration guidance](https://developers.openai.com/api/docs/guides/latest-model?model=gpt-6.1-sol) requires supported effort and Responses for tools. With 6.1's reasoning enabled, remove `temperature`, `top_p`, `top_logprobs`, Chat Completions `logprobs`, and Responses `message.output_text.logprobs` includes. These are request compatibility changes, not permission to rewrite unrelated settings.
|
||||
|
||||
[Dynamic effort updates](https://developers.openai.com/api/docs/guides/reasoning#change-reasoning-mid-conversation) apply to standard single-agent mode. Preserve request-level effort and ordered updates; automatic compaction/truncation is incompatible. Do not use this mechanism to claim per-child effort changes in native Multi-agent. For native mode, retain per-agent conversation items through its compaction; for Codex, recover actual pending IDs and owners after host compaction.
|
||||
|
||||
Async tools, steering and context recovery remain covered in [GPT-6 adaptation](gpt6-adaptation.md); they are family workflow capabilities, not newly invented 6.1 features. Use supported controls and verify adoption before dependent work. Keep stable instructions and append bounded task deltas where appropriate, but preserve required tool/history items; cheaper cached input does not justify copying every conversation into every worker.
|
||||
|
||||
## Acceptance evidence
|
||||
|
||||
Validate a real integration with a small authorized independent task before expanding it: attribute every tool call, return each result once, retain history, check the final artifact and audit remaining work. Compare accepted quality, end-to-end time, retry/review cost and actual usage against the existing route. Static documentation and synthetic fixtures cannot prove beta availability, runtime identity, speed or cost improvements.
|
||||
Reference in new issue
Block a user