@versini/sassysaint-common 4.39.0 → 4.39.2
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/index.d.ts +30 -3
- package/dist/index.js +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -416,6 +416,25 @@ export declare const MAX_OUTPUT_TOKENS = 16384;
|
|
|
416
416
|
|
|
417
417
|
export declare const MAX_SEARCH_QUERIES = 5;
|
|
418
418
|
|
|
419
|
+
export declare const MODEL_AUTO_RESPONDER_ANTHROPIC = "claude-sonnet-4-6";
|
|
420
|
+
|
|
421
|
+
export declare const MODEL_AUTO_RESPONDER_GOOGLE = "gemini-3-flash-preview";
|
|
422
|
+
|
|
423
|
+
/**
|
|
424
|
+
* Responder models for the Auto router's lower ("cheap") tier. Distinct from
|
|
425
|
+
* the classifier models above: these are the models that actually answer the
|
|
426
|
+
* user, so they MUST be tool-capable. The minimal tier (nano / haiku) cannot
|
|
427
|
+
* call tools, which breaks tool continuity — once a conversation has used a
|
|
428
|
+
* tool, a tool-less follow-up model derails the flow. So the lower tier uses
|
|
429
|
+
* the provider's mid model instead of its smallest:
|
|
430
|
+
* - OpenAI: gpt-5.4-mini (premium tier stays gpt-5.4)
|
|
431
|
+
* - Anthropic: claude-sonnet (premium tier stays claude-opus)
|
|
432
|
+
* - Google: gemini-flash (premium tier stays gemini-pro; Google has no
|
|
433
|
+
* tier between Flash and Pro, and Flash is already tool-capable)
|
|
434
|
+
* The premium tier always falls through to the plan-default top model.
|
|
435
|
+
*/
|
|
436
|
+
export declare const MODEL_AUTO_RESPONDER_OPENAI = "gpt-5.4-mini";
|
|
437
|
+
|
|
419
438
|
export declare const MODEL_AUTO_ROUTER_ANTHROPIC = "claude-haiku-4-5";
|
|
420
439
|
|
|
421
440
|
export declare const MODEL_AUTO_ROUTER_GOOGLE = "gemini-3-flash-preview";
|
|
@@ -424,8 +443,9 @@ export declare const MODEL_AUTO_ROUTER_GOOGLE = "gemini-3-flash-preview";
|
|
|
424
443
|
* Classifier models used by the Auto routing feature. One per real provider
|
|
425
444
|
* to preserve brand-loyalty (Anthropic-preferred users get an Anthropic
|
|
426
445
|
* classifier, etc.) and to let provider-native prompt caching hit on the
|
|
427
|
-
* classifier system prompt.
|
|
428
|
-
*
|
|
446
|
+
* classifier system prompt. These are the cheapest models per provider — the
|
|
447
|
+
* classifier only emits a small JSON object, so it never needs tools and the
|
|
448
|
+
* minimal tier keeps latency under the hard timeout and cost negligible.
|
|
429
449
|
*/
|
|
430
450
|
export declare const MODEL_AUTO_ROUTER_OPENAI = "gpt-5.4-nano";
|
|
431
451
|
|
|
@@ -557,7 +577,14 @@ export declare const ROLE_SYSTEM = "system";
|
|
|
557
577
|
|
|
558
578
|
export declare const ROLE_USER = "user";
|
|
559
579
|
|
|
560
|
-
|
|
580
|
+
/**
|
|
581
|
+
* Per-sub-query deadline for the parallel search fan-out. sonar-pro routinely
|
|
582
|
+
* takes 14-22s to answer a decomposed query (it runs its own search + synthesis
|
|
583
|
+
* with medium context), so a tighter bound kills every sub-query before the
|
|
584
|
+
* provider responds and the whole search reports a false failure. 30s leaves
|
|
585
|
+
* headroom over the observed tail while still bounding a genuinely hung request.
|
|
586
|
+
*/
|
|
587
|
+
export declare const SEARCH_QUERY_TIMEOUT_MS = 30000;
|
|
561
588
|
|
|
562
589
|
/**
|
|
563
590
|
* Sort capabilities are shared across client and server.
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,E=((e={})[e.NewChat=0]="NewChat",e[e.Prompts=1]="Prompts",e[e.Attachment=2]="Attachment",e[e.PrivateChat=3]="PrivateChat",e[e.Reasoning=4]="Reasoning",e[e.Send=5]="Send",e[e.Header=6]="Header",e[e.Provider=7]="Provider",e[e.Logo=8]="Logo",e[e.Placeholder=9]="Placeholder",e[e.Footer=10]="Footer",e);let O="user",t="assistant",
|
|
1
|
+
var e,E=((e={})[e.NewChat=0]="NewChat",e[e.Prompts=1]="Prompts",e[e.Attachment=2]="Attachment",e[e.PrivateChat=3]="PrivateChat",e[e.Reasoning=4]="Reasoning",e[e.Send=5]="Send",e[e.Header=6]="Header",e[e.Provider=7]="Provider",e[e.Logo=8]="Logo",e[e.Placeholder=9]="Placeholder",e[e.Footer=10]="Footer",e);let O="user",t="assistant",_="OpenAI",r="Anthropic",n="Google",a="Summary",R="Perplexity",o="Mistral",i=[_,r,n],s="gpt-5.4",T="gpt-5.4-mini",A="gpt-5.4-nano",I="claude-opus-4-8",S="claude-sonnet-4-6",L="claude-haiku-4-5",M="gemini-3-flash-preview",P="gemini-3.1-pro-preview",N="sonar",D="sonar-pro",l="openai/gpt-oss-20b:free",g="mistral-large-latest",c="gpt-5.4-nano",d="gpt-5.4-nano",C="gpt-5.4-mini",u="text-embedding-3-small",U="gemini-3-pro-image",h=A,G=L,p=M,m=T,H=S,f=M,y={[s]:"GPT-5.4",[T]:"GPT-5.4 Mini",[A]:"GPT-5.4 Nano",[I]:"Claude Opus 4.8",[S]:"Claude Sonnet 4.6",[L]:"Claude Haiku 4.5",[P]:"Gemini 3.1 Pro",[M]:"Gemini 3 Flash",[N]:"Sonar",[D]:"Sonar Pro",[U]:"Nano Banana 3 Pro",[g]:"Mistral Large"},V=[s,T,A,I,S,L,M,P,U],B=[s,T,A,I,S,P],Y={[_]:[s,T,A],[r]:[I,L,S],[n]:[M,P],[R]:[N,D]},F={[_]:["system",O,t],[r]:[O,t],[a]:[O,t],Memory:[O,t],[n]:[O,t],[R]:[O,t],[o]:[O,t]},v={[r]:["claude-opus-4","claude-sonnet-4","claude-haiku-4","claude-3"],[_]:["gpt-","o3","o4"],[n]:["gemini"],[R]:["sonar"],[o]:["mistral"]},w="x-diggidy-chat-id",X="x-diggidy-chat-timestamp",b="timestamp",k="tokenUsage",K="Diggidy",x="sassy:basic",W="sassy:plus",z="sassy:advanced",Q={TOOL:{BARCODE:"getProductByBarcode",BUNDLESIZE:"getBundleSize",DATETIME:"getDateTime",GENERATE_IMAGE:"generateImage",IMAGES:"getImages",NUTRITION_FACTS:"getNutritionFacts",POLLUTION:"getAirPollution",WEATHER:"getWeather",URLCONTENTPARSER:"getUrlContent",MEMORIES:"getUserMemories",HUMANIZE:"humanize",WEBSEARCH:"getWebSearch",GITREPOSITORY:"getGitRepoDetails",HOTELS:"getHotelDetails",PRONUNCIATION:"getPronunciation",FRENCH_TEACHINGS:"getFrenchTeachings"},ADDON:{ATTACHMENTS:"addon:attachments",REASONING:"addon:reasoning",CODEINTERPRETER:"addon:codeinterpreter",SHARE_CHAT:"addon:share-chat"}},Z={code_interpreter:"Running code...",web_search:"Searching the web...",[Q.TOOL.WEATHER]:"Checking the weather...",[Q.TOOL.POLLUTION]:"Fetching air pollution data...",[Q.TOOL.BUNDLESIZE]:"Analyzing bundle size...",[Q.TOOL.URLCONTENTPARSER]:"Reading a webpage...",[Q.TOOL.WEBSEARCH]:"Searching the web...",[Q.TOOL.GITREPOSITORY]:"Looking up repository...",[Q.TOOL.HOTELS]:"Searching for hotels...",[Q.TOOL.NUTRITION_FACTS]:"Fetching nutrition facts...",[Q.TOOL.GENERATE_IMAGE]:"Generating image...",[Q.TOOL.BARCODE]:"Looking up product...",[Q.TOOL.PRONUNCIATION]:"Generating pronunciation...",[Q.TOOL.HUMANIZE]:"Rewriting text...",[Q.TOOL.IMAGES]:"Searching for images..."},j="Using tools...",q="context-compression-summary",J=new Set(["OpenAI",r,"Google",o]);function $(e){return"string"==typeof e&&J.has(e)}let ee=e=>{for(let[E,O]of Object.entries(v))if(O.some(E=>e.startsWith(E)))return E;return null},eE=e=>{if(!e||0===e.length)return[];let E=new Set;for(let O of e)for(let[e,t]of Object.entries(Y))t.includes(O)&&("OpenAI"===e||e===r||"Google"===e)&&E.add(e);return i.filter(e=>E.has(e))},eO=e=>{let E=new Map;if(!e||0===e.length)return E;for(let O of e)for(let[e,t]of Object.entries(Y))if(t.includes(O)){E.has(e)||E.set(e,[]),E.get(e)?.push(O);break}return E},et=e=>{for(let E of eO(e).values())if(E.length>1)return!0;return!1},e_=(e,E)=>!!e&&!!E&&0!==E.length&&E.includes(e);function er(e,E,O){if(!E||Array.isArray(E)&&0===E.length)return!0;let t=e instanceof Set?e:e?new Set(e):null;return!!t&&0!==t.size&&("string"==typeof E?t.has(E):O?.any===!0?E.some(e=>t.has(e)):E.every(e=>t.has(e)))}function en(e){return B.includes(e)}var ea=3,eR=4,eo=5e4,ei="OpenAI",es=16384,eT=5,eA="sonar",eI="Auto",eS="Google",eL="Memory",eM="OpenAI",eP="system",eN="user",eD=3e4;export{V as ALL_MODELS,i as ALL_PROVIDERS,B as ALL_REASONING_MODELS,K as APPLICATION_NAME,v as APPROXIMATE_MODELS_PER_PROVIDER,Q as CAPABILITIES,q as CONTEXT_COMPRESSION_SUMMARY_ID,j as DEFAULT_TOOL_LOADING_LABEL,w as DIGGIDY_CHAT_ID_HEADER,X as DIGGIDY_CHAT_TIMESTAMP_HEADER,Y as MODELS_PER_PROVIDER,H as MODEL_AUTO_RESPONDER_ANTHROPIC,f as MODEL_AUTO_RESPONDER_GOOGLE,m as MODEL_AUTO_RESPONDER_OPENAI,G as MODEL_AUTO_ROUTER_ANTHROPIC,p as MODEL_AUTO_ROUTER_GOOGLE,h as MODEL_AUTO_ROUTER_OPENAI,d as MODEL_CHAT_SUMMARY,L as MODEL_CLAUDE_HAIKU,I as MODEL_CLAUDE_OPUS,S as MODEL_CLAUDE_SONNET,l as MODEL_DEV,y as MODEL_DISPLAY_NAMES,u as MODEL_EMBEDDING_TEXT,M as MODEL_GEMINI_FLASH,P as MODEL_GEMINI_PRO,U as MODEL_GENERATE_IMAGE,s as MODEL_GPT5,T as MODEL_GPT5_MINI,A as MODEL_GPT5_NANO,c as MODEL_MEMORY_INFERENCE,C as MODEL_SEARCH_DECOMPOSER,D as MODEL_SONAR_PRO,g as MODEL_TEACHER,x as PLAN_BASIC,W as PLAN_PLUS,z as PLAN_PREMIUM,r as PROVIDER_ANTHROPIC,o as PROVIDER_MISTRAL,R as PROVIDER_PERPLEXITY,F as PROVIDER_ROLE_MAP,a as PROVIDER_SUMMARY,t as ROLE_ASSISTANT,b as SORT_BY_TIMESTAMP,k as SORT_BY_TOKEN_USAGE,Z as TOOL_LOADING_LABELS,ee as findProvider,eO as getModelsGroupedByProvider,eE as getProvidersFromModels,et as hasMultipleModelsPerProvider,er as isEntitled,e_ as isModelAllowedForPlan,$ as isRealProvider,en as isReasoningModel,ea as CONTEXT_COMPRESSION_KEEP_IMAGES,eR as CONTEXT_COMPRESSION_KEEP_RECENT,eo as CONTEXT_COMPRESSION_THRESHOLD,ei as DEFAULT_PROVIDER,es as MAX_OUTPUT_TOKENS,eT as MAX_SEARCH_QUERIES,eA as MODEL_SONAR,eI as PROVIDER_AUTO,eS as PROVIDER_GOOGLE,eL as PROVIDER_MEMORY,eM as PROVIDER_OPENAI,eP as ROLE_SYSTEM,eN as ROLE_USER,eD as SEARCH_QUERY_TIMEOUT_MS,E as ActionColor};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@versini/sassysaint-common",
|
|
3
|
-
"version": "4.39.
|
|
3
|
+
"version": "4.39.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "Arno Versini",
|
|
6
6
|
"publishConfig": {
|
|
@@ -32,5 +32,5 @@
|
|
|
32
32
|
"test:watch": "vitest",
|
|
33
33
|
"watch": "npm-run-all dev"
|
|
34
34
|
},
|
|
35
|
-
"gitHead": "
|
|
35
|
+
"gitHead": "1f3b3ec18b0bd7f2ba11763f639fb839d4de2b64"
|
|
36
36
|
}
|