[{"data":1,"prerenderedAt":1052},["ShallowReactive",2],{"tool-opencode-en":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":22,"sources":35,"cover":105,"og":106,"expertise":107,"locales":108,"lang":109,"title":112,"description":113,"coverAlt":114,"url":25,"pricing":115,"kind":116,"metaTitle":117,"takeaways":118,"faq":124,"toc":137,"blocks":165,"others":590},"opencode","2026-10-09",8,"agents",[9,10,11,12,13],"AI coding agent","Terminal","Open source","Local models","MCP",[4,15,16,17,18,19,20,21],"opencode review","open source coding agent","opencode vs claude code","terminal coding agent","opencode local models","opencode permissions","opencode mcp",[23,26,29,32],{"name":24,"url":25},"OpenCode","https:\u002F\u002Fopencode.ai",{"name":27,"url":28},"Large language model","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model",{"name":30,"url":31},"Model Context Protocol","https:\u002F\u002Fmodelcontextprotocol.io",{"name":33,"url":34},"Language Server Protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLanguage_Server_Protocol",[36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99,102],{"title":37,"url":38},"OpenCode docs: intro and installation","https:\u002F\u002Fopencode.ai\u002Fdocs\u002F",{"title":40,"url":41},"OpenCode docs: providers, Models.dev and local models","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fproviders\u002F",{"title":43,"url":44},"OpenCode docs: agents, Build, Plan and subagents","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fagents\u002F",{"title":46,"url":47},"OpenCode docs: permissions and defaults","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fpermissions\u002F",{"title":49,"url":50},"OpenCode docs: MCP servers","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fmcp-servers\u002F",{"title":52,"url":53},"OpenCode docs: LSP servers","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Flsp\u002F",{"title":55,"url":56},"OpenCode docs: server and web interface","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fserver\u002F",{"title":58,"url":59},"OpenCode docs: config and precedence","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fconfig\u002F",{"title":61,"url":62},"OpenCode docs: Zen, pay-as-you-go models","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fzen\u002F",{"title":64,"url":65},"OpenCode docs: Go subscription plans","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fgo\u002F",{"title":67,"url":68},"OpenCode docs: share and data retention","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fshare\u002F",{"title":70,"url":71},"OpenCode docs: enterprise and data handling","https:\u002F\u002Fopencode.ai\u002Fdocs\u002Fenterprise\u002F",{"title":73,"url":74},"GitHub: anomalyco\u002Fopencode, MIT licence and README","https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fopencode",{"title":76,"url":77},"OpenCode release v1.18.35 (6 October 2026)","https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fopencode\u002Freleases\u002Ftag\u002Fv1.18.35",{"title":79,"url":80},"Claude Code licence file (LICENSE.md)","https:\u002F\u002Fraw.githubusercontent.com\u002Fanthropics\u002Fclaude-code\u002Fmain\u002FLICENSE.md",{"title":82,"url":83},"Claude pricing: plans and Claude Code access","https:\u002F\u002Fclaude.com\u002Fpricing",{"title":85,"url":86},"Claude Code docs: connect to an LLM gateway","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fllm-gateway",{"title":88,"url":89},"OpenAI Codex CLI repository (Apache-2.0)","https:\u002F\u002Fgithub.com\u002Fopenai\u002Fcodex",{"title":91,"url":92},"ChatGPT pricing: Codex included in plans","https:\u002F\u002Flearn.chatgpt.com\u002Fdocs\u002Fpricing",{"title":94,"url":95},"Codex configuration: model providers and config.toml","https:\u002F\u002Flearn.chatgpt.com\u002Fdocs\u002Fconfig-file\u002Fconfig-advanced",{"title":97,"url":98},"Aider website: git integration and LLM support","https:\u002F\u002Faider.chat\u002F",{"title":100,"url":101},"Aider licence file (Apache-2.0)","https:\u002F\u002Fraw.githubusercontent.com\u002FAider-AI\u002Faider\u002Fmain\u002FLICENSE.txt",{"title":103,"url":104},"GDPR, Regulation (EU) 2016\u002F679, Article 28","https:\u002F\u002Feur-lex.europa.eu\u002Flegal-content\u002FEN\u002FTXT\u002FHTML\u002F?uri=CELEX:32016R0679","\u002Fimages\u002Fblog\u002Fopencode\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fopencode\u002Fog.jpg","ai-engineer",[109,110,111],"en","de","hu","OpenCode review: the open-source coding agent for any model","OpenCode is an MIT-licensed terminal coding agent for any model, hosted or local. Agents, permissions, MCP and LSP, plus the data-protection trade-offs.","Cover art for the OpenCode review: one agent loop in the terminal fanning out to a hosted API, a local model and Zen.","MIT · free, you pay the model provider","Coding agent","OpenCode review: open-source agent, any model · Balázs Csorba",[119,120,121,122,123],"OpenCode is MIT-licensed and free to install. You pay for the model, through your own provider key, a local model or the optional Zen and Go plans.","Its provider layer reaches more than 75 providers through the AI SDK and Models.dev, and local models through Ollama, LM Studio or llama.cpp.","The Build and Plan agents separate doing from planning, but most permissions default to allow, so you must write your own approval rules before the first real run.","MCP servers and LSP diagnostics extend the agent. Each MCP server adds to the context you pay for, so enable them one at a time.","With your own provider, code goes straight from your machine to that provider. The exception is \u002Fshare, which publishes a public link on opencode.ai.",[125,128,131,134],{"q":126,"a":127},"Is OpenCode free?","The software is free under the MIT licence. You pay your model provider for tokens, pay as you go through Zen, or subscribe to Go at $10 a month or Go Plus at $40 a month. Prices are as of October 2026.",{"q":129,"a":130},"Can OpenCode run without a cloud provider?","Yes. The provider directory covers local options such as Ollama, LM Studio and llama.cpp. Prompts and code stay on your machine, but web tools and remote MCP servers still send requests out, and output quality depends on the model you run.",{"q":132,"a":133},"Does OpenCode store my code?","According to its enterprise page, OpenCode does not store any of your code or context data, and processing happens locally or through direct API calls to your AI provider. Using \u002Fshare is the exception, because the conversation is then published through opencode.ai.",{"q":135,"a":136},"How does it compare with Claude Code?","OpenCode is open source and provider-agnostic. Claude Code is under Anthropic's commercial terms, and Anthropic says it does not support routing Claude Code to non-Claude models through any gateway.",[138,141,144,147,150,153,156,159,162],{"id":139,"title":140},"what-it-is","What it is",{"id":142,"title":143},"how-it-works","How it works",{"id":145,"title":146},"getting-started","Getting started",{"id":148,"title":149},"agents-and-permissions","Agents and permissions",{"id":151,"title":152},"providers-and-local-models","Providers and local models",{"id":154,"title":155},"cost-and-deployment","Cost and deployment",{"id":157,"title":158},"where-it-falls-short","Where it falls short",{"id":160,"title":161},"verdict","Verdict",{"id":163,"title":164},"sources","Sources",[166,170,173,176,179,204,205,213,222,225,229,240,241,267,269,272,273,276,306,315,316,330,333,334,337,381,384,392,402,403,406,438,439,442,487,517,518],{"type":167,"content":168},"paragraph",[169],"OpenCode is an open-source AI coding agent for the terminal, also available as a desktop app and an IDE extension. The verdict up front: take it if you want one agent that can run whichever model you can connect, including a model on your own machine, and you are prepared to write its permission rules. Leave it alone if you want one vendor's model under one subscription, or if you expect safe defaults out of the box.",{"type":167,"content":171},[172],"This review rests on the official OpenCode docs, the GitHub repository and the v1.18.35 release, published on 6 October 2026. I did not benchmark it, so the comparison covers features, licences and prices, not output quality.",{"type":174,"level":175,"id":139,"text":140},"heading",2,{"type":167,"content":177},[178],"OpenCode is a terminal interface, a desktop app and an IDE extension. The source is at anomalyco\u002Fopencode on GitHub under the MIT licence, and the repository showed about 212.5k stars when I checked on 10 October 2026. The docs also carry a banner for a v2 release. The v2 page I opened had no details, so the specifics below refer to the v1.18 line.",{"type":180,"ordered":181,"items":182},"list",false,[183,189,194,199],[184,188],{"tag":185,"children":186},"strong",[187],"Install: ","a shell script, npm (opencode-ai), Bun, pnpm or Yarn, Homebrew through the anomalyco tap, and AUR or Nix packages.",[190,193],{"tag":185,"children":191},[192],"Models: ","more than 75 providers through the AI SDK and Models.dev, plus any OpenAI-compatible endpoint you configure.",[195,198],{"tag":185,"children":196},[197],"Clients: ","the terminal UI, the desktop app, IDE extensions, a browser interface from opencode web, and ACP-compatible editors such as Zed and JetBrains IDEs.",[200,203],{"tag":185,"children":201},[202],"Project rules: ","an AGENTS.md file, which the \u002Finit command creates or updates, is added to the model's context.",{"type":174,"level":175,"id":142,"text":143},{"type":167,"content":206},[207,208,212],"The docs describe a client and server split. The command",{"tag":209,"children":210},"code",[211],"opencode serve"," runs a headless HTTP server with an OpenAPI endpoint that any OpenCode client can use, so the interface and the agent can run in separate processes. Every tool call is checked against the permission rules before it runs.",{"type":214,"attrs":215,"inner":219,"caption":220},"diagram",{"viewBox":216,"role":217,"aria-labelledby":218},"0 0 720 330","img","d1-oc-t d1-oc-d","\u003Ctitle id=\"d1-oc-t\">How an OpenCode request flows\u003C\u002Ftitle>\u003Cdesc id=\"d1-oc-d\">Clients such as the terminal UI, the desktop app or an IDE send requests to a local opencode server over HTTP. The agent loop runs in Build or Plan mode. Before each tool call, the permission gate allows, asks or denies the action. Tools read and edit files, run shell commands, use language servers and call MCP servers. The model call goes to the provider you configure, which can be a hosted API or a local model.\u003C\u002Fdesc>\u003Cdefs>\u003Cmarker id=\"ah-oc\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head\" \u002F>\u003C\u002Fmarker>\u003C\u002Fdefs>\u003Ctext x=\"20\" y=\"28\" class=\"d-title\">Client and server split\u003C\u002Ftext>\u003Ctext x=\"700\" y=\"28\" text-anchor=\"end\" class=\"d-label\">one agent, any model\u003C\u002Ftext>\u003Crect x=\"20\" y=\"52\" width=\"150\" height=\"62\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"95\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">Clients\u003C\u002Ftext>\u003Ctext x=\"95\" y=\"102\" text-anchor=\"middle\" class=\"d-small\">TUI, desktop, IDE\u003C\u002Ftext>\u003Crect x=\"195\" y=\"52\" width=\"150\" height=\"62\" rx=\"10\" class=\"d-accent\" \u002F>\u003Ctext x=\"270\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">opencode serve\u003C\u002Ftext>\u003Ctext x=\"270\" y=\"102\" text-anchor=\"middle\" class=\"d-small\">HTTP and OpenAPI\u003C\u002Ftext>\u003Crect x=\"370\" y=\"52\" width=\"150\" height=\"62\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"445\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">Agent loop\u003C\u002Ftext>\u003Ctext x=\"445\" y=\"102\" text-anchor=\"middle\" class=\"d-small\">Build or Plan\u003C\u002Ftext>\u003Crect x=\"545\" y=\"52\" width=\"150\" height=\"62\" rx=\"10\" class=\"d-mint\" \u002F>\u003Ctext x=\"620\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">Model\u003C\u002Ftext>\u003Ctext x=\"620\" y=\"102\" text-anchor=\"middle\" class=\"d-small\">provider or local\u003C\u002Ftext>\u003Cpath d=\"M170 83 H193\" class=\"d-line\" marker-end=\"url(#ah-oc)\" \u002F>\u003Cpath d=\"M345 83 H368\" class=\"d-line\" marker-end=\"url(#ah-oc)\" \u002F>\u003Cpath d=\"M520 83 H543\" class=\"d-line\" marker-end=\"url(#ah-oc)\" \u002F>\u003Crect x=\"370\" y=\"180\" width=\"150\" height=\"62\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"445\" y=\"208\" text-anchor=\"middle\" class=\"d-text\">Permission gate\u003C\u002Ftext>\u003Ctext x=\"445\" y=\"230\" text-anchor=\"middle\" class=\"d-small\">allow, ask or deny\u003C\u002Ftext>\u003Crect x=\"195\" y=\"180\" width=\"150\" height=\"62\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"270\" y=\"208\" text-anchor=\"middle\" class=\"d-text\">Tools\u003C\u002Ftext>\u003Ctext x=\"270\" y=\"230\" text-anchor=\"middle\" class=\"d-small\">files, bash, LSP, MCP\u003C\u002Ftext>\u003Cpath d=\"M445 114 V178\" class=\"d-line\" marker-end=\"url(#ah-oc)\" \u002F>\u003Cpath d=\"M368 211 H347\" class=\"d-line\" marker-end=\"url(#ah-oc)\" \u002F>\u003Cpath d=\"M270 178 V116\" class=\"d-line\" marker-end=\"url(#ah-oc)\" \u002F>\u003Ctext x=\"20\" y=\"290\" class=\"d-small\">Permission rules are checked before every tool call; deny rules still apply under --auto.\u003C\u002Ftext>\u003Ctext x=\"20\" y=\"312\" class=\"d-small\">Local models keep prompts on the machine; web tools and remote MCP servers still send requests out.\u003C\u002Ftext>",[221],"Clients talk to one local server. The permission gate checks each tool call, and the model is whichever provider you configure.",{"type":167,"content":223},[224],"Tools do the actual work. Built-in tools read, write and patch files, run shell commands and fetch web pages, and each has its own permission key. The language server layer passes diagnostics from the project's language servers back to the agent, which the docs present as feedback for the agent.",{"type":174,"level":226,"id":227,"text":228},3,"mcp-and-lsp","MCP and LSP",{"type":167,"content":230},[231,232,235,236,239],"MCP servers sit under the ",{"tag":209,"children":233},[234],"mcp"," key. A local server is a command that OpenCode starts. A remote server is a URL, with optional headers, an OAuth block and a timeout that defaults to 5 seconds for fetching its tool list. The docs warn that every MCP server adds to the context you pay for, and that some, such as the GitHub MCP server, can exceed the context limit on their own. LSP works differently. OpenCode ships configurations for more than 30 language servers, from TypeScript, Rust and Python (pyright) to Go (gopls) and Terraform, and setting ",{"tag":209,"children":237},[238],"lsp"," to true enables all of them. Some install themselves; others need the toolchain on your path.",{"type":174,"level":175,"id":145,"text":146},{"type":167,"content":242},[243,244,247,248,250,251,254,255,258,259,262,263,266],"Install with the shell script or ",{"tag":209,"children":245},[246],"npm install -g opencode-ai",", then run ",{"tag":209,"children":249},[4]," in the project directory. Inside the TUI, ",{"tag":209,"children":252},[253],"\u002Fconnect"," adds provider keys and ",{"tag":209,"children":256},[257],"\u002Finit"," writes the AGENTS.md file. The configuration below points OpenCode at a model served by LM Studio on the same machine, sets the default permission to ask and turns sharing off. Put it in ",{"tag":209,"children":260},[261],"opencode.json"," at the project root, or in ",{"tag":209,"children":264},[265],"~\u002F.config\u002Fopencode\u002Fopencode.json"," for every project.",{"type":209,"code":268},"{\n  \"$schema\": \"https:\u002F\u002Fopencode.ai\u002Fconfig.json\",\n  \"model\": \"lmstudio\u002Fgoogle\u002Fgemma-3n-e4b\",\n  \"provider\": {\n    \"lmstudio\": {\n      \"npm\": \"@ai-sdk\u002Fopenai-compatible\",\n      \"name\": \"LM Studio (local)\",\n      \"options\": { \"baseURL\": \"http:\u002F\u002F127.0.0.1:1234\u002Fv1\" },\n      \"models\": { \"google\u002Fgemma-3n-e4b\": { \"name\": \"Gemma 3n-e4b (local)\" } }\n    }\n  },\n  \"permission\": { \"*\": \"ask\", \"bash\": \"ask\" },\n  \"share\": \"disabled\"\n}",{"type":167,"content":270},[271],"A local model keeps prompts on your machine, but the quality of the result is the model's, not the agent's. Run the first tasks on a scratch branch and read every diff before you accept it.",{"type":174,"level":175,"id":148,"text":149},{"type":167,"content":274},[275],"Two primary agents do the main work. Build is the default, with every tool enabled, and suits development. Plan is restricted to analysis and review, and the docs say it makes no code changes. Press Tab to switch between them. OpenCode also has three built-in subagents. Explore is a fast, read-only agent for finding files and answering questions about the code, Scout is read-only and researches external docs and dependency source, and General is the third. You can call any of them with an @ mention.",{"type":167,"content":277},[278,279,282,283,286,287,286,290,293,294,297,298,301,302,305],"Permissions are where you should spend your first hour. Each key accepts allow, ask or deny, and the object form can match on the tool input. The keys that matter most are ",{"tag":209,"children":280},[281],"edit"," (which covers write, edit and apply_patch), ",{"tag":209,"children":284},[285],"bash",", ",{"tag":209,"children":288},[289],"webfetch",{"tag":209,"children":291},[292],"external_directory"," and ",{"tag":209,"children":295},[296],"doom_loop",". A ",{"tag":209,"children":299},[300],"*"," key sets the default for everything else, and explicit deny rules still apply under ",{"tag":209,"children":303},[304],"--auto",".",{"type":307,"variant":308,"title":309,"body":310},"callout","warn","The defaults are permissive",[311,313],[312],"Most permissions start at allow. The docs set doom_loop and external_directory to ask and deny .env files, but bash and edit run without a prompt unless you change them.",[314],"The --auto flag approves every request that is not explicitly denied. Treat it as a setting for a throwaway sandbox, not for a laptop with production credentials.",{"type":174,"level":175,"id":151,"text":152},{"type":167,"content":317},[318,319,321,322,325,326,329],"This is the main reason to pick OpenCode. It uses the AI SDK and the Models.dev catalogue to cover more than 75 providers, ",{"tag":209,"children":320},[253]," stores the keys you add, and the ",{"tag":209,"children":323},[324],"baseURL"," option points any provider at a proxy or a private endpoint. The provider directory lists local options such as Ollama, LM Studio and llama.cpp, and any other OpenAI-compatible server can be added with the ",{"tag":209,"children":327},[328],"@ai-sdk\u002Fopenai-compatible"," package.",{"type":167,"content":331},[332],"Provider-agnostic does not mean equally good. The agent is only as reliable as the model behind it, especially for tool calls in a large repository. Keep a second model configured, so you can switch when one struggles, and compare the diffs they produce on the same task before you commit to either.",{"type":174,"level":175,"id":154,"text":155},{"type":167,"content":335},[336],"The software costs nothing. You pay for the model, and the bill depends on where that model runs. As of October 2026 the published options are these.",{"type":338,"head":339,"rows":346},"table",[340,342,344],[341],"Option",[343],"Price",[345],"What it covers",[347,353,360,367,374],[348,349,351],[24],[350],"Free, MIT",[352],"Install and run; you pay your model provider directly",[354,356,358],[355],"Zen",[357],"Pay as you go, per 1M tokens",[359],"Tested models hosted in the US and EU; zero retention except some free models",[361,363,365],[362],"Go",[364],"$10 a month",[366],"Open coding models with monthly dollar limits",[368,370,372],[369],"Go Plus",[371],"$40 a month",[373],"Higher monthly limits at the same token prices as Go",[375,377,379],[376],"Enterprise",[378],"Per seat, quoted",[380],"Central config, SSO, and your own LLM gateway with no token charge",{"type":167,"content":382},[383],"Self-hosting here means running the model on your side, because the agent already runs on your machine. The data-protection question is who processes your code. OpenCode's enterprise page says it does not store any of your code or context data, and that all processing happens locally or through direct API calls to your AI provider. That makes the provider the party you need a contract with.",{"type":167,"content":385},[386,387,305],"Under Article 28(3) of the GDPR, processing by a processor must be governed by a contract that binds the processor. If your repositories or test data contain personal data, get that contract, the processing region and the retention terms in writing from the provider you connect. Zen's published policy is a useful benchmark: its models are hosted in the US and EU, its providers follow zero retention and do not train on your data, with named exceptions for free models during their free period. The wider residency checklist is in the ",{"tag":388,"to":389,"children":390},"link","\u002Fblog\u002Fgdpr-llm-api-eu-data-residency",[391],"GDPR LLM data residency guide",{"type":307,"variant":393,"title":394,"body":395},"note","Three places data can leave your machine",[396,398,400],[397],"The model call, unless the model runs on your machine.",[399],"The \u002Fshare command, which publishes a conversation as a public link on opencode.ai's CDN. Sharing defaults to manual, and \u002Funshare deletes the data.",[401],"Web fetch and web search tools, and any remote MCP server, which send requests outside the model call.",{"type":174,"level":175,"id":157,"text":158},{"type":167,"content":404},[405],"Most of the weak points are defaults and upkeep rather than missing features.",{"type":180,"ordered":181,"items":407},[408,413,418,423,428,433],[409,412],{"tag":185,"children":410},[411],"Permissive defaults. ","Most permissions start at allow, and --auto removes the prompts altogether, so the safe setup is one you write and test yourself.",[414,417],{"tag":185,"children":415},[416],"Context cost from MCP. ","Each enabled server adds to the context. Enable one server at a time and measure what it costs before you add the next.",[419,422],{"tag":185,"children":420},[421],"Configuration keeps moving. ","The legacy tools boolean was merged into permission in v1.1.1, and the old key still works. Check examples against the version you run.",[424,427],{"tag":185,"children":425},[426],"Shares are public. ","Anyone with the link can read a shared conversation until someone unshares it.",[429,432],{"tag":185,"children":430},[431],"Team controls sit behind a quote. ","Central config, SSO and gateway enforcement are enterprise features, priced per seat.",[434,437],{"tag":185,"children":435},[436],"A version question. ","The docs point to a v2 release. Pin the version your team tests and retest after each upgrade.",{"type":174,"level":175,"id":160,"text":161},{"type":167,"content":440},[441],"OpenCode is the open option for teams that must keep the choice of model open. Pick it when you want an MIT-licensed agent, when code should go only to a provider you have contracted, or when local models are part of the plan. Do not pick it if you want safe behaviour without writing the rules yourself, or if one vendor's model is the requirement.",{"type":338,"head":443,"rows":452},[444,446,448,450],[445],"Tool",[447],"Licence",[449],"Models",[451],"Price, as of October 2026",[453,461,470,479],[454,455,457,459],[24],[456],"MIT",[458],"75+ providers and local models",[460],"Free software; you pay the provider, or Zen and Go",[462,464,466,468],[463],"Claude Code",[465],"Anthropic commercial terms",[467],"Claude models; no non-Claude models through gateways",[469],"Pro $17 a month billed yearly, $20 monthly; Max from $100",[471,473,475,477],[472],"Codex CLI",[474],"Apache-2.0",[476],"OpenAI models, plus custom providers in config.toml",[478],"Included in ChatGPT plans, Free to Enterprise",[480,482,483,485],[481],"Aider",[474],[484],"Almost any LLM, including local models",[486],"Free software; you pay the provider",{"type":180,"ordered":488,"items":489},true,[490,499,508],[491,494,495,305],{"tag":185,"children":492},[493],"Claude Code ","if you already work with Claude models and accept a commercial licence in return for Anthropic's own agent. The review is ",{"tag":388,"to":496,"children":497},"\u002Ftools\u002Fclaude-code",[498],"Claude Code review",[500,503,504,305],{"tag":185,"children":501},[502],"Codex CLI ","if your team already has ChatGPT plans and wants an Apache-2.0 agent. Its review is ",{"tag":388,"to":505,"children":506},"\u002Ftools\u002Fopenai-codex-cli",[507],"Codex CLI review",[509,512,513,305],{"tag":185,"children":510},[511],"Aider ","if you want a smaller, git-first tool that commits each change with a sensible message and reaches almost any model. Its review is ",{"tag":388,"to":514,"children":515},"\u002Ftools\u002Faider",[516],"Aider review",{"type":174,"level":175,"id":163,"text":164},{"type":180,"ordered":181,"items":519},[520,524,527,530,533,536,539,542,545,548,551,554,557,560,563,566,569,572,575,578,581,584,587],[521],{"tag":522,"href":38,"children":523},"a",[37],[525],{"tag":522,"href":41,"children":526},[40],[528],{"tag":522,"href":44,"children":529},[43],[531],{"tag":522,"href":47,"children":532},[46],[534],{"tag":522,"href":50,"children":535},[49],[537],{"tag":522,"href":53,"children":538},[52],[540],{"tag":522,"href":56,"children":541},[55],[543],{"tag":522,"href":59,"children":544},[58],[546],{"tag":522,"href":62,"children":547},[61],[549],{"tag":522,"href":65,"children":550},[64],[552],{"tag":522,"href":68,"children":553},[67],[555],{"tag":522,"href":71,"children":556},[70],[558],{"tag":522,"href":74,"children":559},[73],[561],{"tag":522,"href":77,"children":562},[76],[564],{"tag":522,"href":80,"children":565},[79],[567],{"tag":522,"href":83,"children":568},[82],[570],{"tag":522,"href":86,"children":571},[85],[573],{"tag":522,"href":89,"children":574},[88],[576],{"tag":522,"href":92,"children":577},[91],[579],{"tag":522,"href":95,"children":580},[94],[582],{"tag":522,"href":98,"children":583},[97],[585],{"tag":522,"href":101,"children":586},[100],[588],{"tag":522,"href":104,"children":589},[103],[591,695,814,924],{"slug":592,"published":593,"minutes":6,"category":7,"tags":594,"keywords":600,"about":609,"sources":620,"cover":687,"og":688,"expertise":107,"locales":689,"lang":109,"title":690,"description":691,"coverAlt":692,"url":693,"pricing":694,"kind":595},"pydantic-ai","2026-10-08",[595,596,597,598,599],"Agent framework","Typed Python","Structured output","Dependency injection","OpenTelemetry",[601,602,603,604,605,606,607,608],"pydantic ai","pydantic ai review","pydantic ai vs langgraph","pydantic ai vs openai agents sdk","typed python agent framework","pydantic ai logfire pricing","pydantic ai 2.0 upgrade","python llm agent framework",[610,613,616,618],{"name":611,"url":612},"Pydantic","https:\u002F\u002Fpydantic.dev",{"name":614,"url":615},"Python (programming language)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPython_(programming_language)",{"name":598,"url":617},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDependency_injection",{"name":599,"url":619},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOpenTelemetry",[621,624,627,630,633,636,639,642,645,648,651,654,657,660,663,666,669,672,675,678,681,684],{"title":622,"url":623},"Pydantic AI documentation","https:\u002F\u002Fai.pydantic.dev\u002F",{"title":625,"url":626},"pydantic-ai 2.55.0 on PyPI (released 9 October 2026)","https:\u002F\u002Fpypi.org\u002Fproject\u002Fpydantic-ai\u002F",{"title":628,"url":629},"pydantic\u002Fpydantic-ai on GitHub: licence, stars and README","https:\u002F\u002Fgithub.com\u002Fpydantic\u002Fpydantic-ai",{"title":631,"url":632},"Pydantic AI release notes: 2.51.0 to 2.55.0 and the 2.52.0 security fix","https:\u002F\u002Fgithub.com\u002Fpydantic\u002Fpydantic-ai\u002Freleases",{"title":634,"url":635},"Pydantic AI version policy","https:\u002F\u002Fai.pydantic.dev\u002Fversion-policy\u002F",{"title":637,"url":638},"Pydantic AI upgrade guide: the V2 betas and the stable release","https:\u002F\u002Fai.pydantic.dev\u002Fproject\u002Fchangelog\u002F",{"title":640,"url":641},"Pydantic AI output: tool output, retries and output validators","https:\u002F\u002Fai.pydantic.dev\u002Foutput\u002F",{"title":643,"url":644},"Pydantic AI dependencies and RunContext","https:\u002F\u002Fai.pydantic.dev\u002Fdependencies\u002F",{"title":646,"url":647},"Pydantic AI models and providers","https:\u002F\u002Fai.pydantic.dev\u002Fmodels\u002Foverview\u002F",{"title":649,"url":650},"Pydantic AI unit testing with TestModel and FunctionModel","https:\u002F\u002Fai.pydantic.dev\u002Ftesting\u002F",{"title":652,"url":653},"Pydantic AI durable execution overview","https:\u002F\u002Fai.pydantic.dev\u002Fdurable_execution\u002Foverview\u002F",{"title":655,"url":656},"Pydantic Logfire: observability for Pydantic AI","https:\u002F\u002Fai.pydantic.dev\u002Flogfire\u002F",{"title":658,"url":659},"Pydantic Logfire pricing","https:\u002F\u002Fpydantic.dev\u002Fpricing",{"title":661,"url":662},"Pydantic security and compliance","https:\u002F\u002Fpydantic.dev\u002Fsecurity",{"title":664,"url":665},"OpenAI Agents SDK documentation","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002F",{"title":667,"url":668},"OpenAI Agents SDK tracing","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Ftracing\u002F",{"title":670,"url":671},"openai\u002Fopenai-agents-python on GitHub","https:\u002F\u002Fgithub.com\u002Fopenai\u002Fopenai-agents-python",{"title":673,"url":674},"openai-agents 0.23.1 on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fopenai-agents\u002F",{"title":676,"url":677},"langchain-ai\u002Flanggraph on GitHub","https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Flanggraph",{"title":679,"url":680},"langgraph 1.2.14 on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Flanggraph\u002F",{"title":682,"url":683},"LangGraph overview","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Foverview",{"title":685,"url":686},"LangGraph interrupts","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Finterrupts","\u002Fimages\u002Fblog\u002Fpydantic-ai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fpydantic-ai\u002Fog.jpg",[109,110,111],"Pydantic AI review: typed Python agents with validated output","Pydantic AI 2.55 gives Python agents typed dependencies, validated output and OpenTelemetry tracing. What 2.0 changed, what Logfire costs and who should pick it.","Cover art for the Pydantic AI review: a typed agent loop with tools, a validation gate and a retry path back to the model.","https:\u002F\u002Fai.pydantic.dev","MIT · free library, Logfire Team from $49 a month",{"slug":696,"published":697,"minutes":698,"category":7,"tags":699,"keywords":704,"about":713,"sources":724,"cover":806,"og":807,"expertise":107,"locales":808,"lang":109,"title":809,"description":810,"coverAlt":811,"url":812,"pricing":813,"kind":116},"gemini-cli","2026-10-07",9,[700,701,13,702,703],"Terminal agent","Gemini","Sandboxing","Data protection",[705,706,707,708,709,710,711,712],"gemini cli","gemini cli free tier","gemini cli pricing","gemini cli data privacy","gemini cli vs claude code","antigravity cli","gemini cli github action","gemini cli sandbox",[714,717,720,723],{"name":715,"url":716},"Gemini CLI","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli",{"name":718,"url":719},"Vertex AI","https:\u002F\u002Fcloud.google.com\u002Fvertex-ai",{"name":721,"url":722},"Apache License","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FApache_License",{"name":30,"url":31},[725,728,731,734,736,739,742,745,748,751,754,757,760,763,766,769,772,775,778,780,783,786,789,792,795,798,800,803],{"title":726,"url":727},"Google Developers Blog: transitioning Gemini CLI to Antigravity CLI","https:\u002F\u002Fdevelopers.googleblog.com\u002Fen\u002Fan-important-update-transitioning-gemini-cli-to-antigravity-cli\u002F",{"title":729,"url":730},"Gemini CLI: quotas and pricing","https:\u002F\u002Fgeminicli.com\u002Fdocs\u002Fresources\u002Fquota-and-pricing\u002F",{"title":732,"url":733},"Gemini CLI: licence, terms of service and privacy notices","https:\u002F\u002Fgeminicli.com\u002Fdocs\u002Fresources\u002Ftos-privacy",{"title":735,"url":716},"GitHub: google-gemini\u002Fgemini-cli, the repository and README",{"title":737,"url":738},"Gemini CLI changelog: v0.63.0 released 6 October 2026","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli\u002Fblob\u002Fmain\u002Fdocs\u002Fchangelogs\u002Flatest.md",{"title":740,"url":741},"Gemini CLI reference: flags and approval modes","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli\u002Fblob\u002Fmain\u002Fdocs\u002Fcli\u002Fcli-reference.md",{"title":743,"url":744},"Gemini CLI configuration: settings.json and approval defaults","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli\u002Fblob\u002Fmain\u002Fdocs\u002Freference\u002Fconfiguration.md",{"title":746,"url":747},"Gemini CLI sandboxing","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli\u002Fblob\u002Fmain\u002Fdocs\u002Fcli\u002Fsandbox.md",{"title":749,"url":750},"Gemini CLI: context files (GEMINI.md)","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli\u002Fblob\u002Fmain\u002Fdocs\u002Fcli\u002Fgemini-md.md",{"title":752,"url":753},"Gemini CLI: MCP servers","https:\u002F\u002Fgithub.com\u002Fgoogle-gemini\u002Fgemini-cli\u002Fblob\u002Fmain\u002Fdocs\u002Ftools\u002Fmcp-server.md",{"title":755,"url":756},"Gemini API Additional Terms of Service","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fterms",{"title":758,"url":759},"Gemini Developer API pricing","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fdocs\u002Fpricing",{"title":761,"url":762},"Gemini Code Assist FAQs","https:\u002F\u002Fdocs.cloud.google.com\u002Fgemini\u002Fdocs\u002Fcodeassist\u002Ffaqs",{"title":764,"url":765},"Vertex AI data governance and zero data retention","https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fdata-governance",{"title":767,"url":768},"Vertex AI data residency","https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Flearn\u002Fdata-residency",{"title":770,"url":771},"Vertex AI locations and endpoints","https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Flearn\u002Flocations",{"title":773,"url":774},"run-gemini-cli: the GitHub Action for Gemini CLI","https:\u002F\u002Fgithub.com\u002Fgoogle-github-actions\u002Frun-gemini-cli",{"title":776,"url":777},"Antigravity CLI migration guide","https:\u002F\u002Fantigravity.google\u002Fdocs\u002Fcli\u002Fgcli-migration",{"title":779,"url":83},"Claude pricing",{"title":781,"url":782},"Claude Code: data usage","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fdata-usage",{"title":784,"url":785},"Claude Code: setup and plan requirements","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fsetup",{"title":787,"url":788},"Claude Code: permission modes","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fpermission-modes",{"title":790,"url":791},"Claude Code: sandboxing","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fsandboxing",{"title":793,"url":794},"Claude Code licence (LICENSE.md)","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fclaude-code\u002Fblob\u002Fmain\u002FLICENSE.md",{"title":796,"url":797},"OpenAI Codex pricing","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fpricing",{"title":799,"url":89},"OpenAI Codex CLI repository",{"title":801,"url":802},"Codex: agent approvals and security","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fagent-approvals-security",{"title":804,"url":805},"Codex: sandboxing","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fconcepts\u002Fsandboxing","\u002Fimages\u002Fblog\u002Fgemini-cli\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fgemini-cli\u002Fog.jpg",[109,110,111],"Gemini CLI review: open source, but no longer free for individuals","Gemini CLI stays Apache-2.0 and gets releases, but the free individual route closed on 18 June 2026. What remains: Code Assist, billed API keys and Vertex AI.","Cover art for the Gemini CLI review: a prompt loop through an approval gate and a sandbox, with the free lane closed","https:\u002F\u002Fwww.geminicli.com","Apache-2.0 · free individual tier closed 18 June 2026",{"slug":815,"published":697,"minutes":6,"category":7,"tags":816,"keywords":822,"about":831,"sources":842,"cover":916,"og":917,"expertise":107,"locales":918,"lang":109,"title":919,"description":920,"coverAlt":921,"url":834,"pricing":922,"kind":923},"temporal",[817,818,819,820,821],"Durable execution","Workflow orchestration","Human in the loop","AI agents","Self-hosting",[823,824,825,826,827,828,829,830],"temporal workflow","temporal ai agents","durable execution for ai agents","temporal vs langgraph","temporal cloud pricing","temporal openai agents sdk","self-hosted temporal","temporal determinism rules",[832,835,838,839],{"name":833,"url":834},"Temporal","https:\u002F\u002Ftemporal.io",{"name":836,"url":837},"Workflow engine","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWorkflow_engine",{"name":27,"url":28},{"name":840,"url":841},"Human-in-the-loop","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHuman-in-the-loop",[843,846,849,852,855,858,861,864,867,870,873,876,879,882,885,888,891,894,897,900,903,906,907,910,913],{"title":844,"url":845},"Temporal Cloud pricing","https:\u002F\u002Ftemporal.io\u002Fpricing",{"title":847,"url":848},"Temporal Cloud pricing documentation","https:\u002F\u002Fdocs.temporal.io\u002Fcloud\u002Fpricing",{"title":850,"url":851},"OpenAI Agents SDK integration for Python","https:\u002F\u002Fdocs.temporal.io\u002Fdevelop\u002Fpython\u002Fintegrations\u002Fopenai-agents",{"title":853,"url":854},"Workflow definition and determinism","https:\u002F\u002Fdocs.temporal.io\u002Fworkflow-definition",{"title":856,"url":857},"Retry policies","https:\u002F\u002Fdocs.temporal.io\u002Fencyclopedia\u002Fretry-policies",{"title":859,"url":860},"Activity timeouts","https:\u002F\u002Fdocs.temporal.io\u002Fencyclopedia\u002Fdetecting-activity-failures",{"title":862,"url":863},"Cloud actions reference","https:\u002F\u002Fdocs.temporal.io\u002Fcloud\u002Factions",{"title":865,"url":866},"Event history limits","https:\u002F\u002Fdocs.temporal.io\u002Fworkflow-execution\u002Fevent",{"title":868,"url":869},"Message passing in Python: signals, queries and updates","https:\u002F\u002Fdocs.temporal.io\u002Fdevelop\u002Fpython\u002Fmessage-passing",{"title":871,"url":872},"Human-in-the-loop AI agent sample","https:\u002F\u002Fdocs.temporal.io\u002Fai\u002Fcookbook\u002Fhuman-in-the-loop-python",{"title":874,"url":875},"Cloud security model","https:\u002F\u002Fdocs.temporal.io\u002Fcloud\u002Fsecurity",{"title":877,"url":878},"Cloud service regions","https:\u002F\u002Fdocs.temporal.io\u002Fcloud\u002Fregions",{"title":880,"url":881},"Data processing agreement","https:\u002F\u002Ftemporal.io\u002Fdpa",{"title":883,"url":884},"Self-hosted deployment guide","https:\u002F\u002Fdocs.temporal.io\u002Fself-hosted-guide\u002Fdeployment",{"title":886,"url":887},"Self-hosted production checklist","https:\u002F\u002Fdocs.temporal.io\u002Fself-hosted-guide\u002Fproduction-checklist",{"title":889,"url":890},"Self-hosted visibility stores","https:\u002F\u002Fdocs.temporal.io\u002Fself-hosted-guide\u002Fvisibility",{"title":892,"url":893},"Temporal Server architecture","https:\u002F\u002Fdocs.temporal.io\u002Ftemporal-service\u002Ftemporal-server",{"title":895,"url":896},"Temporal server LICENSE file","https:\u002F\u002Fgithub.com\u002Ftemporalio\u002Ftemporal\u002Fblob\u002Fmain\u002FLICENSE",{"title":898,"url":899},"Temporal integrations index","https:\u002F\u002Fdocs.temporal.io\u002Fintegrations",{"title":901,"url":902},"LangGraph integration with Temporal","https:\u002F\u002Fdocs.temporal.io\u002Fdevelop\u002Fpython\u002Fintegrations\u002Flanggraph",{"title":904,"url":905},"LangGraph persistence","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Fpersistence",{"title":685,"url":686},{"title":908,"url":909},"Self-hosted guide and development server","https:\u002F\u002Fdocs.temporal.io\u002Fself-hosted-guide",{"title":911,"url":912},"Python SDK reference: workflow.wait_condition","https:\u002F\u002Fpython.temporal.io\u002Ftemporalio.workflow._context.html",{"title":914,"url":915},"Python SDK reference: ApplicationError","https:\u002F\u002Fpython.temporal.io\u002Ftemporalio.exceptions.ApplicationError.html","\u002Fimages\u002Fblog\u002Ftemporal\u002Fcover.webp","\u002Fimages\u002Fblog\u002Ftemporal\u002Fog.jpg",[109,110,111],"Temporal review: durable agents that survive crashes and wait for people","Temporal runs agent loops as durable workflows, so retries, approvals and timers survive crashes. Costs, data residency, determinism rules and when to skip it.","Cover art for the Temporal review: a workflow that retries model calls as activities and pauses until a person signs off.","MIT · self-hosting free · Cloud pay-as-you-go from $0","Durable execution platform",{"slug":925,"published":926,"minutes":927,"category":7,"tags":928,"keywords":932,"about":941,"sources":953,"cover":1044,"og":1045,"expertise":107,"locales":1046,"lang":109,"title":1047,"description":1048,"coverAlt":1049,"url":944,"pricing":1050,"kind":1051},"e2b","2026-10-02",12,[929,820,930,821,931],"Code sandbox","Firecracker","EU data residency",[933,934,935,936,937,938,939,940],"e2b sandbox","e2b pricing","e2b vs modal","e2b self-hosted","e2b code interpreter","ai agent code execution sandbox","e2b eu region","firecracker microvm for ai agents",[942,945,947,950],{"name":943,"url":944},"E2B","https:\u002F\u002Fe2b.dev",{"name":930,"url":946},"https:\u002F\u002Ffirecracker-microvm.github.io\u002F",{"name":948,"url":949},"Kernel-based Virtual Machine","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FKernel-based_Virtual_Machine",{"name":951,"url":952},"General Data Protection Regulation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGeneral_Data_Protection_Regulation",[954,957,960,963,966,969,972,975,978,981,984,987,990,993,996,999,1002,1005,1008,1011,1014,1017,1020,1023,1026,1029,1032,1035,1038,1041],{"title":955,"url":956},"E2B documentation: isolated sandboxes for agents","https:\u002F\u002Fe2b.dev\u002Fdocs",{"title":958,"url":959},"E2B billing and limits: plans, rates and API rate limits","https:\u002F\u002Fdocs.e2b.dev\u002Fbilling",{"title":961,"url":962},"E2B: how long a sandbox lives, timeouts and auto-pause","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Fsandbox-lifetime",{"title":964,"url":965},"E2B: sandbox persistence, pause and resume","https:\u002F\u002Fdocs.e2b.dev\u002Fsandbox\u002Fpersistence",{"title":967,"url":968},"E2B: how template builds work, snapshots and kernel versions","https:\u002F\u002Fdocs.e2b.dev\u002Ftemplate\u002Fhow-it-works",{"title":970,"url":971},"E2B: template quickstart, build limits and templates versus snapshots","https:\u002F\u002Fdocs.e2b.dev\u002Ftemplate\u002Fquickstart",{"title":973,"url":974},"E2B: running your first sandbox","https:\u002F\u002Fdocs.e2b.dev\u002Fquickstart",{"title":976,"url":977},"E2B: run Python code in the code interpreter","https:\u002F\u002Fdocs.e2b.dev\u002Fcode-interpreting\u002Fsupported-languages\u002Fpython",{"title":979,"url":980},"E2B: internet access controls","https:\u002F\u002Fdocs.e2b.dev\u002Fnetwork\u002Finternet-access",{"title":982,"url":983},"E2B: secrets injected by the egress proxy","https:\u002F\u002Fdocs.e2b.dev\u002Fsecrets",{"title":985,"url":986},"E2B: is it SOC 2 compliant? Trust Center, DPA and sub-processors","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Fsecurity-and-compliance",{"title":988,"url":989},"E2B: can I run sandboxes in the EU?","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Feu-region",{"title":991,"url":992},"E2B: egress IP ranges and regions","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Fegress-ip-ranges",{"title":994,"url":995},"E2B: does it support GPUs?","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Fgpu-support",{"title":997,"url":998},"E2B: how to calculate the price of a sandbox, with current rates","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Fcalculate-sandbox-price",{"title":1000,"url":1001},"E2B: Volumes beta limitations: file locking, mounts and regions","https:\u002F\u002Fdocs.e2b.dev\u002Ffaq\u002Fvolumes-beta-limitations",{"title":1003,"url":1004},"E2B: bring your own cloud (BYOC)","https:\u002F\u002Fdocs.e2b.dev\u002Fbyoc",{"title":1006,"url":1007},"E2B changelog: E2B Embed, the access token change and weekly releases","https:\u002F\u002Fdocs.e2b.dev\u002Fchangelog",{"title":1009,"url":1010},"E2B Embed: self-hosting on one machine (README)","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Fruntime\u002Ftree\u002Fmain\u002Fembed",{"title":1012,"url":1013},"E2B Embed: Docker Compose requirements and sizing","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Fruntime\u002Fblob\u002Fmain\u002Fembed\u002Fcompose\u002FREADME.md",{"title":1015,"url":1016},"E2B SDK repository, Apache-2.0","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002FE2B",{"title":1018,"url":1019},"Firecracker: lightweight microVMs on KVM","https:\u002F\u002Fgithub.com\u002Ffirecracker-microvm\u002Ffirecracker",{"title":1021,"url":1022},"Modal pricing: per-second CPU, memory and GPU","https:\u002F\u002Fmodal.com\u002Fpricing",{"title":1024,"url":1025},"Modal sandboxes: lifetime, gVisor and VM runtimes","https:\u002F\u002Fmodal.com\u002Fdocs\u002Fguide\u002Fsandbox",{"title":1027,"url":1028},"Modal region selection: region codes","https:\u002F\u002Fmodal.com\u002Fdocs\u002Fguide\u002Fregion-selection",{"title":1030,"url":1031},"Daytona pricing: vCPU and GiB rates","https:\u002F\u002Fwww.daytona.io\u002Fpricing",{"title":1033,"url":1034},"Daytona documentation: sandbox isolation and start time","https:\u002F\u002Fwww.daytona.io\u002Fdocs\u002Fen\u002F",{"title":1036,"url":1037},"Daytona regions: shared United States and Europe","https:\u002F\u002Fwww.daytona.io\u002Fdocs\u002Fen\u002Fregions\u002F",{"title":1039,"url":1040},"Docker security: kernel namespaces, control groups and capabilities","https:\u002F\u002Fdocs.docker.com\u002Fengine\u002Fsecurity\u002F",{"title":1042,"url":1043},"Regulation (EU) 2016\u002F679 (GDPR), EUR-Lex","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2016\u002F679\u002Foj","\u002Fimages\u002Fblog\u002Fe2b\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fe2b\u002Fog.jpg",[109,110,111],"E2B review: Firecracker sandboxes for agent code, billed per second","E2B runs each agent run in its own Firecracker microVM, with pause, resume and per-second billing. Where it fits, what the EU option costs and where self-hosting stops.","Cover art for the E2B review: agent code goes through an API into a microVM sandbox, and the result comes back into the loop.","Usage-based · Hobby free, Pro from $150 a month","Code execution sandbox",1791636874607]