@tonyclaw/agent-inspector 2.0.10 → 2.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/.output/nitro.json +1 -1
- package/.output/public/assets/{CompareDrawer-BWMipEjS.js → CompareDrawer-ClM_uVRy.js} +1 -1
- package/.output/public/assets/ProxyViewerContainer-CTNNzXSa.js +114 -0
- package/.output/public/assets/{ReplayDialog-DaSzZsvM.js → ReplayDialog-7rp7N_KJ.js} +1 -1
- package/.output/public/assets/RequestAnatomy-sL2FFo_N.js +1 -0
- package/.output/public/assets/ResponseView-Cjlf3b6-.js +1 -0
- package/.output/public/assets/{StreamingChunkSequence-B4atnL99.js → StreamingChunkSequence-Ctx3sT3r.js} +1 -1
- package/.output/public/assets/_sessionId-DEWzDQ8-.js +1 -0
- package/.output/public/assets/index-DGIIhZTn.js +1 -0
- package/.output/public/assets/index-D_nZj9Vt.css +1 -0
- package/.output/public/assets/{main-DE6Y4-wV.js → main-FvIQopAy.js} +2 -2
- package/.output/server/_libs/lucide-react.mjs +51 -39
- package/.output/server/{_sessionId-61HO9rUI.mjs → _sessionId-BDSgtrsI.mjs} +2 -2
- package/.output/server/_ssr/{CompareDrawer-CSPqneYm.mjs → CompareDrawer-Cqvv0I3x.mjs} +3 -3
- package/.output/server/_ssr/{ProxyViewerContainer-DrSMa5O7.mjs → ProxyViewerContainer-C0YEoG8N.mjs} +1611 -183
- package/.output/server/_ssr/{ReplayDialog-Dn3naENv.mjs → ReplayDialog-CrsynUKI.mjs} +4 -4
- package/.output/server/_ssr/RequestAnatomy-CR_JUkcL.mjs +688 -0
- package/.output/server/_ssr/{ResponseView-CwXAWOoE.mjs → ResponseView-Dba2Et69.mjs} +3 -3
- package/.output/server/_ssr/{StreamingChunkSequence-DRSR2FfN.mjs → StreamingChunkSequence-BIMHLstI.mjs} +2 -2
- package/.output/server/_ssr/{index-D4zn5CAg.mjs → index-DveIUTm5.mjs} +2 -2
- package/.output/server/_ssr/index.mjs +2 -2
- package/.output/server/_ssr/{router-CSRaa_tu.mjs → router-D0yXVG0Q.mjs} +85 -22
- package/.output/server/{_tanstack-start-manifest_v-CfvVUYYj.mjs → _tanstack-start-manifest_v-pe0xJFuQ.mjs} +1 -1
- package/.output/server/index.mjs +70 -70
- package/package.json +1 -1
- package/src/components/ProxyViewer.tsx +453 -52
- package/src/components/providers/ProviderCard.tsx +45 -2
- package/src/components/providers/ProviderForm.tsx +245 -80
- package/src/components/providers/ProvidersPanel.tsx +7 -1
- package/src/components/proxy-viewer/ConversationGroup.tsx +18 -1
- package/src/components/proxy-viewer/LogEntry.tsx +25 -0
- package/src/components/proxy-viewer/TurnGroup.tsx +15 -0
- package/src/components/proxy-viewer/anatomy/RequestAnatomy.tsx +144 -80
- package/src/components/proxy-viewer/anatomy/contextIntelligence.ts +70 -5
- package/src/components/proxy-viewer/anatomy/sessionContextSummary.ts +196 -0
- package/src/components/proxy-viewer/logFocus.ts +33 -0
- package/src/lib/providerModelMetadata.ts +64 -12
- package/src/lib/utils.ts +7 -0
- package/src/proxy/providers.ts +25 -0
- package/src/routes/api/providers.ts +3 -0
- package/.output/public/assets/ProxyViewerContainer-DIAgurux.js +0 -114
- package/.output/public/assets/RequestAnatomy-BfQmPHCd.js +0 -1
- package/.output/public/assets/ResponseView-CblEWDMx.js +0 -1
- package/.output/public/assets/_sessionId-DUzYnZXV.js +0 -1
- package/.output/public/assets/index-CxhRsekH.css +0 -1
- package/.output/public/assets/index-jagRsQaV.js +0 -1
- package/.output/server/_ssr/RequestAnatomy-D1X3f3AX.mjs +0 -1322
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
|
|
2
|
-
import { g as getLogFormatAdapter, f as formatTokens, c as cn, s as getStatusCategory, B as Badge,
|
|
3
|
-
import "./router-
|
|
2
|
+
import { g as getLogFormatAdapter, f as formatTokens, c as cn, s as getStatusCategory, B as Badge, t as Collapsible, v as CollapsibleTrigger, w as CollapsibleContent, x as ScrollArea, y as JsonViewer, z as safeJsonValue } from "./ProxyViewerContainer-C0YEoG8N.mjs";
|
|
3
|
+
import "./router-D0yXVG0Q.mjs";
|
|
4
4
|
import "../_libs/modelcontextprotocol__server.mjs";
|
|
5
5
|
import "../_libs/jszip.mjs";
|
|
6
|
-
import { Z as Zap, j as TriangleAlert,
|
|
6
|
+
import { Z as Zap, j as TriangleAlert, ad as CircleStop, B as Brain, b as ChevronDown, f as ChevronRight, T as Terminal } from "../_libs/lucide-react.mjs";
|
|
7
7
|
import { M as Markdown } from "../_libs/react-markdown.mjs";
|
|
8
8
|
import { R as Root } from "../_libs/radix-ui__react-separator.mjs";
|
|
9
9
|
import "../_libs/swr.mjs";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
|
|
2
|
-
import { k as TooltipProvider, l as Tooltip, m as TooltipTrigger, B as Badge, n as TooltipContent,
|
|
3
|
-
import "./router-
|
|
2
|
+
import { k as TooltipProvider, l as Tooltip, m as TooltipTrigger, B as Badge, n as TooltipContent, y as JsonViewer } from "./ProxyViewerContainer-C0YEoG8N.mjs";
|
|
3
|
+
import "./router-D0yXVG0Q.mjs";
|
|
4
4
|
import "../_libs/modelcontextprotocol__server.mjs";
|
|
5
5
|
import "../_libs/jszip.mjs";
|
|
6
6
|
import { b as ChevronDown, f as ChevronRight, L as LoaderCircle } from "../_libs/lucide-react.mjs";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { P as ProxyViewerContainer } from "./ProxyViewerContainer-
|
|
1
|
+
import { P as ProxyViewerContainer } from "./ProxyViewerContainer-C0YEoG8N.mjs";
|
|
2
2
|
import "../_libs/react.mjs";
|
|
3
|
-
import "./router-
|
|
3
|
+
import "./router-D0yXVG0Q.mjs";
|
|
4
4
|
import "../_libs/modelcontextprotocol__server.mjs";
|
|
5
5
|
import "../_libs/jszip.mjs";
|
|
6
6
|
import "../_libs/swr.mjs";
|
|
@@ -198,7 +198,7 @@ function getResponse() {
|
|
|
198
198
|
return event.res;
|
|
199
199
|
}
|
|
200
200
|
async function getStartManifest(matchedRoutes) {
|
|
201
|
-
const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-
|
|
201
|
+
const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-pe0xJFuQ.mjs");
|
|
202
202
|
const startManifest = tsrStartManifest();
|
|
203
203
|
const rootRoute = startManifest.routes[rootRouteId] = startManifest.routes[rootRouteId] || {};
|
|
204
204
|
rootRoute.assets = rootRoute.assets || [];
|
|
@@ -767,7 +767,7 @@ let entriesPromise;
|
|
|
767
767
|
let baseManifestPromise;
|
|
768
768
|
let cachedFinalManifestPromise;
|
|
769
769
|
async function loadEntries() {
|
|
770
|
-
const routerEntry = await import("./router-
|
|
770
|
+
const routerEntry = await import("./router-D0yXVG0Q.mjs").then((n) => n.m);
|
|
771
771
|
const startEntry = await import("./start-HYkvq4Ni.mjs");
|
|
772
772
|
return { startEntry, routerEntry };
|
|
773
773
|
}
|
|
@@ -49,7 +49,7 @@ import "../_libs/mimic-function.mjs";
|
|
|
49
49
|
import "../_libs/semver.mjs";
|
|
50
50
|
import "../_libs/uint8array-extras.mjs";
|
|
51
51
|
const faviconSvg = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2064%2064'%20role='img'%20aria-label='Agent%20Inspector'%3e%3crect%20width='64'%20height='64'%20rx='14'%20fill='%23111827'%20/%3e%3cg%20fill='none'%20stroke='%23f59e0b'%20stroke-width='4.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20fill='%23f59e0b'%20d='M15%2036c0-11%207-18%2017-18s17%207%2017%2018c0%208-7%2013-17%2013s-17-5-17-13z'%20/%3e%3cpath%20d='M16%2031c-6-5-12-3-12%204%200%205%206%206%2011%202'%20/%3e%3cpath%20d='M48%2031c6-5%2012-3%2012%204%200%205-6%206-11%202'%20/%3e%3cpath%20d='M27%2019l-3-7'%20/%3e%3cpath%20d='M37%2019l3-7'%20/%3e%3cpath%20d='M19%2045l-6%209'%20/%3e%3cpath%20d='M27%2048l-3%209'%20/%3e%3cpath%20d='M37%2048l3%209'%20/%3e%3cpath%20d='M45%2045l6%209'%20/%3e%3c/g%3e%3cpath%20d='M14%2047l9-8%208%209c-5%203.5-12%203-17-1z'%20fill='%232f6b3f'%20opacity='.95'%20/%3e%3cpath%20d='M18%2046l5-5%205%206c-3%201.6-7%201.4-10-1z'%20fill='%236fb36f'%20opacity='.95'%20/%3e%3cpath%20d='M23%2041v10'%20fill='none'%20stroke='%23d6b45f'%20stroke-width='1.6'%20stroke-linecap='round'%20/%3e%3ccircle%20cx='31'%20cy='48'%20r='1.8'%20fill='%23c2412d'%20/%3e%3cpath%20d='M24%2044l13-11%2014%2013c-8%205.8-18%205.3-27-2z'%20fill='%232f6b3f'%20opacity='.97'%20/%3e%3cpath%20d='M30%2043l7-7%209%209c-5%202.7-11%202.5-16-2z'%20fill='%236fb36f'%20opacity='.95'%20/%3e%3cpath%20d='M37%2036v14'%20fill='none'%20stroke='%23d6b45f'%20stroke-width='2'%20stroke-linecap='round'%20/%3e%3cpath%20d='M30%2043c5-2%2011-1.5%2016%202'%20fill='none'%20stroke='%239fca78'%20stroke-width='1.8'%20stroke-linecap='round'%20/%3e%3ccircle%20cx='51'%20cy='46'%20r='2'%20fill='%23c2412d'%20/%3e%3cpath%20d='M40%2050l8-8%207%208c-4.2%203.2-10%203-15%200z'%20fill='%232f6b3f'%20opacity='.95'%20/%3e%3cpath%20d='M43%2049l5-5%204.5%205.5c-3%201.5-6%201.2-9.5-.5z'%20fill='%236fb36f'%20opacity='.95'%20/%3e%3cpath%20d='M48%2044v9'%20fill='none'%20stroke='%23d6b45f'%20stroke-width='1.5'%20stroke-linecap='round'%20/%3e%3ccircle%20cx='55'%20cy='50'%20r='1.7'%20fill='%23c2412d'%20/%3e%3ccircle%20cx='24'%20cy='11'%20r='3.2'%20fill='%23f59e0b'%20/%3e%3ccircle%20cx='40'%20cy='11'%20r='3.2'%20fill='%23f59e0b'%20/%3e%3ccircle%20cx='25'%20cy='34'%20r='2.1'%20fill='%23111827'%20/%3e%3ccircle%20cx='39'%20cy='34'%20r='2.1'%20fill='%23111827'%20/%3e%3c/svg%3e";
|
|
52
|
-
const appCss = "/assets/index-
|
|
52
|
+
const appCss = "/assets/index-D_nZj9Vt.css";
|
|
53
53
|
const Route$s = createRootRoute({
|
|
54
54
|
head: () => ({
|
|
55
55
|
meta: [
|
|
@@ -92,7 +92,7 @@ function RootDocument({ children }) {
|
|
|
92
92
|
] })
|
|
93
93
|
] });
|
|
94
94
|
}
|
|
95
|
-
const $$splitComponentImporter$1 = () => import("./index-
|
|
95
|
+
const $$splitComponentImporter$1 = () => import("./index-DveIUTm5.mjs");
|
|
96
96
|
const Route$r = createFileRoute("/")({
|
|
97
97
|
component: lazyRouteComponent($$splitComponentImporter$1, "component")
|
|
98
98
|
});
|
|
@@ -135,7 +135,7 @@ function decodeSessionIdFromPath(encoded) {
|
|
|
135
135
|
function getSessionPath(sessionId) {
|
|
136
136
|
return `/session/${encodeSessionIdForPath(sessionId)}`;
|
|
137
137
|
}
|
|
138
|
-
const $$splitComponentImporter = () => import("../_sessionId-
|
|
138
|
+
const $$splitComponentImporter = () => import("../_sessionId-BDSgtrsI.mjs");
|
|
139
139
|
const Route$q = createFileRoute("/session/$sessionId")({
|
|
140
140
|
component: lazyRouteComponent($$splitComponentImporter, "component"),
|
|
141
141
|
parseParams: (params) => ({
|
|
@@ -2093,6 +2093,15 @@ const ProviderModelRegistrySchema = object({
|
|
|
2093
2093
|
models: array(ProviderRegistryModelSchema).optional().default([])
|
|
2094
2094
|
});
|
|
2095
2095
|
const BUILTIN_MODEL_METADATA_SOURCE_URL = "agent-inspector://builtin/model-metadata";
|
|
2096
|
+
const HF_DEEPSEEK_V4_PRO_URL = "https://huggingface.co/deepseek-ai/DeepSeek-V4-Pro";
|
|
2097
|
+
const HF_DEEPSEEK_V4_FLASH_URL = "https://huggingface.co/deepseek-ai/DeepSeek-V4-Flash";
|
|
2098
|
+
const HF_MINIMAX_M3_URL = "https://huggingface.co/MiniMaxAI/MiniMax-M3";
|
|
2099
|
+
const HF_MINIMAX_M2_7_URL = "https://huggingface.co/MiniMaxAI/MiniMax-M2.7";
|
|
2100
|
+
const HF_MINIMAX_M2_5_URL = "https://huggingface.co/MiniMaxAI/MiniMax-M2.5";
|
|
2101
|
+
const HF_MINIMAX_M2_1_URL = "https://huggingface.co/MiniMaxAI/MiniMax-M2.1";
|
|
2102
|
+
const HF_GLM_5_URL = "https://huggingface.co/zai-org/GLM-5";
|
|
2103
|
+
const HF_GLM_5_1_URL = "https://huggingface.co/zai-org/GLM-5.1";
|
|
2104
|
+
const HF_GLM_5_2_URL = "https://huggingface.co/zai-org/GLM-5.2";
|
|
2096
2105
|
const BUILTIN_PROVIDER_MODEL_REGISTRY = {
|
|
2097
2106
|
providers: [
|
|
2098
2107
|
{
|
|
@@ -2103,12 +2112,14 @@ const BUILTIN_PROVIDER_MODEL_REGISTRY = {
|
|
|
2103
2112
|
{
|
|
2104
2113
|
id: "deepseek-v4-pro",
|
|
2105
2114
|
aliases: ["DeepSeek-V4-Pro"],
|
|
2106
|
-
contextWindow:
|
|
2115
|
+
contextWindow: 1048576,
|
|
2116
|
+
sourceUrl: HF_DEEPSEEK_V4_PRO_URL
|
|
2107
2117
|
},
|
|
2108
2118
|
{
|
|
2109
2119
|
id: "deepseek-v4-flash",
|
|
2110
2120
|
aliases: ["DeepSeek-V4-Flash"],
|
|
2111
|
-
contextWindow:
|
|
2121
|
+
contextWindow: 1048576,
|
|
2122
|
+
sourceUrl: HF_DEEPSEEK_V4_FLASH_URL
|
|
2112
2123
|
}
|
|
2113
2124
|
]
|
|
2114
2125
|
},
|
|
@@ -2120,37 +2131,69 @@ const BUILTIN_PROVIDER_MODEL_REGISTRY = {
|
|
|
2120
2131
|
{
|
|
2121
2132
|
id: "MiniMax M3",
|
|
2122
2133
|
aliases: ["MiniMax-M3", "minimax-m3"],
|
|
2123
|
-
contextWindow:
|
|
2134
|
+
contextWindow: 1048576,
|
|
2135
|
+
sourceUrl: HF_MINIMAX_M3_URL
|
|
2124
2136
|
},
|
|
2125
2137
|
{
|
|
2126
2138
|
id: "MiniMax M2.7",
|
|
2127
2139
|
aliases: ["MiniMax-M2.7", "minimax-m2.7"],
|
|
2128
|
-
contextWindow: 204800
|
|
2140
|
+
contextWindow: 204800,
|
|
2141
|
+
sourceUrl: HF_MINIMAX_M2_7_URL
|
|
2129
2142
|
},
|
|
2130
2143
|
{
|
|
2131
2144
|
id: "MiniMax M2.7-highspeed",
|
|
2132
2145
|
aliases: ["MiniMax-M2.7-highspeed", "minimax-m2.7-highspeed"],
|
|
2133
|
-
contextWindow: 204800
|
|
2146
|
+
contextWindow: 204800,
|
|
2147
|
+
sourceUrl: HF_MINIMAX_M2_7_URL
|
|
2134
2148
|
},
|
|
2135
2149
|
{
|
|
2136
2150
|
id: "MiniMax M2.5",
|
|
2137
2151
|
aliases: ["MiniMax-M2.5", "minimax-m2.5"],
|
|
2138
|
-
contextWindow:
|
|
2152
|
+
contextWindow: 196608,
|
|
2153
|
+
sourceUrl: HF_MINIMAX_M2_5_URL
|
|
2139
2154
|
},
|
|
2140
2155
|
{
|
|
2141
2156
|
id: "MiniMax M2.5-highspeed",
|
|
2142
2157
|
aliases: ["MiniMax-M2.5-highspeed", "minimax-m2.5-highspeed"],
|
|
2143
|
-
contextWindow:
|
|
2158
|
+
contextWindow: 196608,
|
|
2159
|
+
sourceUrl: HF_MINIMAX_M2_5_URL
|
|
2144
2160
|
},
|
|
2145
2161
|
{
|
|
2146
2162
|
id: "MiniMax M2.1",
|
|
2147
2163
|
aliases: ["MiniMax-M2.1", "minimax-m2.1"],
|
|
2148
|
-
contextWindow:
|
|
2164
|
+
contextWindow: 196608,
|
|
2165
|
+
sourceUrl: HF_MINIMAX_M2_1_URL
|
|
2149
2166
|
},
|
|
2150
2167
|
{
|
|
2151
2168
|
id: "MiniMax M2.1-highspeed",
|
|
2152
2169
|
aliases: ["MiniMax-M2.1-highspeed", "minimax-m2.1-highspeed"],
|
|
2153
|
-
contextWindow:
|
|
2170
|
+
contextWindow: 196608,
|
|
2171
|
+
sourceUrl: HF_MINIMAX_M2_1_URL
|
|
2172
|
+
}
|
|
2173
|
+
]
|
|
2174
|
+
},
|
|
2175
|
+
{
|
|
2176
|
+
name: "GLM",
|
|
2177
|
+
aliases: ["glm", "zai", "zhipu", "bigmodel"],
|
|
2178
|
+
baseUrls: [],
|
|
2179
|
+
models: [
|
|
2180
|
+
{
|
|
2181
|
+
id: "glm-5",
|
|
2182
|
+
aliases: ["GLM-5"],
|
|
2183
|
+
contextWindow: 202752,
|
|
2184
|
+
sourceUrl: HF_GLM_5_URL
|
|
2185
|
+
},
|
|
2186
|
+
{
|
|
2187
|
+
id: "glm-5.1",
|
|
2188
|
+
aliases: ["GLM-5.1"],
|
|
2189
|
+
contextWindow: 202752,
|
|
2190
|
+
sourceUrl: HF_GLM_5_1_URL
|
|
2191
|
+
},
|
|
2192
|
+
{
|
|
2193
|
+
id: "glm-5.2",
|
|
2194
|
+
aliases: ["GLM-5.2"],
|
|
2195
|
+
contextWindow: 1048576,
|
|
2196
|
+
sourceUrl: HF_GLM_5_2_URL
|
|
2154
2197
|
}
|
|
2155
2198
|
]
|
|
2156
2199
|
}
|
|
@@ -2279,15 +2322,17 @@ function applyProviderModelRegistry(provider, registry2, sourceUrl, updatedAt, m
|
|
|
2279
2322
|
}
|
|
2280
2323
|
const normalized = normalizeModelName$1(model);
|
|
2281
2324
|
const existingMetadata = existing.get(normalized);
|
|
2282
|
-
|
|
2325
|
+
const existingIsManual = existingMetadata?.source === "manual";
|
|
2326
|
+
if (mode === "fill-missing" && existingIsManual && existingMetadata !== void 0 && existingMetadata.contextWindow !== void 0 && (existingMetadata.outputLimit !== void 0 || registryModel.outputLimit === void 0)) {
|
|
2283
2327
|
continue;
|
|
2284
2328
|
}
|
|
2329
|
+
const keepManualValue = mode === "fill-missing" && existingIsManual;
|
|
2285
2330
|
existing.set(normalized, {
|
|
2286
2331
|
model,
|
|
2287
|
-
contextWindow: existingMetadata?.contextWindow ?? registryModel.contextWindow,
|
|
2288
|
-
outputLimit: existingMetadata?.outputLimit ?? registryModel.outputLimit,
|
|
2289
|
-
source:
|
|
2290
|
-
sourceUrl: existingMetadata?.sourceUrl ?? registryModel.sourceUrl ?? sourceUrl,
|
|
2332
|
+
contextWindow: keepManualValue ? existingMetadata?.contextWindow ?? registryModel.contextWindow : registryModel.contextWindow ?? existingMetadata?.contextWindow,
|
|
2333
|
+
outputLimit: keepManualValue ? existingMetadata?.outputLimit ?? registryModel.outputLimit : registryModel.outputLimit ?? existingMetadata?.outputLimit,
|
|
2334
|
+
source: keepManualValue ? "manual" : "registry",
|
|
2335
|
+
sourceUrl: keepManualValue ? existingMetadata?.sourceUrl ?? registryModel.sourceUrl ?? sourceUrl : registryModel.sourceUrl ?? sourceUrl,
|
|
2291
2336
|
updatedAt
|
|
2292
2337
|
});
|
|
2293
2338
|
matchedModels.push(model);
|
|
@@ -2320,6 +2365,20 @@ function withBuiltinProviderModelMetadata(provider, updatedAt) {
|
|
|
2320
2365
|
object({
|
|
2321
2366
|
providers: array(ProviderConfigSchema)
|
|
2322
2367
|
});
|
|
2368
|
+
function normalizeMetadataModelName(value) {
|
|
2369
|
+
return value.trim().toLowerCase().replace(/\s+/g, "-");
|
|
2370
|
+
}
|
|
2371
|
+
function mergeModelMetadata(existing, incoming) {
|
|
2372
|
+
if (existing === void 0 && incoming === void 0) return void 0;
|
|
2373
|
+
const merged = /* @__PURE__ */ new Map();
|
|
2374
|
+
for (const metadata of existing ?? []) {
|
|
2375
|
+
merged.set(normalizeMetadataModelName(metadata.model), metadata);
|
|
2376
|
+
}
|
|
2377
|
+
for (const metadata of incoming ?? []) {
|
|
2378
|
+
merged.set(normalizeMetadataModelName(metadata.model), metadata);
|
|
2379
|
+
}
|
|
2380
|
+
return [...merged.values()].toSorted((left, right) => left.model.localeCompare(right.model));
|
|
2381
|
+
}
|
|
2323
2382
|
const LegacyProviderConfigSchema = object({
|
|
2324
2383
|
id: string().optional(),
|
|
2325
2384
|
name: string().optional(),
|
|
@@ -2557,7 +2616,7 @@ function getProvider(id) {
|
|
|
2557
2616
|
function normalizeApiKey(apiKey) {
|
|
2558
2617
|
return apiKey.replace(/^Bearer\s+/i, "").trim();
|
|
2559
2618
|
}
|
|
2560
|
-
function addProvider(name, apiKey, format, baseUrl, models, authHeader, apiDocsUrl, anthropicBaseUrl, openaiBaseUrl, source, modelMetadataUrl) {
|
|
2619
|
+
function addProvider(name, apiKey, format, baseUrl, models, authHeader, apiDocsUrl, anthropicBaseUrl, openaiBaseUrl, source, modelMetadataUrl, modelMetadata) {
|
|
2561
2620
|
const providers = getProviders();
|
|
2562
2621
|
const normalizedKey = normalizeApiKey(apiKey);
|
|
2563
2622
|
const resolvedAnthropicUrl = anthropicBaseUrl ?? "";
|
|
@@ -2570,6 +2629,7 @@ function addProvider(name, apiKey, format, baseUrl, models, authHeader, apiDocsU
|
|
|
2570
2629
|
const existingIndex = providers.findIndex((p) => p.id === existing.id);
|
|
2571
2630
|
const newModels = (models ?? []).filter((m) => m !== "");
|
|
2572
2631
|
existing.modelMetadataUrl = modelMetadataUrl ?? existing.modelMetadataUrl;
|
|
2632
|
+
existing.modelMetadata = mergeModelMetadata(existing.modelMetadata, modelMetadata);
|
|
2573
2633
|
if (newModels.length > 0) {
|
|
2574
2634
|
const mergedModels = new Set(existing.models ?? []);
|
|
2575
2635
|
for (const m of newModels) mergedModels.add(m);
|
|
@@ -2594,6 +2654,7 @@ function addProvider(name, apiKey, format, baseUrl, models, authHeader, apiDocsU
|
|
|
2594
2654
|
authHeader: authHeader ?? "bearer",
|
|
2595
2655
|
apiDocsUrl,
|
|
2596
2656
|
modelMetadataUrl,
|
|
2657
|
+
modelMetadata,
|
|
2597
2658
|
createdAt: now,
|
|
2598
2659
|
updatedAt: now,
|
|
2599
2660
|
anthropicBaseUrl: resolvedAnthropicUrl,
|
|
@@ -3696,6 +3757,7 @@ const ProviderInputSchema = object({
|
|
|
3696
3757
|
authHeader: _enum(["bearer", "x-api-key"]).optional().default("bearer"),
|
|
3697
3758
|
apiDocsUrl: string().optional(),
|
|
3698
3759
|
modelMetadataUrl: string().optional(),
|
|
3760
|
+
modelMetadata: array(ProviderModelMetadataSchema).optional(),
|
|
3699
3761
|
source: _enum(["company", "personal"]).optional()
|
|
3700
3762
|
});
|
|
3701
3763
|
const Route$n = createFileRoute("/api/providers")({
|
|
@@ -3721,7 +3783,8 @@ const Route$n = createFileRoute("/api/providers")({
|
|
|
3721
3783
|
parsed.data.anthropicBaseUrl,
|
|
3722
3784
|
parsed.data.openaiBaseUrl,
|
|
3723
3785
|
parsed.data.source,
|
|
3724
|
-
parsed.data.modelMetadataUrl
|
|
3786
|
+
parsed.data.modelMetadataUrl,
|
|
3787
|
+
parsed.data.modelMetadata
|
|
3725
3788
|
);
|
|
3726
3789
|
return Response.json(newProvider, { status: 201 });
|
|
3727
3790
|
}
|
|
@@ -7084,7 +7147,7 @@ export {
|
|
|
7084
7147
|
KnowledgeCandidateSchema as K,
|
|
7085
7148
|
MAX_SLOW_RESPONSE_THRESHOLD_SECONDS as M,
|
|
7086
7149
|
OpenAIRequestSchema as O,
|
|
7087
|
-
|
|
7150
|
+
ProviderConfigSchema as P,
|
|
7088
7151
|
Route$q as R,
|
|
7089
7152
|
TimeDisplayFormatSchema as T,
|
|
7090
7153
|
DEFAULT_TIME_DISPLAY_FORMAT as a,
|
|
@@ -7095,8 +7158,8 @@ export {
|
|
|
7095
7158
|
findProviderModelMetadata as f,
|
|
7096
7159
|
getSessionPath as g,
|
|
7097
7160
|
createPendingProviderTestResults as h,
|
|
7098
|
-
|
|
7099
|
-
|
|
7161
|
+
ProviderTestResultsSchema as i,
|
|
7162
|
+
createFailedProviderTestResults as j,
|
|
7100
7163
|
resolveProviderContextWindow as k,
|
|
7101
7164
|
isPlainRecord as l,
|
|
7102
7165
|
router as m,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const tsrStartManifest = () => ({ "routes": { "__root__": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/__root.tsx", "children": ["/", "/api/config", "/api/health", "/api/logs", "/api/mcp", "/api/models", "/api/providers", "/api/sessions", "/proxy/$", "/session/$sessionId", "/api/knowledge/candidates", "/api/knowledge/project-context", "/api/knowledge/search", "/api/knowledge/sessions/$sessionId/candidates"], "preloads": ["/assets/main-
|
|
1
|
+
const tsrStartManifest = () => ({ "routes": { "__root__": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/__root.tsx", "children": ["/", "/api/config", "/api/health", "/api/logs", "/api/mcp", "/api/models", "/api/providers", "/api/sessions", "/proxy/$", "/session/$sessionId", "/api/knowledge/candidates", "/api/knowledge/project-context", "/api/knowledge/search", "/api/knowledge/sessions/$sessionId/candidates"], "preloads": ["/assets/main-FvIQopAy.js"], "assets": [] }, "/": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/index.tsx", "assets": [], "preloads": ["/assets/index-DGIIhZTn.js", "/assets/ProxyViewerContainer-CTNNzXSa.js"] }, "/api/config": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/config.ts", "children": ["/api/config/paths"] }, "/api/health": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/health.ts" }, "/api/logs": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/logs.ts", "children": ["/api/logs/$id", "/api/logs/stream"] }, "/api/mcp": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/mcp.ts" }, "/api/models": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/models.ts" }, "/api/providers": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.ts", "children": ["/api/providers/$providerId", "/api/providers/export", "/api/providers/import", "/api/providers/scan"] }, "/api/sessions": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/sessions.ts" }, "/proxy/$": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/proxy/$.ts" }, "/session/$sessionId": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/session/$sessionId.tsx", "assets": [], "preloads": ["/assets/_sessionId-DEWzDQ8-.js", "/assets/ProxyViewerContainer-CTNNzXSa.js"] }, "/api/config/paths": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/config.paths.ts" }, "/api/knowledge/candidates": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/knowledge.candidates.ts", "children": ["/api/knowledge/candidates/$candidateId"] }, "/api/knowledge/project-context": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/knowledge.project-context.ts" }, "/api/knowledge/search": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/knowledge.search.ts" }, "/api/logs/$id": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/logs.$id.ts", "children": ["/api/logs/$id/chunks", "/api/logs/$id/replay"] }, "/api/logs/stream": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/logs.stream.ts" }, "/api/providers/$providerId": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.$providerId.ts", "children": ["/api/providers/$providerId/model-metadata", "/api/providers/$providerId/test"] }, "/api/providers/export": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.export.ts" }, "/api/providers/import": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.import.ts" }, "/api/providers/scan": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.scan.ts" }, "/api/knowledge/candidates/$candidateId": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/knowledge.candidates.$candidateId.ts", "children": ["/api/knowledge/candidates/$candidateId/promote"] }, "/api/logs/$id/chunks": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/logs.$id.chunks.ts" }, "/api/logs/$id/replay": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/logs.$id.replay.ts" }, "/api/providers/$providerId/model-metadata": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.$providerId.model-metadata.ts" }, "/api/providers/$providerId/test": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.$providerId.test.ts", "children": ["/api/providers/$providerId/test/log"] }, "/api/knowledge/candidates/$candidateId/promote": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/knowledge.candidates.$candidateId.promote.ts" }, "/api/knowledge/sessions/$sessionId/candidates": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/knowledge.sessions.$sessionId.candidates.ts" }, "/api/providers/$providerId/test/log": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/api/providers.$providerId.test.log.ts" } }, "clientEntry": "/assets/main-FvIQopAy.js" });
|
|
2
2
|
export {
|
|
3
3
|
tsrStartManifest
|
|
4
4
|
};
|
package/.output/server/index.mjs
CHANGED
|
@@ -35,103 +35,103 @@ const headers = ((m) => function headersRouteRule(event) {
|
|
|
35
35
|
}
|
|
36
36
|
});
|
|
37
37
|
const assets = {
|
|
38
|
+
"/assets/CompareDrawer-ClM_uVRy.js": {
|
|
39
|
+
"type": "text/javascript; charset=utf-8",
|
|
40
|
+
"etag": '"49fe-SZ34GYuPl79DInUwwjhnDXXVMhI"',
|
|
41
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
42
|
+
"size": 18942,
|
|
43
|
+
"path": "../public/assets/CompareDrawer-ClM_uVRy.js"
|
|
44
|
+
},
|
|
38
45
|
"/assets/alibaba-TTwafVwX.svg": {
|
|
39
46
|
"type": "image/svg+xml",
|
|
40
47
|
"etag": '"171b-6dyV5K8QjiaY35sN9qNprh9zDIs"',
|
|
41
|
-
"mtime": "2026-06-
|
|
48
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
42
49
|
"size": 5915,
|
|
43
50
|
"path": "../public/assets/alibaba-TTwafVwX.svg"
|
|
44
51
|
},
|
|
45
|
-
"/assets/
|
|
46
|
-
"type": "
|
|
47
|
-
"etag": '"
|
|
48
|
-
"mtime": "2026-06-
|
|
49
|
-
"size":
|
|
50
|
-
"path": "../public/assets/
|
|
51
|
-
},
|
|
52
|
-
"/assets/CompareDrawer-BWMipEjS.js": {
|
|
53
|
-
"type": "text/javascript; charset=utf-8",
|
|
54
|
-
"etag": '"49fe-hR3J/+C0VuiWANK0XlZhyVfJ210"',
|
|
55
|
-
"mtime": "2026-06-23T07:22:07.084Z",
|
|
56
|
-
"size": 18942,
|
|
57
|
-
"path": "../public/assets/CompareDrawer-BWMipEjS.js"
|
|
58
|
-
},
|
|
59
|
-
"/assets/index-CxhRsekH.css": {
|
|
60
|
-
"type": "text/css; charset=utf-8",
|
|
61
|
-
"etag": '"19708-ZIH0Qzt7qzQMaJIOvVbGyTC2iIs"',
|
|
62
|
-
"mtime": "2026-06-23T07:22:07.083Z",
|
|
63
|
-
"size": 104200,
|
|
64
|
-
"path": "../public/assets/index-CxhRsekH.css"
|
|
65
|
-
},
|
|
66
|
-
"/assets/main-DE6Y4-wV.js": {
|
|
67
|
-
"type": "text/javascript; charset=utf-8",
|
|
68
|
-
"etag": '"51726-SwgH2GJTY+mB1BN9OIt6pnzmAMo"',
|
|
69
|
-
"mtime": "2026-06-23T07:22:07.084Z",
|
|
70
|
-
"size": 333606,
|
|
71
|
-
"path": "../public/assets/main-DE6Y4-wV.js"
|
|
52
|
+
"/assets/minimax-BPMzvuL-.jpeg": {
|
|
53
|
+
"type": "image/jpeg",
|
|
54
|
+
"etag": '"1b06-IwivU89ko5UTMUM1/t7hn4sQK9A"',
|
|
55
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
56
|
+
"size": 6918,
|
|
57
|
+
"path": "../public/assets/minimax-BPMzvuL-.jpeg"
|
|
72
58
|
},
|
|
73
|
-
"/assets/ReplayDialog-
|
|
59
|
+
"/assets/ReplayDialog-7rp7N_KJ.js": {
|
|
74
60
|
"type": "text/javascript; charset=utf-8",
|
|
75
|
-
"etag": '"2361-
|
|
76
|
-
"mtime": "2026-06-
|
|
61
|
+
"etag": '"2361-3PSK8yYyFJmDityfBTwVPCzjRSY"',
|
|
62
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
77
63
|
"size": 9057,
|
|
78
|
-
"path": "../public/assets/ReplayDialog-
|
|
79
|
-
},
|
|
80
|
-
"/assets/ResponseView-CblEWDMx.js": {
|
|
81
|
-
"type": "text/javascript; charset=utf-8",
|
|
82
|
-
"etag": '"30cc-iF/VrWGkLieZnVp8dAicYWbqwl8"',
|
|
83
|
-
"mtime": "2026-06-23T07:22:07.084Z",
|
|
84
|
-
"size": 12492,
|
|
85
|
-
"path": "../public/assets/ResponseView-CblEWDMx.js"
|
|
64
|
+
"path": "../public/assets/ReplayDialog-7rp7N_KJ.js"
|
|
86
65
|
},
|
|
87
|
-
"/assets/
|
|
66
|
+
"/assets/ResponseView-Cjlf3b6-.js": {
|
|
88
67
|
"type": "text/javascript; charset=utf-8",
|
|
89
|
-
"etag": '"
|
|
90
|
-
"mtime": "2026-06-
|
|
91
|
-
"size":
|
|
92
|
-
"path": "../public/assets/
|
|
68
|
+
"etag": '"30cd-dnE/7Xs5a8yBdd/19x1oIzp25xo"',
|
|
69
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
70
|
+
"size": 12493,
|
|
71
|
+
"path": "../public/assets/ResponseView-Cjlf3b6-.js"
|
|
93
72
|
},
|
|
94
|
-
"/assets/
|
|
95
|
-
"type": "image/
|
|
96
|
-
"etag": '"
|
|
97
|
-
"mtime": "2026-06-
|
|
98
|
-
"size":
|
|
99
|
-
"path": "../public/assets/
|
|
73
|
+
"/assets/qwen-CONDcHqt.png": {
|
|
74
|
+
"type": "image/png",
|
|
75
|
+
"etag": '"572c3-cdJAPaHdOvFCGzuaQjagdgOu6XE"',
|
|
76
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
77
|
+
"size": 357059,
|
|
78
|
+
"path": "../public/assets/qwen-CONDcHqt.png"
|
|
100
79
|
},
|
|
101
|
-
"/assets/StreamingChunkSequence-
|
|
80
|
+
"/assets/StreamingChunkSequence-Ctx3sT3r.js": {
|
|
102
81
|
"type": "text/javascript; charset=utf-8",
|
|
103
|
-
"etag": '"d5b-
|
|
104
|
-
"mtime": "2026-06-
|
|
82
|
+
"etag": '"d5b-0ssVQEgzVEKXeVl8OBnr/0c5j/8"',
|
|
83
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
105
84
|
"size": 3419,
|
|
106
|
-
"path": "../public/assets/StreamingChunkSequence-
|
|
85
|
+
"path": "../public/assets/StreamingChunkSequence-Ctx3sT3r.js"
|
|
86
|
+
},
|
|
87
|
+
"/assets/RequestAnatomy-sL2FFo_N.js": {
|
|
88
|
+
"type": "text/javascript; charset=utf-8",
|
|
89
|
+
"etag": '"33eb-T6aNFNvMnWyjzccn6H3t5vU/fkE"',
|
|
90
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
91
|
+
"size": 13291,
|
|
92
|
+
"path": "../public/assets/RequestAnatomy-sL2FFo_N.js"
|
|
107
93
|
},
|
|
108
94
|
"/assets/zhipuai-BPNAnxo-.svg": {
|
|
109
95
|
"type": "image/svg+xml",
|
|
110
96
|
"etag": '"2bf8-hNaLCTi89nOFCsIIfWpP/jrfo0s"',
|
|
111
|
-
"mtime": "2026-06-
|
|
97
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
112
98
|
"size": 11256,
|
|
113
99
|
"path": "../public/assets/zhipuai-BPNAnxo-.svg"
|
|
114
100
|
},
|
|
115
|
-
"/assets/
|
|
101
|
+
"/assets/index-DGIIhZTn.js": {
|
|
102
|
+
"type": "text/javascript; charset=utf-8",
|
|
103
|
+
"etag": '"74-RrRblbF2q1u29lOAOi/P9cfzSS4"',
|
|
104
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
105
|
+
"size": 116,
|
|
106
|
+
"path": "../public/assets/index-DGIIhZTn.js"
|
|
107
|
+
},
|
|
108
|
+
"/assets/main-FvIQopAy.js": {
|
|
109
|
+
"type": "text/javascript; charset=utf-8",
|
|
110
|
+
"etag": '"51726-DFNFb/Ckwew0+zUlseKJJYHiKQ8"',
|
|
111
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
112
|
+
"size": 333606,
|
|
113
|
+
"path": "../public/assets/main-FvIQopAy.js"
|
|
114
|
+
},
|
|
115
|
+
"/assets/_sessionId-DEWzDQ8-.js": {
|
|
116
116
|
"type": "text/javascript; charset=utf-8",
|
|
117
|
-
"etag": '"d2-
|
|
118
|
-
"mtime": "2026-06-
|
|
117
|
+
"etag": '"d2-iMkEwYrKkBow2arO0sFX4nIYuOY"',
|
|
118
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
119
119
|
"size": 210,
|
|
120
|
-
"path": "../public/assets/_sessionId-
|
|
120
|
+
"path": "../public/assets/_sessionId-DEWzDQ8-.js"
|
|
121
121
|
},
|
|
122
|
-
"/assets/
|
|
123
|
-
"type": "
|
|
124
|
-
"etag": '"
|
|
125
|
-
"mtime": "2026-06-
|
|
126
|
-
"size":
|
|
127
|
-
"path": "../public/assets/
|
|
122
|
+
"/assets/index-D_nZj9Vt.css": {
|
|
123
|
+
"type": "text/css; charset=utf-8",
|
|
124
|
+
"etag": '"1a275-7T1iSNG2p6BSsqLwdpfky+9evLw"',
|
|
125
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
126
|
+
"size": 107125,
|
|
127
|
+
"path": "../public/assets/index-D_nZj9Vt.css"
|
|
128
128
|
},
|
|
129
|
-
"/assets/ProxyViewerContainer-
|
|
129
|
+
"/assets/ProxyViewerContainer-CTNNzXSa.js": {
|
|
130
130
|
"type": "text/javascript; charset=utf-8",
|
|
131
|
-
"etag": '"
|
|
132
|
-
"mtime": "2026-06-
|
|
133
|
-
"size":
|
|
134
|
-
"path": "../public/assets/ProxyViewerContainer-
|
|
131
|
+
"etag": '"a9eef-lBcKUWi8akLXHGw0mBMzzJmE6ZE"',
|
|
132
|
+
"mtime": "2026-06-24T06:20:41.552Z",
|
|
133
|
+
"size": 696047,
|
|
134
|
+
"path": "../public/assets/ProxyViewerContainer-CTNNzXSa.js"
|
|
135
135
|
}
|
|
136
136
|
};
|
|
137
137
|
function readAsset(id) {
|