[{"data":1,"prerenderedAt":381},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fv2\u002Fapi\u002Fconfig\u002Fdeploy":3},{"id":4,"title":5,"body":6,"description":373,"extension":374,"meta":375,"navigation":376,"path":377,"seo":378,"stem":379,"__hash__":380},"docs\u002Fdocs\u002Fv2\u002Fapi\u002Fconfig\u002Fdeploy.md","deploy",{"type":7,"value":8,"toc":368},"minimark",[9,12,20,146,150,156,170,200,209,212,220,285,292,296,303,361,364],[10,11,5],"h1",{"id":5},[13,14,15,16,19],"p",{},"Controls how the agent is packaged and where it runs. All fields are optional —\nomitting ",[17,18,5],"code",{}," entirely uses Axon Cloud defaults.",[21,22,27],"pre",{"className":23,"code":24,"language":25,"meta":26,"style":26},"language-ts shiki shiki-themes dark-plus","export default defineAgent({\n    deploy: {\n        target: \"axon\",\n        scaling: { min: 0, max: 3 },\n        runtime: {\n            packages: [\"git\", \"ripgrep\"],\n        },\n    },\n})\n","ts","",[17,28,29,49,59,72,100,108,128,134,140],{"__ignoreMap":26},[30,31,34,38,41,45],"span",{"class":32,"line":33},"line",1,[30,35,37],{"class":36},"sYbnZ","export",[30,39,40],{"class":36}," default",[30,42,44],{"class":43},"sCudf"," defineAgent",[30,46,48],{"class":47},"sTNBD","({\n",[30,50,52,56],{"class":32,"line":51},2,[30,53,55],{"class":54},"s3F5K","    deploy:",[30,57,58],{"class":47}," {\n",[30,60,62,65,69],{"class":32,"line":61},3,[30,63,64],{"class":54},"        target:",[30,66,68],{"class":67},"sKc5r"," \"axon\"",[30,70,71],{"class":47},",\n",[30,73,75,78,81,84,88,91,94,97],{"class":32,"line":74},4,[30,76,77],{"class":54},"        scaling:",[30,79,80],{"class":47}," { ",[30,82,83],{"class":54},"min:",[30,85,87],{"class":86},"sDGX8"," 0",[30,89,90],{"class":47},", ",[30,92,93],{"class":54},"max:",[30,95,96],{"class":86}," 3",[30,98,99],{"class":47}," },\n",[30,101,103,106],{"class":32,"line":102},5,[30,104,105],{"class":54},"        runtime:",[30,107,58],{"class":47},[30,109,111,114,117,120,122,125],{"class":32,"line":110},6,[30,112,113],{"class":54},"            packages:",[30,115,116],{"class":47}," [",[30,118,119],{"class":67},"\"git\"",[30,121,90],{"class":47},[30,123,124],{"class":67},"\"ripgrep\"",[30,126,127],{"class":47},"],\n",[30,129,131],{"class":32,"line":130},7,[30,132,133],{"class":47},"        },\n",[30,135,137],{"class":32,"line":136},8,[30,138,139],{"class":47},"    },\n",[30,141,143],{"class":32,"line":142},9,[30,144,145],{"class":47},"})\n",[147,148,149],"h2",{"id":149},"target",[13,151,152,155],{},[17,153,154],{},"\"axon\""," (default) — deploy to Axon-managed Cloud Run. One command, no infra.",[13,157,158,161,162,165,166,169],{},[17,159,160],{},"\"self\""," — ",[17,163,164],{},"axon build"," produces a ",[17,167,168],{},".agent\u002F"," folder with a Docker image and a\nsource tarball. Deploy it anywhere that runs containers. You own the runtime.",[21,171,173],{"className":23,"code":172,"language":25,"meta":26,"style":26},"export default defineAgent({ deploy: { target: \"self\" } })\n",[17,174,175],{"__ignoreMap":26},[30,176,177,179,181,183,186,189,191,194,197],{"class":32,"line":33},[30,178,37],{"class":36},[30,180,40],{"class":36},[30,182,44],{"class":43},[30,184,185],{"class":47},"({ ",[30,187,188],{"class":54},"deploy:",[30,190,80],{"class":47},[30,192,193],{"class":54},"target:",[30,195,196],{"class":67}," \"self\"",[30,198,199],{"class":47}," } })\n",[13,201,202,203,208],{},"For the self-host story, see ",[204,205,207],"a",{"href":206},"\u002Fdocs\u002Fv2\u002Fdeploy","Deploy",".",[147,210,211],{"id":211},"scaling",[13,213,214,215,217,218,208],{},"Controls Cloud Run instance count. Only applies when ",[17,216,149],{}," is ",[17,219,154],{},[21,221,223],{"className":23,"code":222,"language":25,"meta":26,"style":26},"export default defineAgent({\n    deploy: {\n        scaling: {\n            min: 0,  \u002F\u002F scale to zero when idle (default)\n            max: 3,  \u002F\u002F max concurrent instances (default)\n        },\n    },\n})\n",[17,224,225,235,241,247,261,273,277,281],{"__ignoreMap":26},[30,226,227,229,231,233],{"class":32,"line":33},[30,228,37],{"class":36},[30,230,40],{"class":36},[30,232,44],{"class":43},[30,234,48],{"class":47},[30,236,237,239],{"class":32,"line":51},[30,238,55],{"class":54},[30,240,58],{"class":47},[30,242,243,245],{"class":32,"line":61},[30,244,77],{"class":54},[30,246,58],{"class":47},[30,248,249,252,254,257],{"class":32,"line":74},[30,250,251],{"class":54},"            min:",[30,253,87],{"class":86},[30,255,256],{"class":47},",  ",[30,258,260],{"class":259},"sOLPB","\u002F\u002F scale to zero when idle (default)\n",[30,262,263,266,268,270],{"class":32,"line":102},[30,264,265],{"class":54},"            max:",[30,267,96],{"class":86},[30,269,256],{"class":47},[30,271,272],{"class":259},"\u002F\u002F max concurrent instances (default)\n",[30,274,275],{"class":32,"line":110},[30,276,133],{"class":47},[30,278,279],{"class":32,"line":130},[30,280,139],{"class":47},[30,282,283],{"class":32,"line":136},[30,284,145],{"class":47},[13,286,287,288,291],{},"Set ",[17,289,290],{},"min: 1"," to keep a warm instance running at all times — eliminates cold\nstart latency at the cost of always paying for one instance.",[147,293,295],{"id":294},"runtimepackages","runtime.packages",[13,297,298,299,302],{},"System packages to install in the container via ",[17,300,301],{},"apk"," (Alpine base image). Add\nanything your tools need that isn't already available in a standard Node environment.",[21,304,306],{"className":23,"code":305,"language":25,"meta":26,"style":26},"export default defineAgent({\n    deploy: {\n        runtime: {\n            packages: [\"git\", \"ripgrep\", \"ffmpeg\"],\n        },\n    },\n})\n",[17,307,308,318,324,330,349,353,357],{"__ignoreMap":26},[30,309,310,312,314,316],{"class":32,"line":33},[30,311,37],{"class":36},[30,313,40],{"class":36},[30,315,44],{"class":43},[30,317,48],{"class":47},[30,319,320,322],{"class":32,"line":51},[30,321,55],{"class":54},[30,323,58],{"class":47},[30,325,326,328],{"class":32,"line":61},[30,327,105],{"class":54},[30,329,58],{"class":47},[30,331,332,334,336,338,340,342,344,347],{"class":32,"line":74},[30,333,113],{"class":54},[30,335,116],{"class":47},[30,337,119],{"class":67},[30,339,90],{"class":47},[30,341,124],{"class":67},[30,343,90],{"class":47},[30,345,346],{"class":67},"\"ffmpeg\"",[30,348,127],{"class":47},[30,350,351],{"class":32,"line":102},[30,352,133],{"class":47},[30,354,355],{"class":32,"line":110},[30,356,139],{"class":47},[30,358,359],{"class":32,"line":130},[30,360,145],{"class":47},[13,362,363],{},"Packages are installed at build time. Adding a new package requires a redeploy.",[365,366,367],"style",{},"html pre.shiki code .sYbnZ, html code.shiki .sYbnZ{--shiki-default:#C586C0}html pre.shiki code .sCudf, html code.shiki .sCudf{--shiki-default:#DCDCAA}html pre.shiki code .sTNBD, html code.shiki .sTNBD{--shiki-default:#D4D4D4}html pre.shiki code .s3F5K, html code.shiki .s3F5K{--shiki-default:#9CDCFE}html pre.shiki code .sKc5r, html code.shiki .sKc5r{--shiki-default:#CE9178}html pre.shiki code .sDGX8, html code.shiki .sDGX8{--shiki-default:#B5CEA8}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .sOLPB, html code.shiki .sOLPB{--shiki-default:#6A9955}",{"title":26,"searchDepth":51,"depth":51,"links":369},[370,371,372],{"id":149,"depth":51,"text":149},{"id":211,"depth":51,"text":211},{"id":294,"depth":51,"text":295},"Controls how the agent is packaged and where it runs. All fields are optional —\nomitting deploy entirely uses Axon Cloud defaults.","md",{},true,"\u002Fdocs\u002Fv2\u002Fapi\u002Fconfig\u002Fdeploy",{"title":5,"description":373},"docs\u002Fv2\u002Fapi\u002Fconfig\u002Fdeploy","jVynV4xSfHJGFxDIkloWa54lE7akmF4SybAci9SaWvA",1785671808275]