@arcgis/ai-components 5.2.0-next.104 → 5.2.0-next.106

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/dist/agent-utils/LLMAgent.js +41 -40
  2. package/dist/agent-utils/middlewares/trace.js +5 -5
  3. package/dist/agents/runtime/skill/createSkillAgent.d.ts +31 -0
  4. package/dist/agents/runtime/skill/createSkillAgent.js +262 -0
  5. package/dist/agents/runtime/skill/loadAgentSkills.d.ts +16 -0
  6. package/dist/agents/runtime/skill/types.d.ts +28 -0
  7. package/dist/agents/runtime/skill/types.js +2 -0
  8. package/dist/agents/tools/filter/setFeatureEffect/adapter.js +20 -19
  9. package/dist/agents/tools/query/getStatistics/adapter.js +4 -3
  10. package/dist/agents/tools/query/getTopFeatures/adapter.js +4 -3
  11. package/dist/agents/tools/query/queryFeatures/adapter.js +4 -3
  12. package/dist/agents/tools/shared/resolveToolArtifact.d.ts +22 -0
  13. package/dist/agents/tools/shared/resolveToolArtifact.js +20 -0
  14. package/dist/agents/tools/shared/types.d.ts +22 -0
  15. package/dist/agents/tools/shared/types.js +6 -0
  16. package/dist/cdn/23C34FEU.js +2 -0
  17. package/dist/cdn/{NZSOJ726.js → 2AMUOR7X.js} +1 -1
  18. package/dist/cdn/2OHRNRNT.js +2 -0
  19. package/dist/cdn/2OUIRKTV.js +2 -0
  20. package/dist/cdn/2S6L3P4Q.js +2 -0
  21. package/dist/cdn/{C4FEETBZ.js → 2W7LK4HA.js} +1 -1
  22. package/dist/cdn/3IOP64NG.js +2 -0
  23. package/dist/cdn/3OH35VXS.js +2 -0
  24. package/dist/cdn/{5K5ZY267.js → 3SD47V7G.js} +1 -1
  25. package/dist/cdn/{7VAQUCBU.js → 3VCPN2KW.js} +1 -1
  26. package/dist/cdn/{LLUGJKAQ.js → 3XDT7MWI.js} +1 -1
  27. package/dist/cdn/{Y7XD7ZRD.js → 4ALF2CJY.js} +1 -1
  28. package/dist/cdn/{HAEFC2SJ.js → 5LMYUEK7.js} +1 -1
  29. package/dist/cdn/{655YIKL3.js → 6GODC6RU.js} +2 -2
  30. package/dist/cdn/{7VUSIGEM.js → 6RAWG2KQ.js} +1 -1
  31. package/dist/cdn/{GCVB5VG4.js → 6YZGKVYB.js} +1 -1
  32. package/dist/cdn/{VLLZ2FFU.js → 725MBCQF.js} +1 -1
  33. package/dist/cdn/74CVYM72.js +19 -0
  34. package/dist/cdn/{CP5BVGJU.js → 7EOS4SGJ.js} +1 -1
  35. package/dist/cdn/{5WYRJMBW.js → 7QIX4PZR.js} +1 -1
  36. package/dist/cdn/7UF3WRLO.js +72 -0
  37. package/dist/cdn/A7BKHIMA.js +2 -0
  38. package/dist/cdn/AFSBL4ZP.js +2 -0
  39. package/dist/cdn/{FG647IP6.js → AGQ5ADFU.js} +1 -1
  40. package/dist/cdn/{5ZFUGNRN.js → BQYF37UD.js} +1 -1
  41. package/dist/cdn/{4RDNI22D.js → BTTBKTFM.js} +4 -4
  42. package/dist/cdn/BVSK2GWP.js +2 -0
  43. package/dist/cdn/CFAC4FN3.js +2 -0
  44. package/dist/cdn/{HDACNIZF.js → D5EKX26R.js} +1 -1
  45. package/dist/cdn/EGN5BCHV.js +2 -0
  46. package/dist/cdn/{BXQ4I5HB.js → EJJFG5DE.js} +2 -2
  47. package/dist/cdn/{ZDV4K4WG.js → EOD5PNOL.js} +1 -1
  48. package/dist/cdn/{OE3GW5LE.js → ES6D4UD6.js} +1 -1
  49. package/dist/cdn/{K2R6XVK3.js → HB72YIII.js} +1 -1
  50. package/dist/cdn/{G2EGT3CF.js → HHBNLCJP.js} +1 -1
  51. package/dist/cdn/HLN5675C.js +2 -0
  52. package/dist/cdn/IFFOSSNB.js +2 -0
  53. package/dist/cdn/IO7DYFL2.js +2 -0
  54. package/dist/cdn/{IBZ2NEAO.js → IRSJXHRN.js} +1 -1
  55. package/dist/cdn/JD2TB7H4.js +2 -0
  56. package/dist/cdn/{ANRQWYU2.js → JKKU4K4C.js} +1 -1
  57. package/dist/cdn/{FUF3NAU7.js → JMNHFKGL.js} +1 -1
  58. package/dist/cdn/{22KHSDJI.js → JWZD3D5E.js} +1 -1
  59. package/dist/cdn/{HKOGIZDQ.js → KJLLN4P4.js} +18 -18
  60. package/dist/cdn/KZ73TZOB.js +2 -0
  61. package/dist/cdn/LEO3USHH.js +2 -0
  62. package/dist/cdn/LNIMGXB4.js +2 -0
  63. package/dist/cdn/MG2W2ZF3.js +2 -0
  64. package/dist/cdn/{NYJYRCGA.js → MSXMHRI7.js} +1 -1
  65. package/dist/cdn/MXAZE2VM.js +179 -0
  66. package/dist/cdn/{EWLXNGKH.js → OL7QBAGS.js} +15 -15
  67. package/dist/cdn/OMF6ITSG.js +2 -0
  68. package/dist/cdn/{Z5W4V7RC.js → OOGADOKQ.js} +1 -1
  69. package/dist/cdn/{KITIP6J2.js → OZ2CM3J2.js} +1 -1
  70. package/dist/cdn/{6YYPVU7H.js → P4GFYBBO.js} +1 -1
  71. package/dist/cdn/PK5KI2XF.js +2 -0
  72. package/dist/cdn/PWFUEBTT.js +2 -0
  73. package/dist/cdn/{HHUQXL3R.js → PYGX4HN7.js} +1 -1
  74. package/dist/cdn/RFVZ7KCG.js +66 -0
  75. package/dist/cdn/{YEZ3AMNX.js → RLB6TK6B.js} +1 -1
  76. package/dist/cdn/{WKTQVBFJ.js → RN6WMVZX.js} +1 -1
  77. package/dist/cdn/{WJXXOKGA.js → ROQGPAR5.js} +1 -1
  78. package/dist/cdn/RSJSRETN.js +2 -0
  79. package/dist/cdn/RSR66KB4.js +2 -0
  80. package/dist/cdn/{7SRLZQVC.js → RZIXMISL.js} +1 -1
  81. package/dist/cdn/{VOKXKU7M.js → S4LELUBK.js} +9 -9
  82. package/dist/cdn/{AI6DYOKR.js → S627D4K7.js} +1 -1
  83. package/dist/cdn/SL4Y7IRG.js +2 -0
  84. package/dist/cdn/STUBN3L5.js +2 -0
  85. package/dist/cdn/T2OYKP3V.js +2 -0
  86. package/dist/cdn/{C4JT4S5E.js → TBYDZN4H.js} +1 -1
  87. package/dist/cdn/{HHFNQR6Z.js → TEI6WXW7.js} +1 -1
  88. package/dist/cdn/{WGO5SER7.js → TFRWUAB6.js} +1 -1
  89. package/dist/cdn/U3ETGDT7.js +2 -0
  90. package/dist/cdn/{KWD2ECTM.js → UAG6GDUG.js} +1 -1
  91. package/dist/cdn/UHICISBZ.js +2 -0
  92. package/dist/cdn/{NNXISHCA.js → VMZZR7MY.js} +2 -2
  93. package/dist/cdn/WW4BEFDF.js +2 -0
  94. package/dist/cdn/XGCQS3N4.js +2 -0
  95. package/dist/cdn/{R2PQVY4O.js → XKH37FLY.js} +1 -1
  96. package/dist/cdn/XQ3NBBQ3.js +2 -0
  97. package/dist/cdn/{7BCQMK6D.js → XTCLJEID.js} +1 -1
  98. package/dist/cdn/{J6SZIQJA.js → Y7LGFSHO.js} +1 -1
  99. package/dist/cdn/ZFOG3KXV.js +2 -0
  100. package/dist/cdn/ZZZB3GES.js +14 -0
  101. package/dist/cdn/agent-utils/index.js +1 -1
  102. package/dist/cdn/agent-utils/middlewares/humanInTheLoop.js +1 -1
  103. package/dist/cdn/agent-utils/middlewares/middleware.js +1 -1
  104. package/dist/cdn/agent-utils/middlewares/trace.js +1 -1
  105. package/dist/cdn/index.js +1 -1
  106. package/dist/chunks/SKILL.js +5 -0
  107. package/dist/chunks/SKILL2.js +5 -0
  108. package/dist/chunks/SKILL3.js +22 -0
  109. package/dist/chunks/SKILL4.js +5 -0
  110. package/dist/chunks/adapter.js +137 -140
  111. package/dist/chunks/aiFactory.js +94 -0
  112. package/dist/chunks/arcgisKnowledgeGraph.js +14 -13
  113. package/dist/chunks/baseAgentState.js +2 -2
  114. package/dist/chunks/dataExplorationAgent.js +30 -0
  115. package/dist/chunks/generateLayerDescriptions.js +181 -268
  116. package/dist/chunks/helpAgent.js +37 -0
  117. package/dist/chunks/layerStylingGraph.js +91 -76
  118. package/dist/chunks/navigationAgent.js +40 -0
  119. package/dist/chunks/orchestrator.js +13 -12
  120. package/dist/chunks/requireAgentServices.js +11 -0
  121. package/dist/chunks/resolvePointGeometryFilter.js +11 -11
  122. package/dist/components/arcgis-assistant/customElement.d.ts +23 -3
  123. package/dist/components/arcgis-assistant-data-exploration-agent/customElement.js +17 -6
  124. package/dist/components/arcgis-assistant-help-agent/customElement.js +3 -1
  125. package/dist/components/arcgis-assistant-knowledge-agent/customElement.js +1 -0
  126. package/dist/components/arcgis-assistant-layer-styling-agent/customElement.js +1 -0
  127. package/dist/components/arcgis-assistant-navigation-agent/customElement.js +18 -7
  128. package/dist/docs/api.json +1 -1
  129. package/dist/docs/docs.json +1 -1
  130. package/dist/docs/vscode.html-custom-data.json +1 -1
  131. package/dist/docs/web-types.json +1 -1
  132. package/dist/orchestrator/models/types.d.ts +1 -0
  133. package/dist/orchestrator/providers/arcgis/aiFactory.d.ts +15 -0
  134. package/dist/orchestrator/registry/agentRegistry.d.ts +33 -0
  135. package/dist/orchestrator/types/types.d.ts +17 -0
  136. package/dist/utils/index.d.ts +13 -3
  137. package/dist/utils/index.js +706 -82
  138. package/package.json +10 -6
  139. package/dist/cdn/2EY3BQQX.js +0 -2
  140. package/dist/cdn/2NDBI2VA.js +0 -156
  141. package/dist/cdn/4OGR5QKS.js +0 -2
  142. package/dist/cdn/5FL5BTTX.js +0 -66
  143. package/dist/cdn/5X7EG7D2.js +0 -2
  144. package/dist/cdn/6FCU2KJP.js +0 -2
  145. package/dist/cdn/7BJ4JKLG.js +0 -2
  146. package/dist/cdn/7HS5KX3J.js +0 -2
  147. package/dist/cdn/7UUYJTKT.js +0 -2
  148. package/dist/cdn/7V6OSTFC.js +0 -2
  149. package/dist/cdn/7VYYQ7BT.js +0 -2
  150. package/dist/cdn/ACJTJLZN.js +0 -2
  151. package/dist/cdn/AKD5UOVX.js +0 -2
  152. package/dist/cdn/C7LGDNB3.js +0 -14
  153. package/dist/cdn/CGJINV7H.js +0 -2
  154. package/dist/cdn/CJMUJXPL.js +0 -2
  155. package/dist/cdn/D2SS763Z.js +0 -2
  156. package/dist/cdn/FJO4KNOZ.js +0 -2
  157. package/dist/cdn/G3SF6U2U.js +0 -2
  158. package/dist/cdn/G6CR7JVM.js +0 -22
  159. package/dist/cdn/GL7BPKBN.js +0 -2
  160. package/dist/cdn/JO5ETMPS.js +0 -2
  161. package/dist/cdn/PUHRBGKB.js +0 -2
  162. package/dist/cdn/Q57QWN5W.js +0 -2
  163. package/dist/cdn/QUKNPVAF.js +0 -2
  164. package/dist/cdn/RBE55SWR.js +0 -2
  165. package/dist/cdn/SWH6ZHD4.js +0 -18
  166. package/dist/cdn/SZ2QSSB3.js +0 -2
  167. package/dist/cdn/T4RIGOXB.js +0 -2
  168. package/dist/cdn/W4JQDITQ.js +0 -36
  169. package/dist/cdn/XX6GHMNR.js +0 -2
  170. package/dist/cdn/YLVJA4ZE.js +0 -2
  171. package/dist/cdn/ZOEMBHRF.js +0 -2
  172. package/dist/cdn/ZRVZMPFN.js +0 -2
  173. package/dist/chunks/dataExplorationGraph.js +0 -254
  174. package/dist/chunks/helpGraph.js +0 -133
  175. package/dist/chunks/navigationGraph.js +0 -290
  176. package/dist/chunks/toolCallResponse.js +0 -33
@@ -0,0 +1,94 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import { ChatOpenAI as E, OpenAIEmbeddings as U } from "@langchain/openai";
3
+ import p from "@arcgis/core/portal/Portal.js";
4
+ import h from "@arcgis/core/request.js";
5
+ import b from "@arcgis/core/identity/IdentityManager.js";
6
+ import { generateGuid as I } from "@arcgis/toolkit/string";
7
+ import q from "@arcgis/core/config.js";
8
+ const y = {
9
+ advanced: "gpt-5.6-sol",
10
+ default: "gpt-5.6-terra",
11
+ fast: "gpt-5.6-luna"
12
+ }, w = {
13
+ default: "text-embedding-ada-002"
14
+ }, f = /* @__PURE__ */ new Map();
15
+ let i = null;
16
+ const R = () => {
17
+ const t = p.getDefault().helperServices;
18
+ if (!t?.aiModels?.url)
19
+ throw new Error("AI Models Service URL is not defined in the portal's helper services.");
20
+ return t.aiModels.url;
21
+ }, S = async (e) => {
22
+ const t = R();
23
+ f.size === 0 && (i || (i = (async () => {
24
+ try {
25
+ (await h(`${t}/models`)).data.models.forEach((s) => f.set(s.name, s));
26
+ } catch (r) {
27
+ throw i = null, r;
28
+ }
29
+ })()), await i);
30
+ const o = f.get(e);
31
+ if (!o)
32
+ throw new Error(`Model '${e}' is not available in the discovery service.`);
33
+ return o.endpoint;
34
+ }, C = async (e = "default") => await S(y[e]), A = async (e = "default") => await S(w[e]), k = (e) => typeof e == "string" && e.length > 0 ? e : void 0, D = () => I(), F = (e) => typeof e != "string" || e.trim().length === 0 ? "MapsSDK" : `MapsSDK - ${e.trim()}`, K = (e) => {
35
+ const t = e?.configurable;
36
+ return {
37
+ conversationId: k(t?.thread_id),
38
+ abortSignal: e?.signal,
39
+ requestId: D(),
40
+ requestSource: F(q.applicationName)
41
+ };
42
+ }, L = (e) => {
43
+ if (e == null || typeof e == "string" || e instanceof FormData || e instanceof HTMLFormElement)
44
+ return e;
45
+ if (e instanceof URLSearchParams)
46
+ return e.toString();
47
+ throw new TypeError(`Unsupported request body type: ${Object.prototype.toString.call(e)}`);
48
+ }, v = async ({ config: e }) => {
49
+ const t = p.getDefault(), o = await b.getCredential(`${t.url}/sharing`);
50
+ return async (r, n) => {
51
+ const { conversationId: s, abortSignal: c, requestId: g, requestSource: l } = K(e), a = new Headers(n?.headers);
52
+ for (const m of [...a.keys()]) {
53
+ const u = m.toLowerCase();
54
+ (u === "authorization" || u === "api-key" || u.startsWith("x-stainless-")) && a.delete(m);
55
+ }
56
+ const d = o?.token;
57
+ d && d.length > 0 && a.set("X-Esri-Authorization", `Bearer ${d}`), t.isPortal || (l && l.length > 0 && a.set("X-Esri-Request-Source", l), s && s.length > 0 && a.set("X-Esri-Conversation-Id", s), g.length > 0 && a.set("X-Esri-Request-Id", g));
58
+ const M = c && n?.signal ? AbortSignal.any([c, n.signal]) : n?.signal ?? c;
59
+ return (await h(r instanceof Request ? r.url : r.toString(), {
60
+ body: L(n?.body),
61
+ headers: Object.fromEntries(a),
62
+ responseType: "native",
63
+ signal: M
64
+ })).data;
65
+ };
66
+ }, B = async (e = {}) => {
67
+ const { modelTier: t = "default", config: o } = e, r = y[t], n = await C(t);
68
+ return new E({
69
+ modelName: r,
70
+ apiKey: "dummy-key",
71
+ configuration: {
72
+ baseURL: n,
73
+ fetch: await v({ config: o })
74
+ }
75
+ });
76
+ }, j = async (e = {}) => {
77
+ const { tier: t = "default", config: o } = e, r = w[t], n = await A(t);
78
+ return new U({
79
+ modelName: r,
80
+ apiKey: "dummy-key",
81
+ configuration: {
82
+ baseURL: n,
83
+ fetch: await v({ config: o })
84
+ },
85
+ batchSize: 2048,
86
+ maxConcurrency: 10
87
+ });
88
+ };
89
+ export {
90
+ w as E,
91
+ j as a,
92
+ B as c,
93
+ A as g
94
+ };
@@ -1,11 +1,11 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
2
  import { StateGraph as x, START as k, END as c, Command as b } from "@langchain/langgraph/web";
3
- import { a as K, c as _, b as T, d as A, e as S, s as M, q as v, g as u, f as q, t as g, r as C, h as E, G, i as m } from "./adapter.js";
3
+ import { a as K, c as _, g as T, b as A, d as S, s as M, q as v, e as u, f as q, t as g, h as C, G as E, i as m } from "./adapter.js";
4
4
  import "@arcgis/core/identity/IdentityManager.js";
5
5
  import "@arcgis/core/portal/Portal.js";
6
6
  import "@arcgis/core/request.js";
7
7
  import "@arcgis/toolkit/string";
8
- import { h as N, e as R } from "./generateLayerDescriptions.js";
8
+ import { i as G, a as N } from "./generateLayerDescriptions.js";
9
9
  import { AIMessage as y } from "@langchain/core/messages";
10
10
  import "@langchain/core/callbacks/dispatch/web";
11
11
  import "@langchain/core/callbacks/base";
@@ -13,9 +13,10 @@ import "@langchain/openai";
13
13
  import "@arcgis/core/config.js";
14
14
  import "@arcgis/core/core/reactiveUtils.js";
15
15
  import "@arcgis/core/layers/FeatureLayer.js";
16
- import { ToolNode as L } from "@langchain/langgraph/prebuilt";
17
- import { s as p, a as z } from "./index.js";
16
+ import { ToolNode as R } from "@langchain/langgraph/prebuilt";
17
+ import { s as p, a as L } from "./index.js";
18
18
  import "@langchain/core/prompts";
19
+ import { r as z } from "./requireAgentServices.js";
19
20
  const w = [
20
21
  K,
21
22
  _,
@@ -31,13 +32,13 @@ async function D(e, t) {
31
32
  userRequest: e.agentExecutionContext.userRequest,
32
33
  priorSteps: e.agentExecutionContext.priorSteps,
33
34
  contextType: s
34
- }, r = await N({
35
+ }, r = await G({
35
36
  promptText: o,
36
37
  messages: e.arcgisKnowledgeMessages,
37
38
  inputVariables: n,
38
39
  tools: w,
39
40
  config: t
40
- }), l = (r.tool_calls?.length ?? 0) > 0, a = typeof r.text == "string" ? r.text.trim() : "", i = a.length > 0, d = r.text;
41
+ }), l = (r.tool_calls?.length ?? 0) > 0, a = typeof r.text == "string" ? r.text.trim() : "", i = a.length > 0, d = r.content.toString();
41
42
  return !l && (s === "map" || s === "knowledgeGraph") ? {
42
43
  ...e,
43
44
  arcgisKnowledgeMessages: [...e.arcgisKnowledgeMessages, r],
@@ -70,7 +71,7 @@ function $(e) {
70
71
  };
71
72
  }
72
73
  async function I(e, t) {
73
- const o = new L(w, { handleToolErrors: !1 });
74
+ const o = new R(w, { handleToolErrors: !1 });
74
75
  try {
75
76
  const s = await o.invoke(
76
77
  {
@@ -104,7 +105,7 @@ async function I(e, t) {
104
105
  t
105
106
  );
106
107
  const r = n.filter((a) => typeof a != "string").map((a) => `- Called Tool: ${a.toolName}, Status: ${a.status}`), l = n[0];
107
- return l && F(l) && await z($(l), t), {
108
+ return l && F(l) && await L($(l), t), {
108
109
  ...e,
109
110
  outputMessage: r.join(`
110
111
  `),
@@ -129,19 +130,19 @@ async function I(e, t) {
129
130
  }
130
131
  const V = (e, t) => (
131
132
  //agent services (ex: embeddingsWorker) would go in the array below, if required.
132
- C([], "ArcgisKnowledge Agent")(e, t)
133
+ z([], "ArcgisKnowledge Agent")(e, t)
133
134
  );
134
135
  async function O(e, t) {
135
136
  const s = (e.arcgisKnowledgeToolResult ?? []).map((d) => ({
136
137
  ...d,
137
138
  details: void 0
138
139
  // Remove details to avoid overwhelming the LLM with too much info
139
- })), { knowledgeGraph: n } = await E(t), r = G.getDataModelTypesSummary(n.dataModel), l = {
140
+ })), { knowledgeGraph: n } = await C(t), r = E.getDataModelTypesSummary(n.dataModel), l = {
140
141
  assignedTask: e.agentExecutionContext.assignedTask,
141
142
  userRequest: e.agentExecutionContext.userRequest,
142
143
  toolResult: s,
143
144
  dataModelSummary: r
144
- }, a = await R({
145
+ }, a = await N({
145
146
  promptText: await u("arcgis_knowledge_summarize_result_prompt"),
146
147
  modelTier: "default",
147
148
  inputVariables: l,
@@ -218,7 +219,7 @@ _example: "Discover and add all the relationships originating at 'Entity E' to t
218
219
  _example: "Show me all entities with a name similar to 'Smith' and add them to the link chart"_
219
220
  _example: "Find reports in my graph that have a title similar to 'Quarterly Earnings'"_
220
221
  _example: "Find John Smith and all people he has made phone calls to in the last year"_
221
- _example: "What is the average age of all people who work for Esri?"_`, de = {
222
+ _example: "What is the average age of all people who work for Esri?"_`, ce = {
222
223
  id: "arcgisKnowledge",
223
224
  name: "ArcgisKnowledge Agent",
224
225
  description: J,
@@ -226,5 +227,5 @@ _example: "What is the average age of all people who work for Esri?"_`, de = {
226
227
  workspace: m
227
228
  };
228
229
  export {
229
- de as A
230
+ ce as A
230
231
  };
@@ -50,9 +50,9 @@ ${s}`;
50
50
  }), g = () => i();
51
51
  export {
52
52
  i as a,
53
- g as b,
53
+ o as b,
54
54
  d as c,
55
- o as d,
55
+ g as d,
56
56
  c as m,
57
57
  a as r
58
58
  };
@@ -0,0 +1,30 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import { createSkillAgent as e } from "../agents/runtime/skill/createSkillAgent.js";
3
+ const t = [
4
+ async () => (await import("./SKILL.js")).default,
5
+ async () => (await import("./SKILL2.js")).default
6
+ ], a = {
7
+ clearFilters: async () => (await import("../agents/tools/filter/clearFilters/adapter.js")).clearFiltersTool,
8
+ findRelevantFields: async () => (await import("../agents/tools/search/findRelevantFields/adapter.js")).findRelevantFieldsTool,
9
+ findRelevantLayers: async () => (await import("../agents/tools/search/findRelevantLayers/adapter.js")).findRelevantLayersTool,
10
+ getAttribute: async () => (await import("../agents/tools/query/getAttribute/adapter.js")).getAttributeTool,
11
+ getStatistics: async () => (await import("../agents/tools/query/getStatistics/adapter.js")).getStatisticsTool,
12
+ getTopFeatures: async () => (await import("../agents/tools/query/getTopFeatures/adapter.js")).getTopFeaturesTool,
13
+ queryFeatures: async () => (await import("../agents/tools/query/queryFeatures/adapter.js")).queryFeaturesTool,
14
+ resetMap: async () => (await import("../agents/tools/filter/resetMap/adapter.js")).resetMapTool,
15
+ setFeatureEffect: async () => (await import("../agents/tools/filter/setFeatureEffect/adapter.js")).setFeatureEffectTool
16
+ }, i = e({
17
+ id: "dataExploration",
18
+ name: "Data Exploration Agent",
19
+ description: "Explores feature-layer data and applies data-driven map filters using on-demand query and filter skills.",
20
+ skillLoaders: t,
21
+ toolLoaders: a,
22
+ modelTier: "default",
23
+ systemPrompt: "You are an ArcGIS data exploration agent.",
24
+ instructions: "A request can require both query and filter skills. Treat show, display, highlight, map, filter, reveal, emphasize, include, or exclude as visual map intent when the request targets matching features. For visual map intent, do not stop after query. First use query to identify/count the matching features, then load the filter skill and call setFeatureEffect with the same layer, where clause, geometry filter, extent setting, or object IDs. Use only tool results to describe data or map changes.",
25
+ fallbackMessage: "Data exploration request completed.",
26
+ failureMessage: "I couldn't complete the data exploration request."
27
+ });
28
+ export {
29
+ i as D
30
+ };