@intutic/shared-types 1.10.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-contracts.d.ts +3 -3
- package/dist/auth.d.ts +7 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/billing.d.ts +0 -21
- package/dist/billing.d.ts.map +1 -1
- package/dist/enums.d.ts +10 -1
- package/dist/enums.d.ts.map +1 -1
- package/dist/enums.js +10 -1
- package/dist/enums.js.map +1 -1
- package/dist/errors.d.ts +11 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +11 -1
- package/dist/errors.js.map +1 -1
- package/dist/guardrailIr.d.ts +70 -2
- package/dist/guardrailIr.d.ts.map +1 -1
- package/dist/guardrailIr.js +106 -3
- package/dist/guardrailIr.js.map +1 -1
- package/dist/guardrailRender.d.ts +13 -1
- package/dist/guardrailRender.d.ts.map +1 -1
- package/dist/guardrailRender.js +10 -0
- package/dist/guardrailRender.js.map +1 -1
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -4
- package/dist/index.js.map +1 -1
- package/dist/modelCatalog.d.ts +19 -15
- package/dist/modelCatalog.d.ts.map +1 -1
- package/dist/modelCatalog.generated.d.ts +371 -75
- package/dist/modelCatalog.generated.d.ts.map +1 -1
- package/dist/modelCatalog.generated.js +60 -38
- package/dist/modelCatalog.generated.js.map +1 -1
- package/dist/modelCatalog.js +33 -32
- package/dist/modelCatalog.js.map +1 -1
- package/dist/notifications.d.ts +3 -1
- package/dist/notifications.d.ts.map +1 -1
- package/dist/policyGuardrails.d.ts +11 -4
- package/dist/policyGuardrails.d.ts.map +1 -1
- package/dist/policyGuardrails.js +7 -1
- package/dist/policyGuardrails.js.map +1 -1
- package/dist/providerVerification.d.ts.map +1 -1
- package/dist/providerVerification.js +10 -0
- package/dist/providerVerification.js.map +1 -1
- package/dist/providers.d.ts +13 -3
- package/dist/providers.d.ts.map +1 -1
- package/dist/providers.js +24 -3
- package/dist/providers.js.map +1 -1
- package/dist/proxyBaseUrls.d.ts +32 -0
- package/dist/proxyBaseUrls.d.ts.map +1 -0
- package/dist/proxyBaseUrls.js +57 -0
- package/dist/proxyBaseUrls.js.map +1 -0
- package/dist/scriptScan.d.ts +36 -0
- package/dist/scriptScan.d.ts.map +1 -1
- package/dist/scriptScan.js +11 -1
- package/dist/scriptScan.js.map +1 -1
- package/dist/skillScan.d.ts +41 -13
- package/dist/skillScan.d.ts.map +1 -1
- package/dist/skillScan.js +56 -13
- package/dist/skillScan.js.map +1 -1
- package/dist/sync.d.ts +11 -8
- package/dist/sync.d.ts.map +1 -1
- package/dist/workspaceSettings.d.ts +0 -24
- package/dist/workspaceSettings.d.ts.map +1 -1
- package/dist/workspaceSettings.js +0 -3
- package/dist/workspaceSettings.js.map +1 -1
- package/package.json +2 -2
package/dist/modelCatalog.js
CHANGED
|
@@ -20,10 +20,11 @@
|
|
|
20
20
|
* @module
|
|
21
21
|
*/
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.MODEL_CATALOG = void 0;
|
|
23
|
+
exports.SELF_HOSTED_MODEL_PROVIDER_IDS = exports.MODEL_CATALOG = void 0;
|
|
24
24
|
exports.normalizeModelRef = normalizeModelRef;
|
|
25
25
|
exports.findCatalogModel = findCatalogModel;
|
|
26
|
-
exports.
|
|
26
|
+
exports.isHostedModelRef = isHostedModelRef;
|
|
27
|
+
exports.selfHostedJudgeModelChoices = selfHostedJudgeModelChoices;
|
|
27
28
|
const modelCatalog_generated_js_1 = require("./modelCatalog.generated.js");
|
|
28
29
|
const providers_js_1 = require("./providers.js");
|
|
29
30
|
/** The full generated catalog, typed. */
|
|
@@ -75,38 +76,38 @@ function findCatalogModel(input) {
|
|
|
75
76
|
return exports.MODEL_CATALOG.find((e) => e.id === normalized.id || e.ref === input);
|
|
76
77
|
}
|
|
77
78
|
/**
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
* useful error. Pass `saasRoutableOnly: false` for an on-prem judge picker,
|
|
88
|
-
* where a local LiteLLM deployment can serve anything.
|
|
79
|
+
* Providers whose models run on infrastructure the operator controls. Every
|
|
80
|
+
* other registry provider is a hosted API. Judges are self-hosted only (owner
|
|
81
|
+
* rule, 2026-10-03; LLD #72), so these are the only providers a judge model
|
|
82
|
+
* may come from.
|
|
83
|
+
*/
|
|
84
|
+
exports.SELF_HOSTED_MODEL_PROVIDER_IDS = new Set(['ollama']);
|
|
85
|
+
/**
|
|
86
|
+
* Ollama Cloud models (`ollama/<name>:<size>-cloud`) carry the self-hosted
|
|
87
|
+
* provider's prefix but run on ollama.com, so they are hosted too.
|
|
89
88
|
*/
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
return
|
|
101
|
-
|
|
89
|
+
const isOllamaCloudId = (id) => id.endsWith('-cloud');
|
|
90
|
+
/**
|
|
91
|
+
* True when `ref` names a hosted model: a registry provider prefix other than
|
|
92
|
+
* a self-hosted one, or an Ollama Cloud model. A bare alias (`my-local-qwen`)
|
|
93
|
+
* or an unknown prefix is not hosted by this test: it is whatever the
|
|
94
|
+
* operator's own LiteLLM serves under that name.
|
|
95
|
+
*/
|
|
96
|
+
function isHostedModelRef(ref) {
|
|
97
|
+
const { provider, id } = normalizeModelRef(ref);
|
|
98
|
+
if (!provider)
|
|
99
|
+
return false;
|
|
100
|
+
if (exports.SELF_HOSTED_MODEL_PROVIDER_IDS.has(provider))
|
|
101
|
+
return isOllamaCloudId(id);
|
|
102
|
+
return providers_js_1.PROVIDER_REGISTRY.some((p) => p.id === provider);
|
|
102
103
|
}
|
|
103
104
|
/**
|
|
104
|
-
*
|
|
105
|
-
* `
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
* separate constant, so a provider gaining live routing (LLD #67 §3) updates
|
|
109
|
-
* this filter automatically instead of needing a second edit here.
|
|
105
|
+
* The catalog models an on-prem judge picker may offer (`intutic judge
|
|
106
|
+
* configure`): judge-capable entries from self-hosted providers, Ollama Cloud
|
|
107
|
+
* excluded. There is no hosted judge choice anywhere (owner rule,
|
|
108
|
+
* 2026-10-03), so this replaced `judgeModelChoices`.
|
|
110
109
|
*/
|
|
111
|
-
|
|
110
|
+
function selfHostedJudgeModelChoices() {
|
|
111
|
+
return exports.MODEL_CATALOG.filter((e) => e.judgeCapable && !isHostedModelRef(e.ref));
|
|
112
|
+
}
|
|
112
113
|
//# sourceMappingURL=modelCatalog.js.map
|
package/dist/modelCatalog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelCatalog.js","sourceRoot":"","sources":["../src/modelCatalog.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AA6CH,8CAqBC;AASD,4CAOC;
|
|
1
|
+
{"version":3,"file":"modelCatalog.js","sourceRoot":"","sources":["../src/modelCatalog.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AA6CH,8CAqBC;AASD,4CAOC;AAsBD,4CAKC;AAQD,kEAEC;AArHD,2EAAqE;AACrE,iDAAkD;AA4BlD,yCAAyC;AAC5B,QAAA,aAAa,GAAiC,mDAAuB,CAAA;AAElF;;;;;;;;;;GAUG;AACH,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAA;IAE/B,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACvC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IACxB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;IAC7C,IAAI,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;IAExC,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,gEAAgE;IAChE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACxC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,QAAQ,IAAI,IAAI,EAAE,EAAE,CAAA;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IAC3C,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,qBAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,CAAA;QACjE,IAAI,KAAK;YAAE,OAAO,KAAK,CAAA;IACzB,CAAC;IACD,OAAO,qBAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,CAAA;AAC7E,CAAC;AAED;;;;;GAKG;AACU,QAAA,8BAA8B,GAAwB,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;AAEtF;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,EAAU,EAAW,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAEtE;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;IAC/C,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3B,IAAI,sCAA8B,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,eAAe,CAAC,EAAE,CAAC,CAAA;IAC5E,OAAO,gCAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAA;AACzD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,2BAA2B;IACzC,OAAO,qBAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;AAChF,CAAC"}
|
package/dist/notifications.d.ts
CHANGED
|
@@ -18,7 +18,9 @@ export type NotificationEventType = 'anomaly.detected'
|
|
|
18
18
|
/** A SHADOW guardrail crossed the promotion thresholds; a named member decides. */
|
|
19
19
|
| 'guardrail.ready'
|
|
20
20
|
/** The passage a guardrail cites changed upstream; promotion is refused until re-confirmed. */
|
|
21
|
-
| 'guardrail.stale'
|
|
21
|
+
| 'guardrail.stale'
|
|
22
|
+
/** A judged response is waiting for a person in the judge review queue: the typed judge was unsure, or it is a spot check of one it cleared (LLD #72). */
|
|
23
|
+
| 'judge.review.queued' | 'finops.budget.exceeded' | 'finops.budget.threshold' | 'finops.budget.overrun' | 'finops.tokens.classified' | 'trial.started' | 'trial.expired_downgraded' | 'trial.day7_report_sent' | 'trial.day13_report_sent' | 'plan.captured' | 'plan.approved' | 'plan.deviation.detected' | 'identity.offboarding.completed' | 'workspace.context.updated'
|
|
22
24
|
/**
|
|
23
25
|
* A registered, non-revoked self-hosted gateway has gone past
|
|
24
26
|
* GATEWAY_HEARTBEAT_TTL without a heartbeat -- fired once per member
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAA;AAE7E,MAAM,MAAM,qBAAqB,GAE7B,kBAAkB;AACpB;;;;;;;;;;;GAWG;GACD,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,GACf,2BAA2B,GAC3B,kBAAkB,GAClB,2BAA2B,GAC3B,2BAA2B,GAC3B,kBAAkB,GAElB,8BAA8B,GAC9B,wBAAwB,GACxB,yBAAyB,GACzB,uBAAuB,GAEvB,oBAAoB,GACpB,mBAAmB,GACnB,yBAAyB,GACzB,qBAAqB,GACrB,4BAA4B;AAC9B,+IAA+I;GAC7I,sBAAsB;AAExB,mFAAmF;GACjF,iBAAiB;AACnB,+FAA+F;GAC7F,iBAAiB,
|
|
1
|
+
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,13 @@ export declare function guardrailFileStem(guardrailId: string): string;
|
|
|
33
33
|
*/
|
|
34
34
|
export declare function guardrailIdFromSopTitle(title: string): string | null;
|
|
35
35
|
export type GuardrailStatus = (typeof GUARDRAIL_STATUSES)[number];
|
|
36
|
-
|
|
36
|
+
/**
|
|
37
|
+
* `workspace_setting` (TD-474 item 2) is the one target no rule endpoint
|
|
38
|
+
* projects: an `allowed_models` or `egress_allow` guardrail is written into
|
|
39
|
+
* the workspace setting the proxy already enforces when a member promotes it,
|
|
40
|
+
* and unwound when it is retired.
|
|
41
|
+
*/
|
|
42
|
+
export declare const GUARDRAIL_TARGETS: readonly ["hook_rule", "sop_front_matter", "wasm_rule", "workspace_setting"];
|
|
37
43
|
export type GuardrailTarget = (typeof GUARDRAIL_TARGETS)[number];
|
|
38
44
|
export declare const GUARDRAIL_EVENT_TYPES: readonly ["PROPOSED", "SHADOW_APPROVED", "PROMOTED", "REJECTED", "RETIRED", "SOURCE_STALE", "SOURCE_RECONFIRMED", "CITATION_REBOUND", "RENDER_REBOUND"];
|
|
39
45
|
export type GuardrailEventType = (typeof GUARDRAIL_EVENT_TYPES)[number];
|
|
@@ -73,7 +79,7 @@ export interface GuardrailSummary {
|
|
|
73
79
|
target: GuardrailTarget;
|
|
74
80
|
status: GuardrailStatus;
|
|
75
81
|
ir: GuardrailIr;
|
|
76
|
-
/** hook_rule: {toolPattern, argPattern?, reason}; sop_front_matter: {lines}; wasm_rule: {source}. */
|
|
82
|
+
/** hook_rule: {toolPattern, argPattern?, reason}; sop_front_matter: {lines}; wasm_rule: {source}; workspace_setting: {key, values}. */
|
|
77
83
|
rendered: unknown;
|
|
78
84
|
roles: string[];
|
|
79
85
|
scope: string;
|
|
@@ -131,7 +137,8 @@ export interface GuardrailReadiness {
|
|
|
131
137
|
thresholds: GuardrailThresholds;
|
|
132
138
|
}
|
|
133
139
|
export interface GuardrailReplay {
|
|
134
|
-
|
|
140
|
+
/** `execution_traces`: an allowed-models guardrail, one request per trace. `none`: nothing captured can answer (egress has no replay source). */
|
|
141
|
+
source: 'enforcement_log' | 'context_snapshots' | 'execution_traces' | 'none';
|
|
135
142
|
windowDays: number;
|
|
136
143
|
captured: number;
|
|
137
144
|
fires: number;
|
|
@@ -141,7 +148,7 @@ export interface GuardrailReplay {
|
|
|
141
148
|
excerpt: string;
|
|
142
149
|
}>;
|
|
143
150
|
truncated: boolean;
|
|
144
|
-
/** Keys this replay cannot answer for (`review_before` holds rather than acts). */
|
|
151
|
+
/** Keys this replay cannot answer for (`review_before` holds rather than acts; `egress_allow` has no captured source). */
|
|
145
152
|
unsupported: string[];
|
|
146
153
|
}
|
|
147
154
|
export type GuardrailConflictKind = 'deny_vs_count' | 'require_vs_forbid' | 'count_limits_differ' | 'hook_contains_vs_not_contains';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policyGuardrails.d.ts","sourceRoot":"","sources":["../src/policyGuardrails.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,eAAO,MAAM,kBAAkB,qEAAsE,CAAA;AACrG;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,8CAA+C,CAAA;AAEnF;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,eAAe,CAAA;AAEtD,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKpE;AACD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjE,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"policyGuardrails.d.ts","sourceRoot":"","sources":["../src/policyGuardrails.ts"],"names":[],"mappings":"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"}
|
package/dist/policyGuardrails.js
CHANGED
|
@@ -45,7 +45,13 @@ function guardrailIdFromSopTitle(title) {
|
|
|
45
45
|
const stem = title.match(/^guardrail-([A-Za-z0-9_-]{4,64})$/);
|
|
46
46
|
return stem ? stem[1] : null;
|
|
47
47
|
}
|
|
48
|
-
|
|
48
|
+
/**
|
|
49
|
+
* `workspace_setting` (TD-474 item 2) is the one target no rule endpoint
|
|
50
|
+
* projects: an `allowed_models` or `egress_allow` guardrail is written into
|
|
51
|
+
* the workspace setting the proxy already enforces when a member promotes it,
|
|
52
|
+
* and unwound when it is retired.
|
|
53
|
+
*/
|
|
54
|
+
exports.GUARDRAIL_TARGETS = ['hook_rule', 'sop_front_matter', 'wasm_rule', 'workspace_setting'];
|
|
49
55
|
exports.GUARDRAIL_EVENT_TYPES = [
|
|
50
56
|
'PROPOSED',
|
|
51
57
|
'SHADOW_APPROVED',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policyGuardrails.js","sourceRoot":"","sources":["../src/policyGuardrails.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAsBH,8CAEC;AAOD,0DAKC;
|
|
1
|
+
{"version":3,"file":"policyGuardrails.js","sourceRoot":"","sources":["../src/policyGuardrails.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAsBH,8CAEC;AAOD,0DAKC;AAgUD,kEAIC;AApWY,QAAA,kBAAkB,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAU,CAAA;AACrG;;;;GAIG;AACU,QAAA,uBAAuB,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAA;AAEnF;;;;;;GAMG;AACU,QAAA,0BAA0B,GAAG,YAAY,CAAA;AAEtD,oFAAoF;AACpF,SAAgB,iBAAiB,CAAC,WAAmB;IACnD,OAAO,aAAa,WAAW,EAAE,CAAA;AACnC,CAAC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,KAAa;IACnD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAA;IACtE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC,CAAC,CAAE,CAAA;IAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAC/B,CAAC;AAGD;;;;;GAKG;AACU,QAAA,iBAAiB,GAAG,CAAC,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,mBAAmB,CAAU,CAAA;AAGhG,QAAA,qBAAqB,GAAG;IACnC,UAAU;IACV,iBAAiB;IACjB,UAAU;IACV,UAAU;IACV,SAAS;IACT,cAAc;IACd,oBAAoB;IACpB,kBAAkB;IAClB,kIAAkI;IAClI,gBAAgB;CACR,CAAA;AAgNV;;;;;;GAMG;AACU,QAAA,sBAAsB,GAAG,GAAG,CAAA;AAC5B,QAAA,6BAA6B,GAAG,IAAI,CAAA;AAEjD,4EAA4E;AAC/D,QAAA,uBAAuB,GAAG,CAAC,CAAA;AAExC;;;;;;;;;;;GAWG;AACU,QAAA,iBAAiB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,CAAU,CAAA;AAgErJ,SAAgB,2BAA2B,CAAC,KAAc;IACxD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IACrD,MAAM,CAAC,GAAI,KAAgC,CAAC,QAAQ,CAAA;IACpD,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAQ,CAAyB,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAQ,CAA+B,CAAC,WAAW,KAAK,QAAQ,CAAA;AACjK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerVerification.d.ts","sourceRoot":"","sources":["../src/providerVerification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAiBH,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,KAAK,GAAG,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,6EAA6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,oBAAoB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"providerVerification.d.ts","sourceRoot":"","sources":["../src/providerVerification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAiBH,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,KAAK,GAAG,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,6EAA6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,oBAAoB,GAAG,IAAI,CAkH7B;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAE1D;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CAItE"}
|
|
@@ -113,6 +113,16 @@ function buildVerificationProbe(provider, fields) {
|
|
|
113
113
|
headers: { Authorization: `Bearer ${apiKey}` },
|
|
114
114
|
};
|
|
115
115
|
}
|
|
116
|
+
case 'deepseek': {
|
|
117
|
+
const apiKey = fields.apiKey;
|
|
118
|
+
if (!apiKey)
|
|
119
|
+
return null;
|
|
120
|
+
return {
|
|
121
|
+
url: 'https://api.deepseek.com/v1/models',
|
|
122
|
+
method: 'GET',
|
|
123
|
+
headers: { Authorization: `Bearer ${apiKey}` },
|
|
124
|
+
};
|
|
125
|
+
}
|
|
116
126
|
case 'cohere': {
|
|
117
127
|
const apiKey = fields.apiKey;
|
|
118
128
|
if (!apiKey)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerVerification.js","sourceRoot":"","sources":["../src/providerVerification.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;;AAyCH,
|
|
1
|
+
{"version":3,"file":"providerVerification.js","sourceRoot":"","sources":["../src/providerVerification.ts"],"names":[],"mappings":"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"}
|
package/dist/providers.d.ts
CHANGED
|
@@ -73,6 +73,15 @@ export declare const LIVE_ROUTING_PROVIDER_IDS: readonly ["anthropic", "openai",
|
|
|
73
73
|
export declare const PROVIDER_REGISTRY: ProviderDefinition[];
|
|
74
74
|
export declare function getProviderDefinition(id: string): ProviderDefinition | undefined;
|
|
75
75
|
export declare function isKnownProviderId(id: string): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* DeepSeek's own API model ids — the only names the proxy routes to DeepSeek
|
|
78
|
+
* (TD-370), matched exactly and case-insensitively. Mirrors
|
|
79
|
+
* `DEEPSEEK_API_MODELS` in `packages/proxy/src/proxy.rs`; the parity test
|
|
80
|
+
* compares the two lists. Not a prefix: `deepseek-r1`,
|
|
81
|
+
* `deepseek-coder-v2-instruct` and other open-weight names are served by
|
|
82
|
+
* Ollama, Groq, Together, ... behind the OpenAI-compatible upstream.
|
|
83
|
+
*/
|
|
84
|
+
export declare const DEEPSEEK_API_MODEL_IDS: readonly ["deepseek-chat", "deepseek-reasoner", "deepseek-flash"];
|
|
76
85
|
/**
|
|
77
86
|
* Which provider the data-plane proxy would route a model name to.
|
|
78
87
|
*
|
|
@@ -86,8 +95,9 @@ export declare function isKnownProviderId(id: string): boolean;
|
|
|
86
95
|
*
|
|
87
96
|
* Order matters and matches the Rust exactly: claude → gemini → '/'
|
|
88
97
|
* (OpenRouter's vendor/model namespacing — checked before the mistral
|
|
89
|
-
* prefixes so "mistralai/..." routes to OpenRouter) →
|
|
90
|
-
* OpenAI as the
|
|
98
|
+
* prefixes so "mistralai/..." routes to OpenRouter) → an exact DeepSeek API
|
|
99
|
+
* id ({@link DEEPSEEK_API_MODEL_IDS}) → mistral prefixes → OpenAI as the
|
|
100
|
+
* default arm.
|
|
91
101
|
*/
|
|
92
|
-
export declare function inferProviderForModel(model: string): 'anthropic' | 'gemini' | 'openrouter' | 'mistral' | 'openai';
|
|
102
|
+
export declare function inferProviderForModel(model: string): 'anthropic' | 'gemini' | 'openrouter' | 'deepseek' | 'mistral' | 'openai';
|
|
93
103
|
//# sourceMappingURL=providers.d.ts.map
|
package/dist/providers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAA;AAEhE,MAAM,WAAW,uBAAuB;IACtC,iFAAiF;IACjF,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,iBAAiB,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,uBAAuB,EAAE,CAAA;IACjC,iFAAiF;IACjF,WAAW,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,yBAAyB,4CAA6C,CAAA;AAEnF,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAA;AAEhE,MAAM,WAAW,uBAAuB;IACtC,iFAAiF;IACjF,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,iBAAiB,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,uBAAuB,EAAE,CAAA;IACjC,iFAAiF;IACjF,WAAW,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,yBAAyB,4CAA6C,CAAA;AAEnF,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EA2FjD,CAAA;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEhF;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,mEAAoE,CAAA;AAEvG;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,GACZ,WAAW,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAU3E"}
|
package/dist/providers.js
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
* @module
|
|
32
32
|
*/
|
|
33
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
|
-
exports.PROVIDER_REGISTRY = exports.LIVE_ROUTING_PROVIDER_IDS = void 0;
|
|
34
|
+
exports.DEEPSEEK_API_MODEL_IDS = exports.PROVIDER_REGISTRY = exports.LIVE_ROUTING_PROVIDER_IDS = void 0;
|
|
35
35
|
exports.getProviderDefinition = getProviderDefinition;
|
|
36
36
|
exports.isKnownProviderId = isKnownProviderId;
|
|
37
37
|
exports.inferProviderForModel = inferProviderForModel;
|
|
@@ -130,6 +130,15 @@ exports.PROVIDER_REGISTRY = [
|
|
|
130
130
|
fields: [{ key: 'apiKey', label: 'API Key', type: 'password', required: true }],
|
|
131
131
|
routingLive: true,
|
|
132
132
|
},
|
|
133
|
+
{
|
|
134
|
+
// TD-370: the proxy routes DEEPSEEK_API_MODEL_IDS here, reading this blob
|
|
135
|
+
// (`deepseek_config`) the same way it reads Mistral's and OpenRouter's.
|
|
136
|
+
id: 'deepseek',
|
|
137
|
+
displayName: 'DeepSeek',
|
|
138
|
+
docsUrl: 'https://platform.deepseek.com/api_keys',
|
|
139
|
+
fields: [{ key: 'apiKey', label: 'API Key', type: 'password', required: true }],
|
|
140
|
+
routingLive: true,
|
|
141
|
+
},
|
|
133
142
|
{
|
|
134
143
|
id: 'ollama',
|
|
135
144
|
displayName: 'Ollama (self-hosted)',
|
|
@@ -144,6 +153,15 @@ function getProviderDefinition(id) {
|
|
|
144
153
|
function isKnownProviderId(id) {
|
|
145
154
|
return exports.PROVIDER_REGISTRY.some((p) => p.id === id);
|
|
146
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* DeepSeek's own API model ids — the only names the proxy routes to DeepSeek
|
|
158
|
+
* (TD-370), matched exactly and case-insensitively. Mirrors
|
|
159
|
+
* `DEEPSEEK_API_MODELS` in `packages/proxy/src/proxy.rs`; the parity test
|
|
160
|
+
* compares the two lists. Not a prefix: `deepseek-r1`,
|
|
161
|
+
* `deepseek-coder-v2-instruct` and other open-weight names are served by
|
|
162
|
+
* Ollama, Groq, Together, ... behind the OpenAI-compatible upstream.
|
|
163
|
+
*/
|
|
164
|
+
exports.DEEPSEEK_API_MODEL_IDS = ['deepseek-chat', 'deepseek-reasoner', 'deepseek-flash'];
|
|
147
165
|
/**
|
|
148
166
|
* Which provider the data-plane proxy would route a model name to.
|
|
149
167
|
*
|
|
@@ -157,8 +175,9 @@ function isKnownProviderId(id) {
|
|
|
157
175
|
*
|
|
158
176
|
* Order matters and matches the Rust exactly: claude → gemini → '/'
|
|
159
177
|
* (OpenRouter's vendor/model namespacing — checked before the mistral
|
|
160
|
-
* prefixes so "mistralai/..." routes to OpenRouter) →
|
|
161
|
-
* OpenAI as the
|
|
178
|
+
* prefixes so "mistralai/..." routes to OpenRouter) → an exact DeepSeek API
|
|
179
|
+
* id ({@link DEEPSEEK_API_MODEL_IDS}) → mistral prefixes → OpenAI as the
|
|
180
|
+
* default arm.
|
|
162
181
|
*/
|
|
163
182
|
function inferProviderForModel(model) {
|
|
164
183
|
const m = model.toLowerCase();
|
|
@@ -168,6 +187,8 @@ function inferProviderForModel(model) {
|
|
|
168
187
|
return 'gemini';
|
|
169
188
|
if (m.includes('/'))
|
|
170
189
|
return 'openrouter';
|
|
190
|
+
if (exports.DEEPSEEK_API_MODEL_IDS.includes(m))
|
|
191
|
+
return 'deepseek';
|
|
171
192
|
if (m.startsWith('mistral') || m.startsWith('open-mixtral') || m.startsWith('codestral')) {
|
|
172
193
|
return 'mistral';
|
|
173
194
|
}
|
package/dist/providers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;;;
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;;;AA4IH,sDAEC;AAED,8CAEC;AA6BD,sDAYC;AAjKD;;;;;;;;;;;;;;;;;;GAkBG;AACU,QAAA,yBAAyB,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAA;AAEtE,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,WAAW;QACxB,OAAO,EAAE,6CAA6C;QACtD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;QAC1G,WAAW,EAAE,IAAI;KAClB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,sCAAsC;QAC/C,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QACtG,WAAW,EAAE,IAAI;KAClB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,eAAe;QAC5B,OAAO,EAAE,wCAAwC;QACjD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/E,WAAW,EAAE,IAAI;KAClB;IACD;QACE,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,cAAc;QAC3B,OAAO,EAAE,6EAA6E;QACtF,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;YACrE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,wCAAwC,EAAE;YACpI,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;SAClF;QACD,WAAW,EAAE,KAAK;KACnB;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,aAAa;QAC1B,OAAO,EAAE,2EAA2E;QACpF,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;YACvF,EAAE,GAAG,EAAE,oBAAoB,EAAE,KAAK,EAAE,uBAAuB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC/F,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE;SAClG;QACD,WAAW,EAAE,KAAK;KACnB;IACD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,kBAAkB;QAC/B,OAAO,EAAE,wDAAwD;QACjE,MAAM,EAAE;YACN,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC3E,EAAE,GAAG,EAAE,oBAAoB,EAAE,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,8EAA8E,EAAE;SACzL;QACD,WAAW,EAAE,KAAK;KACnB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,uCAAuC;QAChD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/E,WAAW,EAAE,KAAK;KACnB;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,qCAAqC;QAC9C,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/E,WAAW,EAAE,IAAI;KAClB;IACD;QACE,EAAE,EAAE,YAAY;QAChB,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,4BAA4B;QACrC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/E,WAAW,EAAE,IAAI;KAClB;IACD;QACE,0EAA0E;QAC1E,wEAAwE;QACxE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,wCAAwC;QACjD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/E,WAAW,EAAE,IAAI;KAClB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,sBAAsB;QACnC,OAAO,EAAE,wDAAwD;QACjE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;QACtH,WAAW,EAAE,KAAK;KACnB;CACF,CAAA;AAED,SAAgB,qBAAqB,CAAC,EAAU;IAC9C,OAAO,yBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;AACnD,CAAC;AAED,SAAgB,iBAAiB,CAAC,EAAU;IAC1C,OAAO,yBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;AACnD,CAAC;AAED;;;;;;;GAOG;AACU,QAAA,sBAAsB,GAAG,CAAC,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,CAAU,CAAA;AAEvG;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,qBAAqB,CACnC,KAAa;IAEb,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;IAC7B,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,WAAW,CAAA;IAC5C,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAA;IACzC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAA;IACxC,IAAK,8BAA4C,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,UAAU,CAAA;IAChF,IAAI,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACzF,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* proxyBaseUrls.ts — the base URL each SDK family needs to reach the proxy.
|
|
3
|
+
*
|
|
4
|
+
* The proxy serves exactly `/v1/messages`, `/v1/chat/completions` and
|
|
5
|
+
* `/v1/responses`. The two SDK families append different suffixes to the base
|
|
6
|
+
* URL they are given, so one URL cannot serve both:
|
|
7
|
+
*
|
|
8
|
+
* - Anthropic SDKs (and Claude Code) append `/v1/messages` — they need the
|
|
9
|
+
* bare proxy host.
|
|
10
|
+
* - OpenAI SDKs append `/chat/completions` or `/responses` — they need the
|
|
11
|
+
* host plus `/v1`.
|
|
12
|
+
*
|
|
13
|
+
* Every writer that hands a harness a base URL goes through these helpers so
|
|
14
|
+
* the two can never be swapped again. `INTUTIC_PROXY_URL` and the sync
|
|
15
|
+
* payload's `proxyUrl` both mean the bare host; a trailing `/v1` on either is
|
|
16
|
+
* tolerated and removed, because older configs and docs carried one.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
*/
|
|
20
|
+
/** Where `intutic start` and `intutic connect` run the proxy by default. */
|
|
21
|
+
export declare const DEFAULT_PROXY_HOST = "http://localhost:4000";
|
|
22
|
+
/**
|
|
23
|
+
* Normalise a configured proxy URL to its bare host form: no trailing slash,
|
|
24
|
+
* no trailing `/v1`. An empty value means "not configured" and resolves to
|
|
25
|
+
* {@link DEFAULT_PROXY_HOST}.
|
|
26
|
+
*/
|
|
27
|
+
export declare function proxyHost(proxyUrl: string | undefined | null): string;
|
|
28
|
+
/** Base URL for Anthropic SDKs (`ANTHROPIC_BASE_URL`): the bare host. */
|
|
29
|
+
export declare function anthropicBaseUrl(proxyUrl: string | undefined | null): string;
|
|
30
|
+
/** Base URL for OpenAI-compatible SDKs (`OPENAI_BASE_URL`): host + `/v1`. */
|
|
31
|
+
export declare function openaiBaseUrl(proxyUrl: string | undefined | null): string;
|
|
32
|
+
//# sourceMappingURL=proxyBaseUrls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxyBaseUrls.d.ts","sourceRoot":"","sources":["../src/proxyBaseUrls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,0BAA0B,CAAA;AAEzD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAIrE;AAYD,yEAAyE;AACzE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAE5E;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAEzE"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* proxyBaseUrls.ts — the base URL each SDK family needs to reach the proxy.
|
|
4
|
+
*
|
|
5
|
+
* The proxy serves exactly `/v1/messages`, `/v1/chat/completions` and
|
|
6
|
+
* `/v1/responses`. The two SDK families append different suffixes to the base
|
|
7
|
+
* URL they are given, so one URL cannot serve both:
|
|
8
|
+
*
|
|
9
|
+
* - Anthropic SDKs (and Claude Code) append `/v1/messages` — they need the
|
|
10
|
+
* bare proxy host.
|
|
11
|
+
* - OpenAI SDKs append `/chat/completions` or `/responses` — they need the
|
|
12
|
+
* host plus `/v1`.
|
|
13
|
+
*
|
|
14
|
+
* Every writer that hands a harness a base URL goes through these helpers so
|
|
15
|
+
* the two can never be swapped again. `INTUTIC_PROXY_URL` and the sync
|
|
16
|
+
* payload's `proxyUrl` both mean the bare host; a trailing `/v1` on either is
|
|
17
|
+
* tolerated and removed, because older configs and docs carried one.
|
|
18
|
+
*
|
|
19
|
+
* @module
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.DEFAULT_PROXY_HOST = void 0;
|
|
23
|
+
exports.proxyHost = proxyHost;
|
|
24
|
+
exports.anthropicBaseUrl = anthropicBaseUrl;
|
|
25
|
+
exports.openaiBaseUrl = openaiBaseUrl;
|
|
26
|
+
/** Where `intutic start` and `intutic connect` run the proxy by default. */
|
|
27
|
+
exports.DEFAULT_PROXY_HOST = 'http://localhost:4000';
|
|
28
|
+
/**
|
|
29
|
+
* Normalise a configured proxy URL to its bare host form: no trailing slash,
|
|
30
|
+
* no trailing `/v1`. An empty value means "not configured" and resolves to
|
|
31
|
+
* {@link DEFAULT_PROXY_HOST}.
|
|
32
|
+
*/
|
|
33
|
+
function proxyHost(proxyUrl) {
|
|
34
|
+
let host = trimTrailingSlashes((proxyUrl ?? '').trim());
|
|
35
|
+
if (host.endsWith('/v1'))
|
|
36
|
+
host = trimTrailingSlashes(host.slice(0, -'/v1'.length));
|
|
37
|
+
return host === '' ? exports.DEFAULT_PROXY_HOST : host;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Trims trailing `/` characters with a loop rather than `/\/+$/`, which static
|
|
41
|
+
* analysis flags as a polynomial-time pattern on external input.
|
|
42
|
+
*/
|
|
43
|
+
function trimTrailingSlashes(s) {
|
|
44
|
+
let end = s.length;
|
|
45
|
+
while (end > 0 && s.charCodeAt(end - 1) === 47 /* '/' */)
|
|
46
|
+
end--;
|
|
47
|
+
return s.slice(0, end);
|
|
48
|
+
}
|
|
49
|
+
/** Base URL for Anthropic SDKs (`ANTHROPIC_BASE_URL`): the bare host. */
|
|
50
|
+
function anthropicBaseUrl(proxyUrl) {
|
|
51
|
+
return proxyHost(proxyUrl);
|
|
52
|
+
}
|
|
53
|
+
/** Base URL for OpenAI-compatible SDKs (`OPENAI_BASE_URL`): host + `/v1`. */
|
|
54
|
+
function openaiBaseUrl(proxyUrl) {
|
|
55
|
+
return `${proxyHost(proxyUrl)}/v1`;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=proxyBaseUrls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxyBaseUrls.js","sourceRoot":"","sources":["../src/proxyBaseUrls.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAUH,8BAIC;AAaD,4CAEC;AAGD,sCAEC;AAhCD,4EAA4E;AAC/D,QAAA,kBAAkB,GAAG,uBAAuB,CAAA;AAEzD;;;;GAIG;AACH,SAAgB,SAAS,CAAC,QAAmC;IAC3D,IAAI,IAAI,GAAG,mBAAmB,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAClF,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,0BAAkB,CAAC,CAAC,CAAC,IAAI,CAAA;AAChD,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,CAAS;IACpC,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,CAAA;IAClB,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,SAAS;QAAE,GAAG,EAAE,CAAA;IAC/D,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AACxB,CAAC;AAED,yEAAyE;AACzE,SAAgB,gBAAgB,CAAC,QAAmC;IAClE,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC5B,CAAC;AAED,6EAA6E;AAC7E,SAAgB,aAAa,CAAC,QAAmC;IAC/D,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAA;AACpC,CAAC"}
|
package/dist/scriptScan.d.ts
CHANGED
|
@@ -120,6 +120,42 @@ export declare const MAX_SKILL_DIR_DEPTH = 3;
|
|
|
120
120
|
export declare const MAX_FILES_PER_SKILL = 40;
|
|
121
121
|
/** 256 KiB. */
|
|
122
122
|
export declare const MAX_SCRIPT_SCAN_BYTES = 262144;
|
|
123
|
+
/**
|
|
124
|
+
* 8 MiB. Largest bundled file the sync daemon will read to sha256-hash for
|
|
125
|
+
* its `scripts` facet (TD-486). Larger than {@link MAX_SCRIPT_SCAN_BYTES} on
|
|
126
|
+
* purpose: a file too big to content-scan is still worth a hash-only
|
|
127
|
+
* VirusTotal lookup. A file over this cap is counted in `total` and neither
|
|
128
|
+
* hashed nor scanned — the daemon re-walks every skill on every sync cycle,
|
|
129
|
+
* so its reads stay bounded. The CLI's `auditScriptFile` hashes whatever it
|
|
130
|
+
* reads, uncapped; it runs on demand, not on a loop.
|
|
131
|
+
*/
|
|
132
|
+
export declare const MAX_SCRIPT_HASH_BYTES: number;
|
|
133
|
+
/**
|
|
134
|
+
* A skill's bundled-script summary, as the sync daemon reports it in the
|
|
135
|
+
* `skills[].scripts` facet of `POST /api/v1/agents/report`. Shared so the
|
|
136
|
+
* daemon (`collectSkillScripts`) and the control plane
|
|
137
|
+
* (`agentPosture.ts`, `virusTotalService.ts`) agree on the wire shape.
|
|
138
|
+
*/
|
|
139
|
+
export interface SkillScriptsFacet {
|
|
140
|
+
/** Every bundled file the walk found, scanned or not. */
|
|
141
|
+
total: number;
|
|
142
|
+
/** How many of `total` were content-scanned — excludes unreadable files,
|
|
143
|
+
* files over the byte cap, and files whose language could not be
|
|
144
|
+
* determined. */
|
|
145
|
+
scanned: number;
|
|
146
|
+
/** How many of `scanned` came back with at least one finding. */
|
|
147
|
+
flagged: number;
|
|
148
|
+
/**
|
|
149
|
+
* sha256 (lowercase hex) of each bundled file the daemon could read
|
|
150
|
+
* within {@link MAX_SCRIPT_HASH_BYTES}, one entry per file in walk order
|
|
151
|
+
* (TD-486). Hashes only — file content never leaves the machine. The
|
|
152
|
+
* control plane joins VirusTotal verdicts to the skill on these. ABSENT
|
|
153
|
+
* (not empty) from a daemon build that predates TD-486; the control
|
|
154
|
+
* plane falls back to a name-keyed join only in that case. An empty
|
|
155
|
+
* array means nothing was hashable, and gets no fallback.
|
|
156
|
+
*/
|
|
157
|
+
sha256?: string[];
|
|
158
|
+
}
|
|
123
159
|
/**
|
|
124
160
|
* Infer a bundled file's script language from its path (extension) and,
|
|
125
161
|
* when given, its first line (shebang). Extension wins when recognized —
|
package/dist/scriptScan.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scriptScan.d.ts","sourceRoot":"","sources":["../src/scriptScan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAEH,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAc,MAAM,gBAAgB,CAAA;AAEhH,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAA;AAElD;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GACtB,OAAO,GACP,QAAQ,GACR,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,YAAY,GACZ,MAAM,GACN,SAAS,CAAA;AAEb;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD;;;oBAGgB;IAChB,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,CAAA;CACtC;AAED;;8CAE8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,iBAAiB,CAAA;IAC3B;sCACkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;mCAC+B;IAC/B,MAAM,CAAC,EAAE,eAAe,CAAA;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,iBAAiB,EAAE,CAAA;IAC7B,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAe;AACf,eAAO,MAAM,qBAAqB,SAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"scriptScan.d.ts","sourceRoot":"","sources":["../src/scriptScan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAEH,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAc,MAAM,gBAAgB,CAAA;AAEhH,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAA;AAElD;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GACtB,OAAO,GACP,QAAQ,GACR,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,YAAY,GACZ,MAAM,GACN,SAAS,CAAA;AAEb;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD;;;oBAGgB;IAChB,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,CAAA;CACtC;AAED;;8CAE8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,iBAAiB,CAAA;IAC3B;sCACkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;mCAC+B;IAC/B,MAAM,CAAC,EAAE,eAAe,CAAA;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,iBAAiB,EAAE,CAAA;IAC7B,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAe;AACf,eAAO,MAAM,qBAAqB,SAAU,CAAA;AAE5C;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,QAAkB,CAAA;AAEpD;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAA;IACb;;sBAEkB;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAA;IACf;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAoCD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAarF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EA6I5D,CAAA;AAgED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,gBAAgB,CAe7F"}
|
package/dist/scriptScan.js
CHANGED
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
* @module
|
|
52
52
|
*/
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
-
exports.SCRIPT_SCAN_PATTERNS = exports.MAX_SCRIPT_SCAN_BYTES = exports.MAX_FILES_PER_SKILL = exports.MAX_SKILL_DIR_DEPTH = void 0;
|
|
54
|
+
exports.SCRIPT_SCAN_PATTERNS = exports.MAX_SCRIPT_HASH_BYTES = exports.MAX_SCRIPT_SCAN_BYTES = exports.MAX_FILES_PER_SKILL = exports.MAX_SKILL_DIR_DEPTH = void 0;
|
|
55
55
|
exports.detectScriptLanguage = detectScriptLanguage;
|
|
56
56
|
exports.scanScriptContent = scanScriptContent;
|
|
57
57
|
const skillScan_js_1 = require("./skillScan.js");
|
|
@@ -75,6 +75,16 @@ exports.MAX_SKILL_DIR_DEPTH = 3;
|
|
|
75
75
|
exports.MAX_FILES_PER_SKILL = 40;
|
|
76
76
|
/** 256 KiB. */
|
|
77
77
|
exports.MAX_SCRIPT_SCAN_BYTES = 262_144;
|
|
78
|
+
/**
|
|
79
|
+
* 8 MiB. Largest bundled file the sync daemon will read to sha256-hash for
|
|
80
|
+
* its `scripts` facet (TD-486). Larger than {@link MAX_SCRIPT_SCAN_BYTES} on
|
|
81
|
+
* purpose: a file too big to content-scan is still worth a hash-only
|
|
82
|
+
* VirusTotal lookup. A file over this cap is counted in `total` and neither
|
|
83
|
+
* hashed nor scanned — the daemon re-walks every skill on every sync cycle,
|
|
84
|
+
* so its reads stay bounded. The CLI's `auditScriptFile` hashes whatever it
|
|
85
|
+
* reads, uncapped; it runs on demand, not on a loop.
|
|
86
|
+
*/
|
|
87
|
+
exports.MAX_SCRIPT_HASH_BYTES = 8 * 1024 * 1024;
|
|
78
88
|
/** Extensions this module recognizes, lowercase, without the leading dot. */
|
|
79
89
|
const EXTENSION_LANGUAGE = {
|
|
80
90
|
sh: 'shell',
|