Choose the main agent model for a single run without mutating the workflow
Per-run model overrides let you choose the main agent, or computer-use, model when you create a run.Use this when your application decides which model to use at trigger time. For example, your runner UI might route simple jobs to one model and harder jobs to another, while still using one shared Cyberdesk workflow.
Normally, a run uses the workflow’s saved model_metadata. That is the right default when the workflow owns model selection.If your system launches many concurrent runs from one workflow, patching the workflow’s model_metadata before each run can race:
run A should use model A
run B should use model B
both runs use the same workflow
patching the workflow would mutate shared state
With a per-run model override, each run carries its own model selection. The workflow’s saved model configuration stays unchanged.
Each model configuration includes an id, name, provider details, and flags such as is_computer_use_model and is_archived.For the main agent, choose a model where:
is_computer_use_model is true
is_archived is false
the model matches your cost, latency, and reliability needs
Show users the model name in your UI, but store and send the model configuration id when creating a run.
You can also send model_metadata directly. This is useful if you want to override more model roles later while keeping the same payload shape as workflow-level model metadata:
your runner UI lets users pick a model at trigger time
different workflow steps or jobs should use different main agent models
you batch many concurrent runs of one workflow
the workflow should remain a stable template instead of mutable runtime state
Do not use this when the workflow itself should remain the single source of truth for model selection. In that case, update the workflow’s model configuration and create runs without main_agent_model_id.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Cyberdesk Docs","colors":{"primary":"#3b82f6","light":"#dbeafe","dark":"#1d4ed8"},"logo":{"light":"https://mintcdn.com/cyberdesk/rrJLQX3349IKA_1Y/logo/wordmark-black.svg?fit=max\u0026auto=format\u0026n=rrJLQX3349IKA_1Y\u0026q=85\u0026s=70df31cd0fe9c8c03bd870850e6abad1","dark":"https://mintcdn.com/cyberdesk/rrJLQX3349IKA_1Y/logo/wordmark-white.svg?fit=max\u0026auto=format\u0026n=rrJLQX3349IKA_1Y\u0026q=85\u0026s=efb75dfc3af81651545ce4fb8a931f71"},"favicon":"https://mintcdn.com/cyberdesk/rrJLQX3349IKA_1Y/favicon.svg?fit=max\u0026auto=format\u0026n=rrJLQX3349IKA_1Y\u0026q=85\u0026s=63f8354d6cad976e700a748474e359d0","navbar":{"links":[{"href":"mailto:founders@cyberdesk.io","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://cyberdesk.io/dashboard"}},"footer":{"socials":{"x":"https://x.com/cyberdeskhq","github":"https://github.com/cyberdesk-hq/cyberdriver","linkedin":"https://linkedin.com/company/cyberdeskhq"}},"contextual":{"options":["copy","view","chatgpt","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/ws5ddx5yZ8"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"cyberdesk","hasAudioNarration":false,"actualSubdomain":"cyberdesk","customDomains":["docs.cyberdesk.io"],"gitSource":{"type":"github","owner":"cyberdesk-hq","repo":"cyberdesk-new","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6abdedad7f9886e5779af640","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"API reference","count":143},{"language":"default","tag":"Endpoints","count":142},{"language":"default","tag":"Guides","count":60},{"language":"default","tag":"Concepts","count":23},{"language":"default","tag":"computer","count":23},{"language":"default","tag":"cyberdriver-auth","count":19},{"language":"default","tag":"workflows","count":16},{"language":"default","tag":"Workflow Prompting","count":15},{"language":"default","tag":"Cyberdriver","count":11},{"language":"default","tag":"runs","count":11}]},"assistantConfig":{"deflection":{"enabled":true,"email":"founders@cyberdesk.io","showHelpButton":true}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"concepts/per-run-model-overrides","slug":"/concepts/per-run-model-overrides","pageMetadata":{"title":"Per-run Model Overrides","description":"Choose the main agent model for a single run without mutating the workflow","icon":"microchip-ai","href":"/concepts/per-run-model-overrides"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Choose the main agent model for a single run without mutating the workflow\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Tab,Tabs,Tip}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Per-run model overrides let you choose the main agent, or computer-use, model when you create a run.`}),`\n`,_jsx(_components.p,{children:`Use this when your application decides which model to use at trigger time. For example, your runner UI might route simple jobs to one model and harder jobs to another, while still using one shared Cyberdesk workflow.`}),`\n`,_jsx(Heading,{level:`2`,id:`why-this-exists`,children:`Why this exists`}),`\n`,_jsxs(_components.p,{children:[`Normally, a run uses the workflow’s saved `,_jsx(_components.code,{children:`model_metadata`}),`. That is the right default when the workflow owns model selection.`]}),`\n`,_jsxs(_components.p,{children:[`If your system launches many concurrent runs from one workflow, patching the workflow’s `,_jsx(_components.code,{children:`model_metadata`}),` before each run can race:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`run A should use model A`}),`\n`,_jsx(_components.li,{children:`run B should use model B`}),`\n`,_jsx(_components.li,{children:`both runs use the same workflow`}),`\n`,_jsx(_components.li,{children:`patching the workflow would mutate shared state`}),`\n`]}),`\n`,_jsx(_components.p,{children:`With a per-run model override, each run carries its own model selection. The workflow’s saved model configuration stays unchanged.`}),`\n`,_jsx(Heading,{level:`2`,id:`1-list-available-models`,children:`1. List Available Models`}),`\n`,_jsx(_components.p,{children:`First, fetch the model configurations available to your organization:`}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`HTTP`,id:`http`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.cyberdesk.io/v1/model-configurations\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$CYBERDESK_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`]})})})}),_jsx(Tab,{title:`TypeScript`,id:`typescript`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`modelConfigurations`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` client`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`model_configurations`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`list`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`]})})})}),_jsx(Tab,{title:`Python`,id:`python`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`response `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client.model_configurations.list_sync()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`model_configurations `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` response.data`})]}),`\n`]})})})})]}),`\n`,_jsxs(_components.p,{children:[`Each model configuration includes an `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`name`}),`, provider details, and flags such as `,_jsx(_components.code,{children:`is_computer_use_model`}),` and `,_jsx(_components.code,{children:`is_archived`}),`.`]}),`\n`,_jsx(_components.p,{children:`For the main agent, choose a model where:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`is_computer_use_model`}),` is `,_jsx(_components.code,{children:`true`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`is_archived`}),` is `,_jsx(_components.code,{children:`false`})]}),`\n`,_jsx(_components.li,{children:`the model matches your cost, latency, and reliability needs`}),`\n`]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Show users the model `,_jsx(_components.code,{children:`name`}),` in your UI, but store and send the model configuration `,_jsx(_components.code,{children:`id`}),` when creating a run.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`2-create-a-run-with-a-model-override`,children:`2. Create a Run With a Model Override`}),`\n`,_jsxs(_components.p,{children:[`Use `,_jsx(_components.code,{children:`main_agent_model_id`}),` when you only need to override the main agent model:`]}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`HTTP`,id:`http-2`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.cyberdesk.io/v1/runs\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$CYBERDESK_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_id\": \"workflow-uuid\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"main_agent_model_id\": \"model-configuration-uuid\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"input_values\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"account_id\": \"acct_123\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})}),_jsx(Tab,{title:`TypeScript`,id:`typescript-2`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`run`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` client`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`runs`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`create`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` workflow_id:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow-uuid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` main_agent_model_id:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"model-configuration-uuid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` input_values:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` account_id:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"acct_123\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})})}),_jsx(Tab,{title:`Python`,id:`python-2`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` cyberdesk `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` RunCreate`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`run `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client.runs.create_sync(`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` RunCreate(`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` workflow_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`workflow_id,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` main_agent_model_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`model_configuration_id,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` input_values`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"account_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"acct_123\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`},`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})})})]}),`\n`,_jsxs(_components.p,{children:[`This applies only to the run you create. The workflow’s saved `,_jsx(_components.code,{children:`model_metadata`}),` is not changed.`]}),`\n`,_jsx(Heading,{level:`2`,id:`full-metadata-shape`,children:`Full Metadata Shape`}),`\n`,_jsxs(_components.p,{children:[`You can also send `,_jsx(_components.code,{children:`model_metadata`}),` directly. This is useful if you want to override more model roles later while keeping the same payload shape as workflow-level model metadata:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"workflow_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"workflow-uuid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model_metadata\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"main_agent_model_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"model-configuration-uuid\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`If both `,_jsx(_components.code,{children:`main_agent_model_id`}),` and `,_jsx(_components.code,{children:`model_metadata.main_agent_model_id`}),` are present, they must match.`]}),`\n`,_jsx(Heading,{level:`2`,id:`fallback-behavior`,children:`Fallback Behavior`}),`\n`,_jsx(_components.p,{children:`Per-run model metadata is merged on top of the workflow’s model metadata:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`provided run-level fields win`}),`\n`,_jsx(_components.li,{children:`omitted run-level fields fall back to the workflow`}),`\n`,_jsx(_components.li,{children:`if no run-level model override is provided, behavior is unchanged`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`For example, if the workflow has cache detection and fallback models configured, and the run only provides `,_jsx(_components.code,{children:`main_agent_model_id`}),`, the run uses:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`run-level `,_jsx(_components.code,{children:`main_agent_model_id`})]}),`\n`,_jsx(_components.li,{children:`workflow-level cache detection model`}),`\n`,_jsx(_components.li,{children:`workflow-level fallback models`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`validation`,children:`Validation`}),`\n`,_jsx(_components.p,{children:`Cyberdesk validates model override IDs when the run is created.`}),`\n`,_jsxs(_components.p,{children:[`The request fails with `,_jsx(_components.code,{children:`400`}),` if the model configuration:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`does not exist`}),`\n`,_jsx(_components.li,{children:`is not accessible to your organization`}),`\n`,_jsxs(_components.li,{children:[`conflicts between `,_jsx(_components.code,{children:`main_agent_model_id`}),` and `,_jsx(_components.code,{children:`model_metadata.main_agent_model_id`})]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`when-to-use-this`,children:`When to Use This`}),`\n`,_jsx(_components.p,{children:`Use per-run model overrides when:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`your runner UI lets users pick a model at trigger time`}),`\n`,_jsx(_components.li,{children:`different workflow steps or jobs should use different main agent models`}),`\n`,_jsx(_components.li,{children:`you batch many concurrent runs of one workflow`}),`\n`,_jsx(_components.li,{children:`the workflow should remain a stable template instead of mutable runtime state`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Do not use this when the workflow itself should remain the single source of truth for model selection. In that case, update the workflow’s model configuration and create runs without `,_jsx(_components.code,{children:`main_agent_model_id`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`related`,children:`Related`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/concepts/model-configuration`,children:`Model Configuration`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/concepts/per-run-prompt-overrides`,children:`Per-run Prompt Overrides`})}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Per-run Model Overrides","description":"Choose the main agent model for a single run without mutating the workflow","icon":"microchip-ai","href":"/concepts/per-run-model-overrides"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Why this exists","slug":"why-this-exists","depth":2,"children":[]},{"title":"1. List Available Models","slug":"1-list-available-models","depth":2,"children":[]},{"title":"2. Create a Run With a Model Override","slug":"2-create-a-run-with-a-model-override","depth":2,"children":[]},{"title":"Full Metadata Shape","slug":"full-metadata-shape","depth":2,"children":[]},{"title":"Fallback Behavior","slug":"fallback-behavior","depth":2,"children":[]},{"title":"Validation","slug":"validation","depth":2,"children":[]},{"title":"When to Use This","slug":"when-to-use-this","depth":2,"children":[]},{"title":"Related","slug":"related","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"cyberdesk","siteName":"Cyberdesk Docs","title":"Per-run Model Overrides - Cyberdesk Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-06-27T20:00:49.502Z","originalFileLocation":"concepts/per-run-model-overrides.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Choose the main agent model for a single run without mutating the workflow\">\u003cmeta data-mint-head name=\"application-name\" content=\"Cyberdesk Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Per-run Model Overrides - Cyberdesk Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Choose the main agent model for a single run without mutating the workflow\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Cyberdesk Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.cyberdesk.io/concepts/per-run-model-overrides\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://cyberdesk.mintlify.site/_mintlify/api/og/v2?division=Concepts\u0026amp;title=Per-run+Model+Overrides\u0026amp;description=Choose+the+main+agent+model+for+a+single+run+without+mutating+the+workflow\u0026amp;theme=86fdfaa1df5f230cdbe8aef2\u0026amp;signature=dc7c4f8d9f53fdfbf11268946afb00b3d723c8fd0ab4ffd94911b7e9f0bad424\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Per-run Model Overrides - Cyberdesk Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Choose the main agent model for a single run without mutating the workflow\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://cyberdesk.mintlify.site/_mintlify/api/og/v2?division=Concepts\u0026amp;title=Per-run+Model+Overrides\u0026amp;description=Choose+the+main+agent+model+for+a+single+run+without+mutating+the+workflow\u0026amp;theme=86fdfaa1df5f230cdbe8aef2\u0026amp;signature=dc7c4f8d9f53fdfbf11268946afb00b3d723c8fd0ab4ffd94911b7e9f0bad424\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/cyberdesk/sGMCV_-i4-RJ8wWw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Cyberdesk Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3b82f6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.cyberdesk.io/concepts/per-run-model-overrides\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/concepts/per-run-model-overrides.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.cyberdesk.io/#organization\",\"name\":\"Cyberdesk Docs\",\"url\":\"https://docs.cyberdesk.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/cyberdesk/rrJLQX3349IKA_1Y/logo/wordmark-black.svg?fit=max\u0026auto=format\u0026n=rrJLQX3349IKA_1Y\u0026q=85\u0026s=70df31cd0fe9c8c03bd870850e6abad1\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.cyberdesk.io#website\",\"name\":\"Cyberdesk Docs\",\"url\":\"https://docs.cyberdesk.io\",\"publisher\":{\"@id\":\"https://docs.cyberdesk.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides#webpage\",\"url\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides\",\"name\":\"Per-run Model Overrides\",\"description\":\"Choose the main agent model for a single run without mutating the workflow\",\"dateModified\":\"2026-06-27T20:00:49.502Z\",\"isPartOf\":{\"@id\":\"https://docs.cyberdesk.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Concepts\",\"item\":\"https://docs.cyberdesk.io/concepts/trajectories\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Per-run Model Overrides\",\"item\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides#article\",\"headline\":\"Per-run Model Overrides\",\"name\":\"Per-run Model Overrides\",\"description\":\"Choose the main agent model for a single run without mutating the workflow\",\"url\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides\",\"mainEntityOfPage\":{\"@id\":\"https://docs.cyberdesk.io/concepts/per-run-model-overrides#webpage\"},\"dateModified\":\"2026-06-27T20:00:49.502Z\",\"publisher\":{\"@id\":\"https://docs.cyberdesk.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.cyberdesk.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Cyberdesk Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Cyberdesk Docs","nav":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/ws5ddx5yZ8"}]},"tabs":[{"tab":"Guides","groups":[{"group":"Getting started","pages":[{"title":"Introduction","href":""},{"title":"Quick Start","icon":"rocket","href":"/quickstart"}]},{"group":"SDK Guides","pages":[{"title":"TypeScript SDK","icon":"js","href":"/sdk-guides/typescript"},{"title":"Python SDK","icon":"python","href":"/sdk-guides/python"}]},{"group":"Cyberdriver","pages":[{"title":"Cyberdriver Quickstart","icon":"desktop","href":"/cyberdriver/quickstart"},{"title":"Legacy Cyberdriver","icon":"archive","href":"/cyberdriver/legacy-cyberdriver"},{"title":"Clear All Cyberdriver Traces","icon":"broom","href":"/cyberdriver/clear-cyberdriver-traces"},{"title":"CLI and Machine Images","icon":"terminal","href":"/cyberdriver/cli"},{"title":"Desktop Tools","icon":"wrench","href":"/cyberdriver/desktop-tools"},{"title":"Diagnostics and Logs","icon":"bug","href":"/cyberdriver/diagnostics"},{"title":"Keepalive","icon":"heart-pulse","href":"/cyberdriver/keepalive"},{"title":"Remote Management","icon":"cloud-arrow-down","href":"/cyberdriver/remote-management"},{"title":"Display Reliability","icon":"monitor-waveform","href":"/cyberdriver/display-reliability"},{"title":"Cyberdriver Reachability Checks","icon":"shield-exclamation","href":"/cyberdriver/automatic-machine-quarantine"},{"title":"Custom Hosts","icon":"server","href":"/cyberdriver/custom-host"}]},{"group":"Workflow Prompting","pages":[{"title":"Prompting Overview","icon":"wand-magic-sparkles","href":"/workflow-prompting/prompting-overview"},{"title":"Focused Action","icon":"crosshairs","href":"/workflow-prompting/focused-action"},{"title":"Mark File for Export","icon":"file-export","href":"/workflow-prompting/mark-file-for-export"},{"title":"Save Screenshot as Run Attachment","icon":"camera","href":"/workflow-prompting/save-screenshot"},{"title":"Extract Prompt","icon":"scanner-image","href":"/workflow-prompting/extract-prompt"},{"title":"Execute Batch Tools","icon":"layer-group","href":"/workflow-prompting/execute-batch-tools"},{"title":"Looping Tools","icon":"repeat","href":"/workflow-prompting/looping-tools"},{"title":"Copy to Clipboard","icon":"clipboard","href":"/workflow-prompting/copy-to-clipboard"},{"title":"Upsert Runtime Values","icon":"database","href":"/workflow-prompting/upsert-runtime-values"},{"title":"Grab Reference Image","icon":"image","href":"/workflow-prompting/grab-reference-image"},{"title":"Execute Terminal Command","icon":"terminal","href":"/workflow-prompting/execute-terminal"},{"title":"Declare Task Failed","icon":"circle-xmark","href":"/workflow-prompting/declare-task-failed"},{"title":"Declare Task Succeeded","icon":"circle-check","href":"/workflow-prompting/declare-task-succeeded"},{"title":"Model Parameter","icon":"microchip-ai","href":"/workflow-prompting/model-parameter"},{"title":"Get Main Instructions","icon":"book-open","href":"/workflow-prompting/get-main-instructions"}]},{"group":"Webhooks","pages":[{"title":"Webhooks Quickstart","icon":"bolt","href":"/webhooks/quickstart"},{"title":"Detailed Webhook Guide","icon":"plug","href":"/webhooks/detailed-guide"},{"title":"Downed Machines Webhook","icon":"bell","href":"/webhooks/downed-machines"},{"title":"Webhook Transformations","icon":"wand-magic-sparkles","href":"/webhooks/transformations"},{"title":"Slack Integration","icon":"slack","href":"/webhooks/slack-integration"},{"title":"Zapier Integration","icon":"bolt","href":"/webhooks/zapier-integration"}]},{"group":"Concepts","pages":[{"title":"Trajectories","icon":"route","href":"/concepts/trajectories"},{"title":"Structured Inputs","icon":"brackets-curly","href":"/concepts/structured-inputs"},{"title":"Priority Runs","icon":"bolt","href":"/concepts/priority-runs"},{"title":"Per-run Prompt and Model Overrides","description":"Pin a run to a specific prompt or main agent model without mutating the workflow","icon":"thumbtack","href":"/concepts/per-run-prompt-overrides"},{"title":"Per-run Model Overrides","icon":"microchip-ai","href":"/concepts/per-run-model-overrides"},{"title":"Input Validation","description":"Validate workflow run inputs with JSON Schema before execution","icon":"shield-check","href":"/concepts/input-validation"},{"title":"Sessions and Chains","icon":"link","href":"/concepts/sessions-and-chains"},{"title":"Workflow Tags \u0026 Groups","icon":"tags","href":"/concepts/workflow-tags"},{"title":"Async Extraction Patterns","icon":"clock","href":"/concepts/async-extraction-patterns"},{"title":"Generating Output Data","icon":"file-export","href":"/concepts/generating-output-data"},{"title":"Run Screenshots","icon":"image","href":"/concepts/run-screenshots"},{"title":"Post-run Checks","icon":"circle-check","href":"/concepts/post-run-checks"},{"title":"Custom Cache Detection Prompt","icon":"magnifying-glass","href":"/concepts/custom-cache-detection"},{"title":"Model Configuration","icon":"microchip-ai","href":"/concepts/model-configuration"},{"title":"Bring Your Own Keys (BYOK)","icon":"key","href":"/concepts/bring-your-own-keys"},{"title":"Desktop Parameters","icon":"desktop","href":"/concepts/desktop-parameters"},{"title":"Pool Parameters","icon":"layers","href":"/concepts/pool-parameters"},{"title":"Empty Values","icon":"input-text","href":"/concepts/empty-values"},{"title":"Clear Values","icon":"eraser","href":"/concepts/clear-values"},{"title":"Windows VM 101","icon":"server","href":"/concepts/windows-vm-101"},{"title":"Complex Drag Actions","icon":"hand-pointer","href":"/concepts/complex-drag-actions"},{"title":"Holding a Key","icon":"keyboard","href":"/concepts/holding-a-key"},{"title":"Workflow Duplication \u0026 Merge","icon":"repeat","href":"/concepts/workflow-duplication-and-merge"}]},{"group":"Additional Details","pages":[{"title":"Usage-Based Billing","href":"/additional-details/usage-based-billing"}]}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/introduction"}]}]},"basePath":"","title":"Per-run Model Overrides - Cyberdesk Docs","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":[],"chunks":[]}