[{"data":1,"prerenderedAt":2907},["ShallowReactive",2],{"guide-en-ai-agents\u002Fclaude-managed-agents":3,"guide-siblings-en-ai-agenter":976,"guide-alt-en-ai-agents\u002Fclaude-managed-agents":2904},{"id":4,"title":5,"author":6,"body":7,"date":948,"description":949,"extension":950,"faq":951,"meta":967,"navigation":968,"order":272,"path":969,"readTime":970,"seo":971,"stem":972,"topic":973,"translationId":974,"updated":948,"__hash__":975},"guides\u002Fguides\u002Fai-agents\u002Fclaude-managed-agents.md","Claude Managed Agents: what it is, what it costs and when to use it","Walma Engineering",{"type":8,"value":9,"toc":937},"minimark",[10,14,25,30,42,45,53,57,117,120,129,133,140,232,235,359,375,394,401,405,408,452,461,483,486,516,535,550,554,557,563,577,580,643,646,659,663,760,767,771,774,816,824,828,831,889,893,921,933],[11,12,13],"p",{},"Claude Managed Agents is Anthropic's answer to a problem every team building agents runs into: the model is the easy part, the infrastructure around it is not. You need a loop that calls tools, a sandbox where the agent can run code without touching your servers, state that survives a pause, a way to stop it mid-task, and logs of what it did. Managed Agents gives you that as a hosted service.",[11,15,16,17,24],{},"This guide covers what it is, how the pieces fit together, what it costs, how permissions work, and what a European company should check before putting real data through it. Facts are from Anthropic's documentation as of October 2026. The product is in beta, so verify the details against the ",[18,19,23],"a",{"href":20,"rel":21},"https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fmanaged-agents\u002Foverview",[22],"nofollow","official docs"," before you build on them.",[26,27,29],"h2",{"id":28},"what-claude-managed-agents-is","What Claude Managed Agents is",[11,31,32,33,37,38,41],{},"Anthropic offers two ways to build with Claude on the API. The ",[34,35,36],"strong",{},"Messages API"," gives you direct model access: you send a prompt, get a response, and build any agent loop yourself. ",[34,39,40],{},"Claude Managed Agents"," is a pre-built, configurable agent harness that runs in Anthropic's infrastructure and is aimed at long-running and asynchronous work.",[11,43,44],{},"In practice that means Claude can read and write files, run shell commands, search and fetch from the web, and call MCP servers, inside a sandbox, for minutes or hours, while your application streams the events and can steer or interrupt it. The harness handles prompt caching and compaction (summarising old context so long sessions keep fitting in the window) for you.",[11,46,47,48,52],{},"It is in beta. Every request needs the ",[49,50,51],"code",{},"managed-agents-2026-04-01"," beta header (the SDKs set it automatically), and access is enabled by default for API accounts. It is also available on Claude Platform on AWS, with some differences in features.",[26,54,56],{"id":55},"the-four-core-concepts","The four core concepts",[58,59,60,73],"table",{},[61,62,63],"thead",{},[64,65,66,70],"tr",{},[67,68,69],"th",{},"Concept",[67,71,72],{},"What it is",[74,75,76,87,97,107],"tbody",{},[64,77,78,84],{},[79,80,81],"td",{},[34,82,83],{},"Agent",[79,85,86],{},"The model, system prompt, tools, MCP servers and skills. Created once, referenced by ID.",[64,88,89,94],{},[79,90,91],{},[34,92,93],{},"Environment",[79,95,96],{},"Where sessions run: an Anthropic-managed cloud sandbox, or a self-hosted sandbox on your own infrastructure.",[64,98,99,104],{},[79,100,101],{},[34,102,103],{},"Session",[79,105,106],{},"A running agent instance in an environment, working on one task.",[64,108,109,114],{},[79,110,111],{},[34,112,113],{},"Events",[79,115,116],{},"What flows between your app and the agent: user messages, tool results, status updates. Streamed over server-sent events and stored server-side.",[11,118,119],{},"The flow is: create an agent, create an environment, start a session that references both, send a user message, and read the event stream as Claude works. You can send more messages mid-run to redirect it, or interrupt it. Sessions are stateful: the filesystem and conversation history persist, so a session can pause for hours and pick up where it left off.",[11,121,122,123,128],{},"Anthropic also lists ",[18,124,127],{"href":125,"rel":126},"https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fmanaged-agents\u002Fscheduled-deployments",[22],"scheduled deployments"," for running an agent on a cron schedule, and multiagent sessions where a coordinator delegates work to other agents.",[26,130,132],{"id":131},"built-in-tools-and-mcp-servers","Built-in tools and MCP servers",[11,134,135,136,139],{},"The built-in toolset is called ",[49,137,138],{},"agent_toolset_20260401"," and contains:",[58,141,142,155],{},[61,143,144],{},[64,145,146,149,152],{},[67,147,148],{},"Tool",[67,150,151],{},"Name",[67,153,154],{},"What it does",[74,156,157,170,190,206,219],{},[64,158,159,162,167],{},[79,160,161],{},"Bash",[79,163,164],{},[49,165,166],{},"bash",[79,168,169],{},"Runs shell commands in the sandbox",[64,171,172,175,187],{},[79,173,174],{},"Read, Write, Edit",[79,176,177,180,181,180,184],{},[49,178,179],{},"read",", ",[49,182,183],{},"write",[49,185,186],{},"edit",[79,188,189],{},"File operations in the sandbox",[64,191,192,195,203],{},[79,193,194],{},"Glob, Grep",[79,196,197,180,200],{},[49,198,199],{},"glob",[49,201,202],{},"grep",[79,204,205],{},"Finding files and searching their contents",[64,207,208,211,216],{},[79,209,210],{},"Web fetch",[79,212,213],{},[49,214,215],{},"web_fetch",[79,217,218],{},"Fetches a URL",[64,220,221,224,229],{},[79,222,223],{},"Web search",[79,225,226],{},[49,227,228],{},"web_search",[79,230,231],{},"Searches the web",[11,233,234],{},"All are on by default. You can switch individual tools off, or start with everything off and enable only what the job needs:",[236,237,242],"pre",{"className":238,"code":239,"language":240,"meta":241,"style":241},"language-json shiki shiki-themes github-dark","{\n  \"type\": \"agent_toolset_20260401\",\n  \"default_config\": { \"enabled\": false },\n  \"configs\": [\n    { \"name\": \"read\", \"enabled\": true },\n    { \"name\": \"grep\", \"enabled\": true }\n  ]\n}\n","json","",[49,243,244,253,270,290,299,324,347,353],{"__ignoreMap":241},[245,246,249],"span",{"class":247,"line":248},"line",1,[245,250,252],{"class":251},"s95oV","{\n",[245,254,256,260,263,267],{"class":247,"line":255},2,[245,257,259],{"class":258},"sDLfK","  \"type\"",[245,261,262],{"class":251},": ",[245,264,266],{"class":265},"sU2Wk","\"agent_toolset_20260401\"",[245,268,269],{"class":251},",\n",[245,271,273,276,279,282,284,287],{"class":247,"line":272},3,[245,274,275],{"class":258},"  \"default_config\"",[245,277,278],{"class":251},": { ",[245,280,281],{"class":258},"\"enabled\"",[245,283,262],{"class":251},[245,285,286],{"class":258},"false",[245,288,289],{"class":251}," },\n",[245,291,293,296],{"class":247,"line":292},4,[245,294,295],{"class":258},"  \"configs\"",[245,297,298],{"class":251},": [\n",[245,300,302,305,308,310,313,315,317,319,322],{"class":247,"line":301},5,[245,303,304],{"class":251},"    { ",[245,306,307],{"class":258},"\"name\"",[245,309,262],{"class":251},[245,311,312],{"class":265},"\"read\"",[245,314,180],{"class":251},[245,316,281],{"class":258},[245,318,262],{"class":251},[245,320,321],{"class":258},"true",[245,323,289],{"class":251},[245,325,327,329,331,333,336,338,340,342,344],{"class":247,"line":326},6,[245,328,304],{"class":251},[245,330,307],{"class":258},[245,332,262],{"class":251},[245,334,335],{"class":265},"\"grep\"",[245,337,180],{"class":251},[245,339,281],{"class":258},[245,341,262],{"class":251},[245,343,321],{"class":258},[245,345,346],{"class":251}," }\n",[245,348,350],{"class":247,"line":349},7,[245,351,352],{"class":251},"  ]\n",[245,354,356],{"class":247,"line":355},8,[245,357,358],{"class":251},"}\n",[11,360,361,363,364,366,367,370,371,374],{},[49,362,228],{}," and ",[49,365,215],{}," accept ",[49,368,369],{},"allowed_domains"," or ",[49,372,373],{},"blocked_domains",", up to 64 domains per list. That is the only way to restrict them in Managed Agents. The organisation-level web settings in the Console apply to the Messages API, not to Managed Agents sessions.",[11,376,377,380,381,384,385,388,389,393],{},[34,378,379],{},"MCP servers"," are declared on the agent by name and URL (remote servers only, up to 20 per agent). Credentials are not part of the agent definition. They live in ",[34,382,383],{},"vaults",", which you attach when you start a session with ",[49,386,387],{},"vault_ids",". Vaults support static bearer tokens and MCP OAuth. Keeping secrets out of the agent definition is the right design: the same agent can run for different teams with different credentials. You can also limit an MCP toolset to the specific tools you have reviewed, which is worth doing for servers that expose dozens of tools. For background on MCP itself, see our ",[18,390,392],{"href":391},"\u002Fen\u002Fguides\u002Fmcp","MCP guide",".",[11,395,396,397,400],{},"You can add ",[34,398,399],{},"custom tools"," as well. Claude emits a structured call, your application runs it and sends back the result. Permission policies do not apply to custom tools, because your code decides whether to run them.",[26,402,404],{"id":403},"permission-policies-who-approves-what","Permission policies: who approves what",[11,406,407],{},"This is the part that matters most for production use. Every server-executed tool, built-in or MCP, has a permission policy:",[58,409,410,420],{},[61,411,412],{},[64,413,414,417],{},[67,415,416],{},"Policy",[67,418,419],{},"Behaviour",[74,421,422,432,442],{},[64,423,424,429],{},[79,425,426],{},[49,427,428],{},"always_allow",[79,430,431],{},"Runs without confirmation.",[64,433,434,439],{},[79,435,436],{},[49,437,438],{},"always_ask",[79,440,441],{},"The session pauses until you approve or deny the call.",[64,443,444,449],{},[79,445,446],{},[49,447,448],{},"auto",[79,450,451],{},"The server evaluates each call and runs it, denies it as high-risk, or pauses for approval.",[11,453,454,455,457,458,460],{},"The defaults are deliberately different. The built-in toolset defaults to ",[49,456,428],{},". MCP toolsets default to ",[49,459,438],{},", so a tool that a server operator adds later does not start running in your environment without anyone noticing.",[11,462,463,464,467,468,471,472,370,475,478,479,482],{},"When a call needs approval, the session goes idle with ",[49,465,466],{},"stop_reason.type: \"requires_action\"",", and you answer with a ",[49,469,470],{},"user.tool_confirmation"," event (",[49,473,474],{},"allow",[49,476,477],{},"deny",", optionally with a ",[49,480,481],{},"deny_message"," explaining why). Webhooks can notify you when a session is waiting. Idle time while waiting does not count as billable runtime.",[11,484,485],{},"Two details from Anthropic's documentation are worth taking literally:",[487,488,489,500],"ul",{},[490,491,492,497,498,393],"li",{},[34,493,494,496],{},[49,495,448],{}," is not a human checkpoint."," If the server judges a call safe, it runs before anyone sees it. For anything irreversible (deleting data, sending email, writing to production), use ",[49,499,438],{},[490,501,502,505,506,508,509,512,513,515],{},[34,503,504],{},"User messages count as intent."," Under ",[49,507,448],{},", what you post in ",[49,510,511],{},"user.message"," can lead the server to allow a call it would otherwise deny. Tool results and fetched pages do not count. If you forward untrusted end-user input as user messages, that input can get calls approved. Put ",[49,514,438],{}," on the tools you would not let that end user run unreviewed.",[11,517,518,519,522,523,180,525,370,528,530,531,534],{},"Every tool-use event carries ",[49,520,521],{},"evaluated_permission"," (",[49,524,474],{},[49,526,527],{},"ask",[49,529,477],{},") and an ",[49,532,533],{},"evaluation"," object recording which policy decided. Store those in your audit log, since they show why each call ran.",[11,536,537,538,540,541,543,544,546,547,549],{},"A sensible starting point for a business agent: the agent toolset on ",[49,539,428],{}," with ",[49,542,166],{}," on ",[49,545,438],{},", MCP servers on ",[49,548,438],{}," with only reviewed tools enabled, and web tools limited to an allowlist.",[26,551,553],{"id":552},"what-claude-managed-agents-costs","What Claude Managed Agents costs",[11,555,556],{},"Pricing has two parts.",[11,558,559,562],{},[34,560,561],{},"Tokens"," at normal Claude API rates. Prompt caching multipliers apply. The Batch API discount does not, because sessions are interactive. Web search costs $10 per 1,000 searches.",[11,564,565,568,569,572,573,576],{},[34,566,567],{},"Session runtime"," at ",[34,570,571],{},"$0.08 per session-hour",", measured to the millisecond, and only while the session status is ",[49,574,575],{},"running",". Time spent idle (waiting for your next message or a tool confirmation), rescheduling or terminated is free. Runtime replaces the container-hour billing of the code execution tool, so you are not charged twice.",[11,578,579],{},"Anthropic's own worked example: a one-hour coding session on Claude Opus 5 with 50,000 input tokens and 15,000 output tokens.",[58,581,582,595],{},[61,583,584],{},[64,585,586,589,592],{},[67,587,588],{},"Line item",[67,590,591],{},"Calculation",[67,593,594],{},"Cost",[74,596,597,608,619,629],{},[64,598,599,602,605],{},[79,600,601],{},"Input tokens",[79,603,604],{},"50,000 × $5 \u002F 1M",[79,606,607],{},"$0.25",[64,609,610,613,616],{},[79,611,612],{},"Output tokens",[79,614,615],{},"15,000 × $25 \u002F 1M",[79,617,618],{},"$0.375",[64,620,621,623,626],{},[79,622,567],{},[79,624,625],{},"1 hour × $0.08",[79,627,628],{},"$0.08",[64,630,631,636,638],{},[79,632,633],{},[34,634,635],{},"Total",[79,637],{},[79,639,640],{},[34,641,642],{},"$0.705",[11,644,645],{},"With 40,000 of the input tokens served from cache, the total drops to about $0.53.",[11,647,648,649,543,652,654,655,393],{},"The takeaway: runtime is rarely the cost driver. Tokens are, and they grow with how much context the agent reads, how many tool calls it makes and which model it runs on. A session that reads large files or web pages on Opus can cost many times the example. The usual levers apply: a smaller model where it is good enough, prompt caching, ",[49,650,651],{},"max_content_tokens",[49,653,215],{},", and a budget per agent that someone actually watches. We cover the same levers for Claude Code in ",[18,656,658],{"href":657},"\u002Fen\u002Fguides\u002Fclaude-code\u002Fclaude-code-pricing","Claude Code pricing and cost control",[26,660,662],{"id":661},"managed-agents-the-agent-sdk-or-the-messages-api","Managed Agents, the Agent SDK or the Messages API?",[58,664,665,678],{},[61,666,667],{},[64,668,669,671,673,676],{},[67,670],{},[67,672,36],{},[67,674,675],{},"Claude Agent SDK",[67,677,40],{},[74,679,680,696,712,728,744],{},[64,681,682,687,690,693],{},[79,683,684],{},[34,685,686],{},"What you get",[79,688,689],{},"Model access",[79,691,692],{},"An agent loop as a library",[79,694,695],{},"A hosted agent harness",[64,697,698,703,706,709],{},[79,699,700],{},[34,701,702],{},"Who runs the loop",[79,704,705],{},"You build it",[79,707,708],{},"You run it",[79,710,711],{},"Anthropic",[64,713,714,719,722,725],{},[79,715,716],{},[34,717,718],{},"Sandbox and state",[79,720,721],{},"Yours to build",[79,723,724],{},"Yours to operate",[79,726,727],{},"Hosted (or self-hosted sandbox)",[64,729,730,735,738,741],{},[79,731,732],{},[34,733,734],{},"Best for",[79,736,737],{},"Custom flows, full control",[79,739,740],{},"Agents inside your own infrastructure",[79,742,743],{},"Long-running, stateful, asynchronous agents",[64,745,746,751,754,757],{},[79,747,748],{},[34,749,750],{},"Data residency control",[79,752,753],{},"Highest (also via Bedrock, Vertex, Foundry)",[79,755,756],{},"High, depends on where you run it",[79,758,759],{},"Limited in beta (see below)",[11,761,762,763,393],{},"Rule of thumb: if the agent's job takes minutes or hours, needs a filesystem, and you would rather not operate sandboxes, Managed Agents saves real engineering time. If the agent handles regulated data, has to run in a specific region, or must sit behind your existing controls, the SDK or the Messages API through an EU cloud region gives you more control today. For a framework-neutral walkthrough of building an agent, see ",[18,764,766],{"href":765},"\u002Fen\u002Fguides\u002Fai-agents\u002Fhow-to-build-ai-agents","How to build AI agents",[26,768,770],{"id":769},"where-the-data-lives-what-eu-companies-should-check","Where the data lives: what EU companies should check",[11,772,773],{},"This is where Managed Agents is weakest for European companies right now, and it is easy to miss because the docs spread it across several pages.",[487,775,776,796,804,810],{},[490,777,778,781,782,363,785,788,789,792,793,795],{},[34,779,780],{},"Inference geo",": only ",[49,783,784],{},"us",[49,786,787],{},"global"," are available. You can pin an agent's ",[49,790,791],{},"inference_geo"," to ",[49,794,784],{}," (at 1.1× token price), but there is no EU option.",[490,797,798,801,802,393],{},[34,799,800],{},"Workspace geo",", where data is stored at rest: currently only ",[49,803,784],{},[490,805,806,809],{},[34,807,808],{},"Zero Data Retention",": Managed Agents is not eligible, because sessions store conversation history, sandbox state and outputs server-side. You can delete sessions and uploaded files through the API.",[490,811,812,815],{},[34,813,814],{},"Self-hosted sandboxes",": tool execution and the sandbox filesystem stay on infrastructure you control. Model calls and session history still go through Anthropic, and attached memory stores stay with Anthropic and are copied to your sandbox.",[11,817,818,819,823],{},"None of this rules Managed Agents out. An agent that works on public documentation or open-source code may have no personal data in it at all. But for an agent that reads customer tickets, HR records or invoices, the question \"where is this processed and stored, and under which agreement?\" needs a clear answer from your DPO before go-live, the same as for any other processor. Our ",[18,820,822],{"href":821},"\u002Fen\u002Fguides\u002Fai-agents\u002Fwhat-is-ai-governance","AI governance guide"," covers how to set up that review without stalling every project.",[26,825,827],{"id":826},"a-production-checklist","A production checklist",[11,829,830],{},"Before a Managed Agents session touches real systems:",[832,833,834,840,846,856,862,871,877,883],"ol",{},[490,835,836,839],{},[34,837,838],{},"One narrow job per agent",", with a written definition of done and a test set of real cases.",[490,841,842,845],{},[34,843,844],{},"Least privilege",": only the tools the job needs, MCP tools limited to the reviewed list, web tools on an allowlist.",[490,847,848,853,854,393],{},[34,849,850,852],{},[49,851,438],{}," on anything irreversible",", not ",[49,855,448],{},[490,857,858,861],{},[34,859,860],{},"Credentials in vaults",", scoped per team or customer, rotated on a schedule.",[490,863,864,867,868,870],{},[34,865,866],{},"Audit log",": store every tool-use event with ",[49,869,521],{}," and the evaluation reason.",[490,872,873,876],{},[34,874,875],{},"Budget and alerting"," per agent, on tokens, not only on runtime.",[490,878,879,882],{},[34,880,881],{},"Data classification",": decide which data the agent may see, given US inference and storage in the beta.",[490,884,885,888],{},[34,886,887],{},"An owner",": one named person accountable for each agent, as for any system with write access.",[26,890,892],{"id":891},"where-to-go-next","Where to go next",[487,894,895,902,907,914],{},[490,896,897,901],{},[18,898,900],{"href":899},"\u002Fen\u002Fguides\u002Fai-agents","What is agentic AI?",": the concepts behind agents.",[490,903,904,906],{},[18,905,766],{"href":765},": the decisions in the right order, whatever the platform.",[490,908,909,913],{},[18,910,912],{"href":911},"\u002Fen\u002Fguides\u002Fmcp\u002Fmcp-gateway","What is an MCP gateway?",": one control point for many agents and MCP servers.",[490,915,916,920],{},[18,917,919],{"href":918},"\u002Fen\u002Fguides\u002Fmcp\u002Fmcp-security-best-practices","MCP security best practices",": what to lock down before agents get tools.",[11,922,923,924,928,929,393],{},"If your agents need to run with EU inference, budgets per team and one log across Claude, Codex and approved MCP servers, inside your own Azure tenant, see the ",[18,925,927],{"href":926},"\u002Fen\u002Fai-hub","Walma AI Hub"," or our ",[18,930,932],{"href":931},"\u002Fen\u002Fcustom-solutions","custom solutions",[934,935,936],"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 pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}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);}",{"title":241,"searchDepth":255,"depth":272,"links":938},[939,940,941,942,943,944,945,946,947],{"id":28,"depth":255,"text":29},{"id":55,"depth":255,"text":56},{"id":131,"depth":255,"text":132},{"id":403,"depth":255,"text":404},{"id":552,"depth":255,"text":553},{"id":661,"depth":255,"text":662},{"id":769,"depth":255,"text":770},{"id":826,"depth":255,"text":827},{"id":891,"depth":255,"text":892},"2026-10-06","Claude Managed Agents is Anthropic's hosted agent harness: agents, environments, sessions and events, built-in tools, MCP servers and permission policies. Here is how it works, what a session costs, where the data lives, and what a European company should check before putting it in production.","md",[952,955,958,961,964],{"q":953,"a":954},"What is Claude Managed Agents?","Claude Managed Agents is a hosted agent harness from Anthropic. Instead of writing your own agent loop, tool execution and sandbox, you define an agent (model, system prompt, tools, MCP servers, skills), pick an environment, and start sessions through the API. Claude then runs tools such as bash, file operations and web search inside a sandbox and streams events back to your application. It is in beta and requires the managed-agents-2026-04-01 beta header.",{"q":956,"a":957},"How much does Claude Managed Agents cost?","You pay normal Claude API token prices plus $0.08 per session-hour of runtime. Runtime is measured to the millisecond and only accrues while the session status is running, not while it is idle waiting for a message or a tool approval. Web search inside a session costs $10 per 1,000 searches. Anthropic's own example, a one-hour coding session on Claude Opus 5 with 50,000 input and 15,000 output tokens, comes to about $0.71, of which runtime is $0.08.",{"q":959,"a":960},"What is the difference between Claude Managed Agents and the Claude Agent SDK?","The Agent SDK gives you the agent loop as a library that you run on your own infrastructure, so you operate the runtime, sandbox, state and scaling yourself. Managed Agents runs the same kind of loop as a service: Anthropic hosts the harness, stores session history and sandbox state server-side, and you interact through sessions and events. Choose the SDK when you need full control over where everything runs, and Managed Agents when you want long-running, stateful agents without building the infrastructure.",{"q":962,"a":963},"Can Claude Managed Agents run in the EU?","Not fully, at the time of writing. Inference geo can be set to us or global, workspace geo (where data is stored at rest) is currently only available as us, and Managed Agents is not eligible for Zero Data Retention because sessions are stateful. Self-hosted sandboxes keep tool execution and the sandbox filesystem on your own infrastructure, but session history and model calls still go through Anthropic. Check the current data residency documentation before you process personal data.",{"q":965,"a":966},"Can Claude Managed Agents ask for approval before running a tool?","Yes. Each tool or toolset has a permission policy: always_allow runs calls without confirmation, always_ask pauses the session until you send a user.tool_confirmation event, and auto lets the server evaluate each call and allow, deny or pause it. Built-in tools default to always_allow and MCP tools default to always_ask. Anthropic notes that auto is not a human checkpoint, so use always_ask on anything irreversible.",{},true,"\u002Fguides\u002Fai-agents\u002Fclaude-managed-agents","10 min read",{"title":5,"description":949},"guides\u002Fai-agents\u002Fclaude-managed-agents","ai-agenter","claude-managed-agents","hjmRl0YkFBBy6rscfWvRHWcVME6fbkOlkLj82UUasSc",[977,1389,1835,2250],{"id":978,"title":979,"author":6,"body":980,"date":1363,"description":1364,"extension":950,"faq":1365,"meta":1381,"navigation":968,"order":1382,"path":1383,"readTime":1384,"seo":1385,"stem":1386,"topic":973,"translationId":1387,"updated":1363,"__hash__":1388},"guides\u002Fguides\u002Fai-agents\u002Findex.md","What is agentic AI? Agents, autonomy and how they differ from generative AI",{"type":8,"value":981,"toc":1352},[982,985,988,992,997,1000,1020,1023,1027,1030,1038,1041,1047,1055,1066,1072,1078,1084,1088,1091,1162,1165,1169,1175,1181,1187,1191,1202,1208,1214,1220,1226,1230,1233,1259,1262,1266,1273,1277,1280,1286,1292,1301,1307,1313,1319,1321],[11,983,984],{},"Agentic AI is the phrase of the year, and like most such phrases it is used for everything from a chatbot with a plugin to a fleet of autonomous systems. This guide gives it a precise meaning, explains how an agent actually works, draws the line against generative AI, chatbots and robotic process automation, and covers what changes when agents get real access to a company's systems.",[11,986,987],{},"It is written by a team that runs agents in production inside EU environments, so the second half is practical rather than speculative.",[26,989,991],{"id":990},"the-definition","The definition",[11,993,994],{},[34,995,996],{},"Agentic AI is AI that is given a goal and works towards it in multiple steps, choosing and using tools along the way, and checking its own progress.",[11,998,999],{},"Three words in that sentence do the work.",[487,1001,1002,1008,1014],{},[490,1003,1004,1007],{},[34,1005,1006],{},"Goal."," You do not ask an agent a question; you give it an outcome. \"Fix the failing login test.\" \"Find out why the invoice for customer 4821 is late and draft a reply.\"",[490,1009,1010,1013],{},[34,1011,1012],{},"Tools."," The agent can act: run code, search the web, query a database, read a ticket, send a message. Without tools it is a chatbot.",[490,1015,1016,1019],{},[34,1017,1018],{},"Multiple steps with checking."," The agent decides what to do, does it, looks at what happened, and decides again. It can recover from a wrong turn without being told.",[11,1021,1022],{},"The word \"agentic\" is an adjective; \"AI agent\" is the noun. In practice they refer to the same thing: the system that does the loop.",[26,1024,1026],{"id":1025},"how-an-agent-works","How an agent works",[11,1028,1029],{},"Strip away the framework and every agent is the same loop:",[236,1031,1036],{"className":1032,"code":1034,"language":1035},[1033],"language-text","goal + context  →  model decides next action  →  tool runs  →  result  →  model decides again  →  …  →  done or ask a human\n","text",[49,1037,1034],{"__ignoreMap":241},[11,1039,1040],{},"The pieces around that loop are what distinguish a demo from a production system.",[11,1042,1043,1046],{},[34,1044,1045],{},"The model."," A large language model (Claude, GPT, Gemini and others) is the decision-maker. It reads everything in its context and outputs the next action, usually as a structured tool call.",[11,1048,1049,1051,1052,1054],{},[34,1050,1012],{}," Functions the model can invoke. Read a file, run a query, open a browser, call an API. The Model Context Protocol has become the standard way to give agents tools; our ",[18,1053,392],{"href":391}," explains it.",[11,1056,1057,1060,1061,1065],{},[34,1058,1059],{},"Instructions."," The system prompt and any task-specific know-how. Increasingly this is packaged as ",[18,1062,1064],{"href":1063},"\u002Fen\u002Fguides\u002Fskills","skills",": folders of instructions the agent loads when relevant.",[11,1067,1068,1071],{},[34,1069,1070],{},"Memory."," Short-term memory is the context window. Longer-term memory is whatever the agent writes down: notes files, a database, a vector store it can search.",[11,1073,1074,1077],{},[34,1075,1076],{},"Guardrails."," What the agent is allowed to do, which actions need approval, what it must never touch. These live outside the model, in the harness or a gateway, because a rule inside the prompt can be argued out of.",[11,1079,1080,1083],{},[34,1081,1082],{},"Orchestration."," For bigger tasks, one agent delegates to others: a planner spawns a researcher and a coder, collects their results, and reports back. Subagents give isolation and parallelism.",[26,1085,1087],{"id":1086},"agentic-ai-vs-generative-ai","Agentic AI vs generative AI",[11,1089,1090],{},"Generative AI produces content from a prompt. Agentic AI pursues a goal with actions. The relationship is containment: every agent has a generative model at its centre, and the agent adds a loop, tools and memory around it.",[58,1092,1093,1105],{},[61,1094,1095],{},[64,1096,1097,1099,1102],{},[67,1098],{},[67,1100,1101],{},"Generative AI",[67,1103,1104],{},"Agentic AI",[74,1106,1107,1118,1129,1140,1151],{},[64,1108,1109,1112,1115],{},[79,1110,1111],{},"Input",[79,1113,1114],{},"A prompt",[79,1116,1117],{},"A goal plus access to tools",[64,1119,1120,1123,1126],{},[79,1121,1122],{},"Output",[79,1124,1125],{},"Text, code, image",[79,1127,1128],{},"Actions and their outcomes, plus a report",[64,1130,1131,1134,1137],{},[79,1132,1133],{},"Steps",[79,1135,1136],{},"One",[79,1138,1139],{},"Many, with self-correction",[64,1141,1142,1145,1148],{},[79,1143,1144],{},"Needs",[79,1146,1147],{},"A model",[79,1149,1150],{},"A model, tools, instructions, guardrails",[64,1152,1153,1156,1159],{},[79,1154,1155],{},"Failure mode",[79,1157,1158],{},"Wrong answer",[79,1160,1161],{},"Wrong action",[11,1163,1164],{},"That last row is why governance matters more for agents. A wrong answer is read by a person before it does damage. A wrong action has already happened.",[26,1166,1168],{"id":1167},"agents-vs-chatbots-vs-rpa","Agents vs chatbots vs RPA",[11,1170,1171,1174],{},[34,1172,1173],{},"Chatbots"," converse. Modern ones use the same models as agents and may have a few tools, but the human drives every step. An agent is handed the wheel.",[11,1176,1177,1180],{},[34,1178,1179],{},"RPA"," (robotic process automation) follows a fixed script: click here, copy this, paste there. It is deterministic and brittle; a changed button breaks it. An agent understands the goal and adapts. The two are converging: agents call RPA-style automations as tools, and RPA vendors are adding models to handle exceptions.",[11,1182,1183,1186],{},[34,1184,1185],{},"Workflows"," (n8n, Zapier, Make) are graphs of steps a human designed. An agent is a workflow that designs its own steps at runtime. Many production systems are hybrids: a fixed workflow with an agent inside one node where judgment is needed.",[26,1188,1190],{"id":1189},"where-agents-are-used-today","Where agents are used today",[11,1192,1193,1196,1197,1201],{},[34,1194,1195],{},"Software development"," is the most mature use. Coding agents such as ",[18,1198,1200],{"href":1199},"\u002Fen\u002Fguides\u002Fclaude-code","Claude Code"," and Codex take a task, read the codebase, make changes across files, run tests and open a pull request. This is where most companies first encounter agentic AI, because developers adopt it themselves.",[11,1203,1204,1207],{},[34,1205,1206],{},"Customer service."," Agents that read a ticket, look up the order, check the policy, issue the refund or escalate. The quality is bounded by the knowledge base and the tools they are given.",[11,1209,1210,1213],{},[34,1211,1212],{},"Research and analysis."," Search, read, extract, compile. Due diligence, competitor monitoring, literature review. Agents are good at breadth; humans still own the judgment.",[11,1215,1216,1219],{},[34,1217,1218],{},"Operations."," Triage an alert, gather logs, run the runbook, open the incident. IT and security operations are adopting agents quickly because the steps are well defined and the tools already exist.",[11,1221,1222,1225],{},[34,1223,1224],{},"Back office."," Reconcile invoices, chase missing data, prepare reports. Usually a workflow with an agent for the exceptions.",[26,1227,1229],{"id":1228},"levels-of-autonomy","Levels of autonomy",[11,1231,1232],{},"Not every agent should run unattended. A useful scale:",[832,1234,1235,1241,1247,1253],{},[490,1236,1237,1240],{},[34,1238,1239],{},"Suggest."," The agent proposes; a human executes. Safe, low value.",[490,1242,1243,1246],{},[34,1244,1245],{},"Act with approval."," The agent executes read-only steps itself and asks before each write. Where most companies should start.",[490,1248,1249,1252],{},[34,1250,1251],{},"Act within bounds."," The agent executes within a policy: these tools, these systems, this budget, this time window. Approval only for exceptions.",[490,1254,1255,1258],{},[34,1256,1257],{},"Autonomous."," The agent runs end to end and reports. Appropriate for well-understood, reversible tasks with a good log.",[11,1260,1261],{},"The right level depends on how reversible the action is and how good the log is, not on how smart the model is.",[26,1263,1265],{"id":1264},"how-to-build-an-agent","How to build an agent",[11,1267,1268,1269,1272],{},"You rarely start from scratch: you either extend an existing agent (Claude Code, ChatGPT, Copilot) with tools and skills, drop an agent step into a workflow tool, or build on an agent SDK. Whatever you build on, the hard parts are the same: which tools the agent gets, how narrow their permissions are, what needs approval, and where the log goes. Our step-by-step guide on ",[18,1270,1271],{"href":765},"how to build AI agents"," walks through each decision with a worked example.",[26,1274,1276],{"id":1275},"running-agents-in-a-company","Running agents in a company",[11,1278,1279],{},"The questions that decide whether a pilot becomes production:",[11,1281,1282,1285],{},[34,1283,1284],{},"Access."," Agents need credentials to act. Where do they live, who scoped them, how are they revoked? Laptops full of API keys are how it starts and how it goes wrong.",[11,1287,1288,1291],{},[34,1289,1290],{},"Data residency."," The model call and every tool call carry data. For EU companies under GDPR, where those calls are processed is a legal question. Models and tools both need to run in the right region.",[11,1293,1294,1297,1298,393],{},[34,1295,1296],{},"Injection."," Agents read content others control: tickets, emails, web pages, documents. Instructions hidden in that content can steer the agent. Read-only sessions for untrusted content and approval on writes are the practical defences; see our ",[18,1299,1300],{"href":918},"MCP security guide",[11,1302,1303,1306],{},[34,1304,1305],{},"Cost."," Agents consume tokens in loops, and a stuck loop can burn a month's budget in an hour. Per-user and per-team budgets with hard caps are not optional.",[11,1308,1309,1312],{},[34,1310,1311],{},"Audit."," \"What did the agent do at 14:32?\" must have an answer: user, agent, model, tool, arguments, result, approval.",[11,1314,1315,1316,393],{},"All five are easiest to solve in one place that every agent goes through. That is what an AI gateway is for, and it is what Walma AI Hub does: models, MCP servers and skills behind one policy engine and one log, inside the customer's own Azure tenant in an EU region. If you are moving agents from pilot to production, ",[18,1317,1318],{"href":926},"book a walkthrough",[26,1320,892],{"id":891},[487,1322,1323,1329,1335,1341,1346],{},[490,1324,1325,1328],{},[18,1326,1327],{"href":391},"Model Context Protocol: the complete guide",": how agents get tools.",[490,1330,1331,1334],{},[18,1332,1333],{"href":1063},"Claude skills explained",": how agents get know-how.",[490,1336,1337,1340],{},[18,1338,1339],{"href":1199},"What is Claude Code?",": the coding agent most teams start with.",[490,1342,1343,1345],{},[18,1344,912],{"href":911},": the control point for agent traffic.",[490,1347,1348,1351],{},[18,1349,1350],{"href":821},"What is AI governance?",": the rules, owners and controls around AI use.",{"title":241,"searchDepth":255,"depth":272,"links":1353},[1354,1355,1356,1357,1358,1359,1360,1361,1362],{"id":990,"depth":255,"text":991},{"id":1025,"depth":255,"text":1026},{"id":1086,"depth":255,"text":1087},{"id":1167,"depth":255,"text":1168},{"id":1189,"depth":255,"text":1190},{"id":1228,"depth":255,"text":1229},{"id":1264,"depth":255,"text":1265},{"id":1275,"depth":255,"text":1276},{"id":891,"depth":255,"text":892},"2026-09-11","Agentic AI is AI that pursues a goal by planning, using tools and checking its own results, rather than answering a single prompt. Here is what an AI agent actually is, how agents work under the hood, how they differ from chatbots and RPA, where they are used, and what it takes to run them safely in a company.",[1366,1369,1372,1375,1378],{"q":1367,"a":1368},"What is agentic AI in simple terms?","Agentic AI is software that is given a goal rather than a single question, and works towards it in several steps: it plans, uses tools such as search, code or business systems, looks at the results, and adjusts until the goal is reached or it needs a human. A chatbot answers; an agent does.",{"q":1370,"a":1371},"What is the difference between agentic AI and generative AI?","Generative AI produces content in response to a prompt: text, code, images. Agentic AI uses a generative model as its brain but wraps it in a loop with tools, memory and a goal, so it can take actions in the world. Every agent contains a generative model; not every generative model is an agent.",{"q":1373,"a":1374},"What are examples of AI agents?","Coding agents such as Claude Code and Codex that implement a feature across many files; customer-service agents that resolve tickets by looking up orders and issuing refunds; research agents that search, read and compile a report; and operations agents that triage alerts, open tickets and run runbooks.",{"q":1376,"a":1377},"How do AI agents work?","An agent runs a loop: read the goal and context, decide the next action, call a tool, observe the result, repeat. The model does the deciding; tools do the acting; instructions, memory and guardrails shape what the model is allowed to decide. Standards such as the Model Context Protocol define how tools are connected.",{"q":1379,"a":1380},"Are AI agents safe to use in a company?","They can be, with the same controls you would apply to a new employee with system access: least-privilege credentials, approval for irreversible actions, a log of what was done, and a clear list of which tools and data the agent may touch. Most incidents so far came from agents with too much access reading untrusted content.",{},0,"\u002Fguides\u002Fai-agents","12 min read",{"title":979,"description":1364},"guides\u002Fai-agents\u002Findex","agentic-ai-guide","GkoIpyU9nZbTw33i23gUkjtg_YrVS_YK-sHSGooXegU",{"id":1390,"title":1391,"author":6,"body":1392,"date":1810,"description":1811,"extension":950,"faq":1812,"meta":1828,"navigation":968,"order":248,"path":1829,"readTime":1830,"seo":1831,"stem":1832,"topic":973,"translationId":1833,"updated":1810,"__hash__":1834},"guides\u002Fguides\u002Fai-agents\u002Fhow-to-build-ai-agents.md","How to build AI agents: a practical guide from first job to production",{"type":8,"value":1393,"toc":1797},[1394,1397,1402,1406,1409,1412,1438,1445,1448,1452,1455,1461,1464,1483,1487,1490,1516,1523,1527,1538,1541,1567,1570,1574,1577,1583,1587,1590,1625,1631,1635,1638,1641,1645,1648,1654,1660,1666,1672,1675,1679,1685,1691,1711,1716,1721,1727,1733,1736,1740,1743,1749,1755,1761,1763,1789],[11,1395,1396],{},"Most guides on how to build AI agents start with a framework. That is backwards. The framework is the cheapest decision you will make, and you can change it later. What decides whether an agent is useful is the job you give it, the tools it can reach, the rules around those tools, and whether you can tell when it is wrong.",[11,1398,1399,1400,393],{},"This guide walks through those decisions in the order you should make them, then shows them applied to a real example. If you want the background first (what an agent is and how it differs from a chatbot), read ",[18,1401,900],{"href":899},[26,1403,1405],{"id":1404},"step-1-pick-one-job-and-define-done","Step 1: Pick one job and define done",[11,1407,1408],{},"An agent that \"helps the finance team\" will never ship. An agent that \"finds invoices more than 14 days overdue, drafts a reminder in the customer's language, and puts it in an approval queue\" can ship this month.",[11,1410,1411],{},"Write down four things before you touch a model:",[487,1413,1414,1420,1426,1432],{},[490,1415,1416,1419],{},[34,1417,1418],{},"The trigger."," What starts a run: a schedule, a new ticket, a message, a button.",[490,1421,1422,1425],{},[34,1423,1424],{},"The inputs."," Which systems and documents the agent needs to read.",[490,1427,1428,1431],{},[34,1429,1430],{},"The output."," What exists when it is finished: a draft, an updated record, a report, a question to a human.",[490,1433,1434,1437],{},[34,1435,1436],{},"Success criteria."," How you will judge a run as correct. \"The reminder names the right invoice, amount and due date, and uses the agreed tone\" is testable. \"Good reminders\" is not.",[11,1439,1440,1441,1444],{},"Also write down what the agent must ",[34,1442,1443],{},"not"," do. That list becomes your guardrails in step 6.",[11,1446,1447],{},"Good first jobs share three traits: they happen often, the steps are mostly known but need judgment in the middle, and a mistake is cheap to catch before it matters.",[26,1449,1451],{"id":1450},"step-2-understand-the-loop-you-are-building","Step 2: Understand the loop you are building",[11,1453,1454],{},"Every agent, whatever it is built on, runs the same loop:",[236,1456,1459],{"className":1457,"code":1458,"language":1035},[1033],"goal + context → model chooses an action → tool runs → result goes back to the model → repeat → finish or ask a human\n",[49,1460,1458],{"__ignoreMap":241},[11,1462,1463],{},"The model decides. Tools act. Your code (or the platform's) runs the loop, enforces limits, and decides when to stop. Three limits belong in every loop from day one:",[487,1465,1466,1472,1477],{},[490,1467,1468,1471],{},[34,1469,1470],{},"A maximum number of steps",", so a confused agent stops instead of circling.",[490,1473,1474],{},[34,1475,1476],{},"A token or cost budget per run.",[490,1478,1479,1482],{},[34,1480,1481],{},"A defined way to give up",": return what it found and ask a human, rather than guessing.",[26,1484,1486],{"id":1485},"step-3-choose-the-model","Step 3: Choose the model",[11,1488,1489],{},"Use a capable frontier model while you prove the job works, then see whether a smaller, cheaper one passes the same tests. Things that matter more than leaderboard position:",[487,1491,1492,1498,1504,1510],{},[490,1493,1494,1497],{},[34,1495,1496],{},"Tool-calling reliability."," Does it call the right tool with valid arguments, and recover when a call fails?",[490,1499,1500,1503],{},[34,1501,1502],{},"Instruction following"," over long runs, not just the first turn.",[490,1505,1506,1509],{},[34,1507,1508],{},"Where it runs."," For an EU company, which region processes the prompt and the tool results is a legal question, not a detail. See step 9.",[490,1511,1512,1515],{},[34,1513,1514],{},"Cost per successful run",", not cost per token. A cheap model that needs three retries is not cheap.",[11,1517,1518,1519,1522],{},"Keep the model behind an abstraction you control (an SDK setting, a config value or a gateway route) so you can swap it when a better or cheaper one appears. Our ",[18,1520,1521],{"href":926},"AI Hub"," exists partly for this reason: one endpoint, many models.",[26,1524,1526],{"id":1525},"step-4-give-it-tools-through-mcp","Step 4: Give it tools through MCP",[11,1528,1529,1530,1532,1533,1537],{},"Tools are what turn a model into an agent. The Model Context Protocol has become the standard way to provide them: a tool provider runs an MCP server, and any MCP-capable agent can discover and call its tools. Many SaaS vendors now ship official servers, so you often connect rather than build. Our ",[18,1531,392],{"href":391}," covers the protocol, and the ",[18,1534,1536],{"href":1535},"\u002Fen\u002Fguides\u002Fmcp\u002Fbest-mcp-servers","best MCP servers"," guide lists what exists.",[11,1539,1540],{},"Rules that save pain later:",[487,1542,1543,1549,1555,1561],{},[490,1544,1545,1548],{},[34,1546,1547],{},"Fewer, sharper tools."," Every tool you add is something the model can pick wrongly. Start with the minimum for the job.",[490,1550,1551,1554],{},[34,1552,1553],{},"Read and write as separate tools",", ideally separate credentials. It makes approval rules simple.",[490,1556,1557,1560],{},[34,1558,1559],{},"Clear names and descriptions."," The model chooses tools from their descriptions. \"search_overdue_invoices(days_overdue)\" beats \"query(sql)\".",[490,1562,1563,1566],{},[34,1564,1565],{},"Return what the model needs, not everything."," A 40 KB JSON blob per call fills the context and degrades decisions.",[11,1568,1569],{},"When no server exists for an internal system, a small in-house MCP server with three or four narrow tools is usually a few days of work and reusable by every agent you build afterwards.",[26,1571,1573],{"id":1572},"step-5-write-the-instructions","Step 5: Write the instructions",[11,1575,1576],{},"The system prompt is the agent's job description. Include the goal, the steps you expect, how to handle the known edge cases, the output format, and when to stop and ask. Write it like onboarding notes for a capable new colleague, with examples of good output.",[11,1578,1579,1580,1582],{},"Know-how that applies to several agents, such as your tone of voice, your invoice policy or how to read your CRM, is better packaged as ",[18,1581,1064],{"href":1063},": folders of instructions and scripts the agent loads only when relevant. Skills keep the base prompt short and let you update a procedure in one place.",[26,1584,1586],{"id":1585},"step-6-add-guardrails-outside-the-model","Step 6: Add guardrails outside the model",[11,1588,1589],{},"A rule written only in the prompt is a request, and content the agent reads can argue it out of following it. Real guardrails live in the code or platform around the model:",[487,1591,1592,1598,1604,1613,1619],{},[490,1593,1594,1597],{},[34,1595,1596],{},"Least privilege."," The agent's credentials can do exactly what the job needs. A reminder agent reads invoices and creates drafts; it cannot change amounts or send payments.",[490,1599,1600,1603],{},[34,1601,1602],{},"Approval for irreversible actions."," Sending an email, issuing a refund, deleting a record: a human approves until the log shows months of correct behaviour.",[490,1605,1606,1609,1610,1612],{},[34,1607,1608],{},"Isolate untrusted input."," Emails, web pages and tickets can contain instructions aimed at your agent (prompt injection). Keep sessions that read untrusted content away from write tools. Our ",[18,1611,1300],{"href":918}," goes deeper.",[490,1614,1615,1618],{},[34,1616,1617],{},"Budgets and rate limits"," per agent and per user.",[490,1620,1621,1624],{},[34,1622,1623],{},"A complete log",": who triggered the run, which model, every tool call with arguments and result, every approval. If you cannot answer \"what did the agent do at 14:32?\", you are not ready for production.",[11,1626,1627,1628,393],{},"If you run more than one agent, these controls are easier to enforce once, centrally, than in every agent's code. That is the job of an ",[18,1629,1630],{"href":911},"MCP gateway",[26,1632,1634],{"id":1633},"step-7-evaluate-before-you-trust-it","Step 7: Evaluate before you trust it",[11,1636,1637],{},"Collect 20 to 50 real cases from history, including the awkward ones, with the correct outcome for each. Run the agent against them every time you change the model, the prompt, a tool or a skill. Score against the success criteria from step 1.",[11,1639,1640],{},"Check three things: did it reach the right outcome, did it take a sensible path (no unnecessary tool calls, no attempts at forbidden actions), and did it stop and ask when it should have. Once live, keep sampling real runs for review and add every failure you find to the test set.",[26,1642,1644],{"id":1643},"step-8-choose-how-to-build-it","Step 8: Choose how to build it",[11,1646,1647],{},"With the decisions above made, the build option mostly picks itself.",[11,1649,1650,1653],{},[34,1651,1652],{},"Use an existing agent."," Claude, ChatGPT and Microsoft Copilot can be given tools and instructions, and coding agents such as Claude Code take tools through MCP and know-how through skills. Best when a person drives each run.",[11,1655,1656,1659],{},[34,1657,1658],{},"No-code and workflow builders."," n8n, Copilot Studio and similar tools let you put an agent step inside a designed workflow. Good for back-office jobs with clear boundaries, and easy for non-developers to maintain.",[11,1661,1662,1665],{},[34,1663,1664],{},"Agent SDKs and frameworks."," The Claude Agent SDK and the OpenAI Agents SDK provide a production-grade loop, tool handling and subagents for their vendors' models. Model-neutral frameworks such as LangGraph model the agent as an explicit graph of steps, which suits flows you want tightly controlled. Choose this route when the agent runs unattended or calls your own systems.",[11,1667,1668,1671],{},[34,1669,1670],{},"A managed or gateway-based agent."," The agent runs behind a gateway that already holds the models, the MCP connections, the policies and the log. You write the job, tools and instructions; access, approvals, budgets and audit come from the platform. This is the route that scales when the second and third agents arrive.",[11,1673,1674],{},"Whatever you choose, the tools, instructions, skills and test set are portable. That is where your effort should go.",[26,1676,1678],{"id":1677},"a-worked-example-the-overdue-invoice-agent","A worked example: the overdue-invoice agent",[11,1680,1681,1684],{},[34,1682,1683],{},"Job."," Every weekday morning, find customer invoices more than 14 days overdue and draft a reminder for each.",[11,1686,1687,1690],{},[34,1688,1689],{},"Done."," One draft per overdue invoice in an approval queue, with the correct invoice number, amount, due date and contact, written in the customer's language using the agreed tone. Invoices with an open dispute are flagged instead of drafted.",[11,1692,1693,1695,1696,363,1699,1702,1703,1706,1707,1710],{},[34,1694,1012],{}," ",[49,1697,1698],{},"list_overdue_invoices",[49,1700,1701],{},"get_customer"," (read-only, accounting system), ",[49,1704,1705],{},"get_open_tickets"," (read-only, support system), ",[49,1708,1709],{},"create_draft"," (write, but only to the approval queue). No send tool at all.",[11,1712,1713,1715],{},[34,1714,1059],{}," The reminder policy as a skill: first, second and final reminder wording, when to mention late fees, which customers have a named account manager who must be copied.",[11,1717,1718,1720],{},[34,1719,1076],{}," Read-only accounting credentials. The agent cannot send; a person reviews and sends from the queue. Run budget capped. Every run logged.",[11,1722,1723,1726],{},[34,1724,1725],{},"Evaluation."," Thirty past invoices with known correct outcomes, including disputed ones, partial payments and customers who changed contact person.",[11,1728,1729,1732],{},[34,1730,1731],{},"Rollout."," Two weeks where finance reviews every draft and logs corrections, then fixes to the skill, then a decision on whether first reminders for small amounts can be sent automatically.",[11,1734,1735],{},"Nothing in that example depends on a particular framework. Most of the work is in the tools, the policy skill and the test set.",[26,1737,1739],{"id":1738},"running-agents-in-an-eu-company","Running agents in an EU company",[11,1741,1742],{},"Three questions come up in every European rollout.",[11,1744,1745,1748],{},[34,1746,1747],{},"Where does the data go?"," Each model call carries the prompt and whatever the tools returned: customer names, amounts, ticket text. Under GDPR, where that is processed and by whom needs to be settled with your DPO. Running models in an EU region and keeping tool traffic inside your own environment is the cleanest answer.",[11,1750,1751,1754],{},[34,1752,1753],{},"Does the AI Act apply?"," It depends on the use case, not on the fact that you used an agent. Most internal productivity agents fall outside the high-risk categories, while some uses, such as AI that screens job applicants or decides access to essential services, are listed as high-risk and carry real obligations. Map each agent's use case against the regulation, and get legal advice for anything near the high-risk list.",[11,1756,1757,1760],{},[34,1758,1759],{},"Who is accountable?"," Name an owner for each agent, as you would for any system with write access, and make sure the log can reconstruct what it did.",[26,1762,892],{"id":891},[487,1764,1765,1770,1774,1778,1783],{},[490,1766,1767,1769],{},[18,1768,900],{"href":899},": the concepts behind this guide.",[490,1771,1772,1328],{},[18,1773,1327],{"href":391},[490,1775,1776,1334],{},[18,1777,1333],{"href":1063},[490,1779,1780,1782],{},[18,1781,912],{"href":911},": one control point for many agents.",[490,1784,1785,1788],{},[18,1786,40],{"href":1787},"\u002Fen\u002Fguides\u002Fai-agents\u002Fclaude-managed-agents",": Anthropic's hosted harness, if you would rather not run the loop yourself.",[11,1790,1791,1792,1794,1795,393],{},"If you want help building the first one, from the tools and the evaluation set to running it inside your own Azure tenant in the EU, see our ",[18,1793,932],{"href":931}," or the ",[18,1796,927],{"href":926},{"title":241,"searchDepth":255,"depth":272,"links":1798},[1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809],{"id":1404,"depth":255,"text":1405},{"id":1450,"depth":255,"text":1451},{"id":1485,"depth":255,"text":1486},{"id":1525,"depth":255,"text":1526},{"id":1572,"depth":255,"text":1573},{"id":1585,"depth":255,"text":1586},{"id":1633,"depth":255,"text":1634},{"id":1643,"depth":255,"text":1644},{"id":1677,"depth":255,"text":1678},{"id":1738,"depth":255,"text":1739},{"id":891,"depth":255,"text":892},"2026-10-02","How to build an AI agent that does real work: define the job and success criteria, pick a model, give it tools through MCP, write its instructions, add guardrails and evaluation, and choose between no-code builders, agent SDKs and a managed gateway. With a worked example.",[1813,1816,1819,1822,1825],{"q":1814,"a":1815},"How do I build an AI agent from scratch?","Start with one narrow job and a written definition of done. Then pick a model, give it the smallest set of tools that can do the job (ideally through MCP servers), write its instructions, add guardrails such as read-only credentials and approval for writes, and test it against twenty or thirty real cases before anyone relies on it. The loop itself is the easy part; agent SDKs give it to you.",{"q":1817,"a":1818},"Do I need to code to build an AI agent?","Not always. No-code builders and workflow tools such as n8n or Copilot Studio let you assemble an agent from blocks, and the agent features in Claude and ChatGPT can be given tools and instructions without code. You need code when the agent has to run unattended, call your own systems, or meet audit requirements that a builder cannot express.",{"q":1820,"a":1821},"What is the best framework for building AI agents?","There is no single best one. The Claude Agent SDK and the OpenAI Agents SDK give you a production loop tied to one vendor's models; LangGraph and similar frameworks are model-neutral and good at explicit multi-step graphs. Choose by where the agent will run and who maintains it, not by benchmark claims. The tools, instructions and guardrails you write carry over between frameworks.",{"q":1823,"a":1824},"How long does it take to build an AI agent?","A working prototype of a narrow agent takes days. Getting it to production takes longer, mostly because of access, approvals, evaluation and logging rather than the model. Plan for the second part to be the larger one.",{"q":1826,"a":1827},"How do I make an AI agent safe?","Give it least-privilege credentials, require human approval for anything irreversible, keep untrusted content (emails, web pages, tickets) away from write tools, cap its budget, and log every tool call with its arguments and result. Put these rules in the harness or a gateway, not only in the prompt.",{},"\u002Fguides\u002Fai-agents\u002Fhow-to-build-ai-agents","11 min read",{"title":1391,"description":1811},"guides\u002Fai-agents\u002Fhow-to-build-ai-agents","how-to-build-ai-agents","dO2XO3XwrJVMLTrMuGZPH5gbiXbRDRF1fJKEH0Xbe_k",{"id":1836,"title":1837,"author":6,"body":1838,"date":1810,"description":2227,"extension":950,"faq":2228,"meta":2244,"navigation":968,"order":255,"path":2245,"readTime":970,"seo":2246,"stem":2247,"topic":973,"translationId":2248,"updated":1810,"__hash__":2249},"guides\u002Fguides\u002Fai-agents\u002Fwhat-is-ai-governance.md","What is AI governance? A practical definition, the building blocks and how to start",{"type":8,"value":1839,"toc":2216},[1840,1843,1846,1848,1853,1856,1870,1873,1877,1880,1886,1892,1898,1904,1911,1915,1918,1986,1990,1993,1999,2005,2011,2014,2018,2021,2041,2044,2048,2051,2054,2071,2083,2087,2092,2106,2111,2129,2134,2148,2156,2160,2192,2194],[11,1841,1842],{},"Most organisations already use AI at scale. The question is whether anyone decided how. AI governance is the answer to that question: a deliberate set of rules, roles and controls that says which AI the organisation uses, for what, with which data, and who answers for the result.",[11,1844,1845],{},"This guide defines AI governance without the jargon, explains why it has moved from a nice-to-have to an operational need, lists the building blocks, maps the main frameworks, and ends with a plan you can start next week.",[26,1847,991],{"id":990},[11,1849,1850],{},[34,1851,1852],{},"AI governance is how an organisation decides which AI systems it uses, for which purposes, with which data and under whose accountability, and how it enforces and evidences those decisions.",[11,1854,1855],{},"Two halves matter equally:",[487,1857,1858,1864],{},[490,1859,1860,1863],{},[34,1861,1862],{},"Decisions."," Policy, roles, risk appetite, approved tools, rules for data. This is the part most guides cover.",[490,1865,1866,1869],{},[34,1867,1868],{},"Enforcement and evidence."," The technical controls that make the policy true in practice (access control, logging, data protection, budgets) and the records that prove it. A policy that nothing enforces is a wish, not governance.",[11,1871,1872],{},"AI governance sits next to data governance and IT governance and borrows from both, but it adds problems neither was built for: models that change behind an API, output that can be wrong in convincing ways, agents that take actions, and a regulation written specifically for AI.",[26,1874,1876],{"id":1875},"why-it-matters-now","Why it matters now",[11,1878,1879],{},"Three years ago AI governance was a topic for ethics committees. Four things moved it onto the operational agenda.",[11,1881,1882,1885],{},[34,1883,1884],{},"Shadow AI."," When there is no approved option, people use personal accounts for ChatGPT, Claude or Gemini, often with company data. The organisation then has no visibility into what is shared, no contract covering it and no way to switch it off when someone leaves.",[11,1887,1888,1891],{},[34,1889,1890],{},"Data leakage."," Customer data, source code, contracts and HR material end up in prompts. Whether that data is retained, used for training or processed outside the EU depends on the account type and the provider's terms, which individual users rarely check.",[11,1893,1894,1897],{},[34,1895,1896],{},"Cost without an owner."," Seat licences, API keys and usage-based billing spread across teams and credit cards. Nobody can answer \"what do we spend on AI and what do we get for it?\"",[11,1899,1900,1903],{},[34,1901,1902],{},"Regulation."," The EU AI Act is in force and parts of it already apply. Customers and auditors increasingly ask suppliers how they use AI, and \"we don't really know\" is not an answer that survives a security questionnaire.",[11,1905,1906,1907,1910],{},"Agents raise the stakes further. A chatbot that gives a wrong answer is a quality problem; an agent with write access to the CRM or the finance system that acts on a wrong answer is an incident. See ",[18,1908,1909],{"href":899},"what agentic AI is"," for why that changes the risk picture.",[26,1912,1914],{"id":1913},"the-building-blocks","The building blocks",[11,1916,1917],{},"Every mature AI governance programme ends up with roughly the same components. You do not need all of them on day one, but you should know which ones you are missing.",[832,1919,1920,1926,1932,1938,1944,1950,1956,1962,1968,1974,1980],{},[490,1921,1922,1925],{},[34,1923,1924],{},"Ownership and roles."," A named accountable owner, plus clear responsibilities for IT, security, legal or compliance, the data protection officer and the business units.",[490,1927,1928,1931],{},[34,1929,1930],{},"Policy."," A short acceptable-use policy: which tools are approved, what data may and may not be used, what requires review, and what is forbidden. Two pages that people read beat twenty that nobody does.",[490,1933,1934,1937],{},[34,1935,1936],{},"Inventory."," A register of AI use cases, the models and tools behind them, the data they touch, and an owner for each. You cannot govern what you cannot see.",[490,1939,1940,1943],{},[34,1941,1942],{},"Access control."," Who may use which models and tools, tied to your identity provider, with access removed when people change roles or leave.",[490,1945,1946,1949],{},[34,1947,1948],{},"Data protection."," Rules and technical controls for personal and confidential data: data processing agreements, data residency, retention, redaction where needed, and no training on company data.",[490,1951,1952,1955],{},[34,1953,1954],{},"Cost control."," Budgets per team or use case, usage visibility, and a way to pick a cheaper model when the expensive one is not needed.",[490,1957,1958,1961],{},[34,1959,1960],{},"Logging and audit."," A record of who used which model, when, and for what, kept in a way that respects privacy but lets you investigate incidents and answer auditors.",[490,1963,1964,1967],{},[34,1965,1966],{},"Risk classification."," A simple method to sort use cases into low, medium and high risk, with stronger controls (testing, documentation, approval) as risk increases. The AI Act's own categories are a useful starting point.",[490,1969,1970,1973],{},[34,1971,1972],{},"Human oversight."," Clear rules on where a person must review or approve AI output, especially before irreversible actions or decisions about people.",[490,1975,1976,1979],{},[34,1977,1978],{},"Training and AI literacy."," Staff who use AI understand what it is good at, where it fails, and what the policy asks of them. Under the AI Act this is an obligation, not a courtesy.",[490,1981,1982,1985],{},[34,1983,1984],{},"Vendor and model management."," Criteria for approving new providers and models, and a process for re-evaluating them when terms or capabilities change.",[26,1987,1989],{"id":1988},"frameworks-what-to-borrow-from-where","Frameworks: what to borrow from where",[11,1991,1992],{},"Three references cover most of what organisations in Europe and the US use.",[11,1994,1995,1998],{},[34,1996,1997],{},"EU AI Act."," Binding law in the EU, applying in stages. The AI literacy obligation and the prohibited practices have applied since 2 February 2025. Obligations for providers of general-purpose AI models have applied since 2 August 2025. The transparency obligations in Article 50, such as telling people they are interacting with AI and marking certain AI-generated content, apply from 2 August 2026. The rules for high-risk systems (for example AI used in recruitment or credit decisions) come with their own timeline, which the EU has proposed to adjust through the Digital Omnibus package, so check the current dates before you plan around them. The Act sorts AI by risk, so most everyday internal use carries light obligations while specific uses carry heavy ones.",[11,2000,2001,2004],{},[34,2002,2003],{},"NIST AI Risk Management Framework."," A voluntary framework from the US National Institute of Standards and Technology, organised around four functions: Govern, Map, Measure and Manage. It is a good structure for thinking about risk across the lifecycle, and it is widely referenced outside the US.",[11,2006,2007,2010],{},[34,2008,2009],{},"ISO\u002FIEC 42001."," An international standard for an AI management system, built like ISO 27001 for information security. It is certifiable, which makes it useful when customers ask for evidence rather than assurances. Organisations that already run ISO 27001 will recognise the structure.",[11,2012,2013],{},"A practical approach: use the AI Act to decide what is mandatory, NIST or ISO 42001 for the shape of the programme, and map your controls to all three so one piece of evidence answers several questions.",[26,2015,2017],{"id":2016},"governance-vs-compliance-vs-ai-ethics","Governance vs compliance vs AI ethics",[11,2019,2020],{},"The terms are often used interchangeably, but they are different things.",[487,2022,2023,2029,2035],{},[490,2024,2025,2028],{},[34,2026,2027],{},"AI compliance"," is meeting external obligations: the AI Act, GDPR, sector rules, customer contracts. It answers \"are we allowed to?\"",[490,2030,2031,2034],{},[34,2032,2033],{},"AI ethics"," is the set of values the organisation applies: fairness, transparency, respect for people affected by AI decisions. It answers \"should we?\"",[490,2036,2037,2040],{},[34,2038,2039],{},"AI governance"," is the operating system that makes both happen: the decisions, owners, controls and records. It answers \"how do we make sure, every time?\"",[11,2042,2043],{},"Compliance without governance becomes a yearly scramble for evidence. Ethics without governance stays on a slide. Governance is where both become routine.",[26,2045,2047],{"id":2046},"where-a-gateway-fits","Where a gateway fits",[11,2049,2050],{},"Most of the technical building blocks (access control, data protection, cost control, logging, model choice) depend on one thing: knowing and controlling the path between your people and the models. When every team has its own keys and accounts, each control has to be rebuilt in every tool.",[11,2052,2053],{},"An AI gateway puts that path in one place. All model traffic goes through a single control point, so you can:",[487,2055,2056,2059,2062,2065,2068],{},[490,2057,2058],{},"grant access to models and tools per team, from your identity provider;",[490,2060,2061],{},"keep a log of usage for audit and incident response;",[490,2063,2064],{},"set budgets and see cost per team and use case;",[490,2066,2067],{},"choose where data is processed, for example in EU regions only;",[490,2069,2070],{},"add or switch models without changing every integration.",[11,2072,2073,2074,2076,2077,2079,2080,2082],{},"The same idea applies to the tools agents use. An ",[18,2075,1630],{"href":911}," is the control point for agent connections to business systems, and the ",[18,2078,1300],{"href":918}," covers the controls that matter there. A gateway does not replace policy or ownership, but it turns many policy statements into something you can enforce and prove. ",[18,2081,927],{"href":926}," is one example of this pattern, hosted in the EU.",[26,2084,2086],{"id":2085},"how-to-start-a-306090-day-plan","How to start: a 30\u002F60\u002F90-day plan",[11,2088,2089],{},[34,2090,2091],{},"First 30 days: see and stop the bleeding.",[487,2093,2094,2097,2100,2103],{},[490,2095,2096],{},"Appoint an owner and a small group (IT, security, legal or DPO, one business representative).",[490,2098,2099],{},"Run a quick inventory: survey teams, check expense reports and SSO logs for AI tools, list what is in use.",[490,2101,2102],{},"Publish a two-page acceptable-use policy with clear \"never\" rules for sensitive data.",[490,2104,2105],{},"Offer an approved way to use AI so people have an alternative to personal accounts.",[11,2107,2108],{},[34,2109,2110],{},"Days 31 to 60: put controls in the path.",[487,2112,2113,2116,2119,2122],{},[490,2114,2115],{},"Route model access through one controlled point with SSO, logging and budgets.",[490,2117,2118],{},"Sign data processing agreements with the providers you keep; decide on data residency.",[490,2120,2121],{},"Create a simple risk classification and apply it to the inventory.",[490,2123,2124,2125,393],{},"Start AI literacy training, tailored per role rather than one generic course. See ",[18,2126,2128],{"href":2127},"\u002Fen\u002Fai-training","AI training",[11,2130,2131],{},[34,2132,2133],{},"Days 61 to 90: make it repeatable.",[487,2135,2136,2139,2142,2145],{},[490,2137,2138],{},"Add an intake process for new use cases and new tools, with risk-based review.",[490,2140,2141],{},"Set human-oversight rules for high-impact uses and for agents with write access.",[490,2143,2144],{},"Report usage, cost and incidents to leadership on a fixed rhythm.",[490,2146,2147],{},"Choose a framework (NIST AI RMF or ISO\u002FIEC 42001) to structure the next year, and map existing controls to the AI Act.",[11,2149,2150,2151,2155],{},"If you would rather not build this alone, an ",[18,2152,2154],{"href":2153},"\u002Fen\u002Fai-partner","AI partner"," can run the inventory, policy and rollout with your team.",[26,2157,2159],{"id":2158},"common-mistakes","Common mistakes",[487,2161,2162,2168,2174,2180,2186],{},[490,2163,2164,2167],{},[34,2165,2166],{},"Starting with a ban."," Bans push usage into shadow AI. Offer an approved path first, then restrict.",[490,2169,2170,2173],{},[34,2171,2172],{},"Writing the policy last."," Without a short policy, every technical control becomes an argument.",[490,2175,2176,2179],{},[34,2177,2178],{},"Governing the model, not the use case."," The same model can be low risk for summarising a public report and high risk for screening job applicants. Classify uses, not vendors.",[490,2181,2182,2185],{},[34,2183,2184],{},"No owner."," Committees advise; one person decides.",[490,2187,2188,2191],{},[34,2189,2190],{},"No evidence."," If you cannot show logs, training records and decisions, you will rebuild them under time pressure when a customer or regulator asks.",[26,2193,892],{"id":891},[487,2195,2196,2201,2206,2211],{},[490,2197,2198,2200],{},[18,2199,900],{"href":899},": why agents change the risk picture.",[490,2202,2203,2205],{},[18,2204,766],{"href":765},": guardrails and evaluation in practice.",[490,2207,2208,2210],{},[18,2209,912],{"href":911},": the control point for agent tools.",[490,2212,2213,2215],{},[18,2214,919],{"href":918},": controls for agent connections.",{"title":241,"searchDepth":255,"depth":272,"links":2217},[2218,2219,2220,2221,2222,2223,2224,2225,2226],{"id":990,"depth":255,"text":991},{"id":1875,"depth":255,"text":1876},{"id":1913,"depth":255,"text":1914},{"id":1988,"depth":255,"text":1989},{"id":2016,"depth":255,"text":2017},{"id":2046,"depth":255,"text":2047},{"id":2085,"depth":255,"text":2086},{"id":2158,"depth":255,"text":2159},{"id":891,"depth":255,"text":892},"AI governance is how an organisation decides which AI it uses, for what, with which data, and who is accountable. This guide defines it, explains why it matters now, lists the building blocks, maps the EU AI Act, NIST AI RMF and ISO\u002FIEC 42001, and gives a 30\u002F60\u002F90-day plan to start.",[2229,2232,2235,2238,2241],{"q":2230,"a":2231},"What is AI governance in simple terms?","AI governance is the set of rules, roles and controls an organisation uses to decide which AI systems it uses, for what purposes, with which data, and who is accountable when something goes wrong. It covers both the policy on paper and the technical controls that enforce it.",{"q":2233,"a":2234},"Why is AI governance important?","Because AI is already in use whether it is governed or not. Without governance, staff paste company data into personal accounts, costs grow without an owner, nobody can say which models touch customer data, and the organisation cannot show regulators or customers what it does. Governance turns that into a known, controlled setup.",{"q":2236,"a":2237},"How do you implement AI governance?","Start with an inventory of how AI is used today, appoint an owner, write a short acceptable-use policy, give people an approved way to use AI, and route model access through one controlled point so you get logging, access control and cost data. Then classify use cases by risk and add stronger controls where the risk is higher.",{"q":2239,"a":2240},"Who is responsible for AI governance?","Accountability usually sits with senior leadership, with a named owner who coordinates IT, security, legal or compliance, data protection and the business units that use AI. Smaller companies often give the role to the CTO or CIO; larger ones form a small cross-functional AI council. What matters is that one person owns the decisions.",{"q":2242,"a":2243},"What is an AI governance framework?","A structured reference for what good governance contains. The most used are the NIST AI Risk Management Framework (voluntary, US), ISO\u002FIEC 42001 (a certifiable management-system standard for AI) and, as binding law in the EU, the AI Act. Most organisations borrow structure from NIST or ISO and map their controls to the AI Act.",{},"\u002Fguides\u002Fai-agents\u002Fwhat-is-ai-governance",{"title":1837,"description":2227},"guides\u002Fai-agents\u002Fwhat-is-ai-governance","what-is-ai-governance","oQx-2otzn7Q6sq7n8XdA9VLLTgMpGV5c7Sy7XIs_3wA",{"id":4,"title":5,"author":6,"body":2251,"date":948,"description":949,"extension":950,"faq":2896,"meta":2902,"navigation":968,"order":272,"path":969,"readTime":970,"seo":2903,"stem":972,"topic":973,"translationId":974,"updated":948,"__hash__":975},{"type":8,"value":2252,"toc":2885},[2253,2255,2260,2262,2268,2270,2274,2276,2320,2322,2327,2329,2333,2403,2405,2491,2501,2511,2515,2517,2519,2555,2561,2573,2575,2595,2607,2617,2619,2621,2625,2633,2635,2685,2687,2695,2697,2773,2777,2779,2781,2809,2813,2815,2817,2857,2859,2877,2883],[11,2254,13],{},[11,2256,16,2257,24],{},[18,2258,23],{"href":20,"rel":2259},[22],[26,2261,29],{"id":28},[11,2263,32,2264,37,2266,41],{},[34,2265,36],{},[34,2267,40],{},[11,2269,44],{},[11,2271,47,2272,52],{},[49,2273,51],{},[26,2275,56],{"id":55},[58,2277,2278,2286],{},[61,2279,2280],{},[64,2281,2282,2284],{},[67,2283,69],{},[67,2285,72],{},[74,2287,2288,2296,2304,2312],{},[64,2289,2290,2294],{},[79,2291,2292],{},[34,2293,83],{},[79,2295,86],{},[64,2297,2298,2302],{},[79,2299,2300],{},[34,2301,93],{},[79,2303,96],{},[64,2305,2306,2310],{},[79,2307,2308],{},[34,2309,103],{},[79,2311,106],{},[64,2313,2314,2318],{},[79,2315,2316],{},[34,2317,113],{},[79,2319,116],{},[11,2321,119],{},[11,2323,122,2324,128],{},[18,2325,127],{"href":125,"rel":2326},[22],[26,2328,132],{"id":131},[11,2330,135,2331,139],{},[49,2332,138],{},[58,2334,2335,2345],{},[61,2336,2337],{},[64,2338,2339,2341,2343],{},[67,2340,148],{},[67,2342,151],{},[67,2344,154],{},[74,2346,2347,2357,2371,2383,2393],{},[64,2348,2349,2351,2355],{},[79,2350,161],{},[79,2352,2353],{},[49,2354,166],{},[79,2356,169],{},[64,2358,2359,2361,2369],{},[79,2360,174],{},[79,2362,2363,180,2365,180,2367],{},[49,2364,179],{},[49,2366,183],{},[49,2368,186],{},[79,2370,189],{},[64,2372,2373,2375,2381],{},[79,2374,194],{},[79,2376,2377,180,2379],{},[49,2378,199],{},[49,2380,202],{},[79,2382,205],{},[64,2384,2385,2387,2391],{},[79,2386,210],{},[79,2388,2389],{},[49,2390,215],{},[79,2392,218],{},[64,2394,2395,2397,2401],{},[79,2396,223],{},[79,2398,2399],{},[49,2400,228],{},[79,2402,231],{},[11,2404,234],{},[236,2406,2407],{"className":238,"code":239,"language":240,"meta":241,"style":241},[49,2408,2409,2413,2423,2437,2443,2463,2483,2487],{"__ignoreMap":241},[245,2410,2411],{"class":247,"line":248},[245,2412,252],{"class":251},[245,2414,2415,2417,2419,2421],{"class":247,"line":255},[245,2416,259],{"class":258},[245,2418,262],{"class":251},[245,2420,266],{"class":265},[245,2422,269],{"class":251},[245,2424,2425,2427,2429,2431,2433,2435],{"class":247,"line":272},[245,2426,275],{"class":258},[245,2428,278],{"class":251},[245,2430,281],{"class":258},[245,2432,262],{"class":251},[245,2434,286],{"class":258},[245,2436,289],{"class":251},[245,2438,2439,2441],{"class":247,"line":292},[245,2440,295],{"class":258},[245,2442,298],{"class":251},[245,2444,2445,2447,2449,2451,2453,2455,2457,2459,2461],{"class":247,"line":301},[245,2446,304],{"class":251},[245,2448,307],{"class":258},[245,2450,262],{"class":251},[245,2452,312],{"class":265},[245,2454,180],{"class":251},[245,2456,281],{"class":258},[245,2458,262],{"class":251},[245,2460,321],{"class":258},[245,2462,289],{"class":251},[245,2464,2465,2467,2469,2471,2473,2475,2477,2479,2481],{"class":247,"line":326},[245,2466,304],{"class":251},[245,2468,307],{"class":258},[245,2470,262],{"class":251},[245,2472,335],{"class":265},[245,2474,180],{"class":251},[245,2476,281],{"class":258},[245,2478,262],{"class":251},[245,2480,321],{"class":258},[245,2482,346],{"class":251},[245,2484,2485],{"class":247,"line":349},[245,2486,352],{"class":251},[245,2488,2489],{"class":247,"line":355},[245,2490,358],{"class":251},[11,2492,2493,363,2495,366,2497,370,2499,374],{},[49,2494,228],{},[49,2496,215],{},[49,2498,369],{},[49,2500,373],{},[11,2502,2503,380,2505,384,2507,388,2509,393],{},[34,2504,379],{},[34,2506,383],{},[49,2508,387],{},[18,2510,392],{"href":391},[11,2512,396,2513,400],{},[34,2514,399],{},[26,2516,404],{"id":403},[11,2518,407],{},[58,2520,2521,2529],{},[61,2522,2523],{},[64,2524,2525,2527],{},[67,2526,416],{},[67,2528,419],{},[74,2530,2531,2539,2547],{},[64,2532,2533,2537],{},[79,2534,2535],{},[49,2536,428],{},[79,2538,431],{},[64,2540,2541,2545],{},[79,2542,2543],{},[49,2544,438],{},[79,2546,441],{},[64,2548,2549,2553],{},[79,2550,2551],{},[49,2552,448],{},[79,2554,451],{},[11,2556,454,2557,457,2559,460],{},[49,2558,428],{},[49,2560,438],{},[11,2562,463,2563,467,2565,471,2567,370,2569,478,2571,482],{},[49,2564,466],{},[49,2566,470],{},[49,2568,474],{},[49,2570,477],{},[49,2572,481],{},[11,2574,485],{},[487,2576,2577,2585],{},[490,2578,2579,497,2583,393],{},[34,2580,2581,496],{},[49,2582,448],{},[49,2584,438],{},[490,2586,2587,505,2589,508,2591,512,2593,515],{},[34,2588,504],{},[49,2590,448],{},[49,2592,511],{},[49,2594,438],{},[11,2596,518,2597,522,2599,180,2601,370,2603,530,2605,534],{},[49,2598,521],{},[49,2600,474],{},[49,2602,527],{},[49,2604,477],{},[49,2606,533],{},[11,2608,537,2609,540,2611,543,2613,546,2615,549],{},[49,2610,428],{},[49,2612,166],{},[49,2614,438],{},[49,2616,438],{},[26,2618,553],{"id":552},[11,2620,556],{},[11,2622,2623,562],{},[34,2624,561],{},[11,2626,2627,568,2629,572,2631,576],{},[34,2628,567],{},[34,2630,571],{},[49,2632,575],{},[11,2634,579],{},[58,2636,2637,2647],{},[61,2638,2639],{},[64,2640,2641,2643,2645],{},[67,2642,588],{},[67,2644,591],{},[67,2646,594],{},[74,2648,2649,2657,2665,2673],{},[64,2650,2651,2653,2655],{},[79,2652,601],{},[79,2654,604],{},[79,2656,607],{},[64,2658,2659,2661,2663],{},[79,2660,612],{},[79,2662,615],{},[79,2664,618],{},[64,2666,2667,2669,2671],{},[79,2668,567],{},[79,2670,625],{},[79,2672,628],{},[64,2674,2675,2679,2681],{},[79,2676,2677],{},[34,2678,635],{},[79,2680],{},[79,2682,2683],{},[34,2684,642],{},[11,2686,645],{},[11,2688,648,2689,543,2691,654,2693,393],{},[49,2690,651],{},[49,2692,215],{},[18,2694,658],{"href":657},[26,2696,662],{"id":661},[58,2698,2699,2711],{},[61,2700,2701],{},[64,2702,2703,2705,2707,2709],{},[67,2704],{},[67,2706,36],{},[67,2708,675],{},[67,2710,40],{},[74,2712,2713,2725,2737,2749,2761],{},[64,2714,2715,2719,2721,2723],{},[79,2716,2717],{},[34,2718,686],{},[79,2720,689],{},[79,2722,692],{},[79,2724,695],{},[64,2726,2727,2731,2733,2735],{},[79,2728,2729],{},[34,2730,702],{},[79,2732,705],{},[79,2734,708],{},[79,2736,711],{},[64,2738,2739,2743,2745,2747],{},[79,2740,2741],{},[34,2742,718],{},[79,2744,721],{},[79,2746,724],{},[79,2748,727],{},[64,2750,2751,2755,2757,2759],{},[79,2752,2753],{},[34,2754,734],{},[79,2756,737],{},[79,2758,740],{},[79,2760,743],{},[64,2762,2763,2767,2769,2771],{},[79,2764,2765],{},[34,2766,750],{},[79,2768,753],{},[79,2770,756],{},[79,2772,759],{},[11,2774,762,2775,393],{},[18,2776,766],{"href":765},[26,2778,770],{"id":769},[11,2780,773],{},[487,2782,2783,2795,2801,2805],{},[490,2784,2785,781,2787,363,2789,788,2791,792,2793,795],{},[34,2786,780],{},[49,2788,784],{},[49,2790,787],{},[49,2792,791],{},[49,2794,784],{},[490,2796,2797,801,2799,393],{},[34,2798,800],{},[49,2800,784],{},[490,2802,2803,809],{},[34,2804,808],{},[490,2806,2807,815],{},[34,2808,814],{},[11,2810,818,2811,823],{},[18,2812,822],{"href":821},[26,2814,827],{"id":826},[11,2816,830],{},[832,2818,2819,2823,2827,2835,2839,2845,2849,2853],{},[490,2820,2821,839],{},[34,2822,838],{},[490,2824,2825,845],{},[34,2826,844],{},[490,2828,2829,853,2833,393],{},[34,2830,2831,852],{},[49,2832,438],{},[49,2834,448],{},[490,2836,2837,861],{},[34,2838,860],{},[490,2840,2841,867,2843,870],{},[34,2842,866],{},[49,2844,521],{},[490,2846,2847,876],{},[34,2848,875],{},[490,2850,2851,882],{},[34,2852,881],{},[490,2854,2855,888],{},[34,2856,887],{},[26,2858,892],{"id":891},[487,2860,2861,2865,2869,2873],{},[490,2862,2863,901],{},[18,2864,900],{"href":899},[490,2866,2867,906],{},[18,2868,766],{"href":765},[490,2870,2871,913],{},[18,2872,912],{"href":911},[490,2874,2875,920],{},[18,2876,919],{"href":918},[11,2878,923,2879,928,2881,393],{},[18,2880,927],{"href":926},[18,2882,932],{"href":931},[934,2884,936],{},{"title":241,"searchDepth":255,"depth":272,"links":2886},[2887,2888,2889,2890,2891,2892,2893,2894,2895],{"id":28,"depth":255,"text":29},{"id":55,"depth":255,"text":56},{"id":131,"depth":255,"text":132},{"id":403,"depth":255,"text":404},{"id":552,"depth":255,"text":553},{"id":661,"depth":255,"text":662},{"id":769,"depth":255,"text":770},{"id":826,"depth":255,"text":827},{"id":891,"depth":255,"text":892},[2897,2898,2899,2900,2901],{"q":953,"a":954},{"q":956,"a":957},{"q":959,"a":960},{"q":962,"a":963},{"q":965,"a":966},{},{"title":5,"description":949},[2905],{"loc":2906,"href":1787},"en",1792059411090]