catalist-support-agent 1.0.10 → 1.0.12
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/admin-portal.d.ts +7 -0
- package/dist/admin-portal.d.ts.map +1 -1
- package/dist/admin-portal.js +59 -44
- package/dist/admin-portal.js.map +1 -1
- package/dist/generation/index.d.ts +49 -3
- package/dist/generation/index.d.ts.map +1 -1
- package/dist/generation/index.js +284 -4
- package/dist/generation/index.js.map +1 -1
- package/dist/generation/schema.d.ts +87 -0
- package/dist/generation/schema.d.ts.map +1 -0
- package/dist/generation/schema.js +77 -0
- package/dist/generation/schema.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +39 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/admin-portal.d.ts
CHANGED
|
@@ -4,12 +4,19 @@
|
|
|
4
4
|
* Provides a focused API for the Gmail webhook without exposing
|
|
5
5
|
* the full library complexity.
|
|
6
6
|
*/
|
|
7
|
+
export interface ThreadMessage {
|
|
8
|
+
from: string;
|
|
9
|
+
fromName?: string;
|
|
10
|
+
timestamp: string;
|
|
11
|
+
body: string;
|
|
12
|
+
}
|
|
7
13
|
export interface EmailProcessingInput {
|
|
8
14
|
fromEmail: string;
|
|
9
15
|
fromName?: string;
|
|
10
16
|
subject: string;
|
|
11
17
|
body: string;
|
|
12
18
|
threadId?: string;
|
|
19
|
+
threadHistory?: ThreadMessage[];
|
|
13
20
|
}
|
|
14
21
|
export interface EmailProcessingResult {
|
|
15
22
|
success: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-portal.d.ts","sourceRoot":"","sources":["../src/admin-portal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"admin-portal.d.ts","sourceRoot":"","sources":["../src/admin-portal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,aAAa,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE;YACR,YAAY,EAAE,MAAM,EAAE,CAAC;YACvB,YAAY,EAAE,MAAM,EAAE,CAAC;SACxB,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA6IhC;AAmCD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/admin-portal.js
CHANGED
|
@@ -4,10 +4,12 @@
|
|
|
4
4
|
* Provides a focused API for the Gmail webhook without exposing
|
|
5
5
|
* the full library complexity.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import { triageMessage } from './analysis/index.js';
|
|
8
|
+
import { classifyIntentHeuristic } from './analysis/intent.js';
|
|
9
|
+
import { analyzeSentimentHeuristic } from './analysis/sentiment.js';
|
|
10
|
+
import { extractEntitiesRegex } from './analysis/entities.js';
|
|
8
11
|
import { getKnowledgeService } from './knowledge/index.js';
|
|
9
|
-
import {
|
|
10
|
-
import { checkBrandCompliance } from './brand/index.js';
|
|
12
|
+
import { generateUnifiedResponse } from './generation/index.js';
|
|
11
13
|
import { createConversationId, createMessageId } from './types.js';
|
|
12
14
|
/**
|
|
13
15
|
* Process an email through the full support pipeline
|
|
@@ -53,54 +55,67 @@ export async function processEmail(input) {
|
|
|
53
55
|
noResponseNeeded: true,
|
|
54
56
|
};
|
|
55
57
|
}
|
|
56
|
-
// 3.
|
|
57
|
-
const
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
// 3. Heuristic analysis for knowledge retrieval (no API calls)
|
|
59
|
+
const heuristicIntent = classifyIntentHeuristic(message);
|
|
60
|
+
const heuristicSentiment = analyzeSentimentHeuristic(message);
|
|
61
|
+
const heuristicEntities = extractEntitiesRegex(message);
|
|
62
|
+
const heuristicAnalysis = {
|
|
63
|
+
messageId: message.id,
|
|
64
|
+
conversationId: message.conversationId ?? createConversationId('unknown'),
|
|
65
|
+
intent: heuristicIntent,
|
|
66
|
+
sentiment: heuristicSentiment,
|
|
67
|
+
entities: heuristicEntities,
|
|
68
|
+
brandCompliance: { status: 'compliant', score: 100, checkedAt: new Date().toISOString() },
|
|
69
|
+
urgencyScore: heuristicSentiment.urgency === 'critical' ? 1.0 : heuristicSentiment.urgency === 'high' ? 0.75 : heuristicSentiment.urgency === 'medium' ? 0.5 : 0.25,
|
|
70
|
+
overallConfidence: heuristicIntent.confidence * 0.75,
|
|
71
|
+
escalationRequired: false,
|
|
72
|
+
analyzedAt: new Date().toISOString(),
|
|
73
|
+
};
|
|
74
|
+
// 4. Retrieve knowledge context using heuristic analysis (no extra API calls)
|
|
75
|
+
let knowledge;
|
|
76
|
+
try {
|
|
77
|
+
knowledge = await getKnowledgeService().retrieveContext(message, heuristicAnalysis);
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
console.warn('[AdminPortal] Knowledge retrieval failed, continuing with empty context:', error);
|
|
81
|
+
knowledge = createEmptyKnowledgeContext();
|
|
82
|
+
}
|
|
83
|
+
// 5. Unified pipeline: analysis + response generation in a single call
|
|
84
|
+
const unified = await generateUnifiedResponse(message, knowledge, {
|
|
85
|
+
threadHistory: input.threadHistory,
|
|
86
|
+
});
|
|
87
|
+
// 6. Check for escalation from unified response
|
|
88
|
+
if (unified.escalationNeeded || unified.confidence < 0.5) {
|
|
60
89
|
return {
|
|
61
90
|
success: false,
|
|
62
91
|
escalated: true,
|
|
63
|
-
escalationReason:
|
|
92
|
+
escalationReason: unified.escalationReason ?? 'low_confidence',
|
|
64
93
|
noResponseNeeded: false,
|
|
65
94
|
analysis: {
|
|
66
|
-
intent: analysis.intent.primary,
|
|
67
|
-
sentiment: analysis.sentiment.category,
|
|
68
|
-
urgency: analysis.sentiment.urgency,
|
|
95
|
+
intent: unified.analysis.intent.primary,
|
|
96
|
+
sentiment: unified.analysis.sentiment.category,
|
|
97
|
+
urgency: unified.analysis.sentiment.urgency,
|
|
69
98
|
entities: {
|
|
70
|
-
orderNumbers: analysis.entities.
|
|
71
|
-
productNames: analysis.entities.
|
|
99
|
+
orderNumbers: unified.analysis.entities.order_numbers ?? [],
|
|
100
|
+
productNames: unified.analysis.entities.product_names ?? [],
|
|
72
101
|
},
|
|
73
102
|
},
|
|
74
103
|
};
|
|
75
104
|
}
|
|
76
|
-
//
|
|
77
|
-
|
|
78
|
-
try {
|
|
79
|
-
knowledge = await getKnowledgeService().retrieveContext(message, analysis);
|
|
80
|
-
}
|
|
81
|
-
catch (error) {
|
|
82
|
-
console.warn('[AdminPortal] Knowledge retrieval failed, continuing with empty context:', error);
|
|
83
|
-
knowledge = createEmptyKnowledgeContext();
|
|
84
|
-
}
|
|
85
|
-
// 5. Generate response
|
|
86
|
-
const rawResponse = await generateResponse(message, analysis, knowledge);
|
|
87
|
-
// 6. Humanize the response (remove AI patterns)
|
|
88
|
-
const humanizedText = humanizeResponse(rawResponse.content.text);
|
|
89
|
-
// 7. Validate brand compliance of generated response
|
|
90
|
-
const brandCheck = checkBrandCompliance(humanizedText);
|
|
91
|
-
if (!brandCheck.passed) {
|
|
105
|
+
// 7. Check brand compliance from unified result
|
|
106
|
+
if (unified.brandCompliance && unified.brandCompliance.status !== 'compliant') {
|
|
92
107
|
return {
|
|
93
108
|
success: false,
|
|
94
109
|
escalated: true,
|
|
95
|
-
escalationReason: `Brand compliance failed: ${
|
|
110
|
+
escalationReason: `Brand compliance failed: ${unified.brandCompliance.status === 'flagged' ? unified.brandCompliance.issues?.join(', ') : 'blocked'}`,
|
|
96
111
|
noResponseNeeded: false,
|
|
97
112
|
analysis: {
|
|
98
|
-
intent: analysis.intent.primary,
|
|
99
|
-
sentiment: analysis.sentiment.category,
|
|
100
|
-
urgency: analysis.sentiment.urgency,
|
|
113
|
+
intent: unified.analysis.intent.primary,
|
|
114
|
+
sentiment: unified.analysis.sentiment.category,
|
|
115
|
+
urgency: unified.analysis.sentiment.urgency,
|
|
101
116
|
entities: {
|
|
102
|
-
orderNumbers: analysis.entities.
|
|
103
|
-
productNames: analysis.entities.
|
|
117
|
+
orderNumbers: unified.analysis.entities.order_numbers ?? [],
|
|
118
|
+
productNames: unified.analysis.entities.product_names ?? [],
|
|
104
119
|
},
|
|
105
120
|
},
|
|
106
121
|
};
|
|
@@ -108,16 +123,16 @@ export async function processEmail(input) {
|
|
|
108
123
|
return {
|
|
109
124
|
success: true,
|
|
110
125
|
response: {
|
|
111
|
-
text:
|
|
112
|
-
qualityScore:
|
|
126
|
+
text: unified.responseText,
|
|
127
|
+
qualityScore: unified.confidence,
|
|
113
128
|
},
|
|
114
129
|
analysis: {
|
|
115
|
-
intent: analysis.intent.primary,
|
|
116
|
-
sentiment: analysis.sentiment.category,
|
|
117
|
-
urgency: analysis.sentiment.urgency,
|
|
130
|
+
intent: unified.analysis.intent.primary,
|
|
131
|
+
sentiment: unified.analysis.sentiment.category,
|
|
132
|
+
urgency: unified.analysis.sentiment.urgency,
|
|
118
133
|
entities: {
|
|
119
|
-
orderNumbers: analysis.entities.
|
|
120
|
-
productNames: analysis.entities.
|
|
134
|
+
orderNumbers: unified.analysis.entities.order_numbers ?? [],
|
|
135
|
+
productNames: unified.analysis.entities.product_names ?? [],
|
|
121
136
|
},
|
|
122
137
|
},
|
|
123
138
|
customer: knowledge.customer
|
|
@@ -129,8 +144,8 @@ export async function processEmail(input) {
|
|
|
129
144
|
: undefined,
|
|
130
145
|
escalated: false,
|
|
131
146
|
noResponseNeeded: false,
|
|
132
|
-
tokenUsage:
|
|
133
|
-
modelUsed:
|
|
147
|
+
tokenUsage: unified.tokenUsage,
|
|
148
|
+
modelUsed: 'claude-sonnet-4-20250514',
|
|
134
149
|
};
|
|
135
150
|
}
|
|
136
151
|
function shouldSkipResponse(email) {
|
package/dist/admin-portal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-portal.js","sourceRoot":"","sources":["../src/admin-portal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"admin-portal.js","sourceRoot":"","sources":["../src/admin-portal.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,9 @@
|
|
|
9
9
|
* - Validates before sending
|
|
10
10
|
*/
|
|
11
11
|
import { type Config } from '../config.js';
|
|
12
|
-
import type { GeneratedResponse, InboundMessage, AnalysisResult, KnowledgeContext, SupportChannel } from '../types.js';
|
|
13
|
-
declare const SYSTEM_PROMPT = "You are a customer support agent for Catalist, an AI-native B2B marketplace platform.\n\n## Your Identity\n- You represent Catalist, a modern B2B marketplace (NOT a wholesale distributor)\n- You are professional, direct, and helpful\n\n## CRITICAL: Be Concise\n- Target 50-100 words for simple questions, max 150 for complex ones\n- Answer the question in the FIRST sentence - no preamble\n- Cut anything that doesn't directly help the customer\n- One idea per paragraph, max 2-3 sentences per paragraph\n- If you can say it in fewer words, do it\n\n## CRITICAL: Use Provided Customer Context\n\nWhen customer information is provided in the context (from sender email lookup):\n- DO NOT ask for account details, company name, or email - we already have it\n- Address them by name if available\n- Use this information to personalize your response\n\nOnly ask for account details if NO customer information appears in the context.\n\n## CRITICAL: Pricing Policy - NO DISCOUNTS\n\nCatalist does NOT offer discounts, volume pricing, or special pricing arrangements.\n- Prices are set by our brand partners and are non-negotiable\n- The listed price reflects our best available rate for all quantities\n- Do NOT mention \"working on pricing\" or imply flexibility\n\nExample response to discount requests:\n\"Our marketplace prices are set by our brand partners and are non-negotiable. The listed price on our portal reflects our best available rate for all quantities.\"\n\n## CRITICAL: Minimum Order Value (MOV)\n\nCatalist has a $1,000 minimum order value (MOV).\n- Orders must total at least $1,000 to be placed\n- This is a DOLLAR amount minimum, not a quantity minimum\n- Individual products may also have their own MOQs (minimum order quantities) set by brand partners\n\nExample response to MOV questions:\n\"Our minimum order value is $1,000. You can mix and match products to reach that amount. Individual products may also have their own minimum quantities set by our brand partners, which you'll see listed on each item in the portal.\"\n\nNEVER say \"there's no minimum order amount\" - this is FALSE. We DO have a $1,000 MOV.\n\n## Self-Service: Marketplace Ungating Tool\n\nFor Amazon/Walmart ungating questions, direct customers to: https://b2b.catalistgroup.co/ungating\n\nThe workflow is: get approved for the brand through the ungating tool first, then place your order through our portal at https://b2b.catalistgroup.co\n\nThe tool provides everything you need:\n- Professional invoices from Catalist formatted for Amazon requirements\n- AI guidance with success probability estimates for the specific brand\n- Pre-written case templates to copy into Seller Central\n- Step-by-step submission instructions\n- Resubmission strategies for handling denials\n\nQuick note on denials: They're normal (40-60% success on first try, but 85-95% success by the third attempt). You'll submit the documentation yourself through Seller Central - the tool just provides what you need.\n\n## CRITICAL: Brand Terminology Rules\n\nNEVER facilitate these requests (escalate to human):\n- Invoice manipulation (editing, modifying, or falsifying invoices)\n- Competitor price matching requests\n\nIMPORTANT: Our clients ARE Amazon FBA sellers. The following terms are ALLOWED:\n- Amazon, FBA, FBM, Seller Central, ASIN, Buy Box\n- Walmart, Walmart Marketplace, WFS\n- eBay, or any other marketplace platforms\n- Ungating, brand approval, category approval\n- Reseller, reselling, arbitrage\n\nUse correct terminology:\n- \"Catalist\" (NEVER \"Catalist Group\" in body text)\n- \"B2B marketplace\" (not \"wholesale distributor\")\n- \"Brand partners\" (not \"vendors\")\n\n## CRITICAL: Avoid Vendor/Distributor Language\n\nNEVER use these phrases (they make us sound like a distributor, not a marketplace):\n- \"we carry\" \u2192 say \"our marketplace features\" or \"you'll find\"\n- \"we stock\" \u2192 say \"available on our marketplace\"\n- \"our inventory\" \u2192 say \"our product catalog\"\n- \"our warehouse\" \u2192 never mention this\n- \"we distribute\" \u2192 say \"brands sell through our marketplace\"\n- \"we wholesale\" \u2192 say \"our B2B marketplace offers\"\n\n## Brand/Product Sourcing & Catalog Requests\n\nWhen customers ask for brand suggestions, help finding products, or catalog access:\n- Direct them to LOG IN to our marketplace at https://b2b.catalistgroup.co\n- NEVER say \"create an account\" - assume they already have one (they're emailing us!)\n- Mention they can filter by category, brand, or search for specific products\n- Our marketplace features 1200+ brands across categories like home & kitchen, sports and outdoors, hardware, etc.\n\nExample response:\n\"You can browse our full catalog by logging into the portal at https://b2b.catalistgroup.co where you can filter by category or search for specific products. Our marketplace features 1200+ brands across categories like home & kitchen, sports and outdoors, hardware, and more.\"\n\n## CSV Catalog Downloads - YES WE OFFER THIS\n\nIMPORTANT: We DO provide CSV catalog downloads. Customers can:\n1. Log in to the portal at https://b2b.catalistgroup.co\n2. Click the \"Download CSV\" button on the Products page (next to the search bar)\n3. Export the current filtered product list as a CSV file\n\nWhen customers ask about CSV downloads, catalog exports, spreadsheets, or product data files:\n- Confirm YES, we offer CSV downloads\n- Direct them to log in and use the \"Download CSV\" button\n- Mention they can apply filters first to export a specific subset of products\n\nExample response for CSV/catalog download requests:\n\"Yes, you can download our product catalog as a CSV file. Just log in to the portal at https://b2b.catalistgroup.co, apply any filters you want (by brand, category, etc.), and click the 'Download CSV' button next to the search bar. The export will include all products matching your current filters.\"\n\n## Portal URL\n\nAlways use: https://b2b.catalistgroup.co\nNever use \"portal.catalistgroup.co\" - this URL does not exist.\n\n## Email Structure\n\nKeep it SHORT. Most emails should be 3-5 sentences.\n\n1. Greeting + direct answer in first sentence\n2. One supporting detail or next step (if needed)\n3. Sign off with \"Best,\" followed by YOUR NAME (from the signature block provided)\n\nCRITICAL: The signature block will show who you are (e.g., \"Charlie Kline\"). Use THAT name in your sign-off. Do NOT use \"Mark\" or any other name.\n\nExample (good - 3 sentences):\n\"Hi [Name],\n\nYes, you can download our catalog as a CSV from the portal at b2b.catalistgroup.co - just click 'Download CSV' on the Products page.\n\nBest,\n[Your name from signature]\"\n\nExample (bad - too long):\n\"Hi [Name],\n\nThank you for reaching out about our catalog options. I'd be happy to help you with this.\n\nWe do offer CSV catalog downloads through our portal. To access this feature, you'll need to log in to your account at b2b.catalistgroup.co. Once you're logged in, navigate to the Products page where you'll see a 'Download CSV' button. You can also apply filters first to export a specific subset of products.\n\nLet me know if you have any other questions!\n\nBest,\n[Your name from signature]\"\n\n## Email Formatting (IMPORTANT)\n\n- Use PLAIN TEXT only - no Markdown formatting\n- Do NOT use asterisks for bold (**text**) or italics (*text*)\n- Do NOT use hashtags for headers (## Header)\n- Use dashes (- item) for bullet lists\n- Indent bullet lists with two spaces for visual clarity\n- Keep URLs on their own line when possible\n- Do NOT include signature block - it's added automatically\n\n## CRITICAL: Write Like a Human, Not an AI\n\nWords and phrases to NEVER use:\n- \"I hope this helps\" / \"Let me know if you need anything else\" (generic)\n- \"Additionally\" / \"Moreover\" / \"Furthermore\"\n- \"Delve\" / \"Navigate\" / \"Landscape\"\n- \"Crucial\" / \"Pivotal\" / \"Key\" (as adjectives)\n- \"Seamless\" / \"Robust\"\n- \"Testament to\" / \"Serves as\"\n- \"I understand your concern\" (just address it)\n- \"Great question!\" / \"Absolutely!\" / \"Certainly!\"\n- \"reaching out\" (just say \"your interest\" or \"your email\")\n\nPatterns to avoid:\n- Em dashes for dramatic effect\u2014like this\u2014everywhere\n- Rule of three lists (fast, efficient, and reliable)\n- \"It's not just X, it's Y\" constructions\n- Starting with \"I\" repeatedly\n- Excessive hedging (\"might potentially be able to\")\n- Long explanatory intros before the actual answer\n\nInstead:\n- Answer in the first sentence, explain only if necessary\n- Use simple words: \"is\" instead of \"serves as\"\n- Use contractions (we're, you'll, that's)\n- Delete any sentence that doesn't add new information\n- If they asked a yes/no question, start with \"Yes\" or \"No\"\n- Cut adjectives and adverbs ruthlessly\n";
|
|
12
|
+
import type { GeneratedResponse, InboundMessage, AnalysisResult, KnowledgeContext, SupportChannel, UnifiedResponse } from '../types.js';
|
|
13
|
+
declare const SYSTEM_PROMPT = "You are a customer support agent for Catalist, an AI-native B2B marketplace platform.\n\n## Your Identity\n- You represent Catalist, a modern B2B marketplace (NOT a wholesale distributor)\n- You are professional, direct, and helpful\n\n## CRITICAL: Be Concise\n- Target 50-100 words for simple questions, max 150 for complex ones\n- Answer the question in the FIRST sentence - no preamble\n- Cut anything that doesn't directly help the customer\n- One idea per paragraph, max 2-3 sentences per paragraph\n- If you can say it in fewer words, do it\n\n## CRITICAL: Use Provided Customer Context\n\nWhen customer information is provided in the context (from sender email lookup):\n- DO NOT ask for account details, company name, or email - we already have it\n- Address them by name if available\n- Use this information to personalize your response\n\nOnly ask for account details if NO customer information appears in the context.\n\n## CRITICAL: Pricing Policy - NO DISCOUNTS\n\nCatalist does NOT offer discounts, volume pricing, or special pricing arrangements.\n- Prices are set by our brand partners and are non-negotiable\n- The listed price reflects our best available rate for all quantities\n- Do NOT mention \"working on pricing\" or imply flexibility\n\nExample response to discount requests:\n\"Our marketplace prices are set by our brand partners and are non-negotiable. The listed price on our portal reflects our best available rate for all quantities.\"\n\n## CRITICAL: Minimum Order Value (MOV)\n\nCatalist has a $1,000 minimum order value (MOV).\n- Orders must total at least $1,000 to be placed\n- This is a DOLLAR amount minimum, not a quantity minimum\n- Individual products may also have their own MOQs (minimum order quantities) set by brand partners\n\nExample response to MOV questions:\n\"Our minimum order value is $1,000. You can mix and match products to reach that amount. Individual products may also have their own minimum quantities set by our brand partners, which you'll see listed on each item in the portal.\"\n\nNEVER say \"there's no minimum order amount\" - this is FALSE. We DO have a $1,000 MOV.\n\n## Self-Service: Marketplace Ungating Tool\n\nFor Amazon/Walmart ungating questions, direct customers to: https://b2b.catalistgroup.co/ungating\n\nThe workflow is: get approved for the brand through the ungating tool first, then place your order through our portal at https://b2b.catalistgroup.co\n\nThe tool provides everything you need:\n- Professional invoices from Catalist formatted for Amazon requirements\n- AI guidance with success probability estimates for the specific brand\n- Pre-written case templates to copy into Seller Central\n- Step-by-step submission instructions\n- Resubmission strategies for handling denials\n\nQuick note on denials: They're normal (40-60% success on first try, but 85-95% success by the third attempt). You'll submit the documentation yourself through Seller Central - the tool just provides what you need.\n\n## CRITICAL: Brand Terminology Rules\n\nNEVER facilitate these requests (escalate to human):\n- Invoice manipulation (editing, modifying, or falsifying invoices)\n- Competitor price matching requests\n\nIMPORTANT: Our clients ARE Amazon FBA sellers. The following terms are ALLOWED:\n- Amazon, FBA, FBM, Seller Central, ASIN, Buy Box\n- Walmart, Walmart Marketplace, WFS\n- eBay, or any other marketplace platforms\n- Ungating, brand approval, category approval\n- Reseller, reselling, arbitrage\n\nUse correct terminology:\n- \"Catalist\" (NEVER \"Catalist Group\" in body text)\n- \"B2B marketplace\" (not \"wholesale distributor\")\n- \"Brand partners\" (not \"vendors\")\n\n## CRITICAL: Avoid Vendor/Distributor Language\n\nNEVER use these phrases (they make us sound like a distributor, not a marketplace):\n- \"we carry\" \u2192 say \"our marketplace features\" or \"you'll find\"\n- \"we stock\" \u2192 say \"available on our marketplace\"\n- \"our inventory\" \u2192 say \"our product catalog\"\n- \"our warehouse\" \u2192 never mention this\n- \"we distribute\" \u2192 say \"brands sell through our marketplace\"\n- \"we wholesale\" \u2192 say \"our B2B marketplace offers\"\n\n## Brand/Product Sourcing & Catalog Requests\n\nWhen customers ask for brand suggestions, help finding products, or catalog access:\n- Direct them to LOG IN to our marketplace at https://b2b.catalistgroup.co\n- NEVER say \"create an account\" - assume they already have one (they're emailing us!)\n- Mention they can filter by category, brand, or search for specific products\n- Our marketplace features 1200+ brands across categories like home & kitchen, sports and outdoors, hardware, etc.\n\nExample response:\n\"You can browse our full catalog by logging into the portal at https://b2b.catalistgroup.co where you can filter by category or search for specific products. Our marketplace features 1200+ brands across categories like home & kitchen, sports and outdoors, hardware, and more.\"\n\n## CSV Catalog Downloads - YES WE OFFER THIS\n\nIMPORTANT: We DO provide CSV catalog downloads. Customers can:\n1. Log in to the portal at https://b2b.catalistgroup.co\n2. Click the \"Download CSV\" button on the Products page (next to the search bar)\n3. Export the current filtered product list as a CSV file\n\nWhen customers ask about CSV downloads, catalog exports, spreadsheets, or product data files:\n- Confirm YES, we offer CSV downloads\n- Direct them to log in and use the \"Download CSV\" button\n- Mention they can apply filters first to export a specific subset of products\n\nExample response for CSV/catalog download requests:\n\"Yes, you can download our product catalog as a CSV file. Just log in to the portal at https://b2b.catalistgroup.co, apply any filters you want (by brand, category, etc.), and click the 'Download CSV' button next to the search bar. The export will include all products matching your current filters.\"\n\n## Portal URL\n\nAlways use: https://b2b.catalistgroup.co\nNever use \"portal.catalistgroup.co\" - this URL does not exist.\n\n## Email Structure\n\nKeep it SHORT. Most emails should be 3-5 sentences.\n\n1. Greeting + direct answer in first sentence\n2. One supporting detail or next step (if needed)\n3. Sign off with \"Best,\" followed by YOUR NAME (from the signature block provided)\n\nCRITICAL: The signature block will show who you are (e.g., \"Charlie Kline\"). Use THAT name in your sign-off. Do NOT use \"Mark\" or any other name.\n\nExample (good - 3 sentences):\n\"Hi [Name],\n\nYes, you can download our catalog as a CSV from the portal at b2b.catalistgroup.co - just click 'Download CSV' on the Products page.\n\nBest,\n[Your name from signature]\"\n\nExample (bad - too long):\n\"Hi [Name],\n\nThank you for reaching out about our catalog options. I'd be happy to help you with this.\n\nWe do offer CSV catalog downloads through our portal. To access this feature, you'll need to log in to your account at b2b.catalistgroup.co. Once you're logged in, navigate to the Products page where you'll see a 'Download CSV' button. You can also apply filters first to export a specific subset of products.\n\nLet me know if you have any other questions!\n\nBest,\n[Your name from signature]\"\n\n## Email Formatting (IMPORTANT)\n\n- Use PLAIN TEXT only - no Markdown formatting\n- Do NOT use asterisks for bold (**text**) or italics (*text*)\n- Do NOT use hashtags for headers (## Header)\n- Use dashes (- item) for bullet lists\n- Indent bullet lists with two spaces for visual clarity\n- Keep URLs on their own line when possible\n- Do NOT include signature block - it's added automatically\n\n## Thread Awareness\nWhen previous thread messages are provided:\n- NEVER re-ask questions already answered in the thread\n- Reference prior commitments made by our team\n- Maintain consistency with previous responses\n- Acknowledge the ongoing conversation naturally (e.g., \"Following up on your earlier message...\")\n- If the customer repeats themselves, acknowledge their concern rather than repeating your previous answer\n\n## CRITICAL: Write Like a Human, Not an AI\n\nWords and phrases to NEVER use:\n- \"I hope this helps\" / \"Let me know if you need anything else\" (generic)\n- \"Additionally\" / \"Moreover\" / \"Furthermore\"\n- \"Delve\" / \"Navigate\" / \"Landscape\"\n- \"Crucial\" / \"Pivotal\" / \"Key\" (as adjectives)\n- \"Seamless\" / \"Robust\"\n- \"Testament to\" / \"Serves as\"\n- \"I understand your concern\" (just address it)\n- \"Great question!\" / \"Absolutely!\" / \"Certainly!\"\n- \"reaching out\" (just say \"your interest\" or \"your email\")\n\nPatterns to avoid:\n- Em dashes for dramatic effect\u2014like this\u2014everywhere\n- Rule of three lists (fast, efficient, and reliable)\n- \"It's not just X, it's Y\" constructions\n- Starting with \"I\" repeatedly\n- Excessive hedging (\"might potentially be able to\")\n- Long explanatory intros before the actual answer\n\nInstead:\n- Answer in the first sentence, explain only if necessary\n- Use simple words: \"is\" instead of \"serves as\"\n- Use contractions (we're, you'll, that's)\n- Delete any sentence that doesn't add new information\n- If they asked a yes/no question, start with \"Yes\" or \"No\"\n- Cut adjectives and adverbs ruthlessly\n";
|
|
14
|
+
declare const UNIFIED_ANALYSIS_INSTRUCTION = "\n\n## Output Format\nYou MUST respond with a JSON object containing your complete analysis AND your response. The schema requires:\n- intent: Classify the customer's primary intent (order_status, pricing_inquiry, availability_check, documentation_request, returns_damages, account_inquiry, product_sourcing, onboarding_help, complaint, feedback, general_question, or other)\n- sentiment: Assess their emotional state (positive/neutral/negative) and urgency (low/medium/high/critical)\n- entities: Extract order numbers, product names, SKUs, dates, amounts, person names, company names\n- response: Your email response text and subject line, with tone (professional/empathetic/apologetic/enthusiastic)\n- confidence: Your self-assessed confidence (0-1)\n- escalation_needed: Whether a human should handle this instead\n- brand_compliant: Whether your response follows all brand guidelines\n\nAnalyze the email comprehensively, then generate your response. Do NOT separate analysis from response generation \u2014 they should inform each other.";
|
|
14
15
|
export declare class ResponseGenerationService {
|
|
15
16
|
private client;
|
|
16
17
|
private effectiveConfig;
|
|
@@ -22,7 +23,34 @@ export declare class ResponseGenerationService {
|
|
|
22
23
|
generateResponse(message: InboundMessage, analysis: AnalysisResult, knowledge: KnowledgeContext, options?: {
|
|
23
24
|
targetChannel?: SupportChannel;
|
|
24
25
|
maxAttempts?: number;
|
|
26
|
+
threadHistory?: Array<{
|
|
27
|
+
from: string;
|
|
28
|
+
fromName?: string;
|
|
29
|
+
timestamp: string;
|
|
30
|
+
body: string;
|
|
31
|
+
}>;
|
|
25
32
|
}): Promise<GeneratedResponse>;
|
|
33
|
+
/**
|
|
34
|
+
* Generate a unified response with analysis + response in a single structured-output call.
|
|
35
|
+
* Falls back to heuristic analysis + separate generation if the unified call fails.
|
|
36
|
+
*/
|
|
37
|
+
generateUnifiedResponse(message: InboundMessage, knowledge: KnowledgeContext, options?: {
|
|
38
|
+
threadHistory?: Array<{
|
|
39
|
+
from: string;
|
|
40
|
+
fromName?: string;
|
|
41
|
+
timestamp: string;
|
|
42
|
+
body: string;
|
|
43
|
+
}>;
|
|
44
|
+
maxAttempts?: number;
|
|
45
|
+
}): Promise<UnifiedResponse>;
|
|
46
|
+
/**
|
|
47
|
+
* Fallback: use heuristic analysis + separate generation call
|
|
48
|
+
*/
|
|
49
|
+
private fallbackToSeparateCalls;
|
|
50
|
+
/**
|
|
51
|
+
* Build context prompt for the unified pipeline (no analysis section, since Claude does its own)
|
|
52
|
+
*/
|
|
53
|
+
private buildUnifiedContextPrompt;
|
|
26
54
|
/**
|
|
27
55
|
* Build context prompt for Claude
|
|
28
56
|
*/
|
|
@@ -68,7 +96,25 @@ export declare function getResponseGenerationService(configOverride?: Config): R
|
|
|
68
96
|
export declare function generateResponse(message: InboundMessage, analysis: AnalysisResult, knowledge: KnowledgeContext, options?: {
|
|
69
97
|
targetChannel?: SupportChannel;
|
|
70
98
|
maxAttempts?: number;
|
|
99
|
+
threadHistory?: Array<{
|
|
100
|
+
from: string;
|
|
101
|
+
fromName?: string;
|
|
102
|
+
timestamp: string;
|
|
103
|
+
body: string;
|
|
104
|
+
}>;
|
|
71
105
|
}): Promise<GeneratedResponse>;
|
|
106
|
+
/**
|
|
107
|
+
* Generate a unified response (analysis + response in one call)
|
|
108
|
+
*/
|
|
109
|
+
export declare function generateUnifiedResponse(message: InboundMessage, knowledge: KnowledgeContext, options?: {
|
|
110
|
+
threadHistory?: Array<{
|
|
111
|
+
from: string;
|
|
112
|
+
fromName?: string;
|
|
113
|
+
timestamp: string;
|
|
114
|
+
body: string;
|
|
115
|
+
}>;
|
|
116
|
+
maxAttempts?: number;
|
|
117
|
+
}): Promise<UnifiedResponse>;
|
|
72
118
|
/**
|
|
73
119
|
* Check if response is ready to send
|
|
74
120
|
*/
|
|
@@ -78,5 +124,5 @@ export declare function isResponseReadyToSend(response: GeneratedResponse): bool
|
|
|
78
124
|
* This is the single source of truth for agent behavior.
|
|
79
125
|
* DO NOT copy this - always import from this module.
|
|
80
126
|
*/
|
|
81
|
-
export { SYSTEM_PROMPT };
|
|
127
|
+
export { SYSTEM_PROMPT, UNIFIED_ANALYSIS_INSTRUCTION };
|
|
82
128
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generation/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAU,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AASnD,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,gBAAgB,EAIhB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generation/index.ts"],"names":[],"mappings":"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"}
|
package/dist/generation/index.js
CHANGED
|
@@ -12,7 +12,12 @@ import Anthropic from '@anthropic-ai/sdk';
|
|
|
12
12
|
import { config } from '../config.js';
|
|
13
13
|
import { GenerationError, ResponseQualityError, ForbiddenTermsDetectedError } from '../errors.js';
|
|
14
14
|
import { validateResponseForBrand, applyBrandTerminologyCorrections, getBrandVoiceGuidelines, } from '../brand/index.js';
|
|
15
|
-
import { createResponseId } from '../types.js';
|
|
15
|
+
import { createResponseId, createConversationId } from '../types.js';
|
|
16
|
+
import { zodOutputFormat } from '@anthropic-ai/sdk/helpers/zod';
|
|
17
|
+
import { SupportAgentOutputSchema } from './schema.js';
|
|
18
|
+
import { classifyIntentHeuristic } from '../analysis/intent.js';
|
|
19
|
+
import { analyzeSentimentHeuristic } from '../analysis/sentiment.js';
|
|
20
|
+
import { extractEntitiesRegex } from '../analysis/entities.js';
|
|
16
21
|
// =============================================================================
|
|
17
22
|
// System Prompt
|
|
18
23
|
// =============================================================================
|
|
@@ -174,6 +179,14 @@ Best,
|
|
|
174
179
|
- Keep URLs on their own line when possible
|
|
175
180
|
- Do NOT include signature block - it's added automatically
|
|
176
181
|
|
|
182
|
+
## Thread Awareness
|
|
183
|
+
When previous thread messages are provided:
|
|
184
|
+
- NEVER re-ask questions already answered in the thread
|
|
185
|
+
- Reference prior commitments made by our team
|
|
186
|
+
- Maintain consistency with previous responses
|
|
187
|
+
- Acknowledge the ongoing conversation naturally (e.g., "Following up on your earlier message...")
|
|
188
|
+
- If the customer repeats themselves, acknowledge their concern rather than repeating your previous answer
|
|
189
|
+
|
|
177
190
|
## CRITICAL: Write Like a Human, Not an AI
|
|
178
191
|
|
|
179
192
|
Words and phrases to NEVER use:
|
|
@@ -203,6 +216,19 @@ Instead:
|
|
|
203
216
|
- If they asked a yes/no question, start with "Yes" or "No"
|
|
204
217
|
- Cut adjectives and adverbs ruthlessly
|
|
205
218
|
`;
|
|
219
|
+
const UNIFIED_ANALYSIS_INSTRUCTION = `
|
|
220
|
+
|
|
221
|
+
## Output Format
|
|
222
|
+
You MUST respond with a JSON object containing your complete analysis AND your response. The schema requires:
|
|
223
|
+
- intent: Classify the customer's primary intent (order_status, pricing_inquiry, availability_check, documentation_request, returns_damages, account_inquiry, product_sourcing, onboarding_help, complaint, feedback, general_question, or other)
|
|
224
|
+
- sentiment: Assess their emotional state (positive/neutral/negative) and urgency (low/medium/high/critical)
|
|
225
|
+
- entities: Extract order numbers, product names, SKUs, dates, amounts, person names, company names
|
|
226
|
+
- response: Your email response text and subject line, with tone (professional/empathetic/apologetic/enthusiastic)
|
|
227
|
+
- confidence: Your self-assessed confidence (0-1)
|
|
228
|
+
- escalation_needed: Whether a human should handle this instead
|
|
229
|
+
- brand_compliant: Whether your response follows all brand guidelines
|
|
230
|
+
|
|
231
|
+
Analyze the email comprehensively, then generate your response. Do NOT separate analysis from response generation — they should inform each other.`;
|
|
206
232
|
// =============================================================================
|
|
207
233
|
// Response Generation Service
|
|
208
234
|
// =============================================================================
|
|
@@ -238,7 +264,9 @@ export class ResponseGenerationService {
|
|
|
238
264
|
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
239
265
|
try {
|
|
240
266
|
// 1. Build the context prompt
|
|
241
|
-
const contextPrompt = this.buildContextPrompt(message, analysis, knowledge
|
|
267
|
+
const contextPrompt = this.buildContextPrompt(message, analysis, knowledge, {
|
|
268
|
+
threadHistory: options.threadHistory,
|
|
269
|
+
});
|
|
242
270
|
// 2. Generate response with Claude
|
|
243
271
|
const claudeResult = await this.callClaude(contextPrompt, analysis.sentiment.category);
|
|
244
272
|
const rawResponse = claudeResult.text;
|
|
@@ -305,10 +333,238 @@ export class ResponseGenerationService {
|
|
|
305
333
|
conversationId: message.conversationId,
|
|
306
334
|
});
|
|
307
335
|
}
|
|
336
|
+
/**
|
|
337
|
+
* Generate a unified response with analysis + response in a single structured-output call.
|
|
338
|
+
* Falls back to heuristic analysis + separate generation if the unified call fails.
|
|
339
|
+
*/
|
|
340
|
+
async generateUnifiedResponse(message, knowledge, options) {
|
|
341
|
+
const maxAttempts = options?.maxAttempts ?? 2;
|
|
342
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
343
|
+
try {
|
|
344
|
+
const contextPrompt = this.buildUnifiedContextPrompt(message, knowledge, {
|
|
345
|
+
threadHistory: options?.threadHistory,
|
|
346
|
+
});
|
|
347
|
+
const client = this.getClient();
|
|
348
|
+
const response = await client.messages.create({
|
|
349
|
+
model: this.effectiveConfig.claude.model,
|
|
350
|
+
max_tokens: this.effectiveConfig.claude.maxTokens,
|
|
351
|
+
system: [
|
|
352
|
+
{
|
|
353
|
+
type: 'text',
|
|
354
|
+
text: SYSTEM_PROMPT + UNIFIED_ANALYSIS_INSTRUCTION,
|
|
355
|
+
cache_control: { type: 'ephemeral' },
|
|
356
|
+
},
|
|
357
|
+
],
|
|
358
|
+
messages: [{ role: 'user', content: contextPrompt }],
|
|
359
|
+
output_config: { format: zodOutputFormat(SupportAgentOutputSchema) },
|
|
360
|
+
});
|
|
361
|
+
const textContent = response.content.find((c) => c.type === 'text');
|
|
362
|
+
if (!textContent || textContent.type !== 'text') {
|
|
363
|
+
throw new GenerationError('No text response from Claude unified call', 'llm_call');
|
|
364
|
+
}
|
|
365
|
+
const parsed = JSON.parse(textContent.text);
|
|
366
|
+
// Post-process: humanize and apply brand corrections
|
|
367
|
+
let processedText = applyBrandTerminologyCorrections(parsed.response.text);
|
|
368
|
+
processedText = humanizeResponse(processedText);
|
|
369
|
+
// Validate brand compliance
|
|
370
|
+
const validationResult = validateResponseForBrand(processedText, parsed.sentiment.category);
|
|
371
|
+
const brandCompliance = validationResult.canBeSent
|
|
372
|
+
? { status: 'compliant', score: validationResult.complianceCheck.score, checkedAt: new Date().toISOString() }
|
|
373
|
+
: { status: 'flagged', score: validationResult.complianceCheck.score, issues: validationResult.errors, checkedAt: new Date().toISOString() };
|
|
374
|
+
const tokenUsage = {
|
|
375
|
+
inputTokens: response.usage?.input_tokens ?? 0,
|
|
376
|
+
outputTokens: response.usage?.output_tokens ?? 0,
|
|
377
|
+
cacheReadTokens: response.usage?.cache_read_input_tokens ?? 0,
|
|
378
|
+
cacheCreationTokens: response.usage?.cache_creation_input_tokens ?? 0,
|
|
379
|
+
};
|
|
380
|
+
return {
|
|
381
|
+
analysis: {
|
|
382
|
+
intent: parsed.intent,
|
|
383
|
+
sentiment: parsed.sentiment,
|
|
384
|
+
entities: parsed.entities,
|
|
385
|
+
},
|
|
386
|
+
responseText: processedText,
|
|
387
|
+
responseSubject: parsed.response.subject,
|
|
388
|
+
brandCompliance,
|
|
389
|
+
confidence: parsed.confidence,
|
|
390
|
+
escalationNeeded: parsed.escalation_needed,
|
|
391
|
+
escalationReason: parsed.escalation_reason,
|
|
392
|
+
tokenUsage,
|
|
393
|
+
usedFallback: false,
|
|
394
|
+
};
|
|
395
|
+
}
|
|
396
|
+
catch (error) {
|
|
397
|
+
if (attempt === maxAttempts) {
|
|
398
|
+
console.warn('[Generation] Unified call failed, falling back to separate calls:', error);
|
|
399
|
+
return this.fallbackToSeparateCalls(message, knowledge, options);
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
// Should not reach here, but fallback just in case
|
|
404
|
+
return this.fallbackToSeparateCalls(message, knowledge, options);
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* Fallback: use heuristic analysis + separate generation call
|
|
408
|
+
*/
|
|
409
|
+
async fallbackToSeparateCalls(message, knowledge, options) {
|
|
410
|
+
// Use heuristic functions for analysis (no API calls)
|
|
411
|
+
const intent = classifyIntentHeuristic(message);
|
|
412
|
+
const sentiment = analyzeSentimentHeuristic(message);
|
|
413
|
+
const entities = extractEntitiesRegex(message);
|
|
414
|
+
// Build an AnalysisResult for the existing generateResponse
|
|
415
|
+
const analysis = {
|
|
416
|
+
messageId: message.id,
|
|
417
|
+
conversationId: message.conversationId ?? createConversationId('fallback'),
|
|
418
|
+
intent,
|
|
419
|
+
sentiment,
|
|
420
|
+
entities,
|
|
421
|
+
brandCompliance: { status: 'compliant', score: 100, checkedAt: new Date().toISOString() },
|
|
422
|
+
urgencyScore: sentiment.urgency === 'critical' ? 1.0 : sentiment.urgency === 'high' ? 0.75 : sentiment.urgency === 'medium' ? 0.5 : 0.25,
|
|
423
|
+
overallConfidence: intent.confidence * 0.75,
|
|
424
|
+
escalationRequired: false,
|
|
425
|
+
analyzedAt: new Date().toISOString(),
|
|
426
|
+
};
|
|
427
|
+
// Make a single generation call with heuristic analysis
|
|
428
|
+
const generated = await this.generateResponse(message, analysis, knowledge, {
|
|
429
|
+
threadHistory: options?.threadHistory,
|
|
430
|
+
});
|
|
431
|
+
return {
|
|
432
|
+
analysis: {
|
|
433
|
+
intent: {
|
|
434
|
+
primary: intent.primary,
|
|
435
|
+
secondary: intent.secondary ?? null,
|
|
436
|
+
confidence: intent.confidence,
|
|
437
|
+
reasoning: intent.reasoning ?? 'heuristic',
|
|
438
|
+
},
|
|
439
|
+
sentiment: {
|
|
440
|
+
category: sentiment.category,
|
|
441
|
+
score: sentiment.score,
|
|
442
|
+
urgency: sentiment.urgency,
|
|
443
|
+
urgency_signals: sentiment.urgencySignals ?? [],
|
|
444
|
+
},
|
|
445
|
+
entities: {
|
|
446
|
+
order_numbers: entities.orderNumbers ?? [],
|
|
447
|
+
product_names: entities.productNames ?? [],
|
|
448
|
+
product_skus: entities.productSkus ?? [],
|
|
449
|
+
monetary_amounts: entities.monetaryAmounts?.map(a => typeof a === 'string' ? a : `$${a.amount}`) ?? [],
|
|
450
|
+
person_names: entities.personNames ?? [],
|
|
451
|
+
company_names: entities.companyNames ?? [],
|
|
452
|
+
dates: entities.dates?.map(d => typeof d === 'string' ? d : d.raw) ?? [],
|
|
453
|
+
},
|
|
454
|
+
},
|
|
455
|
+
responseText: generated.content.text,
|
|
456
|
+
responseSubject: generated.content.subject ?? `Re: ${message.content.subject}`,
|
|
457
|
+
brandCompliance: generated.brandCompliance,
|
|
458
|
+
confidence: analysis.overallConfidence,
|
|
459
|
+
escalationNeeded: analysis.escalationRequired,
|
|
460
|
+
escalationReason: null,
|
|
461
|
+
tokenUsage: generated.metadata.tokenUsage ?? {
|
|
462
|
+
inputTokens: 0,
|
|
463
|
+
outputTokens: 0,
|
|
464
|
+
},
|
|
465
|
+
usedFallback: true,
|
|
466
|
+
};
|
|
467
|
+
}
|
|
468
|
+
/**
|
|
469
|
+
* Build context prompt for the unified pipeline (no analysis section, since Claude does its own)
|
|
470
|
+
*/
|
|
471
|
+
buildUnifiedContextPrompt(message, knowledge, options) {
|
|
472
|
+
const sections = [];
|
|
473
|
+
// Customer context
|
|
474
|
+
if (knowledge.customer) {
|
|
475
|
+
sections.push(`## Customer Information
|
|
476
|
+
- Company: ${knowledge.customer.companyName}
|
|
477
|
+
- Contact: ${knowledge.customer.contactName || 'N/A'}
|
|
478
|
+
- Status: ${knowledge.customer.accountStatus}
|
|
479
|
+
${knowledge.customer.tier ? `- Tier: ${knowledge.customer.tier}` : ''}`);
|
|
480
|
+
}
|
|
481
|
+
// Order context
|
|
482
|
+
if (knowledge.orders && knowledge.orders.length > 0) {
|
|
483
|
+
const orderList = knowledge.orders
|
|
484
|
+
.slice(0, 3)
|
|
485
|
+
.map((o) => `- Order ${o.orderNumber}: ${o.status} (${o.totalAmount ? `$${o.totalAmount}` : 'N/A'})`)
|
|
486
|
+
.join('\n');
|
|
487
|
+
sections.push(`## Recent Orders\n${orderList}`);
|
|
488
|
+
}
|
|
489
|
+
// Resolved invoice context
|
|
490
|
+
if (knowledge.resolvedInvoice) {
|
|
491
|
+
const inv = knowledge.resolvedInvoice.invoice;
|
|
492
|
+
const confidence = knowledge.resolvedInvoice.confidence;
|
|
493
|
+
const source = knowledge.resolvedInvoice.source;
|
|
494
|
+
let sourceExplanation = '';
|
|
495
|
+
if (source === 'extracted_number')
|
|
496
|
+
sourceExplanation = 'Invoice number found in their message.';
|
|
497
|
+
else if (source === 'single_unpaid')
|
|
498
|
+
sourceExplanation = 'This is their only unpaid invoice.';
|
|
499
|
+
else if (source === 'most_recent')
|
|
500
|
+
sourceExplanation = 'This is their most recent invoice (no unpaid invoices).';
|
|
501
|
+
const statusDisplay = inv.status === 'issued' ? 'Unpaid' : inv.status === 'paid' ? 'Paid' : inv.status;
|
|
502
|
+
const issuedDate = inv.issuedAt ? new Date(inv.issuedAt).toLocaleDateString() : 'N/A';
|
|
503
|
+
const dueDate = inv.dueAt ? new Date(inv.dueAt).toLocaleDateString() : 'N/A';
|
|
504
|
+
const paidDate = inv.paidAt ? new Date(inv.paidAt).toLocaleDateString() : null;
|
|
505
|
+
sections.push(`## Identified Invoice
|
|
506
|
+
The customer is asking about this invoice (${confidence} confidence - ${sourceExplanation}):
|
|
507
|
+
- Invoice #: ${inv.invoiceNumber || inv.invoiceId}
|
|
508
|
+
- Amount: $${inv.total.toFixed(2)}
|
|
509
|
+
- Status: ${statusDisplay}
|
|
510
|
+
- Issued: ${issuedDate}
|
|
511
|
+
- Due: ${dueDate}${paidDate ? `\n- Paid: ${paidDate}` : ''}
|
|
512
|
+
|
|
513
|
+
IMPORTANT: Do NOT ask the customer for their invoice number - we have already identified it.`);
|
|
514
|
+
}
|
|
515
|
+
// Product context
|
|
516
|
+
if (knowledge.products && knowledge.products.length > 0) {
|
|
517
|
+
const productList = knowledge.products
|
|
518
|
+
.slice(0, 3)
|
|
519
|
+
.map((p) => `- ${p.name} (${p.sku}): ${p.availability}${p.price ? ` - $${p.price}` : ''}`)
|
|
520
|
+
.join('\n');
|
|
521
|
+
sections.push(`## Relevant Products\n${productList}`);
|
|
522
|
+
}
|
|
523
|
+
// Similar past conversations
|
|
524
|
+
if (knowledge.similarConversations && knowledge.similarConversations.length > 0) {
|
|
525
|
+
const examples = knowledge.similarConversations
|
|
526
|
+
.slice(0, 3)
|
|
527
|
+
.map((conv, index) => {
|
|
528
|
+
const parts = [`### Example ${index + 1} (similarity: ${(conv.similarity * 100).toFixed(0)}%)`];
|
|
529
|
+
parts.push(`**Customer Question:** ${conv.summary}`);
|
|
530
|
+
if (conv.successfulResponse) {
|
|
531
|
+
const preview = conv.successfulResponse.length > 300
|
|
532
|
+
? conv.successfulResponse.substring(0, 300) + '...'
|
|
533
|
+
: conv.successfulResponse;
|
|
534
|
+
parts.push(`**Successful Response:** ${preview}`);
|
|
535
|
+
}
|
|
536
|
+
parts.push(`**Outcome:** ${conv.resolution.replace(/_/g, ' ')}`);
|
|
537
|
+
return parts.join('\n');
|
|
538
|
+
})
|
|
539
|
+
.join('\n\n');
|
|
540
|
+
sections.push(`## Similar Past Conversations\n${examples}`);
|
|
541
|
+
}
|
|
542
|
+
// Thread history
|
|
543
|
+
if (options?.threadHistory && options.threadHistory.length > 0) {
|
|
544
|
+
const threadSection = options.threadHistory
|
|
545
|
+
.slice(-3)
|
|
546
|
+
.map(msg => {
|
|
547
|
+
const role = msg.from === 'agent'
|
|
548
|
+
? `From: ${msg.fromName || 'Charlie Kline'} (Catalist)`
|
|
549
|
+
: `From: ${msg.fromName || 'Customer'}`;
|
|
550
|
+
const date = new Date(msg.timestamp).toLocaleDateString('en-US', {
|
|
551
|
+
month: 'short', day: 'numeric', hour: '2-digit', minute: '2-digit',
|
|
552
|
+
});
|
|
553
|
+
const truncatedBody = msg.body.split(/\s+/).slice(0, 500).join(' ');
|
|
554
|
+
return `[${date}] ${role}\n${truncatedBody}`;
|
|
555
|
+
})
|
|
556
|
+
.join('\n---\n');
|
|
557
|
+
sections.push(`## Previous Thread Messages (newest last)\n${threadSection}`);
|
|
558
|
+
}
|
|
559
|
+
// Customer message (always last)
|
|
560
|
+
sections.push(`## Customer Message
|
|
561
|
+
${message.content.subject ? `Subject: ${message.content.subject}\n` : ''}${message.content.text}`);
|
|
562
|
+
return sections.join('\n\n');
|
|
563
|
+
}
|
|
308
564
|
/**
|
|
309
565
|
* Build context prompt for Claude
|
|
310
566
|
*/
|
|
311
|
-
buildContextPrompt(message, analysis, knowledge) {
|
|
567
|
+
buildContextPrompt(message, analysis, knowledge, options) {
|
|
312
568
|
const sections = [];
|
|
313
569
|
// Customer context
|
|
314
570
|
if (knowledge.customer) {
|
|
@@ -404,6 +660,24 @@ Consider using elements from this approved template:
|
|
|
404
660
|
"${template.content.substring(0, 200)}..."`);
|
|
405
661
|
}
|
|
406
662
|
}
|
|
663
|
+
// Thread history (before current message for context)
|
|
664
|
+
if (options?.threadHistory && options.threadHistory.length > 0) {
|
|
665
|
+
const threadSection = options.threadHistory
|
|
666
|
+
.slice(-3) // Last 3 messages only
|
|
667
|
+
.map(msg => {
|
|
668
|
+
const role = msg.from === 'agent'
|
|
669
|
+
? `From: ${msg.fromName || 'Charlie Kline'} (Catalist)`
|
|
670
|
+
: `From: ${msg.fromName || 'Customer'}`;
|
|
671
|
+
const date = new Date(msg.timestamp).toLocaleDateString('en-US', {
|
|
672
|
+
month: 'short', day: 'numeric', hour: '2-digit', minute: '2-digit',
|
|
673
|
+
});
|
|
674
|
+
// Truncate each message to ~500 words
|
|
675
|
+
const truncatedBody = msg.body.split(/\s+/).slice(0, 500).join(' ');
|
|
676
|
+
return `[${date}] ${role}\n${truncatedBody}`;
|
|
677
|
+
})
|
|
678
|
+
.join('\n---\n');
|
|
679
|
+
sections.push(`## Previous Thread Messages (newest last)\n${threadSection}`);
|
|
680
|
+
}
|
|
407
681
|
// Original message (always last for clear reference)
|
|
408
682
|
sections.push(`## Customer Message
|
|
409
683
|
${message.content.subject ? `Subject: ${message.content.subject}\n` : ''}${message.content.text}`);
|
|
@@ -691,6 +965,12 @@ export function getResponseGenerationService(configOverride) {
|
|
|
691
965
|
export async function generateResponse(message, analysis, knowledge, options) {
|
|
692
966
|
return getResponseGenerationService().generateResponse(message, analysis, knowledge, options);
|
|
693
967
|
}
|
|
968
|
+
/**
|
|
969
|
+
* Generate a unified response (analysis + response in one call)
|
|
970
|
+
*/
|
|
971
|
+
export async function generateUnifiedResponse(message, knowledge, options) {
|
|
972
|
+
return getResponseGenerationService().generateUnifiedResponse(message, knowledge, options);
|
|
973
|
+
}
|
|
694
974
|
/**
|
|
695
975
|
* Check if response is ready to send
|
|
696
976
|
*/
|
|
@@ -706,5 +986,5 @@ export function isResponseReadyToSend(response) {
|
|
|
706
986
|
* This is the single source of truth for agent behavior.
|
|
707
987
|
* DO NOT copy this - always import from this module.
|
|
708
988
|
*/
|
|
709
|
-
export { SYSTEM_PROMPT };
|
|
989
|
+
export { SYSTEM_PROMPT, UNIFIED_ANALYSIS_INSTRUCTION };
|
|
710
990
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generation/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generation/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Response Schema for Structured Output
|
|
3
|
+
*
|
|
4
|
+
* Defines the Zod schema for the consolidated single-call pipeline.
|
|
5
|
+
* Claude returns this JSON structure containing analysis + response in one call.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Schema for the unified support agent output.
|
|
10
|
+
* This combines intent classification, sentiment analysis, entity extraction,
|
|
11
|
+
* and response generation into a single structured output.
|
|
12
|
+
*/
|
|
13
|
+
export declare const SupportAgentOutputSchema: z.ZodObject<{
|
|
14
|
+
intent: z.ZodObject<{
|
|
15
|
+
primary: z.ZodEnum<{
|
|
16
|
+
order_status: "order_status";
|
|
17
|
+
pricing_inquiry: "pricing_inquiry";
|
|
18
|
+
availability_check: "availability_check";
|
|
19
|
+
documentation_request: "documentation_request";
|
|
20
|
+
returns_damages: "returns_damages";
|
|
21
|
+
account_inquiry: "account_inquiry";
|
|
22
|
+
product_sourcing: "product_sourcing";
|
|
23
|
+
onboarding_help: "onboarding_help";
|
|
24
|
+
complaint: "complaint";
|
|
25
|
+
feedback: "feedback";
|
|
26
|
+
general_question: "general_question";
|
|
27
|
+
other: "other";
|
|
28
|
+
}>;
|
|
29
|
+
secondary: z.ZodNullable<z.ZodEnum<{
|
|
30
|
+
order_status: "order_status";
|
|
31
|
+
pricing_inquiry: "pricing_inquiry";
|
|
32
|
+
availability_check: "availability_check";
|
|
33
|
+
documentation_request: "documentation_request";
|
|
34
|
+
returns_damages: "returns_damages";
|
|
35
|
+
account_inquiry: "account_inquiry";
|
|
36
|
+
product_sourcing: "product_sourcing";
|
|
37
|
+
onboarding_help: "onboarding_help";
|
|
38
|
+
complaint: "complaint";
|
|
39
|
+
feedback: "feedback";
|
|
40
|
+
general_question: "general_question";
|
|
41
|
+
other: "other";
|
|
42
|
+
}>>;
|
|
43
|
+
confidence: z.ZodNumber;
|
|
44
|
+
reasoning: z.ZodString;
|
|
45
|
+
}, z.core.$strip>;
|
|
46
|
+
sentiment: z.ZodObject<{
|
|
47
|
+
category: z.ZodEnum<{
|
|
48
|
+
positive: "positive";
|
|
49
|
+
neutral: "neutral";
|
|
50
|
+
negative: "negative";
|
|
51
|
+
}>;
|
|
52
|
+
score: z.ZodNumber;
|
|
53
|
+
urgency: z.ZodEnum<{
|
|
54
|
+
critical: "critical";
|
|
55
|
+
high: "high";
|
|
56
|
+
medium: "medium";
|
|
57
|
+
low: "low";
|
|
58
|
+
}>;
|
|
59
|
+
urgency_signals: z.ZodArray<z.ZodString>;
|
|
60
|
+
}, z.core.$strip>;
|
|
61
|
+
entities: z.ZodObject<{
|
|
62
|
+
order_numbers: z.ZodArray<z.ZodString>;
|
|
63
|
+
product_names: z.ZodArray<z.ZodString>;
|
|
64
|
+
product_skus: z.ZodArray<z.ZodString>;
|
|
65
|
+
monetary_amounts: z.ZodArray<z.ZodString>;
|
|
66
|
+
person_names: z.ZodArray<z.ZodString>;
|
|
67
|
+
company_names: z.ZodArray<z.ZodString>;
|
|
68
|
+
dates: z.ZodArray<z.ZodString>;
|
|
69
|
+
}, z.core.$strip>;
|
|
70
|
+
response: z.ZodObject<{
|
|
71
|
+
text: z.ZodString;
|
|
72
|
+
subject: z.ZodString;
|
|
73
|
+
tone: z.ZodEnum<{
|
|
74
|
+
professional: "professional";
|
|
75
|
+
empathetic: "empathetic";
|
|
76
|
+
apologetic: "apologetic";
|
|
77
|
+
enthusiastic: "enthusiastic";
|
|
78
|
+
}>;
|
|
79
|
+
}, z.core.$strip>;
|
|
80
|
+
confidence: z.ZodNumber;
|
|
81
|
+
escalation_needed: z.ZodBoolean;
|
|
82
|
+
escalation_reason: z.ZodNullable<z.ZodString>;
|
|
83
|
+
brand_compliant: z.ZodBoolean;
|
|
84
|
+
compliance_notes: z.ZodNullable<z.ZodString>;
|
|
85
|
+
}, z.core.$strip>;
|
|
86
|
+
export type SupportAgentOutput = z.infer<typeof SupportAgentOutputSchema>;
|
|
87
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/generation/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmEnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Response Schema for Structured Output
|
|
3
|
+
*
|
|
4
|
+
* Defines the Zod schema for the consolidated single-call pipeline.
|
|
5
|
+
* Claude returns this JSON structure containing analysis + response in one call.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Schema for the unified support agent output.
|
|
10
|
+
* This combines intent classification, sentiment analysis, entity extraction,
|
|
11
|
+
* and response generation into a single structured output.
|
|
12
|
+
*/
|
|
13
|
+
export const SupportAgentOutputSchema = z.object({
|
|
14
|
+
// Intent classification
|
|
15
|
+
intent: z.object({
|
|
16
|
+
primary: z.enum([
|
|
17
|
+
'order_status',
|
|
18
|
+
'pricing_inquiry',
|
|
19
|
+
'availability_check',
|
|
20
|
+
'documentation_request',
|
|
21
|
+
'returns_damages',
|
|
22
|
+
'account_inquiry',
|
|
23
|
+
'product_sourcing',
|
|
24
|
+
'onboarding_help',
|
|
25
|
+
'complaint',
|
|
26
|
+
'feedback',
|
|
27
|
+
'general_question',
|
|
28
|
+
'other',
|
|
29
|
+
]),
|
|
30
|
+
secondary: z.enum([
|
|
31
|
+
'order_status',
|
|
32
|
+
'pricing_inquiry',
|
|
33
|
+
'availability_check',
|
|
34
|
+
'documentation_request',
|
|
35
|
+
'returns_damages',
|
|
36
|
+
'account_inquiry',
|
|
37
|
+
'product_sourcing',
|
|
38
|
+
'onboarding_help',
|
|
39
|
+
'complaint',
|
|
40
|
+
'feedback',
|
|
41
|
+
'general_question',
|
|
42
|
+
'other',
|
|
43
|
+
]).nullable(),
|
|
44
|
+
confidence: z.number().min(0).max(1),
|
|
45
|
+
reasoning: z.string(),
|
|
46
|
+
}),
|
|
47
|
+
// Sentiment analysis
|
|
48
|
+
sentiment: z.object({
|
|
49
|
+
category: z.enum(['positive', 'neutral', 'negative']),
|
|
50
|
+
score: z.number().min(-1).max(1),
|
|
51
|
+
urgency: z.enum(['low', 'medium', 'high', 'critical']),
|
|
52
|
+
urgency_signals: z.array(z.string()),
|
|
53
|
+
}),
|
|
54
|
+
// Entity extraction
|
|
55
|
+
entities: z.object({
|
|
56
|
+
order_numbers: z.array(z.string()),
|
|
57
|
+
product_names: z.array(z.string()),
|
|
58
|
+
product_skus: z.array(z.string()),
|
|
59
|
+
monetary_amounts: z.array(z.string()),
|
|
60
|
+
person_names: z.array(z.string()),
|
|
61
|
+
company_names: z.array(z.string()),
|
|
62
|
+
dates: z.array(z.string()),
|
|
63
|
+
}),
|
|
64
|
+
// Response generation
|
|
65
|
+
response: z.object({
|
|
66
|
+
text: z.string(),
|
|
67
|
+
subject: z.string(),
|
|
68
|
+
tone: z.enum(['professional', 'empathetic', 'apologetic', 'enthusiastic']),
|
|
69
|
+
}),
|
|
70
|
+
// Self-assessment
|
|
71
|
+
confidence: z.number().min(0).max(1),
|
|
72
|
+
escalation_needed: z.boolean(),
|
|
73
|
+
escalation_reason: z.string().nullable(),
|
|
74
|
+
brand_compliant: z.boolean(),
|
|
75
|
+
compliance_notes: z.string().nullable(),
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/generation/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -19,13 +19,13 @@
|
|
|
19
19
|
* competitor pricing discussions is automatically escalated to humans.
|
|
20
20
|
*/
|
|
21
21
|
export { config, createConfig, getAllForbiddenTerms, isChannelEnabled, getEscalationChannels, getSlaTarget, validateAuthentication, classifyConfidence, shouldEscalateByConfidence, isAutonomousResponseAllowed, type Config, type CreateConfigOptions, type AuthenticationMode, type AuthenticationStatus, type ConfidenceLevel, } from './config.js';
|
|
22
|
-
export { type ConversationId, type MessageId, type CustomerId, type EscalationId, type ResponseId, type DeliveryId, createConversationId, createMessageId, createCustomerId, createEscalationId, createResponseId, createDeliveryId, type SupportChannel, type MessageDirection, type ConversationState, type DeliveryStatus, type BrandComplianceStatus, type IntentCategory, type SentimentCategory, type UrgencyLevel, type EscalationTrigger, type EscalationSeverity, type BounceType, type ResolutionType, getConversationStatus, isDeliverySuccessful, canRetryDelivery, isBrandCompliant, type InboundMessage, type SenderInfo, type ChannelMetadata, type EmailMetadata, type SmsMetadata, type SlackMetadata, type Attachment, type AnalysisResult, type IntentClassification, type SentimentAnalysis, type ExtractedEntities, type ExtractedDate, type MonetaryAmount, type KnowledgeContext, type CustomerContext, type ProductContext, type OrderContext, type InvoiceContext, type ResolvedInvoice, type PolicyContext, type SimilarConversation, type ResponseTemplate, type GeneratedResponse, type ChannelFormatting, type Citation, type EscalationContext, type EscalationResult, type EscalationDelivery, type Conversation, type ConversationRecord, type MessageRecord, type AnalysisRecord, type ResponseRecord, type EscalationRecord, type DeliveryRecord, } from './types.js';
|
|
22
|
+
export { type ConversationId, type MessageId, type CustomerId, type EscalationId, type ResponseId, type DeliveryId, createConversationId, createMessageId, createCustomerId, createEscalationId, createResponseId, createDeliveryId, type SupportChannel, type MessageDirection, type ConversationState, type DeliveryStatus, type BrandComplianceStatus, type IntentCategory, type SentimentCategory, type UrgencyLevel, type EscalationTrigger, type EscalationSeverity, type BounceType, type ResolutionType, getConversationStatus, isDeliverySuccessful, canRetryDelivery, isBrandCompliant, type InboundMessage, type SenderInfo, type ChannelMetadata, type EmailMetadata, type SmsMetadata, type SlackMetadata, type Attachment, type AnalysisResult, type IntentClassification, type SentimentAnalysis, type ExtractedEntities, type ExtractedDate, type MonetaryAmount, type KnowledgeContext, type CustomerContext, type ProductContext, type OrderContext, type InvoiceContext, type ResolvedInvoice, type PolicyContext, type SimilarConversation, type ResponseTemplate, type GeneratedResponse, type UnifiedResponse, type UnifiedAnalysis, type ChannelFormatting, type Citation, type EscalationContext, type EscalationResult, type EscalationDelivery, type Conversation, type ConversationRecord, type MessageRecord, type AnalysisRecord, type ResponseRecord, type EscalationRecord, type DeliveryRecord, } from './types.js';
|
|
23
23
|
export { SupportAgentError, IntakeError, WebhookValidationError, DuplicateMessageError, AnalysisError, IntentClassificationError, KnowledgeError, CustomerNotFoundError, GenerationError, ResponseQualityError, DeliveryError, PermanentDeliveryFailure, EscalationError, AllEscalationChannelsFailedError, BrandComplianceError, ForbiddenTermsDetectedError, DatabaseError, EmbeddingError, TimeoutError, isSupportAgentError, isIntakeError, isAnalysisError, isKnowledgeError, isGenerationError, isDeliveryError, isEscalationError, isBrandComplianceError, isDatabaseError, isTimeoutError, isEmbeddingError, isRecoverableError, toSupportAgentError, getErrorMessage, shouldRetry, requiresImmediateEscalation, type DeliveryChannel, type EscalationChannel, type EmbeddingErrorType, } from './errors.js';
|
|
24
24
|
export { ForbiddenTermsDetector, BrandTerminologyEnforcer, BrandComplianceChecker, performBrandTest, checkBrandCompliance, scanMessageContent, createComplianceStatusFromScan, requiresEscalationForForbiddenTerms, validateResponseForBrand, applyBrandTerminologyCorrections, getBrandVoiceGuidelines, getDefaultDetector, getDefaultChecker, containsForbiddenTerms, scanForForbiddenTerms, scanForForbiddenTermsDetailed, type ForbiddenTermMatch, type ForbiddenTermsScanResult, type TerminologyCorrection, type BrandComplianceCheckResult, type ResponseValidationResult, } from './brand/index.js';
|
|
25
25
|
export { MessageNormalizer, getMessageNormalizer, normalizePostmarkEmail, normalizeTwilioSms, normalizeSlackMessage, generateContentHash, extractThreadIdentifier, getSenderIdentifier, normalizePhoneNumber, validateMessageContent, scanAndAnnotateMessage, type PostmarkInboundEmail, type TwilioInboundSms, type SlackMessageEvent, type SlackEventWrapper, validatePostmarkWebhook, processPostmarkEmail, handlePostmarkInbound, isAutoReply, isLikelySpam, classifyEmail, extractEmailThread, extractQuotedContent, type PostmarkWebhookPayload, type PostmarkProcessResult, validateTwilioSignature, validateTwilioWebhook, parseTwilioBody, processTwilioSms, handleTwilioInbound, isOptOutMessage, isHelpRequest, classifySms, hasMmsAttachments, extractMmsMedia, extractCountryCode, isNorthAmericanNumber, generateTwimlResponse, generateOptOutResponse, generateHelpResponse, type TwilioProcessResult, validateSlackSignature, validateSlackWebhook, isUrlVerification, isMessageEvent, isDirectMessage, isBotMessage, processSlackMessage, handleSlackEvent, extractMentions, extractChannelReferences, extractLinks, cleanSlackText, isB2BCustomerChannel, shouldProcessSlackMessage, formatForSlack, generateSlackBlocks, type SlackProcessResult, type SlackUrlVerification, } from './intake/index.js';
|
|
26
26
|
export { analyzeMessage, type AnalysisPipelineOptions, IntentClassificationService, getIntentClassificationService, classifyIntent, classifyIntentHeuristic, getIntentDescription, isHighPriorityIntent, isAutonomouslyHandleableIntent, SentimentAnalysisService, getSentimentAnalysisService, analyzeSentiment, analyzeSentimentHeuristic, shouldConsiderEscalationBySentiment, getUrgencyScore, combineUrgency, EntityExtractionService, getEntityExtractionService, extractEntities, extractEntitiesRegex, mergeEntities, hasOrderReference, hasProductReference, getPrimaryOrderNumber, getTotalAmount, } from './analysis/index.js';
|
|
27
27
|
export { KnowledgeRetrievalService, getKnowledgeRetrievalService, getKnowledgeService, retrieveKnowledge, hassufficientContext, calculateContextConfidence, } from './knowledge/index.js';
|
|
28
|
-
export { ResponseGenerationService, getResponseGenerationService, generateResponse, humanizeResponse, isResponseReadyToSend, SYSTEM_PROMPT, } from './generation/index.js';
|
|
28
|
+
export { ResponseGenerationService, getResponseGenerationService, generateResponse, generateUnifiedResponse, humanizeResponse, isResponseReadyToSend, SYSTEM_PROMPT, UNIFIED_ANALYSIS_INSTRUCTION, } from './generation/index.js';
|
|
29
29
|
export { EscalationService, getEscalationService, buildEscalationContext, shouldEscalate, containsHumanRequest, } from './escalation/index.js';
|
|
30
30
|
export { DeliveryService, getDeliveryService, type RecipientInfo, type DeliveryResult, } from './delivery/index.js';
|
|
31
31
|
export declare const VERSION = "1.0.0";
|
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":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAMH,OAAO,EACL,MAAM,EACN,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,sBAAsB,EACtB,kBAAkB,EAClB,0BAA0B,EAC1B,2BAA2B,EAC3B,KAAK,MAAM,EACX,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,aAAa,CAAC;AAMrB,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAGhB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,cAAc,EAGnB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAGhB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAGjB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,YAAY,CAAC;AAMpB,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EACb,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,eAAe,EACf,gCAAgC,EAChC,oBAAoB,EACpB,2BAA2B,EAC3B,aAAa,EACb,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,2BAA2B,EAC3B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,aAAa,CAAC;AAMrB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,8BAA8B,EAC9B,mCAAmC,EACnC,wBAAwB,EACxB,gCAAgC,EAChC,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,EAC7B,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,GAC9B,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAEL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EAGtB,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAG1B,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,KAAK,mBAAmB,EAGxB,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,yBAAyB,EACzB,cAAc,EACd,mBAAmB,EACnB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EAEL,cAAc,EACd,KAAK,uBAAuB,EAG5B,2BAA2B,EAC3B,8BAA8B,EAC9B,cAAc,EACd,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,8BAA8B,EAG9B,wBAAwB,EACxB,2BAA2B,EAC3B,gBAAgB,EAChB,yBAAyB,EACzB,mCAAmC,EACnC,eAAe,EACf,cAAc,EAGd,uBAAuB,EACvB,0BAA0B,EAC1B,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAM/B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAM/B,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,qBAAqB,CAAC;AAM7B,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,QAAQ,2BAA2B,CAAC;AAMjD,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EAGf,MAAM,YAAY,CAAC;AAQpB;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uCAAuC;IACvC,QAAQ,EAAE,cAAc,CAAC;IACzB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,sCAAsC;IACtC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,gBAAgB,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,cAAc,EAAE,cAAc,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,4DAA4D;IAC5D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,OAAO,CAAC;IAC1C,qDAAqD;IACrD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8CAA8C;IAC9C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiBD;;;;;;;;;;GAUG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAS;IAE5B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,cAAc,EACvB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,aAAa,CAAC;CAoG1B;AAQD;;GAEG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAK9C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAEjD"}
|
package/dist/index.js
CHANGED
|
@@ -67,7 +67,7 @@ export { KnowledgeRetrievalService, getKnowledgeRetrievalService, getKnowledgeSe
|
|
|
67
67
|
// =============================================================================
|
|
68
68
|
// Response Generation
|
|
69
69
|
// =============================================================================
|
|
70
|
-
export { ResponseGenerationService, getResponseGenerationService, generateResponse, humanizeResponse, isResponseReadyToSend, SYSTEM_PROMPT, } from './generation/index.js';
|
|
70
|
+
export { ResponseGenerationService, getResponseGenerationService, generateResponse, generateUnifiedResponse, humanizeResponse, isResponseReadyToSend, SYSTEM_PROMPT, UNIFIED_ANALYSIS_INSTRUCTION, } from './generation/index.js';
|
|
71
71
|
// =============================================================================
|
|
72
72
|
// Escalation System
|
|
73
73
|
// =============================================================================
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,OAAO,EACL,MAAM,EACN,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,sBAAsB,EACtB,kBAAkB,EAClB,0BAA0B,EAC1B,2BAA2B,GAM5B,MAAM,aAAa,CAAC;AAErB,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,OAAO,EAQL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB;AAgBhB,mBAAmB;AACnB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -258,6 +258,45 @@ export interface Citation {
|
|
|
258
258
|
reference: string;
|
|
259
259
|
context?: string;
|
|
260
260
|
}
|
|
261
|
+
export interface UnifiedAnalysis {
|
|
262
|
+
intent: {
|
|
263
|
+
primary: string;
|
|
264
|
+
secondary: string | null;
|
|
265
|
+
confidence: number;
|
|
266
|
+
reasoning: string;
|
|
267
|
+
};
|
|
268
|
+
sentiment: {
|
|
269
|
+
category: string;
|
|
270
|
+
score: number;
|
|
271
|
+
urgency: string;
|
|
272
|
+
urgency_signals: string[];
|
|
273
|
+
};
|
|
274
|
+
entities: {
|
|
275
|
+
order_numbers: string[];
|
|
276
|
+
product_names: string[];
|
|
277
|
+
product_skus: string[];
|
|
278
|
+
monetary_amounts: string[];
|
|
279
|
+
person_names: string[];
|
|
280
|
+
company_names: string[];
|
|
281
|
+
dates: string[];
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
export interface UnifiedResponse {
|
|
285
|
+
analysis: UnifiedAnalysis;
|
|
286
|
+
responseText: string;
|
|
287
|
+
responseSubject: string;
|
|
288
|
+
brandCompliance: BrandComplianceStatus | null;
|
|
289
|
+
confidence: number;
|
|
290
|
+
escalationNeeded: boolean;
|
|
291
|
+
escalationReason: string | null;
|
|
292
|
+
tokenUsage: {
|
|
293
|
+
inputTokens: number;
|
|
294
|
+
outputTokens: number;
|
|
295
|
+
cacheReadTokens?: number;
|
|
296
|
+
cacheCreationTokens?: number;
|
|
297
|
+
};
|
|
298
|
+
usedFallback: boolean;
|
|
299
|
+
}
|
|
261
300
|
export interface AnalysisResult {
|
|
262
301
|
messageId: MessageId;
|
|
263
302
|
conversationId: ConversationId;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|