@nxisai/agent-harness 0.8.0 → 0.10.0
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/a2ui/cards.d.ts +3 -0
- package/dist/a2ui/cards.d.ts.map +1 -1
- package/dist/a2ui/cards.js +11 -2
- package/dist/a2ui/cards.js.map +1 -1
- package/dist/harness/cta.d.ts +27 -0
- package/dist/harness/cta.d.ts.map +1 -0
- package/dist/harness/cta.js +43 -0
- package/dist/harness/cta.js.map +1 -0
- package/dist/harness/harness.d.ts +17 -0
- package/dist/harness/harness.d.ts.map +1 -1
- package/dist/harness/harness.js +40 -0
- package/dist/harness/harness.js.map +1 -1
- package/dist/harness/router/coordinator.d.ts +6 -0
- package/dist/harness/router/coordinator.d.ts.map +1 -1
- package/dist/harness/router/coordinator.js +14 -0
- package/dist/harness/router/coordinator.js.map +1 -1
- package/dist/harness/tools/action-tools.d.ts +28 -2
- package/dist/harness/tools/action-tools.d.ts.map +1 -1
- package/dist/harness/tools/action-tools.js +48 -2
- package/dist/harness/tools/action-tools.js.map +1 -1
- package/dist/harness/tools/bridge.d.ts.map +1 -1
- package/dist/harness/tools/bridge.js +2 -1
- package/dist/harness/tools/bridge.js.map +1 -1
- package/dist/harness/tools/inbound.d.ts +92 -0
- package/dist/harness/tools/inbound.d.ts.map +1 -0
- package/dist/harness/tools/inbound.js +170 -0
- package/dist/harness/tools/inbound.js.map +1 -0
- package/dist/harness/tools/report.d.ts +55 -0
- package/dist/harness/tools/report.d.ts.map +1 -0
- package/dist/harness/tools/report.js +75 -0
- package/dist/harness/tools/report.js.map +1 -0
- package/dist/harness/tools/source.d.ts.map +1 -1
- package/dist/harness/tools/source.js +17 -1
- package/dist/harness/tools/source.js.map +1 -1
- package/dist/harness/tools/webmcp.d.ts.map +1 -1
- package/dist/harness/tools/webmcp.js +5 -1
- package/dist/harness/tools/webmcp.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/ui/agent-fullscreen.d.ts.map +1 -1
- package/dist/ui/agent-fullscreen.js +78 -12
- package/dist/ui/agent-fullscreen.js.map +1 -1
- package/package.json +1 -1
- package/src/a2ui/cards.ts +14 -2
- package/src/harness/cta.ts +54 -0
- package/src/harness/harness.ts +42 -0
- package/src/harness/router/coordinator.ts +14 -0
- package/src/harness/tools/action-tools.ts +51 -2
- package/src/harness/tools/bridge.ts +2 -1
- package/src/harness/tools/inbound.ts +204 -0
- package/src/harness/tools/report.ts +119 -0
- package/src/harness/tools/source.ts +18 -1
- package/src/harness/tools/webmcp.ts +5 -1
- package/src/index.ts +14 -0
- package/src/ui/agent-fullscreen.ts +72 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../src/harness/tools/source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAsB,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../src/harness/tools/source.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,8 @@ import { ensureModelContext } from './local-context.js';
|
|
|
17
17
|
import { connectMcp } from './client.js';
|
|
18
18
|
import { discoverMcpServer } from './discovery.js';
|
|
19
19
|
import { findEmbeddedAction, loadSiteActions } from './site-actions.js';
|
|
20
|
-
import { registerSiteActionTools } from './action-tools.js';
|
|
20
|
+
import { registerSiteActionTools, reportFor } from './action-tools.js';
|
|
21
|
+
import { setSiteActionReporter, takeReportToken, TRACK_TOOL } from './report.js';
|
|
21
22
|
import { loadSitePages, mergePages, pagesFromActions } from './site-pages.js';
|
|
22
23
|
import { registerOpenPageTool, OPEN_PAGE_TOOL } from './open-page.js';
|
|
23
24
|
import { applyTrails, buildNav, loadSiteTrails, registerPageLinksTool, PAGE_LINKS_TOOL, } from './site-nav.js';
|
|
@@ -139,9 +140,24 @@ async function connectRegistry(mc, apiKey, opts) {
|
|
|
139
140
|
warning = `site actions unavailable — this page's own actions still work: ${errorText(err)}`;
|
|
140
141
|
console.warn(`[nxis-mcp] ${warning}`);
|
|
141
142
|
}
|
|
143
|
+
reportTo(client, siteActions);
|
|
142
144
|
const site = await connectPages(mc, client, info, siteActions, siteOpts, opts.openPage);
|
|
143
145
|
return { modelContext: mc, remoteTools, siteActions, siteTools, sitePages: site.pages, siteNav: site.nav, warning };
|
|
144
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Count the site's forms the agent sends in its Agent Analytics, through its
|
|
149
|
+
* own server.
|
|
150
|
+
*/
|
|
151
|
+
function reportTo(client, actions) {
|
|
152
|
+
setSiteActionReporter((run) => {
|
|
153
|
+
const report = reportFor(actions, run);
|
|
154
|
+
if (!report)
|
|
155
|
+
return undefined;
|
|
156
|
+
// A visitor handed here from the NxisAI app brings the site's token for the action: the report counts as verified.
|
|
157
|
+
const token = takeReportToken(report.action_id);
|
|
158
|
+
return client.callTool({ name: TRACK_TOOL, arguments: { ...report, ...(token ? { report_token: token } : {}) } });
|
|
159
|
+
});
|
|
160
|
+
}
|
|
145
161
|
/**
|
|
146
162
|
* The site's pages, and the tool that opens them.
|
|
147
163
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../../src/harness/tools/source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,mBAAmB,EAAsB,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAA2B,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../../src/harness/tools/source.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webmcp.d.ts","sourceRoot":"","sources":["../../../src/harness/tools/webmcp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webmcp.d.ts","sourceRoot":"","sources":["../../../src/harness/tools/webmcp.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,gBAAgB,CAAC;AAExB;;;;;GAKG;AACH,qBAAa,WAAW;IACtB;;;;OAIG;IACH,YAAY,IAAI,YAAY,GAAG,IAAI;IAInC;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IA2BrF;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAU1E;;;;;;;;;;;OAWG;IACG,QAAQ,CACZ,OAAO,EAAE,oBAAoB,GAAG,IAAI,EACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,wBAAwB,CAAC;CAKrC;AAcD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,YAAY,EAChB,OAAO,EAAE,oBAAoB,GAAG,IAAI,EACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,wBAAwB,CAAC,CAwBnC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,CAejE"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
9
|
import { TOOLS_TIMEOUT_MS } from '../../engine.js';
|
|
10
|
+
import { reportSubmitted } from './report.js';
|
|
10
11
|
/**
|
|
11
12
|
* The default tool source, backed by the page's `document.modelContext`.
|
|
12
13
|
*
|
|
@@ -144,7 +145,10 @@ export async function executeRegistered(mc, toolObj, name, args) {
|
|
|
144
145
|
let refused;
|
|
145
146
|
for (const attempt of attempts) {
|
|
146
147
|
try {
|
|
147
|
-
|
|
148
|
+
const res = asResponse(await attempt());
|
|
149
|
+
// Every page form runs through here, whichever way it was reached: the one place to count it.
|
|
150
|
+
reportSubmitted(toolObj, name, res);
|
|
151
|
+
return res;
|
|
148
152
|
}
|
|
149
153
|
catch (err) {
|
|
150
154
|
if (!REFUSED_SHAPE.test(String(err?.message || err)))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webmcp.js","sourceRoot":"","sources":["../../../src/harness/tools/webmcp.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"webmcp.js","sourceRoot":"","sources":["../../../src/harness/tools/webmcp.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -30,6 +30,8 @@ export type { ToolPolicy, Decision } from './harness/policy.js';
|
|
|
30
30
|
export { resolveSlots, summarySlots } from './harness/slots.js';
|
|
31
31
|
export type { Slot, Resolution, ResolveSources } from './harness/slots.js';
|
|
32
32
|
export { buildPlan } from './harness/plan.js';
|
|
33
|
+
export { actionCta } from './harness/cta.js';
|
|
34
|
+
export type { CardAction } from './harness/cta.js';
|
|
33
35
|
export { AgentCoordinator } from './harness/router/coordinator.js';
|
|
34
36
|
export type { CoordinatorOptions, RoutedTurn, RouteSource } from './harness/router/coordinator.js';
|
|
35
37
|
export { matchRoute } from './harness/router/rules.js';
|
|
@@ -51,10 +53,13 @@ export { beginJourney, currentJourney, journeySteps, onJourneyChange, recordStep
|
|
|
51
53
|
export type { AgentStep, AgentStepId, AgentStepStatus } from './harness/steps.js';
|
|
52
54
|
export { resumePendingAction } from './harness/tools/resume.js';
|
|
53
55
|
export type { ResumeOutcome, ResumeOptions } from './harness/tools/resume.js';
|
|
56
|
+
export { HANDOFF_PARAM, INTENT_PARAM, readInboundHandoff, takeInboundHandoff, handoffUrl, findHandoffForm, } from './harness/tools/inbound.js';
|
|
57
|
+
export type { InboundHandoff, ArrivalOutcome, ArrivalOptions } from './harness/tools/inbound.js';
|
|
54
58
|
export { loadSitePages, parsePage, pagesFromActions, mergePages, pageForEntity, findPage, } from './harness/tools/site-pages.js';
|
|
55
59
|
export type { SitePage, SitePagesOptions } from './harness/tools/site-pages.js';
|
|
56
60
|
export { buildOpenPageTool, registerOpenPageTool, resolveDestination, visitFor, OPEN_PAGE_TOOL } from './harness/tools/open-page.js';
|
|
57
61
|
export { isRateLimited, retryAfterMs, withRetry } from './harness/tools/retry.js';
|
|
62
|
+
export { setSiteActionReporter, TRACK_TOOL, type PageFormRun, type SiteActionReport, type SiteActionReporter } from './harness/tools/report.js';
|
|
58
63
|
export type { RetryOptions } from './harness/tools/retry.js';
|
|
59
64
|
export { applyTrails, buildNav, buildPageLinksTool, describeNav, loadSiteTrails, nameOf, navFor, parentOf, parseTrail, registerPageLinksTool, PAGE_LINKS_TOOL, } from './harness/tools/site-nav.js';
|
|
60
65
|
export type { NavLink, PageNav, SiteNav, SiteTrail, SiteTrailsOptions, TrailLevel } from './harness/tools/site-nav.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -26,6 +26,7 @@ export { toolSchema, missingRequired, reconcileArgs, extractResult, proseAnswer,
|
|
|
26
26
|
export { policyFor, decide } from './harness/policy.js';
|
|
27
27
|
export { resolveSlots, summarySlots } from './harness/slots.js';
|
|
28
28
|
export { buildPlan } from './harness/plan.js';
|
|
29
|
+
export { actionCta } from './harness/cta.js';
|
|
29
30
|
export { AgentCoordinator } from './harness/router/coordinator.js';
|
|
30
31
|
export { matchRoute } from './harness/router/rules.js';
|
|
31
32
|
export { parseToolCall, stripMarkers, humanize, lcFirst, escapeHtml, MODEL_ID, MODEL_HOST, MODEL_PATH_TEMPLATE, SYSTEM_PROMPT, MAX_STEPS, MAX_NEW_TOKENS, TOOLS_TIMEOUT_MS, } from './engine.js';
|
|
@@ -40,9 +41,12 @@ export { connectTools, waitForModelContext } from './harness/tools/source.js';
|
|
|
40
41
|
export { buildSiteActionTools, registerSiteActionTools, withoutShadowedTools, handoffFor, findPageTool, awaitPageTool, pageToolRef, siteToolName, sanitizeToolName, selectSiteTools, DEFAULT_SITE_TOOL_LIMIT, } from './harness/tools/action-tools.js';
|
|
41
42
|
export { beginJourney, currentJourney, journeySteps, onJourneyChange, recordStep, restoreJourney, } from './harness/steps.js';
|
|
42
43
|
export { resumePendingAction } from './harness/tools/resume.js';
|
|
44
|
+
// Arriving from the NxisAI app to use one of this page's forms.
|
|
45
|
+
export { HANDOFF_PARAM, INTENT_PARAM, readInboundHandoff, takeInboundHandoff, handoffUrl, findHandoffForm, } from './harness/tools/inbound.js';
|
|
43
46
|
export { loadSitePages, parsePage, pagesFromActions, mergePages, pageForEntity, findPage, } from './harness/tools/site-pages.js';
|
|
44
47
|
export { buildOpenPageTool, registerOpenPageTool, resolveDestination, visitFor, OPEN_PAGE_TOOL } from './harness/tools/open-page.js';
|
|
45
48
|
export { isRateLimited, retryAfterMs, withRetry } from './harness/tools/retry.js';
|
|
49
|
+
export { setSiteActionReporter, TRACK_TOOL } from './harness/tools/report.js';
|
|
46
50
|
export { applyTrails, buildNav, buildPageLinksTool, describeNav, loadSiteTrails, nameOf, navFor, parentOf, parseTrail, registerPageLinksTool, PAGE_LINKS_TOOL, } from './harness/tools/site-nav.js';
|
|
47
51
|
export { savePendingAction, takePendingAction, clearPendingAction, PENDING_TTL_MS, savePendingVisit, takePendingVisit, setConversationSource, } from './harness/tools/pending-action.js';
|
|
48
52
|
export { findEmbeddedAction, loadSiteActions, parseAction } from './harness/tools/site-actions.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,gFAAgF;AAChF,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAS5F,gFAAgF;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EACL,UAAU,EACV,eAAe,EACf,aAAa,EACb,aAAa,EACb,WAAW,GACZ,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAYvD,OAAO,EACL,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,UAAU,EACV,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,aAAa,EACb,SAAS,EACT,cAAc,EACd,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB;;;;;GAKG;AACH,OAAO,EACL,aAAa,EACb,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,WAAW,EACX,SAAS,EACT,eAAe,GAChB,MAAM,aAAa,CAAC;AAWrB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,eAAe,EACf,UAAU,EACV,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EACL,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,QAAQ,GACT,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACrI,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-fullscreen.d.ts","sourceRoot":"","sources":["../../src/ui/agent-fullscreen.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-fullscreen.d.ts","sourceRoot":"","sources":["../../src/ui/agent-fullscreen.ts"],"names":[],"mappings":"AAuHA,OAAO,KAAK,EAAc,oBAAoB,EAA4B,MAAM,aAAa,CAAC;AAiL9F;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACrC,sEAAsE;IACtE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC1C,qCAAqC;IACrC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,+CAA+C;IAC/C,IAAI,IAAI,MAAM,EAAE,CAAC;IACjB,sEAAsE;IACtE,OAAO,EAAE,OAAO,CAAC;CAClB;AA+HD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
*/
|
|
23
23
|
import { mountSurface } from '../a2ui/host.js';
|
|
24
24
|
import { emitCardsSurface } from '../a2ui/cards.js';
|
|
25
|
+
import { actionCta } from '../harness/cta.js';
|
|
25
26
|
import { emitToolForm } from '../a2ui/form.js';
|
|
26
27
|
import { A2UI_THEME_CSS } from '../a2ui/theme.js';
|
|
27
28
|
// Compiled from agent.tw.css at build time (scripts/css-to-ts.mjs). It is a
|
|
@@ -34,13 +35,14 @@ import { AgentHarness, isAbort } from '../harness/harness.js';
|
|
|
34
35
|
import { WebMcpTools } from '../harness/tools/webmcp.js';
|
|
35
36
|
import { extractResult, proseAnswer, missingRequired, toolSchema, } from '../harness/tools/schema.js';
|
|
36
37
|
import { connectTools } from '../harness/tools/source.js';
|
|
37
|
-
import { chooserOf, formOptions, formsFor, handoffFor, isSiteTool, withoutSiteSuffix, HANDOFF_RESULT, } from '../harness/tools/action-tools.js';
|
|
38
|
+
import { chooserOf, formOptions, formsFor, handoffFor, isSiteTool, siteFormFor, withoutSiteSuffix, HANDOFF_RESULT, } from '../harness/tools/action-tools.js';
|
|
38
39
|
import { resolveSlots } from '../harness/slots.js';
|
|
39
40
|
import { isHandoffTool } from '../handoff/tools.js';
|
|
40
41
|
import { actionCard, fieldLabel, fieldsFromSlots, ACTION_CARD_CSS, } from './action-card.js';
|
|
41
42
|
import { resultsAnswer, RESULTS_ANSWER_CSS } from './result-pick.js';
|
|
42
43
|
import { extractRecords, openStatus, recordFacts } from '../harness/records.js';
|
|
43
44
|
import { resumePendingAction } from '../harness/tools/resume.js';
|
|
45
|
+
import { findHandoffForm, startFormMessage, startMessage, takeInboundHandoff } from '../harness/tools/inbound.js';
|
|
44
46
|
import { savePendingVisit, setConversationSource, takePendingVisit } from '../harness/tools/pending-action.js';
|
|
45
47
|
import { pageForEntity } from '../harness/tools/site-pages.js';
|
|
46
48
|
import { OPEN_PAGE_TOOL } from '../harness/tools/open-page.js';
|
|
@@ -415,6 +417,8 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
415
417
|
// belongs to is the one open.
|
|
416
418
|
void this._resumePendingAction();
|
|
417
419
|
this._resumePendingVisit();
|
|
420
|
+
// Sent here from the NxisAI app to use one of this page's forms.
|
|
421
|
+
void this._arriveFromHandoff();
|
|
418
422
|
this._els.launcher.addEventListener('click', () => this._open());
|
|
419
423
|
this._els.handoffBack.addEventListener('click', () => void this._endHandoff());
|
|
420
424
|
// A handoff left open on the last page carries on here.
|
|
@@ -1304,7 +1308,14 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
1304
1308
|
return bubble;
|
|
1305
1309
|
}
|
|
1306
1310
|
// ── Turn loop ──────────────────────────────────────────────────────────────
|
|
1307
|
-
|
|
1311
|
+
/**
|
|
1312
|
+
* Send what is in the composer.
|
|
1313
|
+
*
|
|
1314
|
+
* @param call - A tool call already decided, run without asking the model
|
|
1315
|
+
* (a handoff names its form). Falls back to an ordinary turn when no agent
|
|
1316
|
+
* here holds the tool.
|
|
1317
|
+
*/
|
|
1318
|
+
async _onSend(call) {
|
|
1308
1319
|
const goal = this._els.input.value.trim();
|
|
1309
1320
|
if (!goal || this._turnActive)
|
|
1310
1321
|
return;
|
|
@@ -1340,7 +1351,10 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
1340
1351
|
await this._connectTools();
|
|
1341
1352
|
this._syncProfileContext();
|
|
1342
1353
|
// One agent, or several with a router in front: the signatures match.
|
|
1343
|
-
|
|
1354
|
+
const engine = this._coordinator ?? this._harness;
|
|
1355
|
+
const begun = call ? await engine.begin(goal, call.name, call.args, conv.messages) : null;
|
|
1356
|
+
if (!begun || begun.decision === 'unavailable')
|
|
1357
|
+
await engine.turn(goal, conv.messages);
|
|
1344
1358
|
// A remote endpoint reports which model answered; the name beside the
|
|
1345
1359
|
// input follows it rather than keeping whatever was configured.
|
|
1346
1360
|
this._paintProvenance();
|
|
@@ -2326,6 +2340,7 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
2326
2340
|
facts.since ? `In business since ${facts.since}` : '',
|
|
2327
2341
|
facts.reviews[0] ? `\u201c${facts.reviews[0].text}\u201d${facts.reviews[0].author ? ` \u2014 ${facts.reviews[0].author}` : ''}` : '',
|
|
2328
2342
|
].filter((l) => !!l);
|
|
2343
|
+
const action = actionCta(entity, title);
|
|
2329
2344
|
return {
|
|
2330
2345
|
title,
|
|
2331
2346
|
type,
|
|
@@ -2339,6 +2354,7 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
2339
2354
|
...(facts.reviewCount !== undefined ? { reviews: facts.reviewCount } : {}),
|
|
2340
2355
|
...(status ? { status: { open: status.open, label: status.label } } : {}),
|
|
2341
2356
|
...(facts.phone ? { phone: facts.phone } : {}),
|
|
2357
|
+
...(action ? { action } : {}),
|
|
2342
2358
|
facts: lines,
|
|
2343
2359
|
};
|
|
2344
2360
|
}
|
|
@@ -2362,7 +2378,9 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
2362
2378
|
if (!item.pick && !things.length)
|
|
2363
2379
|
return null;
|
|
2364
2380
|
const cards = item.cards.map((c) => {
|
|
2365
|
-
|
|
2381
|
+
// The record's own action first: the same map and prompt as the Typed Retrieval skill and the NxisAI
|
|
2382
|
+
// app. A record that states none falls back to a form found on this page for it.
|
|
2383
|
+
const form = c.action ? undefined : formsFor(c.title)[0];
|
|
2366
2384
|
const quote = form && /quote/.test(form.noun);
|
|
2367
2385
|
return {
|
|
2368
2386
|
title: c.title,
|
|
@@ -2372,13 +2390,15 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
2372
2390
|
phone: c.phone,
|
|
2373
2391
|
page: c.page,
|
|
2374
2392
|
facts: c.facts ?? [],
|
|
2375
|
-
...(
|
|
2376
|
-
? {
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2393
|
+
...(c.action
|
|
2394
|
+
? { form: { label: c.action.label, message: c.action.message } }
|
|
2395
|
+
: form
|
|
2396
|
+
? {
|
|
2397
|
+
form: quote
|
|
2398
|
+
? { label: 'Get a quote', message: `Get a quote from ${c.title}` }
|
|
2399
|
+
: { label: `Use their ${form.noun}`, message: `Start the ${form.noun} for ${c.title}` },
|
|
2400
|
+
}
|
|
2401
|
+
: {}),
|
|
2382
2402
|
};
|
|
2383
2403
|
});
|
|
2384
2404
|
return resultsAnswer(cards, item.pick, {
|
|
@@ -2410,6 +2430,7 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
2410
2430
|
...(c.emergency ? [{ label: '24/7' }] : []),
|
|
2411
2431
|
],
|
|
2412
2432
|
rows: c.rows.map((r) => ({ label: r.label, value: r.value })),
|
|
2433
|
+
actions: c.action ? [c.action] : [],
|
|
2413
2434
|
}));
|
|
2414
2435
|
}
|
|
2415
2436
|
/** Results rendered through A2UI instead of the bespoke card markup. */
|
|
@@ -2422,7 +2443,15 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
2422
2443
|
}
|
|
2423
2444
|
try {
|
|
2424
2445
|
const messages = emitCardsSurface(item.note, this._toA2uiCards(item.cards));
|
|
2425
|
-
const mounted = mountSurface(wrap, messages)
|
|
2446
|
+
const mounted = mountSurface(wrap, messages, (event) => {
|
|
2447
|
+
const name = event?.event?.name ?? event?.name ?? '';
|
|
2448
|
+
const ctx = (event?.event?.context ?? event?.context ?? {});
|
|
2449
|
+
// A card's action button: send its message as the visitor, as the inline card does.
|
|
2450
|
+
if (name === 'nxis.ask' && typeof ctx.message === 'string' && !this._turnActive) {
|
|
2451
|
+
this._els.input.value = ctx.message;
|
|
2452
|
+
void this._onSend();
|
|
2453
|
+
}
|
|
2454
|
+
});
|
|
2426
2455
|
if (!mounted)
|
|
2427
2456
|
throw new Error('no surface produced');
|
|
2428
2457
|
this._surfaces.push(mounted);
|
|
@@ -3127,6 +3156,43 @@ class NxisAgentFullscreen extends HTMLElement {
|
|
|
3127
3156
|
if (this.mode !== 'fullscreen')
|
|
3128
3157
|
this._open();
|
|
3129
3158
|
}
|
|
3159
|
+
/**
|
|
3160
|
+
* Open on the form a link from the NxisAI app names.
|
|
3161
|
+
*
|
|
3162
|
+
* In a new conversation: the person arrives from another app, and nothing
|
|
3163
|
+
* on this site led here. The agent starts the form in its own words, so the
|
|
3164
|
+
* link only chooses which form; what the person wanted waits in the
|
|
3165
|
+
* composer for them to send, change or delete.
|
|
3166
|
+
*/
|
|
3167
|
+
async _arriveFromHandoff() {
|
|
3168
|
+
const handoff = takeInboundHandoff();
|
|
3169
|
+
if (!handoff)
|
|
3170
|
+
return;
|
|
3171
|
+
this._newConversation();
|
|
3172
|
+
this._open();
|
|
3173
|
+
this._setStatus('Opening the form…');
|
|
3174
|
+
// The site's own tools first: they reach a form from any page, from the
|
|
3175
|
+
// site's records, so they work where the page registers nothing itself.
|
|
3176
|
+
await this._connectTools();
|
|
3177
|
+
const site = siteFormFor(handoff.actionId);
|
|
3178
|
+
const start = site
|
|
3179
|
+
? startFormMessage(site.noun, site.choice)
|
|
3180
|
+
: await findHandoffForm(handoff).then((o) => (o.status === 'ready' ? startMessage(o.tool) : null));
|
|
3181
|
+
this._setStatus('');
|
|
3182
|
+
if (!start) {
|
|
3183
|
+
this._appendMsg('assistant', "I couldn't find that form on this page. Tell me what you need and I'll help from here.");
|
|
3184
|
+
}
|
|
3185
|
+
else if (!this._turnActive) {
|
|
3186
|
+
this._els.input.value = start;
|
|
3187
|
+
// The form is known, so it opens without the model choosing it: left to
|
|
3188
|
+
// choose, a model sometimes asks for the details in prose instead.
|
|
3189
|
+
await this._onSend(site ? { name: site.tool, args: site.args } : undefined);
|
|
3190
|
+
}
|
|
3191
|
+
if (handoff.intent && !this._els.input.value) {
|
|
3192
|
+
this._els.input.value = handoff.intent;
|
|
3193
|
+
this._autosize();
|
|
3194
|
+
}
|
|
3195
|
+
}
|
|
3130
3196
|
async _resumePendingAction() {
|
|
3131
3197
|
const outcome = await resumePendingAction({
|
|
3132
3198
|
onStart: (pending) => {
|