[{"data":1,"prerenderedAt":460},["ShallowReactive",2],{"docs-page:\u002Fdocs\u002Fresources-and-billing":3,"docs-navigation-links":428},{"id":4,"title":5,"body":6,"description":420,"extension":421,"meta":422,"navigation":423,"path":424,"seo":425,"stem":426,"__hash__":427},"docs\u002Fdocs\u002Fresources-and-billing.md","Resources and billing",{"type":7,"value":8,"toc":413},"minimark",[9,14,18,85,88,144,151,154,158,161,164,168,205,208,216,223,226,230,237,240,274,333,352,356,359,406,409],[10,11,13],"h2",{"id":12},"sandbox-sizes","Sandbox sizes",[15,16,17],"p",{},"Select CPU and memory when creating a chat:",[19,20,25],"pre",{"className":21,"code":22,"language":23,"meta":24,"style":24},"language-json shiki shiki-themes github-dark","{\n  \"instance\": {\n    \"cpu\": 4,\n    \"memory\": 8\n  }\n}\n","json","",[26,27,28,37,47,62,73,79],"code",{"__ignoreMap":24},[29,30,33],"span",{"class":31,"line":32},"line",1,[29,34,36],{"class":35},"s95oV","{\n",[29,38,40,44],{"class":31,"line":39},2,[29,41,43],{"class":42},"sDLfK","  \"instance\"",[29,45,46],{"class":35},": {\n",[29,48,50,53,56,59],{"class":31,"line":49},3,[29,51,52],{"class":42},"    \"cpu\"",[29,54,55],{"class":35},": ",[29,57,58],{"class":42},"4",[29,60,61],{"class":35},",\n",[29,63,65,68,70],{"class":31,"line":64},4,[29,66,67],{"class":42},"    \"memory\"",[29,69,55],{"class":35},[29,71,72],{"class":42},"8\n",[29,74,76],{"class":31,"line":75},5,[29,77,78],{"class":35},"  }\n",[29,80,82],{"class":31,"line":81},6,[29,83,84],{"class":35},"}\n",[15,86,87],{},"Current choices:",[89,90,91,107],"table",{},[92,93,94],"thead",{},[95,96,97,101,104],"tr",{},[98,99,100],"th",{},"Resource",[98,102,103],{},"Allowed values",[98,105,106],{},"Default",[108,109,110,122,133],"tbody",{},[95,111,112,116,119],{},[113,114,115],"td",{},"CPU",[113,117,118],{},"2 or 4 vCPU",[113,120,121],{},"2 vCPU",[95,123,124,127,130],{},[113,125,126],{},"Memory",[113,128,129],{},"2, 4, or 8 GiB",[113,131,132],{},"2 GiB",[95,134,135,138,141],{},[113,136,137],{},"Disk",[113,139,140],{},"fixed at 10 GiB",[113,142,143],{},"10 GiB",[15,145,146,147,150],{},"Any allowed CPU value may be paired with any allowed memory value. Unsupported\nor odd values return ",[26,148,149],{},"422",".",[15,152,153],{},"Size belongs to the chat and is reused by later turns. Create another chat to\nchange it.",[10,155,157],{"id":156},"when-billing-runs","When billing runs",[15,159,160],{},"Billing uses sandbox wall-clock time. Queue time does not consume compute\ncredit. Timing starts when a sandbox is ready and ends when the turn completes,\nfails, times out, or is canceled.",[15,162,163],{},"The sandbox is stopped after every turn.",[10,165,167],{"id":166},"current-compute-rates","Current compute rates",[89,169,170,179],{},[92,171,172],{},[95,173,174,176],{},[98,175,100],{},[98,177,178],{},"Rate per unit-hour",[108,180,181,189,197],{},[95,182,183,186],{},[113,184,185],{},"vCPU",[113,187,188],{},"$0.0858",[95,190,191,194],{},[113,192,193],{},"Memory GiB",[113,195,196],{},"$0.0162",[95,198,199,202],{},[113,200,201],{},"Disk GiB",[113,203,204],{},"$0.000108",[15,206,207],{},"Cost is calculated by the second:",[19,209,214],{"className":210,"code":212,"language":213,"meta":24},[211],"language-text","hourly_rate =\n  cpu × 0.0858\n  + memory_gib × 0.0162\n  + disk_gib × 0.000108\n\nturn_cost = hourly_rate × sandbox_seconds \u002F 3600\n","text",[26,215,212],{"__ignoreMap":24},[15,217,218,219,222],{},"The default 2 vCPU, 2 GiB, 10 GiB sandbox costs ",[26,220,221],{},"$0.20508"," for a full hour of\nrunning compute.",[15,224,225],{},"Model-token charges go directly to the provider key supplied with the run and\nare separate from Epho compute credit.",[10,227,229],{"id":228},"prepaid-credit","Prepaid credit",[15,231,232,233,236],{},"Compute is deducted from the team's prepaid ledger in micro-USD. Epho refuses\na new turn with ",[26,234,235],{},"402 Payment Required"," when no positive credit remains.",[15,238,239],{},"Read the balance:",[19,241,245],{"className":242,"code":243,"language":244,"meta":24,"style":24},"language-bash shiki shiki-themes github-dark","curl https:\u002F\u002Fapp.epho.io\u002Fapi\u002Fv1\u002Fcredits \\\n  -H \"Authorization: Bearer $EPHO_API_KEY\"\n","bash",[26,246,247,260],{"__ignoreMap":24},[29,248,249,253,257],{"class":31,"line":32},[29,250,252],{"class":251},"svObZ","curl",[29,254,256],{"class":255},"sU2Wk"," https:\u002F\u002Fapp.epho.io\u002Fapi\u002Fv1\u002Fcredits",[29,258,259],{"class":42}," \\\n",[29,261,262,265,268,271],{"class":31,"line":39},[29,263,264],{"class":42},"  -H",[29,266,267],{"class":255}," \"Authorization: Bearer ",[29,269,270],{"class":35},"$EPHO_API_KEY",[29,272,273],{"class":255},"\"\n",[19,275,277],{"className":21,"code":276,"language":23,"meta":24,"style":24},"{\n  \"balance\": {\n    \"micros\": 4230000,\n    \"cents\": 423,\n    \"usd\": \"4.23\"\n  }\n}\n",[26,278,279,283,290,302,314,324,328],{"__ignoreMap":24},[29,280,281],{"class":31,"line":32},[29,282,36],{"class":35},[29,284,285,288],{"class":31,"line":39},[29,286,287],{"class":42},"  \"balance\"",[29,289,46],{"class":35},[29,291,292,295,297,300],{"class":31,"line":49},[29,293,294],{"class":42},"    \"micros\"",[29,296,55],{"class":35},[29,298,299],{"class":42},"4230000",[29,301,61],{"class":35},[29,303,304,307,309,312],{"class":31,"line":64},[29,305,306],{"class":42},"    \"cents\"",[29,308,55],{"class":35},[29,310,311],{"class":42},"423",[29,313,61],{"class":35},[29,315,316,319,321],{"class":31,"line":75},[29,317,318],{"class":42},"    \"usd\"",[29,320,55],{"class":35},[29,322,323],{"class":255},"\"4.23\"\n",[29,325,326],{"class":31,"line":81},[29,327,78],{"class":35},[29,329,331],{"class":31,"line":330},7,[29,332,84],{"class":35},[15,334,335,336,339,340,343,344,347,348,351],{},"One USD equals ",[26,337,338],{},"1,000,000"," micros. The ",[26,341,342],{},"micros"," value is the precise ledger\nbalance; ",[26,345,346],{},"cents"," and ",[26,349,350],{},"usd"," are display-friendly forms.",[10,353,355],{"id":354},"concurrency","Concurrency",[15,357,358],{},"Teams default to five active turns. Turns beyond the team's cap remain queued\nwithout consuming a slot or billable compute and emit:",[19,360,362],{"className":21,"code":361,"language":23,"meta":24,"style":24},"{\n  \"type\": \"status\",\n  \"phase\": \"queued\",\n  \"message\": \"Waiting for an available run slot…\"\n}\n",[26,363,364,368,380,392,402],{"__ignoreMap":24},[29,365,366],{"class":31,"line":32},[29,367,36],{"class":35},[29,369,370,373,375,378],{"class":31,"line":39},[29,371,372],{"class":42},"  \"type\"",[29,374,55],{"class":35},[29,376,377],{"class":255},"\"status\"",[29,379,61],{"class":35},[29,381,382,385,387,390],{"class":31,"line":49},[29,383,384],{"class":42},"  \"phase\"",[29,386,55],{"class":35},[29,388,389],{"class":255},"\"queued\"",[29,391,61],{"class":35},[29,393,394,397,399],{"class":31,"line":64},[29,395,396],{"class":42},"  \"message\"",[29,398,55],{"class":35},[29,400,401],{"class":255},"\"Waiting for an available run slot…\"\n",[29,403,404],{"class":31,"line":75},[29,405,84],{"class":35},[15,407,408],{},"Queued turns start as active turns settle.",[410,411,412],"style",{},"html pre.shiki code .s95oV, html code.shiki .s95oV{--shiki-default:#E1E4E8}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}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 .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}",{"title":24,"searchDepth":39,"depth":39,"links":414},[415,416,417,418,419],{"id":12,"depth":39,"text":13},{"id":156,"depth":39,"text":157},{"id":166,"depth":39,"text":167},{"id":228,"depth":39,"text":229},{"id":354,"depth":39,"text":355},"Size sandboxes, understand per-second compute charges, and monitor team credit.","md",{},true,"\u002Fdocs\u002Fresources-and-billing",{"title":5,"description":420},"docs\u002Fresources-and-billing","hdU-Xso9FlLILdZz8SUOwVsM_ZknUkyhpZ0RagPz6-M",[429,432,435,438,441,444,447,450,453,454,457],{"path":430,"title":431},"\u002Fdocs","Overview",{"path":433,"title":434},"\u002Fdocs\u002Fauthentication","Authentication",{"path":436,"title":437},"\u002Fdocs\u002Fchats-and-turns","Chats and turns",{"path":439,"title":440},"\u002Fdocs\u002Ferrors","Errors and statuses",{"path":442,"title":443},"\u002Fdocs\u002Ffiles-and-repositories","Files and repositories",{"path":445,"title":446},"\u002Fdocs\u002Fharnesses-and-models","Harnesses and models",{"path":448,"title":449},"\u002Fdocs\u002Fmcp-and-environment","MCP and environment",{"path":451,"title":452},"\u002Fdocs\u002Fquickstart","Quickstart",{"path":424,"title":5},{"path":455,"title":456},"\u002Fdocs\u002Fresuming-chats","Resuming chats",{"path":458,"title":459},"\u002Fdocs\u002Frunning-agents","Running agents",1785310516454]