{"record":{"id":"04273da7daef59e7","repo":"warpdotdev/warp","slug":"unexpected-argument-runner-found","errorCode":null,"errorMessage":"unexpected argument '--runner' found","messagePattern":"unexpected argument '--runner' found","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"app/src/ai/agent_sdk/mod.rs","lineNumber":330,"sourceCode":"        AgentCommand::RunCloud(args) => {\n            if args.environment.environment.is_some()\n                && !FeatureFlag::CloudEnvironments.is_enabled()\n            {\n                return Err(anyhow::anyhow!(\"unexpected argument '--environment' found\"));\n            }\n            if args.conversation.is_some() && !FeatureFlag::CloudConversations.is_enabled() {\n                return Err(anyhow::anyhow!(\n                    \"unexpected argument '--conversation' found\"\n                ));\n            }\n            if args.harness != Harness::Oz && !FeatureFlag::AgentHarness.is_enabled() {\n                return Err(anyhow::anyhow!(\"unexpected argument '--harness' found\"));\n            }\n            if let Err(msg) = args.validate_auth_secrets() {\n                return Err(anyhow::anyhow!(msg));\n            }\n            if args.runner.is_some() && !FeatureFlag::CloudRunners.is_enabled() {\n                return Err(anyhow::anyhow!(\"unexpected argument '--runner' found\"));\n            }\n            ambient::run_ambient_agent(ctx, args)\n        }\n        AgentCommand::Profile(sub) => profiles::run(ctx, global_options, sub),\n        AgentCommand::List(args) => {\n            agent_management::list_agents(ctx, global_options.output_format, args)\n        }\n        AgentCommand::Get(args) => {\n            agent_management::get_agent(ctx, global_options.output_format, args)\n        }\n        AgentCommand::Create(args) => {\n            agent_management::create_agent(ctx, global_options.output_format, args)\n        }\n        AgentCommand::Update(args) => {\n            agent_management::update_agent(ctx, global_options.output_format, args)\n        }\n        AgentCommand::Delete(args) => {\n            agent_management::delete_agent(ctx, global_options.output_format, args)","sourceCodeStart":312,"sourceCodeEnd":348,"githubUrl":"https://github.com/warpdotdev/warp/blob/e72fd7aacbbb2236d9b3be2aad7e7178fe94b4bc/app/src/ai/agent_sdk/mod.rs#L312-L348","documentation":"Thrown in run_agent for AgentCommand::RunCloud (mod.rs:330): `--runner` parsed, but FeatureFlag::CloudRunners is disabled, so selecting a specific cloud runner for the launch is rejected with clap-mimicking 'unexpected argument' wording. Note the flag here is CloudRunners, distinct from the CloudAgentRunners flag that gates the top-level `runner` subcommand (error 168).","triggerScenarios":"Running `agent run-cloud --runner <id/name> ...` where FeatureFlag::CloudRunners.is_enabled() == false. The check runs after auth-secret validation and immediately before ambient::run_ambient_agent launches the agent.","commonSituations":"Pinning cloud agents to dedicated runners on gated builds; orgs not enrolled in the cloud-runners rollout; automation assuming runner selection is generally available.","solutions":["Drop `--runner` and let the launch use default runner placement","Use a build/account where CloudRunners is enabled, or update the CLI","As a Warp developer, override the flag or add FeatureFlag::CloudRunners to DOGFOOD_FLAGS and rebuild"],"exampleFix":"# before\n$ oz agent run-cloud --runner gpu-box \"train the model\"\nError: unexpected argument '--runner' found\n\n# after\n$ oz agent run-cloud \"train the model\"","handlingStrategy":"validation","validationCode":"if args.runner.is_some() {\n    anyhow::ensure!(\n        FeatureFlag::CloudRunners.is_enabled(),\n        \"--runner requires CloudRunners\"\n    );\n}","typeGuard":"pub fn run_cloud_runner_ok(args: &RunCloudArgs) -> bool {\n    args.runner.is_none() || FeatureFlag::CloudRunners.is_enabled()\n}","tryCatchPattern":"match run_agent(ctx, opts, cmd) {\n    Err(e) if e.to_string().contains(\"unexpected argument '--runner'\") => {\n        // retry with default runner placement\n    }\n    result => result?,\n}","preventionTips":["Note the flag split: CloudRunners gates --runner on run-cloud; CloudAgentRunners gates the `runner` subcommand","Only add --runner to invocations when the probe is green","Prefer runner selection at provisioning time over per-launch pinning when the feature is gated"],"tags":["cli","feature-flags","cloud-runners","cloud-agents","rust"],"backgroundTag":null,"analyzedSha":"e72fd7aacbbb2236d9b3be2aad7e7178fe94b4bc","analyzedAt":"2026-08-16T08:27:25.381Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}