@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.
- package/dist/agent-utils/LLMAgent.js +41 -40
- package/dist/agent-utils/middlewares/trace.js +5 -5
- package/dist/agents/runtime/skill/createSkillAgent.d.ts +31 -0
- package/dist/agents/runtime/skill/createSkillAgent.js +262 -0
- package/dist/agents/runtime/skill/loadAgentSkills.d.ts +16 -0
- package/dist/agents/runtime/skill/types.d.ts +28 -0
- package/dist/agents/runtime/skill/types.js +2 -0
- package/dist/agents/tools/filter/setFeatureEffect/adapter.js +20 -19
- package/dist/agents/tools/query/getStatistics/adapter.js +4 -3
- package/dist/agents/tools/query/getTopFeatures/adapter.js +4 -3
- package/dist/agents/tools/query/queryFeatures/adapter.js +4 -3
- package/dist/agents/tools/shared/resolveToolArtifact.d.ts +22 -0
- package/dist/agents/tools/shared/resolveToolArtifact.js +20 -0
- package/dist/agents/tools/shared/types.d.ts +22 -0
- package/dist/agents/tools/shared/types.js +6 -0
- package/dist/cdn/23C34FEU.js +2 -0
- package/dist/cdn/{NZSOJ726.js → 2AMUOR7X.js} +1 -1
- package/dist/cdn/2OHRNRNT.js +2 -0
- package/dist/cdn/2OUIRKTV.js +2 -0
- package/dist/cdn/2S6L3P4Q.js +2 -0
- package/dist/cdn/{C4FEETBZ.js → 2W7LK4HA.js} +1 -1
- package/dist/cdn/3IOP64NG.js +2 -0
- package/dist/cdn/3OH35VXS.js +2 -0
- package/dist/cdn/{5K5ZY267.js → 3SD47V7G.js} +1 -1
- package/dist/cdn/{7VAQUCBU.js → 3VCPN2KW.js} +1 -1
- package/dist/cdn/{LLUGJKAQ.js → 3XDT7MWI.js} +1 -1
- package/dist/cdn/{Y7XD7ZRD.js → 4ALF2CJY.js} +1 -1
- package/dist/cdn/{HAEFC2SJ.js → 5LMYUEK7.js} +1 -1
- package/dist/cdn/{655YIKL3.js → 6GODC6RU.js} +2 -2
- package/dist/cdn/{7VUSIGEM.js → 6RAWG2KQ.js} +1 -1
- package/dist/cdn/{GCVB5VG4.js → 6YZGKVYB.js} +1 -1
- package/dist/cdn/{VLLZ2FFU.js → 725MBCQF.js} +1 -1
- package/dist/cdn/74CVYM72.js +19 -0
- package/dist/cdn/{CP5BVGJU.js → 7EOS4SGJ.js} +1 -1
- package/dist/cdn/{5WYRJMBW.js → 7QIX4PZR.js} +1 -1
- package/dist/cdn/7UF3WRLO.js +72 -0
- package/dist/cdn/A7BKHIMA.js +2 -0
- package/dist/cdn/AFSBL4ZP.js +2 -0
- package/dist/cdn/{FG647IP6.js → AGQ5ADFU.js} +1 -1
- package/dist/cdn/{5ZFUGNRN.js → BQYF37UD.js} +1 -1
- package/dist/cdn/{4RDNI22D.js → BTTBKTFM.js} +4 -4
- package/dist/cdn/BVSK2GWP.js +2 -0
- package/dist/cdn/CFAC4FN3.js +2 -0
- package/dist/cdn/{HDACNIZF.js → D5EKX26R.js} +1 -1
- package/dist/cdn/EGN5BCHV.js +2 -0
- package/dist/cdn/{BXQ4I5HB.js → EJJFG5DE.js} +2 -2
- package/dist/cdn/{ZDV4K4WG.js → EOD5PNOL.js} +1 -1
- package/dist/cdn/{OE3GW5LE.js → ES6D4UD6.js} +1 -1
- package/dist/cdn/{K2R6XVK3.js → HB72YIII.js} +1 -1
- package/dist/cdn/{G2EGT3CF.js → HHBNLCJP.js} +1 -1
- package/dist/cdn/HLN5675C.js +2 -0
- package/dist/cdn/IFFOSSNB.js +2 -0
- package/dist/cdn/IO7DYFL2.js +2 -0
- package/dist/cdn/{IBZ2NEAO.js → IRSJXHRN.js} +1 -1
- package/dist/cdn/JD2TB7H4.js +2 -0
- package/dist/cdn/{ANRQWYU2.js → JKKU4K4C.js} +1 -1
- package/dist/cdn/{FUF3NAU7.js → JMNHFKGL.js} +1 -1
- package/dist/cdn/{22KHSDJI.js → JWZD3D5E.js} +1 -1
- package/dist/cdn/{HKOGIZDQ.js → KJLLN4P4.js} +18 -18
- package/dist/cdn/KZ73TZOB.js +2 -0
- package/dist/cdn/LEO3USHH.js +2 -0
- package/dist/cdn/LNIMGXB4.js +2 -0
- package/dist/cdn/MG2W2ZF3.js +2 -0
- package/dist/cdn/{NYJYRCGA.js → MSXMHRI7.js} +1 -1
- package/dist/cdn/MXAZE2VM.js +179 -0
- package/dist/cdn/{EWLXNGKH.js → OL7QBAGS.js} +15 -15
- package/dist/cdn/OMF6ITSG.js +2 -0
- package/dist/cdn/{Z5W4V7RC.js → OOGADOKQ.js} +1 -1
- package/dist/cdn/{KITIP6J2.js → OZ2CM3J2.js} +1 -1
- package/dist/cdn/{6YYPVU7H.js → P4GFYBBO.js} +1 -1
- package/dist/cdn/PK5KI2XF.js +2 -0
- package/dist/cdn/PWFUEBTT.js +2 -0
- package/dist/cdn/{HHUQXL3R.js → PYGX4HN7.js} +1 -1
- package/dist/cdn/RFVZ7KCG.js +66 -0
- package/dist/cdn/{YEZ3AMNX.js → RLB6TK6B.js} +1 -1
- package/dist/cdn/{WKTQVBFJ.js → RN6WMVZX.js} +1 -1
- package/dist/cdn/{WJXXOKGA.js → ROQGPAR5.js} +1 -1
- package/dist/cdn/RSJSRETN.js +2 -0
- package/dist/cdn/RSR66KB4.js +2 -0
- package/dist/cdn/{7SRLZQVC.js → RZIXMISL.js} +1 -1
- package/dist/cdn/{VOKXKU7M.js → S4LELUBK.js} +9 -9
- package/dist/cdn/{AI6DYOKR.js → S627D4K7.js} +1 -1
- package/dist/cdn/SL4Y7IRG.js +2 -0
- package/dist/cdn/STUBN3L5.js +2 -0
- package/dist/cdn/T2OYKP3V.js +2 -0
- package/dist/cdn/{C4JT4S5E.js → TBYDZN4H.js} +1 -1
- package/dist/cdn/{HHFNQR6Z.js → TEI6WXW7.js} +1 -1
- package/dist/cdn/{WGO5SER7.js → TFRWUAB6.js} +1 -1
- package/dist/cdn/U3ETGDT7.js +2 -0
- package/dist/cdn/{KWD2ECTM.js → UAG6GDUG.js} +1 -1
- package/dist/cdn/UHICISBZ.js +2 -0
- package/dist/cdn/{NNXISHCA.js → VMZZR7MY.js} +2 -2
- package/dist/cdn/WW4BEFDF.js +2 -0
- package/dist/cdn/XGCQS3N4.js +2 -0
- package/dist/cdn/{R2PQVY4O.js → XKH37FLY.js} +1 -1
- package/dist/cdn/XQ3NBBQ3.js +2 -0
- package/dist/cdn/{7BCQMK6D.js → XTCLJEID.js} +1 -1
- package/dist/cdn/{J6SZIQJA.js → Y7LGFSHO.js} +1 -1
- package/dist/cdn/ZFOG3KXV.js +2 -0
- package/dist/cdn/ZZZB3GES.js +14 -0
- package/dist/cdn/agent-utils/index.js +1 -1
- package/dist/cdn/agent-utils/middlewares/humanInTheLoop.js +1 -1
- package/dist/cdn/agent-utils/middlewares/middleware.js +1 -1
- package/dist/cdn/agent-utils/middlewares/trace.js +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/SKILL.js +5 -0
- package/dist/chunks/SKILL2.js +5 -0
- package/dist/chunks/SKILL3.js +22 -0
- package/dist/chunks/SKILL4.js +5 -0
- package/dist/chunks/adapter.js +137 -140
- package/dist/chunks/aiFactory.js +94 -0
- package/dist/chunks/arcgisKnowledgeGraph.js +14 -13
- package/dist/chunks/baseAgentState.js +2 -2
- package/dist/chunks/dataExplorationAgent.js +30 -0
- package/dist/chunks/generateLayerDescriptions.js +181 -268
- package/dist/chunks/helpAgent.js +37 -0
- package/dist/chunks/layerStylingGraph.js +91 -76
- package/dist/chunks/navigationAgent.js +40 -0
- package/dist/chunks/orchestrator.js +13 -12
- package/dist/chunks/requireAgentServices.js +11 -0
- package/dist/chunks/resolvePointGeometryFilter.js +11 -11
- package/dist/components/arcgis-assistant/customElement.d.ts +23 -3
- package/dist/components/arcgis-assistant-data-exploration-agent/customElement.js +17 -6
- package/dist/components/arcgis-assistant-help-agent/customElement.js +3 -1
- package/dist/components/arcgis-assistant-knowledge-agent/customElement.js +1 -0
- package/dist/components/arcgis-assistant-layer-styling-agent/customElement.js +1 -0
- package/dist/components/arcgis-assistant-navigation-agent/customElement.js +18 -7
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/orchestrator/models/types.d.ts +1 -0
- package/dist/orchestrator/providers/arcgis/aiFactory.d.ts +15 -0
- package/dist/orchestrator/registry/agentRegistry.d.ts +33 -0
- package/dist/orchestrator/types/types.d.ts +17 -0
- package/dist/utils/index.d.ts +13 -3
- package/dist/utils/index.js +706 -82
- package/package.json +10 -6
- package/dist/cdn/2EY3BQQX.js +0 -2
- package/dist/cdn/2NDBI2VA.js +0 -156
- package/dist/cdn/4OGR5QKS.js +0 -2
- package/dist/cdn/5FL5BTTX.js +0 -66
- package/dist/cdn/5X7EG7D2.js +0 -2
- package/dist/cdn/6FCU2KJP.js +0 -2
- package/dist/cdn/7BJ4JKLG.js +0 -2
- package/dist/cdn/7HS5KX3J.js +0 -2
- package/dist/cdn/7UUYJTKT.js +0 -2
- package/dist/cdn/7V6OSTFC.js +0 -2
- package/dist/cdn/7VYYQ7BT.js +0 -2
- package/dist/cdn/ACJTJLZN.js +0 -2
- package/dist/cdn/AKD5UOVX.js +0 -2
- package/dist/cdn/C7LGDNB3.js +0 -14
- package/dist/cdn/CGJINV7H.js +0 -2
- package/dist/cdn/CJMUJXPL.js +0 -2
- package/dist/cdn/D2SS763Z.js +0 -2
- package/dist/cdn/FJO4KNOZ.js +0 -2
- package/dist/cdn/G3SF6U2U.js +0 -2
- package/dist/cdn/G6CR7JVM.js +0 -22
- package/dist/cdn/GL7BPKBN.js +0 -2
- package/dist/cdn/JO5ETMPS.js +0 -2
- package/dist/cdn/PUHRBGKB.js +0 -2
- package/dist/cdn/Q57QWN5W.js +0 -2
- package/dist/cdn/QUKNPVAF.js +0 -2
- package/dist/cdn/RBE55SWR.js +0 -2
- package/dist/cdn/SWH6ZHD4.js +0 -18
- package/dist/cdn/SZ2QSSB3.js +0 -2
- package/dist/cdn/T4RIGOXB.js +0 -2
- package/dist/cdn/W4JQDITQ.js +0 -36
- package/dist/cdn/XX6GHMNR.js +0 -2
- package/dist/cdn/YLVJA4ZE.js +0 -2
- package/dist/cdn/ZOEMBHRF.js +0 -2
- package/dist/cdn/ZRVZMPFN.js +0 -2
- package/dist/chunks/dataExplorationGraph.js +0 -254
- package/dist/chunks/helpGraph.js +0 -133
- package/dist/chunks/navigationGraph.js +0 -290
- 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 _,
|
|
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 {
|
|
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
|
|
17
|
-
import { s as p, a as
|
|
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
|
|
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.
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
|
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?"_`,
|
|
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
|
-
|
|
230
|
+
ce as A
|
|
230
231
|
};
|
|
@@ -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
|
+
};
|