dev3000 0.0.151 → 0.0.154
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +121 -103
- package/bin/dev3000 +10 -5
- package/dist/cdp-monitor.d.ts.map +1 -1
- package/dist/cdp-monitor.js +2 -3
- package/dist/cdp-monitor.js.map +1 -1
- package/dist/cli.js +301 -75
- package/dist/cli.js.map +1 -1
- package/dist/commands/cloud-check-pr.d.ts +1 -0
- package/dist/commands/cloud-check-pr.d.ts.map +1 -1
- package/dist/commands/cloud-check-pr.js +18 -6
- package/dist/commands/cloud-check-pr.js.map +1 -1
- package/dist/commands/crawl.d.ts +12 -0
- package/dist/commands/crawl.d.ts.map +1 -0
- package/dist/commands/crawl.js +140 -0
- package/dist/commands/crawl.js.map +1 -0
- package/dist/commands/errors.d.ts +14 -0
- package/dist/commands/errors.d.ts.map +1 -0
- package/dist/commands/errors.js +295 -0
- package/dist/commands/errors.js.map +1 -0
- package/dist/commands/find-component.d.ts +8 -0
- package/dist/commands/find-component.d.ts.map +1 -0
- package/dist/commands/find-component.js +182 -0
- package/dist/commands/find-component.js.map +1 -0
- package/dist/commands/fix.d.ts +13 -0
- package/dist/commands/fix.d.ts.map +1 -0
- package/dist/commands/fix.js +288 -0
- package/dist/commands/fix.js.map +1 -0
- package/dist/commands/logs.d.ts +13 -0
- package/dist/commands/logs.d.ts.map +1 -0
- package/dist/commands/logs.js +195 -0
- package/dist/commands/logs.js.map +1 -0
- package/dist/commands/restart.d.ts +8 -0
- package/dist/commands/restart.d.ts.map +1 -0
- package/dist/commands/restart.js +92 -0
- package/dist/commands/restart.js.map +1 -0
- package/dist/components/PackageSelector.d.ts +12 -0
- package/dist/components/PackageSelector.d.ts.map +1 -0
- package/dist/components/PackageSelector.js +74 -0
- package/dist/components/PackageSelector.js.map +1 -0
- package/dist/dev-environment.d.ts +0 -7
- package/dist/dev-environment.d.ts.map +1 -1
- package/dist/dev-environment.js +108 -674
- package/dist/dev-environment.js.map +1 -1
- package/dist/screencast-manager.d.ts.map +1 -1
- package/dist/screencast-manager.js +7 -8
- package/dist/screencast-manager.js.map +1 -1
- package/dist/services/parsers/output-processor.js +2 -2
- package/dist/services/parsers/output-processor.js.map +1 -1
- package/dist/skills/d3k/SKILL.md +38 -27
- package/dist/skills/index.d.ts +10 -14
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +47 -77
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/index.test.ts +13 -55
- package/dist/skills/index.ts +48 -81
- package/dist/src/tui-interface-impl.tsx +6 -15
- package/dist/tui-interface-impl.d.ts.map +1 -1
- package/dist/tui-interface-impl.js +4 -4
- package/dist/tui-interface-impl.js.map +1 -1
- package/dist/tui-interface-opentui.d.ts.map +1 -1
- package/dist/tui-interface-opentui.js +227 -100
- package/dist/tui-interface-opentui.js.map +1 -1
- package/dist/utils/agent-browser.d.ts +2 -0
- package/dist/utils/agent-browser.d.ts.map +1 -1
- package/dist/utils/agent-browser.js +46 -8
- package/dist/utils/agent-browser.js.map +1 -1
- package/dist/utils/agent-selection.d.ts.map +1 -1
- package/dist/utils/agent-selection.js +9 -2
- package/dist/utils/agent-selection.js.map +1 -1
- package/dist/utils/skill-installer.d.ts +55 -29
- package/dist/utils/skill-installer.d.ts.map +1 -1
- package/dist/utils/skill-installer.js +118 -229
- package/dist/utils/skill-installer.js.map +1 -1
- package/dist/utils/tmux-helpers.d.ts +1 -2
- package/dist/utils/tmux-helpers.d.ts.map +1 -1
- package/dist/utils/tmux-helpers.js +17 -18
- package/dist/utils/tmux-helpers.js.map +1 -1
- package/dist/utils/version-check.d.ts +2 -1
- package/dist/utils/version-check.d.ts.map +1 -1
- package/dist/utils/version-check.js +9 -0
- package/dist/utils/version-check.js.map +1 -1
- package/mcp-server/.next/BUILD_ID +1 -1
- package/mcp-server/.next/build-manifest.json +2 -2
- package/mcp-server/.next/fallback-build-manifest.json +2 -2
- package/mcp-server/.next/prerender-manifest.json +3 -3
- package/mcp-server/.next/server/app/_global-error/page.js +1 -1
- package/mcp-server/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/mcp-server/.next/server/app/_global-error.html +2 -2
- package/mcp-server/.next/server/app/_global-error.rsc +1 -1
- package/mcp-server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found/page.js +1 -1
- package/mcp-server/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/mcp-server/.next/server/app/_not-found.html +1 -1
- package/mcp-server/.next/server/app/_not-found.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/mcp-server/.next/server/app/api/screenshots/capture/route.js +2 -2
- package/mcp-server/.next/server/app/api/screenshots/capture/route.js.nft.json +1 -1
- package/mcp-server/.next/server/app/index.html +1 -1
- package/mcp-server/.next/server/app/index.rsc +2 -2
- package/mcp-server/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/mcp-server/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/mcp-server/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/mcp-server/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/mcp-server/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/mcp-server/.next/server/app/logs/page.js +1 -1
- package/mcp-server/.next/server/app/logs/page.js.nft.json +1 -1
- package/mcp-server/.next/server/app/mcp/route.js +4 -4
- package/mcp-server/.next/server/app/mcp/route.js.nft.json +1 -1
- package/mcp-server/.next/server/app/page.js +1 -1
- package/mcp-server/.next/server/app/page.js.nft.json +1 -1
- package/mcp-server/.next/server/app/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/server/app/video/[session]/page.js +1 -1
- package/mcp-server/.next/server/app/video/[session]/page.js.nft.json +1 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__2f95edf0._.js +3 -3
- package/mcp-server/.next/server/chunks/[root-of-the-server]__2f95edf0._.js.map +1 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__69e6dfb7._.js +3 -0
- package/mcp-server/.next/server/chunks/{[root-of-the-server]__444592aa._.js.map → [root-of-the-server]__69e6dfb7._.js.map} +1 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__6baff21e._.js +4 -0
- package/mcp-server/.next/server/chunks/{[root-of-the-server]__130a5f58._.js.map → [root-of-the-server]__6baff21e._.js.map} +1 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__6f790e1f._.js +1 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__6f790e1f._.js.map +1 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__c8cf5b23._.js +3 -0
- package/mcp-server/.next/server/chunks/[root-of-the-server]__e6a83e60._.js +4 -0
- package/mcp-server/.next/server/chunks/{[root-of-the-server]__b71c83ed._.js.map → [root-of-the-server]__e6a83e60._.js.map} +1 -1
- package/mcp-server/.next/server/chunks/mcp-server_app_mcp_tools_ts_faf6d7df._.js +32 -66
- package/mcp-server/.next/server/chunks/mcp-server_app_mcp_tools_ts_faf6d7df._.js.map +1 -1
- package/mcp-server/.next/server/chunks/src_utils_agent-browser_ts_cc00e0d8._.js +1 -1
- package/mcp-server/.next/server/chunks/src_utils_agent-browser_ts_cc00e0d8._.js.map +1 -1
- package/mcp-server/.next/server/chunks/src_utils_project-name_ts_1fab1dd5._.js +3 -0
- package/mcp-server/.next/server/chunks/src_utils_project-name_ts_1fab1dd5._.js.map +1 -0
- package/mcp-server/.next/server/chunks/ssr/{[root-of-the-server]__f66148e5._.js → [root-of-the-server]__b17d4048._.js} +2 -2
- package/mcp-server/.next/server/chunks/ssr/{[root-of-the-server]__50eb2eba._.js → [root-of-the-server]__dcf84f77._.js} +2 -2
- package/mcp-server/.next/server/chunks/ssr/mcp-server_app_page_tsx_9fc46577._.js +1 -1
- package/mcp-server/.next/server/chunks/ssr/mcp-server_app_page_tsx_9fc46577._.js.map +1 -1
- package/mcp-server/.next/server/pages/404.html +1 -1
- package/mcp-server/.next/server/pages/500.html +2 -2
- package/mcp-server/.next/server/server-reference-manifest.js +1 -1
- package/mcp-server/.next/server/server-reference-manifest.json +1 -1
- package/mcp-server/.next/static/chunks/{2422ea9ed874427b.js → 3f3f8e7d16ba3bf4.js} +1 -1
- package/mcp-server/app/api/tools/route.ts +5 -4
- package/mcp-server/app/mcp/route.ts +8 -63
- package/mcp-server/app/mcp/tools.ts +71 -445
- package/mcp-server/app/page.tsx +1 -1
- package/mcp-server/package.json +2 -0
- package/package.json +6 -5
- package/src/tui-interface-impl.tsx +6 -15
- package/dist/components/SkillSelector.d.ts +0 -10
- package/dist/components/SkillSelector.d.ts.map +0 -1
- package/dist/components/SkillSelector.js +0 -87
- package/dist/components/SkillSelector.js.map +0 -1
- package/mcp-server/.next/server/chunks/[root-of-the-server]__130a5f58._.js +0 -4
- package/mcp-server/.next/server/chunks/[root-of-the-server]__444592aa._.js +0 -3
- package/mcp-server/.next/server/chunks/[root-of-the-server]__8f84b4cc._.js +0 -3
- package/mcp-server/.next/server/chunks/[root-of-the-server]__b71c83ed._.js +0 -4
- /package/mcp-server/.next/server/chunks/{[root-of-the-server]__8f84b4cc._.js.map → [root-of-the-server]__c8cf5b23._.js.map} +0 -0
- /package/mcp-server/.next/server/chunks/ssr/{[root-of-the-server]__f66148e5._.js.map → [root-of-the-server]__b17d4048._.js.map} +0 -0
- /package/mcp-server/.next/server/chunks/ssr/{[root-of-the-server]__50eb2eba._.js.map → [root-of-the-server]__dcf84f77._.js.map} +0 -0
- /package/mcp-server/.next/static/{HVxg1xsmhVm6VO2KBlH_- → MfA6U1EFS31sVuHA4xDF_}/_buildManifest.js +0 -0
- /package/mcp-server/.next/static/{HVxg1xsmhVm6VO2KBlH_- → MfA6U1EFS31sVuHA4xDF_}/_clientMiddlewareManifest.json +0 -0
- /package/mcp-server/.next/static/{HVxg1xsmhVm6VO2KBlH_- → MfA6U1EFS31sVuHA4xDF_}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
2
|
-
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/39e9bdcc541cc428.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[83414,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n3:I[48876,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n4:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"ViewportBoundary\"]\n9:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"MetadataBoundary\"]\nb:I[82165,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"
|
|
1
|
+
<!DOCTYPE html><!--MfA6U1EFS31sVuHA4xDF_--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/39e9bdcc541cc428.js"/><script src="/_next/static/chunks/10099c90a1ca89ea.js" async=""></script><script src="/_next/static/chunks/13606014ef33124c.js" async=""></script><script src="/_next/static/chunks/4785978304fb9e19.js" async=""></script><script src="/_next/static/chunks/turbopack-b64e111cadf03885.js" async=""></script><script src="/_next/static/chunks/5df77c9395248155.js" async=""></script><script src="/_next/static/chunks/807aef58565dccb1.js" async=""></script><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
|
|
2
|
+
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/39e9bdcc541cc428.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[83414,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n3:I[48876,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n4:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"ViewportBoundary\"]\n9:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"MetadataBoundary\"]\nb:I[82165,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"MfA6U1EFS31sVuHA4xDF_\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/5df77c9395248155.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/807aef58565dccb1.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"1sQbKJMwdTFz69issjxyUlUgaDt6KPtynFGzyPVdaeI=\"\n}"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,35066,(e,s,t)=>{"use strict";var r=e.r(23093).__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;t.c=function(e){return r.H.useMemoCache(e)}},36546,(e,s,t)=>{"use strict";s.exports=e.r(35066)},41449,e=>{"use strict";var s=e.i(50061),t=e.i(42073),r=e.i(36546),l=e.i(23093),a=e.i(68860);function n(e){let s,a,n,c,o,i,d,m,x,h,u,f,p,j,g,b,N,y,v,_,w,S,k,C,U,$,O,A,M,F,I,T=(0,r.c)(61),{className:P}=e,G=(0,l.useId)(),H=(0,l.useId)(),R=(0,l.useId)(),L=(0,l.useId)(),B=(0,l.useId)(),E=(0,l.useId)(),Z=`${P} block dark:hidden`;T[0]===Symbol.for("react.memo_cache_sentinel")?(s={maskType:"alpha"},a=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"black",r:"90"}),T[0]=s,T[1]=a):(s=T[0],a=T[1]),T[2]!==G?(n=(0,t.jsx)("mask",{height:"180",id:G,maskUnits:"userSpaceOnUse",width:"180",x:"0",y:"0",style:s,children:a}),T[2]=G,T[3]=n):n=T[3];let D=`url(#${G})`;T[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"black",r:"90"}),T[4]=c):c=T[4];let V=`url(#${H})`;T[5]!==V?(o=(0,t.jsx)("path",{d:"M149.508 157.52L69.142 54H54V125.97H66.1136V69.3836L139.999 164.845C143.333 162.614 146.509 160.165 149.508 157.52Z",fill:V}),T[5]=V,T[6]=o):o=T[6];let W=`url(#${R})`;T[7]!==W?(i=(0,t.jsx)("rect",{fill:W,height:"72",width:"12",x:"115",y:"54"}),T[7]=W,T[8]=i):i=T[8],T[9]!==i||T[10]!==D||T[11]!==o?(d=(0,t.jsxs)("g",{mask:D,children:[c,o,i]}),T[9]=i,T[10]=D,T[11]=o,T[12]=d):d=T[12],T[13]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)("stop",{stopColor:"white"}),x=(0,t.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0"}),T[13]=m,T[14]=x):(m=T[13],x=T[14]),T[15]!==H?(h=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:H,x1:"109",x2:"144.5",y1:"116.5",y2:"160.5",children:[m,x]}),T[15]=H,T[16]=h):h=T[16],T[17]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)("stop",{stopColor:"white"}),f=(0,t.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0"}),T[17]=u,T[18]=f):(u=T[17],f=T[18]),T[19]!==R?(p=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:R,x1:"121",x2:"120.799",y1:"54",y2:"106.875",children:[u,f]}),T[19]=R,T[20]=p):p=T[20],T[21]!==h||T[22]!==p?(j=(0,t.jsxs)("defs",{children:[h,p]}),T[21]=h,T[22]=p,T[23]=j):j=T[23],T[24]!==Z||T[25]!==d||T[26]!==j||T[27]!==n?(g=(0,t.jsxs)("svg",{"aria-label":"Next.js logomark",className:Z,height:"16",role:"img",viewBox:"0 0 180 180",width:"16",children:[n,d,j]}),T[24]=Z,T[25]=d,T[26]=j,T[27]=n,T[28]=g):g=T[28];let z=`${P} hidden dark:block`;T[29]===Symbol.for("react.memo_cache_sentinel")?(b={maskType:"alpha"},N=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"black",r:"90"}),T[29]=b,T[30]=N):(b=T[29],N=T[30]),T[31]!==L?(y=(0,t.jsx)("mask",{height:"180",id:L,maskUnits:"userSpaceOnUse",width:"180",x:"0",y:"0",style:b,children:N}),T[31]=L,T[32]=y):y=T[32];let K=`url(#${L})`;T[33]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"white",r:"90"}),T[33]=v):v=T[33];let q=`url(#${B})`;T[34]!==q?(_=(0,t.jsx)("path",{d:"M149.508 157.52L69.142 54H54V125.97H66.1136V69.3836L139.999 164.845C143.333 162.614 146.509 160.165 149.508 157.52Z",fill:q}),T[34]=q,T[35]=_):_=T[35];let Y=`url(#${E})`;return T[36]!==Y?(w=(0,t.jsx)("rect",{fill:Y,height:"72",width:"12",x:"115",y:"54"}),T[36]=Y,T[37]=w):w=T[37],T[38]!==K||T[39]!==_||T[40]!==w?(S=(0,t.jsxs)("g",{mask:K,children:[v,_,w]}),T[38]=K,T[39]=_,T[40]=w,T[41]=S):S=T[41],T[42]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsx)("stop",{stopColor:"black"}),C=(0,t.jsx)("stop",{offset:"1",stopColor:"black",stopOpacity:"0"}),T[42]=k,T[43]=C):(k=T[42],C=T[43]),T[44]!==B?(U=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:B,x1:"109",x2:"144.5",y1:"116.5",y2:"160.5",children:[k,C]}),T[44]=B,T[45]=U):U=T[45],T[46]===Symbol.for("react.memo_cache_sentinel")?($=(0,t.jsx)("stop",{stopColor:"black"}),O=(0,t.jsx)("stop",{offset:"1",stopColor:"black",stopOpacity:"0"}),T[46]=$,T[47]=O):($=T[46],O=T[47]),T[48]!==E?(A=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:E,x1:"121",x2:"120.799",y1:"54",y2:"106.875",children:[$,O]}),T[48]=E,T[49]=A):A=T[49],T[50]!==U||T[51]!==A?(M=(0,t.jsxs)("defs",{children:[U,A]}),T[50]=U,T[51]=A,T[52]=M):M=T[52],T[53]!==z||T[54]!==y||T[55]!==S||T[56]!==M?(F=(0,t.jsxs)("svg",{"aria-label":"Next.js logomark",className:z,height:"16",role:"img",viewBox:"0 0 180 180",width:"16",children:[y,S,M]}),T[53]=z,T[54]=y,T[55]=S,T[56]=M,T[57]=F):F=T[57],T[58]!==g||T[59]!==F?(I=(0,t.jsxs)(t.Fragment,{children:[g,F]}),T[58]=g,T[59]=F,T[60]=I):I=T[60],I}function c(e){let s,a,n,c,o,i,d,m,x,h,u,f,p,j,g,b,N,y=(0,r.c)(31),{className:v}=e,_=(0,l.useId)(),w=(0,l.useId)(),S=(0,l.useId)();y[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)("stop",{offset:"0",stopColor:"#d93025"}),a=(0,t.jsx)("stop",{offset:"1",stopColor:"#ea4335"}),y[0]=s,y[1]=a):(s=y[0],a=y[1]),y[2]!==_?(n=(0,t.jsxs)("linearGradient",{id:_,x1:"3.2173",y1:"15",x2:"44.7812",y2:"15",gradientUnits:"userSpaceOnUse",children:[s,a]}),y[2]=_,y[3]=n):n=y[3],y[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("stop",{offset:"0",stopColor:"#fcc934"}),o=(0,t.jsx)("stop",{offset:"1",stopColor:"#fbbc04"}),y[4]=c,y[5]=o):(c=y[4],o=y[5]),y[6]!==w?(i=(0,t.jsxs)("linearGradient",{id:w,x1:"20.7219",y1:"47.6791",x2:"41.5039",y2:"11.6837",gradientUnits:"userSpaceOnUse",children:[c,o]}),y[6]=w,y[7]=i):i=y[7],y[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)("stop",{offset:"0",stopColor:"#1e8e3e"}),m=(0,t.jsx)("stop",{offset:"1",stopColor:"#34a853"}),y[8]=d,y[9]=m):(d=y[8],m=y[9]),y[10]!==S?(x=(0,t.jsxs)("linearGradient",{id:S,x1:"26.5981",y1:"46.5015",x2:"5.8161",y2:"10.506",gradientUnits:"userSpaceOnUse",children:[d,m]}),y[10]=S,y[11]=x):x=y[11],y[12]!==n||y[13]!==i||y[14]!==x?(h=(0,t.jsxs)("defs",{children:[n,i,x]}),y[12]=n,y[13]=i,y[14]=x,y[15]=h):h=y[15],y[16]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)("circle",{cx:"24",cy:"23.9947",r:"12",style:{fill:"#fff"}}),y[16]=u):u=y[16],y[17]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)("path",{d:"M3.2154,36A24,24,0,1,0,12,3.2154,24,24,0,0,0,3.2154,36ZM34.3923,18A12,12,0,1,1,18,13.6077,12,12,0,0,1,34.3923,18Z",style:{fill:"none"}}),y[17]=f):f=y[17];let k=`url(#${_})`;y[18]!==k?(p=(0,t.jsx)("path",{d:"M24,12H44.7812a23.9939,23.9939,0,0,0-41.5639.0029L13.6079,30l.0093-.0024A11.9852,11.9852,0,0,1,24,12Z",style:{fill:k}}),y[18]=k,y[19]=p):p=y[19],y[20]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsx)("circle",{cx:"24",cy:"24",r:"9.5",style:{fill:"#1a73e8"}}),y[20]=j):j=y[20];let C=`url(#${w})`;y[21]!==C?(g=(0,t.jsx)("path",{d:"M34.3913,30.0029,24.0007,48A23.994,23.994,0,0,0,44.78,12.0031H23.9989l-.0025.0093A11.985,11.985,0,0,1,34.3913,30.0029Z",style:{fill:C}}),y[21]=C,y[22]=g):g=y[22];let U=`url(#${S})`;return y[23]!==U?(b=(0,t.jsx)("path",{d:"M13.6086,30.0031,3.218,12.006A23.994,23.994,0,0,0,24.0025,48L34.3931,30.0029l-.0067-.0068a11.9852,11.9852,0,0,1-20.7778.007Z",style:{fill:U}}),y[23]=U,y[24]=b):b=y[24],y[25]!==v||y[26]!==h||y[27]!==p||y[28]!==g||y[29]!==b?(N=(0,t.jsxs)("svg",{className:v,viewBox:"0 0 48 48",height:"16",width:"16",xmlns:"http://www.w3.org/2000/svg",children:[h,u,f,p,j,g,b]}),y[25]=v,y[26]=h,y[27]=p,y[28]=g,y[29]=b,y[30]=N):N=y[30],N}var o=e.i(45866),i=e.i(70508);function d(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function m(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card-header",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function x(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("leading-none font-semibold",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card-title",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function h(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("px-6",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card-content",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function u(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("bg-accent animate-pulse rounded-md",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"skeleton",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}var f=e.i(54768);function p(){let e,n,c,i,p,b,_,w,S,k,C,U,$,O,A,M,F,I,T,P,G,H,R=(0,r.c)(33),[L,B]=(0,l.useState)(null),[E,Z]=(0,l.useState)(null),[D,V]=(0,l.useState)(!0),[W,z]=(0,f.useDarkMode)();return R[0]===Symbol.for("react.memo_cache_sentinel")?(e=()=>{Promise.all([fetch("/api/tools"),fetch("/api/orchestrator")]).then(v).then(e=>{let[s,t]=e;B(s),Z(t),V(!1)}).catch(()=>{V(!1)})},n=[],R[0]=e,R[1]=n):(e=R[0],n=R[1]),(0,l.useEffect)(e,n),R[2]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("div",{className:"w-12 h-12 bg-foreground rounded flex items-center justify-center",children:(0,t.jsx)("span",{className:"text-background font-mono font-bold",children:"d3k"})}),i=(0,t.jsx)("h1",{className:"text-3xl font-bold",children:"dev3000 MCP Server"}),R[2]=c,R[3]=i):(c=R[2],i=R[3]),R[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsxs)("span",{className:"inline-flex items-center gap-2 text-sm text-green-600 font-medium",children:[(0,t.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full"}),"Server Running"]}),b=(0,t.jsx)("span",{className:"text-muted-foreground",children:"•"}),R[4]=p,R[5]=b):(p=R[4],b=R[5]),R[6]===Symbol.for("react.memo_cache_sentinel")?(_=(0,t.jsx)("div",{children:(0,t.jsxs)("div",{className:"flex items-center gap-4 mb-3",children:[c,(0,t.jsxs)("div",{children:[i,(0,t.jsxs)("div",{className:"flex items-center gap-3 mt-2",children:[p,b,(0,t.jsxs)("span",{className:"text-sm text-muted-foreground",children:["Port ",s.default.env.PORT||"3684"]})]})]})]})}),R[6]=_):_=R[6],R[7]===Symbol.for("react.memo_cache_sentinel")?(w=(0,t.jsx)(o.Button,{variant:"outline",asChild:!0,children:(0,t.jsx)("a",{href:"https://github.com/vercel-labs/dev3000#setup",target:"_blank",rel:"noopener noreferrer",children:"📖 Setup Guide"})}),R[7]=w):w=R[7],R[8]!==W||R[9]!==z?(S=(0,t.jsx)("header",{className:"bg-muted/30 border-b border-border",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-6 py-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[_,(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[w,(0,t.jsx)(a.DarkModeToggle,{darkMode:W,setDarkMode:z})]})]})})}),R[8]=W,R[9]=z,R[10]=S):S=R[10],R[11]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsx)(m,{children:(0,t.jsx)(x,{children:"🔌 MCP Connections"})}),R[11]=k):k=R[11],R[12]!==D||R[13]!==E?(C=D?(0,t.jsxs)("div",{className:"h-[120px] space-y-4",children:[(0,t.jsx)(u,{className:"h-4 w-3/4"}),(0,t.jsx)(u,{className:"h-12 w-1/2"})]}):E?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:E.message}),E.totalConnections>0?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"flex flex-wrap gap-3 mb-4",children:E.mcpDetails.map(y)}),E.totalProjects>0&&(0,t.jsxs)("div",{className:"text-sm text-muted-foreground",children:[(0,t.jsx)("span",{className:"font-medium",children:"Active projects:"})," ",E.projects.map((e,s)=>(0,t.jsxs)("span",{children:[(0,t.jsx)("code",{className:"text-foreground bg-background/50 px-1.5 py-0.5 rounded",children:e}),s<E.projects.length-1&&", "]},e))]})]}):(0,t.jsxs)("div",{className:"text-sm text-muted-foreground bg-background/50 border border-border rounded p-4",children:[(0,t.jsx)("p",{className:"mb-2",children:"⏳ Waiting for downstream MCPs to become available..."}),(0,t.jsxs)("p",{className:"text-xs",children:["dev3000 will automatically connect to ",(0,t.jsx)("code",{className:"text-foreground",children:"chrome-devtools"})," ","and ",(0,t.jsx)("code",{className:"text-foreground",children:"nextjs-dev"})," MCPs when Chrome and your dev server start."]})]})]}):null,R[12]=D,R[13]=E,R[14]=C):C=R[14],R[15]!==C?(U=(0,t.jsx)("section",{className:"mb-16",children:(0,t.jsxs)(d,{className:"bg-accent/10 border-accent/20",children:[k,(0,t.jsx)(h,{children:C})]})}),R[15]=C,R[16]=U):U=R[16],R[17]===Symbol.for("react.memo_cache_sentinel")?($=(0,t.jsx)(m,{children:(0,t.jsx)(x,{children:"🛠️ dev3000 Tools"})}),R[17]=$):$=R[17],R[18]!==D||R[19]!==L?(O=(0,t.jsxs)(d,{className:"bg-accent/10 border-accent/20",children:[$,(0,t.jsx)(h,{children:D?(0,t.jsx)("div",{className:"grid gap-6 lg:grid-cols-2",children:[1,2].map(N)}):L?(0,t.jsx)("div",{className:"grid gap-6 lg:grid-cols-2",children:L.tools.map(g)}):(0,t.jsxs)("div",{className:"text-center py-16",children:[(0,t.jsx)("p",{className:"text-destructive mb-6",children:"Failed to load tool documentation"}),(0,t.jsx)(o.Button,{onClick:j,children:"Retry"})]})})]}),R[18]=D,R[19]=L,R[20]=O):O=R[20],R[21]===Symbol.for("react.memo_cache_sentinel")?(A=(0,t.jsx)(m,{children:(0,t.jsx)(x,{className:"text-2xl",children:"🪄 The Magic Workflow"})}),R[21]=A):A=R[21],R[22]===Symbol.for("react.memo_cache_sentinel")?(M=(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"w-16 h-16 bg-primary/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,t.jsx)("span",{className:"text-primary font-bold text-2xl",children:"1"})}),(0,t.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Finds Issues"}),(0,t.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"fix_my_app automatically detects all types of errors and problems in your app"})]}),R[22]=M):M=R[22],R[23]===Symbol.for("react.memo_cache_sentinel")?(F=(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"w-16 h-16 bg-accent/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,t.jsx)("span",{className:"text-accent-foreground font-bold text-2xl",children:"2"})}),(0,t.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Fixes Code"}),(0,t.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"AI analyzes errors and edits your code files to resolve issues"})]}),R[23]=F):F=R[23],R[24]===Symbol.for("react.memo_cache_sentinel")?(I=(0,t.jsxs)(d,{className:"mt-20 bg-gradient-to-r from-primary/10 to-secondary/10",children:[A,(0,t.jsx)(h,{children:(0,t.jsxs)("div",{className:"grid md:grid-cols-3 gap-8",children:[M,F,(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"w-16 h-16 bg-green-500/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,t.jsx)("span",{className:"text-green-600 dark:text-green-400 font-bold text-2xl",children:"3"})}),(0,t.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Verifies Fixes"}),(0,t.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"execute_browser_action tests the fixes in real-time with screenshots"})]})]})})]}),R[24]=I):I=R[24],R[25]!==U||R[26]!==O?(T=(0,t.jsxs)("main",{className:"max-w-7xl mx-auto px-6 py-8",children:[U,O,I]}),R[25]=U,R[26]=O,R[27]=T):T=R[27],R[28]===Symbol.for("react.memo_cache_sentinel")?(P=(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"font-semibold",children:"dev3000 MCP Server"})," - AI-powered development monitoring"]}),R[28]=P):P=R[28],R[29]===Symbol.for("react.memo_cache_sentinel")?(G=(0,t.jsx)("footer",{className:"border-t border-border mt-20",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-6 py-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between text-sm text-muted-foreground",children:[P,(0,t.jsxs)("div",{className:"flex items-center gap-8",children:[(0,t.jsx)("a",{href:"https://github.com/vercel-labs/dev3000",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"GitHub"}),(0,t.jsx)("a",{href:"https://dev3000.ai",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"Homepage"})]})]})})}),R[29]=G):G=R[29],R[30]!==T||R[31]!==S?(H=(0,t.jsxs)("div",{className:"min-h-screen bg-background text-foreground",children:[S,T,G]}),R[30]=T,R[31]=S,R[32]=H):H=R[32],H}function j(){return window.location.reload()}function g(e){var s;let r,l,a,n;return(0,t.jsxs)("div",{id:e.name,className:"bg-background/50 border border-border rounded-lg p-6 hover:border-muted-foreground/50 transition-colors",children:[(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)("h4",{className:"text-xl font-semibold font-mono mb-3",children:e.name}),(0,t.jsx)("div",{className:"text-muted-foreground space-y-3",children:(s=e.description,r=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,""),l=s.split("\n\n").filter(e=>e.trim()),a=new Map,n=e=>{let s=a.get(e)??0;return a.set(e,s+1),0===s?e:`${e}-${s}`},l.map((e,s)=>{let l=n(r(e)||"section"),a=e;if((a=(a=a.replace(/\*\*/g,"").trim()).replace(/(\u{1F300}-\u{1F9FF}|\u{2600}-\u{26FF}|\u{1F900}-\u{1F9FF})+/gu,e=>e.charAt(0))).includes(":")){let[e,...s]=a.split(":"),c=e.trim(),o=s.join(":").trim();if(o.includes("•")){let e=o.split("•").filter(e=>e.trim()),s=`${l}-bullets`;return(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"font-semibold mb-2",children:c}),(0,t.jsx)("ul",{className:"space-y-1 ml-4",children:e.map(e=>{let l=n(`${s}-item-${r(e).slice(0,40)||"bullet"}`);return(0,t.jsxs)("li",{className:"flex items-start",children:[(0,t.jsx)("span",{className:"text-muted-foreground mr-2",children:"•"}),(0,t.jsx)("span",{className:"text-muted-foreground text-sm",children:e.trim()})]},l)})})]},s)}return(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"font-semibold mb-1",children:c}),(0,t.jsx)("p",{className:"text-muted-foreground text-sm ml-4",children:o})]},`${l}-content`)}if(a.match(/^\d+[\ud83c-\ud83e][\udc00-\udfff]|^\d+\./m)){let e=a.split(/\n/).filter(e=>e.trim());return(0,t.jsx)("ol",{className:"space-y-1 ml-4",children:e.map((e,s)=>{let a=e.replace(/^\d+[\ud83c-\ud83e][\udc00-\udfff]\s*/,"").replace(/^\d+\.\s*/,"").trim();return(0,t.jsxs)("li",{className:"text-muted-foreground text-sm",children:[s+1,". ",a]},n(`${l}-step-${r(a).slice(0,40)||"step"}`))})},`${l}-steps`)}return(0,t.jsx)("p",{className:"text-muted-foreground text-sm leading-relaxed",children:a},`${l}-paragraph`)}))})]}),e.parameters.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-sm font-semibold mb-3",children:"Parameters:"}),(0,t.jsx)("div",{className:"space-y-2",children:e.parameters.map(b)})]})]},e.name)}function b(e){return(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)("span",{className:"font-mono text-primary font-medium",children:e.name}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:e.optional?"(optional)":"(required)"}),(0,t.jsxs)("span",{className:"text-muted-foreground/70 text-xs",children:["- ",e.type]})]}),e.description&&(0,t.jsx)("div",{className:"text-muted-foreground ml-1 mt-1 text-sm",children:e.description})]},e.name)}function N(e){return(0,t.jsxs)("div",{className:"bg-background/50 border border-border rounded-lg p-6 h-[600px]",children:[(0,t.jsx)(u,{className:"h-6 w-3/4 mb-4"}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(u,{className:"h-4 w-full"}),(0,t.jsx)(u,{className:"h-4 w-5/6"}),(0,t.jsx)(u,{className:"h-4 w-4/6"})]})]},e)}function y(e){let s="chrome-devtools"===e.name?c:"nextjs-dev"===e.name?n:null;return(0,t.jsxs)("div",{className:"inline-flex items-center gap-2 bg-background/50 border border-border rounded px-3 py-2",children:[s&&(0,t.jsx)(s,{className:"shrink-0"}),(0,t.jsx)("span",{className:"font-semibold font-mono text-sm",children:e.name}),(0,t.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full"})]},e.name)}function v(e){let[s,t]=e;return Promise.all([s.json(),t.json()])}e.s(["default",()=>p],41449)}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,35066,(e,s,t)=>{"use strict";var r=e.r(23093).__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;t.c=function(e){return r.H.useMemoCache(e)}},36546,(e,s,t)=>{"use strict";s.exports=e.r(35066)},41449,e=>{"use strict";var s=e.i(50061),t=e.i(42073),r=e.i(36546),l=e.i(23093),a=e.i(68860);function n(e){let s,a,n,c,o,i,d,m,x,h,u,f,p,j,g,b,N,y,v,_,w,S,k,C,U,$,O,A,M,F,I,T=(0,r.c)(61),{className:P}=e,G=(0,l.useId)(),H=(0,l.useId)(),R=(0,l.useId)(),L=(0,l.useId)(),B=(0,l.useId)(),E=(0,l.useId)(),Z=`${P} block dark:hidden`;T[0]===Symbol.for("react.memo_cache_sentinel")?(s={maskType:"alpha"},a=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"black",r:"90"}),T[0]=s,T[1]=a):(s=T[0],a=T[1]),T[2]!==G?(n=(0,t.jsx)("mask",{height:"180",id:G,maskUnits:"userSpaceOnUse",width:"180",x:"0",y:"0",style:s,children:a}),T[2]=G,T[3]=n):n=T[3];let D=`url(#${G})`;T[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"black",r:"90"}),T[4]=c):c=T[4];let V=`url(#${H})`;T[5]!==V?(o=(0,t.jsx)("path",{d:"M149.508 157.52L69.142 54H54V125.97H66.1136V69.3836L139.999 164.845C143.333 162.614 146.509 160.165 149.508 157.52Z",fill:V}),T[5]=V,T[6]=o):o=T[6];let W=`url(#${R})`;T[7]!==W?(i=(0,t.jsx)("rect",{fill:W,height:"72",width:"12",x:"115",y:"54"}),T[7]=W,T[8]=i):i=T[8],T[9]!==i||T[10]!==D||T[11]!==o?(d=(0,t.jsxs)("g",{mask:D,children:[c,o,i]}),T[9]=i,T[10]=D,T[11]=o,T[12]=d):d=T[12],T[13]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)("stop",{stopColor:"white"}),x=(0,t.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0"}),T[13]=m,T[14]=x):(m=T[13],x=T[14]),T[15]!==H?(h=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:H,x1:"109",x2:"144.5",y1:"116.5",y2:"160.5",children:[m,x]}),T[15]=H,T[16]=h):h=T[16],T[17]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)("stop",{stopColor:"white"}),f=(0,t.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0"}),T[17]=u,T[18]=f):(u=T[17],f=T[18]),T[19]!==R?(p=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:R,x1:"121",x2:"120.799",y1:"54",y2:"106.875",children:[u,f]}),T[19]=R,T[20]=p):p=T[20],T[21]!==h||T[22]!==p?(j=(0,t.jsxs)("defs",{children:[h,p]}),T[21]=h,T[22]=p,T[23]=j):j=T[23],T[24]!==Z||T[25]!==d||T[26]!==j||T[27]!==n?(g=(0,t.jsxs)("svg",{"aria-label":"Next.js logomark",className:Z,height:"16",role:"img",viewBox:"0 0 180 180",width:"16",children:[n,d,j]}),T[24]=Z,T[25]=d,T[26]=j,T[27]=n,T[28]=g):g=T[28];let z=`${P} hidden dark:block`;T[29]===Symbol.for("react.memo_cache_sentinel")?(b={maskType:"alpha"},N=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"black",r:"90"}),T[29]=b,T[30]=N):(b=T[29],N=T[30]),T[31]!==L?(y=(0,t.jsx)("mask",{height:"180",id:L,maskUnits:"userSpaceOnUse",width:"180",x:"0",y:"0",style:b,children:N}),T[31]=L,T[32]=y):y=T[32];let K=`url(#${L})`;T[33]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsx)("circle",{cx:"90",cy:"90",fill:"white",r:"90"}),T[33]=v):v=T[33];let q=`url(#${B})`;T[34]!==q?(_=(0,t.jsx)("path",{d:"M149.508 157.52L69.142 54H54V125.97H66.1136V69.3836L139.999 164.845C143.333 162.614 146.509 160.165 149.508 157.52Z",fill:q}),T[34]=q,T[35]=_):_=T[35];let Y=`url(#${E})`;return T[36]!==Y?(w=(0,t.jsx)("rect",{fill:Y,height:"72",width:"12",x:"115",y:"54"}),T[36]=Y,T[37]=w):w=T[37],T[38]!==K||T[39]!==_||T[40]!==w?(S=(0,t.jsxs)("g",{mask:K,children:[v,_,w]}),T[38]=K,T[39]=_,T[40]=w,T[41]=S):S=T[41],T[42]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsx)("stop",{stopColor:"black"}),C=(0,t.jsx)("stop",{offset:"1",stopColor:"black",stopOpacity:"0"}),T[42]=k,T[43]=C):(k=T[42],C=T[43]),T[44]!==B?(U=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:B,x1:"109",x2:"144.5",y1:"116.5",y2:"160.5",children:[k,C]}),T[44]=B,T[45]=U):U=T[45],T[46]===Symbol.for("react.memo_cache_sentinel")?($=(0,t.jsx)("stop",{stopColor:"black"}),O=(0,t.jsx)("stop",{offset:"1",stopColor:"black",stopOpacity:"0"}),T[46]=$,T[47]=O):($=T[46],O=T[47]),T[48]!==E?(A=(0,t.jsxs)("linearGradient",{gradientUnits:"userSpaceOnUse",id:E,x1:"121",x2:"120.799",y1:"54",y2:"106.875",children:[$,O]}),T[48]=E,T[49]=A):A=T[49],T[50]!==U||T[51]!==A?(M=(0,t.jsxs)("defs",{children:[U,A]}),T[50]=U,T[51]=A,T[52]=M):M=T[52],T[53]!==z||T[54]!==y||T[55]!==S||T[56]!==M?(F=(0,t.jsxs)("svg",{"aria-label":"Next.js logomark",className:z,height:"16",role:"img",viewBox:"0 0 180 180",width:"16",children:[y,S,M]}),T[53]=z,T[54]=y,T[55]=S,T[56]=M,T[57]=F):F=T[57],T[58]!==g||T[59]!==F?(I=(0,t.jsxs)(t.Fragment,{children:[g,F]}),T[58]=g,T[59]=F,T[60]=I):I=T[60],I}function c(e){let s,a,n,c,o,i,d,m,x,h,u,f,p,j,g,b,N,y=(0,r.c)(31),{className:v}=e,_=(0,l.useId)(),w=(0,l.useId)(),S=(0,l.useId)();y[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)("stop",{offset:"0",stopColor:"#d93025"}),a=(0,t.jsx)("stop",{offset:"1",stopColor:"#ea4335"}),y[0]=s,y[1]=a):(s=y[0],a=y[1]),y[2]!==_?(n=(0,t.jsxs)("linearGradient",{id:_,x1:"3.2173",y1:"15",x2:"44.7812",y2:"15",gradientUnits:"userSpaceOnUse",children:[s,a]}),y[2]=_,y[3]=n):n=y[3],y[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("stop",{offset:"0",stopColor:"#fcc934"}),o=(0,t.jsx)("stop",{offset:"1",stopColor:"#fbbc04"}),y[4]=c,y[5]=o):(c=y[4],o=y[5]),y[6]!==w?(i=(0,t.jsxs)("linearGradient",{id:w,x1:"20.7219",y1:"47.6791",x2:"41.5039",y2:"11.6837",gradientUnits:"userSpaceOnUse",children:[c,o]}),y[6]=w,y[7]=i):i=y[7],y[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)("stop",{offset:"0",stopColor:"#1e8e3e"}),m=(0,t.jsx)("stop",{offset:"1",stopColor:"#34a853"}),y[8]=d,y[9]=m):(d=y[8],m=y[9]),y[10]!==S?(x=(0,t.jsxs)("linearGradient",{id:S,x1:"26.5981",y1:"46.5015",x2:"5.8161",y2:"10.506",gradientUnits:"userSpaceOnUse",children:[d,m]}),y[10]=S,y[11]=x):x=y[11],y[12]!==n||y[13]!==i||y[14]!==x?(h=(0,t.jsxs)("defs",{children:[n,i,x]}),y[12]=n,y[13]=i,y[14]=x,y[15]=h):h=y[15],y[16]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)("circle",{cx:"24",cy:"23.9947",r:"12",style:{fill:"#fff"}}),y[16]=u):u=y[16],y[17]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)("path",{d:"M3.2154,36A24,24,0,1,0,12,3.2154,24,24,0,0,0,3.2154,36ZM34.3923,18A12,12,0,1,1,18,13.6077,12,12,0,0,1,34.3923,18Z",style:{fill:"none"}}),y[17]=f):f=y[17];let k=`url(#${_})`;y[18]!==k?(p=(0,t.jsx)("path",{d:"M24,12H44.7812a23.9939,23.9939,0,0,0-41.5639.0029L13.6079,30l.0093-.0024A11.9852,11.9852,0,0,1,24,12Z",style:{fill:k}}),y[18]=k,y[19]=p):p=y[19],y[20]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsx)("circle",{cx:"24",cy:"24",r:"9.5",style:{fill:"#1a73e8"}}),y[20]=j):j=y[20];let C=`url(#${w})`;y[21]!==C?(g=(0,t.jsx)("path",{d:"M34.3913,30.0029,24.0007,48A23.994,23.994,0,0,0,44.78,12.0031H23.9989l-.0025.0093A11.985,11.985,0,0,1,34.3913,30.0029Z",style:{fill:C}}),y[21]=C,y[22]=g):g=y[22];let U=`url(#${S})`;return y[23]!==U?(b=(0,t.jsx)("path",{d:"M13.6086,30.0031,3.218,12.006A23.994,23.994,0,0,0,24.0025,48L34.3931,30.0029l-.0067-.0068a11.9852,11.9852,0,0,1-20.7778.007Z",style:{fill:U}}),y[23]=U,y[24]=b):b=y[24],y[25]!==v||y[26]!==h||y[27]!==p||y[28]!==g||y[29]!==b?(N=(0,t.jsxs)("svg",{className:v,viewBox:"0 0 48 48",height:"16",width:"16",xmlns:"http://www.w3.org/2000/svg",children:[h,u,f,p,j,g,b]}),y[25]=v,y[26]=h,y[27]=p,y[28]=g,y[29]=b,y[30]=N):N=y[30],N}var o=e.i(45866),i=e.i(70508);function d(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function m(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card-header",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function x(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("leading-none font-semibold",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card-title",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function h(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("px-6",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"card-content",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}function u(e){let s,l,a,n,c=(0,r.c)(8);return c[0]!==e?({className:s,...l}=e,c[0]=e,c[1]=s,c[2]=l):(s=c[1],l=c[2]),c[3]!==s?(a=(0,i.cn)("bg-accent animate-pulse rounded-md",s),c[3]=s,c[4]=a):a=c[4],c[5]!==l||c[6]!==a?(n=(0,t.jsx)("div",{"data-slot":"skeleton",className:a,...l}),c[5]=l,c[6]=a,c[7]=n):n=c[7],n}var f=e.i(54768);function p(){let e,n,c,i,p,b,_,w,S,k,C,U,$,O,A,M,F,I,T,P,G,H,R=(0,r.c)(33),[L,B]=(0,l.useState)(null),[E,Z]=(0,l.useState)(null),[D,V]=(0,l.useState)(!0),[W,z]=(0,f.useDarkMode)();return R[0]===Symbol.for("react.memo_cache_sentinel")?(e=()=>{Promise.all([fetch("/api/tools"),fetch("/api/orchestrator")]).then(v).then(e=>{let[s,t]=e;B(s),Z(t),V(!1)}).catch(()=>{V(!1)})},n=[],R[0]=e,R[1]=n):(e=R[0],n=R[1]),(0,l.useEffect)(e,n),R[2]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)("div",{className:"w-12 h-12 bg-foreground rounded flex items-center justify-center",children:(0,t.jsx)("span",{className:"text-background font-mono font-bold",children:"d3k"})}),i=(0,t.jsx)("h1",{className:"text-3xl font-bold",children:"dev3000 MCP Server"}),R[2]=c,R[3]=i):(c=R[2],i=R[3]),R[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsxs)("span",{className:"inline-flex items-center gap-2 text-sm text-green-600 font-medium",children:[(0,t.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full"}),"Server Running"]}),b=(0,t.jsx)("span",{className:"text-muted-foreground",children:"•"}),R[4]=p,R[5]=b):(p=R[4],b=R[5]),R[6]===Symbol.for("react.memo_cache_sentinel")?(_=(0,t.jsx)("div",{children:(0,t.jsxs)("div",{className:"flex items-center gap-4 mb-3",children:[c,(0,t.jsxs)("div",{children:[i,(0,t.jsxs)("div",{className:"flex items-center gap-3 mt-2",children:[p,b,(0,t.jsxs)("span",{className:"text-sm text-muted-foreground",children:["Port ",s.default.env.PORT||"3684"]})]})]})]})}),R[6]=_):_=R[6],R[7]===Symbol.for("react.memo_cache_sentinel")?(w=(0,t.jsx)(o.Button,{variant:"outline",asChild:!0,children:(0,t.jsx)("a",{href:"https://github.com/vercel-labs/dev3000#setup",target:"_blank",rel:"noopener noreferrer",children:"📖 Setup Guide"})}),R[7]=w):w=R[7],R[8]!==W||R[9]!==z?(S=(0,t.jsx)("header",{className:"bg-muted/30 border-b border-border",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-6 py-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[_,(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[w,(0,t.jsx)(a.DarkModeToggle,{darkMode:W,setDarkMode:z})]})]})})}),R[8]=W,R[9]=z,R[10]=S):S=R[10],R[11]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsx)(m,{children:(0,t.jsx)(x,{children:"🔌 MCP Connections"})}),R[11]=k):k=R[11],R[12]!==D||R[13]!==E?(C=D?(0,t.jsxs)("div",{className:"h-[120px] space-y-4",children:[(0,t.jsx)(u,{className:"h-4 w-3/4"}),(0,t.jsx)(u,{className:"h-12 w-1/2"})]}):E?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:E.message}),E.totalConnections>0?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"flex flex-wrap gap-3 mb-4",children:E.mcpDetails.map(y)}),E.totalProjects>0&&(0,t.jsxs)("div",{className:"text-sm text-muted-foreground",children:[(0,t.jsx)("span",{className:"font-medium",children:"Active projects:"})," ",E.projects.map((e,s)=>(0,t.jsxs)("span",{children:[(0,t.jsx)("code",{className:"text-foreground bg-background/50 px-1.5 py-0.5 rounded",children:e}),s<E.projects.length-1&&", "]},e))]})]}):(0,t.jsxs)("div",{className:"text-sm text-muted-foreground bg-background/50 border border-border rounded p-4",children:[(0,t.jsx)("p",{className:"mb-2",children:"⏳ Waiting for downstream MCPs to become available..."}),(0,t.jsxs)("p",{className:"text-xs",children:["dev3000 will automatically connect to ",(0,t.jsx)("code",{className:"text-foreground",children:"chrome-devtools"})," ","and ",(0,t.jsx)("code",{className:"text-foreground",children:"nextjs-dev"})," MCPs when Chrome and your dev server start."]})]})]}):null,R[12]=D,R[13]=E,R[14]=C):C=R[14],R[15]!==C?(U=(0,t.jsx)("section",{className:"mb-16",children:(0,t.jsxs)(d,{className:"bg-accent/10 border-accent/20",children:[k,(0,t.jsx)(h,{children:C})]})}),R[15]=C,R[16]=U):U=R[16],R[17]===Symbol.for("react.memo_cache_sentinel")?($=(0,t.jsx)(m,{children:(0,t.jsx)(x,{children:"🛠️ dev3000 Tools"})}),R[17]=$):$=R[17],R[18]!==D||R[19]!==L?(O=(0,t.jsxs)(d,{className:"bg-accent/10 border-accent/20",children:[$,(0,t.jsx)(h,{children:D?(0,t.jsx)("div",{className:"grid gap-6 lg:grid-cols-2",children:[1,2].map(N)}):L?(0,t.jsx)("div",{className:"grid gap-6 lg:grid-cols-2",children:L.tools.map(g)}):(0,t.jsxs)("div",{className:"text-center py-16",children:[(0,t.jsx)("p",{className:"text-destructive mb-6",children:"Failed to load tool documentation"}),(0,t.jsx)(o.Button,{onClick:j,children:"Retry"})]})})]}),R[18]=D,R[19]=L,R[20]=O):O=R[20],R[21]===Symbol.for("react.memo_cache_sentinel")?(A=(0,t.jsx)(m,{children:(0,t.jsx)(x,{className:"text-2xl",children:"🪄 The Magic Workflow"})}),R[21]=A):A=R[21],R[22]===Symbol.for("react.memo_cache_sentinel")?(M=(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"w-16 h-16 bg-primary/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,t.jsx)("span",{className:"text-primary font-bold text-2xl",children:"1"})}),(0,t.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Finds Issues"}),(0,t.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"fix_my_app automatically detects all types of errors and problems in your app"})]}),R[22]=M):M=R[22],R[23]===Symbol.for("react.memo_cache_sentinel")?(F=(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"w-16 h-16 bg-accent/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,t.jsx)("span",{className:"text-accent-foreground font-bold text-2xl",children:"2"})}),(0,t.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Fixes Code"}),(0,t.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"AI analyzes errors and edits your code files to resolve issues"})]}),R[23]=F):F=R[23],R[24]===Symbol.for("react.memo_cache_sentinel")?(I=(0,t.jsxs)(d,{className:"mt-20 bg-gradient-to-r from-primary/10 to-secondary/10",children:[A,(0,t.jsx)(h,{children:(0,t.jsxs)("div",{className:"grid md:grid-cols-3 gap-8",children:[M,F,(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"w-16 h-16 bg-green-500/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,t.jsx)("span",{className:"text-green-600 dark:text-green-400 font-bold text-2xl",children:"3"})}),(0,t.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Verifies Fixes"}),(0,t.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"agent_browser_action tests the fixes in real-time with screenshots"})]})]})})]}),R[24]=I):I=R[24],R[25]!==U||R[26]!==O?(T=(0,t.jsxs)("main",{className:"max-w-7xl mx-auto px-6 py-8",children:[U,O,I]}),R[25]=U,R[26]=O,R[27]=T):T=R[27],R[28]===Symbol.for("react.memo_cache_sentinel")?(P=(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"font-semibold",children:"dev3000 MCP Server"})," - AI-powered development monitoring"]}),R[28]=P):P=R[28],R[29]===Symbol.for("react.memo_cache_sentinel")?(G=(0,t.jsx)("footer",{className:"border-t border-border mt-20",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-6 py-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between text-sm text-muted-foreground",children:[P,(0,t.jsxs)("div",{className:"flex items-center gap-8",children:[(0,t.jsx)("a",{href:"https://github.com/vercel-labs/dev3000",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"GitHub"}),(0,t.jsx)("a",{href:"https://dev3000.ai",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"Homepage"})]})]})})}),R[29]=G):G=R[29],R[30]!==T||R[31]!==S?(H=(0,t.jsxs)("div",{className:"min-h-screen bg-background text-foreground",children:[S,T,G]}),R[30]=T,R[31]=S,R[32]=H):H=R[32],H}function j(){return window.location.reload()}function g(e){var s;let r,l,a,n;return(0,t.jsxs)("div",{id:e.name,className:"bg-background/50 border border-border rounded-lg p-6 hover:border-muted-foreground/50 transition-colors",children:[(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)("h4",{className:"text-xl font-semibold font-mono mb-3",children:e.name}),(0,t.jsx)("div",{className:"text-muted-foreground space-y-3",children:(s=e.description,r=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,""),l=s.split("\n\n").filter(e=>e.trim()),a=new Map,n=e=>{let s=a.get(e)??0;return a.set(e,s+1),0===s?e:`${e}-${s}`},l.map((e,s)=>{let l=n(r(e)||"section"),a=e;if((a=(a=a.replace(/\*\*/g,"").trim()).replace(/(\u{1F300}-\u{1F9FF}|\u{2600}-\u{26FF}|\u{1F900}-\u{1F9FF})+/gu,e=>e.charAt(0))).includes(":")){let[e,...s]=a.split(":"),c=e.trim(),o=s.join(":").trim();if(o.includes("•")){let e=o.split("•").filter(e=>e.trim()),s=`${l}-bullets`;return(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"font-semibold mb-2",children:c}),(0,t.jsx)("ul",{className:"space-y-1 ml-4",children:e.map(e=>{let l=n(`${s}-item-${r(e).slice(0,40)||"bullet"}`);return(0,t.jsxs)("li",{className:"flex items-start",children:[(0,t.jsx)("span",{className:"text-muted-foreground mr-2",children:"•"}),(0,t.jsx)("span",{className:"text-muted-foreground text-sm",children:e.trim()})]},l)})})]},s)}return(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"font-semibold mb-1",children:c}),(0,t.jsx)("p",{className:"text-muted-foreground text-sm ml-4",children:o})]},`${l}-content`)}if(a.match(/^\d+[\ud83c-\ud83e][\udc00-\udfff]|^\d+\./m)){let e=a.split(/\n/).filter(e=>e.trim());return(0,t.jsx)("ol",{className:"space-y-1 ml-4",children:e.map((e,s)=>{let a=e.replace(/^\d+[\ud83c-\ud83e][\udc00-\udfff]\s*/,"").replace(/^\d+\.\s*/,"").trim();return(0,t.jsxs)("li",{className:"text-muted-foreground text-sm",children:[s+1,". ",a]},n(`${l}-step-${r(a).slice(0,40)||"step"}`))})},`${l}-steps`)}return(0,t.jsx)("p",{className:"text-muted-foreground text-sm leading-relaxed",children:a},`${l}-paragraph`)}))})]}),e.parameters.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("h5",{className:"text-sm font-semibold mb-3",children:"Parameters:"}),(0,t.jsx)("div",{className:"space-y-2",children:e.parameters.map(b)})]})]},e.name)}function b(e){return(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)("span",{className:"font-mono text-primary font-medium",children:e.name}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:e.optional?"(optional)":"(required)"}),(0,t.jsxs)("span",{className:"text-muted-foreground/70 text-xs",children:["- ",e.type]})]}),e.description&&(0,t.jsx)("div",{className:"text-muted-foreground ml-1 mt-1 text-sm",children:e.description})]},e.name)}function N(e){return(0,t.jsxs)("div",{className:"bg-background/50 border border-border rounded-lg p-6 h-[600px]",children:[(0,t.jsx)(u,{className:"h-6 w-3/4 mb-4"}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(u,{className:"h-4 w-full"}),(0,t.jsx)(u,{className:"h-4 w-5/6"}),(0,t.jsx)(u,{className:"h-4 w-4/6"})]})]},e)}function y(e){let s="chrome-devtools"===e.name?c:"nextjs-dev"===e.name?n:null;return(0,t.jsxs)("div",{className:"inline-flex items-center gap-2 bg-background/50 border border-border rounded px-3 py-2",children:[s&&(0,t.jsx)(s,{className:"shrink-0"}),(0,t.jsx)("span",{className:"font-semibold font-mono text-sm",children:e.name}),(0,t.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full"})]},e.name)}function v(e){let[s,t]=e;return Promise.all([s.json(),t.json()])}e.s(["default",()=>p],41449)}]);
|
|
@@ -43,20 +43,21 @@ export async function GET() {
|
|
|
43
43
|
]
|
|
44
44
|
},
|
|
45
45
|
{
|
|
46
|
-
name: "
|
|
46
|
+
name: "agent_browser_action",
|
|
47
47
|
description:
|
|
48
|
-
"
|
|
48
|
+
"Browser automation with persistent sessions using agent-browser CLI.\n\n**Actions:**\n• open: Navigate to URL\n• click: Click element by ref (@e1) or selector\n• type: Type text into focused element\n• fill: Fill input field\n• scroll: Scroll page\n• screenshot: Capture current page\n• snapshot: Get page elements with refs for clicking\n• evaluate: Execute JavaScript\n• reload: Reload page\n\n**Features:**\n• Persistent sessions (cookies, localStorage, logins)\n• Project-specific browser profile\n• Reliable Playwright-based automation",
|
|
49
49
|
category: "Browser Automation",
|
|
50
50
|
parameters: [
|
|
51
51
|
{
|
|
52
52
|
name: "action",
|
|
53
53
|
type: "enum",
|
|
54
|
-
description:
|
|
54
|
+
description:
|
|
55
|
+
"Action: 'open', 'click', 'type', 'fill', 'scroll', 'screenshot', 'snapshot', 'evaluate', 'reload', 'back', 'close'"
|
|
55
56
|
},
|
|
56
57
|
{
|
|
57
58
|
name: "params",
|
|
58
59
|
type: "object",
|
|
59
|
-
description: "Action parameters (
|
|
60
|
+
description: "Action parameters (url, target, text, expression, etc.)"
|
|
60
61
|
}
|
|
61
62
|
]
|
|
62
63
|
}
|
|
@@ -5,16 +5,7 @@ import type { Tool } from "@modelcontextprotocol/sdk/types.js"
|
|
|
5
5
|
import { createMcpHandler } from "mcp-handler"
|
|
6
6
|
import { z } from "zod"
|
|
7
7
|
import { getMCPClientManager } from "./client-manager"
|
|
8
|
-
import {
|
|
9
|
-
crawlApp,
|
|
10
|
-
executeAgentBrowserAction,
|
|
11
|
-
executeBrowserAction,
|
|
12
|
-
findComponentSource,
|
|
13
|
-
fixMyApp,
|
|
14
|
-
getSkill,
|
|
15
|
-
restartDevServer,
|
|
16
|
-
TOOL_DESCRIPTIONS
|
|
17
|
-
} from "./tools"
|
|
8
|
+
import { crawlApp, findComponentSource, fixMyApp, getSkill, restartDevServer, TOOL_DESCRIPTIONS } from "./tools"
|
|
18
9
|
|
|
19
10
|
// Detect available package runner (bunx, npx, pnpm dlx, or fail)
|
|
20
11
|
const getPackageRunner = (): { command: string; args: string[] } | null => {
|
|
@@ -407,7 +398,7 @@ const handler = createMcpHandler(
|
|
|
407
398
|
// nextjs-dev: Include most tools for framework-specific debugging
|
|
408
399
|
// NOTE: browser_eval is intentionally excluded - it spawns a separate headless
|
|
409
400
|
// Playwright browser that doesn't share cookies with the d3k Chrome browser.
|
|
410
|
-
// Use
|
|
401
|
+
// Use d3k CLI for browser automation: `d3k agent-browser --cdp 9222 <command>`
|
|
411
402
|
"nextjs-dev": [
|
|
412
403
|
"enable_cache_components",
|
|
413
404
|
"init",
|
|
@@ -583,30 +574,9 @@ const handler = createMcpHandler(
|
|
|
583
574
|
}
|
|
584
575
|
)
|
|
585
576
|
|
|
586
|
-
//
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
TOOL_DESCRIPTIONS.execute_browser_action,
|
|
590
|
-
{
|
|
591
|
-
action: z
|
|
592
|
-
.enum(["click", "navigate", "screenshot", "evaluate", "scroll", "type"])
|
|
593
|
-
.describe("The browser action to perform"),
|
|
594
|
-
params: z
|
|
595
|
-
.record(z.unknown())
|
|
596
|
-
.optional()
|
|
597
|
-
.describe(
|
|
598
|
-
"Parameters for the action:\n" +
|
|
599
|
-
"- click: {x: number, y: number} OR {selector: string} (CSS selector)\n" +
|
|
600
|
-
"- navigate: {url: string}\n" +
|
|
601
|
-
"- evaluate: {expression: string}\n" +
|
|
602
|
-
"- scroll: {deltaX?: number, deltaY?: number, x?: number, y?: number}\n" +
|
|
603
|
-
"- type: {text: string}"
|
|
604
|
-
)
|
|
605
|
-
},
|
|
606
|
-
async (params) => {
|
|
607
|
-
return executeBrowserAction(params)
|
|
608
|
-
}
|
|
609
|
-
)
|
|
577
|
+
// NOTE: execute_browser_action was removed - use agent_browser_action instead
|
|
578
|
+
// agent_browser_action provides the same functionality with better reliability
|
|
579
|
+
// and persistent browser sessions via agent-browser CLI
|
|
610
580
|
|
|
611
581
|
// Visual diff analysis tool
|
|
612
582
|
server.tool(
|
|
@@ -683,34 +653,9 @@ const handler = createMcpHandler(
|
|
|
683
653
|
}
|
|
684
654
|
)
|
|
685
655
|
|
|
686
|
-
//
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
TOOL_DESCRIPTIONS.agent_browser_action,
|
|
690
|
-
{
|
|
691
|
-
action: z
|
|
692
|
-
.enum(["open", "click", "type", "fill", "scroll", "screenshot", "snapshot", "close", "reload", "back"])
|
|
693
|
-
.describe("Browser action to perform"),
|
|
694
|
-
params: z
|
|
695
|
-
.record(z.unknown())
|
|
696
|
-
.optional()
|
|
697
|
-
.describe(
|
|
698
|
-
"Action parameters:\n" +
|
|
699
|
-
"- open: {url: string}\n" +
|
|
700
|
-
"- click: {target: '@ref' or 'selector'}\n" +
|
|
701
|
-
"- type: {text: string}\n" +
|
|
702
|
-
"- fill: {target: string, value: string}\n" +
|
|
703
|
-
"- scroll: {direction: 'up'|'down'|'left'|'right', amount?: number}\n" +
|
|
704
|
-
"- screenshot: {fullPage?: boolean}\n" +
|
|
705
|
-
"- snapshot: {interactive?: boolean, compact?: boolean}"
|
|
706
|
-
),
|
|
707
|
-
session: z.string().optional().describe("Session name for browser isolation"),
|
|
708
|
-
headed: z.boolean().optional().describe("Run with visible browser window (default: false)")
|
|
709
|
-
},
|
|
710
|
-
async (params) => {
|
|
711
|
-
return executeAgentBrowserAction(params)
|
|
712
|
-
}
|
|
713
|
-
)
|
|
656
|
+
// NOTE: agent_browser_action MCP tool removed to encourage CLI usage
|
|
657
|
+
// Claude should use `d3k agent-browser --cdp 9222 <command>` instead
|
|
658
|
+
// This avoids browser installation issues and connects to d3k's existing Chrome
|
|
714
659
|
|
|
715
660
|
// Tool that returns monitoring code for Claude to execute
|
|
716
661
|
// TODO: Commenting out for now - need to figure out the right approach for proactive monitoring
|