{"allowedRenditionsWidth":["320","480","640","768","960","1200","1440","1920"],"templateName":"base-page-template54","cssClassNames":"page basicpage summit-page","canonicalLink":"https://www.snowflake.com/en/artificial-intelligence/agents/agent-planning/","robotsTags":[],"language":"en","description":"Learn how AI agents use planning to break work into steps, choose tools, adapt to new inputs and complete complex tasks more reliably.","title":"AI Agent Planning: Patterns, Steps & Tools | Snowflake","analyticsPageType":"homepage","analyticsCategory":"general","analyticsSubCategory":"","excludeFromAnalytics":false,"isPasswordProtected":false,"analyticsDebugMode":false,"analyticsData":{"excludeFromAnalytics":false,"subCategory":"","pageType":"homepage","templateName":"base-page-template54","siteName":"snowflake","pageUrl":"/content/snowflake-site/global/en/artificial-intelligence/agents/agent-planning","language":"en","category":"general","pageName":"AI Agent Planning: How AI Agents Break Goals into Executable Steps","contentTags":["snowflake-site:taxonomy/content-type/fundamentals"]},"analyticsContentTags":["snowflake-site:taxonomy/content-type/fundamentals"],"analyticsEnabled":true,"coveoConfig":{"organizationId":"snowflakecomputingproduction8neljofn","apiKey":"xx335921a6-2a0a-40f2-a167-e390b4766c3d","pipeline":"snowflake.com","searchHub":"snowflake.com"},":items":{"root":{"columnClassNames":{"markup_editor_928258845":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-banner":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-header":"aem-GridColumn aem-GridColumn--default--12","responsivegrid":"aem-GridColumn aem-GridColumn--default--12","markup_editor_597730182":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-footer":"aem-GridColumn aem-GridColumn--default--12","experiencefragment":"aem-GridColumn aem-GridColumn--default--12","modal_container":"aem-GridColumn aem-GridColumn--default--12","markup_editor":"aem-GridColumn aem-GridColumn--default--12"},"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnCount":12,":items":{"experiencefragment-banner":{"id":"experiencefragment-be98144bbf","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/pushdown-banner/master/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/pushdown-banner/master.xfmodel.json",":type":"snowflake-site/components/experiencefragment"},"experiencefragment-header":{"id":"experiencefragment-070ebec7d7","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/mega-nav-header/master/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/mega-nav-header/master.xfmodel.json","languageNavPath":"/content/snowflake-site/global/en/artificial-intelligence/agents/agent-planning.languagenav.json",":type":"snowflake-site/components/experiencefragment"},"responsivegrid":{"columnClassNames":{"flexible_column_cont_939100716":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_1158003461":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_663228916":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_912630531":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_1398138236":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_1786318617":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_1467213961":"aem-GridColumn aem-GridColumn--default--12","flexible_column_cont_1377146023":"aem-GridColumn aem-GridColumn--default--12"},"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnCount":12,":items":{"flexible_column_cont":{"id":"flexible-column-container-da7006957b","propertiesId":"hub-hero-breadcrumbs","type":"1-column","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"small","bottomPadding":"none","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"propertiesCSSClasses":"page-section","backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-2b93471396",":items":{"breadcrumb":{"id":"breadcrumb-f83f97cbc1","items":[{"id":"breadcrumb-f83f97cbc1-item-4b75ed29e6","link":{"valid":true,"url":"/en/artificial-intelligence/"},"active":false,"current":false,"title":"Artificial Intelligence",":type":"snowflake-site/components/structure/page","appliedCssClassNames":"summit-page"},{"id":"breadcrumb-f83f97cbc1-item-329fd3528c","link":{"valid":true,"url":"/en/artificial-intelligence/agents/"},"active":false,"current":false,"title":"Agents",":type":"snowflake-site/components/structure/page","appliedCssClassNames":"summit-page"},{"id":"breadcrumb-f83f97cbc1-item-86a6cff548","link":{"valid":true,"url":"/en/artificial-intelligence/agents/agent-planning/"},"active":true,"current":true,"title":"Agent Planning",":type":"snowflake-site/components/structure/page","appliedCssClassNames":"summit-page"}],":type":"snowflake-site/components/breadcrumb"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["breadcrumb"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-gray-10-bg"},"flexible_column_cont_939100716":{"id":"flexible-column-container-14e98cc9c1","propertiesId":"hub-hero","type":"2-column-even","alignColumns":"center","containerMaxWidth":"extra-large","topPadding":"extra-small","bottomPadding":"extra-small","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"propertiesCSSClasses":"page-section","backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-48c5da9be5",":items":{"title_v2":{"id":"title-v2-538931eb84","additionalClasses":"hub-hero__headline","type":"heading1","lines":["AI Agent Planning: How AI Agents Break Goals into Executable Steps"],":type":"snowflake-site/components/title-v2","appliedCssClassNames":"left-alignment"},"text":{"id":"text-dda2207705","additionalClasses":"hub-hero__subheadline","text":"\u003Cp\u003EAI agents can complete complex work only when they can break goals into steps, understand dependencies between those steps, and adjust course appropriately when needed. Agent planning provides that structure, turning broad goals into coordinated, state-aware action that can adapt as conditions change.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-regular text-color-text-05"},"container":{"additionalClasses":"hub-hero__authors","columnClassNames":{"content_chip_copy":"aem-GridColumn aem-GridColumn--default--12","content_chip":"aem-GridColumn aem-GridColumn--default--12"},"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","layout":"RESPONSIVE_GRID","columnCount":12,"id":"container-15ff11acf2",":items":{"content_chip":{"id":"content-chip-fa012b225b","cta":{"id":"cta","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/blog/authors/Laurie-Macpherson/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_INTERNAL",":type":"snowflake-site/components/button","text":"Read bio"},"image":{"id":"image","isLcpImage":true,"src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--a7e9fdff-6f08-4edc-9cd1-e213bb234aaa/laurie-macpherson.jpg?preferwebp=true&quality=85","alt":"Laurie MacPherson","lazyEnabled":true,"width":"800","height":"800",":type":"snowflake-site/components/image"},"headline":{"id":"title","type":"heading5","lines":["Laurie MacPherson","Technical Writer, Snowflake"],":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/content-chip"},"content_chip_copy":{"id":"content-chip-b9bc66dca5","cta":{"id":"cta","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/blog/authors/david-gaule/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_INTERNAL",":type":"snowflake-site/components/button","text":"Read bio"},"image":{"id":"image","isLcpImage":false,"src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--fd9454ea-3b59-4d19-95be-534774cbd226/david.jpg?preferwebp=true&quality=85","alt":"David Gaule","lazyEnabled":true,"width":"512","height":"512",":type":"snowflake-site/components/image"},"headline":{"id":"title","type":"heading5","lines":["David Gaule","Technical Editor, Snowflake"],":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/content-chip"}},":type":"snowflake-site/components/container",":itemsOrder":["content_chip","content_chip_copy"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-small"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["title_v2","text","container"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-extra-small"},"flexible_column_content_container_2":{"additionalClasses":"hub-hero__video-column","layout":"SIMPLE","id":"container-48f00a7492",":items":{"youtube":{"id":"embed-8eb99e9809","youtubeVideoId":"CtqKJV6gyGQ","layout":"responsive","youtubeAspectRatio":"56.25","youtubeAutoPlay":false,"youtubeLoop":false,"youtubeMute":false,"youtubePlaysInline":false,"youtubeRel":false,"embeddableResourceType":"core/wcm/components/embed/v1/embed/embeddable/youtube","type":"EMBEDDABLE",":type":"snowflake-site/components/youtube"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["youtube"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-gray-10-bg"},"flexible_column_cont_1398138236":{"id":"flexible-column-container-8227627e42","propertiesId":"hub-hero-related-topics","type":"1-column","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"extra-small","bottomPadding":"medium","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"propertiesCSSClasses":"page-section","backgroundImageOption":"none","flexible_column_content_container_1":{"additionalClasses":"related-topics-outer-container border-top","layout":"SIMPLE","id":"container-c695240376",":items":{"text_894059747":{"id":"text-f8cd6f1fe6","additionalClasses":"seo-hub-hero__related-topic-label","text":"\u003Cp\u003EAI Agent Topics:\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-regular text-color-text-05"},"text":{"id":"text-67719af724","additionalClasses":"related-topics ","text":"\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/agent-evaluation/\"\u003EAgent Evaluation\u003C/a\u003E\u003C/li\u003E\r\n\u003Cli\u003E\u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/harness/\"\u003EAgent Harness\u003C/a\u003E\u003C/li\u003E\r\n\u003Cli\u003E\u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/agent-orchestration/\"\u003EAgent Orchestration\u003C/a\u003E\u003C/li\u003E\r\n\u003Cli\u003E\u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/autonomous-agents/\"\u003EAutonomous Agents\u003C/a\u003E\u003C/li\u003E\r\n\u003Cli\u003E\u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/coding-agents/\"\u003ECoding Agents\u003C/a\u003E\u003C/li\u003E\r\n\u003C/ul\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-small"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["text_894059747","text"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-gray-10-bg"},"flexible_column_cont_663228916":{"id":"flexible-column-container-722368748d","propertiesId":"hub-body","type":"2-column-60-40","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"medium","bottomPadding":"medium","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"propertiesCSSClasses":"page-section","backgroundImageOption":"none","flexible_column_content_container_1":{"additionalClasses":"longform-content","layout":"SIMPLE","id":"hub-body-content",":items":{"callout__0":{"id":"text-404c3bf4a9","additionalClasses":"callout callout--general","text":"\u003Cp\u003E\u003Cstrong\u003EAGENT PLANNING DEFINED\u003C/strong\u003E\u003C/p\u003E\n\u003Cp\u003EAI agent planning is the process by which an agent decomposes a goal into dependent subtasks, selects the actions or tools needed to execute them, tracks intermediate state and revises the plan as observations change the task context.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-regular text-color-text-05"},"text__0":{"id":"text-c38c6c655a","text":"\u003Cp\u003E\u003Ca href=\"https://arxiv.org/abs/2605.30434\" target=\"_blank\"\u003ELongDS-Bench\u003C/a\u003E, a May 2026 benchmark based on real-world Kaggle notebooks, found that AI agents struggled most as analytical tasks stretched across multiple turns. The finding points to a practical problem in agent planning: an agent can generate next steps without preserving the analytical state needed to complete the larger goal.\u003C/p\u003E\n\u003Cp\u003EThe tasks in the study required agents to maintain intermediate results, revise earlier work, combine evolving analytical states and carry dependencies from one step to the next. The best-performing model reached 48.45% average accuracy, with performance dropping nearly 47 points from early to late turns.\u003C/p\u003E\n\u003Cp\u003EFor enterprise teams, this problem is familiar. A business user might ask one question, but the work behind the answer often involves several smaller decisions: which metric definition applies, which data source is authoritative, which tool should run first, which intermediate result should constrain the next step and when the agent should revise its approach. Complex goals fail when an agent moves through those decisions without a plan.\u003C/p\u003E\n\u003Cp\u003EEffective agent planning turns a high-level goal into ordered subtasks, maps those subtasks to tools or actions and gives the agent a way to update the plan as new information arrives.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"},"title_what-is-ai-agent-planning":{"id":"title-v2-50401bf831","additionalClasses":"anchor-title anchor-title--what-is-ai-agent-planning","type":"heading2","lines":["What is AI agent planning?"],":type":"snowflake-site/components/title-v2"},"text_what-is-ai-agent-planning_0":{"id":"text-6b7b9feb8f","text":"\u003Cp\u003EAgent planning is the process an \u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/\"\u003EAI agent\u003C/a\u003E uses to decompose a goal into ordered subtasks, select tools, perform each step and revise the plan as it learns from intermediate results.\u003C/p\u003E\r\n\u003Cp\u003EAn agent might retrieve documents, query data, call an API, inspect metadata, ask for clarification or use a tool to complete part of a task. Planning is the control layer that organizes those actions into a goal-directed sequence designed to complete the task successfully.\u003C/p\u003E\r\n\u003Cp\u003EAt a basic level, the planning loop follows a repeated pattern:\u003C/p\u003E\r\n\u003Col\u003E\r\n\u003Cli\u003EDecompose the goal into smaller steps.\u003C/li\u003E\r\n\u003Cli\u003ESequence the steps based on dependencies.\u003C/li\u003E\r\n\u003Cli\u003ESelect the right tool or action for each step.\u003C/li\u003E\r\n\u003Cli\u003EPerform the work.\u003C/li\u003E\r\n\u003Cli\u003EInspect the result.\u003C/li\u003E\r\n\u003Cli\u003EReplan when the result changes the path forward.\u003C/li\u003E\r\n\u003C/ol\u003E\r\n\u003Cp\u003EArun Agarwal, Principal Product Marketing Manager, AI/ML at Snowflake, describes agent planning as a question of both sequence and judgment: “Did it use the right tools in the right order? Did it ask the right follow-up questions to elicit information? Proactively gathering what it needs, from the user or from the systems it works with, is what sets agents apart.”\u003C/p\u003E\r\n\u003Cp\u003EOptimizing this loop is especially important for long-horizon tasks, where the correct answer depends on decisions made across several steps. An agent investigating a data anomaly, for example, may need to identify the affected metric, inspect recent pipeline changes, compare historical patterns, retrieve business context and summarize the likely cause. Each step depends on the previous one. If the agent starts with the wrong assumption or skips a dependency, the final answer can still sound coherent while resting on the wrong work.\u003C/p\u003E\r\n\u003Cp\u003EPlanning helps reduce that risk by making the task structure explicit. Instead of treating each action as an isolated next move, the agent works against a plan that reflects the larger goal, the current state of the task and the constraints around the available tools.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"},"title_how-agents-plan-task-decomposition":{"id":"title-v2-19c229b27a","additionalClasses":"anchor-title anchor-title--how-agents-plan-task-decomposition","type":"heading2","lines":["How agents plan: Task decomposition"],":type":"snowflake-site/components/title-v2"},"text_how-agents-plan-task-decomposition_0":{"id":"text-95812f86c1","text":"\u003Cp\u003ETask decomposition is the core mechanism behind agent planning. The agent breaks a high-level goal into smaller subtasks until each one maps to a specific action, tool call or decision point.\u003C/p\u003E\n\u003Cp\u003EFor a simple request, decomposition may be almost invisible. If a user asks an agent to summarize a document, the plan might involve retrieving the document, extracting the relevant sections and producing a concise summary.\u003C/p\u003E\n\u003Cp\u003EFor a more complex request, the task has to be divided more carefully. A request such as “Explain why customer churn increased last quarter” could require the agent to identify the approved churn definition, query customer status data, compare cohorts, inspect changes in support tickets or product usage and distinguish correlation from likely cause.\u003C/p\u003E\n\u003Cp\u003EIn some systems, those steps are implemented through prompt chaining, where the output of one model call becomes the input to the next, so each stage can carry forward the context needed for the next decision.\u003C/p\u003E\n\u003Cp\u003EAgents can be prompted or architected for decomposition in several ways:\u003C/p\u003E\n\u003Ch3\u003EZero-shot planning\u003C/h3\u003E\n\u003Cp\u003EWith zero-shot planning, the agent receives a goal and generates a plan without examples. This approach is simple to implement and useful for general tasks, but the quality of the plan depends heavily on the model’s ability to infer the right structure from the request alone.\u003C/p\u003E\n\u003Ch3\u003EFew-shot planning\u003C/h3\u003E\n\u003Cp\u003EWith few-shot planning, the prompt includes examples of strong plans. Those examples give the model a pattern to follow, such as how to break a business question into data retrieval, validation, analysis and synthesis steps. Few-shot planning is often useful when agents need to follow a repeatable style of work across similar tasks.\u003C/p\u003E\n\u003Ch3\u003ELLM-as-planner\u003C/h3\u003E\n\u003Cp\u003EWith an LLM-as-planner approach, one model or component is responsible for creating the plan, while another carries out the steps. This separation gives teams more control over the plan itself. The planning layer can be inspected, evaluated and adjusted without treating the full agent run as a black box.\u003C/p\u003E\n\u003Cp\u003EThe plan representation also affects outcomes. A linear plan works when steps happen in a fixed order. A hierarchical plan is useful when a goal contains subgoals that need their own smaller plans. A directed acyclic graph (DAG) is better suited to work with branching dependencies or parallelizable steps, such as retrieving data from several sources before combining the results.\u003C/p\u003E\n\u003Cp\u003EFor enterprise agents, decomposition has to account for state. After each step, the agent needs to preserve what happened: which data was retrieved, which tool was used, which assumptions were confirmed and which results changed the task. Replanning starts when the current state no longer matches the original plan. If a query returns incomplete data, if a policy prevents access or if a metric definition conflicts with the user’s wording, the agent needs a way to adjust the path instead of continuing as if the original plan still applies.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"},"title_agent-planning-patterns":{"id":"title-v2-3ef89a4117","additionalClasses":"anchor-title anchor-title--agent-planning-patterns","type":"heading2","lines":["Agent planning patterns"],":type":"snowflake-site/components/title-v2"},"text_agent-planning-patterns_0":{"id":"text-fc48e98fa1","text":"\u003Cp\u003EDifferent agent planning patterns organize the relationship between planning, tool use and revision in different ways. The best pattern choice depends on the task, the acceptable level of flexibility and the need for predictability.\u003C/p\u003E\r\n\u003Ch3\u003EPlan-and-execute\u003C/h3\u003E\r\n\u003Cp\u003EIn a plan-and-execute pattern, the agent creates the full plan before performing the work. The plan defines the major steps, the likely tools and the expected order of operations.\u003C/p\u003E\r\n\u003Cp\u003EThis pattern is useful for long-horizon tasks that benefit from structure up front. If an agent has to investigate a pipeline issue, reconcile data across systems or answer a complex analytical question, a full plan gives the system a stable path to follow. It also makes the work easier to inspect because the planned sequence exists before the agent starts acting.\u003C/p\u003E\r\n\u003Cp\u003EThe trade-off is flexibility. If the task changes significantly after the first few steps, the agent needs explicit replanning logic. Otherwise, it may continue following a plan that no longer reflects the state of the work.\u003C/p\u003E\r\n\u003Ch3\u003EReAct\u003C/h3\u003E\r\n\u003Cp\u003EReAct, short for reasoning and acting, interleaves reasoning steps with actions. Instead of relying only on a full upfront plan, the agent decides what to do next, takes an action, observes the result and uses that result to guide the next step.\u003C/p\u003E\r\n\u003Cp\u003EThis pattern works well for tasks where the agent needs to adapt as information arrives. For example, an agent answering a support or analytics question may not know which source is relevant until it retrieves the first piece of context. ReAct gives the agent a way to move through the task one step at a time while keeping each action tied to the current observation.\u003C/p\u003E\r\n\u003Cp\u003EBecause ReAct is flexible, it also needs guardrails. Without constraints on tool selection, state management and stopping criteria, the agent can spend too many steps exploring paths that do not improve the answer.\u003C/p\u003E\r\n\u003Ch3\u003EReflection and Reflexion\u003C/h3\u003E\r\n\u003Cp\u003EReflection patterns ask the agent to critique its own work before returning a final answer or moving to the next step. In \u003Ca rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://arxiv.org/abs/2303.11366\"\u003EReflexion\u003C/a\u003E-style approaches, the agent uses feedback from previous attempts to revise its plan or improve later runs.\u003C/p\u003E\r\n\u003Cp\u003EThis pattern is useful when the first answer is likely to need review. An agent might check whether it answered the user’s actual question, whether it used the right data source or whether it missed a required constraint. In analytical work, reflection can also help the agent compare its conclusion against intermediate evidence before producing a final response.\u003C/p\u003E\r\n\u003Cp\u003EReflection doesn’t replace \u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/agent-evaluation/\"\u003Eevaluation\u003C/a\u003E, however. An agent grading its own work inherits its own blind spots, so production systems pair reflection with external checks: reference answers, policy rules and task-specific rubrics, along with trace inspection to see how the agent actually got there. As Agarwal says, “You want to evaluate whether the goal was met, and whether it was met without unnecessary turns.”\u003C/p\u003E\r\n\u003Ch3\u003ETree-of-Thoughts\u003C/h3\u003E\r\n\u003Cp\u003E\u003Ca rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://arxiv.org/abs/2305.10601\"\u003ETree-of-Thoughts\u003C/a\u003E expands planning by allowing the agent to explore multiple possible reasoning paths before committing to one. Instead of moving through a single linear path, the agent considers several branches, evaluates them and chooses the most promising direction.\u003C/p\u003E\r\n\u003Cp\u003ETree-of-Thoughts is useful for tasks with ambiguous strategies or several plausible solution paths. In data analysis, an agent might compare different hypotheses for a metric change before deciding which one to investigate first. In planning-heavy tasks, branch exploration can improve the chances that the agent selects a useful path.\u003C/p\u003E\r\n\u003Cp\u003EThe cost is higher complexity. Exploring multiple branches can increase latency and tool usage, so this pattern is usually better suited to high-value tasks where better planning justifies the additional work.\u003C/p\u003E\r\n\u003Ch3\u003EPlanner-executor split\u003C/h3\u003E\r\n\u003Cp\u003EIn a planner-executor architecture, one component creates the plan and another performs the steps. The planner focuses on decomposition, sequencing and tool selection. The executor carries out the actions, observes results and returns state updates.\u003C/p\u003E\r\n\u003Cp\u003EThis split gives engineering teams clearer control points. The planner’s output can be inspected before tools run. The executor can be constrained to approved tools. Evaluation can measure whether failures came from the plan, the execution step or the final synthesis.\u003C/p\u003E\r\n\u003Cp\u003EFor enterprise AI agents, this separation is often helpful because the agent is working near governed data and business systems. The system needs to know not only whether the final answer was useful, but how the agent decided what to do.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"},"title_agent-planning-with-snowflake-cortex-agents":{"id":"title-v2-10b152edfd","additionalClasses":"anchor-title anchor-title--agent-planning-with-snowflake-cortex-agents","type":"heading2","lines":["Agent planning with Snowflake Cortex Agents"],":type":"snowflake-site/components/title-v2"},"text_agent-planning-with-snowflake-cortex-agents_0":{"id":"text-83e407fd06","text":"\u003Cp\u003EEnterprise agents need plans that respect the data, permissions and business context around the task. For a data agent, the task is rarely just generating a fluent answer. The agent has to work through governed sources, semantic definitions, access controls and intermediate results without losing the thread of the original request.\u003C/p\u003E\n\u003Cp\u003E\u003Ca href=\"https://www.snowflake.com/en/developers/guides/getting-started-with-cortex-agents/\"\u003ESnowflake Cortex Agents\u003C/a\u003E are designed to plan and perform work within Snowflake’s governed environment, bringing agentic reasoning to enterprise data while preserving the access controls that determine what data each user can use. That architecture is important for analytical and operational tasks because the planning layer can use context from the environment where the work already happens.\u003C/p\u003E\n\u003Cp\u003EIn a \u003Ca href=\"https://www.snowflake.com/en/blog/agent-context-layer-trustworthy-data-agents/\"\u003ESnowflake internal experiment\u003C/a\u003E, adding a plain-text data ontology — including join keys, table grains and cardinality or fanout hints — was associated with a 20% improvement in final-answer accuracy, approximately 39% fewer average tool calls and approximately 20% lower end-to-end latency relative to the baseline used in that experiment.\u003C/p\u003E\n\u003Cp\u003EThe result is a good reminder that planning quality is tied to context quality. An agent can’t reliably choose the right next step if it lacks the definitions, relationships, constraints and provenance needed to understand the task. With governed context available to the agent, planning can become more efficient because the system has better information about which objects to use, which relationships are valid and which steps are required before an answer is ready.\u003C/p\u003E\n\u003Cp\u003EPlanning also connects directly to agent evaluation and \u003Ca href=\"https://www.snowflake.com/en/artificial-intelligence/agents/agent-orchestration/\"\u003Eagent orchestration\u003C/a\u003E. Evaluation helps teams inspect whether the plan, tool choices and intermediate steps advanced the task. Orchestration coordinates how the plan runs across tools, systems or multiple agents. Together, these layers determine whether an agent can complete multi-step work in a way that is accurate, efficient and consistent with enterprise governance.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"},"callout_agent-planning-with-snowflake-cortex-agents_0":{"id":"text-857e20fbd5","additionalClasses":"callout callout--general","text":"\u003Cp\u003E\u003Cstrong\u003EKEY TAKEAWAY\u003C/strong\u003E\u003C/p\u003E\n\u003Cp\u003EAgent planning helps AI agents complete complex, multi-step work by turning broad goals into ordered actions, tracking intermediate state and revising the path as new information changes the task.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-regular text-color-text-05"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["callout__0","text__0","title_what-is-ai-agent-planning","text_what-is-ai-agent-planning_0","title_how-agents-plan-task-decomposition","text_how-agents-plan-task-decomposition_0","title_agent-planning-patterns","text_agent-planning-patterns_0","title_agent-planning-with-snowflake-cortex-agents","text_agent-planning-with-snowflake-cortex-agents_0","callout_agent-planning-with-snowflake-cortex-agents_0"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-medium"},"flexible_column_content_container_2":{"additionalClasses":"hub-sidebar","layout":"SIMPLE","id":"hub-body-aside",":items":{"container":{"additionalClasses":"sticky-sidebar","columnClassNames":{"text_943981956_copy_":"aem-GridColumn aem-GridColumn--default--12","text_copy":"aem-GridColumn aem-GridColumn--default--12"},"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","layout":"RESPONSIVE_GRID","columnCount":12,"id":"container-51ec965cc6",":items":{"text_943981956_copy_":{"id":"text-76610c4227","additionalClasses":"eyebrow-text","text":"\u003Cp\u003EIn This Guide\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-regular"},"text_copy":{"id":"text-583b3cedde","additionalClasses":"page-toc","text":"\u003Cul\u003E\u003Cli data-anchor=\"what-is-ai-agent-planning\"\u003EWhat is AI agent planning?\u003C/li\u003E\u003Cli data-anchor=\"how-agents-plan-task-decomposition\"\u003EHow agents plan: Task decomposition\u003C/li\u003E\u003Cli data-anchor=\"agent-planning-patterns\"\u003EAgent planning patterns\u003C/li\u003E\u003Cli data-anchor=\"agent-planning-with-snowflake-cortex-agents\"\u003EAgent planning with Snowflake Cortex Agents\u003C/li\u003E\u003C/ul\u003E","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-size-small text-color-text-05"}},":type":"snowflake-site/components/container",":itemsOrder":["text_943981956_copy_","text_copy"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-medium"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["container"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-small"},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container"},"flexible_column_cont_1786318617":{"id":"flexible-column-container-9c39a11176","propertiesId":"hub-faq","type":"2-column-40-60","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"large","bottomPadding":"large","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"hub-faq-intro",":items":{"title_v2_copy":{"id":"title-v2-66d52c6dfd","additionalClasses":"hub-faq__headline","type":"heading2","lines":["Frequently Asked Questions"],":type":"snowflake-site/components/title-v2","appliedCssClassNames":"left-alignment"},"text_copy":{"id":"text-9296492f9c","additionalClasses":"hub-faq__subheadline","text":"\u003Cp\u003EYour common questions about AI agent planning, answered by Snowflake experts.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["title_v2_copy","text_copy"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-extra-small"},"flexible_column_content_container_2":{"layout":"SIMPLE","id":"hub-faq-accordions",":items":{"simple_snowflake_acc":{"id":"simple-snowflake-accordion-5691b9b746","additionalClasses":"seo-hub__faqs","showDivider":false,"accordionItemsList":[{"title":"What is the difference between agent planning and agent orchestration?","richText":"\u003Cp\u003EAgent planning defines the step sequence an agent uses to complete a goal. It breaks the task into subtasks, identifies dependencies and decides which tools or actions are needed. Agent orchestration coordinates how that work runs. It manages execution across tools, agents, systems, state and runtime controls. In practice, planning determines what should happen; orchestration manages how it happens.\u003C/p\u003E"},{"title":"What is task decomposition in AI agents?","richText":"\u003Cp\u003ETask decomposition is the process of breaking a high-level goal into smaller, executable subtasks. Each subtask should be specific enough to map to an action, tool call or decision point. Strong decomposition helps the agent preserve dependencies across the task instead of treating each step as a disconnected action.\u003C/p\u003E"}],":type":"snowflake-site/components/simple-snowflake-accordion"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["simple_snowflake_acc"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-gray-10-bg"},"flexible_column_cont_1467213961":{"id":"flexible-column-container-bd074bef1f","propertiesId":"hub-explore-resources-header","type":"1-column","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"large","bottomPadding":"none","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-ef4219540b",":items":{"title_v2":{"id":"title-v2-93add6b683","additionalClasses":"hub-explore-resources-header__headline","type":"heading2","lines":["Explore AI Resources"],":type":"snowflake-site/components/title-v2","appliedCssClassNames":"left-alignment"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["title_v2"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-gray-10-bg"},"flexible_column_cont_912630531":{"id":"flexible-column-container-cca4dc2349","propertiesId":"hub-explore-resources-grid","type":"1-column","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"small","bottomPadding":"large","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"hub-explore-resources-grid-inner",":items":{"resource_chip_0":{"id":"content-chip-fda184f3a7","tagText":"BLOG","tagColor":"#29B5E8","cta":{"id":"cta","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"https://www.snowflake.com/en/blog/agentic-enterprise-control-plane/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_EXTERNAL",":type":"snowflake-site/components/button","text":"Read more"},"headline":{"id":"title","type":"heading5","lines":["Powering the Era of the Agentic Enterprise"],":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/content-chip","appliedCssClassNames":"snowflake-content-chip-white-bg"},"resource_chip_1":{"id":"content-chip-5aa9df1e33","tagText":"BLOG","tagColor":"#29B5E8","cta":{"id":"cta","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"https://www.snowflake.com/en/blog/agentic-enterprise-snowflake-accenture/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_EXTERNAL",":type":"snowflake-site/components/button","text":"Read more"},"headline":{"id":"title","type":"heading5","lines":["Turning Enterprise Context into Governed Agentic Action"],":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/content-chip","appliedCssClassNames":"snowflake-content-chip-white-bg"},"resource_chip_2":{"id":"content-chip-642bc74cd1","tagText":"REPORT","tagColor":"#C6EDF1","cta":{"id":"cta","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"https://www.snowflake.com/en/lp/radical-roi-generative-ai/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_EXTERNAL",":type":"snowflake-site/components/button","text":"Read more"},"headline":{"id":"title","type":"heading5","lines":["The ROI of Gen AI and Agents 2026"],":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/content-chip","appliedCssClassNames":"snowflake-content-chip-white-bg"},"resource_chip_3":{"id":"content-chip-a8ef1e9a4a","tagText":"REPORT","tagColor":"#C6EDF1","cta":{"id":"cta","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"https://www.snowflake.com/en/lp/building-startup-ai-age/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_EXTERNAL",":type":"snowflake-site/components/button","text":"Read more"},"headline":{"id":"title-v2-b3a8b4a99c","type":"heading5","lines":["AI Agents Mean Business"],":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/content-chip","appliedCssClassNames":"snowflake-content-chip-white-bg"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["resource_chip_0","resource_chip_1","resource_chip_2","resource_chip_3"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-gray-10-bg"},"flexible_column_cont_1158003461":{"id":"flexible-column-container-cab9942405","propertiesId":"hub-explore-topics-header","type":"1-column","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"large","bottomPadding":"none","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-ff736cc4ed",":items":{"title_v2_copy_copy":{"id":"title-v2-e6d6657990","additionalClasses":"hub-explore-topics-header__headline","type":"heading2","lines":["Explore AI Topics"],":type":"snowflake-site/components/title-v2","appliedCssClassNames":"left-alignment"},"text_copy_copy":{"id":"text-02a765d1e2","additionalClasses":"hub-explore-topics-header__subheadline","text":"\u003Cp\u003EDeep dives into every aspect of artificial intelligence\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text","appliedCssClassNames":"text-color-text-05"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["title_v2_copy_copy","text_copy_copy"],"appliedCssClassNames":"snowflake-responsive-container-inner-padding-extra-small"},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-white-bg"},"flexible_column_cont_1377146023":{"id":"flexible-column-container-b3623e971f","propertiesId":"hub-explore-topics-grid","type":"3-column-even","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"small","bottomPadding":"large","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-0f7f4df803",":items":{"topic_card_0":{"id":"card-v2-71e9a8a69b","configurationStatus":{"configured":true,"message":""},"title":{"id":"title","type":"heading4","lines":["AI Agents"],":type":"snowflake-site/components/title-v2"},"button":{"id":"button","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/artificial-intelligence/agents/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_INTERNAL",":type":"snowflake-site/components/button","text":"Learn more"},"type":"content-card","text":{"id":"text","text":"\u003Cp\u003EThe parent guide to AI agents: what they are, how they work, types and architecture.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text"},"layoutStyle":"vertical",":type":"snowflake-site/components/card-v2"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["topic_card_0"]},"flexible_column_content_container_2":{"layout":"SIMPLE","id":"container-8000c18c63",":items":{"topic_card_1":{"id":"card-v2-23c7e24ee8","configurationStatus":{"configured":true,"message":""},"title":{"id":"title","type":"heading4","lines":["Agent Orchestration"],":type":"snowflake-site/components/title-v2"},"button":{"id":"button","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/artificial-intelligence/agents/agent-orchestration/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_INTERNAL",":type":"snowflake-site/components/button","text":"Learn more"},"type":"content-card","text":{"id":"text","text":"\u003Cp\u003EHow agent plans are coordinated and executed across multi-step enterprise workflows.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text"},"layoutStyle":"vertical",":type":"snowflake-site/components/card-v2"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["topic_card_1"]},"flexible_column_content_container_3":{"layout":"SIMPLE","id":"container-7453b71f6c",":items":{"topic_card_2":{"id":"card-v2-427a6d5a99","configurationStatus":{"configured":true,"message":""},"title":{"id":"title","type":"heading4","lines":["Agent Evaluation"],":type":"snowflake-site/components/title-v2"},"button":{"id":"button","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/artificial-intelligence/agents/agent-evaluation/"},"linkTargetContentType":"GENERIC","linkType":"SNOWFLAKE_INTERNAL",":type":"snowflake-site/components/button","text":"Learn more"},"type":"content-card","text":{"id":"text","text":"\u003Cp\u003EHow to measure agent quality and reliability under a control plane.\u003C/p\u003E","richText":true,":type":"snowflake-site/components/text"},"layoutStyle":"vertical",":type":"snowflake-site/components/card-v2"}},":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":itemsOrder":["topic_card_2"]},"isBlogPage":false,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container","appliedCssClassNames":"snowflake-flexible-column-container-white-bg"}},":itemsOrder":["flexible_column_cont","flexible_column_cont_939100716","flexible_column_cont_1398138236","flexible_column_cont_663228916","flexible_column_cont_1786318617","flexible_column_cont_1467213961","flexible_column_cont_912630531","flexible_column_cont_1158003461","flexible_column_cont_1377146023"],":type":"wcm/foundation/components/responsivegrid"},"modal_container":{"layout":"SIMPLE","id":"container-c48ef4dc85",":items":{},":type":"snowflake-site/components/modal/modal-container",":itemsOrder":[]},"markup_editor_928258845":{"id":"markup-editor-27f12ea616","title":" ","cssContent":".snowflake-flexible-column-container-gray-10-bg\u003E.snowflake-flexible-column-container{background-color:var(--ui-background-05) !important}.text-size-regular:has(.seo-hub-hero__related-topic-label){display:flex;align-items:center}.hub-hero__headline span{text-transform:none !important}.hub-hero__subheadline p{max-width:70ch;margin-top:8px}.hub-hero__authors \u003E .container \u003E .cmp-container \u003E .aem-container{display:flex;flex-direction:row}.hub-hero__authors \u003E .container \u003E .cmp-container \u003E .aem-container \u003E div{width:auto !important;margin:24px 48px 0 0 !important}.hub-hero__authors .heading-5-v2{gap:var(--spacing-00)}.hub-hero__authors .snowflake-content-chip-button{display:none !important}.hub-hero__authors .snowflake-person-chip-content .body-2,.hub-hero__authors .snowflake-content-chip-content .snowflake-title-v2-line{font-size:16px !important;line-height:20px !important;font-family:\"Lato\",sans-serif !important;color:#000 !important;font-weight:600 !important}.hub-hero__authors .snowflake-person-chip-content .body-3,.hub-hero__authors .snowflake-content-chip-content .snowflake-title-v2-line:not(:first-child){font-weight:400 !important;color:var(--text-05) !important;font-size:16px !important}.hub-hero__authors .snowflake-image-container img{aspect-ratio:1 !important;border-radius:100%;overflow:hidden}.hub-hero__authors .snowflake-person-chip-avatar{width:56px;height:56px}.hub-hero__authors .snowflake-content-chip{align-items:center;display:inline-flex}.hub-hero__authors .snowflake-content-chip-image{max-width:56px;line-height:0;margin-right:var(--spacing-03)}.hub-hero__authors .snowflake-person-chip-inner-horizontal{gap:var(--spacing-03)}@media screen and (min-width:1367px){.hub-hero__headline .heading-1-v2{font-size:48px;line-height:44px}}#hub-explore-resources-grid-inner\u003E.container\u003E.cmp-container\u003E.aem-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:24px}#hub-explore-resources-grid-inner\u003E.container\u003E.cmp-container\u003E.aem-container::before,#hub-explore-resources-grid-inner\u003E.container\u003E.cmp-container\u003E.aem-container::after{display:none}#hub-explore-resources-grid-inner\u003E.container\u003E.cmp-container\u003E.aem-container\u003Ediv{width:calc(25% - 18px)}.text-color-text-05 .snowflake-text h2,.text-color-text-05.cq-Editable-dom h2,.text-color-text-05 .snowflake-text h3,.text-color-text-05.cq-Editable-dom h3,.text-color-text-05 .snowflake-text h4,.text-color-text-05.cq-Editable-dom h4,.text-color-text-05 .snowflake-text h5,.text-color-text-05.cq-Editable-dom h5,.text-color-text-05 .snowflake-text h6,.text-color-text-05.cq-Editable-dom h6{color:#000 !important}","isGSAPEnabled":false,":type":"snowflake-site/components/markup-editor"},"markup_editor_597730182":{"id":"markup-editor-e6949b45ac","title":" ","cssContent":".sf-copy-markdown [data-copy-md]{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-family:'Texta',sans-serif;text-transform:uppercase;font-weight:800 !important;font-size:14px;font-weight:500;color:#11567f;background:#f0faff;border:1px solid #b8e6f9;border-radius:24px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.sf-copy-markdown [data-copy-md]:hover{background:#ddf3fc;border-color:#29b5e8}.sf-copy-markdown [data-copy-md][data-copied=\"1\"]{color:#0f7b3e;background:#ecfdf5;border-color:#6ee7a0;pointer-events:none}.sf-copy-markdown [data-copy-md] svg{flex-shrink:0}.longform-conten .snowflake-content-chip-white-bg .snowflake-content-chip{box-shadow:0 0 24px 4px rgba(0,0,0,.02),0 4px 8px 0 rgba(0,0,0,.04);flex-direction:row-reverse;align-items:center}.longform-conten .snowflake-content-chip-button{display:none}.longform-conten .snowflake-content-chip-image__inner{aspect-ratio:5 / 3;display:flex;justify-content:center;align-items:center;background-color:var(--ui-01);border-radius:4px}.longform-conten .snowflake-content-chip-image{margin-right:0;margin-left:48px}.longform-conten .snowflake-content-chip-image img{width:50%;border-radius:0 !important;object-fit:contain}.longform-content .black-blue-text-color .snowflake-title-v2-line:not(:first-child){font-size:14px !important;font-weight:400 !important;color:rgba(0,0,0,.6) !important;margin-top:8px !important}.page-toc ul li:first-child{padding-top:0 !important}.page-toc ul li:last-child{padding-bottom:0 !important}.seo-hub__top-bar \u003E .container \u003E .cmp-container \u003E .aem-container \u003E div:first-child{flex-grow:1}.sf-copy-markdown{margin-top:40px !important}.page-toc ul{margin-top:16px !important}.seo-hub__top-bar \u003E .container \u003E .cmp-container \u003E .aem-container{display:flex;justify-content:space-between}.sf-copy-markdown{}.callout.snowflake-text p:not(:first-child){margin-top:var(--spacing-01)}.callout \u003E span \u003E p:first-child \u003E strong,.callout \u003E span \u003E p:first-child \u003E b{text-transform:uppercase;font-family:'Texta',sans-serif;font-size:16px !important;color:var(--ui-01) !important}.seo-hub-hero__subheadline p{max-width:50ch}.tag-group ul{list-style-type:none;padding:0;margin:0;display:flex;flex-direction:row;row-gap:12px;column-gap:8px;align-items:center;flex-wrap:wrap}.tag-group ul li:first-child{flex-shrink:0}.tag-group ul li a{display:inline-block;padding:2px 12px;border-radius:48px;background-color:#ededed;color:#666;font-size:14px !important}@media screen and (min-width:1367px){.seo-hub-hero__headline span.snowflake-title-v2-line{font-size:56px !important}}.callout.snowflake-text p:not(:first-child){margin-top:var(--spacing-01)}.callout \u003E span \u003E p:first-child \u003E b{text-transform:uppercase;font-family:'Texta',sans-serif;font-size:16px !important;color:var(--ui-01) !important}.seo-hub-hero__subheadline p{max-width:80ch}#hero:has(.snowflake-youtube-lite) .seo-hub-hero__subheadline p{max-width:50ch}.tag-group ul{list-style-type:none;padding:0;margin:0;display:flex;flex-direction:row;row-gap:12px;column-gap:8px;align-items:center;flex-wrap:wrap}.tag-group ul li:first-child{width:100%;flex-shrink:0}.tag-group ul li a{display:inline-block;padding:2px 12px;border-radius:48px;background-color:#ededed;color:#666;font-size:14px !important}@media screen and (min-width:1367px){.seo-hub-hero__headline span.snowflake-title-v2-line{font-size:56px !important}}","isGSAPEnabled":false,":type":"snowflake-site/components/markup-editor"},"markup_editor":{"id":"markup-editor-2119fdc457","title":" ","cssContent":"div.snowflake-breadcrumb a.snowflake-breadcrumb-item,.snowflake-breadcrumb div.snowflake-breadcrumb-item{text-transform:none;font-weight:500}.snowflake-breadcrumb svg{display:none !important}.snowflake-breadcrumb a:has(svg)::after{content:'/';margin:0 12px;color:#666}.hub-sidebar{padding:0 40px}.sticky-sidebar{max-width:340px;margin-left:auto}.page-toc ul{list-style-type:none;padding:0}.page-toc li{padding:8px 16px;border-left:4px solid var(--ui-01);cursor:pointer;transition:300ms ease all}.page-toc li:hover{color:var(--ui-01);border-color:#7fd3f1;transition:300ms ease all}.callout,.customer-card{background-color:#eef9fd;border-left:4px solid var(--ui-01);padding:24px 24px 24px 32px;border-radius:4px}.logo-container{max-width:180px}.longform-content li{margin-top:1rem !important}div.longform-content p{max-width:80ch}.bolder .snowflake-title-v2-line{font-weight:900 !important}.border-top\u003Ediv{border-top:1px solid #ccc;padding-top:48px}.related-topics ul{list-style-type:none;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}.related-topics li{display:inline-block;border:1px solid #ccc;padding:4px 12px;border-radius:24px}div.longform-content .snowflake-text h2,div.longform-content .snowflake-text .heading-2-v2,div.longform-content .snowflake-text h3,div.longform-content .snowflake-text .heading-3-v2,div.longform-content .snowflake-title-v2 .heading-3-v2,div.longform-content .snowflake-text h4,div.longform-content .snowflake-text .heading-4-v2,div.longform-content .snowflake-title-v2 .heading-4-v2,div.longform-content .snowflake-text h5,div.longform-content .snowflake-text .heading-5-v2,div.longform-content .snowflake-title-v2 .heading-5-v2,div.longform-content .snowflake-text h6,div.longform-content .snowflake-title-v2 .heading-6-v2,div.longform-content .snowflake-text .heading-6-v2{text-transform:none !important}div.longform-content .snowflake-text h2,div.longform-content .snowflake-text .heading-2-v2,div.longform-content .snowflake-text h3,div.longform-content .snowflake-text .heading-3-v2,div.longform-content .snowflake-text h4,div.longform-content .snowflake-text .heading-4-v2,div.longform-content .snowflake-text h5,div.longform-content .snowflake-text .heading-5-v2,div.longform-content .snowflake-text h6,div.longform-content .snowflake-text .heading-6-v2{margin-top:1.5rem !important;line-height:1.1 !important}div.longform-content .snowflake-text h3,div.longform-content .snowflake-text .heading-3-v2,div.longform-content .snowflake-title-v2 .heading-3-v2,div.longform-content .snowflake-text h4,div.longform-content .snowflake-text .heading-4-v2,div.longform-content .snowflake-title-v2 .heading-4-v2,div.longform-content .snowflake-text h5,div.longform-content .snowflake-text .heading-5-v2,div.longform-content .snowflake-title-v2 .heading-5-v2,div.longform-content .snowflake-text h6,div.longform-content .snowflake-text .heading-6-v2,div.longform-content .snowflake-title-v2 .heading-6-v2{font-family:Lato,sans-serif !important;font-weight:800 !important}div.longform-content .snowflake-text h2,div.longform-content .snowflake-text .heading-2-v2,div.longform-content .snowflake-title-v2 .heading-2-v2{text-transform:none !important;font-size:28px !important}div.longform-content .snowflake-text h3,div.longform-content .snowflake-text .heading-3-v2,div.longform-content .snowflake-title-v2 .heading-3-v2{font-size:22px !important}div.longform-content .snowflake-text h4,div.longform-content .snowflake-text .heading-4-v2,div.longform-content .snowflake-title-v2 .heading-4-v2{font-size:18px !important}div.longform-content .snowflake-text h5,div.longform-content .snowflake-text .heading-5-v2,div.longform-content .snowflake-title-v2 .heading-5-v2{font-size:16px !important}div.longform-content .snowflake-text h6,div.longform-content .snowflake-text .heading-6-v2,div.longform-content .snowflake-title-v2 .heading-6-v2{font-size:14px !important}@media screen and (min-width:992px){div.longform-content .snowflake-text h2,div.longform-content .snowflake-text .heading-2-v2,div.longform-content .snowflake-title-v2 .heading-2-v2{font-size:38px !important}div.longform-content .snowflake-text h3,div.longform-content .snowflake-text .heading-3-v2,div.longform-content .snowflake-title-v2 .heading-3-v2{font-size:26px !important}div.longform-content .snowflake-text h4,div.longform-content .snowflake-text .heading-4-v2,div.longform-content .snowflake-title-v2 .heading-4-v2{font-size:22px !important}div.longform-content .snowflake-text h5,div.longform-content .snowflake-text .heading-5-v2,div.longform-content .snowflake-title-v2 .heading-5-v2{font-size:18px !important}div.longform-content .snowflake-text h6,div.longform-content .snowflake-text .heading-6-v2,div.longform-content .snowflake-title-v2 .heading-6-v2{font-size:16px !important}}.sticky-sidebar .page-toc li.is-active{font-weight:600;color:var(--snow-blue,#29b5e8)}.sticky-sidebar .page-toc li[data-anchor]{cursor:pointer}.longform-content table{margin-top:24px;margin-bottom:24px;width:100%;background-color:var(--ui-background-01);border-collapse:collapse;border:2px solid var(--ui-background-09);font-family:'Lato',sans-serif;color:var(--ui-background-09)}.longform-content table thead{background-color:var(--ui-01)}.longform-content th,.longform-content td{min-width:120px;border:2px solid var(--ui-background-09);padding:var(--spacing-01)}.longform-content ol{margin-top:0 !important}.longform-content ol li{margin-bottom:1rem !important}.longform-content ul li{margin:0;padding:0 0 0 32px;position:relative}.longform-content ul{list-style-type:none}.longform-content ul li::before{content:\"\";display:block;border-radius:100%;background:#29b5e8;width:18px;height:18px;position:absolute;top:4px;left:0;border:5px solid #e5f2f7;box-sizing:border-box}.seo-customer.snowflake-card-v2-advanced-horizontal .snowflake-card-v2-advanced-image-container{max-width:200px}.seo-customer.snowflake-card-v2-advanced-horizontal .snowflake-card-v2-advanced-image-container img{object-fit:contain}.related-topics-outer-container \u003E .container \u003E .cmp-container \u003E .aem-container{display:flex;flex-direction:row}.related-topics-outer-container \u003E .container \u003E .cmp-container \u003E .aem-container \u003E div{width:auto !important;margin:0 !important}.related-topics-outer-container \u003E .container \u003E .cmp-container \u003E .aem-container \u003E div:first-child{margin-right:16px !important;flex-shrink:0}","jsContent":"(function(){var OFFSET=100;if(window.gsap&&window.ScrollTrigger){gsap.registerPlugin(ScrollTrigger);var sidebar=document.querySelector('.sticky-sidebar');var body=document.querySelector('.longform-content');if(sidebar&&body){ScrollTrigger.create({trigger:sidebar,start:'top 100px',endTrigger:body,end:'bottom bottom',pin:sidebar,pinSpacing:false});}}document.addEventListener('click',function(e){var li=e.target.closest('li[data-anchor]');if(!li)return;var slug=li.getAttribute('data-anchor');var heading=document.querySelector('.anchor-title--'+CSS.escape(slug));if(!heading)return;e.preventDefault();var top=heading.getBoundingClientRect().top+window.pageYOffset-OFFSET;window.scrollTo({top:top,behavior:'smooth'});history.replaceState(null,'','#'+slug);},false);var headings=document.querySelectorAll('[class*=\"anchor-title--\"]');if(headings.length&&'IntersectionObserver'in window){var io=new IntersectionObserver(function(entries){entries.forEach(function(entry){if(!entry.isIntersecting)return;var cls=Array.from(entry.target.classList).find(function(c){return c.indexOf('anchor-title--')===0;});if(!cls)return;var slug=cls.replace('anchor-title--','');document.querySelectorAll('li[data-anchor]').forEach(function(li){li.classList.toggle('is-active',li.getAttribute('data-anchor')===slug);});});},{rootMargin:'-20% 0px -70% 0px',threshold:0});headings.forEach(function(h){io.observe(h);});}})();","isGSAPEnabled":true,":type":"snowflake-site/components/markup-editor"},"experiencefragment-footer":{"id":"experiencefragment-fed4b5ac7a","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/footer/master/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/footer/master.xfmodel.json",":type":"snowflake-site/components/experiencefragment"},"experiencefragment":{"id":"experiencefragment-26ab989d1d","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/footer-legal-disclaimers/master/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/footer-legal-disclaimers/master.xfmodel.json",":type":"snowflake-site/components/experiencefragment"}},":itemsOrder":["experiencefragment-banner","experiencefragment-header","responsivegrid","modal_container","markup_editor_928258845","markup_editor_597730182","markup_editor","experiencefragment-footer","experiencefragment"],":type":"wcm/foundation/components/responsivegrid"}},":mappedPath":"/en/artificial-intelligence/agents/agent-planning/",":type":"snowflake-site/components/structure/page",":itemsOrder":["root"],":hierarchyType":"page",":path":"/content/snowflake-site/global/en/artificial-intelligence/agents/agent-planning","locale":"en"}
  