@lssm/lib.support-bot 0.0.0-canary-20251217060433 → 0.0.0-canary-20251217062139
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/ai-agent/dist/agent/agent-factory.js +1 -0
- package/dist/ai-agent/dist/agent/contract-spec-agent.js +1 -0
- package/dist/ai-agent/dist/agent/index.js +1 -0
- package/dist/ai-agent/dist/approval/index.js +1 -0
- package/dist/ai-agent/dist/approval/workflow.js +1 -0
- package/dist/ai-agent/dist/index.js +1 -0
- package/dist/ai-agent/dist/schema/index.js +1 -0
- package/dist/ai-agent/dist/schema/json-schema-to-zod.js +1 -0
- package/dist/ai-agent/dist/schema/schema-output.js +1 -0
- package/dist/ai-agent/dist/spec/spec.js +1 -0
- package/dist/ai-agent/dist/tools/index.js +1 -0
- package/dist/ai-agent/dist/tools/knowledge-tool.js +1 -0
- package/dist/ai-agent/dist/tools/mcp-client.js +1 -0
- package/dist/ai-agent/dist/tools/mcp-server.js +1 -0
- package/dist/ai-agent/dist/tools/tool-adapter.js +1 -0
- package/dist/bot/tools.js +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/spec.js +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./contract-spec-agent.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"../tools/tool-adapter.js";import"../tools/knowledge-tool.js";import*as e from"zod";import"ai";e.object({tenantId:e.string().optional(),actorId:e.string().optional(),sessionId:e.string().optional(),metadata:e.record(e.string(),e.unknown()).optional()});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./contract-spec-agent.js";import"./agent-factory.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./workflow.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"node:crypto";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e}from"./spec/spec.js";import"./schema/json-schema-to-zod.js";import"./tools/tool-adapter.js";import"./tools/knowledge-tool.js";import"./agent/contract-spec-agent.js";import"./agent/agent-factory.js";import"./agent/index.js";import"./tools/mcp-client.js";import"./tools/mcp-server.js";import"./tools/index.js";import"./schema/schema-output.js";import"./schema/index.js";import"./approval/workflow.js";import"./approval/index.js";import"ai";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./json-schema-to-zod.js";import"./schema-output.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"zod";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./json-schema-to-zod.js";import"zod";import"ai";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){if(!e.meta?.name)throw Error(`Agent name is required`);if(!Number.isFinite(e.meta.version))throw Error(`Agent ${e.meta.name} is missing a numeric version`);if(!e.instructions?.trim())throw Error(`Agent ${e.meta.name} requires instructions`);if(!e.tools?.length)throw Error(`Agent ${e.meta.name} must expose at least one tool`);let t=new Set;for(let n of e.tools){if(t.has(n.name))throw Error(`Agent ${e.meta.name} has duplicate tool name: ${n.name}`);t.add(n.name)}return Object.freeze(e)}export{e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./tool-adapter.js";import"./knowledge-tool.js";import"./mcp-client.js";import"./mcp-server.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"zod";import"ai";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"@ai-sdk/mcp";import"@ai-sdk/mcp/mcp-stdio";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"../schema/json-schema-to-zod.js";import"zod";import"@modelcontextprotocol/sdk/server/mcp.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"../schema/json-schema-to-zod.js";import"ai";
|
package/dist/bot/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import*as e from"zod";const t=e.object({id:e.string(),subject:e.string(),body:e.string(),channel:e.enum([`email`,`chat`,`phone`,`portal`]),customerName:e.string().optional(),customerEmail:e.string().optional(),metadata:e.object().optional()}),n=e.object({label:e.string(),url:e.string().optional(),snippet:e.string().optional(),score:e.number().optional()}),r=e.object({type:e.enum([`respond`,`escalate`,`refund`,`manual`]),label:e.string(),payload:e.record(e.string(),e.string())}),i=e.object({ticketId:e.string(),answer:e.string(),confidence:e.number(),citations:n.array(),actions:r.array(),escalationReason:e.string().optional(),knowledgeUpdates:e.array(e.string()).optional()}),a=e.object({ticketId:e.string(),category:e.enum([`billing`,`technical`,`product`,`account`,`compliance`,`other`]),priority:e.enum([`urgent`,`high`,`medium`,`low`]),sentiment:e.enum([`positive`,`neutral`,`negative`,`frustrated`]),intents:e.array(e.string()),tags:e.array(e.string()),confidence:e.number(),escalationRequired:e.boolean().optional()});function o(e){if(!e||typeof e!=`object`||!(`ticket`in e))throw Error(`Input must include ticket`);let t=e.ticket;if(!t?.id)throw Error(`Ticket is missing id`);return t}function s(e){if(!(!e||typeof e!=`object`||!(`resolution`in e)))return e.resolution}function c(e){if(!(!e||typeof e!=`object`||!(`classification`in e)))return e.classification}function l(n){return[{title:`support_classify_ticket`,description:`Classify a ticket for priority, sentiment, and category`,inputSchema:e.object({ticket:t}),execute:async e=>{let t=o(e),r=await n.classifier.classify(t);return{content:JSON.stringify(r),metadata:{ticketId:t.id}}}},{title:`support_resolve_ticket`,description:`Generate a knowledge-grounded resolution for a ticket`,inputSchema:e.object({ticket:t}),execute:async e=>{let t=o(e),r=await n.resolver.resolve(t);return{content:JSON.stringify(r),metadata:{ticketId:t.id}}}},{title:`support_draft_response`,description:`Draft a user-facing reply based on resolution + classification`,inputSchema:e.object({ticket:t,resolution:i,classification:a}),execute:async e=>{let t=o(e),r=s(e),i=c(e);if(!r||!i)throw Error(`resolution and classification are required`);let a=await n.responder.draft(t,r,i);return{content:JSON.stringify(a),metadata:{ticketId:t.id}}}}]}export{l as createSupportTools};
|
package/dist/index.d.ts
CHANGED
|
@@ -4,8 +4,5 @@ import { FeedbackMetrics, SupportFeedbackLoop } from "./bot/feedback-loop.js";
|
|
|
4
4
|
import { KnowledgeRetriever, TicketResolver, TicketResolverOptions } from "./rag/ticket-resolver.js";
|
|
5
5
|
import { TicketClassifier, TicketClassifierOptions } from "./tickets/classifier.js";
|
|
6
6
|
import { SupportToolsetOptions, createSupportTools } from "./bot/tools.js";
|
|
7
|
-
import "./bot/index.js";
|
|
8
7
|
import { SupportBotDefinition, defineSupportBot } from "./spec.js";
|
|
9
|
-
import "./rag/index.js";
|
|
10
|
-
import "./tickets/index.js";
|
|
11
8
|
export { AutoResponder, AutoResponderOptions, ClassificationResultPayload, FeedbackMetrics, KnowledgeRetriever, ResolutionResultPayload, SupportAction, SupportBotDefinition, SupportBotSpec, SupportCitation, SupportFeedbackLoop, SupportResolution, SupportResponseDraft, SupportTicket, SupportToolsetOptions, TicketCategory, TicketChannel, TicketClassification, TicketClassifier, TicketClassifierOptions, TicketPriority, TicketResolver, TicketResolverOptions, TicketSentiment, createSupportTools, defineSupportBot };
|
package/dist/spec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{e}from"./ai-agent/dist/spec/spec.js";import"./ai-agent/dist/index.js";function t(t){return{...e({...t.base,policy:{...t.base.policy,confidence:{min:t.base.policy?.confidence?.min??.7,default:t.base.policy?.confidence?.default??.6},escalation:{confidenceThreshold:t.autoEscalateThreshold??t.base.policy?.escalation?.confidenceThreshold??t.base.policy?.confidence?.min??.7,...t.base.policy?.escalation}},memory:t.base.memory??{maxEntries:120,ttlMinutes:120},tools:t.tools??t.base.tools,instructions:`${t.base.instructions}\n\nAlways cite support knowledge sources and flag compliance/billing issues for human review when unsure.`}),thresholds:{autoResolveMinConfidence:t.autoEscalateThreshold??.75,maxIterations:6}}}export{t as defineSupportBot};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lssm/lib.support-bot",
|
|
3
|
-
"version": "0.0.0-canary-
|
|
3
|
+
"version": "0.0.0-canary-20251217062139",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -23,12 +23,12 @@
|
|
|
23
23
|
"test": "bun run"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@lssm/lib.ai-agent": "0.0.0-canary-
|
|
27
|
-
"@lssm/lib.contracts": "0.0.0-canary-
|
|
26
|
+
"@lssm/lib.ai-agent": "0.0.0-canary-20251217062139",
|
|
27
|
+
"@lssm/lib.contracts": "0.0.0-canary-20251217062139"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@lssm/tool.tsdown": "0.0.0-canary-
|
|
31
|
-
"@lssm/tool.typescript": "0.0.0-canary-
|
|
30
|
+
"@lssm/tool.tsdown": "0.0.0-canary-20251217062139",
|
|
31
|
+
"@lssm/tool.typescript": "0.0.0-canary-20251217062139",
|
|
32
32
|
"tsdown": "^0.17.4",
|
|
33
33
|
"typescript": "^5.9.3"
|
|
34
34
|
},
|