dev3000 0.0.143 → 0.0.144

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 (47) hide show
  1. package/dist/services/parsers/index.d.ts +2 -1
  2. package/dist/services/parsers/index.d.ts.map +1 -1
  3. package/dist/services/parsers/index.js.map +1 -1
  4. package/dist/tui-interface.d.ts.map +1 -1
  5. package/dist/tui-interface.js +6 -6
  6. package/dist/tui-interface.js.map +1 -1
  7. package/mcp-server/.next/BUILD_ID +1 -1
  8. package/mcp-server/.next/build-manifest.json +2 -2
  9. package/mcp-server/.next/fallback-build-manifest.json +2 -2
  10. package/mcp-server/.next/prerender-manifest.json +3 -3
  11. package/mcp-server/.next/server/app/_global-error.html +2 -2
  12. package/mcp-server/.next/server/app/_global-error.rsc +1 -1
  13. package/mcp-server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  14. package/mcp-server/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  15. package/mcp-server/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/mcp-server/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/mcp-server/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/mcp-server/.next/server/app/_not-found.html +1 -1
  19. package/mcp-server/.next/server/app/_not-found.rsc +1 -1
  20. package/mcp-server/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  21. package/mcp-server/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  22. package/mcp-server/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  23. package/mcp-server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  24. package/mcp-server/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  25. package/mcp-server/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  26. package/mcp-server/.next/server/app/index.html +1 -1
  27. package/mcp-server/.next/server/app/index.rsc +1 -1
  28. package/mcp-server/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  29. package/mcp-server/.next/server/app/index.segments/_full.segment.rsc +1 -1
  30. package/mcp-server/.next/server/app/index.segments/_head.segment.rsc +1 -1
  31. package/mcp-server/.next/server/app/index.segments/_index.segment.rsc +1 -1
  32. package/mcp-server/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  33. package/mcp-server/.next/server/app/mcp/route.js.nft.json +1 -1
  34. package/mcp-server/.next/server/chunks/[root-of-the-server]__2f95edf0._.js +4 -4
  35. package/mcp-server/.next/server/chunks/[root-of-the-server]__2f95edf0._.js.map +1 -1
  36. package/mcp-server/.next/server/chunks/mcp-server_app_mcp_tools_ts_faf6d7df._.js +25 -17
  37. package/mcp-server/.next/server/chunks/mcp-server_app_mcp_tools_ts_faf6d7df._.js.map +1 -1
  38. package/mcp-server/.next/server/pages/404.html +1 -1
  39. package/mcp-server/.next/server/pages/500.html +2 -2
  40. package/mcp-server/.next/server/server-reference-manifest.js +1 -1
  41. package/mcp-server/.next/server/server-reference-manifest.json +1 -1
  42. package/mcp-server/app/mcp/route.ts +13 -0
  43. package/mcp-server/app/mcp/tools.ts +100 -1
  44. package/package.json +3 -3
  45. /package/mcp-server/.next/static/{z9dNub7BozdSPOuXnynh0 → 2Xvryb3dyQkf-Of6R9qdS}/_buildManifest.js +0 -0
  46. /package/mcp-server/.next/static/{z9dNub7BozdSPOuXnynh0 → 2Xvryb3dyQkf-Of6R9qdS}/_clientMiddlewareManifest.json +0 -0
  47. /package/mcp-server/.next/static/{z9dNub7BozdSPOuXnynh0 → 2Xvryb3dyQkf-Of6R9qdS}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- <!DOCTYPE html><!--z9dNub7BozdSPOuXnynh0--><html lang="en" class="h-full" vt-update="auto"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/59cdeaf92a780e96.css" data-precedence="next"/><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><meta name="robots" content="noindex"/><title>dev3000</title><link rel="icon" href="/favicon.ico" type="image/x-icon"/><link rel="icon" href="/favicon.svg" type="image/svg+xml" sizes="32x32"/><link rel="icon" href="/favicon-16.svg" type="image/svg+xml" sizes="16x16"/><link rel="icon" href="/favicon-64.svg" type="image/svg+xml" sizes="64x64"/><link rel="apple-touch-icon" href="/favicon-180.png"/><link rel="shortcut icon" href="/favicon.svg"/><meta name="theme-color" content="#1f2937"/><title>404: This page could not be found.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="h-full"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@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:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</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:\"$Sreact.view_transition\"\n3:I[83414,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n4:I[48876,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n5:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"ViewportBoundary\"]\na:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"MetadataBoundary\"]\nc:I[82165,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n:HL[\"/_next/static/chunks/59cdeaf92a780e96.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"z9dNub7BozdSPOuXnynh0\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/59cdeaf92a780e96.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"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\"}]],[\"$\",\"$2\",null,{\"children\":[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"dev3000\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"32x32\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon-16.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"16x16\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon-64.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"64x64\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"href\":\"/favicon-180.png\"}],[\"$\",\"link\",null,{\"rel\":\"shortcut icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"meta\",null,{\"name\":\"theme-color\",\"content\":\"#1f2937\"}]]}],[\"$\",\"body\",null,{\"className\":\"h-full\",\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"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,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@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\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@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\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"7:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><!--2Xvryb3dyQkf_Of6R9qdS--><html lang="en" class="h-full" vt-update="auto"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/59cdeaf92a780e96.css" data-precedence="next"/><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><meta name="robots" content="noindex"/><title>dev3000</title><link rel="icon" href="/favicon.ico" type="image/x-icon"/><link rel="icon" href="/favicon.svg" type="image/svg+xml" sizes="32x32"/><link rel="icon" href="/favicon-16.svg" type="image/svg+xml" sizes="16x16"/><link rel="icon" href="/favicon-64.svg" type="image/svg+xml" sizes="64x64"/><link rel="apple-touch-icon" href="/favicon-180.png"/><link rel="shortcut icon" href="/favicon.svg"/><meta name="theme-color" content="#1f2937"/><title>404: This page could not be found.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="h-full"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@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:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</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:\"$Sreact.view_transition\"\n3:I[83414,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n4:I[48876,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n5:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"ViewportBoundary\"]\na:I[51263,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"MetadataBoundary\"]\nc:I[82165,[\"/_next/static/chunks/5df77c9395248155.js\",\"/_next/static/chunks/807aef58565dccb1.js\"],\"default\"]\n:HL[\"/_next/static/chunks/59cdeaf92a780e96.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"2Xvryb3dyQkf-Of6R9qdS\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/59cdeaf92a780e96.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"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\"}]],[\"$\",\"$2\",null,{\"children\":[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"dev3000\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"32x32\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon-16.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"16x16\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon-64.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"64x64\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"href\":\"/favicon-180.png\"}],[\"$\",\"link\",null,{\"rel\":\"shortcut icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"meta\",null,{\"name\":\"theme-color\",\"content\":\"#1f2937\"}]]}],[\"$\",\"body\",null,{\"className\":\"h-full\",\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"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,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@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\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@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\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"7:null\nb:[]\n"])</script></body></html>
@@ -1,2 +1,2 @@
1
- <!DOCTYPE html><!--z9dNub7BozdSPOuXnynh0--><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,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;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\":\"z9dNub7BozdSPOuXnynh0\",\"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
+ <!DOCTYPE html><!--2Xvryb3dyQkf_Of6R9qdS--><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,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;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\":\"2Xvryb3dyQkf-Of6R9qdS\",\"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\": \"Mf9X10/gO6RP6tSkAZAma+PmO4SqIo/nqcxvTqewhkY=\"\n}"
1
+ self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"iVIeJwer5YM/mKaZkOahiIXA/cGcWiPJXv+fxO3JS3w=\"\n}"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "node": {},
3
3
  "edge": {},
4
- "encryptionKey": "Mf9X10/gO6RP6tSkAZAma+PmO4SqIo/nqcxvTqewhkY="
4
+ "encryptionKey": "iVIeJwer5YM/mKaZkOahiIXA/cGcWiPJXv+fxO3JS3w="
5
5
  }
@@ -10,6 +10,7 @@ import {
10
10
  executeBrowserAction,
11
11
  findComponentSource,
12
12
  fixMyApp,
13
+ getSkill,
13
14
  restartDevServer,
14
15
  TOOL_DESCRIPTIONS
15
16
  } from "./tools"
@@ -689,6 +690,18 @@ const handler = createMcpHandler(
689
690
  }
690
691
  )
691
692
 
693
+ // Get skill content tool
694
+ server.tool(
695
+ "get_skill",
696
+ TOOL_DESCRIPTIONS.get_skill,
697
+ {
698
+ name: z.string().describe("The skill name (e.g., 'vercel-design-guidelines', 'd3k')")
699
+ },
700
+ async (params) => {
701
+ return getSkill(params)
702
+ }
703
+ )
704
+
692
705
  // Tool that returns monitoring code for Claude to execute
693
706
  // TODO: Commenting out for now - need to figure out the right approach for proactive monitoring
694
707
  /*
@@ -44,7 +44,10 @@ export const TOOL_DESCRIPTIONS = {
44
44
  "Restarts the development server while preserving dev3000's monitoring infrastructure.\n\n**Restart process:**\n1. Tries nextjs-dev MCP restart if available\n2. Falls back to killing and respawning the server process\n3. Preserves: MCP server, browser connection, log capture, screenshots\n\n**When to use:**\n• After modifying config files (next.config.js, middleware, .env)\n• To clear persistent server state\n• For changes that HMR cannot handle\n\n**Important:**\n• Do NOT manually kill the dev server with pkill/kill commands\n• Do NOT manually start the server with npm/pnpm/yarn\n• Server will be offline briefly during restart\n• Most code changes are handled by HMR - only restart when necessary",
45
45
 
46
46
  crawl_app:
47
- "Discovers URLs in the application by crawling links from the homepage.\n\n**Parameters:**\n• depth: How many link levels to follow (1, 2, 3, or 'all')\n• limit: Max links per page (default: 3)\n\n**Behavior:**\n• Starts at localhost homepage\n• Follows same-origin links only\n• Deduplicates discovered URLs\n• Returns list of all found pages\n\n**Use cases:**\n• Discovering all routes before running diagnostics\n• Site-wide testing coverage\n• Verifying all pages load without errors"
47
+ "Discovers URLs in the application by crawling links from the homepage.\n\n**Parameters:**\n• depth: How many link levels to follow (1, 2, 3, or 'all')\n• limit: Max links per page (default: 3)\n\n**Behavior:**\n• Starts at localhost homepage\n• Follows same-origin links only\n• Deduplicates discovered URLs\n• Returns list of all found pages\n\n**Use cases:**\n• Discovering all routes before running diagnostics\n• Site-wide testing coverage\n• Verifying all pages load without errors",
48
+
49
+ get_skill:
50
+ "Get the content of a d3k/Claude Code skill. Skills are prompt templates that provide specialized instructions for specific tasks.\n\n**Parameters:**\n• name: The skill name (e.g., 'vercel-design-guidelines', 'd3k')\n\n**Returns:**\nThe full SKILL.md content which contains instructions on how to perform the skill's task.\n\n**Available skills:**\n• vercel-design-guidelines - Audit web interfaces against Vercel's design guidelines\n• d3k - Core d3k development assistant skill\n\n**Use cases:**\n• Loading design guidelines audit instructions\n• Getting specialized workflow instructions"
48
51
  }
49
52
 
50
53
  // Types
@@ -4280,3 +4283,99 @@ export async function crawlApp(params: CrawlAppParams) {
4280
4283
  }
4281
4284
  }
4282
4285
  }
4286
+
4287
+ // ============================================================
4288
+ // Get Skill
4289
+ // ============================================================
4290
+
4291
+ export interface GetSkillParams {
4292
+ name: string
4293
+ }
4294
+
4295
+ /**
4296
+ * Get the content of a d3k/Claude Code skill.
4297
+ * Skills are prompt templates stored in .claude/skills/{name}/SKILL.md
4298
+ *
4299
+ * Looks for skills in these locations (in order):
4300
+ * 1. www/.claude/skills/{name}/SKILL.md (www workspace skills)
4301
+ * 2. src/skills/{name}/SKILL.md (core d3k skills)
4302
+ */
4303
+ export async function getSkill(params: GetSkillParams) {
4304
+ const { name } = params
4305
+
4306
+ // Possible skill locations (relative to mcp-server directory)
4307
+ const skillPaths = [
4308
+ // www workspace skills (design-guidelines, etc.)
4309
+ join(__dirname, "../../../www/.claude/skills", name, "SKILL.md"),
4310
+ // Core d3k skills
4311
+ join(__dirname, "../../../src/skills", name, "SKILL.md"),
4312
+ // Fallback: dist skills (when running from installed package)
4313
+ join(__dirname, "../../../dist/skills", name, "SKILL.md")
4314
+ ]
4315
+
4316
+ for (const skillPath of skillPaths) {
4317
+ try {
4318
+ if (existsSync(skillPath)) {
4319
+ const content = readFileSync(skillPath, "utf-8")
4320
+ logToDevFile(`Get Skill: Found skill "${name}" at ${skillPath}`)
4321
+
4322
+ return {
4323
+ content: [
4324
+ {
4325
+ type: "text" as const,
4326
+ text: `# Skill: ${name}\n\n${content}`
4327
+ }
4328
+ ]
4329
+ }
4330
+ }
4331
+ } catch {
4332
+ // Try next path
4333
+ }
4334
+ }
4335
+
4336
+ // Skill not found
4337
+ const availableSkills = listAvailableSkills()
4338
+ logToDevFile(`Get Skill: Skill "${name}" not found. Available: ${availableSkills.join(", ")}`)
4339
+
4340
+ return {
4341
+ content: [
4342
+ {
4343
+ type: "text" as const,
4344
+ text: `❌ Skill "${name}" not found.\n\n**Available skills:**\n${availableSkills.map((s) => `• ${s}`).join("\n") || "• No skills found"}\n\n**Skill locations searched:**\n${skillPaths.map((p) => `• ${p}`).join("\n")}`
4345
+ }
4346
+ ]
4347
+ }
4348
+ }
4349
+
4350
+ /**
4351
+ * List all available skills by scanning skill directories
4352
+ */
4353
+ function listAvailableSkills(): string[] {
4354
+ const skills = new Set<string>()
4355
+
4356
+ const skillDirs = [
4357
+ join(__dirname, "../../../www/.claude/skills"),
4358
+ join(__dirname, "../../../src/skills"),
4359
+ join(__dirname, "../../../dist/skills")
4360
+ ]
4361
+
4362
+ for (const dir of skillDirs) {
4363
+ try {
4364
+ if (existsSync(dir)) {
4365
+ const entries = readdirSync(dir, { withFileTypes: true })
4366
+ for (const entry of entries) {
4367
+ if (entry.isDirectory()) {
4368
+ const skillFile = join(dir, entry.name, "SKILL.md")
4369
+ if (existsSync(skillFile)) {
4370
+ skills.add(entry.name)
4371
+ }
4372
+ }
4373
+ }
4374
+ }
4375
+ } catch {
4376
+ // Ignore errors
4377
+ }
4378
+ }
4379
+
4380
+ return Array.from(skills).sort()
4381
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dev3000",
3
- "version": "0.0.143",
3
+ "version": "0.0.144",
4
4
  "description": "AI-powered development tools with browser monitoring and MCP server integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -94,8 +94,8 @@
94
94
  "vitest": "^3.2.4"
95
95
  },
96
96
  "optionalDependencies": {
97
- "@d3k/darwin-arm64": "0.0.143",
98
- "@d3k/linux-x64": "0.0.143",
97
+ "@d3k/darwin-arm64": "0.0.144",
98
+ "@d3k/linux-x64": "0.0.144",
99
99
  "@opentui/core-linux-x64": "^0.1.71"
100
100
  },
101
101
  "engines": {