astra-advisor README

The project's README from github.com/DannyMac180/astra-advisor. As one markdown file: README.md.

Astra Advisor

GPT-6 Astra plans the work, chooses useful bounded delegation dynamically, and owns verification and acceptance.

Astra Advisor is a Codex plugin for capability-routed software delivery. Give Astra the goal, constraints, and repository context; it decides whether independent work should run alongside the parent session and chooses a supported native subagent model and effort for each bounded deliverable.

Cloud limitation

ChatGPT Work cloud create_thread must omit model and thinking, so it cannot currently promise arbitrary model or effort control. Astra does not dispatch a model-pinned request there by default. Native Codex subagents are usable where the current tool schema exposes the needed controls.

Go deeper

I write Attention Heads — deep, evidence-backed writing on AI, cognition, and agentic engineering. The Agentic Engineering Field Notes series covers the craft of using AI. Subscribe to get new posts in your inbox.

Quick start

Install the plugin in a current Codex CLI or ChatGPT desktop app with plugins enabled. Start a fresh task after installation and select GPT-6 Astra at any effort supported by the current Codex host:

codex plugin marketplace add DannyMac180/astra-advisor --ref main
codex plugin add astra-advisor@astra-advisor

Start a task with:

Use $astra-advisor:orchestration to plan, build, verify, and review this work.

How routing works

Astra remains the architect and acceptance owner in the primary GPT-6 Astra session at the effort selected by the user. After capability preflight, Astra records the parent model and effort as observed or unobservable before implementation or delegation begins. The skill never changes the parent session.

When delegation helps, Astra uses the exposed generic collaboration.spawn_agent tool with an explicit model, reasoning_effort, and fork_turns: none. It chooses among gpt-5.6-sol, gpt-5.6-terra, and gpt-5.6-luna from the task's risk, context, and independent work. There are no predefined role TOMLs, companion installer, role-to-model mapping, or fixed subagent count cap. Astra gives each subagent a concrete bounded deliverable and continues useful parent work while it runs.

Live tool metadata is authoritative. The current documented effort snapshot is:

Model Known efforts
gpt-5.6-sol low, medium, high, xhigh, max, ultra
gpt-5.6-terra low, medium, high, xhigh, max, ultra
gpt-5.6-luna low, medium, high, xhigh, max

If a selected model, effort, control, or tool is unavailable, conflicting, or unobservable, Astra fails that delegation closed and reports the limitation. It does not silently substitute a model, effort, role, or fabricated tool. Chosen values and runtime-confirmed values are reported separately.

For substantial implementation, Astra inspects the complete diff and reruns the requested checks, then sends the accumulated change set to a fresh read-only reviewer. The reviewer can be any of the three supported models at a live-supported effort. Astra accepts the work only after the reviewer returns ship; fix-first requires a new parent verification and fresh review, while rethink requires a revised plan.

Live visibility and cost receipts (0.2.0)

Every delegation announces its name, bounded task, selected model and reasoning effort, and selection reason. Its result reports actual status and runtime-observed settings, or explicitly says those settings are unobservable. These updates also cover fresh reviewers. A requested setting is not proof of the realized setting.

Every task ends with an API-equivalent cost receipt. When native tools expose token usage, the receipt estimates its USD price using the versioned snapshot and compares that same token workload repriced entirely at Astra. It separates whole-task, delegated-only, and partial coverage. Missing parent or reviewer usage prevents a whole-task claim. Without observed usage, the receipt says why it is unavailable.

The difference is a same-token API price comparison. It does not measure what an all-Astra run would actually consume, actual net task savings, quality, speed, or a change to ChatGPT subscription charges or usage credits. No subagents means no delegation savings. Reasoning effort does not multiply the token price.

The pricing snapshot records official source URLs and standard short-context USD rates per million tokens, verified by the recording coordinator on September 4, 2026. These are historical estimates; Sol pricing is promotional and may change. The calculator rejects unsupported long-context, service-tier, and cache-write cases instead of assuming standard rates. It conservatively supports at most 128,000 input tokens per call; this is an implementation support boundary, not a claimed official pricing threshold.

Try the clearly labeled illustrative workload (not a receipt for your task):

python3 plugins/astra-advisor/scripts/cost_receipt.py plugins/astra-advisor/examples/illustrative-usage.json
sh plugins/astra-advisor/scripts/verify.sh

The calculator emits JSON and accepts --pricing PATH for another verified snapshot. Its input lists agents and unique atomic calls, usage provenance, coverage assertions, and explicit pricing eligibility. It validates cached-input and reasoning-output subsets, refuses overlapping aggregates, and keeps unknown usage separate from zero. See the operations reference for the input contract and receipt policy.

ChatGPT app tasks

Separate app tasks require an explicit user request. For an explicit Codex app task, mcp__codex_app__create_thread supports model and thinking; call mcp__codex_app__list_projects first for project targets, use a worktree by default for Git projects, and use local otherwise. Cloud create_thread omits both controls, so the bounded limitation above applies. Do not use an API key, nested CLI, or invented tool as a workaround.

Updating

codex plugin marketplace upgrade astra-advisor
codex plugin add astra-advisor@astra-advisor

For local development, install this checkout as a marketplace:

cd /absolute/path/to/astra-advisor
codex plugin marketplace add /absolute/path/to/astra-advisor
codex plugin add astra-advisor@astra-advisor

For operational details, read the orchestration operations reference.

astra-advisor (DannyMac180/astra-advisor)

Searching Database…

这是什么?Astra Advisor 是一个 Codex 插件,用于按能力路由的软件交付:GPT-6 Astra 负责规划工作,在有用时把有明确边界的交付物分派给原生子代理,并负责验证和验收。
它是独立应用,还是在 Codex 里运行的东西?它运行在你的 Codex 宿主中,而不是独立应用:Astra 在主 GPT-6 Astra 会话中始终担任架构师和验收负责人,并且不会改动那个父会话。
我怎么把它跑起来?在已启用插件的当前 Codex CLI 或 ChatGPT 桌面应用中安装该插件,新建一个任务,然后在宿主支持的任意投入力度下选择 GPT-6 Astra。
分派功能在任何地方都能用吗,包括 ChatGPT Work 云端?不是所有地方都行:在 ChatGPT Work 云端,createthread 必须省略 model 和 thinking,所以 Astra 在那里默认不会发出绑定特定模型的请求。
Astra 有固定的子代理角色,或者限制它能生成多少个子代理吗?没有——没有预定义的角色 TOML、配套安装器、角色到模型的映射,也没有固定的子代理数量上限;Astra 给每个子代理一个具体、有边界的交付物,并在其运行期间继续推进父任务中有用的工作。
如果 Astra 选的模型或投入力度在运行时不可用,会怎样?该次分派会干脆地失败,并如实报告这一限制——它绝不会悄悄替换模型、投入力度、角色,或伪造工具。所选的值和运行时已确认的值会分开报告。
费用凭据会显示我实际省了多少钱吗?不会——它只是同 token 数下的 API 价格对比,并且明确不衡量全程用 Astra 会消耗多少、实际净节省、质量或速度;没有子代理就没有分派方面的节省。
对于从 ChatGPT 桌面应用发起的任务,它是怎么处理的?应用任务需要你明确提出请求:Astra 会先调用 mcpcodexapplistprojects 来获取项目目标,对 Git 项目默认使用 worktree,而且 mcpcodexappcreatethread 支持 model 和 thinking,这与云端的 createthread 不同。
Size
<0.1 MB
Stars
242
Updated
CommitSep 04
Age
1mo
Commits · 90 Days