Summary
F127 already has a structured cli.effort editor residual. The current preset list is insufficient for evolving provider CLIs: Codex now needs values such as max and ultra, and future clients may expose new native values.
The editor must support both a maintained internal effort vocabulary and a direct text value. Known internal values are translated by the selected client's adapter; values outside that vocabulary are safely passed through to that client's effort mechanism so the runtime can adopt provider additions without waiting for a UI enum release.
Source Feature
- Home repo source of truth:
F127: 猫猫管理重构 — 账户配置与猫猫实例分离,支持动态创建猫 + 自定义别名 @ 路由
- This issue tracks the missing
cli.effort slice as an F127 residual, not a standalone new feature.
Desired Behavior
Editor
- Present maintained internal CLI-effort presets appropriate for the selected client.
- Also allow direct text entry of a native client effort value.
- Codex must be able to use native values including
max and ultra.
- Preserve generic
cliConfigArgs for unrelated advanced flags; effort is not assembled by raw shell-string concatenation.
Adaptation Contract
- Persist the selected or typed canonical string in
variant.cli.effort.
- When the value is one of our internal effort presets, the selected client's adapter maps it to that CLI's native flag/value.
- When it is not an internal preset, route it through the same selected-client adapter as an explicit native effort value without rejecting it solely because it is absent from our enum.
- The adapter owns CLI argument construction and escaping. Direct input must not create shell-injection behavior.
- A provider may still return a native validation error; surface that error clearly instead of silently rewriting the value.
Runtime
- New invocations read the updated value immediately.
- Existing sessions are not force-switched.
- Runtime cat catalog remains the sole persistent source of truth.
Acceptance Criteria
Non-goals
- Do not hot-mutate already-running sessions.
- Do not replace generic
cliConfigArgs for unrelated advanced flags.
- Do not introduce a second truth source outside the runtime cat catalog.
Summary
F127 already has a structured
cli.efforteditor residual. The current preset list is insufficient for evolving provider CLIs: Codex now needs values such asmaxandultra, and future clients may expose new native values.The editor must support both a maintained internal effort vocabulary and a direct text value. Known internal values are translated by the selected client's adapter; values outside that vocabulary are safely passed through to that client's effort mechanism so the runtime can adopt provider additions without waiting for a UI enum release.
Source Feature
F127: 猫猫管理重构 — 账户配置与猫猫实例分离,支持动态创建猫 + 自定义别名 @ 路由cli.effortslice as an F127 residual, not a standalone new feature.Desired Behavior
Editor
maxandultra.cliConfigArgsfor unrelated advanced flags; effort is not assembled by raw shell-string concatenation.Adaptation Contract
variant.cli.effort.Runtime
Acceptance Criteria
maxandultrathrough the structured effort field.Non-goals
cliConfigArgsfor unrelated advanced flags.