<!DOCTYPE html><html lang="en" class="anthropicsans_dce02d96-module__tEBbKW__variable anthropicserif_e7e46c4-module__uImRTq__variable anthropicmono_fae19af3-module__c5XAsG__variable copernicus_4da799c5-module__dijTSq__variable styrenea_f8492ab1-module__HimLXW__variable styreneb_278af5c6-module__wkOAdG__variable tiempostext_4eff4b4c-module__mpviCW__variable jetbrainsmono_7d7bdbc6-module__j_XgJq__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/365eca5272a6c334.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/38fee8473f816a4a.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/14aee949bc491cba.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/9311abbe7cffed27.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/580866d28a2a2dd1.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/8a6120b17f1dd6ed.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/795458870c8fbe1f.css" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" href="/_next/static/chunks/f4386f5ba7642880.js"/><script src="/_next/static/chunks/573c649abe04b34a.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/d0300bffb79131f2.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/08dcfc3b15383cd6.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/turbopack-07052ba808d12dd9.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/d96012bcfc98706a.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/d80b3790a119a285.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/1fb574e7be3f9a05.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/554f7df72b4c428d.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/c1896c986be1a2e2.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/faac2bc8aaf8737b.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/9917d2fef5f3cd5c.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/b1040bb2d2fbd1e5.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/496bc8a289f448d1.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/2fd2aa01a4bc9178.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/370456e1121124ae.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/25fc9e042287fa67.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/dd9665e9cd4d7318.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/dabacb64939959b3.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/630870b77208f43d.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/6c680011ff6c5ba2.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/5c1988096a7b174a.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/2e3229a62c65aaec.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/22e623f71e6f96d3.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/33647e5ba6496195.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/0cc5225a904b25ca.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><script src="/_next/static/chunks/2c9eb3077aa18f16.js" async="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script><link rel="preload" href="/_next/static/chunks/7e4146583225b449.css" as="style" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"/><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#141413"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule="" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl"></script></head><body><div hidden=""><!--$?--><template id="B:0"></template><!--/$--></div><header class="SiteHeader-module-scss-module__zKj4Ca__header" data-theme="light"><div class="SiteHeader-module-scss-module__zKj4Ca__skipLinks"><a href="#main-content" class="SiteHeader-module-scss-module__zKj4Ca__skipLink">Skip to main content</a><a href="#footer" class="SiteHeader-module-scss-module__zKj4Ca__skipLink">Skip to footer</a></div><div class="page-wrapper SiteHeader-module-scss-module__zKj4Ca__root"><a href="/" aria-label="Home"><div class="SiteHeader-module-scss-module__zKj4Ca__logoDesktop"><div class="LogoWordmark-module-scss-module__Sdgt-q__logo-wrapper"><svg class="LogoWordmark-module-scss-module__Sdgt-q__logo-static" width="570" height="64" viewBox="0 0 570 64" fill="none" xmlns="http://www.w3.org/2000/svg" aria-label="Anthropic"><path d="M139.492 12.9945H160.265V62.9392H173.525V12.9945H194.298V1.06077H139.492V12.9945Z" fill="currentColor"></path><path d="M116.066 44.3757L88.221 1.06077H73.1934V62.9392H86.011V19.6243L113.856 62.9392H128.884V1.06077H116.066V44.3757Z" fill="currentColor"></path><path d="M247.337 25.7238H218.166V1.06077H204.906V62.9392H218.166V37.6575H247.337V62.9392H260.597V1.06077H247.337V25.7238Z" fill="currentColor"></path><path d="M24.663 1.06077L0 62.9392H13.7901L18.834 49.9447H44.6365L49.6796 62.9392H63.4696L38.8066 1.06077H24.663ZM23.2946 38.453L31.7348 16.7072L40.175 38.453H23.2946Z" fill="currentColor"></path><path d="M370.475 0C352.619 0 339.978 13.2597 339.978 32.0884C339.978 50.7403 352.619 64 370.475 64C388.243 64 400.796 50.7403 400.796 32.0884C400.796 13.2597 388.243 0 370.475 0ZM370.475 51.6243C360.044 51.6243 353.68 44.1989 353.68 32.0884C353.68 19.8011 360.044 12.3757 370.475 12.3757C380.818 12.3757 387.094 19.8011 387.094 32.0884C387.094 44.1989 380.818 51.6243 370.475 51.6243Z" fill="currentColor"></path><path d="M555.845 42.1657C553.547 48.1768 548.95 51.6243 542.674 51.6243C532.243 51.6243 525.878 44.1989 525.878 32.0884C525.878 19.8011 532.243 12.3757 542.674 12.3757C548.95 12.3757 553.547 15.8232 555.845 21.8343H569.901C566.453 8.57459 556.11 0 542.674 0C524.818 0 512.177 13.2597 512.177 32.0884C512.177 50.7403 524.818 64 542.674 64C556.199 64 566.541 55.337 569.989 42.1657H555.845Z" fill="currentColor"></path><path d="M471.337 1.06077L496 62.9392H509.525L484.862 1.06077H471.337Z" fill="currentColor"></path><path d="M443.403 1.06077H413.171V62.9392H426.431V40.4862H443.403C457.459 40.4862 466.033 33.0608 466.033 20.7735C466.033 8.48619 457.459 1.06077 443.403 1.06077ZM442.784 28.5525H426.431V12.9945H442.784C449.326 12.9945 452.773 15.6464 452.773 20.7735C452.773 25.9006 449.326 28.5525 442.784 28.5525Z" fill="currentColor"></path><path d="M329.812 19.8895C329.812 8.22099 321.238 1.06077 307.182 1.06077H276.95V62.9392H290.21V38.7182H304.971L318.232 62.9392H332.906L318.223 36.8734C325.593 34.0402 329.812 28.0743 329.812 19.8895ZM290.21 12.9945H306.564C313.105 12.9945 316.552 15.3812 316.552 19.8895C316.552 24.3978 313.105 26.7845 306.564 26.7845H290.21V12.9945Z" fill="currentColor"></path></svg><div class="LogoWordmark-module-scss-module__Sdgt-q__logo-lottie"></div></div></div><svg class="Icon-module-scss-module__lqbdHG__icon SiteHeader-module-scss-module__zKj4Ca__logoMobile" width="32" height="32" viewBox="0 0 46 32"><path d="M32.73 0h-6.945L38.45 32h6.945L32.73 0ZM12.665 0 0 32h7.082l2.59-6.72h13.25l2.59 6.72h7.082L19.929 0h-7.264Zm-.702 19.337 4.334-11.246 4.334 11.246h-8.668Z" fill="currentColor"></path></svg></a><div class="SiteHeader-module-scss-module__zKj4Ca__contentWrapper"><nav class="SiteHeader-module-scss-module__zKj4Ca__nav"><ul class="SiteHeader-module-scss-module__zKj4Ca__navList"><li class="body-3 SiteHeader-module-scss-module__zKj4Ca__navItem"><a href="/research" class="SiteHeader-module-scss-module__zKj4Ca__navText">Research</a></li><li class="body-3 SiteHeader-module-scss-module__zKj4Ca__navItem"><a href="/economic-futures" class="SiteHeader-module-scss-module__zKj4Ca__navText">Economic Futures</a></li><li class="body-3 SiteHeader-module-scss-module__zKj4Ca__navItem" data-category="Commitments"><button class="SiteHeader-module-scss-module__zKj4Ca__navText" aria-haspopup="menu" aria-expanded="false" aria-controls="nav-dropdown-Commitments"><span>Commitments</span><svg class="Icon-module-scss-module__lqbdHG__icon SiteHeader-module-scss-module__zKj4Ca__caretIcon" width="12" height="6.13" viewBox="0 0 8 5"><path d="M7.3016 0.231808C7.44932 0.0678162 7.70306 0.0546398 7.86724 0.20212C8.03137 0.349888 8.04461 0.603568 7.89692 0.767766L4.29684 4.76791L4.23434 4.82417C4.16662 4.87328 4.08425 4.89995 3.99918 4.89995C3.88588 4.89989 3.77733 4.85213 3.70152 4.76791L0.10144 0.767766L0.0537825 0.702139C-0.040206 0.541753 -0.0124254 0.331356 0.131128 0.20212C0.274775 0.0728844 0.486972 0.0674593 0.636608 0.1779L0.696765 0.231808L3.99918 3.90148L7.3016 0.231808Z" fill="currentColor"></path></svg></button></li><li class="body-3 SiteHeader-module-scss-module__zKj4Ca__navItem" data-category="Learn"><button class="SiteHeader-module-scss-module__zKj4Ca__navText" aria-haspopup="menu" aria-expanded="false" aria-controls="nav-dropdown-Learn"><span>Learn</span><svg class="Icon-module-scss-module__lqbdHG__icon SiteHeader-module-scss-module__zKj4Ca__caretIcon" width="12" height="6.13" viewBox="0 0 8 5"><path d="M7.3016 0.231808C7.44932 0.0678162 7.70306 0.0546398 7.86724 0.20212C8.03137 0.349888 8.04461 0.603568 7.89692 0.767766L4.29684 4.76791L4.23434 4.82417C4.16662 4.87328 4.08425 4.89995 3.99918 4.89995C3.88588 4.89989 3.77733 4.85213 3.70152 4.76791L0.10144 0.767766L0.0537825 0.702139C-0.040206 0.541753 -0.0124254 0.331356 0.131128 0.20212C0.274775 0.0728844 0.486972 0.0674593 0.636608 0.1779L0.696765 0.231808L3.99918 3.90148L7.3016 0.231808Z" fill="currentColor"></path></svg></button></li><li class="body-3 SiteHeader-module-scss-module__zKj4Ca__navItem"><a href="/news" class="SiteHeader-module-scss-module__zKj4Ca__navText">News</a></li></ul></nav><div class="SiteHeader-module-scss-module__zKj4Ca__claudeCtaWrapper"><a href="https://claude.ai/" class="SiteHeader-module-scss-module__zKj4Ca__claudeCtaButton body-3" target="_blank" rel="noopener noreferrer">Try Claude</a><div class="SiteHeader-module-scss-module__zKj4Ca__claudeCtaDropdownTrigger"><svg class="Icon-module-scss-module__lqbdHG__icon SiteHeader-module-scss-module__zKj4Ca__claudeCtaIcon" width="12" height="6.13" viewBox="0 0 8 5"><path d="M7.3016 0.231808C7.44932 0.0678162 7.70306 0.0546398 7.86724 0.20212C8.03137 0.349888 8.04461 0.603568 7.89692 0.767766L4.29684 4.76791L4.23434 4.82417C4.16662 4.87328 4.08425 4.89995 3.99918 4.89995C3.88588 4.89989 3.77733 4.85213 3.70152 4.76791L0.10144 0.767766L0.0537825 0.702139C-0.040206 0.541753 -0.0124254 0.331356 0.131128 0.20212C0.274775 0.0728844 0.486972 0.0674593 0.636608 0.1779L0.696765 0.231808L3.99918 3.90148L7.3016 0.231808Z" fill="currentColor"></path></svg></div></div><button class="SiteHeader-module-scss-module__zKj4Ca__mobileIcon" aria-label="Navigation menu"><svg class="Icon-module-scss-module__lqbdHG__icon" width="24" height="24" viewBox="0 0 40 40"><path d="M18.75 28C19.1641 28.0002 19.5 28.3359 19.5 28.75C19.4999 29.1641 19.164 29.4998 18.75 29.5H7.91699C7.50281 29.5 7.16705 29.1642 7.16699 28.75C7.16699 28.3358 7.50278 28 7.91699 28H18.75ZM32.084 19.25C32.4979 19.2504 32.834 19.586 32.834 20C32.8339 20.4139 32.4979 20.7496 32.084 20.75H7.91699C7.50281 20.75 7.16705 20.4142 7.16699 20C7.16699 19.5858 7.50278 19.25 7.91699 19.25H32.084ZM32.084 10.5C32.4979 10.5004 32.834 10.836 32.834 11.25C32.8339 11.6639 32.4979 11.9996 32.084 12H7.91699C7.50282 12 7.16706 11.6642 7.16699 11.25C7.16699 10.8358 7.50278 10.5 7.91699 10.5H32.084Z" fill="currentColor"></path></svg></button></div></div></header><main id="main-content" class=""><section class="page-wrapper HeroEngineering-module-scss-module__j1ivRa__hero" aria-label="Engineering Article Hero"><a class="body-2 bold HeroEngineering-module-scss-module__j1ivRa__hubLink" href="/engineering">Engineering at Anthropic</a><div class="HeroEngineering-module-scss-module__j1ivRa__content"><div class="HeroEngineering-module-scss-module__j1ivRa__header"><div class="HeroEngineering-module-scss-module__j1ivRa__heroImage"><img alt="" loading="lazy" width="2554" height="2554" decoding="async" data-nimg="1" style="color:transparent" src="https://www-cdn.anthropic.com/images/4zrzovbb/website/039b6648c28eb33070a63a58d49013600b229238-2554x2554.svg"/></div><h1 class="headline-1">Building effective agents</h1></div><div class="HeroEngineering-module-scss-module__j1ivRa__metadata"><p class="body-2 HeroEngineering-module-scss-module__j1ivRa__date">Published <!-- -->Dec 19, 2024</p><p class="body-large-1 HeroEngineering-module-scss-module__j1ivRa__summary">We&#x27;ve worked with dozens of teams building LLM agents across industries. Consistently, the most successful implementations use simple, composable patterns rather than complex frameworks. </p></div></div></section><div class="page-wrapper"><article><div class=""><div class="Body-module-scss-module__z40yvW__body" data-theme="ivory"><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Over the past year, we&#x27;ve worked with dozens of teams building large language model (LLM) agents across industries. Consistently, the most successful implementations weren&#x27;t using complex frameworks or specialized libraries. Instead, they were building with simple, composable patterns.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">In this post, we share what we’ve learned from working with our customers and building agents ourselves, and give practical advice for developers on building effective agents.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="what-are-agents">What are agents?</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">&quot;Agent&quot; can be defined in several ways. Some customers define agents as fully autonomous systems that operate independently over extended periods, using various tools to accomplish complex tasks. Others use the term to describe more prescriptive implementations that follow predefined workflows. At Anthropic, we categorize all these variations as <strong>agentic systems</strong>, but draw an important architectural distinction between <strong>workflows </strong>and<strong> agents</strong>:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li><strong>Workflows</strong> are systems where LLMs and tools are orchestrated through predefined code paths.</li><li><strong>Agents</strong>, on the other hand, are systems where LLMs dynamically direct their own processes and tool usage, maintaining control over how they accomplish tasks.</li></ul><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Below, we will explore both types of agentic systems in detail. In Appendix 1 (“Agents in Practice”), we describe two domains where customers have found particular value in using these kinds of systems.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="when-and-when-not-to-use-agents">When (and when not) to use agents</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">When building applications with LLMs, we recommend finding the simplest solution possible, and only increasing complexity when needed. This might mean not building agentic systems at all. Agentic systems often trade latency and cost for better task performance, and you should consider when this tradeoff makes sense.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">When more complexity is warranted, workflows offer predictability and consistency for well-defined tasks, whereas agents are the better option when flexibility and model-driven decision-making are needed at scale. For many applications, however, optimizing single LLM calls with retrieval and in-context examples is usually enough.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="when-and-how-to-use-frameworks">When and how to use frameworks</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">There are many frameworks that make agentic systems easier to implement, including:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>The <a href="https://platform.claude.com/docs/en/agent-sdk/overview" target="_blank" rel="noopener noreferrer">Claude Agent SDK</a>; </li><li><a href="https://strandsagents.com/latest/" target="_blank" rel="noopener noreferrer">Strands Agents SDK by AWS</a>;</li><li><a href="https://rivet.ironcladapp.com/" target="_blank" rel="noopener noreferrer">Rivet</a>, a drag and drop GUI LLM workflow builder; and </li><li><a href="https://www.vellum.ai/" target="_blank" rel="noopener noreferrer">Vellum</a>, another GUI tool for building and testing complex workflows.</li></ul><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">These frameworks make it easy to get started by simplifying standard low-level tasks like calling LLMs, defining and parsing tools, and chaining calls together. However, they often create extra layers of abstraction that can obscure the underlying prompts ​​and responses, making them harder to debug. They can also make it tempting to add complexity when a simpler setup would suffice.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">We suggest that developers start by using LLM APIs directly: many patterns can be implemented in a few lines of code. If you do use a framework, ensure you understand the underlying code. Incorrect assumptions about what&#x27;s under the hood are a common source of customer error.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">See our <a href="https://platform.claude.com/cookbook/patterns-agents-basic-workflows" target="_blank" rel="noopener noreferrer">cookbook</a> for some sample implementations.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="building-blocks-workflows-and-agents">Building blocks, workflows, and agents</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">In this section, we’ll explore the common patterns for agentic systems we’ve seen in production. We&#x27;ll start with our foundational building block—the augmented LLM—and progressively increase complexity, from simple compositional workflows to autonomous agents.</p><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="building-block-the-augmented-llm">Building block: The augmented LLM</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">The basic building block of agentic systems is an LLM enhanced with augmentations such as retrieval, tools, and memory. Our current models can actively use these capabilities—generating their own search queries, selecting appropriate tools, and determining what information to retain.</p><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2Fd3083d3f40bb2b6f477901cc9a240738d3dd1371-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2Fd3083d3f40bb2b6f477901cc9a240738d3dd1371-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">The augmented LLM</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">We recommend focusing on two key aspects of the implementation: tailoring these capabilities to your specific use case and ensuring they provide an easy, well-documented interface for your LLM. While there are many ways to implement these augmentations, one approach is through our recently released <a href="https://www.anthropic.com/news/model-context-protocol">Model Context Protocol</a>, which allows developers to integrate with a growing ecosystem of third-party tools with a simple <a href="https://modelcontextprotocol.io/tutorials/building-a-client#building-mcp-clients">client implementation</a>.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">For the remainder of this post, we&#x27;ll assume each LLM call has access to these augmented capabilities.</p><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="workflow-prompt-chaining">Workflow: Prompt chaining</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Prompt chaining decomposes a task into a sequence of steps, where each LLM call processes the output of the previous one. You can add programmatic checks (see &quot;gate” in the diagram below) on any intermediate steps to ensure that the process is still on track.</p><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F7418719e3dab222dccb379b8879e1dc08ad34c78-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F7418719e3dab222dccb379b8879e1dc08ad34c78-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">The prompt chaining workflow</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>When to use this workflow:</strong> This workflow is ideal for situations where the task can be easily and cleanly decomposed into fixed subtasks. The main goal is to trade off latency for higher accuracy, by making each LLM call an easier task.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>Examples where prompt chaining is useful:</strong></p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Generating Marketing copy, then translating it into a different language.</li><li>Writing an outline of a document, checking that the outline meets certain criteria, then writing the document based on the outline.</li></ul><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="workflow-routing">Workflow: Routing</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Routing classifies an input and directs it to a specialized followup task. This workflow allows for separation of concerns, and building more specialized prompts. Without this workflow, optimizing for one kind of input can hurt performance on other inputs.</p><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F5c0c0e9fe4def0b584c04d37849941da55e5e71c-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F5c0c0e9fe4def0b584c04d37849941da55e5e71c-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">The routing workflow</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>When to use this workflow:</strong> Routing works well for complex tasks where there are distinct categories that are better handled separately, and where classification can be handled accurately, either by an LLM or a more traditional classification model/algorithm.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>Examples where routing is useful:</strong></p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Directing different types of customer service queries (general questions, refund requests, technical support) into different downstream processes, prompts, and tools.</li><li>Routing easy/common questions to smaller, cost-efficient models like Claude Haiku 4.5 and hard/unusual questions to more capable models like Claude Sonnet 4.5 to optimize for best performance.</li></ul><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="workflow-parallelization">Workflow: Parallelization</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">LLMs can sometimes work simultaneously on a task and have their outputs aggregated programmatically. This workflow, parallelization, manifests in two key variations:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li><strong>Sectioning</strong>: Breaking a task into independent subtasks run in parallel.</li><li><strong>Voting:</strong> Running the same task multiple times to get diverse outputs.</li></ul><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F406bb032ca007fd1624f261af717d70e6ca86286-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F406bb032ca007fd1624f261af717d70e6ca86286-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">The parallelization workflow</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>When to use this workflow:</strong> Parallelization is effective when the divided subtasks can be parallelized for speed, or when multiple perspectives or attempts are needed for higher confidence results. For complex tasks with multiple considerations, LLMs generally perform better when each consideration is handled by a separate LLM call, allowing focused attention on each specific aspect.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>Examples where parallelization is useful:</strong></p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li><strong>Sectioning</strong>:<ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Implementing guardrails where one model instance processes user queries while another screens them for inappropriate content or requests. This tends to perform better than having the same LLM call handle both guardrails and the core response.</li><li>Automating evals for evaluating LLM performance, where each LLM call evaluates a different aspect of the model’s performance on a given prompt.</li></ul></li><li><strong>Voting</strong>:<ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Reviewing a piece of code for vulnerabilities, where several different prompts review and flag the code if they find a problem.</li><li>Evaluating whether a given piece of content is inappropriate, with multiple prompts evaluating different aspects or requiring different vote thresholds to balance false positives and negatives.</li></ul></li></ul><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="workflow-orchestrator-workers">Workflow: Orchestrator-workers</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">In the orchestrator-workers workflow, a central LLM dynamically breaks down tasks, delegates them to worker LLMs, and synthesizes their results.</p><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F8985fc683fae4780fb34eab1365ab78c7e51bc8e-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F8985fc683fae4780fb34eab1365ab78c7e51bc8e-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">The orchestrator-workers workflow</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>When to use this workflow:</strong> This workflow is well-suited for complex tasks where you can’t predict the subtasks needed (in coding, for example, the number of files that need to be changed and the nature of the change in each file likely depend on the task). Whereas it’s topographically similar, the key difference from parallelization is its flexibility—subtasks aren&#x27;t pre-defined, but determined by the orchestrator based on the specific input.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>Example where orchestrator-workers is useful:</strong></p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Coding products that make complex changes to multiple files each time.</li><li>Search tasks that involve gathering and analyzing information from multiple sources for possible relevant information.</li></ul><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="workflow-evaluator-optimizer">Workflow: Evaluator-optimizer</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">In the evaluator-optimizer workflow, one LLM call generates a response while another provides evaluation and feedback in a loop.</p><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F14f51e6406ccb29e695da48b17017e899a6119c7-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F14f51e6406ccb29e695da48b17017e899a6119c7-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">The evaluator-optimizer workflow</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>When to use this workflow:</strong> This workflow is particularly effective when we have clear evaluation criteria, and when iterative refinement provides measurable value. The two signs of good fit are, first, that LLM responses can be demonstrably improved when a human articulates their feedback; and second, that the LLM can provide such feedback. This is analogous to the iterative writing process a human writer might go through when producing a polished document.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>Examples where evaluator-optimizer is useful:</strong></p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Literary translation where there are nuances that the translator LLM might not capture initially, but where an evaluator LLM can provide useful critiques.</li><li>Complex search tasks that require multiple rounds of searching and analysis to gather comprehensive information, where the evaluator decides whether further searches are warranted.</li></ul><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="agents">Agents</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Agents are emerging in production as LLMs mature in key capabilities—understanding complex inputs, engaging in reasoning and planning, using tools reliably, and recovering from errors. Agents begin their work with either a command from, or interactive discussion with, the human user. Once the task is clear, agents plan and operate independently, potentially returning to the human for further information or judgement. During execution, it&#x27;s crucial for the agents to gain “ground truth” from the environment at each step (such as tool call results or code execution) to assess its progress. Agents can then pause for human feedback at checkpoints or when encountering blockers. The task often terminates upon completion, but it’s also common to include stopping conditions (such as a maximum number of iterations) to maintain control.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Agents can handle sophisticated tasks, but their implementation is often straightforward. They are typically just LLMs using tools based on environmental feedback in a loop. It is therefore crucial to design toolsets and their documentation clearly and thoughtfully. We expand on best practices for tool development in Appendix 2 (&quot;Prompt Engineering your Tools&quot;).</p><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2401" height="1000" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F58d9f10c985c4eb5d53798dea315f7bb5ab6249e-2401x1000.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F58d9f10c985c4eb5d53798dea315f7bb5ab6249e-2401x1000.png&amp;w=3840&amp;q=75"/><figcaption class="caption">Autonomous agent</figcaption></figure></div><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>When to use agents:</strong> Agents can be used for open-ended problems where it’s difficult or impossible to predict the required number of steps, and where you can’t hardcode a fixed path. The LLM will potentially operate for many turns, and you must have some level of trust in its decision-making. Agents&#x27; autonomy makes them ideal for scaling tasks in trusted environments.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">The autonomous nature of agents means higher costs, and the potential for compounding errors. We recommend extensive testing in sandboxed environments, along with the appropriate guardrails.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><strong>Examples where agents are useful:</strong></p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">The following examples are from our own implementations:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>A coding Agent to resolve <a href="https://www.anthropic.com/research/swe-bench-sonnet">SWE-bench tasks</a>, which involve edits to many files based on a task description;</li><li>Our <a href="https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo">“computer use” reference implementation</a>, where Claude uses a computer to accomplish tasks.</li></ul><div class="Body-module-scss-module__z40yvW__media-column Body-module-scss-module__z40yvW__inline"><figure class="ImageWithCaption-module-scss-module__Duq99q__e-imageWithCaption"><img loading="lazy" width="2400" height="1666" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F4b9a1f4eb63d5962a6e1746ac26bbc857cf3474f-2400x1666.png&amp;w=3840&amp;q=75 1x" src="/_next/image?url=https%3A%2F%2Fwww-cdn.anthropic.com%2Fimages%2F4zrzovbb%2Fwebsite%2F4b9a1f4eb63d5962a6e1746ac26bbc857cf3474f-2400x1666.png&amp;w=3840&amp;q=75"/><figcaption class="caption">High-level flow of a coding agent</figcaption></figure></div><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="combining-and-customizing-these-patterns">Combining and customizing these patterns</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">These building blocks aren&#x27;t prescriptive. They&#x27;re common patterns that developers can shape and combine to fit different use cases. The key to success, as with any LLM features, is measuring performance and iterating on implementations. To repeat: you should consider adding complexity <em>only</em> when it demonstrably improves outcomes.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="summary">Summary</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Success in the LLM space isn&#x27;t about building the most sophisticated system. It&#x27;s about building the <em>right</em> system for your needs. Start with simple prompts, optimize them with comprehensive evaluation, and add multi-step agentic systems only when simpler solutions fall short.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">When implementing agents, we try to follow three core principles:</p><ol class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Maintain <strong>simplicity</strong> in your agent&#x27;s design.</li><li>Prioritize <strong>transparency</strong> by explicitly showing the agent’s planning steps.</li><li>Carefully craft your agent-computer interface (ACI) through thorough tool <strong>documentation and testing</strong>.</li></ol><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Frameworks can help you get started quickly, but don&#x27;t hesitate to reduce abstraction layers and build with basic components as you move to production. By following these principles, you can create agents that are not only powerful but also reliable, maintainable, and trusted by their users.</p><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="acknowledgements">Acknowledgements</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Written by Erik Schluntz and Barry Zhang. This work draws upon our experiences building agents at Anthropic and the valuable insights shared by our customers, for which we&#x27;re deeply grateful.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="appendix-1-agents-in-practice">Appendix 1: Agents in practice</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Our work with customers has revealed two particularly promising applications for AI agents that demonstrate the practical value of the patterns discussed above. Both applications illustrate how agents add the most value for tasks that require both conversation and action, have clear success criteria, enable feedback loops, and integrate meaningful human oversight.</p><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="a-customer-support">A. Customer support</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Customer support combines familiar chatbot interfaces with enhanced capabilities through tool integration. This is a natural fit for more open-ended agents because:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Support interactions naturally follow a conversation flow while requiring access to external information and actions;</li><li>Tools can be integrated to pull customer data, order history, and knowledge base articles;</li><li>Actions such as issuing refunds or updating tickets can be handled programmatically; and</li><li>Success can be clearly measured through user-defined resolutions.</li></ul><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Several companies have demonstrated the viability of this approach through usage-based pricing models that charge only for successful resolutions, showing confidence in their agents&#x27; effectiveness.</p><h3 class="Body-module-scss-module__z40yvW__reading-column headline-5 post-section" id="b-coding-agents">B. Coding agents</h3><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">The software development space has shown remarkable potential for LLM features, with capabilities evolving from code completion to autonomous problem-solving. Agents are particularly effective because:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Code solutions are verifiable through automated tests;</li><li>Agents can iterate on solutions using test results as feedback;</li><li>The problem space is well-defined and structured; and</li><li>Output quality can be measured objectively.</li></ul><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">In our own implementation, agents can now solve real GitHub issues in the <a href="https://www.anthropic.com/research/swe-bench-sonnet">SWE-bench Verified</a> benchmark based on the pull request description alone. However, whereas automated testing helps verify functionality, human review remains crucial for ensuring solutions align with broader system requirements.</p><h2 class="Body-module-scss-module__z40yvW__reading-column headline-4 post-heading" id="appendix-2-prompt-engineering-your-tools">Appendix 2: Prompt engineering your tools</h2><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">No matter which agentic system you&#x27;re building, tools will likely be an important part of your agent. <a href="https://www.anthropic.com/news/tool-use-ga">Tools</a> enable Claude to interact with external services and APIs by specifying their exact structure and definition in our API. When Claude responds, it will include a <a href="https://docs.anthropic.com/en/docs/build-with-claude/tool-use#example-api-response-with-a-tool-use-content-block">tool use block</a> in the API response if it plans to invoke a tool. Tool definitions and specifications should be given just as much prompt engineering attention as your overall prompts. In this brief appendix, we describe how to prompt engineer your tools.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">There are often several ways to specify the same action. For instance, you can specify a file edit by writing a diff, or by rewriting the entire file. For structured output, you can return code inside markdown or inside JSON. In software engineering, differences like these are cosmetic and can be converted losslessly from one to the other. However, some formats are much more difficult for an LLM to write than others. Writing a diff requires knowing how many lines are changing in the chunk header before the new code is written. Writing code inside JSON (compared to markdown) requires extra escaping of newlines and quotes.</p><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">Our suggestions for deciding on tool formats are the following:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Give the model enough tokens to &quot;think&quot; before it writes itself into a corner.</li><li>Keep the format close to what the model has seen naturally occurring in text on the internet.</li><li>Make sure there&#x27;s no formatting &quot;overhead&quot; such as having to keep an accurate count of thousands of lines of code, or string-escaping any code it writes.</li></ul><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">One rule of thumb is to think about how much effort goes into human-computer interfaces (HCI), and plan to invest just as much effort in creating good <em>agent</em>-computer interfaces (ACI). Here are some thoughts on how to do so:</p><ul class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text"><li>Put yourself in the model&#x27;s shoes. Is it obvious how to use this tool, based on the description and parameters, or would you need to think carefully about it? If so, then it’s probably also true for the model. A good tool definition often includes example usage, edge cases, input format requirements, and clear boundaries from other tools.</li><li>How can you change parameter names or descriptions to make things more obvious? Think of this as writing a great docstring for a junior developer on your team. This is especially important when using many similar tools.</li><li>Test how the model uses your tools: Run many example inputs in our <a href="https://console.anthropic.com/workbench">workbench</a> to see what mistakes the model makes, and iterate.</li><li><a href="https://en.wikipedia.org/wiki/Poka-yoke">Poka-yoke</a> your tools. Change the arguments so that it is harder to make mistakes.</li></ul><p class="Body-module-scss-module__z40yvW__reading-column body-2 serif post-text">While building our agent for <a href="https://www.anthropic.com/research/swe-bench-sonnet">SWE-bench</a>, we actually spent more time optimizing our tools than the overall prompt. For example, we found that the model would make mistakes with tools using relative filepaths after the agent had moved out of the root directory. To fix this, we changed the tool to always require absolute filepaths—and we found that the model used this method flawlessly.</p></div></div></article><div class="NewsletterSubscribe-module-scss-module__MOPAja__wrapper"><div class="NewsletterSubscribe-module-scss-module__MOPAja__content"><div class="NewsletterSubscribe-module-scss-module__MOPAja__text-content"><h2 class="headline-5 NewsletterSubscribe-module-scss-module__MOPAja__title">Get the developer newsletter</h2><div class="NewsletterSubscribe-module-scss-module__MOPAja__body"><p class="body-1 serif tight">Product updates, how-tos, community spotlights, and more. Delivered monthly to your inbox.</p></div></div><div class="NewsletterSubscribe-module-scss-module__MOPAja__form-container"><form class="NewsletterSubscribe-module-scss-module__MOPAja__email-form"><div class="NewsletterSubscribe-module-scss-module__MOPAja__input-wrapper"><input type="email" aria-label="Email address" placeholder="Enter your email" class="NewsletterSubscribe-module-scss-module__MOPAja__email-input" required="" name="email" value=""/><button type="submit" class="NewsletterSubscribe-module-scss-module__MOPAja__submit-button" aria-label="Subscribe"><svg class="Icon-module-scss-module__lqbdHG__icon" width="20" height="20" viewBox="0 0 21 21"><path d="M4.14585 9.87492L14.4584 9.87492L9.60419 5.04158L10.5 4.14575L16.8542 10.4999L10.5 16.8541L9.60419 15.9583L14.4584 11.1249L4.14585 11.1249L4.14585 9.87492Z" fill="currentColor"></path></svg></button></div><p class="body-3 NewsletterSubscribe-module-scss-module__MOPAja__disclaimer">Please provide your email address if you&#x27;d like to receive our monthly developer newsletter. You can unsubscribe at any time.</p></form></div></div></div></div></main><footer id="footer" class="SiteFooter-module-scss-module__JdOqwq__root" role="contentinfo" aria-label="Site footer"><div class="page-wrapper SiteFooter-module-scss-module__JdOqwq__footer"><div class="SiteFooter-module-scss-module__JdOqwq__logoWrapper"><a href="/" aria-label="Return to homepage"><svg class="Icon-module-scss-module__lqbdHG__icon" width="46" height="32" viewBox="0 0 46 32"><path d="M32.73 0h-6.945L38.45 32h6.945L32.73 0ZM12.665 0 0 32h7.082l2.59-6.72h13.25l2.59 6.72h7.082L19.929 0h-7.264Zm-.702 19.337 4.334-11.246 4.334 11.246h-8.668Z" fill="#faf9f5"></path></svg></a></div><nav class="SiteFooter-module-scss-module__JdOqwq__linksWrapper" aria-label="Footer navigation"><div class="SiteFooter-module-scss-module__JdOqwq__columnSection"><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Products</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://claude.com/product/overview" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude</a></li><li><a href="https://claude.com/product/claude-code" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude Code</a></li><li><a href="https://claude.com/product/claude-code/enterprise" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude Code Enterprise</a></li><li><a href="https://claude.com/product/cowork" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Cowork</a></li><li><a href="https://claude.com/chrome" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude for Chrome</a></li><li><a href="https://claude.com/claude-for-excel" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude for Excel</a></li><li><a href="https://claude.com/claude-for-powerpoint" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude for PowerPoint</a></li><li><a href="https://claude.com/claude-for-slack" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude for Slack</a></li><li><a href="https://www.claude.com/skills" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Skills</a></li><li><a href="https://claude.com/pricing/max" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Max plan</a></li><li><a href="https://claude.com/pricing/team" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Team plan</a></li><li><a href="https://claude.com/pricing/enterprise" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Enterprise plan</a></li><li><a href="https://claude.ai/download" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Download app</a></li><li><a href="https://claude.com/pricing" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Pricing</a></li><li><a href="https://claude.ai/" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Log in to Claude</a></li></ul></div><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Models</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://www.anthropic.com/claude/opus" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Opus</a></li><li><a href="https://www.anthropic.com/claude/sonnet" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Sonnet</a></li><li><a href="https://www.anthropic.com/claude/haiku" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Haiku</a></li></ul></div></div><div class="SiteFooter-module-scss-module__JdOqwq__columnSection"><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Solutions</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://claude.com/solutions/agents" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">AI agents</a></li><li><a href="https://claude.com/solutions/code-modernization" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Code modernization</a></li><li><a href="https://claude.com/solutions/coding" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Coding</a></li><li><a href="https://claude.com/solutions/customer-support" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Customer support</a></li><li><a href="https://claude.com/solutions/education" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Education</a></li><li><a href="https://claude.com/solutions/financial-services" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Financial services</a></li><li><a href="https://claude.com/solutions/government" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Government</a></li><li><a href="https://claude.com/solutions/healthcare" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Healthcare</a></li><li><a href="https://claude.com/solutions/life-sciences" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Life sciences</a></li><li><a href="https://claude.com/solutions/nonprofits" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Nonprofits</a></li></ul></div><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Claude Platform</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://claude.com/platform/api" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Overview</a></li><li><a href="https://platform.claude.com/docs" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Developer docs</a></li><li><a href="https://claude.com/pricing#api" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Pricing</a></li><li><a href="https://claude.com/platform/marketplace" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Marketplace</a></li><li><a href="https://claude.com/regional-compliance" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Regional compliance</a></li><li><a href="https://claude.com/partners/amazon-bedrock" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Amazon Bedrock</a></li><li><a href="https://claude.com/partners/google-cloud-vertex-ai" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Google Cloud’s Vertex AI</a></li><li><a href="https://platform.claude.com/" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Console login</a></li></ul></div></div><div class="SiteFooter-module-scss-module__JdOqwq__columnSection"><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Resources</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://claude.com/blog" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Blog</a></li><li><a href="https://claude.com/partners" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Claude partner network</a></li><li><a href="https://claude.com/community" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Community</a></li><li><a href="https://claude.com/connectors" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Connectors</a></li><li><a href="/learn" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Courses</a></li><li><a href="https://claude.com/customers" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Customer stories</a></li><li><a href="/engineering" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Engineering at Anthropic</a></li><li><a href="/events" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Events</a></li><li><a href="https://claude.com/plugins" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Plugins</a></li><li><a href="https://claude.com/partners/powered-by-claude" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Powered by Claude</a></li><li><a href="https://claude.com/partners/services" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Service partners</a></li><li><a href="https://claude.com/programs/startups" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Startups program</a></li><li><a href="https://claude.com/resources/tutorials" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Tutorials</a></li><li><a href="https://claude.com/resources/use-cases" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Use cases</a></li></ul></div><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Company</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="/company" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Anthropic</a></li><li><a href="/careers" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Careers</a></li><li><a href="/economic-index" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Economic Futures</a></li><li><a href="/research" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Research</a></li><li><a href="/news" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">News</a></li><li><a href="/constitution" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Claude’s Constitution</a></li><li><a href="https://www.anthropic.com/news/announcing-our-updated-responsible-scaling-policy" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Responsible Scaling Policy</a></li><li><a href="https://trust.anthropic.com/" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Security and compliance</a></li><li><a href="/transparency" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Transparency</a></li></ul></div></div><div class="SiteFooter-module-scss-module__JdOqwq__columnSection"><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Help and security</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://www.anthropic.com/supported-countries" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Availability</a></li><li><a href="https://status.anthropic.com/" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Status</a></li><li><a href="https://support.claude.com/en/" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2" target="_blank" rel="noopener noreferrer">Support center</a></li></ul></div><div class="SiteFooter-module-scss-module__JdOqwq__listSection"><h3 class="body-2 bold">Terms and policies</h3><ul class="SiteFooter-module-scss-module__JdOqwq__list"><li><a href="https://www.anthropic.com/legal/privacy" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Privacy policy</a></li><li><a href="https://www.anthropic.com/legal/consumer-health-data-privacy-policy" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Consumer health data privacy policy</a></li><li><a href="https://www.anthropic.com/responsible-disclosure-policy" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Responsible disclosure policy</a></li><li><a href="https://www.anthropic.com/legal/commercial-terms" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Terms of service: Commercial</a></li><li><a href="https://www.anthropic.com/legal/consumer-terms" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Terms of service: Consumer</a></li><li><a href="https://www.anthropic.com/legal/aup" class="SiteFooter-module-scss-module__JdOqwq__listItem body-2">Usage policy</a></li></ul></div></div></nav><div class="SiteFooter-module-scss-module__JdOqwq__socialWrapper"><small class="body-2 SiteFooter-module-scss-module__JdOqwq__copyright" role="contentinfo">© 2026 Anthropic PBC</small><ul class="SiteFooter-module-scss-module__JdOqwq__socialIcons" role="navigation" aria-label="Social media links"><li><a href="https://www.linkedin.com/company/anthropicresearch" aria-label="Visit our LinkedIn page" target="_blank" rel="noopener noreferrer"><svg class="Icon-module-scss-module__lqbdHG__icon" width="24" height="24" viewBox="0 0 32 32"><path d="M25.8182 4H6.18182C4.97636 4 4 4.97636 4 6.18182V25.8182C4 27.0236 4.97636 28 6.18182 28H25.8182C27.0236 28 28 27.0236 28 25.8182V6.18182C28 4.97636 27.0236 4 25.8182 4ZM11.5862 23.6364H8.368V13.2815H11.5862V23.6364ZM9.94436 11.8011C8.90691 11.8011 8.068 10.96 8.068 9.92473C8.068 8.88945 8.908 8.04945 9.94436 8.04945C10.9785 8.04945 11.8196 8.89055 11.8196 9.92473C11.8196 10.96 10.9785 11.8011 9.94436 11.8011ZM23.6407 23.6364H20.4247V18.6007C20.4247 17.3996 20.4029 15.8549 18.7524 15.8549C17.0778 15.8549 16.8204 17.1629 16.8204 18.5135V23.6364H13.6044V13.2815H16.6916V14.6964H16.7353C17.1651 13.8825 18.2145 13.024 19.78 13.024C23.0385 13.024 23.6407 15.1687 23.6407 17.9571V23.6364Z" fill="#b0aea5"></path></svg></a></li><li><a href="https://x.com/AnthropicAI" aria-label="Visit our X (formerly Twitter) profile" target="_blank" rel="noopener noreferrer"><svg class="Icon-module-scss-module__lqbdHG__icon" width="24" height="24" viewBox="0 0 32 32"><path d="M28 28L18.6145 14.0124L18.6305 14.0255L27.0929 4H24.265L17.3713 12.16L11.8968 4H4.48021L13.2425 17.0593L13.2414 17.0582L4 28H6.82792L14.4921 18.9215L20.5834 28H28ZM10.7763 6.18182L23.9449 25.8182H21.7039L8.52468 6.18182H10.7763Z" fill="#b0aea5"></path></svg></a></li><li><a href="https://www.youtube.com/@anthropic-ai" aria-label="Visit our YouTube channel" target="_blank" rel="noopener noreferrer"><svg class="Icon-module-scss-module__lqbdHG__icon" width="24" height="24" viewBox="0 0 32 32"><path d="M29.2184 9.4375C28.9596 8.06299 27.7263 7.06201 26.2951 6.74951C24.1533 6.3125 20.1896 6 15.901 6C11.615 6 7.58782 6.3125 5.44354 6.74951C4.01486 7.06201 2.77905 7.99951 2.52021 9.4375C2.25884 11 2 13.1875 2 16C2 18.8125 2.25884 21 2.58365 22.5625C2.84502 23.937 4.0783 24.938 5.50698 25.2505C7.78068 25.6875 11.6784 26 15.967 26C20.2556 26 24.1533 25.6875 26.427 25.2505C27.8557 24.938 29.089 24.0005 29.3504 22.5625C29.6092 21 29.934 18.749 30 16C29.868 13.1875 29.5432 11 29.2184 9.4375ZM12.3941 20.375V11.625L20.319 16L12.3941 20.375Z" fill="#b0aea5"></path></svg></a></li></ul></div></div></footer><!--$?--><template id="B:1"></template><!--/$--><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/f4386f5ba7642880.js" nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl" id="_R_" async=""></script><title>Building Effective AI Agents \ Anthropic</title><meta name="description" content="Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI."/><meta name="msapplication-TileColor" content="141413"/><meta name="msapplication-config" content="/browserconfig.xml"/><meta property="og:title" content="Building Effective AI Agents"/><meta property="og:description" content="Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI."/><meta property="og:image" content="https://cdn.sanity.io/images/4zrzovbb/website/76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260.png"/><meta property="og:image:alt" content="Anthropic logo"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@AnthropicAI"/><meta name="twitter:creator" content="@AnthropicAI"/><meta name="twitter:title" content="Building Effective AI Agents"/><meta name="twitter:description" content="Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI."/><meta name="twitter:image" content="https://cdn.sanity.io/images/4zrzovbb/website/76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260.png"/><meta name="twitter:image:alt" content="Anthropic logo"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="icon" href="/images/icons/favicon-32x32.png"/><link rel="apple-touch-icon" href="/images/icons/apple-touch-icon.png"/><link rel="apple-touch-icon" href="/images/icons/apple-touch-icon.png" sizes="180x180"/><link rel="mask-icon" href="/images/icons/safari-pinned-tab.svg" color="141413"/><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><div hidden id="S:0"></div><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><div hidden id="S:1"></div><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">$RC("B:1","S:1")</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">(self.__next_f=self.__next_f||[]).push([0])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"1:\"$Sreact.fragment\"\n4:I[339756,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"default\"]\n5:I[837457,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"default\"]\nb:I[168027,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"default\"]\nc:I[897367,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"OutletBoundary\"]\nd:\"$Sreact.suspense\"\nf:I[897367,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"ViewportBoundary\"]\n11:I[897367,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"MetadataBoundary\"]\n13:I[264900,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\"],\"default\"]\n14:I[649551,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\"],\"default\"]\n15:I[96155,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\"],\"default\"]\n17:I[775710,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\",\"/_next/static/chunks/faac2bc8aaf8737b.js\",\"/_next/static/chunks/9917d2fef5f3cd5c.js\",\"/_next/static/chunks/b1040bb2d2fbd1e5.js\",\"/_next/static/chunks/496bc8a289f448d1.js\",\"/_next/static/chunks/2fd2aa01a4bc9178.js\",\"/_next/static/chunks/370456e1121124ae.js\",\"/_next/static/chunks/25fc9e042287fa67.js\",\"/_next/static/chunks/dd9665e9cd4d7318.js\",\"/_next/static/chunks/dabacb64939959b3.js\",\"/_next/static/chunks/630870b77208f43d.js\",\"/_next/static/chunks/6c680011ff6c5ba2.js\",\"/_next/static/chunks/5c1988096a7b174a.js\",\"/_next/static/chunks/2e3229a62c65aaec.js\"],\"default\"]\n18:I[606617,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\",\"/_next/static/chunks/22e623f71e6f96d3.js\",\"/_next/static/chunks/496bc8a289f448d1.js\",\"/_next/static/chunks/b1040bb2d2fbd1e5.js\",\"/_next/static/chunks/5c1988096a7b174a.js\",\"/_next/static/chunks/33647e5ba6496195.js\",\"/_next/static/chunks/0cc5225a904b25ca.js\",\"/_next/static/chunks/2e3229a62c65aaec.js\",\"/_next/static/chunks/dd9665e9cd4d7318.js\",\"/_next/static/chunks/2c9eb3077aa18f16.js\",\"/_next/static/chunks/6c680011ff6c5ba2.js\",\"/_next/static/chunks/2fd2aa01a4bc9178.js\",\"/_next/static/chunks/630870b77208f43d.js\"],\"default\"]\n19:I[837061,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\",\"/_next/static/chunks/22e623f71e6f96d3.js\",\"/_next/static/chunks/496bc8a289f448d1.js\",\"/_next/static/chunks/b1040bb2d2fbd1e5.js\",\"/_next/static/chunks/5c1988096a7b174a.js\",\"/_next/static/chunks/33647e5ba6496195.js\",\"/_next/static/chunks/0cc5225a904b25ca.js\",\"/_next/static/chunks/2e3229a62c65aaec.js\",\"/_next/static/chunks/dd9665e9cd4d7318.js\",\"/_next/static/chunks/2c9eb3077aa18f16.js\",\"/_next/static/chunks/6c680011ff6c5ba2.js\",\"/_next/static/chunks/2fd2aa01a4bc9178.js\",\"/_next/static/chunks/630870b77208f43d.js\"],\"default\"]\n1a:I[307003,[\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"/_next/static/chunks/554f7df72b4c428d.js\",\"/_next/static/chunks/c1896c986be1a2e2.js\",\"/_next/static/chunks/22e623f71e6f96d3.js\",\"/_next/static/chunks/496bc8a289f448d1.js\",\"/_next/static/chunks/b1040bb2d2fbd1e5.js\",\"/_next/static/chunks/5c1988096a7b174a.js\",\"/_next/static/chunks/33647e5ba6496195.js\",\"/_next/static/chunks/0cc5225a904b25ca.js\",\"/_next/static/chunks/2e3229a62c65aaec.js\",\"/_next/static/chunks/dd9665e9cd4d7318.js\",\"/_next/static/chunks/2c9eb3077aa18f16.js\",\"/_next/static/chunks/6c680011ff6c5ba2.js\",\"/_next/static/chunks/2fd2aa01a4bc9178.js\",\"/_next/static/chunks/630870b77208f43d.js\"],\"default\"]\n1b:I[27201,[\"/_next/static/chunks/d96012bcfc98706a.js\",\"/_next/static/chunks/d80b3790a119a285.js\"],\"IconMark\"]\n:HL[\"/_next/static/chunks/365eca5272a6c334.css\",\"style\",{\"nonce\":\"MmYzNTh"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"jZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/chunks/38fee8473f816a4a.css\",\"style\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/media/AnthropicMono_Italic_Web-s.p.39343088.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/AnthropicMono_Roman_Web-s.p.80d4607c.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/AnthropicSans_Italic_Web-s.p.6550bf15.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/AnthropicSans_Roman_Web-s.p.050e7498.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/AnthropicSerif_Italic_Web-s.p.43888cc6.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/AnthropicSerif_Roman_Web-s.p.c28786b4.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/Copernicus_Book-s.p.f166c0ba.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/Copernicus_Medium-s.p.59728346.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/JetBrainsMono_VF-s.p.8dac7c36.ttf\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/ttf\"}]\n:HL[\"/_next/static/media/StyreneA_MediumItalic_Web-s.p.e9bc3c6e.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/StyreneA_Medium_Web-s.p.e5135f7e.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/StyreneA_RegularItalic_Web-s.p.7c6a646d.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/StyreneA_Regular_Web-s.p.429c699d.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/StyreneB_Medium_Web-s.p.88fa5a67.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/StyreneB_Regular_Web-s.p.cb3cc1a3.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/TiemposText_Medium-s.p.520d99f8.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/TiemposText_MediumItalic-s.p.10f44518.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/TiemposText_Regular-s.p.7f1d46d6.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/TiemposText_RegularItalic-s.p.1a798fcf.woff2\",\"font\",{\"crossOrigin\":\"\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/chunks/14aee949bc491cba.css\",\"style\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/chunks/9311abbe7cffed27.css\",\"style\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/chunks/580866d28a2a2dd1.css\",\"style\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/chunks/8a6120b17f1dd6ed.css\",\"style\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/chunks/795458870c8fbe1f.css\",\"style\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n:HL[\"/_next/static/chunks/7e4146583225b449.css\",\"styl"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"e\",{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"0:{\"P\":null,\"b\":\"NJBescbqn-R2CVG3cV773\",\"c\":[\"\",\"engineering\",\"building-effective-agents\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"(site)\",{\"children\":[\"engineering\",{\"children\":[[\"slug\",\"building-effective-agents\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/365eca5272a6c334.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]],\"$L2\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/38fee8473f816a4a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/1fb574e7be3f9a05.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/554f7df72b4c428d.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/c1896c986be1a2e2.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]],\"$L3\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[\"$L6\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/14aee949bc491cba.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/9311abbe7cffed27.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/580866d28a2a2dd1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/8a6120b17f1dd6ed.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/795458870c8fbe1f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/faac2bc8aaf8737b.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/9917d2fef5f3cd5c.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/b1040bb2d2fbd1e5.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/496bc8a289f448d1.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/chunks/2fd2aa01a4bc9178.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/_next/static/chunks/370456e1121124ae.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-6\",{\"src\":\"/_next/static/chunks/25fc9e042287fa67.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-7\",{\"src\":\"/_next/static/chunks/dd9665e9cd4d7318.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-8\",{\"src\":\"/_next/static/chunks/dabacb64939959b3.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-9\",{\"src\":\"/_next/static/chunks/630870b77208f43d.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"script\",\"script-10\",{\"src\":\"/_next/static/chunks/6c680011ff6c5ba2.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],\"$L7\",\"$L8\"],\"$L9\"]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false]},null,false,false],\"$La\",false]],\"m\":\"$undefined\",\"G\":[\"$b\",[]],\"S\":false}\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"7:[\"$\",\"script\",\"script-11\",{\"src\":\"/_next/static/chunks/5c1988096a7b174a.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n8:[\"$\",\"script\",\"script-12\",{\"src\":\"/_next/static/chunks/2e3229a62c65aaec.js\",\"async\":true,\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]\n9:[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@e\"}]}]\na:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lf\",null,{\"children\":\"$@10\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L11\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.Metadata\",\"children\":\"$@12\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"2:[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"anthropicsans_dce02d96-module__tEBbKW__variable anthropicserif_e7e46c4-module__uImRTq__variable anthropicmono_fae19af3-module__c5XAsG__variable copernicus_4da799c5-module__dijTSq__variable styrenea_f8492ab1-module__HimLXW__variable styreneb_278af5c6-module__wkOAdG__variable tiempostext_4eff4b4c-module__mpviCW__variable jetbrainsmono_7d7bdbc6-module__j_XgJq__variable\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"3:[\"$\",\"$L13\",null,{\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\",\"children\":[\"$\",\"$L14\",null,{\"gpcDetected\":false,\"children\":[[\"$\",\"$L15\",null,{}],[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[\"$L16\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/14aee949bc491cba.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/9311abbe7cffed27.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/580866d28a2a2dd1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/7e4146583225b449.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl\"}]]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"6:[\"$\",\"$L17\",null,{\"article\":{\"_createdAt\":\"2025-01-06T16:51:43Z\",\"_id\":\"0ef0884a-2259-4b84-a6d3-ff6ed3c828c6\",\"_rev\":\"Q7r1e8kAXuWodwx07fa7CZ\",\"_system\":{\"base\":{\"id\":\"0ef0884a-2259-4b84-a6d3-ff6ed3c828c6\",\"rev\":\"Efjj70cWH9KcKTnb5Dvy1W\"}},\"_type\":\"engineeringArticle\",\"_updatedAt\":\"2026-01-06T15:24:44Z\",\"body\":[{\"_key\":\"0f8a8a61f6fc\",\"_type\":\"block\",\"children\":[{\"_key\":\"aa248e640809\",\"_type\":\"span\",\"marks\":[],\"text\":\"Over the past year, we've worked with dozens of teams building large language model (LLM) agents across industries. Consistently, the most successful implementations weren't using complex frameworks or specialized libraries. Instead, they were building with simple, composable patterns.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"501e08274be4\",\"_type\":\"block\",\"children\":[{\"_key\":\"1e39440a6bee\",\"_type\":\"span\",\"marks\":[],\"text\":\"In this post, we share what we’ve learned from working with our customers and building agents ourselves, and give practical advice for developers on building effective agents.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"7cd8b78d90af\",\"_type\":\"block\",\"children\":[{\"_key\":\"a081d5d6614f\",\"_type\":\"span\",\"marks\":[],\"text\":\"What are agents?\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"5f4eb9aaa05e\",\"_type\":\"block\",\"children\":[{\"_key\":\"3c0867918d19\",\"_type\":\"span\",\"marks\":[],\"text\":\"\\\"Agent\\\" can be defined in several ways. Some customers define agents as fully autonomous systems that operate independently over extended periods, using various tools to accomplish complex tasks. Others use the term to describe more prescriptive implementations that follow predefined workflows. At Anthropic, we categorize all these variations as \"},{\"_key\":\"0d393ff6aa34\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"agentic systems\"},{\"_key\":\"a65053643d33\",\"_type\":\"span\",\"marks\":[],\"text\":\", but draw an important architectural distinction between \"},{\"_key\":\"1ad1cf5d1caa\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"workflows \"},{\"_key\":\"0c7f9d3ee132\",\"_type\":\"span\",\"marks\":[],\"text\":\"and\"},{\"_key\":\"381e18bcc546\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\" agents\"},{\"_key\":\"ef1e13bdc861\",\"_type\":\"span\",\"marks\":[],\"text\":\":\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"4ea48fa0c29d\",\"_type\":\"block\",\"children\":[{\"_key\":\"b06f4041e669\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Workflows\"},{\"_key\":\"01f46df7a5a1\",\"_type\":\"span\",\"marks\":[],\"text\":\" are systems where LLMs and tools are orchestrated through predefined code paths.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"31b90155c9da\",\"_type\":\"block\",\"children\":[{\"_key\":\"712e738c996b\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Agents\"},{\"_key\":\"7cbff63b706d\",\"_type\":\"span\",\"marks\":[],\"text\":\", on the other hand, are systems where LLMs dynamically direct their own processes and tool usage, maintaining control over how they accomplish tasks.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"cda9e30745b5\",\"_type\":\"block\",\"children\":[{\"_key\":\"72dde4a24338\",\"_type\":\"span\",\"marks\":[],\"text\":\"Below, we will explore both types of agentic systems in detail. In Appendix 1 (“Agents in Practice”), we describe two domains where customers have found particular value in using these kinds of systems.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"0ce69f552d16\",\"_type\":\"block\",\"children\":[{\"_key\":\"ae47f1be9bcd\",\"_type\":\"span\",\"marks\":[],\"text\":\"When (and when not) to use agents\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"2138016f7de7\",\"_type\":\"block\",\"children\":[{\"_key\":\"e6af6f02bc9a\",\"_type\":\"span\",\"marks\":[],\"text\":\"When building applications with LLMs, we recommend finding the simplest solution possible, and only increasing complexity when needed. This might mean not building agentic systems at all. Agentic systems often trade latency and cost for better task performance, and you should consider when this tradeoff makes sense.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"d2280350370d\",\"_type\":\"block\",\"children\":[{\"_key\":\"d2b333409479\",\"_type\":\"span\",\"marks\":[],\"text\":\"When more complexity is warranted, workflows offer predictability and consistency for well-defined tasks, whereas agents are the better option when flexibility and model-driven decision-making are needed at scale. For many applications, however, optimizing single LLM calls with retrieval and in-context examples is usually enough.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"e8c1c431d027\",\"_type\":\"block\",\"children\":[{\"_key\":\"37950be15118\",\"_type\":\"span\",\"marks\":[],\"text\":\"When and how to use frameworks\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"786ab62b30ce\",\"_type\":\"block\",\"children\":[{\"_key\":\"e713f5be2f2a\",\"_type\":\"span\",\"marks\":[],\"text\":\"There are many frameworks that make agentic systems easier to implement, including:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"5b57b4b6fe7a\",\"_type\":\"block\",\"children\":[{\"_key\":\"ec0833a2bce7\",\"_type\":\"span\",\"marks\":[],\"text\":\"The \"},{\"_key\":\"431fbe0bfd59\",\"_type\":\"span\",\"marks\":[\"60400aadd734\"],\"text\":\"Claude Agent SDK\"},{\"_key\":\"4ef230c197db\",\"_type\":\"span\",\"marks\":[],\"text\":\"; \"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"60400aadd734\",\"_type\":\"link\",\"blank\":true,\"href\":\"https://platform.claude.com/docs/en/agent-sdk/overview\"}],\"style\":\"normal\"},{\"_key\":\"e793ee828886\",\"_type\":\"block\",\"children\":[{\"_key\":\"70e5d0ffada5\",\"_type\":\"span\",\"marks\":[\"fc46d76e4d7f\"],\"text\":\"Strands Agents SDK by AWS\"},{\"_key\":\"924b20e81a43\",\"_type\":\"span\",\"marks\":[],\"text\":\";\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"fc46d76e4d7f\",\"_type\":\"link\",\"blank\":true,\"href\":\"https://strandsagents.com/latest/\"}],\"style\":\"normal\"},{\"_key\":\"85f6c5aa9ddb\",\"_type\":\"block\",\"children\":[{\"_key\":\"24079f69a05f\",\"_type\":\"span\",\"marks\":[\"7b1f001f579d\"],\"text\":\"Rivet\"},{\"_key\":\"2f81881cf966\",\"_type\":\"span\",\"marks\":[],\"text\":\", a drag and drop GUI LLM workflow builder; and \"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"7b1f001f579d\",\"_type\":\"link\",\"blank\":true,\"href\":\"https://rivet.ironcladapp.com/\"}],\"style\":\"normal\"},{\"_key\":\"1d0454ad1271\",\"_type\":\"block\",\"children\":[{\"_key\":\"75a4b7584060\",\"_type\":\"span\",\"marks\":[\"87f066977f9c\"],\"text\":\"Vellum\"},{\"_key\":\"d11e6d50ad1b\",\"_type\":\"span\",\"marks\":[],\"text\":\", another GUI tool for building and testing complex workflows.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"87f066977f9c\",\"_type\":\"link\",\"blank\":true,\"href\":\"https://www.vellum.ai/\"}],\"style\":\"normal\"},{\"_key\":\"005c2fb730e1\",\"_type\":\"block\",\"children\":[{\"_key\":\"3f75afb80969\",\"_type\":\"span\",\"marks\":[],\"text\":\"These frameworks make it easy to get started by simplifying standard low-level tasks like calling LLMs, defining and parsing tools, and chaining calls together. However, they often create extra layers of abstraction that can obscure the underlying prompts ​​and responses, making them harder to debug. They can also make it tempting to add complexity when a simpler setup would suffice.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"492fae8c7dd7\",\"_type\":\"block\",\"children\":[{\"_key\":\"6774cdf0cf3c\",\"_type\":\"span\",\"marks\":[],\"text\":\"We suggest that developers start by using LLM APIs directly: many patterns can be implemented in a few lines of code. If you do use a framework, ensure you understand the underlying code. Incorrect assumptions about what's under the hood are a common source of customer error.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"6b5778928844\",\"_type\":\"block\",\"children\":[{\"_key\":\"86d0bc1cfde5\",\"_type\":\"span\",\"marks\":[],\"text\":\"See our \"},{\"_key\":\"52eee1360224\",\"_type\":\"span\",\"marks\":[\"383628b5cda9\"],\"text\":\"cookbook\"},{\"_key\":\"3a48f20aeeea\",\"_type\":\"span\",\"marks\":[],\"text\":\" for some sample implementations.\"}],\"markDefs\":[{\"_key\":\"383628b5cda9\",\"_type\":\"link\",\"blank\":true,\"href\":\"https://platform.claude.com/cookbook/patterns-agents-basic-workflows\"}],\"style\":\"normal\"},{\"_key\":\"ec16d240eb75\",\"_type\":\"block\",\"children\":[{\"_key\":\"7feb8649a290\",\"_type\":\"span\",\"marks\":[],\"text\":\"Building blocks, workflows, and agents\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"2c27daf4c653\",\"_type\":\"block\",\"children\":[{\"_key\":\"de82b71310c6\",\"_type\":\"span\",\"marks\":[],\"text\":\"In this section, we’ll explore the common patterns for agentic systems we’ve seen in production. We'll start with our foundational building block—the augmented LLM—and progressively increase complexity, from simple compositional workflows to autonomous agents.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"7635a90f01fd\",\"_type\":\"block\",\"children\":[{\"_key\":\"7c80c400dad2\",\"_type\":\"span\",\"marks\":[],\"text\":\"Building block: The augmented LLM\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"3f97fb00fd52\",\"_type\":\"block\",\"children\":[{\"_key\":\"d005860bc8eb\",\"_type\":\"span\",\"marks\":[],\"text\":\"The basic building block of agentic systems is an LLM enhanced with augmentations such as retrieval, tools, and memory. Our current models can actively use these capabilities—generating their own search queries, selecting appropriate tools, and determining what information to retain.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"f01bdaf79623\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-d3083d3f40bb2b6f477901cc9a240738d3dd1371-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"e7f06ae9edc5\",\"_type\":\"block\",\"children\":[{\"_key\":\"949a0c137fa60\",\"_type\":\"span\",\"marks\":[],\"text\":\"The augmented LLM\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/d3083d3f40bb2b6f477901cc9a240738d3dd1371-2401x1000.png\",\"width\":2401},{\"_key\":\"f29aae331692\",\"_type\":\"block\",\"children\":[{\"_key\":\"d812fecd455b\",\"_type\":\"span\",\"marks\":[],\"text\":\"We recommend focusing on two key aspects of the implementation: tailoring these capabilities to your specific use case and ensuring they provide an easy, well-documented interface for your LLM. While there are many ways to implement these augmentations, one approach is through our recently released \"},{\"_key\":\"479e4812cc3b\",\"_type\":\"span\",\"marks\":[\"df90abe7bda1\"],\"text\":\"Model Context Protocol\"},{\"_key\":\"69a0d29ca885\",\"_type\":\"span\",\"marks\":[],\"text\":\", which allows developers to integrate with a growing ecosystem of third-party tools with a simple \"},{\"_key\":\"f3015954b27f\",\"_type\":\"span\",\"marks\":[\"7ad3389b7d1b\"],\"text\":\"client implementation\"},{\"_key\":\"f40005a283ae\",\"_type\":\"span\",\"marks\":[],\"text\":\".\"}],\"markDefs\":[{\"_key\":\"df90abe7bda1\",\"_type\":\"link\",\"href\":\"https://www.anthropic.com/news/model-context-protocol\"},{\"_key\":\"7ad3389b7d1b\",\"_type\":\"link\",\"href\":\"https://modelcontextprotocol.io/tutorials/building-a-client#building-mcp-clients\"}],\"style\":\"normal\"},{\"_key\":\"1d5d11f444d6\",\"_type\":\"block\",\"children\":[{\"_key\":\"ae9aacad5695\",\"_type\":\"span\",\"marks\":[],\"text\":\"For the remainder of this post, we'll assume each LLM call has access to these augmented capabilities.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"2061bee3f862\",\"_type\":\"block\",\"children\":[{\"_key\":\"885d7ef51117\",\"_type\":\"span\",\"marks\":[],\"text\":\"Workflow: Prompt chaining\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"27de8d9aefc6\",\"_type\":\"block\",\"children\":[{\"_key\":\"2966f00a207d\",\"_type\":\"span\",\"marks\":[],\"text\":\"Prompt chaining decomposes a task into a sequence of steps, where each LLM call processes the output of the previous one. You can add programmatic checks (see \\\"gate” in the diagram below) on any intermediate steps to ensure that the process is still on track.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"439a56ff8a0e\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-7418719e3dab222dccb379b8879e1dc08ad34c78-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"3d6b65c14b01\",\"_type\":\"block\",\"children\":[{\"_key\":\"563b64da382e0\",\"_type\":\"span\",\"marks\":[],\"text\":\"The prompt chaining workflow\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/7418719e3dab222dccb379b8879e1dc08ad34c78-2401x1000.png\",\"width\":2401},{\"_key\":\"da33ede88812\",\"_type\":\"block\",\"children\":[{\"_key\":\"53be465ddca0\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"When to use this workflow:\"},{\"_key\":\"90761d5c5759\",\"_type\":\"span\",\"marks\":[],\"text\":\" This workflow is ideal for situations where the task can be easily and cleanly decomposed into fixed subtasks. The main goal is to trade off latency for higher accuracy, by making each LLM call an easier task.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"19f415bb2141\",\"_type\":\"block\",\"children\":[{\"_key\":\"79fadf283414\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Examples where prompt chaining is useful:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"d85e90c2c1a4\",\"_type\":\"block\",\"children\":[{\"_key\":\"25c64e353747\",\"_type\":\"span\",\"marks\":[],\"text\":\"Generating Marketing copy, then translating it into a different language.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"2f2eedd1fe4d\",\"_type\":\"block\",\"children\":[{\"_key\":\"75be84bc3160\",\"_type\":\"span\",\"marks\":[],\"text\":\"Writing an outline of a document, checking that the outline meets certain criteria, then writing the document based on the outline.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"b98f7287da24\",\"_type\":\"block\",\"children\":[{\"_key\":\"434b4eac2f67\",\"_type\":\"span\",\"marks\":[],\"text\":\"Workflow: Routing\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"f3c6ace323df\",\"_type\":\"block\",\"children\":[{\"_key\":\"e884e38883d2\",\"_type\":\"span\",\"marks\":[],\"text\":\"Routing classifies an input and directs it to a specialized followup task. This workflow allows for separation of concerns, and building more specialized prompts. Without this workflow, optimizing for one kind of input can hurt performance on other inputs.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"73160937b334\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-5c0c0e9fe4def0b584c04d37849941da55e5e71c-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"1e670493eb45\",\"_type\":\"block\",\"children\":[{\"_key\":\"2ef58e4862b2\",\"_type\":\"span\",\"marks\":[],\"text\":\"The routing workflow\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/5c0c0e9fe4def0b584c04d37849941da55e5e71c-2401x1000.png\",\"width\":2401},{\"_key\":\"1958ed5fbb78\",\"_type\":\"block\",\"children\":[{\"_key\":\"dbe52b92e836\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"When to use this workflow:\"},{\"_key\":\"df955ec2d81a\",\"_type\":\"span\",\"marks\":[],\"text\":\" Routing works well for complex tasks where there are distinct categories that are better handled separately, and where classification can be handled accurately, either by an LLM or a more traditional classification model/algorithm.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"d9d52c88f316\",\"_type\":\"block\",\"children\":[{\"_key\":\"890b33be1666\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Examples where routing is useful:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"809ad645a6c8\",\"_type\":\"block\",\"children\":[{\"_key\":\"f82a70098759\",\"_type\":\"span\",\"marks\":[],\"text\":\"Directing different types of customer service queries (general questions, refund requests, technical support) into different downstream processes, prompts, and tools.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"8477d583c4c0\",\"_type\":\"block\",\"children\":[{\"_key\":\"52693c05c198\",\"_type\":\"span\",\"marks\":[],\"text\":\"Routing easy/common questions to smaller, cost-efficient models like Claude Haiku 4.5 and hard/unusual questions to more capable models like Claude Sonnet 4.5 to optimize for best performance.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"656fdf4f0061\",\"_type\":\"block\",\"children\":[{\"_key\":\"76c14726b496\",\"_type\":\"span\",\"marks\":[],\"text\":\"Workflow: Parallelization\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"0e271eb00502\",\"_type\":\"block\",\"children\":[{\"_key\":\"ef020ab830fc\",\"_type\":\"span\",\"marks\":[],\"text\":\"LLMs can sometimes work simultaneously on a task and have their outputs aggregated programmatically. This workflow, parallelization, manifests in two key variations:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"49c6e84164af\",\"_type\":\"block\",\"children\":[{\"_key\":\"ea078610179f\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Sectioning\"},{\"_key\":\"0b262d1a63a5\",\"_type\":\"span\",\"marks\":[],\"text\":\": Breaking a task into independent subtasks run in parallel.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"360915a1bfe2\",\"_type\":\"block\",\"children\":[{\"_key\":\"69a42a65ab22\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Voting:\"},{\"_key\":\"0a42abd912dc\",\"_type\":\"span\",\"marks\":[],\"text\":\" Running the same task multiple times to get diverse outputs.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"6fedaa1d8606\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-406bb032ca007fd1624f261af717d70e6ca86286-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"5591abcd2a53\",\"_type\":\"block\",\"children\":[{\"_key\":\"39847a3679cd\",\"_type\":\"span\",\"marks\":[],\"text\":\"The parallelization workflow\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/406bb032ca007fd1624f261af717d70e6ca86286-2401x1000.png\",\"width\":2401},{\"_key\":\"2637a2da5762\",\"_type\":\"block\",\"children\":[{\"_key\":\"d73207c7ff7a\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"When to use this workflow:\"},{\"_key\":\"e81d24653b91\",\"_type\":\"span\",\"marks\":[],\"text\":\" Parallelization is effective when the divided subtasks can be parallelized for speed, or when multiple perspectives or attempts are needed for higher confidence results. For complex tasks with multiple considerations, LLMs generally perform better when each consideration is handled by a separate LLM call, allowing focused attention on each specific aspect.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"61c63468e679\",\"_type\":\"block\",\"children\":[{\"_key\":\"95ea5c780edf\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Examples where parallelization is useful:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"c8fa49ec1740\",\"_type\":\"block\",\"children\":[{\"_key\":\"97d76dbbdc61\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Sectioning\"},{\"_key\":\"9220b7482434\",\"_type\":\"span\",\"marks\":[],\"text\":\":\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"345be6d64c36\",\"_type\":\"block\",\"children\":[{\"_key\":\"9d0e85ae78d1\",\"_type\":\"span\",\"marks\":[],\"text\":\"Implementing guardrails where one model instance processes user queries while another screens them for inappropriate content or requests. This tends to perform better than having the same LLM call handle both guardrails and the core response.\"}],\"level\":2,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"a0eb50cfe7a9\",\"_type\":\"block\",\"children\":[{\"_key\":\"04c17e192389\",\"_type\":\"span\",\"marks\":[],\"text\":\"Automating evals for evaluating LLM performance, where each LLM call evaluates a different aspect of the model’s performance on a given prompt.\"}],\"level\":2,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"e7e44b9606af\",\"_type\":\"block\",\"children\":[{\"_key\":\"a55026993457\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Voting\"},{\"_key\":\"407d0170626c\",\"_type\":\"span\",\"marks\":[],\"text\":\":\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"45c826ae0453\",\"_type\":\"block\",\"children\":[{\"_key\":\"8d08968ab276\",\"_type\":\"span\",\"marks\":[],\"text\":\"Reviewing a piece of code for vulnerabilities, where several different prompts review and flag the code if they find a problem.\"}],\"level\":2,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"612250eca4fd\",\"_type\":\"block\",\"children\":[{\"_key\":\"c5b78d23acc1\",\"_type\":\"span\",\"marks\":[],\"text\":\"Evaluating whether a given piece of content is inappropriate, with multiple prompts evaluating different aspects or requiring different vote thresholds to balance false positives and negatives.\"}],\"level\":2,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"1270066e15a2\",\"_type\":\"block\",\"children\":[{\"_key\":\"12fd5d468f3c\",\"_type\":\"span\",\"marks\":[],\"text\":\"Workflow: Orchestrator-workers\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"1c377f5f1ed3\",\"_type\":\"block\",\"children\":[{\"_key\":\"3709765b3054\",\"_type\":\"span\",\"marks\":[],\"text\":\"In the orchestrator-workers workflow, a central LLM dynamically breaks down tasks, delegates them to worker LLMs, and synthesizes their results.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"aa57a4f3302d\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-8985fc683fae4780fb34eab1365ab78c7e51bc8e-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"cd74e6968bb9\",\"_type\":\"block\",\"children\":[{\"_key\":\"6f061e9e1f510\",\"_type\":\"span\",\"marks\":[],\"text\":\"The orchestrator-workers workflow\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/8985fc683fae4780fb34eab1365ab78c7e51bc8e-2401x1000.png\",\"width\":2401},{\"_key\":\"7ca523f4741e\",\"_type\":\"block\",\"children\":[{\"_key\":\"65bc5d4e20ad\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"When to use this workflow:\"},{\"_key\":\"a657450812ca\",\"_type\":\"span\",\"marks\":[],\"text\":\" This workflow is well-suited for complex tasks where you can’t predict the subtasks needed (in coding, for example, the number of files that need to be changed and the nature of the change in each file likely depend on the task). Whereas it’s topographically similar, the key difference from parallelization is its flexibility—subtasks aren't pre-defined, but determined by the orchestrator based on the specific input.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"4476336665ff\",\"_type\":\"block\",\"children\":[{\"_key\":\"f5a733abbab8\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Example where orchestrator-workers is useful:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"d008c56e11fc\",\"_type\":\"block\",\"children\":[{\"_key\":\"5dead3d69938\",\"_type\":\"span\",\"marks\":[],\"text\":\"Coding products that make complex changes to multiple files each time.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"2bb18d7e21e7\",\"_type\":\"block\",\"children\":[{\"_key\":\"a146d80e19d7\",\"_type\":\"span\",\"marks\":[],\"text\":\"Search tasks that involve gathering and analyzing information from multiple sources for possible relevant information.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"b706651db84e\",\"_type\":\"block\",\"children\":[{\"_key\":\"a4f4638c291f\",\"_type\":\"span\",\"marks\":[],\"text\":\"Workflow: Evaluator-optimizer\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"6358f4a14c78\",\"_type\":\"block\",\"children\":[{\"_key\":\"0bc34217ecb7\",\"_type\":\"span\",\"marks\":[],\"text\":\"In the evaluator-optimizer workflow, one LLM call generates a response while another provides evaluation and feedback in a loop.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"16a8e801d5f5\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-14f51e6406ccb29e695da48b17017e899a6119c7-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"cac896efe2e6\",\"_type\":\"block\",\"children\":[{\"_key\":\"325a5e59b9d70\",\"_type\":\"span\",\"marks\":[],\"text\":\"The evaluator-optimizer workflow\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/14f51e6406ccb29e695da48b17017e899a6119c7-2401x1000.png\",\"width\":2401},{\"_key\":\"e9fa63c90633\",\"_type\":\"block\",\"children\":[{\"_key\":\"96d6fca14122\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"When to use this workflow:\"},{\"_key\":\"82c49b1f4eed\",\"_type\":\"span\",\"marks\":[],\"text\":\" This workflow is particularly effective when we have clear evaluation criteria, and when iterative refinement provides measurable value. The two signs of good fit are, first, that LLM responses can be demonstrably improved when a human articulates their feedback; and second, that the LLM can provide such feedback. This is analogous to the iterative writing process a human writer might go through when producing a polished document.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"277d653188ae\",\"_type\":\"block\",\"children\":[{\"_key\":\"8e355d6cc8c4\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Examples where evaluator-optimizer is useful:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"c12152d004bd\",\"_type\":\"block\",\"children\":[{\"_key\":\"e8283d06485b\",\"_type\":\"span\",\"marks\":[],\"text\":\"Literary translation where there are nuances that the translator LLM might not capture initially, but where an evaluator LLM can provide useful critiques.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"5084c368acda\",\"_type\":\"block\",\"children\":[{\"_key\":\"9def0b0ea8d0\",\"_type\":\"span\",\"marks\":[],\"text\":\"Complex search tasks that require multiple rounds of searching and analysis to gather comprehensive information, where the evaluator decides whether further searches are warranted.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"ad8b1497663d\",\"_type\":\"block\",\"children\":[{\"_key\":\"9ad5b8e1d647\",\"_type\":\"span\",\"marks\":[],\"text\":\"Agents\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"4f59bbf9e1b9\",\"_type\":\"block\",\"children\":[{\"_key\":\"7c5198a0258f\",\"_type\":\"span\",\"marks\":[],\"text\":\"Agents are emerging in production as LLMs mature in key capabilities—understanding complex inputs, engaging in reasoning and planning, using tools reliably, and recovering from errors. Agents begin their work with either a command from, or interactive discussion with, the human user. Once the task is clear, agents plan and operate independently, potentially returning to the human for further information or judgement. During execution, it's crucial for the agents to gain “ground truth” from the environment at each step (such as tool call results or code execution) to assess its progress. Agents can then pause for human feedback at checkpoints or when encountering blockers. The task often terminates upon completion, but it’s also common to include stopping conditions (such as a maximum number of iterations) to maintain control.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"ca523b3924fc\",\"_type\":\"block\",\"children\":[{\"_key\":\"fc0cc7a8e2d5\",\"_type\":\"span\",\"marks\":[],\"text\":\"Agents can handle sophisticated tasks, but their implementation is often straightforward. They are typically just LLMs using tools based on environmental feedback in a loop. It is therefore crucial to design toolsets and their documentation clearly and thoughtfully. We expand on best practices for tool development in Appendix 2 (\\\"Prompt Engineering your Tools\\\").\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"f9a5d8505139\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-58d9f10c985c4eb5d53798dea315f7bb5ab6249e-2401x1000-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"bf244e4a01af\",\"_type\":\"block\",\"children\":[{\"_key\":\"6e8bbb02abb5\",\"_type\":\"span\",\"marks\":[],\"text\":\"Autonomous agent\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1000,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/58d9f10c985c4eb5d53798dea315f7bb5ab6249e-2401x1000.png\",\"width\":2401},{\"_key\":\"d08a209b2610\",\"_type\":\"block\",\"children\":[{\"_key\":\"0927b703f539\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"When to use agents:\"},{\"_key\":\"78ed07761f91\",\"_type\":\"span\",\"marks\":[],\"text\":\" Agents can be used for open-ended problems where it’s difficult or impossible to predict the required number of steps, and where you can’t hardcode a fixed path. The LLM will potentially operate for many turns, and you must have some level of trust in its decision-making. Agents' autonomy makes them ideal for scaling tasks in trusted environments.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"80994a9a9e59\",\"_type\":\"block\",\"children\":[{\"_key\":\"1533ba322c5b\",\"_type\":\"span\",\"marks\":[],\"text\":\"The autonomous nature of agents means higher costs, and the potential for compounding errors. We recommend extensive testing in sandboxed environments, along with the appropriate guardrails.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"b03147219fba\",\"_type\":\"block\",\"children\":[{\"_key\":\"02f6eca65a11\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"Examples where agents are useful:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"ce93205c8437\",\"_type\":\"block\",\"children\":[{\"_key\":\"1edffa69ee0c\",\"_type\":\"span\",\"marks\":[],\"text\":\"The following examples are from our own implementations:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"0c0814e58e81\",\"_type\":\"block\",\"children\":[{\"_key\":\"d4bd4f5fc946\",\"_type\":\"span\",\"marks\":[],\"text\":\"A coding Agent to resolve \"},{\"_key\":\"7fca586ad994\",\"_type\":\"span\",\"marks\":[\"52638b81e5f8\"],\"text\":\"SWE-bench tasks\"},{\"_key\":\"80cca208f9aa\",\"_type\":\"span\",\"marks\":[],\"text\":\", which involve edits to many files based on a task description;\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"52638b81e5f8\",\"_type\":\"link\",\"href\":\"https://www.anthropic.com/research/swe-bench-sonnet\"}],\"style\":\"normal\"},{\"_key\":\"68e145c6fa2e\",\"_type\":\"block\",\"children\":[{\"_key\":\"a1fe38379f66\",\"_type\":\"span\",\"marks\":[],\"text\":\"Our \"},{\"_key\":\"bf5dd48f6157\",\"_type\":\"span\",\"marks\":[\"ed0cef766a7b\"],\"text\":\"“computer use” reference implementation\"},{\"_key\":\"daecdcdbe6b0\",\"_type\":\"span\",\"marks\":[],\"text\":\", where Claude uses a computer to accomplish tasks.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"ed0cef766a7b\",\"_type\":\"link\",\"href\":\"https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo\"}],\"style\":\"normal\"},{\"_key\":\"6275dddc0b8d\",\"_type\":\"image\",\"asset\":{\"_ref\":\"image-4b9a1f4eb63d5962a6e1746ac26bbc857cf3474f-2400x1666-png\",\"_type\":\"reference\"},\"caption\":[{\"_key\":\"413b3065558a\",\"_type\":\"block\",\"children\":[{\"_key\":\"7fa75fc658120\",\"_type\":\"span\",\"marks\":[],\"text\":\"High-level flow of a coding agent\"}],\"markDefs\":[],\"style\":\"normal\"}],\"height\":1666,\"markDefs\":null,\"style\":\"inline\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/4b9a1f4eb63d5962a6e1746ac26bbc857cf3474f-2400x1666.png\",\"width\":2400},{\"_key\":\"51d4cb1e6e02\",\"_type\":\"block\",\"children\":[{\"_key\":\"5179eef4542f\",\"_type\":\"span\",\"marks\":[],\"text\":\"Combining and customizing these patterns\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"0512eb9c6824\",\"_type\":\"block\",\"children\":[{\"_key\":\"aa8fb586fc91\",\"_type\":\"span\",\"marks\":[],\"text\":\"These building blocks aren't prescriptive. They're common patterns that developers can shape and combine to fit different use cases. The key to success, as with any LLM features, is measuring performance and iterating on implementations. To repeat: you should consider adding complexity \"},{\"_key\":\"ea8637bc9e25\",\"_type\":\"span\",\"marks\":[\"em\"],\"text\":\"only\"},{\"_key\":\"8446df6f66da\",\"_type\":\"span\",\"marks\":[],\"text\":\" when it demonstrably improves outcomes.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"1632f3ad6c49\",\"_type\":\"block\",\"children\":[{\"_key\":\"06d8ef267abc\",\"_type\":\"span\",\"marks\":[],\"text\":\"Summary\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"ec219b775cf6\",\"_type\":\"block\",\"children\":[{\"_key\":\"d0469c9c12db\",\"_type\":\"span\",\"marks\":[],\"text\":\"Success in the LLM space isn't about building the most sophisticated system. It's about building the \"},{\"_key\":\"57168bd5aa12\",\"_type\":\"span\",\"marks\":[\"em\"],\"text\":\"right\"},{\"_key\":\"48af69bc221e\",\"_type\":\"span\",\"marks\":[],\"text\":\" system for your needs. Start with simple prompts, optimize them with comprehensive evaluation, and add multi-step agentic systems only when simpler solutions fall short.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"e0cfe35ed73f\",\"_type\":\"block\",\"children\":[{\"_key\":\"a7e24c6ca0ea\",\"_type\":\"span\",\"marks\":[],\"text\":\"When implementing agents, we try to follow three core principles:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"47648868dd27\",\"_type\":\"block\",\"children\":[{\"_key\":\"4766258a629c\",\"_type\":\"span\",\"marks\":[],\"text\":\"Maintain \"},{\"_key\":\"f897c69fc8c4\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"simplicity\"},{\"_key\":\"a81038906a5b\",\"_type\":\"span\",\"marks\":[],\"text\":\" in your agent's design.\"}],\"level\":1,\"listItem\":\"number\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"106d626fbdc7\",\"_type\":\"block\",\"children\":[{\"_key\":\"03b89620a420\",\"_type\":\"span\",\"marks\":[],\"text\":\"Prioritize \"},{\"_key\":\"37ccd90cf196\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"transparency\"},{\"_key\":\"c81e8155218d\",\"_type\":\"span\",\"marks\":[],\"text\":\" by explicitly showing the agent’s planning steps.\"}],\"level\":1,\"listItem\":\"number\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"75b71be4882e\",\"_type\":\"block\",\"children\":[{\"_key\":\"faccfdbae4e1\",\"_type\":\"span\",\"marks\":[],\"text\":\"Carefully craft your agent-computer interface (ACI) through thorough tool \"},{\"_key\":\"80db19831d87\",\"_type\":\"span\",\"marks\":[\"strong\"],\"text\":\"documentation and testing\"},{\"_key\":\"9eebc1582608\",\"_type\":\"span\",\"marks\":[],\"text\":\".\"}],\"level\":1,\"listItem\":\"number\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"7a199b39ccb6\",\"_type\":\"block\",\"children\":[{\"_key\":\"6fd76eb0f214\",\"_type\":\"span\",\"marks\":[],\"text\":\"Frameworks can help you get started quickly, but don't hesitate to reduce abstraction layers and build with basic components as you move to production. By following these principles, you can create agents that are not only powerful but also reliable, maintainable, and trusted by their users.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"73b83cd87879\",\"_type\":\"block\",\"children\":[{\"_key\":\"a84276d37c08\",\"_type\":\"span\",\"marks\":[],\"text\":\"Acknowledgements\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"9b6f67595f03\",\"_type\":\"block\",\"children\":[{\"_key\":\"f47a69a4fab6\",\"_type\":\"span\",\"marks\":[],\"text\":\"Written by Erik Schluntz and Barry Zhang. This work draws upon our experiences building agents at Anthropic and the valuable insights shared by our customers, for which we're deeply grateful.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"b9be0b228329\",\"_type\":\"block\",\"children\":[{\"_key\":\"41c016ea4ee5\",\"_type\":\"span\",\"marks\":[],\"text\":\"Appendix 1: Agents in practice\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"76f83b4b079e\",\"_type\":\"block\",\"children\":[{\"_key\":\"b743ef273591\",\"_type\":\"span\",\"marks\":[],\"text\":\"Our work with customers has revealed two particularly promising applications for AI agents that demonstrate the practical value of the patterns discussed above. Both applications illustrate how agents add the most value for tasks that require both conversation and action, have clear success criteria, enable feedback loops, and integrate meaningful human oversight.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"088b9ab8bd70\",\"_type\":\"block\",\"children\":[{\"_key\":\"1be7d9a1de16\",\"_type\":\"span\",\"marks\":[],\"text\":\"A. Customer support\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"f777ab340f1e\",\"_type\":\"block\",\"children\":[{\"_key\":\"0c1eb8067e06\",\"_type\":\"span\",\"marks\":[],\"text\":\"Customer support combines familiar chatbot interfaces with enhanced capabilities through tool integration. This is a natural fit for more open-ended agents because:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"02a401caa27e\",\"_type\":\"block\",\"children\":[{\"_key\":\"d30922b2aa53\",\"_type\":\"span\",\"marks\":[],\"text\":\"Support interactions naturally follow a conversation flow while requiring access to external information and actions;\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"0ae7135f4a49\",\"_type\":\"block\",\"children\":[{\"_key\":\"06a12dccee9f\",\"_type\":\"span\",\"marks\":[],\"text\":\"Tools can be integrated to pull customer data, order history, and knowledge base articles;\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"738f57c2ceb3\",\"_type\":\"block\",\"children\":[{\"_key\":\"9e9ca973b968\",\"_type\":\"span\",\"marks\":[],\"text\":\"Actions such as issuing refunds or updating tickets can be handled programmatically; and\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"54d86bee6129\",\"_type\":\"block\",\"children\":[{\"_key\":\"c4df034a6040\",\"_type\":\"span\",\"marks\":[],\"text\":\"Success can be clearly measured through user-defined resolutions.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"07bbd2824340\",\"_type\":\"block\",\"children\":[{\"_key\":\"5a195540db38\",\"_type\":\"span\",\"marks\":[],\"text\":\"Several companies have demonstrated the viability of this approach through usage-based pricing models that charge only for successful resolutions, showing confidence in their agents' effectiveness.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"a097ab9f5abd\",\"_type\":\"block\",\"children\":[{\"_key\":\"63976d428069\",\"_type\":\"span\",\"marks\":[],\"text\":\"B. Coding agents\"}],\"markDefs\":[],\"style\":\"h3\"},{\"_key\":\"ac1179ee0cf4\",\"_type\":\"block\",\"children\":[{\"_key\":\"ed4d758fbaa5\",\"_type\":\"span\",\"marks\":[],\"text\":\"The software development space has shown remarkable potential for LLM features, with capabilities evolving from code completion to autonomous problem-solving. Agents are particularly effective because:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"0a05ec9d5880\",\"_type\":\"block\",\"children\":[{\"_key\":\"309bc31f6769\",\"_type\":\"span\",\"marks\":[],\"text\":\"Code solutions are verifiable through automated tests;\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"7a2f2a7bbfc4\",\"_type\":\"block\",\"children\":[{\"_key\":\"e07deb316592\",\"_type\":\"span\",\"marks\":[],\"text\":\"Agents can iterate on solutions using test results as feedback;\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"4f4d0658bb8b\",\"_type\":\"block\",\"children\":[{\"_key\":\"6ff98f81837b\",\"_type\":\"span\",\"marks\":[],\"text\":\"The problem space is well-defined and structured; and\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"f43e5de4684f\",\"_type\":\"block\",\"children\":[{\"_key\":\"6715ac66031c\",\"_type\":\"span\",\"marks\":[],\"text\":\"Output quality can be measured objectively.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"5bbf98c47d18\",\"_type\":\"block\",\"children\":[{\"_key\":\"99966ce9f5e8\",\"_type\":\"span\",\"marks\":[],\"text\":\"In our own implementation, agents can now solve real GitHub issues in the \"},{\"_key\":\"4d7441572af1\",\"_type\":\"span\",\"marks\":[\"b13ed6843a2a\"],\"text\":\"SWE-bench Verified\"},{\"_key\":\"d934ce22e59f\",\"_type\":\"span\",\"marks\":[],\"text\":\" benchmark based on the pull request description alone. However, whereas automated testing helps verify functionality, human review remains crucial for ensuring solutions align with broader system requirements.\"}],\"markDefs\":[{\"_key\":\"b13ed6843a2a\",\"_type\":\"link\",\"href\":\"https://www.anthropic.com/research/swe-bench-sonnet\"}],\"style\":\"normal\"},{\"_key\":\"0b6acb0e9ccf\",\"_type\":\"block\",\"children\":[{\"_key\":\"f8390c3ce19e\",\"_type\":\"span\",\"marks\":[],\"text\":\"Appendix 2: Prompt engineering your tools\"}],\"markDefs\":[],\"style\":\"h2\"},{\"_key\":\"d134139edb80\",\"_type\":\"block\",\"children\":[{\"_key\":\"ba428429da63\",\"_type\":\"span\",\"marks\":[],\"text\":\"No matter which agentic system you're building, tools will likely be an important part of your agent. \"},{\"_key\":\"ecb156dadd9e\",\"_type\":\"span\",\"marks\":[\"1ae4a38f3e08\"],\"text\":\"Tools\"},{\"_key\":\"b62ec23e2a35\",\"_type\":\"span\",\"marks\":[],\"text\":\" enable Claude to interact with external services and APIs by specifying their exact structure and definition in our API. When Claude responds, it will include a \"},{\"_key\":\"4d912719e236\",\"_type\":\"span\",\"marks\":[\"d6f8e3137c8b\"],\"text\":\"tool use block\"},{\"_key\":\"926eb5b304ab\",\"_type\":\"span\",\"marks\":[],\"text\":\" in the API response if it plans to invoke a tool. Tool definitions and specifications should be given just as much prompt engineering attention as your overall prompts. In this brief appendix, we describe how to prompt engineer your tools.\"}],\"markDefs\":[{\"_key\":\"1ae4a38f3e08\",\"_type\":\"link\",\"href\":\"https://www.anthropic.com/news/tool-use-ga\"},{\"_key\":\"d6f8e3137c8b\",\"_type\":\"link\",\"href\":\"https://docs.anthropic.com/en/docs/build-with-claude/tool-use#example-api-response-with-a-tool-use-content-block\"}],\"style\":\"normal\"},{\"_key\":\"87c28e1ca348\",\"_type\":\"block\",\"children\":[{\"_key\":\"8a1112791fab\",\"_type\":\"span\",\"marks\":[],\"text\":\"There are often several ways to specify the same action. For instance, you can specify a file edit by writing a diff, or by rewriting the entire file. For structured output, you can return code inside markdown or inside JSON. In software engineering, differences like these are cosmetic and can be converted losslessly from one to the other. However, some formats are much more difficult for an LLM to write than others. Writing a diff requires knowing how many lines are changing in the chunk header before the new code is written. Writing code inside JSON (compared to markdown) requires extra escaping of newlines and quotes.\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"07e864d098ce\",\"_type\":\"block\",\"children\":[{\"_key\":\"c34066890bcb\",\"_type\":\"span\",\"marks\":[],\"text\":\"Our suggestions for deciding on tool formats are the following:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"b48c25d23127\",\"_type\":\"block\",\"children\":[{\"_key\":\"8af7972a7d00\",\"_type\":\"span\",\"marks\":[],\"text\":\"Give the model enough tokens to \\\"think\\\" before it writes itself into a corner.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"52e482283405\",\"_type\":\"block\",\"children\":[{\"_key\":\"28d0adb22fef\",\"_type\":\"span\",\"marks\":[],\"text\":\"Keep the format close to what the model has seen naturally occurring in text on the internet.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"de614fab8c0e\",\"_type\":\"block\",\"children\":[{\"_key\":\"e2f70af794a3\",\"_type\":\"span\",\"marks\":[],\"text\":\"Make sure there's no formatting \\\"overhead\\\" such as having to keep an accurate count of thousands of lines of code, or string-escaping any code it writes.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"83c1bdbfb8fd\",\"_type\":\"block\",\"children\":[{\"_key\":\"40300accf2f1\",\"_type\":\"span\",\"marks\":[],\"text\":\"One rule of thumb is to think about how much effort goes into human-computer interfaces (HCI), and plan to invest just as much effort in creating good \"},{\"_key\":\"fb05b4688807\",\"_type\":\"span\",\"marks\":[\"em\"],\"text\":\"agent\"},{\"_key\":\"0550f1935a0c\",\"_type\":\"span\",\"marks\":[],\"text\":\"-computer interfaces (ACI). Here are some thoughts on how to do so:\"}],\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"f76d81009662\",\"_type\":\"block\",\"children\":[{\"_key\":\"ce0bf09747d6\",\"_type\":\"span\",\"marks\":[],\"text\":\"Put yourself in the model's shoes. Is it obvious how to use this tool, based on the description and parameters, or would you need to think carefully about it? If so, then it’s probably also true for the model. A good tool definition often includes example usage, edge cases, input format requirements, and clear boundaries from other tools.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"56a8d27fd4a5\",\"_type\":\"block\",\"children\":[{\"_key\":\"9bfcef3eedd1\",\"_type\":\"span\",\"marks\":[],\"text\":\"How can you change parameter names or descriptions to make things more obvious? Think of this as writing a great docstring for a junior developer on your team. This is especially important when using many similar tools.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[],\"style\":\"normal\"},{\"_key\":\"329b91bc00e9\",\"_type\":\"block\",\"children\":[{\"_key\":\"f14b3d330f52\",\"_type\":\"span\",\"marks\":[],\"text\":\"Test how the model uses your tools: Run many example inputs in our \"},{\"_key\":\"cbf785a73ea5\",\"_type\":\"span\",\"marks\":[\"80a334f3411d\"],\"text\":\"workbench\"},{\"_key\":\"d9bf386b6070\",\"_type\":\"span\",\"marks\":[],\"text\":\" to see what mistakes the model makes, and iterate.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"80a334f3411d\",\"_type\":\"link\",\"href\":\"https://console.anthropic.com/workbench\"}],\"style\":\"normal\"},{\"_key\":\"07910ed9d5b7\",\"_type\":\"block\",\"children\":[{\"_key\":\"ffcd0ffbf8c4\",\"_type\":\"span\",\"marks\":[\"12560123dacb\"],\"text\":\"Poka-yoke\"},{\"_key\":\"fe5cb9b4581c\",\"_type\":\"span\",\"marks\":[],\"text\":\" your tools. Change the arguments so that it is harder to make mistakes.\"}],\"level\":1,\"listItem\":\"bullet\",\"markDefs\":[{\"_key\":\"12560123dacb\",\"_type\":\"link\",\"href\":\"https://en.wikipedia.org/wiki/Poka-yoke\"}],\"style\":\"normal\"},{\"_key\":\"8276f2a1e777\",\"_type\":\"block\",\"children\":[{\"_key\":\"f6a37bef3f0f\",\"_type\":\"span\",\"marks\":[],\"text\":\"While building our agent for \"},{\"_key\":\"d8247226b19e\",\"_type\":\"span\",\"marks\":[\"84348675f100\"],\"text\":\"SWE-bench\"},{\"_key\":\"58ebcc3e178b\",\"_type\":\"span\",\"marks\":[],\"text\":\", we actually spent more time optimizing our tools than the overall prompt. For example, we found that the model would make mistakes with tools using relative filepaths after the agent had moved out of the root directory. To fix this, we changed the tool to always require absolute filepaths—and we found that the model used this method flawlessly.\"}],\"markDefs\":[{\"_key\":\"84348675f100\",\"_type\":\"link\",\"href\":\"https://www.anthropic.com/research/swe-bench-sonnet\"}],\"style\":\"normal\"}],\"cardImage\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-039b6648c28eb33070a63a58d49013600b229238-2554x2554-svg\",\"_type\":\"reference\"},\"height\":2554,\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/039b6648c28eb33070a63a58d49013600b229238-2554x2554.svg\",\"width\":2554},\"cardPhoto\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-24d257dde40fb644b80cc1ca858c316f91485675-300x300-svg\",\"_type\":\"reference\"}},\"hero\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-039b6648c28eb33070a63a58d49013600b229238-2554x2554-svg\",\"_type\":\"reference\"},\"caption\":null,\"height\":2554,\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/039b6648c28eb33070a63a58d49013600b229238-2554x2554.svg\",\"width\":2554},\"meta\":{\"robotsIndexable\":true,\"seoDescription\":\"Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI.\",\"seoTitle\":\"Building Effective AI Agents\",\"socialImage\":{\"_type\":\"image\",\"asset\":{\"_createdAt\":\"2025-03-04T17:31:41Z\",\"_id\":\"image-76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260-png\",\"_rev\":\"9WHkd7ITmHwRqYoHFwR0yA\",\"_type\":\"sanity.imageAsset\",\"_updatedAt\":\"2025-03-04T17:31:41Z\",\"assetId\":\"76b5733c669f0dfb9c7aa7fc512a495867cf12e6\",\"extension\":\"png\",\"metadata\":{\"_type\":\"sanity.imageMetadata\",\"blurHash\":\"MIQvq3t7~qxu9G-:oMV[WBoe?bj[9ZWC%M\",\"dimensions\":{\"_type\":\"sanity.imageDimensions\",\"aspectRatio\":1.9047619047619047,\"height\":1260,\"width\":2400},\"hasAlpha\":true,\"isOpaque\":true,\"lqip\":\"data:image/png;base64, \",\"palette\":{\"_type\":\"sanity.imagePalette\",\"darkMuted\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#42413d\",\"foreground\":\"#fff\",\"population\":0.23,\"title\":\"#fff\"},\"darkVibrant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#58750e\",\"foreground\":\"#fff\",\"population\":0,\"title\":\"#fff\"},\"dominant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#42413d\",\"foreground\":\"#fff\",\"population\":0.23,\"title\":\"#fff\"},\"lightMuted\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#bcc4a4\",\"foreground\":\"#000\",\"population\":0,\"title\":\"#fff\"},\"lightVibrant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#f6fce7\",\"foreground\":\"#000\",\"population\":0.12,\"title\":\"#000\"},\"muted\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#849068\",\"foreground\":\"#fff\",\"population\":0.11,\"title\":\"#fff\"},\"vibrant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#a9e21c\",\"foreground\":\"#000\",\"population\":0,\"title\":\"#fff\"}}},\"mimeType\":\"image/png\",\"originalFilename\":\"eng-blog-social2.png\",\"path\":\"images/4zrzovbb/website/76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260.png\",\"sha1hash\":\"76b5733c669f0dfb9c7aa7fc512a495867cf12e6\",\"size\":75180,\"uploadId\":\"d60b2t36czs05P60CyKxW1me0Yz6x3Q2\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260.png\"}}},\"publishedOn\":\"2024-12-19\",\"slug\":{\"_type\":\"slug\",\"current\":\"building-effective-agents\"},\"spotIllustration\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-14b20fce6e93c79be47352da0fa4bebd597ebfa8-1200x1200-svg\",\"_type\":\"reference\"},\"height\":1200,\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/14b20fce6e93c79be47352da0fa4bebd597ebfa8-1200x1200.svg\",\"width\":1200},\"subjects\":[{\"_key\":\"architecture\",\"_type\":\"tag\",\"label\":\"Architecture\",\"value\":\"architecture\"}],\"summary\":\"We've worked with dozens of teams building LLM agents across industries. Consistently, the most successful implementations use simple, composable patterns rather than complex frameworks. \",\"title\":\"Building effective agents\"},\"siteSettings\":{\"_createdAt\":\"2023-11-03T16:49:36Z\",\"_id\":\"13c6e1a1-6f38-400c-ae18-89d73b6ba991\",\"_rev\":\"6eD7Bdagk3xcfVrXbEMOQg\",\"_system\":{\"base\":{\"id\":\"13c6e1a1-6f38-400c-ae18-89d73b6ba991\",\"rev\":\"xszlx3oRr3kHIcdIdiMXie\"}},\"_type\":\"siteSettings\",\"_updatedAt\":\"2026-03-10T21:52:45Z\",\"announcement\":null,\"claudeCta\":{\"desktopCtas\":null,\"mobileCtas\":[{\"title\":\"Log in to Claude\",\"url\":\"https://claude.ai/login\"},{\"title\":\"Download app\",\"url\":\"https://claude.ai/download\"}],\"sections\":[{\"category\":\"Products\",\"links\":[{\"title\":\"Claude\",\"url\":\"https://claude.com/product/overview\"},{\"title\":\"Claude Code\",\"url\":\"https://claude.com/product/claude-code\"},{\"title\":\"Claude Cowork\",\"url\":\"https://claude.com/product/cowork\"},{\"title\":\"Claude Platform\",\"url\":\"https://claude.com/platform/api\"},{\"title\":\"Pricing\",\"url\":\"https://claude.com/pricing\"},{\"title\":\"Contact sales\",\"url\":\"https://claude.com/contact-sales\"}]},{\"category\":\"Models\",\"links\":[{\"title\":\"Opus\",\"url\":\"/claude/opus\"},{\"title\":\"Sonnet\",\"url\":\"/claude/sonnet\"},{\"title\":\"Haiku\",\"url\":\"/claude/haiku\"}]},{\"category\":\"Log in\",\"links\":[{\"title\":\"Claude.ai\",\"url\":\"https://claude.ai\"},{\"title\":\"Claude Console\",\"url\":\"https://platform.claude.com/\"}]}],\"title\":\"Try Claude\",\"url\":\"https://claude.ai/\"},\"copyright\":\"© 2026 Anthropic PBC\",\"footer\":{\"items\":[{\"_key\":\"84532931ef2c\",\"_type\":\"item\",\"content\":[{\"_key\":\"0f59d6753770\",\"_type\":\"block\",\"children\":[{\"_key\":\"c0f46d1f9f5d\",\"_type\":\"span\",\"marks\":[],\"text\":\"Anthropic exists to develop AI that's safe, beneficial, and understood. Claude is how that research reaches the world. Our methods are documented, our findings published, and our progress reported openly.\"}],\"markDefs\":[],\"style\":\"normal\"}],\"title\":\"Our mission\"},{\"_key\":\"f48d7bd5cb15\",\"_type\":\"item\",\"content\":[{\"_key\":\"1179495194ab\",\"_type\":\"block\",\"children\":[{\"_key\":\"408c099bd091\",\"_type\":\"span\",\"marks\":[],\"text\":\"We commit to defined safety thresholds before advancing to more capable models. We are currently operating at ASL-3. Policy last updated January 2026. Read the full RSP →\"}],\"markDefs\":[],\"style\":\"normal\"}],\"title\":\"Responsible Scaling Policy\"},{\"_key\":\"9abb17c23057\",\"_type\":\"links\",\"category\":\"Log in\",\"links\":[{\"_key\":\"1a42aa0d0289\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"fc4c7c24a145\",\"_ref\":\"5516a01a-276b-41c2-9ac3-87afe2c15ee3\",\"_type\":\"reference\"}]}],\"links\":[{\"_key\":\"a37fc8514b0e\",\"_type\":\"links\",\"category\":\"Research\",\"links\":[{\"_key\":\"425b3b6b7a4d\",\"_ref\":\"48d94ab5-7352-44e3-8f17-4d875b60e187\",\"_type\":\"reference\"},{\"_key\":\"056e2f3f972f\",\"_ref\":\"1aece7e6-62d6-4852-8fdf-ef019fd0c9fa\",\"_type\":\"reference\"},{\"_key\":\"f9178e9f3596\",\"_ref\":\"bee29c6d-b1e7-4f8c-81bc-e5e4d686c09d\",\"_type\":\"reference\"},{\"_key\":\"249805e942dd\",\"_ref\":\"0896c36a-7d1a-4825-b8d2-f2a737c4a8d2\",\"_type\":\"reference\"},{\"_key\":\"a40a9b9c4507\",\"_ref\":\"aea70937-06d8-4491-9e8e-c28493032e93\",\"_type\":\"reference\"}]},{\"_key\":\"3828e0ead99f\",\"_type\":\"links\",\"category\":\"Product\",\"links\":[{\"_key\":\"2eb3c8bff3c0\",\"_ref\":\"871fb3f9-af66-429f-8285-971fc2e2e995\",\"_type\":\"reference\"},{\"_key\":\"019896bf84f4\",\"_ref\":\"0266dfc7-1049-45c4-9abc-5956b6b9869d\",\"_type\":\"reference\"},{\"_key\":\"b04a607469a4\",\"_ref\":\"84c5aafd-25ed-4605-bfd1-962c23f8d7d3\",\"_type\":\"reference\"},{\"_key\":\"71e4d90ec0b4\",\"_ref\":\"379e2368-0940-4f21-895a-ba224eeb1e72\",\"_type\":\"reference\"},{\"_key\":\"521a888849d5\",\"_ref\":\"e8fcf6bd-24dd-4dad-b8f7-802f6d2b2270\",\"_type\":\"reference\"},{\"_key\":\"da8099ccef62\",\"_ref\":\"fb5af9b1-e6a1-4d9c-a6ea-11c2e391f9a3\",\"_type\":\"reference\"},{\"_key\":\"b8cf8c92ad48\",\"_ref\":\"82ea59a4-14e2-46e9-ad3c-60749116cddd\",\"_type\":\"reference\"},{\"_key\":\"da6d1cadaf30\",\"_ref\":\"97adc62e-06d9-489f-b957-6fd670da4cc8\",\"_type\":\"reference\"},{\"_key\":\"367041dad139\",\"_ref\":\"06e791f6-11bb-4f72-9a67-cfbc209a88e1\",\"_type\":\"reference\"},{\"_key\":\"b794e270900a\",\"_ref\":\"f0971b42-b90c-4f76-8b61-bf3029c2a8c1\",\"_type\":\"reference\"},{\"_key\":\"a4f31040d4f9\",\"_ref\":\"3c1ad26a-b4bf-422c-a34e-cdcebcce361e\",\"_type\":\"reference\"},{\"_key\":\"62f0bc80e275\",\"_ref\":\"bd190763-f34a-4ba6-9848-f35991239b77\",\"_type\":\"reference\"},{\"_key\":\"9b273e667a91\",\"_ref\":\"f77f9fb1-350f-4383-9205-5e72408121d0\",\"_type\":\"reference\"},{\"_key\":\"daca903791f4\",\"_ref\":\"540865cf-3a53-4414-8195-5c7e8965115a\",\"_type\":\"reference\"}]},{\"_key\":\"7ea0130887a6\",\"_type\":\"links\",\"category\":\"Models\",\"links\":[{\"_key\":\"7943ec60c5fa\",\"_ref\":\"6fed18e6-19f4-4d94-a13f-f54bb80b9043\",\"_type\":\"reference\"},{\"_key\":\"d4b6b7eea2d7\",\"_ref\":\"726b0909-ee85-4129-ae6d-53bf8381f1df\",\"_type\":\"reference\"},{\"_key\":\"0e330b84e1fb\",\"_ref\":\"4c8ae521-3fe6-4500-9b0a-69ae3c705423\",\"_type\":\"reference\"}]},{\"_key\":\"a1d6f557384d\",\"_type\":\"links\",\"category\":\"Solutions\",\"links\":[{\"_key\":\"69ed8fd67e49\",\"_ref\":\"4b79685e-d504-4e0e-a4b2-14f23e04e6bc\",\"_type\":\"reference\"},{\"_key\":\"9603cde1b65e\",\"_ref\":\"61729eca-679c-446a-a5d1-659c8f35e4fb\",\"_type\":\"reference\"},{\"_key\":\"47e081170c43\",\"_ref\":\"5359f2ce-1fd8-4279-86ba-a4d5253b70d6\",\"_type\":\"reference\"},{\"_key\":\"84c155cbe14e\",\"_ref\":\"6760c56c-eb85-4d48-9cb1-7a6f41174d40\",\"_type\":\"reference\"},{\"_key\":\"768e6bc8fbbe\",\"_ref\":\"6fed0b2f-d33c-4c8b-9cee-947025748c22\",\"_type\":\"reference\"},{\"_key\":\"e1c25a67608b\",\"_ref\":\"527f5f68-8c55-440b-8783-8429afb36661\",\"_type\":\"reference\"},{\"_key\":\"913adecdaa9a\",\"_ref\":\"63d361c3-8d4e-4d36-9d53-a1581ec68ffd\",\"_type\":\"reference\"},{\"_key\":\"4e8e983019cd\",\"_ref\":\"732ad03e-d598-45c2-b696-862a4b453903\",\"_type\":\"reference\"},{\"_key\":\"37b07476da3e\",\"_ref\":\"8e7028f9-d78a-47a9-8fa6-245d1c406d29\",\"_type\":\"reference\"},{\"_key\":\"3011ece54768\",\"_ref\":\"af757441-c063-4708-a942-626bf70a93a9\",\"_type\":\"reference\"},{\"_key\":\"73c1729b7d79\",\"_ref\":\"109858a2-45a8-4875-a7c8-2af42ae07da9\",\"_type\":\"reference\"}]},{\"_key\":\"49567dbb2d29\",\"_type\":\"links\",\"category\":\"Claude Developer Platform\",\"links\":[{\"_key\":\"5df918d6b7d1\",\"_ref\":\"360b4c03-55ea-4854-b983-da3d48345030\",\"_type\":\"reference\"},{\"_key\":\"9607aec4c511\",\"_ref\":\"bef3c41f-ee8b-473e-b651-99572b71551a\",\"_type\":\"reference\"},{\"_key\":\"ad11e8885306\",\"_ref\":\"beed8c07-870d-4c92-bacd-92e1416fc40c\",\"_type\":\"reference\"},{\"_key\":\"27f1ab77408f\",\"_ref\":\"a739ac65-69f5-4021-8c2f-10a056ac248a\",\"_type\":\"reference\"},{\"_key\":\"20051698a149\",\"_ref\":\"1e864382-640b-4ba3-9634-36ed4a405d23\",\"_type\":\"reference\"},{\"_key\":\"0e1be6309d20\",\"_ref\":\"f7ebf79d-174e-4265-90f9-1eeac2eb329e\",\"_type\":\"reference\"},{\"_key\":\"2d36dafeb771\",\"_ref\":\"9680946c-b126-4146-91d9-253886228cfb\",\"_type\":\"reference\"}]},{\"_key\":\"f4d76a773cf7\",\"_type\":\"links\",\"category\":\"Learn\",\"links\":[{\"_key\":\"61310ffdad48\",\"_ref\":\"22ba8fcf-12ed-4858-b162-ca8cb047ca1e\",\"_type\":\"reference\"},{\"_key\":\"3ffc98626812\",\"_ref\":\"eb64806c-2c86-4638-938a-42ae30660fa0\",\"_type\":\"reference\"},{\"_key\":\"b17050a55ac4\",\"_ref\":\"65f2d00e-65e0-4161-a12f-072778b54b9b\",\"_type\":\"reference\"},{\"_key\":\"67ccbc0a2594\",\"_ref\":\"4b99a183-1d71-4434-a472-dc1cad69aaf1\",\"_type\":\"reference\"},{\"_key\":\"44cc15db896d\",\"_ref\":\"b7d4b62c-23d1-4541-a89d-130b9f15d471\",\"_type\":\"reference\"},{\"_key\":\"4b954fd43462\",\"_ref\":\"b318081c-4e12-49fc-b781-2a37083c3487\",\"_type\":\"reference\"},{\"_key\":\"31f137757d66\",\"_ref\":\"47020628-976d-4c6f-8620-ab2813835b87\",\"_type\":\"reference\"},{\"_key\":\"d84a9239becc\",\"_ref\":\"34dfe604-dcd2-45b4-89e8-123f70a9c39a\",\"_type\":\"reference\"},{\"_key\":\"caaad0a4a1eb\",\"_ref\":\"ca3d1edf-fb70-4ebd-9b83-732b935ee46b\",\"_type\":\"reference\"},{\"_key\":\"605394c42474\",\"_ref\":\"d42f581f-dd1b-44cd-9164-8a35fe9d9d6c\",\"_type\":\"reference\"},{\"_key\":\"e202f33e99b3\",\"_ref\":\"92507305-15ac-43eb-a026-22f8f1e3d661\",\"_type\":\"reference\"},{\"_key\":\"0c9dcb1a3d0f\",\"_ref\":\"a8dacbb8-db2b-45f6-9749-e613eb08a2b8\",\"_type\":\"reference\"},{\"_key\":\"d06a697e284d\",\"_ref\":\"679500a5-eeb6-41a6-a619-7db2f3d5efd1\",\"_type\":\"reference\"}]},{\"_key\":\"36c16b825f48\",\"_type\":\"links\",\"category\":\"Company\",\"links\":[{\"_key\":\"ddda2c0403e9\",\"_ref\":\"bff5e01a-fc87-4866-8cbf-7c5d776ec041\",\"_type\":\"reference\"},{\"_key\":\"ccd7bae80fd0\",\"_ref\":\"9c3b7958-615f-4732-8607-489d88857b08\",\"_type\":\"reference\"},{\"_key\":\"7b06f76b370f\",\"_ref\":\"27b23089-5dd9-4c69-bea1-01e811584807\",\"_type\":\"reference\"},{\"_key\":\"8f2769b6e6fb\",\"_ref\":\"aa586684-1720-4110-bf43-dd19bcf06c5e\",\"_type\":\"reference\"},{\"_key\":\"250954535b1d\",\"_ref\":\"c0a66801-9411-411f-bd02-ef9c1f5ccc55\",\"_type\":\"reference\"},{\"_key\":\"a9644ed69d5c\",\"_ref\":\"500e9c73-aa2b-4b65-bd29-4e4587f76cb1\",\"_type\":\"reference\"},{\"_key\":\"a0ac6f7a195a\",\"_ref\":\"24b8f488-80e3-4a61-8616-fa82c091e836\",\"_type\":\"reference\"},{\"_key\":\"2abad8d24dcb\",\"_ref\":\"73a59169-4f0f-47ce-ad13-72356dc026e5\",\"_type\":\"reference\"},{\"_key\":\"2d21463b2abe\",\"_ref\":\"856229e6-c91d-4a3b-9cf6-77fe5f6fe2be\",\"_type\":\"reference\"}]},{\"_key\":\"6d4642d726ed\",\"_type\":\"links\",\"category\":\"Help \u0026 Security\",\"links\":[{\"_key\":\"15726ee3c6c7\",\"_ref\":\"502a9f76-aed8-4fb7-bf39-7f0ba68014df\",\"_type\":\"reference\"},{\"_key\":\"46d072d2229e\",\"_ref\":\"f44e9c1c-db21-4ba2-998f-5919d74a08e8\",\"_type\":\"reference\"},{\"_key\":\"2d4b4b27c7b0\",\"_ref\":\"2f6d0c79-6fa6-43a4-a0da-7846f57ae878\",\"_type\":\"reference\"}]},{\"_key\":\"caee0266e006\",\"_type\":\"links\",\"category\":\"Terms \u0026 Policies\",\"links\":[{\"_key\":\"ba212a88c5a1\",\"_ref\":\"a431289f-5882-42c7-8eb7-cb78dd35b342\",\"_type\":\"reference\"},{\"_key\":\"f59a3c39b233\",\"_ref\":\"5f540a50-d93d-4b70-b65d-2cf050e43005\",\"_type\":\"reference\"},{\"_key\":\"84fea21b620c\",\"_ref\":\"1b96f86a-f30a-42cd-be3c-476d209cfe1f\",\"_type\":\"reference\"},{\"_key\":\"803424ed1062\",\"_ref\":\"b1560401-d6fb-41a2-bbf0-dc40414fbf31\",\"_type\":\"reference\"},{\"_key\":\"5fab7abf28a8\",\"_ref\":\"f5ec5068-4eb0-4c07-895e-8c66bcb04740\",\"_type\":\"reference\"},{\"_key\":\"fac7a0e29730\",\"_ref\":\"72252247-e536-490d-9f8b-5eef43e91549\",\"_type\":\"reference\"},{\"_key\":\"71b3e8629514\",\"_ref\":\"2fc03128-78c8-4173-adc9-8926dfdf6bd5\",\"_type\":\"reference\"}]}]},\"footerNavigation\":[{\"_key\":\"716b96b62292\",\"links\":[{\"title\":\"Claude\",\"url\":\"https://claude.com/product/overview\"},{\"title\":\"Claude Code\",\"url\":\"https://claude.com/product/claude-code\"},{\"title\":\"Claude Code Enterprise\",\"url\":\"https://claude.com/product/claude-code/enterprise\"},{\"title\":\"Cowork\",\"url\":\"https://claude.com/product/cowork\"},{\"title\":\"Claude for Chrome\",\"url\":\"https://claude.com/chrome\"},{\"title\":\"Claude for Excel\",\"url\":\"https://claude.com/claude-for-excel\"},{\"title\":\"Claude for PowerPoint\",\"url\":\"https://claude.com/claude-for-powerpoint\"},{\"title\":\"Claude for Slack\",\"url\":\"https://claude.com/claude-for-slack\"},{\"title\":\"Skills\",\"url\":\"https://www.claude.com/skills\"},{\"title\":\"Max plan\",\"url\":\"https://claude.com/pricing/max\"},{\"title\":\"Team plan\",\"url\":\"https://claude.com/pricing/team\"},{\"title\":\"Enterprise plan\",\"url\":\"https://claude.com/pricing/enterprise\"},{\"title\":\"Download app\",\"url\":\"https://claude.ai/download\"},{\"title\":\"Pricing\",\"url\":\"https://claude.com/pricing\"},{\"title\":\"Log in to Claude\",\"url\":\"https://claude.ai/\"}],\"title\":\"Products\"},{\"_key\":\"0229138ff25d\",\"links\":[{\"title\":\"Opus\",\"url\":\"https://www.anthropic.com/claude/opus\"},{\"title\":\"Sonnet\",\"url\":\"https://www.anthropic.com/claude/sonnet\"},{\"title\":\"Haiku\",\"url\":\"https://www.anthropic.com/claude/haiku\"}],\"title\":\"Models\"},{\"_key\":\"df2df9219e3abce95d6d83387e2d9bd6\",\"links\":[{\"title\":\"AI agents\",\"url\":\"https://claude.com/solutions/agents\"},{\"title\":\"Code modernization\",\"url\":\"https://claude.com/solutions/code-modernization\"},{\"title\":\"Coding\",\"url\":\"https://claude.com/solutions/coding\"},{\"title\":\"Customer support\",\"url\":\"https://claude.com/solutions/customer-support\"},{\"title\":\"Education\",\"url\":\"https://claude.com/solutions/education\"},{\"title\":\"Financial services\",\"url\":\"https://claude.com/solutions/financial-services\"},{\"title\":\"Government\",\"url\":\"https://claude.com/solutions/government\"},{\"title\":\"Healthcare\",\"url\":\"https://claude.com/solutions/healthcare\"},{\"title\":\"Life sciences\",\"url\":\"https://claude.com/solutions/life-sciences\"},{\"title\":\"Nonprofits\",\"url\":\"https://claude.com/solutions/nonprofits\"}],\"title\":\"Solutions\"},{\"_key\":\"f286ca01fc7aaabd131f347b711a971b\",\"links\":[{\"title\":\"Overview\",\"url\":\"https://claude.com/platform/api\"},{\"title\":\"Developer docs\",\"url\":\"https://platform.claude.com/docs\"},{\"title\":\"Pricing\",\"url\":\"https://claude.com/pricing#api\"},{\"title\":\"Marketplace\",\"url\":\"https://claude.com/platform/marketplace\"},{\"title\":\"Regional compliance\",\"url\":\"https://claude.com/regional-compliance\"},{\"title\":\"Amazon Bedrock\",\"url\":\"https://claude.com/partners/amazon-bedrock\"},{\"title\":\"Google Cloud’s Vertex AI\",\"url\":\"https://claude.com/partners/google-cloud-vertex-ai\"},{\"title\":\"Console login\",\"url\":\"https://platform.claude.com/\"}],\"title\":\"Claude Platform\"},{\"_key\":\"4b255e67f68c270e0072c7564e084e24\",\"links\":[{\"title\":\"Blog\",\"url\":\"https://claude.com/blog\"},{\"title\":\"Claude partner network\",\"url\":\"https://claude.com/partners\"},{\"title\":\"Community\",\"url\":\"https://claude.com/community\"},{\"title\":\"Connectors\",\"url\":\"https://claude.com/connectors\"},{\"title\":\"Courses\",\"url\":\"/learn\"},{\"title\":\"Customer stories\",\"url\":\"https://claude.com/customers\"},{\"title\":\"Engineering at Anthropic\",\"url\":\"/engineering\"},{\"title\":\"Events\",\"url\":\"/events\"},{\"title\":\"Plugins\",\"url\":\"https://claude.com/plugins\"},{\"title\":\"Powered by Claude\",\"url\":\"https://claude.com/partners/powered-by-claude\"},{\"title\":\"Service partners\",\"url\":\"https://claude.com/partners/services\"},{\"title\":\"Startups program\",\"url\":\"https://claude.com/programs/startups\"},{\"title\":\"Tutorials\",\"url\":\"https://claude.com/resources/tutorials\"},{\"title\":\"Use cases\",\"url\":\"https://claude.com/resources/use-cases\"}],\"title\":\"Resources\"},{\"_key\":\"4f2729951e15b0b870897e0444f5f3e1\",\"links\":[{\"title\":\"Anthropic\",\"url\":\"/company\"},{\"title\":\"Careers\",\"url\":\"/careers\"},{\"title\":\"Economic Futures\",\"url\":\"/economic-index\"},{\"title\":\"Research\",\"url\":\"/research\"},{\"title\":\"News\",\"url\":\"/news\"},{\"title\":\"Claude’s Constitution\",\"url\":\"/constitution\"},{\"title\":\"Responsible Scaling Policy\",\"url\":\"https://www.anthropic.com/news/announcing-our-updated-responsible-scaling-policy\"},{\"title\":\"Security and compliance\",\"url\":\"https://trust.anthropic.com/\"},{\"title\":\"Transparency\",\"url\":\"/transparency\"}],\"title\":\"Company\"},{\"_key\":\"a886dd1838335844d635f2857b25d66a\",\"links\":[{\"title\":\"Availability\",\"url\":\"https://www.anthropic.com/supported-countries\"},{\"title\":\"Status\",\"url\":\"https://status.anthropic.com/\"},{\"title\":\"Support center\",\"url\":\"https://support.claude.com/en/\"}],\"title\":\"Help and security\"},{\"_key\":\"3c3b033c11fa832a35d43b87d55a5364\",\"links\":[{\"title\":\"Privacy choices\",\"url\":\"#\"},{\"title\":\"Privacy policy\",\"url\":\"https://www.anthropic.com/legal/privacy\"},{\"title\":\"Consumer health data privacy policy\",\"url\":\"https://www.anthropic.com/legal/consumer-health-data-privacy-policy\"},{\"title\":\"Responsible disclosure policy\",\"url\":\"https://www.anthropic.com/responsible-disclosure-policy\"},{\"title\":\"Terms of service: Commercial\",\"url\":\"https://www.anthropic.com/legal/commercial-terms\"},{\"title\":\"Terms of service: Consumer\",\"url\":\"https://www.anthropic.com/legal/consumer-terms\"},{\"title\":\"Usage policy\",\"url\":\"https://www.anthropic.com/legal/aup\"}],\"title\":\"Terms and policies\"}],\"headerNavigation\":[{\"_key\":\"a340f9d4b859\",\"category\":\"Research\",\"displayType\":\"singleLink\",\"sections\":null,\"url\":\"/research\"},{\"_key\":\"a483c7dfd38a\",\"category\":\"Economic Futures\",\"displayType\":\"singleLink\",\"sections\":null,\"url\":\"/economic-futures\"},{\"_key\":\"82c471bd311d\",\"category\":\"Commitments\",\"displayType\":\"sections\",\"sections\":[{\"_key\":\"675871636e4d\",\"links\":[{\"title\":\"Claude’s Constitution\",\"url\":\"/constitution\"},{\"title\":\" Transparency\",\"url\":\"/transparency\"},{\"title\":\"Responsible Scaling Policy\",\"url\":\"/responsible-scaling-policy\"}],\"title\":\"Initiatives\"},{\"_key\":\"16af50a6e2dd\",\"links\":[{\"title\":\"Security and compliance\",\"url\":\"https://trust.anthropic.com/\"}],\"title\":\"Trust center\"}]},{\"_key\":\"861a11ed9931\",\"category\":\"Learn\",\"displayType\":\"sections\",\"sections\":[{\"_key\":\"9f9f720a8793\",\"links\":[{\"title\":\"Anthropic Academy\",\"url\":\"/learn\"},{\"title\":\"Tutorials\",\"url\":\"https://claude.com/resources/tutorials\"},{\"title\":\"Use cases\",\"url\":\"https://claude.com/resources/use-cases\"},{\"title\":\"Engineering at Anthropic\",\"url\":\"/engineering\"},{\"title\":\"Developer docs\",\"url\":\"https://docs.claude.com\"}],\"title\":\"Learn\"},{\"_key\":\"6bd061c46b10\",\"links\":[{\"title\":\"About\",\"url\":\"/company\"},{\"title\":\"Careers\",\"url\":\"/careers\"},{\"title\":\"Events\",\"url\":\"/events\"}],\"title\":\"Company\"}]},{\"_key\":\"22e8d8d2923d\",\"category\":\"News\",\"displayType\":\"singleLink\",\"sections\":null,\"url\":\"/news\"}],\"instagramUsername\":\"claudeai\",\"internalName\":\"anthropic.com Site Settings\",\"linkedInUsername\":\"anthropicresearch\",\"menu\":{\"_type\":\"object\",\"content\":[{\"_key\":\"49d45de6cef6\",\"_type\":\"featured\",\"body\":\"The first AI-assisted drive on another planet. Claude helped NASA’s Perseverance rover travel four hundred meters on Mars.\",\"image\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-783c5700fc0c09073ef48ec753c5046cbe8a7bf8-1120x634-png\",\"_type\":\"reference\"}},\"link\":{\"_ref\":\"ed5c31ad-2db1-4c70-b142-f6964351c769\",\"_type\":\"reference\"},\"svgTitle\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-4f7ac89a9011fe4335a7b7424c3cfd48d154ee20-800x187-svg\",\"_type\":\"reference\"}},\"title\":\"Four Hundred Meters on Mars\"},{\"_key\":\"a7061639a811\",\"_ref\":\"f35fc46a-6984-4475-83a2-7eaf0afd213f\",\"_type\":\"item\"},{\"_key\":\"6cb9cb2edc8b\",\"_ref\":\"0793419f-f68a-4bcc-afee-e47fc878548b\",\"_type\":\"item\"},{\"_key\":\"4c1c840f12b8\",\"_ref\":\"1183df10-e027-40c3-bd80-3353ce4d87bb\",\"_type\":\"item\"}],\"footer\":[{\"_key\":\"79308ad338ee\",\"_type\":\"links\",\"category\":\"Try Claude\",\"links\":[{\"_key\":\"774ea1c1376a\",\"_ref\":\"8f778086-f081-4b3f-913f-1223c58a7923\",\"_type\":\"reference\"},{\"_key\":\"f48e6cb02435\",\"_ref\":\"00b9c65d-5de0-4ff7-b953-bfbb4595b866\",\"_type\":\"reference\"}]},{\"_key\":\"4258d2fcc5bc\",\"_ref\":\"cbb013fc-e097-4c6f-8040-7df8ce4167a0\",\"_type\":\"reference\"},{\"_key\":\"53e3f18638a8\",\"_ref\":\"0f3fc856-dbfd-4eda-85a7-e9cfc14b4c96\",\"_type\":\"reference\"}],\"items\":[{\"_key\":\"2ade1bfd307e\",\"_type\":\"item\",\"icon\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-19588d2d29cee76507fa40c928b15263107ce0b5-20x20-svg\",\"_type\":\"reference\"}},\"link\":{\"_ref\":\"76ffe28c-7723-4922-83a6-e7bb00cea2b5\",\"_type\":\"reference\"},\"title\":\"Press\"},{\"_key\":\"4bea026ddbb4\",\"_type\":\"item\",\"icon\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-6f6321bfa64df4e8a0bd1b2ed1b703b4a864e0e9-20x20-svg\",\"_type\":\"reference\"}},\"link\":{\"_ref\":\"de10d81d-3a4b-48a1-8789-c3ebdd94a38e\",\"_type\":\"reference\"},\"title\":\"Support\"},{\"_key\":\"b18fe23bfe33\",\"_type\":\"item\",\"icon\":{\"_type\":\"image\",\"asset\":{\"_ref\":\"image-86777042ed2af185b46341d07b04b86351489844-20x20-svg\",\"_type\":\"reference\"}},\"link\":{\"_ref\":\"060658f1-3f28-4348-9ccd-e55c25c2bb2b\",\"_type\":\"reference\"},\"title\":\"Media assets\"}],\"primary\":[{\"_key\":\"5d2606644dd8\",\"_ref\":\"09546340-742c-403e-926d-5c389c2f17ef\",\"_type\":\"reference\"},{\"_key\":\"e8f57a66bb04\",\"_ref\":\"a891556e-6bc1-4219-a774-5a321e8fd959\",\"_type\":\"reference\"},{\"_key\":\"f0a668d00890\",\"_type\":\"links\",\"category\":\"Research\",\"links\":[{\"_key\":\"1ef6db4373e8\",\"_ref\":\"4c5b7791-2d95-468c-ab98-d6b93371a145\",\"_type\":\"reference\"},{\"_key\":\"b4226a2b6169\",\"_ref\":\"bd42abcb-a6af-4a45-981f-db622b38099f\",\"_type\":\"reference\"},{\"_key\":\"9ed138b64327\",\"_ref\":\"c9825846-5e78-4e23-81b8-6383998995fd\",\"_type\":\"reference\"},{\"_key\":\"29b02fd2a1a6\",\"_ref\":\"a23d27ca-8747-44e6-bb5d-85420fca5e4a\",\"_type\":\"reference\"},{\"_key\":\"8327d9038174\",\"_ref\":\"1679fb78-630e-452c-a012-0483d909d9a5\",\"_type\":\"reference\"}]},{\"_key\":\"967edcaf4b90\",\"_type\":\"links\",\"category\":\"Company\",\"links\":[{\"_key\":\"47f11712ac6b\",\"_ref\":\"bff5e01a-fc87-4866-8cbf-7c5d776ec041\",\"_type\":\"reference\"},{\"_key\":\"a2f2ffd92dbe\",\"_ref\":\"500e9c73-aa2b-4b65-bd29-4e4587f76cb1\",\"_type\":\"reference\"},{\"_key\":\"f03c48d6e109\",\"_ref\":\"bb6de845-c927-47b0-bd7b-d536724eac9d\",\"_type\":\"reference\"},{\"_key\":\"f746d6f53de0\",\"_ref\":\"24b8f488-80e3-4a61-8616-fa82c091e836\",\"_type\":\"reference\"},{\"_key\":\"1cb07bb647d2\",\"_ref\":\"27b23089-5dd9-4c69-bea1-01e811584807\",\"_type\":\"reference\"},{\"_key\":\"f2ac6f37474f\",\"_ref\":\"73a59169-4f0f-47ce-ad13-72356dc026e5\",\"_type\":\"reference\"},{\"_key\":\"84f1d5313584\",\"_ref\":\"72d23237-1703-472d-a7d9-4679332cf2fa\",\"_type\":\"reference\"},{\"_key\":\"ee434a1ea245\",\"_ref\":\"856229e6-c91d-4a3b-9cf6-77fe5f6fe2be\",\"_type\":\"reference\"},{\"_key\":\"d830a0b0b959\",\"_ref\":\"a891556e-6bc1-4219-a774-5a321e8fd959\",\"_type\":\"reference\"}]},{\"_key\":\"25ce9b972312\",\"_type\":\"links\",\"category\":\"Resources\",\"links\":[{\"_key\":\"3b3a458f7e43\",\"_ref\":\"287c8a1c-3f83-4b0e-ba15-8c7afd8a9606\",\"_type\":\"reference\"},{\"_key\":\"14a36ba81787\",\"_ref\":\"797e91ff-6d4c-4233-bb48-5c4a16ea78ee\",\"_type\":\"reference\"},{\"_key\":\"4dcf30d2dc62\",\"_ref\":\"f75d9d68-c280-42a1-bb73-1a64d9cad6ca\",\"_type\":\"reference\"}]}],\"secondary\":[{\"_key\":\"c37b72734301\",\"_type\":\"links\",\"category\":\"Products\",\"links\":[{\"_key\":\"ac5b2f5391bc\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"55b76383cc51\",\"_ref\":\"fb0a7193-b264-4161-ab25-60c5a7e3c4fd\",\"_type\":\"reference\"},{\"_key\":\"0f804c311a0e\",\"_ref\":\"0f2f1053-3610-4dbb-90e3-e6ba7faf82c8\",\"_type\":\"reference\"},{\"_key\":\"59ded76b6482\",\"_ref\":\"7813ff4e-9e4d-4abc-aba8-ce8632683ba5\",\"_type\":\"reference\"}]},{\"_key\":\"b99635b22466\",\"_type\":\"links\",\"category\":\"Models\",\"links\":[{\"_key\":\"11d08c15c808\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"de255cbb0e07\",\"_ref\":\"fb0a7193-b264-4161-ab25-60c5a7e3c4fd\",\"_type\":\"reference\"},{\"_key\":\"b50211ea5d30\",\"_ref\":\"0f2f1053-3610-4dbb-90e3-e6ba7faf82c8\",\"_type\":\"reference\"},{\"_key\":\"ef004cb2a212\",\"_ref\":\"7813ff4e-9e4d-4abc-aba8-ce8632683ba5\",\"_type\":\"reference\"}]},{\"_key\":\"7631456e6641\",\"_type\":\"links\",\"category\":\"Solutions\",\"links\":[{\"_key\":\"8c36b911e5cf\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"4a0b013dba30\",\"_ref\":\"fb0a7193-b264-4161-ab25-60c5a7e3c4fd\",\"_type\":\"reference\"},{\"_key\":\"08e2c5e45b86\",\"_ref\":\"0f2f1053-3610-4dbb-90e3-e6ba7faf82c8\",\"_type\":\"reference\"},{\"_key\":\"f4bdc539cc76\",\"_ref\":\"7813ff4e-9e4d-4abc-aba8-ce8632683ba5\",\"_type\":\"reference\"}]},{\"_key\":\"f48f6b982b22\",\"_type\":\"links\",\"category\":\"Help and security\",\"links\":[{\"_key\":\"53df87542c9a\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"5187c3ca15ca\",\"_ref\":\"fb0a7193-b264-4161-ab25-60c5a7e3c4fd\",\"_type\":\"reference\"},{\"_key\":\"6428f16e3088\",\"_ref\":\"0f2f1053-3610-4dbb-90e3-e6ba7faf82c8\",\"_type\":\"reference\"},{\"_key\":\"5a6851e87b79\",\"_ref\":\"7813ff4e-9e4d-4abc-aba8-ce8632683ba5\",\"_type\":\"reference\"}]},{\"_key\":\"7e78e84713d8\",\"_type\":\"links\",\"category\":\"Terms and policies\",\"links\":[{\"_key\":\"d1c0388d27a3\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"1478fc3cfbd3\",\"_ref\":\"fb0a7193-b264-4161-ab25-60c5a7e3c4fd\",\"_type\":\"reference\"},{\"_key\":\"94c074bff85b\",\"_ref\":\"0f2f1053-3610-4dbb-90e3-e6ba7faf82c8\",\"_type\":\"reference\"},{\"_key\":\"45c8677c28da\",\"_ref\":\"7813ff4e-9e4d-4abc-aba8-ce8632683ba5\",\"_type\":\"reference\"}]}]},\"meta\":{\"_createdAt\":\"2023-11-20T21:56:31Z\",\"_id\":\"0f6290ad-6d21-407d-8deb-ce02815d1383\",\"_rev\":\"NyW74GU9ZzyWgAYa8qUSlF\",\"_type\":\"metadata\",\"_updatedAt\":\"2023-11-20T23:54:09Z\",\"robotsIndexable\":true,\"seoDescription\":\"Anthropic is an AI safety and research company that's working to build reliable, interpretable, and steerable AI systems.\",\"seoTitle\":\"Anthropic\",\"socialImage\":{\"_type\":\"image\",\"asset\":{\"_createdAt\":\"2025-05-23T14:14:18Z\",\"_id\":\"image-c07f638082c569e8ce1e89ae95ee6f332a98ec08-2400x1260-jpg\",\"_rev\":\"v1N2wBpLqoO2Q3HXueYiJi\",\"_type\":\"sanity.imageAsset\",\"_updatedAt\":\"2025-05-23T14:14:18Z\",\"assetId\":\"c07f638082c569e8ce1e89ae95ee6f332a98ec08\",\"extension\":\"jpg\",\"metadata\":{\"_type\":\"sanity.imageMetadata\",\"blurHash\":\"MASPU,%M?b%Ms:-;j[j[j[fQ~qj[9FayWB\",\"dimensions\":{\"_type\":\"sanity.imageDimensions\",\"aspectRatio\":1.9047619047619047,\"height\":1260,\"width\":2400},\"hasAlpha\":false,\"isOpaque\":true,\"lqip\":\"data:image/jpeg;base64,/9j/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAAKABQDASIAAhEBAxEB/8QAFwABAAMAAAAAAAAAAAAAAAAAAAQFCP/EACAQAAEEAgEFAAAAAAAAAAAAAAABAgMEBRETEhQhIjH/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAQL/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwDS96axCjO2r8yqvn21oiR3ci6TT8d0t395ELUGVAAB/9k=\",\"palette\":{\"_type\":\"sanity.imagePalette\",\"darkMuted\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#444440\",\"foreground\":\"#fff\",\"population\":0.05,\"title\":\"#fff\"},\"darkVibrant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#68681c\",\"foreground\":\"#fff\",\"population\":0,\"title\":\"#fff\"},\"dominant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#fcfcf4\",\"foreground\":\"#000\",\"population\":90.85,\"title\":\"#000\"},\"lightMuted\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#bcbcb4\",\"foreground\":\"#000\",\"population\":0.03,\"title\":\"#fff\"},\"lightVibrant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#fcfcf4\",\"foreground\":\"#000\",\"population\":90.85,\"title\":\"#000\"},\"muted\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#7c7c74\",\"foreground\":\"#fff\",\"population\":0.02,\"title\":\"#fff\"},\"vibrant\":{\"_type\":\"sanity.imagePaletteSwatch\",\"background\":\"#c8c836\",\"foreground\":\"#000\",\"population\":0,\"title\":\"#fff\"}}},\"mimeType\":\"image/jpeg\",\"originalFilename\":\"Anthropic-OG-image.jpg\",\"path\":\"images/4zrzovbb/website/c07f638082c569e8ce1e89ae95ee6f332a98ec08-2400x1260.jpg\",\"sha1hash\":\"c07f638082c569e8ce1e89ae95ee6f332a98ec08\",\"size\":132598,\"uploadId\":\"pxmJEaCvYm0cHoZTfnCcZYXxrWKBhHf0\",\"url\":\"https://cdn.sanity.io/images/4zrzovbb/website/c07f638082c569e8ce1e89ae95ee6f332a98ec08-2400x1260.jpg\"},\"description\":\"Anthropic logo\"}},\"navigation\":[{\"_key\":\"efd4c3443340\",\"_ref\":\"a891556e-6bc1-4219-a774-5a321e8fd959\",\"_type\":\"reference\"},{\"_key\":\"49fa2a29c062\",\"_type\":\"links\",\"category\":\"Research\",\"links\":[{\"_key\":\"bdd1dd5db506\",\"_ref\":\"474d93ab-4c9b-4e9f-9e3b-db34237ba87c\",\"_type\":\"reference\"},{\"_key\":\"113ad08f02a0\",\"_type\":\"links\",\"category\":\"Research Teams\",\"links\":[{\"_key\":\"e5d501fb88de\",\"_ref\":\"4c5b7791-2d95-468c-ab98-d6b93371a145\",\"_type\":\"reference\"},{\"_key\":\"5d214fdc448e\",\"_ref\":\"bd42abcb-a6af-4a45-981f-db622b38099f\",\"_type\":\"reference\"},{\"_key\":\"3ca0af630890\",\"_ref\":\"c9825846-5e78-4e23-81b8-6383998995fd\",\"_type\":\"reference\"},{\"_key\":\"3bf9d974a3c3\",\"_ref\":\"a23d27ca-8747-44e6-bb5d-85420fca5e4a\",\"_type\":\"reference\"},{\"_key\":\"1e4057638d70\",\"_ref\":\"1679fb78-630e-452c-a012-0483d909d9a5\",\"_type\":\"reference\"}]}]},{\"_key\":\"d6d728461653\",\"_type\":\"links\",\"category\":\"Company\",\"links\":[{\"_key\":\"25d553bb29b1\",\"_type\":\"links\",\"category\":\"Anthropic\",\"links\":[{\"_key\":\"0a09772ba25a\",\"_ref\":\"f058004f-bb9e-4cf5-a979-4d48a50ef67b\",\"_type\":\"reference\"},{\"_key\":\"6fc6aa1e0cf1\",\"_ref\":\"815bdaff-6ae0-49c5-9269-521d4e98ca2e\",\"_type\":\"reference\"},{\"_key\":\"6ef5285544f6\",\"_ref\":\"8c1ba848-8290-442b-a7bb-306958e605d5\",\"_type\":\"reference\"},{\"_key\":\"c1a74b28efec\",\"_ref\":\"bb6de845-c927-47b0-bd7b-d536724eac9d\",\"_type\":\"reference\"}]},{\"_key\":\"615a54f2d838\",\"_type\":\"links\",\"category\":\"Our Commitments\",\"links\":[{\"_key\":\"c651e04237dc\",\"_ref\":\"287c8a1c-3f83-4b0e-ba15-8c7afd8a9606\",\"_type\":\"reference\"},{\"_key\":\"f243e1bb3c8c\",\"_ref\":\"797e91ff-6d4c-4233-bb48-5c4a16ea78ee\",\"_type\":\"reference\"},{\"_key\":\"be5789f04ac8\",\"_ref\":\"f75d9d68-c280-42a1-bb73-1a64d9cad6ca\",\"_type\":\"reference\"}]}]},{\"_key\":\"ffe26a2db0fc\",\"_type\":\"links\",\"category\":\"Try Claude\",\"links\":[{\"_key\":\"b1060045f98c\",\"_type\":\"links\",\"category\":\"Products\",\"links\":[{\"_key\":\"49ef10d2749e\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"65741c1d15a0\",\"_ref\":\"fb0a7193-b264-4161-ab25-60c5a7e3c4fd\",\"_type\":\"reference\"},{\"_key\":\"5e85ab14804d\",\"_ref\":\"0f2f1053-3610-4dbb-90e3-e6ba7faf82c8\",\"_type\":\"reference\"},{\"_key\":\"4bc350ac6f99\",\"_ref\":\"7813ff4e-9e4d-4abc-aba8-ce8632683ba5\",\"_type\":\"reference\"}]},{\"_key\":\"72ba32c3fbd20980352dd6cb459e75ee\",\"_type\":\"links\",\"category\":\"For business\",\"links\":[{\"_key\":\"56c91bbbca77\",\"_ref\":\"7a282220-2540-4c12-ae78-2ab834b2e052\",\"_type\":\"reference\"},{\"_key\":\"b317b8ae3653\",\"_ref\":\"c8d07a04-75aa-434c-a220-73cebd6356f2\",\"_type\":\"reference\"},{\"_key\":\"3c0080a4960b060051b231fce3cd22fe\",\"_ref\":\"3471fc3b-4b3b-4c8f-969c-3dd65e92b582\",\"_type\":\"reference\"}]},{\"_key\":\"493a9733ada635d5eb9a6b372f146d63\",\"_type\":\"links\",\"category\":\"Resources\",\"links\":[{\"_key\":\"70ad64099485\",\"_ref\":\"87b28304-1124-4daf-a94e-4659078f9462\",\"_type\":\"reference\"},{\"_key\":\"dc331657f502\",\"_ref\":\"9421fcf3-99ee-4899-aa7c-9bae75b90d51\",\"_type\":\"reference\"},{\"_key\":\"403cbb217e8b\",\"_ref\":\"47469844-336f-4bc8-96a3-69c974661d83\",\"_type\":\"reference\"}]},{\"_key\":\"f827d578b2e97b8b2625c489fa1f5134\",\"_type\":\"links\",\"category\":\"Login\",\"links\":[{\"_key\":\"49ef10d2749e\",\"_ref\":\"1f59436a-2330-4e42-a46e-386e058f8c5d\",\"_type\":\"reference\"},{\"_key\":\"605dc4ee9cf8\",\"_ref\":\"00b9c65d-5de0-4ff7-b953-bfbb4595b866\",\"_type\":\"reference\"}]}]}],\"search\":{\"searchBoxPlaceholder\":\"Enter search...\",\"searches\":[\"Claude\",\"Governance\",\"Policy\",\"Models\",\"Reasoning\",\"Nonprofit\"],\"tags\":[{\"_key\":\"5613d0c704eb\",\"_ref\":\"058e47b5-fac5-4996-831f-a40aedf5bcd7\",\"_type\":\"reference\"},{\"_key\":\"645606651b29\",\"_ref\":\"379880f6-77c4-43ea-a654-746623609bf8\",\"_type\":\"reference\"},{\"_key\":\"0c852ab1d653\",\"_ref\":\"f1a91146-0e43-44d3-9922-d6b53d1a08ce\",\"_type\":\"reference\"},{\"_key\":\"d2c395462872\",\"_ref\":\"0b40c7c6-9aa9-4f7e-be31-42d35839705f\",\"_type\":\"reference\"},{\"_key\":\"ab31673a9364\",\"_ref\":\"14208d64-4ee4-46b1-8723-8efb19365f2e\",\"_type\":\"reference\"},{\"_key\":\"42e16ee084a6\",\"_ref\":\"2fc18360-5f84-4f95-99f8-81c7a6e35d65\",\"_type\":\"reference\"},{\"_key\":\"a40c2abbfb31\",\"_ref\":\"36fc8828-854d-4597-9c83-ef499b76cbea\",\"_type\":\"reference\"}]},\"siteName\":\"Anthropic\",\"sitemapUrls\":[\"/\",\"/careers\",\"/company\",\"/events\",\"/events/aws-summit-dc\",\"/events/aws-summit-nyc\",\"/events/aws-summit-london\",\"/events/aws-summit-tokyo\",\"/events/claude-for-finance\",\"/events/google-cloud-next-2025\",\"/events/paris-builder-summit\",\"/events/seoul-builder-summit\",\"/learn\",\"/supported-countries\",\"/unsubscribe\"],\"twitterUsername\":\"AnthropicAI\",\"youtubeUsername\":\"anthropic-ai\"}}]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"16:[\"$\",\"$L18\",null,{\"children\":[null,[\"$\",\"$L19\",null,{\"isMinimalNavigation\":\"$undefined\",\"siteSettings\":{\"_createdAt\":\"2023-11-03T16:49:36Z\",\"_id\":\"13c6e1a1-6f38-400c-ae18-89d73b6ba991\",\"_rev\":\"6eD7Bdagk3xcfVrXbEMOQg\",\"_system\":\"$6:props:siteSettings:_system\",\"_type\":\"siteSettings\",\"_updatedAt\":\"2026-03-10T21:52:45Z\",\"announcement\":null,\"claudeCta\":\"$6:props:siteSettings:claudeCta\",\"copyright\":\"© 2026 Anthropic PBC\",\"footer\":\"$6:props:siteSettings:footer\",\"footerNavigation\":\"$6:props:siteSettings:footerNavigation\",\"headerNavigation\":\"$6:props:siteSettings:headerNavigation\",\"instagramUsername\":\"claudeai\",\"internalName\":\"anthropic.com Site Settings\",\"linkedInUsername\":\"anthropicresearch\",\"menu\":\"$6:props:siteSettings:menu\",\"meta\":\"$6:props:siteSettings:meta\",\"navigation\":\"$6:props:siteSettings:navigation\",\"search\":\"$6:props:siteSettings:search\",\"siteName\":\"Anthropic\",\"sitemapUrls\":\"$6:props:siteSettings:sitemapUrls\",\"twitterUsername\":\"AnthropicAI\",\"youtubeUsername\":\"anthropic-ai\",\"hideFooter\":true},\"page\":{\"_type\":\"page\",\"_id\":\"not-found\",\"_rev\":\"\",\"_createdAt\":\"\",\"_updatedAt\":\"\",\"title\":\"Not Found\",\"slug\":{\"_type\":\"slug\",\"current\":\"not-found\"},\"meta\":{},\"sections\":[]},\"theme\":\"$undefined\"}],[\"$\",\"main\",null,{\"id\":\"main-content\",\"className\":\"\",\"children\":[\"$\",\"$L1a\",null,{}]}],null]}]\n10:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#141413\"}]]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"12:[[\"$\",\"title\",\"0\",{\"children\":\"Building Effective AI Agents \\\\ Anthropic\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"msapplication-TileColor\",\"content\":\"141413\"}],[\"$\",\"meta\",\"3\",{\"name\":\"msapplication-config\",\"content\":\"/browserconfig.xml\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:title\",\"content\":\"Building Effective AI Agents\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:description\",\"content\":\"Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI.\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:image\",\"content\":\"https://cdn.sanity.io/images/4zrzovbb/website/76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260.png\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:image:alt\",\"content\":\"Anthropic logo\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"9\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"10\",{\"name\":\"twitter:site\",\"content\":\"@AnthropicAI\"}],[\"$\",\"meta\",\"11\",{\"name\":\"twitter:creator\",\"content\":\"@AnthropicAI\"}],[\"$\",\"meta\",\"12\",{\"name\":\"twitter:title\",\"content\":\"Building Effective AI Agents\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:description\",\"content\":\"Discover how Anthropic approaches the development of reliable AI agents. Learn about our research on agent capabilities, safety considerations, and technical framework for building trustworthy AI.\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:image\",\"content\":\"https://cdn.sanity.io/images/4zrzovbb/website/76b5733c669f0dfb9c7aa7fc512a495867cf12e6-2400x1260.png\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:image:alt\",\"content\":\"Anthropic logo\"}],[\"$\",\"link\",\"16\",{\"rel\":\"shortcut icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"17\",{\"rel\":\"icon\",\"href\":\"/images/icons/favicon-32x32.png\"}],[\"$\",\"link\",\"18\",{\"rel\":\"apple-touch-icon\",\"href\":\"/images/icons/apple-touch-icon.png\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/images/icons/apple-touch-icon.png\",\"sizes\":\"180x180\"}],[\"$\",\"link\",\"20\",{\"rel\":\"mask-icon\",\"href\":\"/images/icons/safari-pinned-tab.svg\",\"color\":\"141413\"}],[\"$\",\"$L1b\",\"21\",{}]]\n"])</script><script nonce="MmYzNThjZjAtMWIzYi00MWYzLWJhYTAtM2JmMGFlNTU5M2Nl">self.__next_f.push([1,"e:null\n"])</script></body></html>