pub struct Ai {
pub backend: Option<String>,
pub model: Option<String>,
pub coding_backend: Option<String>,
pub coding_model: Option<String>,
pub max_tool_iterations: u32,
pub max_turn_seconds: u64,
pub rounds: u32,
pub skip_knobs: bool,
pub cross_scheduler_refs: bool,
pub build_fix_attempts: u32,
pub runtime_fix_attempts: u32,
}Fields§
§backend: Option<String>Backend for the planner/reasoner role: an OpenAI-compatible API base URL
(built-in openai backend), or one of the keywords claude, codex,
opencode, cursor-agent (shell out to that agent CLI). Falls back to
$SCX_FORGE_BACKEND.
model: Option<String>Planner/reasoner model for the built-in openai backend.
coding_backend: Option<String>Backend for the patch/apply (coding) role: an OpenAI-compatible API base
URL or one of claude, codex, opencode, cursor-agent. Falls back to
$SCX_FORGE_CODING_BACKEND, then to the planner backend. Set this (with
coding_model) to run the coding role on a separate backend.
coding_model: Option<String>Patch/apply model for the built-in openai backend. Empty means use
model.
max_tool_iterations: u32Max tool-calling iterations per LLM turn for the built-in openai
backend.
max_turn_seconds: u64Wall-clock cap per planner or coding model turn.
rounds: u32Maximum optimization rounds, shared across both phases. The AI-driven knob-tuning phase ends when the model decides it is done; the remaining rounds (up to this cap) go to code changes.
skip_knobs: boolSkip the AI-driven knob-tuning phase and go straight to code changes.
cross_scheduler_refs: boolAllow read-only cross-scheduler reference tools (list_schedulers, grep_schedulers, read_scheduler_file) that inspect other scheduler crates under scheds/rust. Disabled by default: the model focuses only on the target crate, which keeps the prompt and tool surface (and thus token usage) smaller. Enable to let the planner port mechanisms from other schedulers.
build_fix_attempts: u32LLM edit attempts to fix a broken build before reverting the round.
runtime_fix_attempts: u32LLM edit attempts to fix a runtime scheduler failure before reverting.