[{"data":1,"prerenderedAt":979},["ShallowReactive",2],{"navigation_docs":3,"-data-ops-llm-ops-agents":348,"-data-ops-llm-ops-agents-surround":974},[4,8,68,98,216,245,259,280,344],{"title":5,"path":6,"stem":7},"Introduction","\u002Fintroduction","0.introduction",{"title":9,"icon":10,"path":11,"stem":12,"children":13,"page":63},"Company","i-lucide-building-2","\u002Fcompany","1.company",[14,18,22,26,30,34,38,42,46,50,64],{"title":15,"path":16,"stem":17},"About","\u002Fcompany\u002Fabout","1.company\u002F0.about",{"title":19,"path":20,"stem":21},"Values","\u002Fcompany\u002Fvalues","1.company\u002F1.values",{"title":23,"path":24,"stem":25},"Communication","\u002Fcompany\u002Fcommunication","1.company\u002Fcommunication",{"title":27,"path":28,"stem":29},"Competition","\u002Fcompany\u002Fcompetition","1.company\u002Fcompetition",{"title":31,"path":32,"stem":33},"Hybrid Working","\u002Fcompany\u002Fhybrid-working","1.company\u002Fhybrid-working",{"title":35,"path":36,"stem":37},"Manchester Office","\u002Fcompany\u002Foffice","1.company\u002Foffice",{"title":39,"path":40,"stem":41},"Operations","\u002Fcompany\u002Foperations","1.company\u002Foperations",{"title":43,"path":44,"stem":45},"Policies","\u002Fcompany\u002Fpolicies","1.company\u002Fpolicies",{"title":47,"path":48,"stem":49},"Product Strategy","\u002Fcompany\u002Fproduct-strategy","1.company\u002Fproduct-strategy",{"title":51,"path":52,"stem":53,"children":54,"page":63},"Products","\u002Fcompany\u002Fproducts","1.company\u002Fproducts",[55,59],{"title":56,"path":57,"stem":58},"Capability Exchange","\u002Fcompany\u002Fproducts\u002Fcapability-exchange","1.company\u002Fproducts\u002Fcapability-exchange",{"title":60,"path":61,"stem":62},"ESProfiler Platform","\u002Fcompany\u002Fproducts\u002Fesprofiler","1.company\u002Fproducts\u002Fesprofiler",false,{"title":65,"path":66,"stem":67},"Security","\u002Fcompany\u002Fsecurity","1.company\u002Fsecurity",{"title":69,"icon":70,"path":71,"stem":72,"children":73,"page":63},"People Ops","i-lucide-users","\u002Fpeople-ops","2.people-ops",[74,78,82,86,90,94],{"title":75,"path":76,"stem":77},"Compensation","\u002Fpeople-ops\u002Fcompensation","2.people-ops\u002Fcompensation",{"title":79,"path":80,"stem":81},"Education","\u002Fpeople-ops\u002Feducation","2.people-ops\u002Feducation",{"title":83,"path":84,"stem":85},"Expenses","\u002Fpeople-ops\u002Fexpenses","2.people-ops\u002Fexpenses",{"title":87,"path":88,"stem":89},"Holiday & Leave","\u002Fpeople-ops\u002Fleave","2.people-ops\u002Fleave",{"title":91,"path":92,"stem":93},"Onboarding","\u002Fpeople-ops\u002Fonboarding","2.people-ops\u002Fonboarding",{"title":95,"path":96,"stem":97},"Recruitment","\u002Fpeople-ops\u002Frecruitment","2.people-ops\u002Frecruitment",{"title":99,"icon":100,"path":101,"stem":102,"children":103,"page":63},"Engineering","i-lucide-rocket","\u002Fengineering","3.engineering",[104,147,151,171,192,196,204,208,212],{"title":105,"path":106,"stem":107,"children":108,"page":63},"Contributing","\u002Fengineering\u002Fcontributing","3.engineering\u002Fcontributing",[109,113,117,121,125,138],{"title":110,"path":111,"stem":112},"Development Setup","\u002Fengineering\u002Fcontributing\u002Fdevelopment-setup","3.engineering\u002Fcontributing\u002F1.development-setup",{"title":114,"path":115,"stem":116},"Engineering Operations","\u002Fengineering\u002Fcontributing\u002Fengineering-operations","3.engineering\u002Fcontributing\u002F2.engineering-operations",{"title":118,"path":119,"stem":120},"Documentation","\u002Fengineering\u002Fcontributing\u002Fdocumentation","3.engineering\u002Fcontributing\u002F3.documentation",{"title":122,"path":123,"stem":124},"Agentic Coding","\u002Fengineering\u002Fcontributing\u002Fagentic-coding","3.engineering\u002Fcontributing\u002Fagentic-coding",{"title":126,"path":127,"stem":128,"children":129,"page":63},"Back End","\u002Fengineering\u002Fcontributing\u002Fback-end","3.engineering\u002Fcontributing\u002Fback-end",[130,134],{"title":131,"path":132,"stem":133},"API Guidelines","\u002Fengineering\u002Fcontributing\u002Fback-end\u002Fapi-guidelines","3.engineering\u002Fcontributing\u002Fback-end\u002Fapi-guidelines",{"title":135,"path":136,"stem":137},"LLM Prompts & Langfuse Integration","\u002Fengineering\u002Fcontributing\u002Fback-end\u002Fllm-prompts","3.engineering\u002Fcontributing\u002Fback-end\u002Fllm-prompts",{"title":139,"path":140,"stem":141,"children":142,"page":63},"Front End","\u002Fengineering\u002Fcontributing\u002Ffront-end","3.engineering\u002Fcontributing\u002Ffront-end",[143],{"title":144,"path":145,"stem":146},"Testing","\u002Fengineering\u002Fcontributing\u002Ffront-end\u002Ftesting","3.engineering\u002Fcontributing\u002Ffront-end\u002Ftesting",{"title":148,"path":149,"stem":150},"Production Database","\u002Fengineering\u002Fdatabase-connection","3.engineering\u002Fdatabase-connection",{"title":152,"path":153,"stem":154,"children":155},"Deployment","\u002Fengineering\u002Fdeployment","3.engineering\u002Fdeployment",[156,159,163,167],{"title":56,"path":157,"stem":158},"\u002Fengineering\u002Fdeployment\u002Fcapability-exchange","3.engineering\u002Fdeployment\u002Fcapability-exchange",{"title":160,"path":161,"stem":162},"Langfuse Deployment","\u002Fengineering\u002Fdeployment\u002Fecs-langfuse-deployment","3.engineering\u002Fdeployment\u002Fecs-langfuse-deployment",{"title":164,"path":165,"stem":166},"ESP Platform Configuration","\u002Fengineering\u002Fdeployment\u002Fesp-platform-configuration","3.engineering\u002Fdeployment\u002Fesp-platform-configuration",{"title":168,"path":169,"stem":170},"Platform","\u002Fengineering\u002Fdeployment\u002Fplatform","3.engineering\u002Fdeployment\u002Fplatform",{"title":172,"path":173,"stem":174,"children":175,"page":63},"Github","\u002Fengineering\u002Fgithub","3.engineering\u002Fgithub",[176,180,184,188],{"title":177,"path":178,"stem":179},"Packages","\u002Fengineering\u002Fgithub\u002Fpackages","3.engineering\u002Fgithub\u002Fpackages",{"title":181,"path":182,"stem":183},"Personal Access Token","\u002Fengineering\u002Fgithub\u002Fpersonal-access-token","3.engineering\u002Fgithub\u002Fpersonal-access-token",{"title":185,"path":186,"stem":187},"Troubleshooting","\u002Fengineering\u002Fgithub\u002Ftroubleshooting","3.engineering\u002Fgithub\u002Ftroubleshooting",{"title":189,"path":190,"stem":191},"Workflows","\u002Fengineering\u002Fgithub\u002Fworkflows","3.engineering\u002Fgithub\u002Fworkflows",{"title":193,"path":194,"stem":195},"Platform Ops","\u002Fengineering\u002Fplatform-ops","3.engineering\u002Fplatform-ops",{"title":168,"path":197,"stem":198,"children":199,"page":63},"\u002Fengineering\u002Fplatform","3.engineering\u002Fplatform",[200],{"title":201,"path":202,"stem":203},"useAPI","\u002Fengineering\u002Fplatform\u002Fuse-api","3.engineering\u002Fplatform\u002Fuse-api",{"title":205,"path":206,"stem":207},"Project Management","\u002Fengineering\u002Fproject-management","3.engineering\u002Fproject-management",{"title":209,"path":210,"stem":211},"Releases","\u002Fengineering\u002Frelease","3.engineering\u002Frelease",{"title":213,"path":214,"stem":215},"Tools","\u002Fengineering\u002Ftools","3.engineering\u002Ftools",{"title":217,"icon":218,"path":219,"stem":220,"children":221,"page":63},"Design","i-lucide-palette","\u002Fdesign","4.design",[222,226,230,234,238,241],{"title":223,"path":224,"stem":225},"Design Thinking","\u002Fdesign\u002Fdesign-thinking","4.design\u002F1.design-thinking",{"title":227,"path":228,"stem":229},"Figma","\u002Fdesign\u002Ffigma-structure","4.design\u002F2.figma-structure",{"title":231,"path":232,"stem":233},"Design & Development","\u002Fdesign\u002Fdesign-and-development","4.design\u002F3.design-and-development",{"title":235,"path":236,"stem":237},"Branding","\u002Fdesign\u002Fbranding","4.design\u002F4.branding",{"title":213,"path":239,"stem":240},"\u002Fdesign\u002Ftools","4.design\u002F5.tools",{"title":242,"path":243,"stem":244},"Customer Success","\u002Fdesign\u002Fworking-with-customers","4.design\u002F6.working-with-customers",{"title":246,"icon":247,"path":248,"stem":249,"children":250,"page":63},"Sales","i-lucide-dollar-sign","\u002Fsales","4.sales",[251,255],{"title":252,"path":253,"stem":254},"Customer Onboarding","\u002Fsales\u002Fonboarding","4.sales\u002Fonboarding",{"title":256,"path":257,"stem":258},"Sales Tools","\u002Fsales\u002Ftools","4.sales\u002Ftools",{"title":260,"icon":261,"path":262,"stem":263,"children":264,"page":63},"Marketing","i-lucide-book-image","\u002Fmarketing","5.marketing",[265,269,273,276],{"title":266,"path":267,"stem":268},"Content","\u002Fmarketing\u002Fcontent","5.marketing\u002Fcontent",{"title":270,"path":271,"stem":272},"Messaging","\u002Fmarketing\u002Fmessaging","5.marketing\u002Fmessaging",{"title":213,"path":274,"stem":275},"\u002Fmarketing\u002Ftools","5.marketing\u002Ftools",{"title":277,"path":278,"stem":279},"Website","\u002Fmarketing\u002Fwebsite","5.marketing\u002Fwebsite",{"title":281,"icon":282,"path":283,"stem":284,"children":285,"page":63},"AI & Data Ops","i-lucide-database","\u002Fdata-ops","6.data-ops",[286,294,298,323,340],{"title":56,"path":287,"stem":288,"children":289,"page":63},"\u002Fdata-ops\u002Fcapability-exchange","6.data-ops\u002FCapability Exchange",[290],{"title":291,"path":292,"stem":293},"Leaderboard Calculation","\u002Fdata-ops\u002Fcapability-exchange\u002Fleaderboard-calculation","6.data-ops\u002FCapability Exchange\u002Fleaderboard-calculation",{"title":295,"path":296,"stem":297},"Account Portal (CAS)","\u002Fdata-ops\u002Faccount-portal","6.data-ops\u002Faccount-portal",{"title":299,"path":300,"stem":301,"children":302,"page":63},"Data Management","\u002Fdata-ops\u002Fdata-management","6.data-ops\u002Fdata-management",[303,307,311,315,319],{"title":304,"path":305,"stem":306},"Adding Products","\u002Fdata-ops\u002Fdata-management\u002Fadding-products","6.data-ops\u002Fdata-management\u002Fadding-products",{"title":308,"path":309,"stem":310},"Adding Vendors","\u002Fdata-ops\u002Fdata-management\u002Fadding-vendors","6.data-ops\u002Fdata-management\u002Fadding-vendors",{"title":312,"path":313,"stem":314},"Framework Mapping","\u002Fdata-ops\u002Fdata-management\u002Fframework-mapping","6.data-ops\u002Fdata-management\u002Fframework-mapping",{"title":316,"path":317,"stem":318},"Refreshing Vendors","\u002Fdata-ops\u002Fdata-management\u002Frefreshing-vendors","6.data-ops\u002Fdata-management\u002Frefreshing-vendors",{"title":320,"path":321,"stem":322},"Reviewing Draft Vendors","\u002Fdata-ops\u002Fdata-management\u002Freviewing-draft-vendors","6.data-ops\u002Fdata-management\u002Freviewing-draft-vendors",{"title":324,"path":325,"stem":326,"children":327,"page":63},"LLM Ops","\u002Fdata-ops\u002Fllm-ops","6.data-ops\u002Fllm-ops",[328,332,336],{"title":329,"path":330,"stem":331},"Agents","\u002Fdata-ops\u002Fllm-ops\u002Fagents","6.data-ops\u002Fllm-ops\u002F1.agents",{"title":333,"path":334,"stem":335},"ESPi Architecture & Query Flow","\u002Fdata-ops\u002Fllm-ops\u002Fespi-architecture","6.data-ops\u002Fllm-ops\u002F2.espi-architecture",{"title":337,"path":338,"stem":339},"Evaluating Agents","\u002Fdata-ops\u002Fllm-ops\u002Fevaluations","6.data-ops\u002Fllm-ops\u002F3.evaluations",{"title":341,"path":342,"stem":343},"Message Queues","\u002Fdata-ops\u002Fmessage-queues","6.data-ops\u002Fmessage-queues",{"title":345,"path":346,"stem":347},"Glossary","\u002Fglossary","glossary",{"id":349,"title":329,"body":350,"description":967,"extension":968,"links":969,"meta":970,"navigation":971,"path":330,"seo":972,"stem":331,"__hash__":973},"docs\u002F6.data-ops\u002Fllm-ops\u002F1.agents.md",{"type":351,"value":352,"toc":957},"minimark",[353,375,380,383,434,601,607,612,823,828,832,847,859,867,878,886,894,906,910,919,945],[354,355,356,357,361,362,365,366,370,371,374],"p",{},"Every ",[358,359,360],"code",{},"ChatClient"," bean in ",[358,363,364],{},"platform-api",", grouped by product area. Provider is ",[367,368,369],"strong",{},"Google GenAI"," via ",[358,372,373],{},"GoogleGenAiChatModel",".",[376,377,379],"h2",{"id":378},"inventory","Inventory",[354,381,382],{},"Use this table as a quick index:",[384,385,386,393,399,407,428],"ul",{},[387,388,389,392],"li",{},[367,390,391],{},"Area"," — product area or workflow group the agent belongs to",[387,394,395,398],{},[367,396,397],{},"Agent"," — the human-readable agent name",[387,400,401,404,405],{},[367,402,403],{},"Bean"," — the Spring bean name in ",[358,406,364],{},[387,408,409,412,413,416,417,420,421,420,424,427],{},[367,410,411],{},"Model tier"," — the configured ",[358,414,415],{},"IntelligenceLevel"," (",[358,418,419],{},"LOW",", ",[358,422,423],{},"MEDIUM",[358,425,426],{},"HIGH",")",[387,429,430,433],{},[367,431,432],{},"Entry point"," — the main service, tool, or workflow stage that calls the agent",[435,436,437,454],"table",{},[438,439,440],"thead",{},[441,442,443,446,448,450,452],"tr",{},[444,445,391],"th",{},[444,447,397],{},[444,449,403],{},[444,451,411],{},[444,453,432],{},[455,456,457,477,496,516,537,561,581],"tbody",{},[441,458,459,463,465,470,472],{},[460,461,462],"td",{},"ESPi Copilot",[460,464,462],{},[460,466,467],{},[358,468,469],{},"copilotClient",[460,471,423],{},[460,473,474],{},[358,475,476],{},"ChatService",[441,478,479,481,484,489,491],{},[460,480,462],{},[460,482,483],{},"Research sub-agent",[460,485,486],{},[358,487,488],{},"researchClient",[460,490,423],{},[460,492,493],{},[358,494,495],{},"ResearcherTool",[441,497,498,501,504,509,511],{},[460,499,500],{},"Findings",[460,502,503],{},"User Task Report",[460,505,506],{},[358,507,508],{},"userTaskAgentClient",[460,510,426],{},[460,512,513],{},[358,514,515],{},"UserTaskReportService",[441,517,518,521,524,529,532],{},[460,519,520],{},"Discovery",[460,522,523],{},"Discovery AI",[460,525,526],{},[358,527,528],{},"discoveryClient",[460,530,531],{},"LOW → MEDIUM",[460,533,534],{},[358,535,536],{},"DiscoveryAIService",[441,538,539,542,545,550,552],{},[460,540,541],{},"Notebook",[460,543,544],{},"Notebook Generator",[460,546,547],{},[358,548,549],{},"notebookAgentClient",[460,551,423],{},[460,553,554,557,558],{},[358,555,556],{},"NotebookAgentService"," \u002F ",[358,559,560],{},"NotebookTools",[441,562,563,566,569,574,576],{},[460,564,565],{},"Conversation",[460,567,568],{},"Conversation Namer",[460,570,571],{},[358,572,573],{},"conversationNamerClient",[460,575,419],{},[460,577,578],{},[358,579,580],{},"ConversationService",[441,582,583,586,589,594,596],{},[460,584,585],{},"Changelog",[460,587,588],{},"Revision Agent",[460,590,591],{},[358,592,593],{},"revisionAgent",[460,595,419],{},[460,597,598],{},[358,599,600],{},"RevisionChangelogHandler",[354,602,603,606],{},[367,604,605],{},"Total:"," 7 ChatClient beans.",[608,609,611],"h3",{"id":610},"deep-research-agents","Deep Research Agents",[435,613,614,628],{},[438,615,616],{},[441,617,618,620,622,624,626],{},[444,619,391],{},[444,621,397],{},[444,623,403],{},[444,625,411],{},[444,627,432],{},[455,629,630,650,669,688,707,727,747,766,784,804],{},[441,631,632,635,638,643,645],{},[460,633,634],{},"General",[460,636,637],{},"Query sense check",[460,639,640],{},[358,641,642],{},"senseCheckAgent",[460,644,419],{},[460,646,647],{},[358,648,649],{},"QuerySenseCheckStage",[441,651,652,654,657,662,664],{},[460,653,634],{},[460,655,656],{},"Briefing enhancement",[460,658,659],{},[358,660,661],{},"briefingEnhancementAgent",[460,663,423],{},[460,665,666],{},[358,667,668],{},"BriefingEnhancementStage",[441,670,671,673,676,681,683],{},[460,672,634],{},[460,674,675],{},"Research planner",[460,677,678],{},[358,679,680],{},"researchPlannerAgent",[460,682,419],{},[460,684,685],{},[358,686,687],{},"ResearchPlanningStage",[441,689,690,692,695,700,702],{},[460,691,634],{},[460,693,694],{},"General report generator",[460,696,697],{},[358,698,699],{},"generalReportGenerationAgent",[460,701,423],{},[460,703,704],{},[358,705,706],{},"ReportGenerateStage",[441,708,709,712,715,720,722],{},[460,710,711],{},"Product Comparison",[460,713,714],{},"Product comparison report",[460,716,717],{},[358,718,719],{},"productComparisonAgent",[460,721,423],{},[460,723,724],{},[358,725,726],{},"ReportGenerationStage",[441,728,729,732,735,740,742],{},[460,730,731],{},"Portfolio Overlap",[460,733,734],{},"Cluster generation",[460,736,737],{},[358,738,739],{},"clusterGenerationAgent",[460,741,423],{},[460,743,744],{},[358,745,746],{},"GenerateClustersStage",[441,748,749,751,754,759,761],{},[460,750,731],{},[460,752,753],{},"Cluster analyst",[460,755,756],{},[358,757,758],{},"clusterAnalystAgent",[460,760,423],{},[460,762,763],{},[358,764,765],{},"ClusterAnalystStage",[441,767,768,771,774,779,781],{},[460,769,770],{},"Shared",[460,772,773],{},"Title & summary",[460,775,776],{},[358,777,778],{},"titleAndSummaryGenerationAgent",[460,780,419],{},[460,782,783],{},"Portfolio + Strategic Consolidation stages",[441,785,786,789,792,797,799],{},[460,787,788],{},"Strategic Consolidation",[460,790,791],{},"Replacement candidates",[460,793,794],{},[358,795,796],{},"replacementCandidatesAgent",[460,798,423],{},[460,800,801],{},[358,802,803],{},"CreateReplacementCandidatesStage",[441,805,806,808,811,816,818],{},[460,807,788],{},[460,809,810],{},"Validate & enrichment",[460,812,813],{},[358,814,815],{},"validateAndEnrichmentAgent",[460,817,423],{},[460,819,820],{},[358,821,822],{},"ValidateAndEnrichClustersStage",[354,824,825,827],{},[367,826,605],{}," 10 ChatClient beans (17 overall).",[376,829,831],{"id":830},"product-areas","Product areas",[354,833,834,836,837,840,841,844,845,374],{},[367,835,462],{}," — Interactive assistant (search, commercial, capability frameworks, notebooks, research, HITL). Config: ",[358,838,839],{},"CopilotAgentConfig",". Entry: ",[358,842,843],{},"ConversationController"," → ",[358,846,476],{},[354,848,849,851,852,855,856,374],{},[367,850,500],{}," — Async interview \u002F user-task report generation. Config: ",[358,853,854],{},"UserTaskAgentConfig",". Output: ",[358,857,858],{},"UserTaskReport",[354,860,861,863,864,374],{},[367,862,520],{}," — Extract and match vendors\u002Fproducts from invoice JSON against CPS. Config: ",[358,865,866],{},"DiscoveryAgentConfig",[354,868,869,871,872,874,875,374],{},[367,870,541],{}," — Renders single-page HTML notebooks; usually invoked from Copilot via ",[358,873,560],{},". Config: ",[358,876,877],{},"NotebookAgentConfig",[354,879,880,882,883,374],{},[367,881,568],{}," — ≤5-word title from first user message. Config: ",[358,884,885],{},"NamerAgentConfig",[354,887,888,890,891,374],{},[367,889,585],{}," — Short sentence describing revision diffs. Config: ",[358,892,893],{},"RevisionAgentConfig",[354,895,896,899,900,844,903,374],{},[367,897,898],{},"Deep Research"," — Four workflow objectives (General, Product Comparison, Portfolio Overlap, Strategic Consolidation). Wired via ",[358,901,902],{},"AgentConfig",[358,904,905],{},"DeepResearchReportCreationService",[376,907,909],{"id":908},"keeping-this-page-updated","Keeping this page updated",[354,911,912,913,915,916,918],{},"When you add, rename, or remove a ",[358,914,360],{}," agent in ",[358,917,364],{},", update this page in a PR along with the changes to the codebase.",[920,921,922,931,936],"ol",{},[387,923,924,927,928,930],{},[367,925,926],{},"Inventory tables"," — Add or update the row in the main table or ",[367,929,611],{}," table (area, agent name, bean, model tier, entry point). Update the total counts.",[387,932,933,935],{},[367,934,831],{}," — Add a short summary if it is a new product area, or adjust the existing blurb if behaviour or config changed.",[387,937,938,941,942,944],{},[367,939,940],{},"Out of scope"," — Do not list non-",[358,943,360],{}," usage, frontend-only LLM calls, or the non-AI “Tool” domain entities.",[354,946,947,948,950,951,954,955,374],{},"To find agents in code, search for ",[358,949,360],{}," beans and ",[358,952,953],{},"*AgentConfig"," classes under ",[358,956,364],{},{"title":958,"searchDepth":959,"depth":959,"links":960},"",2,[961,965,966],{"id":378,"depth":959,"text":379,"children":962},[963],{"id":610,"depth":964,"text":611},3,{"id":830,"depth":959,"text":831},{"id":908,"depth":959,"text":909},"Inventory of Spring AI ChatClient agents in platform-api.","md",null,{},true,{"title":329,"description":967},"gZ1Kwjs6cgl89-IcOIwmS_VBrZvVL77fb91wHR6yqjU",[975,977],{"title":320,"path":321,"stem":322,"description":976,"children":-1},"A simple, step-by-step guide to approve, or reject draft vendors before they go live on the Vendor Portal.",{"title":333,"path":334,"stem":335,"description":978,"children":-1},"This document provides a high-level overview, a component breakdown, and detailed diagrams of how ESPi (ESPROFILER Intelligence), the AI co-pilot and agent orchestrator built into ESPROFILER, handles and processes user queries.",1789726607448]