@agentguard-run/spend 0.15.9 → 0.15.11
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/README.md +64 -0
- package/dist/cli/dag-demo.d.ts +2 -0
- package/dist/cli/dag-demo.d.ts.map +1 -0
- package/dist/cli/dag-demo.js +151 -0
- package/dist/cli/dag-demo.js.map +1 -0
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +11 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/route-demo.d.ts +16 -0
- package/dist/cli/route-demo.d.ts.map +1 -0
- package/dist/cli/route-demo.js +211 -0
- package/dist/cli/route-demo.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/router-engine.d.ts +123 -0
- package/dist/router-engine.d.ts.map +1 -0
- package/dist/router-engine.js +246 -0
- package/dist/router-engine.js.map +1 -0
- package/dist/router.d.ts +1 -0
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +6 -0
- package/dist/router.js.map +1 -1
- package/dist/spend-guard.d.ts +20 -1
- package/dist/spend-guard.d.ts.map +1 -1
- package/dist/spend-guard.js +37 -0
- package/dist/spend-guard.js.map +1 -1
- package/dist/types.d.ts +3 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/router.ts +16 -0
package/dist/index.js
CHANGED
|
@@ -22,8 +22,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
24
|
exports.receiptSchemaVersion = exports.isReceiptV3 = exports.assertReceiptV3 = exports.isOpenRouterHost = exports.clearManagedOpenRouterKeyCache = exports.fetchManagedOpenRouterKey = exports.modelCostFromOpenRouter = exports.persistOverrides = exports.syncPricingIntoCostTable = exports.getCachedCatalog = exports.fetchCatalog = exports.recordTelemetryEvent = exports.resetTelemetryInstallId = exports.disableTelemetry = exports.enableTelemetry = exports.telemetryStatus = exports.licenseKeyFingerprint = exports.clearConfiguredLicenseKey = exports.writeConfiguredLicenseKey = exports.readConfiguredLicenseKey = exports.validateAndRegisterLicense = exports.validateLicenseKey = exports.AgentGuardLicenseRequiredError = exports.NdjsonDecisionLogStore = exports.InMemorySpendStore = exports.InMemoryDecisionLogStore = exports.GENESIS_PREVIOUS_HASH = exports.detectSequenceGaps = exports.verifyChain = exports.verifyEntry = exports.signDecision = exports.computeSignerFingerprint = exports.computeEntryHash = exports.sha256Hex = exports.canonicalJson = exports.BUILT_IN_KEYWORD_WATCHLISTS = exports.findCustomKeywordWatchlists = exports.enforcePolicyLicenseGates = exports.adjustPolicyWindowSpend = exports.buildScopeKey = exports.evaluatePolicy = exports.knownModelCosts = exports.persistCostOverrides = exports.loadPersistedCostOverrides = exports.listCostOverrides = exports.inferProvider = exports.computeCallCents = exports.clearCostOverrides = exports.setCostOverride = exports.getModelCost = void 0;
|
|
25
|
-
exports.
|
|
26
|
-
exports.formatLineage = exports.workloadProvenance = exports.buildSampleVerifierHtml = exports.SAMPLE_FLOWS = exports.isSampleFlow = exports.buildSampleReceipt = exports.anchorDir = exports.anchorProofPath = exports.anchorIndexPath = exports.findAnchorForHead = exports.readAnchorIndexAt = exports.readAnchorIndex = exports.writeAnchorProof = exports.defaultOtsLib = exports.DEFAULT_OTS_CALENDARS = exports.OpenTimestampsAnchor = exports.merkleRootHex = exports.chainHeadDigestHex = exports.createAnchorFromEnv = exports.createAnchor = exports.BONUS_THRESHOLD_PCT = exports.DEFAULT_FREE_LIMIT = exports.bonusMessage = exports.readFreeTierState = exports.maybeGrantFirstTimeBonus = exports.getMonthlyUsage = exports.centsToUsd = exports.decisionCents = exports.classifyOrigin = exports.aggregateLedger = exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = exports.formatBlockedTrace = exports.t = void 0;
|
|
25
|
+
exports.SUPPORTED_LOCALES = exports.DEFAULT_LOCALE = exports.RoutingExhaustedError = exports.createRouter = exports.defaultKey = exports.recommend = exports.withSpendGuardBedrock = exports.withSpendGuardAnthropic = exports.AgentGuardBlockedError = exports.withSpendGuard = exports.SpendGuard = exports.writeAdvisorOutputs = exports.createAdvisorSessionLogger = exports.resolveAdvisorApiKey = exports.createAdvisorClient = exports.projectedSavings = exports.buildPolicyFromProfile = exports.buildBusinessProfile = exports.AdvisorConversation = exports.AgentGuardWorkflowStateError = exports.AgentGuardDurationCapError = exports.AgentGuardChainCorruptError = exports.AgentGuardBudgetCapError = exports.validateReceiptChain = exports.computeChainHash = exports.WorkflowContext = exports.workflow = exports.verifyConsentReceipt = exports.enforceCompliance = exports.AgentGuardConsentRequiredError = exports.AgentGuardComplianceError = exports.isForeignOriginModel = exports.inferCompliance = exports.inferHosting = exports.inferModelIdentity = exports.inferProviderRoute = exports.PROVIDER_REGISTRY = exports.captureProvenance = exports.verifyReceiptDag = exports.verifyInclusion = exports.signDagNode = exports.msgHashForDecision = exports.merkleRoot = exports.merkleInclusionProof = exports.gateCapability = exports.deriveTrustScore = exports.deriveCapability = exports.dagEnvelopeFromEntries = exports.computeDagEntryHash = exports.compressReceiptDag = void 0;
|
|
26
|
+
exports.formatLineage = exports.workloadProvenance = exports.buildSampleVerifierHtml = exports.SAMPLE_FLOWS = exports.isSampleFlow = exports.buildSampleReceipt = exports.anchorDir = exports.anchorProofPath = exports.anchorIndexPath = exports.findAnchorForHead = exports.readAnchorIndexAt = exports.readAnchorIndex = exports.writeAnchorProof = exports.defaultOtsLib = exports.DEFAULT_OTS_CALENDARS = exports.OpenTimestampsAnchor = exports.merkleRootHex = exports.chainHeadDigestHex = exports.createAnchorFromEnv = exports.createAnchor = exports.BONUS_THRESHOLD_PCT = exports.DEFAULT_FREE_LIMIT = exports.bonusMessage = exports.readFreeTierState = exports.maybeGrantFirstTimeBonus = exports.getMonthlyUsage = exports.centsToUsd = exports.decisionCents = exports.classifyOrigin = exports.aggregateLedger = exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = exports.formatBlockedTrace = exports.t = exports.resolveLocale = exports.TRANSLATIONS = void 0;
|
|
27
27
|
const context_1 = require("./workflow/context");
|
|
28
28
|
// Cost table
|
|
29
29
|
var cost_table_1 = require("./cost-table");
|
|
@@ -156,6 +156,9 @@ Object.defineProperty(exports, "withSpendGuardBedrock", { enumerable: true, get:
|
|
|
156
156
|
var router_1 = require("./router");
|
|
157
157
|
Object.defineProperty(exports, "recommend", { enumerable: true, get: function () { return router_1.recommend; } });
|
|
158
158
|
Object.defineProperty(exports, "defaultKey", { enumerable: true, get: function () { return router_1.defaultKey; } });
|
|
159
|
+
var router_engine_1 = require("./router-engine");
|
|
160
|
+
Object.defineProperty(exports, "createRouter", { enumerable: true, get: function () { return router_engine_1.createRouter; } });
|
|
161
|
+
Object.defineProperty(exports, "RoutingExhaustedError", { enumerable: true, get: function () { return router_engine_1.RoutingExhaustedError; } });
|
|
159
162
|
// Localization (en-US, es-419, pt-BR)
|
|
160
163
|
var i18n_1 = require("./i18n");
|
|
161
164
|
Object.defineProperty(exports, "DEFAULT_LOCALE", { enumerable: true, get: function () { return i18n_1.DEFAULT_LOCALE; } });
|
|
@@ -164,7 +167,7 @@ Object.defineProperty(exports, "TRANSLATIONS", { enumerable: true, get: function
|
|
|
164
167
|
Object.defineProperty(exports, "resolveLocale", { enumerable: true, get: function () { return i18n_1.resolveLocale; } });
|
|
165
168
|
Object.defineProperty(exports, "t", { enumerable: true, get: function () { return i18n_1.t; } });
|
|
166
169
|
Object.defineProperty(exports, "formatBlockedTrace", { enumerable: true, get: function () { return i18n_1.formatBlockedTrace; } });
|
|
167
|
-
exports.AGENTGUARD_SPEND_VERSION = '0.15.
|
|
170
|
+
exports.AGENTGUARD_SPEND_VERSION = '0.15.11';
|
|
168
171
|
exports.agentguard = {
|
|
169
172
|
workflow: context_1.workflow,
|
|
170
173
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AgentGuard Spend: spend-and-policy-aware model router.
|
|
3
|
+
*
|
|
4
|
+
* `createRouter(...)` composes the EXISTING pieces of this SDK into one call
|
|
5
|
+
* that:
|
|
6
|
+
* 1. selects a candidate model across providers by a routing policy
|
|
7
|
+
* (cost-first / explicit priority / capability-tag filter),
|
|
8
|
+
* 2. enforces the spend cap using the EXISTING enforcement path
|
|
9
|
+
* (`SpendGuard.decide` -> `evaluatePolicy`) — block / downgrade / allow,
|
|
10
|
+
* 3. executes via the candidate's provider client,
|
|
11
|
+
* 4. FAILS OVER to the next viable candidate on a provider error/timeout OR a
|
|
12
|
+
* cap breach (block) on the chosen model — this removes vendor lock-in,
|
|
13
|
+
* 5. signs a routing receipt that records the decision, hash-chained onto the
|
|
14
|
+
* SAME signed log as the enforcement decisions using the EXISTING Ed25519 +
|
|
15
|
+
* canonical-JSON receipt infra (`SpendGuard.recordRoutingReceipt`).
|
|
16
|
+
*
|
|
17
|
+
* ZERO DATA PLANE: prompts, completions and provider keys never leave the
|
|
18
|
+
* process, and the routing receipt is payload-minimized (provider + model +
|
|
19
|
+
* projected cost only — never content).
|
|
20
|
+
*
|
|
21
|
+
* Patent notice: Protected by U.S. patent-pending technology
|
|
22
|
+
* (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626;
|
|
23
|
+
* 64/071,781; 64/071,789).
|
|
24
|
+
*/
|
|
25
|
+
import { SpendGuard, type SpendGuardConfig } from './spend-guard';
|
|
26
|
+
import type { CapabilityTier, SignedDecisionLogEntry, SpendDecision, SpendPolicy, SpendScope } from './types';
|
|
27
|
+
/** A provider the router knows how to dispatch a call to. */
|
|
28
|
+
export type RouterProvider = 'openai' | 'anthropic' | 'bedrock' | 'openrouter';
|
|
29
|
+
/** One routable model on a concrete provider client. */
|
|
30
|
+
export interface RouterCandidate {
|
|
31
|
+
/** Provider family. Drives cost lookup, dispatch and receipt labeling. */
|
|
32
|
+
provider: RouterProvider;
|
|
33
|
+
/** Model id as passed to the provider. */
|
|
34
|
+
model: string;
|
|
35
|
+
/** The provider SDK client used to execute the call. */
|
|
36
|
+
client: any;
|
|
37
|
+
/** Optional capability tags for capability-filter routing (e.g. 'vision'). */
|
|
38
|
+
capabilities?: string[];
|
|
39
|
+
}
|
|
40
|
+
/** How the router chooses among candidates. */
|
|
41
|
+
export interface RouterPolicy {
|
|
42
|
+
/**
|
|
43
|
+
* - `cost`: cheapest capable candidate first (projected cents ascending).
|
|
44
|
+
* - `priority`: honor the given candidate order (explicit failover order).
|
|
45
|
+
* - `capability`: keep only candidates whose `capabilities` include
|
|
46
|
+
* `requireCapability`, then order cheapest-first.
|
|
47
|
+
*/
|
|
48
|
+
mode: 'cost' | 'priority' | 'capability';
|
|
49
|
+
/** Required capability tag when `mode === 'capability'`. */
|
|
50
|
+
requireCapability?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface CreateRouterConfig {
|
|
53
|
+
/** Ordered list of routable candidates across providers. */
|
|
54
|
+
candidates: RouterCandidate[];
|
|
55
|
+
/** Selection policy. Defaults to cost-first. */
|
|
56
|
+
policy?: RouterPolicy;
|
|
57
|
+
/** The spend policy enforced by the EXISTING enforcement path. */
|
|
58
|
+
spendPolicy: SpendPolicy;
|
|
59
|
+
/** Ed25519 signing keys for the receipt chain. Reused, not re-invented. */
|
|
60
|
+
signingKeys?: SpendGuardConfig['signingKeys'];
|
|
61
|
+
/** Decision log store shared by enforcement + routing receipts. */
|
|
62
|
+
logStore?: SpendGuardConfig['logStore'];
|
|
63
|
+
/** Spend state store. */
|
|
64
|
+
spendStore?: SpendGuardConfig['spendStore'];
|
|
65
|
+
/** Any remaining SpendGuard config (posture, license, locale, hooks, ...). */
|
|
66
|
+
guardConfig?: Omit<SpendGuardConfig, 'policy' | 'signingKeys' | 'logStore' | 'spendStore'>;
|
|
67
|
+
}
|
|
68
|
+
/** A single inference request routed across candidates. */
|
|
69
|
+
export interface RouterRequest {
|
|
70
|
+
/** Identity scope for enforcement. Defaults to the spend policy scope. */
|
|
71
|
+
scope?: SpendScope;
|
|
72
|
+
/** Provider-native messages (openai/anthropic style). Used for token estimate. */
|
|
73
|
+
messages?: unknown[];
|
|
74
|
+
/** Extra provider params merged into the call (max_tokens, temperature, ...). */
|
|
75
|
+
params?: Record<string, unknown>;
|
|
76
|
+
/** Explicit input token count. Overrides estimation from `messages`. */
|
|
77
|
+
inputTokens?: number;
|
|
78
|
+
/** Expected output token count. Falls back to params.max_tokens or 512. */
|
|
79
|
+
outputTokens?: number;
|
|
80
|
+
/** Capability tier claim forwarded to enforcement. */
|
|
81
|
+
capabilityClaim?: CapabilityTier;
|
|
82
|
+
/** Optional label for the call (metadata only). */
|
|
83
|
+
label?: string;
|
|
84
|
+
}
|
|
85
|
+
export type RouteReason = 'cost' | 'priority' | 'capability' | 'failover' | 'downgrade';
|
|
86
|
+
/** A candidate that was considered but not chosen, and why. */
|
|
87
|
+
export interface RouteFallback {
|
|
88
|
+
provider: RouterProvider;
|
|
89
|
+
model: string;
|
|
90
|
+
/** 'cap_breach' (blocked by spend cap) or 'provider_error'. */
|
|
91
|
+
reason: 'cap_breach' | 'provider_error';
|
|
92
|
+
detail?: string;
|
|
93
|
+
}
|
|
94
|
+
export interface RouteResult<T = unknown> {
|
|
95
|
+
/** The provider response from the winning candidate. */
|
|
96
|
+
response: T;
|
|
97
|
+
/** Chosen provider + model actually executed. */
|
|
98
|
+
chosen: {
|
|
99
|
+
provider: RouterProvider;
|
|
100
|
+
model: string;
|
|
101
|
+
};
|
|
102
|
+
/** Why this candidate won. */
|
|
103
|
+
reason: RouteReason;
|
|
104
|
+
/** Resolved cost in cents (settled from usage when available, else projected). */
|
|
105
|
+
resolvedCents: number;
|
|
106
|
+
/** Candidates skipped before the winner, with cause. */
|
|
107
|
+
fallbacks: RouteFallback[];
|
|
108
|
+
/** The winning enforcement decision (already signed onto the chain). */
|
|
109
|
+
decision: SpendDecision;
|
|
110
|
+
/** The signed routing receipt entry (null when signing keys are absent). */
|
|
111
|
+
routingReceipt: SignedDecisionLogEntry | null;
|
|
112
|
+
}
|
|
113
|
+
export declare class RoutingExhaustedError extends Error {
|
|
114
|
+
fallbacks: RouteFallback[];
|
|
115
|
+
constructor(fallbacks: RouteFallback[]);
|
|
116
|
+
}
|
|
117
|
+
export interface ModelRouter {
|
|
118
|
+
route<T = unknown>(request: RouterRequest): Promise<RouteResult<T>>;
|
|
119
|
+
/** The underlying SpendGuard (shared enforcement + signed chain). */
|
|
120
|
+
readonly guard: SpendGuard;
|
|
121
|
+
}
|
|
122
|
+
export declare function createRouter(config: CreateRouterConfig): ModelRouter;
|
|
123
|
+
//# sourceMappingURL=router-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router-engine.d.ts","sourceRoot":"","sources":["../src/router-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,UAAU,EAAgB,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEhF,OAAO,KAAK,EAEV,cAAc,EAEd,sBAAsB,EACtB,aAAa,EACb,WAAW,EACX,UAAU,EACX,MAAM,SAAS,CAAC;AAEjB,6DAA6D;AAC7D,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC;AAE/E,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,QAAQ,EAAE,cAAc,CAAC;IACzB,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IAExD,MAAM,EAAE,GAAG,CAAC;IACZ,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,+CAA+C;AAC/C,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,CAAC;IACzC,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,4DAA4D;IAC5D,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,gDAAgD;IAChD,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,kEAAkE;IAClE,WAAW,EAAE,WAAW,CAAC;IACzB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC9C,mEAAmE;IACnE,QAAQ,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxC,yBAAyB;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC5C,8EAA8E;IAC9E,WAAW,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC,CAAC;CAC5F;AAED,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;AAExF,+DAA+D;AAC/D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,wDAAwD;IACxD,QAAQ,EAAE,CAAC,CAAC;IACZ,iDAAiD;IACjD,MAAM,EAAE;QAAE,QAAQ,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,8BAA8B;IAC9B,MAAM,EAAE,WAAW,CAAC;IACpB,kFAAkF;IAClF,aAAa,EAAE,MAAM,CAAC;IACtB,wDAAwD;IACxD,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,wEAAwE;IACxE,QAAQ,EAAE,aAAa,CAAC;IACxB,4EAA4E;IAC5E,cAAc,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAC/C;AAED,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,SAAS,EAAE,aAAa,EAAE,CAAC;gBACf,SAAS,EAAE,aAAa,EAAE;CASvC;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,qEAAqE;IACrE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AASD,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,WAAW,CAsGpE"}
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* AgentGuard Spend: spend-and-policy-aware model router.
|
|
4
|
+
*
|
|
5
|
+
* `createRouter(...)` composes the EXISTING pieces of this SDK into one call
|
|
6
|
+
* that:
|
|
7
|
+
* 1. selects a candidate model across providers by a routing policy
|
|
8
|
+
* (cost-first / explicit priority / capability-tag filter),
|
|
9
|
+
* 2. enforces the spend cap using the EXISTING enforcement path
|
|
10
|
+
* (`SpendGuard.decide` -> `evaluatePolicy`) — block / downgrade / allow,
|
|
11
|
+
* 3. executes via the candidate's provider client,
|
|
12
|
+
* 4. FAILS OVER to the next viable candidate on a provider error/timeout OR a
|
|
13
|
+
* cap breach (block) on the chosen model — this removes vendor lock-in,
|
|
14
|
+
* 5. signs a routing receipt that records the decision, hash-chained onto the
|
|
15
|
+
* SAME signed log as the enforcement decisions using the EXISTING Ed25519 +
|
|
16
|
+
* canonical-JSON receipt infra (`SpendGuard.recordRoutingReceipt`).
|
|
17
|
+
*
|
|
18
|
+
* ZERO DATA PLANE: prompts, completions and provider keys never leave the
|
|
19
|
+
* process, and the routing receipt is payload-minimized (provider + model +
|
|
20
|
+
* projected cost only — never content).
|
|
21
|
+
*
|
|
22
|
+
* Patent notice: Protected by U.S. patent-pending technology
|
|
23
|
+
* (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626;
|
|
24
|
+
* 64/071,781; 64/071,789).
|
|
25
|
+
*/
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.RoutingExhaustedError = void 0;
|
|
28
|
+
exports.createRouter = createRouter;
|
|
29
|
+
const spend_guard_1 = require("./spend-guard");
|
|
30
|
+
const cost_table_1 = require("./cost-table");
|
|
31
|
+
class RoutingExhaustedError extends Error {
|
|
32
|
+
fallbacks;
|
|
33
|
+
constructor(fallbacks) {
|
|
34
|
+
super('agentguard router: every candidate was exhausted (' +
|
|
35
|
+
fallbacks.map((f) => `${f.provider}/${f.model}:${f.reason}`).join(', ') +
|
|
36
|
+
')');
|
|
37
|
+
this.name = 'RoutingExhaustedError';
|
|
38
|
+
this.fallbacks = fallbacks;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.RoutingExhaustedError = RoutingExhaustedError;
|
|
42
|
+
const ROUTER_PROVIDER_TO_ENFORCEMENT = {
|
|
43
|
+
openai: 'openai',
|
|
44
|
+
openrouter: 'openai',
|
|
45
|
+
anthropic: 'anthropic',
|
|
46
|
+
bedrock: 'bedrock',
|
|
47
|
+
};
|
|
48
|
+
function createRouter(config) {
|
|
49
|
+
if (!Array.isArray(config.candidates) || config.candidates.length === 0) {
|
|
50
|
+
throw new Error('createRouter: at least one candidate is required');
|
|
51
|
+
}
|
|
52
|
+
const policy = config.policy ?? { mode: 'cost' };
|
|
53
|
+
const guard = new spend_guard_1.SpendGuard({
|
|
54
|
+
policy: config.spendPolicy,
|
|
55
|
+
...(config.guardConfig ?? {}),
|
|
56
|
+
...(config.signingKeys ? { signingKeys: config.signingKeys } : {}),
|
|
57
|
+
...(config.logStore ? { logStore: config.logStore } : {}),
|
|
58
|
+
...(config.spendStore ? { spendStore: config.spendStore } : {}),
|
|
59
|
+
});
|
|
60
|
+
async function route(request) {
|
|
61
|
+
const scope = request.scope ?? config.spendPolicy.scope;
|
|
62
|
+
const inputTokens = request.inputTokens ?? guard.estimateTokens(estimateText(request.messages));
|
|
63
|
+
const outputTokens = normalizeTokens(request.outputTokens ?? paramsMaxTokens(request.params), 512);
|
|
64
|
+
const ordered = selectCandidates(config.candidates, policy, inputTokens, outputTokens);
|
|
65
|
+
const considered = ordered.map((c) => ({
|
|
66
|
+
provider: c.provider,
|
|
67
|
+
model: c.model,
|
|
68
|
+
projectedCents: projectCents(c.model, inputTokens, outputTokens),
|
|
69
|
+
}));
|
|
70
|
+
const firstChoiceModel = ordered[0]?.model ?? request.params?.model ?? 'unknown';
|
|
71
|
+
const fallbacks = [];
|
|
72
|
+
for (let i = 0; i < ordered.length; i++) {
|
|
73
|
+
const candidate = ordered[i];
|
|
74
|
+
const call = buildCall(candidate, request, scope, inputTokens, outputTokens);
|
|
75
|
+
const { decision } = await guard.decide(call);
|
|
76
|
+
// (d) cap breach on the chosen model -> fail over to the next candidate.
|
|
77
|
+
if (decision.action === 'block') {
|
|
78
|
+
fallbacks.push({
|
|
79
|
+
provider: candidate.provider,
|
|
80
|
+
model: candidate.model,
|
|
81
|
+
reason: 'cap_breach',
|
|
82
|
+
detail: decision.reasons[0],
|
|
83
|
+
});
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
const executedModel = decision.action === 'downgrade' && decision.modelResolved !== decision.modelRequested
|
|
87
|
+
? decision.modelResolved
|
|
88
|
+
: candidate.model;
|
|
89
|
+
let response;
|
|
90
|
+
try {
|
|
91
|
+
// (c) execute via the correct provider binding.
|
|
92
|
+
response = (await executeCandidate(candidate, executedModel, request));
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
// (d) provider error/timeout -> fail over to the next candidate.
|
|
96
|
+
fallbacks.push({
|
|
97
|
+
provider: candidate.provider,
|
|
98
|
+
model: candidate.model,
|
|
99
|
+
reason: 'provider_error',
|
|
100
|
+
detail: errorDetail(err),
|
|
101
|
+
});
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
// (b) settle the true cost against the EXISTING spend window.
|
|
105
|
+
const resolvedCents = await settleUsage(guard, decision, response, executedModel, inputTokens, outputTokens);
|
|
106
|
+
const reason = resolveReason(policy, i, decision.action === 'downgrade');
|
|
107
|
+
// (e) sign a routing receipt onto the same chain via the existing infra.
|
|
108
|
+
const receiptPayload = {
|
|
109
|
+
policy: policy.mode,
|
|
110
|
+
...(policy.requireCapability ? { requireCapability: policy.requireCapability } : {}),
|
|
111
|
+
candidates: considered,
|
|
112
|
+
chosen: { provider: candidate.provider, model: executedModel },
|
|
113
|
+
reason,
|
|
114
|
+
resolvedCents,
|
|
115
|
+
fallbacks,
|
|
116
|
+
enforcementDecisionId: decision.decisionId,
|
|
117
|
+
};
|
|
118
|
+
const { signed } = await guard.recordRoutingReceipt({
|
|
119
|
+
provider: ROUTER_PROVIDER_TO_ENFORCEMENT[candidate.provider],
|
|
120
|
+
modelRequested: firstChoiceModel,
|
|
121
|
+
modelResolved: executedModel,
|
|
122
|
+
projectedCents: resolvedCents,
|
|
123
|
+
reason,
|
|
124
|
+
routingReceipt: receiptPayload,
|
|
125
|
+
});
|
|
126
|
+
return {
|
|
127
|
+
response,
|
|
128
|
+
chosen: { provider: candidate.provider, model: executedModel },
|
|
129
|
+
reason,
|
|
130
|
+
resolvedCents,
|
|
131
|
+
fallbacks,
|
|
132
|
+
decision,
|
|
133
|
+
routingReceipt: signed,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
throw new RoutingExhaustedError(fallbacks);
|
|
137
|
+
}
|
|
138
|
+
return { route, guard };
|
|
139
|
+
}
|
|
140
|
+
function selectCandidates(candidates, policy, inputTokens, outputTokens) {
|
|
141
|
+
let pool = candidates.slice();
|
|
142
|
+
if (policy.mode === 'capability') {
|
|
143
|
+
const tag = policy.requireCapability;
|
|
144
|
+
pool = pool.filter((c) => !tag || (c.capabilities ?? []).includes(tag));
|
|
145
|
+
}
|
|
146
|
+
if (policy.mode === 'priority') {
|
|
147
|
+
return pool; // honor the given order verbatim
|
|
148
|
+
}
|
|
149
|
+
// cost-first (also the tiebreaker within capability mode). Stable on ties by
|
|
150
|
+
// preserving original index order.
|
|
151
|
+
return pool
|
|
152
|
+
.map((candidate, index) => ({ candidate, index, cents: projectCents(candidate.model, inputTokens, outputTokens) }))
|
|
153
|
+
.sort((a, b) => a.cents - b.cents || a.index - b.index)
|
|
154
|
+
.map((entry) => entry.candidate);
|
|
155
|
+
}
|
|
156
|
+
function resolveReason(policy, winnerIndex, downgraded) {
|
|
157
|
+
if (downgraded)
|
|
158
|
+
return 'downgrade';
|
|
159
|
+
if (winnerIndex > 0)
|
|
160
|
+
return 'failover';
|
|
161
|
+
return policy.mode;
|
|
162
|
+
}
|
|
163
|
+
function buildCall(candidate, request, scope, inputTokens, outputTokens) {
|
|
164
|
+
return {
|
|
165
|
+
provider: ROUTER_PROVIDER_TO_ENFORCEMENT[candidate.provider],
|
|
166
|
+
model: candidate.model,
|
|
167
|
+
inputTokens,
|
|
168
|
+
outputTokens,
|
|
169
|
+
scope,
|
|
170
|
+
...(request.capabilityClaim ? { capabilityClaim: request.capabilityClaim } : {}),
|
|
171
|
+
...(request.label ? { label: request.label } : {}),
|
|
172
|
+
requestShape: { model: candidate.model, maxTokens: outputTokens, routedProvider: candidate.provider },
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
async function executeCandidate(candidate, model, request) {
|
|
176
|
+
const client = candidate.client;
|
|
177
|
+
const baseParams = { ...(request.params ?? {}) };
|
|
178
|
+
if (request.messages !== undefined && baseParams.messages === undefined) {
|
|
179
|
+
baseParams.messages = request.messages;
|
|
180
|
+
}
|
|
181
|
+
const params = { ...baseParams, model };
|
|
182
|
+
if ((candidate.provider === 'openai' || candidate.provider === 'openrouter') && client?.chat?.completions?.create) {
|
|
183
|
+
return client.chat.completions.create(params);
|
|
184
|
+
}
|
|
185
|
+
if (candidate.provider === 'anthropic' && client?.messages?.create) {
|
|
186
|
+
return client.messages.create(params);
|
|
187
|
+
}
|
|
188
|
+
if (candidate.provider === 'bedrock' && typeof client?.send === 'function') {
|
|
189
|
+
return client.send({
|
|
190
|
+
constructor: { name: 'InvokeModelCommand' },
|
|
191
|
+
input: { modelId: model, body: JSON.stringify(params) },
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
// Structural fallbacks so any minimal/mocked client still routes.
|
|
195
|
+
if (client?.chat?.completions?.create)
|
|
196
|
+
return client.chat.completions.create(params);
|
|
197
|
+
if (client?.messages?.create)
|
|
198
|
+
return client.messages.create(params);
|
|
199
|
+
if (typeof client?.create === 'function')
|
|
200
|
+
return client.create(params);
|
|
201
|
+
throw new Error(`router: candidate client for ${candidate.provider} exposes no known invoke method`);
|
|
202
|
+
}
|
|
203
|
+
async function settleUsage(guard, decision, response, executedModel, inputTokens, outputTokens) {
|
|
204
|
+
const usage = (0, spend_guard_1.extractUsage)(response);
|
|
205
|
+
if (usage) {
|
|
206
|
+
const settlement = await guard.settleStreamUsage(decision.decisionId, usage.inputTokens, usage.outputTokens, {
|
|
207
|
+
partial: false,
|
|
208
|
+
});
|
|
209
|
+
if (settlement && Number.isFinite(settlement.decision.actualCents)) {
|
|
210
|
+
return settlement.decision.actualCents;
|
|
211
|
+
}
|
|
212
|
+
const settled = (0, cost_table_1.computeCallCents)(executedModel, usage.inputTokens, usage.outputTokens);
|
|
213
|
+
if (settled !== null)
|
|
214
|
+
return settled;
|
|
215
|
+
}
|
|
216
|
+
return projectCents(executedModel, inputTokens, outputTokens);
|
|
217
|
+
}
|
|
218
|
+
function projectCents(model, inputTokens, outputTokens) {
|
|
219
|
+
const cents = (0, cost_table_1.computeCallCents)(model, inputTokens, outputTokens);
|
|
220
|
+
return cents === null ? Number.POSITIVE_INFINITY : cents;
|
|
221
|
+
}
|
|
222
|
+
function estimateText(messages) {
|
|
223
|
+
if (!Array.isArray(messages))
|
|
224
|
+
return '';
|
|
225
|
+
return messages
|
|
226
|
+
.map((message) => {
|
|
227
|
+
const content = message?.content;
|
|
228
|
+
if (typeof content === 'string')
|
|
229
|
+
return content;
|
|
230
|
+
return content == null ? '' : JSON.stringify(content);
|
|
231
|
+
})
|
|
232
|
+
.join('\n');
|
|
233
|
+
}
|
|
234
|
+
function paramsMaxTokens(params) {
|
|
235
|
+
const value = params?.max_tokens ?? params?.maxTokens ?? params?.max_completion_tokens;
|
|
236
|
+
return Number.isSafeInteger(value) && value >= 0 ? value : undefined;
|
|
237
|
+
}
|
|
238
|
+
function normalizeTokens(value, fallback) {
|
|
239
|
+
return Number.isSafeInteger(value) && value >= 0 ? value : fallback;
|
|
240
|
+
}
|
|
241
|
+
function errorDetail(err) {
|
|
242
|
+
if (err instanceof Error && err.message)
|
|
243
|
+
return err.message.slice(0, 160);
|
|
244
|
+
return 'provider_error';
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=router-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router-engine.js","sourceRoot":"","sources":["../src/router-engine.ts"],"names":[],"mappings":"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"}
|
package/dist/router.d.ts
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626;
|
|
9
9
|
* 64/071,781; 64/071,789).
|
|
10
10
|
*/
|
|
11
|
+
export { createRouter, RoutingExhaustedError, type ModelRouter, type CreateRouterConfig, type RouterCandidate, type RouterPolicy, type RouterProvider, type RouterRequest, type RouteResult, type RouteReason, type RouteFallback, } from './router-engine';
|
|
11
12
|
export interface RouterCatalogModel {
|
|
12
13
|
id: string;
|
|
13
14
|
in_per_mtok: number;
|
package/dist/router.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,GACnB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,aAAa,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACnD,cAAc,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AA4lCD,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,wBAAwB,CA+BlF;AAaD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAKrE"}
|
package/dist/router.js
CHANGED
|
@@ -10,9 +10,15 @@
|
|
|
10
10
|
* 64/071,781; 64/071,789).
|
|
11
11
|
*/
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.RoutingExhaustedError = exports.createRouter = void 0;
|
|
13
14
|
exports.recommend = recommend;
|
|
14
15
|
exports.defaultKey = defaultKey;
|
|
15
16
|
const openrouter_catalog_1 = require("./openrouter-catalog");
|
|
17
|
+
// Spend-and-policy-aware model router (removes vendor risk). Re-exported here so
|
|
18
|
+
// the `./router` subpath exposes both the config recommender and the executor.
|
|
19
|
+
var router_engine_1 = require("./router-engine");
|
|
20
|
+
Object.defineProperty(exports, "createRouter", { enumerable: true, get: function () { return router_engine_1.createRouter; } });
|
|
21
|
+
Object.defineProperty(exports, "RoutingExhaustedError", { enumerable: true, get: function () { return router_engine_1.RoutingExhaustedError; } });
|
|
16
22
|
const DEFAULTS = {
|
|
17
23
|
"version": 2,
|
|
18
24
|
"compliance_verticals": [
|
package/dist/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|