@tonyclaw/agent-inspector 2.0.16 → 2.0.17

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.
Files changed (35) hide show
  1. package/.output/cli.js +376 -17
  2. package/.output/nitro.json +1 -1
  3. package/.output/public/assets/{CompareDrawer-DPs4UHwd.js → CompareDrawer-DDg7Cs4N.js} +1 -1
  4. package/.output/public/assets/{ProxyViewerContainer-B1KylMPs.js → ProxyViewerContainer-DbbK1y7N.js} +16 -16
  5. package/.output/public/assets/{ReplayDialog-8ISC28XF.js → ReplayDialog-C1zWNkoz.js} +1 -1
  6. package/.output/public/assets/{RequestAnatomy-BhbsgfBO.js → RequestAnatomy-DR8OICOJ.js} +1 -1
  7. package/.output/public/assets/{ResponseView-CyM7JXeA.js → ResponseView-Dh9iSj6h.js} +1 -1
  8. package/.output/public/assets/{StreamingChunkSequence-BaX0x38n.js → StreamingChunkSequence-B_xElyH3.js} +1 -1
  9. package/.output/public/assets/_sessionId-gv1a_NNu.js +1 -0
  10. package/.output/public/assets/index-u-LwDaeH.js +1 -0
  11. package/.output/public/assets/{main-B2t-3SYj.js → main-bwZlEXw2.js} +2 -2
  12. package/.output/server/{_sessionId-CEbZTs68.mjs → _sessionId-BEuJJhqT.mjs} +2 -2
  13. package/.output/server/_ssr/{CompareDrawer-CEo48Wsu.mjs → CompareDrawer-yTO93GMz.mjs} +2 -2
  14. package/.output/server/_ssr/{ProxyViewerContainer-5ekIK_jx.mjs → ProxyViewerContainer-C8qCkHGB.mjs} +41 -12
  15. package/.output/server/_ssr/{ReplayDialog-C0nEvbYo.mjs → ReplayDialog-DRF9PG7Z.mjs} +3 -3
  16. package/.output/server/_ssr/{RequestAnatomy-CT55prmM.mjs → RequestAnatomy-DBcuV_jV.mjs} +2 -2
  17. package/.output/server/_ssr/{ResponseView-DBZSBCOD.mjs → ResponseView-JJm78HZT.mjs} +2 -2
  18. package/.output/server/_ssr/{StreamingChunkSequence-BuVT7Oke.mjs → StreamingChunkSequence-DyGKjBYx.mjs} +2 -2
  19. package/.output/server/_ssr/{index-Cw_zJVQv.mjs → index-T7JG28t6.mjs} +2 -2
  20. package/.output/server/_ssr/index.mjs +2 -2
  21. package/.output/server/_ssr/{router-DxjqHipT.mjs → router-BJob8RN3.mjs} +2 -2
  22. package/.output/server/{_tanstack-start-manifest_v-xeOo5gW5.mjs → _tanstack-start-manifest_v-CuiFi3XC.mjs} +1 -1
  23. package/.output/server/index.mjs +59 -59
  24. package/README.md +22 -5
  25. package/package.json +3 -3
  26. package/scripts/setup-agent-skills.mjs +64 -0
  27. package/src/cli/onboard.ts +407 -13
  28. package/src/cli/templates/codex-skill-onboard.ts +5 -0
  29. package/src/cli/templates/command-onboard.ts +12 -4
  30. package/src/cli/templates/skill-onboard.ts +15 -1
  31. package/src/components/OnboardingBanner.tsx +5 -0
  32. package/src/components/providers/SettingsDialog.tsx +22 -4
  33. package/.output/public/assets/_sessionId-CShO0OrR.js +0 -1
  34. package/.output/public/assets/index-BkdYiTpV.js +0 -1
  35. package/scripts/setup-codex-skill.mjs +0 -38
@@ -1,6 +1,6 @@
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, t as Collapsible, v as CollapsibleTrigger, w as CollapsibleContent, x as ScrollArea, y as JsonViewer, z as safeJsonValue } from "./ProxyViewerContainer-5ekIK_jx.mjs";
3
- import "./router-DxjqHipT.mjs";
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-C8qCkHGB.mjs";
3
+ import "./router-BJob8RN3.mjs";
4
4
  import "../_libs/modelcontextprotocol__server.mjs";
5
5
  import "../_libs/jszip.mjs";
6
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";
@@ -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, y as JsonViewer } from "./ProxyViewerContainer-5ekIK_jx.mjs";
3
- import "./router-DxjqHipT.mjs";
2
+ import { k as TooltipProvider, l as Tooltip, m as TooltipTrigger, B as Badge, n as TooltipContent, y as JsonViewer } from "./ProxyViewerContainer-C8qCkHGB.mjs";
3
+ import "./router-BJob8RN3.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-5ekIK_jx.mjs";
1
+ import { P as ProxyViewerContainer } from "./ProxyViewerContainer-C8qCkHGB.mjs";
2
2
  import "../_libs/react.mjs";
3
- import "./router-DxjqHipT.mjs";
3
+ import "./router-BJob8RN3.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-xeOo5gW5.mjs");
201
+ const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-CuiFi3XC.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-DxjqHipT.mjs").then((n) => n.n);
770
+ const routerEntry = await import("./router-BJob8RN3.mjs").then((n) => n.n);
771
771
  const startEntry = await import("./start-HYkvq4Ni.mjs");
772
772
  return { startEntry, routerEntry };
773
773
  }
@@ -92,7 +92,7 @@ function RootDocument({ children }) {
92
92
  ] })
93
93
  ] });
94
94
  }
95
- const $$splitComponentImporter$1 = () => import("./index-Cw_zJVQv.mjs");
95
+ const $$splitComponentImporter$1 = () => import("./index-T7JG28t6.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-CEbZTs68.mjs");
138
+ const $$splitComponentImporter = () => import("../_sessionId-BEuJJhqT.mjs");
139
139
  const Route$q = createFileRoute("/session/$sessionId")({
140
140
  component: lazyRouteComponent($$splitComponentImporter, "component"),
141
141
  parseParams: (params) => ({
@@ -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-B2t-3SYj.js"], "assets": [] }, "/": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/index.tsx", "assets": [], "preloads": ["/assets/index-BkdYiTpV.js", "/assets/ProxyViewerContainer-B1KylMPs.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-CShO0OrR.js", "/assets/ProxyViewerContainer-B1KylMPs.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-B2t-3SYj.js" });
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-bwZlEXw2.js"], "assets": [] }, "/": { "filePath": "C:/Users/claw/workspace/agent-inspector/src/routes/index.tsx", "assets": [], "preloads": ["/assets/index-u-LwDaeH.js", "/assets/ProxyViewerContainer-DbbK1y7N.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-gv1a_NNu.js", "/assets/ProxyViewerContainer-DbbK1y7N.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-bwZlEXw2.js" });
2
2
  export {
3
3
  tsrStartManifest
4
4
  };
@@ -35,103 +35,103 @@ const headers = ((m) => function headersRouteRule(event) {
35
35
  }
36
36
  });
37
37
  const assets = {
38
- "/assets/CompareDrawer-DPs4UHwd.js": {
39
- "type": "text/javascript; charset=utf-8",
40
- "etag": '"49fe-juuwKqSVn4vg8/mxHy0rBBfuaz0"',
41
- "mtime": "2026-06-27T02:00:30.203Z",
42
- "size": 18942,
43
- "path": "../public/assets/CompareDrawer-DPs4UHwd.js"
44
- },
45
- "/assets/index-BkdYiTpV.js": {
46
- "type": "text/javascript; charset=utf-8",
47
- "etag": '"74-95mLx/6mpmji+KzspWJRgr0j2HE"',
48
- "mtime": "2026-06-27T02:00:30.203Z",
49
- "size": 116,
50
- "path": "../public/assets/index-BkdYiTpV.js"
51
- },
52
38
  "/assets/alibaba-TTwafVwX.svg": {
53
39
  "type": "image/svg+xml",
54
40
  "etag": '"171b-6dyV5K8QjiaY35sN9qNprh9zDIs"',
55
- "mtime": "2026-06-27T02:00:30.202Z",
41
+ "mtime": "2026-06-27T08:05:44.395Z",
56
42
  "size": 5915,
57
43
  "path": "../public/assets/alibaba-TTwafVwX.svg"
58
44
  },
59
- "/assets/minimax-BPMzvuL-.jpeg": {
60
- "type": "image/jpeg",
61
- "etag": '"1b06-IwivU89ko5UTMUM1/t7hn4sQK9A"',
62
- "mtime": "2026-06-27T02:00:30.203Z",
63
- "size": 6918,
64
- "path": "../public/assets/minimax-BPMzvuL-.jpeg"
45
+ "/assets/CompareDrawer-DDg7Cs4N.js": {
46
+ "type": "text/javascript; charset=utf-8",
47
+ "etag": '"49fe-ST4mvhJApf3tK3AHGe/jnh7b8dA"',
48
+ "mtime": "2026-06-27T08:05:44.395Z",
49
+ "size": 18942,
50
+ "path": "../public/assets/CompareDrawer-DDg7Cs4N.js"
65
51
  },
66
52
  "/assets/index-D_nZj9Vt.css": {
67
53
  "type": "text/css; charset=utf-8",
68
54
  "etag": '"1a275-7T1iSNG2p6BSsqLwdpfky+9evLw"',
69
- "mtime": "2026-06-27T02:00:30.203Z",
55
+ "mtime": "2026-06-27T08:05:44.395Z",
70
56
  "size": 107125,
71
57
  "path": "../public/assets/index-D_nZj9Vt.css"
72
58
  },
73
- "/assets/ReplayDialog-8ISC28XF.js": {
59
+ "/assets/index-u-LwDaeH.js": {
74
60
  "type": "text/javascript; charset=utf-8",
75
- "etag": '"2361-7pKZf9oNiHpnogtvILlZkhLSrZs"',
76
- "mtime": "2026-06-27T02:00:30.203Z",
61
+ "etag": '"74-boh/9GDh4CR9Flgsc4G84xDxjHg"',
62
+ "mtime": "2026-06-27T08:05:44.395Z",
63
+ "size": 116,
64
+ "path": "../public/assets/index-u-LwDaeH.js"
65
+ },
66
+ "/assets/ReplayDialog-C1zWNkoz.js": {
67
+ "type": "text/javascript; charset=utf-8",
68
+ "etag": '"2361-2HHZgW4drPSmavIm8hPSIOojqNs"',
69
+ "mtime": "2026-06-27T08:05:44.396Z",
77
70
  "size": 9057,
78
- "path": "../public/assets/ReplayDialog-8ISC28XF.js"
71
+ "path": "../public/assets/ReplayDialog-C1zWNkoz.js"
79
72
  },
80
- "/assets/RequestAnatomy-BhbsgfBO.js": {
73
+ "/assets/RequestAnatomy-DR8OICOJ.js": {
81
74
  "type": "text/javascript; charset=utf-8",
82
- "etag": '"4485-4Urj/0VSY4KkQLnUk4c+RLhwDb4"',
83
- "mtime": "2026-06-27T02:00:30.203Z",
75
+ "etag": '"4485-N9GhW/2QqcCw31XDu4TtvnszBGI"',
76
+ "mtime": "2026-06-27T08:05:44.396Z",
84
77
  "size": 17541,
85
- "path": "../public/assets/RequestAnatomy-BhbsgfBO.js"
78
+ "path": "../public/assets/RequestAnatomy-DR8OICOJ.js"
86
79
  },
87
- "/assets/ResponseView-CyM7JXeA.js": {
88
- "type": "text/javascript; charset=utf-8",
89
- "etag": '"30cd-UFEnNJc8VomMOrzXynlO8nTuVzo"',
90
- "mtime": "2026-06-27T02:00:30.203Z",
91
- "size": 12493,
92
- "path": "../public/assets/ResponseView-CyM7JXeA.js"
80
+ "/assets/minimax-BPMzvuL-.jpeg": {
81
+ "type": "image/jpeg",
82
+ "etag": '"1b06-IwivU89ko5UTMUM1/t7hn4sQK9A"',
83
+ "mtime": "2026-06-27T08:05:44.395Z",
84
+ "size": 6918,
85
+ "path": "../public/assets/minimax-BPMzvuL-.jpeg"
93
86
  },
94
- "/assets/StreamingChunkSequence-BaX0x38n.js": {
87
+ "/assets/ResponseView-Dh9iSj6h.js": {
95
88
  "type": "text/javascript; charset=utf-8",
96
- "etag": '"d5b-H/I8iDw6s0pMrSJmzT6dZsygy7E"',
97
- "mtime": "2026-06-27T02:00:30.203Z",
98
- "size": 3419,
99
- "path": "../public/assets/StreamingChunkSequence-BaX0x38n.js"
89
+ "etag": '"30cd-4xMnhGLUg/50P9M4/lNZVL4lKjo"',
90
+ "mtime": "2026-06-27T08:05:44.396Z",
91
+ "size": 12493,
92
+ "path": "../public/assets/ResponseView-Dh9iSj6h.js"
100
93
  },
101
94
  "/assets/zhipuai-BPNAnxo-.svg": {
102
95
  "type": "image/svg+xml",
103
96
  "etag": '"2bf8-hNaLCTi89nOFCsIIfWpP/jrfo0s"',
104
- "mtime": "2026-06-27T02:00:30.203Z",
97
+ "mtime": "2026-06-27T08:05:44.395Z",
105
98
  "size": 11256,
106
99
  "path": "../public/assets/zhipuai-BPNAnxo-.svg"
107
100
  },
108
- "/assets/_sessionId-CShO0OrR.js": {
101
+ "/assets/StreamingChunkSequence-B_xElyH3.js": {
109
102
  "type": "text/javascript; charset=utf-8",
110
- "etag": '"d2-K80UxD/MymZ3TEMPLBomJfQN7CU"',
111
- "mtime": "2026-06-27T02:00:30.203Z",
103
+ "etag": '"d5b-63IZqsXb3mHwoP35jfQARaDbClI"',
104
+ "mtime": "2026-06-27T08:05:44.396Z",
105
+ "size": 3419,
106
+ "path": "../public/assets/StreamingChunkSequence-B_xElyH3.js"
107
+ },
108
+ "/assets/_sessionId-gv1a_NNu.js": {
109
+ "type": "text/javascript; charset=utf-8",
110
+ "etag": '"d2-atc0PPwWYseoheB1VLGM7JAiJ/A"',
111
+ "mtime": "2026-06-27T08:05:44.395Z",
112
112
  "size": 210,
113
- "path": "../public/assets/_sessionId-CShO0OrR.js"
113
+ "path": "../public/assets/_sessionId-gv1a_NNu.js"
114
+ },
115
+ "/assets/main-bwZlEXw2.js": {
116
+ "type": "text/javascript; charset=utf-8",
117
+ "etag": '"51726-1SJJ0BJfAuGmylFZ/0OY4VxlOhE"',
118
+ "mtime": "2026-06-27T08:05:44.395Z",
119
+ "size": 333606,
120
+ "path": "../public/assets/main-bwZlEXw2.js"
114
121
  },
115
122
  "/assets/qwen-CONDcHqt.png": {
116
123
  "type": "image/png",
117
124
  "etag": '"572c3-cdJAPaHdOvFCGzuaQjagdgOu6XE"',
118
- "mtime": "2026-06-27T02:00:30.203Z",
125
+ "mtime": "2026-06-27T08:05:44.395Z",
119
126
  "size": 357059,
120
127
  "path": "../public/assets/qwen-CONDcHqt.png"
121
128
  },
122
- "/assets/main-B2t-3SYj.js": {
123
- "type": "text/javascript; charset=utf-8",
124
- "etag": '"51726-Ul/gmLn0c+fZ++xIS/dA5sr6Iz8"',
125
- "mtime": "2026-06-27T02:00:30.203Z",
126
- "size": 333606,
127
- "path": "../public/assets/main-B2t-3SYj.js"
128
- },
129
- "/assets/ProxyViewerContainer-B1KylMPs.js": {
129
+ "/assets/ProxyViewerContainer-DbbK1y7N.js": {
130
130
  "type": "text/javascript; charset=utf-8",
131
- "etag": '"aa428-Xk8wdnw0jCK7Acfwjq6ObVCPbmA"',
132
- "mtime": "2026-06-27T02:00:30.203Z",
133
- "size": 697384,
134
- "path": "../public/assets/ProxyViewerContainer-B1KylMPs.js"
131
+ "etag": '"aa779-gGe0kXBI3ePH3bRC96W2oCbRTJ4"',
132
+ "mtime": "2026-06-27T08:05:44.396Z",
133
+ "size": 698233,
134
+ "path": "../public/assets/ProxyViewerContainer-DbbK1y7N.js"
135
135
  }
136
136
  };
137
137
  function readAsset(id) {
package/README.md CHANGED
@@ -50,11 +50,28 @@ The onboarding command installs guided setup skills for local agents:
50
50
  - Codex: `~/.codex/skills/agent-inspector-onboard/SKILL.md`, focused on connecting
51
51
  `http://localhost:25947/api/mcp` through Codex `mcp_servers.agent-inspector`.
52
52
 
53
- During npm global install, Agent Inspector also makes a best-effort Codex skill install when
54
- `~/.codex` already exists. Set `AGENT_INSPECTOR_SKIP_CODEX_SKILL=1` to skip that postinstall step,
55
- set `AGENT_INSPECTOR_INSTALL_CODEX_SKILL=1` to attempt it even before `~/.codex` exists, or run
56
- `agent-inspector onboard --codex-only --force` later to refresh it. For a full refresh of all
57
- generated onboarding files, run `agent-inspector onboard --force`.
53
+ During npm global install, Agent Inspector also makes a best-effort onboarding skill install for
54
+ detected local agents. If `~/.claude` exists, it installs the Claude Code skill and slash command.
55
+ If `~/.codex` exists, it installs the Codex skill. Generated onboarding files are stamped with the
56
+ current npm package version; a later package install refreshes older generated files automatically,
57
+ while same-version, newer-version, or user-created files without Agent Inspector version metadata are
58
+ left in place.
59
+
60
+ Set `AGENT_INSPECTOR_SKIP_CLAUDE_SKILL=1` or `AGENT_INSPECTOR_SKIP_CODEX_SKILL=1` to skip either
61
+ postinstall step. Set `AGENT_INSPECTOR_INSTALL_CLAUDE_SKILL=1` or
62
+ `AGENT_INSPECTOR_INSTALL_CODEX_SKILL=1` to attempt installation even before the corresponding agent
63
+ home directory exists. To refresh generated onboarding files later, run
64
+ `agent-inspector onboard --force`.
65
+
66
+ To check what is installed, run `agent-inspector onboard --status`. It reports each generated file,
67
+ its stamped version, whether it is current/outdated/custom, and the suggested next command. For
68
+ scripts and CI checks, use `agent-inspector onboard --status --json`.
69
+
70
+ Before uninstalling the npm package, run `agent-inspector onboard --uninstall` to remove matching
71
+ generated onboarding files. The uninstall command only removes Agent Inspector generated files whose
72
+ metadata version matches the currently installed npm package. npm v7+ does not run package uninstall
73
+ lifecycle scripts, so `npm uninstall -g @tonyclaw/agent-inspector` alone cannot reliably clean these
74
+ files automatically.
58
75
 
59
76
  For local development from source:
60
77
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tonyclaw/agent-inspector",
3
- "version": "2.0.16",
3
+ "version": "2.0.17",
4
4
  "type": "module",
5
5
  "description": "Agent observability and knowledge capture layer for AI coding tools.",
6
6
  "license": "MIT",
@@ -39,7 +39,7 @@
39
39
  "!src/**/__fixtures__",
40
40
  "!src/routeTree.gen.ts",
41
41
  "scripts/setup-windows-runtime.mjs",
42
- "scripts/setup-codex-skill.mjs",
42
+ "scripts/setup-agent-skills.mjs",
43
43
  "styles",
44
44
  ".output",
45
45
  "!.output/*.exe"
@@ -49,7 +49,7 @@
49
49
  "start": "node .output/cli.js",
50
50
  "build": "vite build && bun build:cli",
51
51
  "build:cli": "npx esbuild src/cli.ts --bundle --platform=node --target=node18 --format=esm --outfile=.output/cli.js",
52
- "postinstall": "node scripts/setup-windows-runtime.mjs && node scripts/setup-codex-skill.mjs",
52
+ "postinstall": "node scripts/setup-windows-runtime.mjs && node scripts/setup-agent-skills.mjs",
53
53
  "prepublishOnly": "npm run build",
54
54
  "typecheck": "tsc --noEmit",
55
55
  "lint": "eslint .",
@@ -0,0 +1,64 @@
1
+ import { existsSync } from "node:fs";
2
+ import { homedir } from "node:os";
3
+ import { dirname, join } from "node:path";
4
+ import { spawnSync } from "node:child_process";
5
+ import { fileURLToPath } from "node:url";
6
+
7
+ const scriptDir = dirname(fileURLToPath(import.meta.url));
8
+ const packageRoot = dirname(scriptDir);
9
+ const cliEntry = join(packageRoot, ".output", "cli.js");
10
+ const claudeHome = process.env["CLAUDE_HOME"] ?? join(homedir(), ".claude");
11
+ const codexHome = process.env["CODEX_HOME"] ?? join(homedir(), ".codex");
12
+
13
+ function cliIsAvailable() {
14
+ return existsSync(cliEntry);
15
+ }
16
+
17
+ function shouldInstallClaude() {
18
+ if (process.env["AGENT_INSPECTOR_SKIP_CLAUDE_SKILL"] === "1") return false;
19
+ return existsSync(claudeHome) || process.env["AGENT_INSPECTOR_INSTALL_CLAUDE_SKILL"] === "1";
20
+ }
21
+
22
+ function shouldInstallCodex() {
23
+ if (process.env["AGENT_INSPECTOR_SKIP_CODEX_SKILL"] === "1") return false;
24
+ return existsSync(codexHome) || process.env["AGENT_INSPECTOR_INSTALL_CODEX_SKILL"] === "1";
25
+ }
26
+
27
+ function runOnboard(label, args) {
28
+ const result = spawnSync(process.execPath, [cliEntry, "onboard", ...args], {
29
+ stdio: "ignore",
30
+ windowsHide: true,
31
+ });
32
+
33
+ if (result.status !== 0) {
34
+ console.warn(`Skipping ${label} onboard skill installation.`);
35
+ console.warn(`Run later: agent-inspector onboard --force`);
36
+ return false;
37
+ }
38
+
39
+ console.warn(`Agent Inspector onboard skill ready for ${label}.`);
40
+ return true;
41
+ }
42
+
43
+ function main() {
44
+ if (!cliIsAvailable()) return;
45
+
46
+ if (shouldInstallClaude()) {
47
+ if (runOnboard("Claude Code", ["--skip-codex-skill", "--skill-dir", claudeHome])) {
48
+ console.warn(`Next step for Claude Code: /agent-inspector:onboard`);
49
+ }
50
+ }
51
+
52
+ if (shouldInstallCodex()) {
53
+ if (runOnboard("Codex", ["--codex-only"])) {
54
+ console.warn(`Next step for Codex: ask to use the agent-inspector-onboard skill`);
55
+ }
56
+ }
57
+ }
58
+
59
+ try {
60
+ main();
61
+ } catch (error) {
62
+ const message = error instanceof Error ? error.message : String(error);
63
+ console.warn(`Skipping Agent Inspector onboard skill installation: ${message}`);
64
+ }