@seqyuan/annovibe 0.8.121 → 0.8.122

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 (78) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +15 -15
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.js +1 -1
  6. package/.next/required-server-files.json +1 -1
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/.next/server/app/_not-found.html +1 -1
  18. package/.next/server/app/_not-found.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  25. package/.next/server/app/api/agent/runtime/route.js +1 -1
  26. package/.next/server/app/api/internal/runtime/route.js +1 -1
  27. package/.next/server/app/api/version/route.js +1 -1
  28. package/.next/server/app/index.html +1 -1
  29. package/.next/server/app/index.rsc +2 -2
  30. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  31. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  32. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  33. package/.next/server/app/index.segments/_index.segment.rsc +1 -1
  34. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  35. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  36. package/.next/server/app/login.html +1 -1
  37. package/.next/server/app/login.rsc +1 -1
  38. package/.next/server/app/login.segments/_full.segment.rsc +1 -1
  39. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  40. package/.next/server/app/login.segments/_index.segment.rsc +1 -1
  41. package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  42. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  43. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  44. package/.next/server/app/page.js +2 -2
  45. package/.next/server/app/page_client-reference-manifest.js +1 -1
  46. package/.next/server/app/smoke/page_client-reference-manifest.js +1 -1
  47. package/.next/server/app/smoke/session-stream/page_client-reference-manifest.js +1 -1
  48. package/.next/server/app/smoke/session-stream.html +1 -1
  49. package/.next/server/app/smoke/session-stream.rsc +2 -2
  50. package/.next/server/app/smoke/session-stream.segments/_full.segment.rsc +2 -2
  51. package/.next/server/app/smoke/session-stream.segments/_head.segment.rsc +1 -1
  52. package/.next/server/app/smoke/session-stream.segments/_index.segment.rsc +1 -1
  53. package/.next/server/app/smoke/session-stream.segments/_tree.segment.rsc +1 -1
  54. package/.next/server/app/smoke/session-stream.segments/smoke/session-stream/__PAGE__.segment.rsc +2 -2
  55. package/.next/server/app/smoke/session-stream.segments/smoke/session-stream.segment.rsc +1 -1
  56. package/.next/server/app/smoke/session-stream.segments/smoke.segment.rsc +1 -1
  57. package/.next/server/app/smoke.html +1 -1
  58. package/.next/server/app/smoke.rsc +1 -1
  59. package/.next/server/app/smoke.segments/_full.segment.rsc +1 -1
  60. package/.next/server/app/smoke.segments/_head.segment.rsc +1 -1
  61. package/.next/server/app/smoke.segments/_index.segment.rsc +1 -1
  62. package/.next/server/app/smoke.segments/_tree.segment.rsc +1 -1
  63. package/.next/server/app/smoke.segments/smoke/__PAGE__.segment.rsc +1 -1
  64. package/.next/server/app/smoke.segments/smoke.segment.rsc +1 -1
  65. package/.next/server/app-paths-manifest.json +15 -15
  66. package/.next/server/chunks/3041.js +5 -5
  67. package/.next/server/chunks/4584.js +2 -2
  68. package/.next/server/middleware-build-manifest.js +1 -1
  69. package/.next/server/middleware.js +3 -3
  70. package/.next/server/pages/404.html +1 -1
  71. package/.next/server/pages/500.html +1 -1
  72. package/.next/server/server-reference-manifest.json +1 -1
  73. package/.next/static/chunks/5377-1dcfca9d5a1c5694.js +22 -0
  74. package/.next/static/chunks/app/{page-7673f9b48c531a25.js → page-55978c1ddc84af8a.js} +2 -2
  75. package/package.json +1 -1
  76. package/.next/static/chunks/5377-8f8cd2e62855e613.js +0 -22
  77. /package/.next/static/{RGo27ZXaxOnz4AWGjVXXd → ryv7dcOEsJ2E9qSarLzwD}/_buildManifest.js +0 -0
  78. /package/.next/static/{RGo27ZXaxOnz4AWGjVXXd → ryv7dcOEsJ2E9qSarLzwD}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="__variable_66b8ca"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/7deddc85b7ffd1dc-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/ec14413c594b3356-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/88714c00e109ce28.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/82991d37d91b75fd.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-fb1763edb92ee346.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-123fdf632563f469.js" async=""></script><script src="/_next/static/chunks/main-app-8d81a93b58bb990f.js" async=""></script><script src="/_next/static/chunks/app/layout-5608bfe5e8f4e4c0.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>AnnoVibe</title><meta name="description" content="AI-native bioinformatics workspace by Annoroad"/><link rel="shortcut icon" href="/icon.svg" type="image/svg+xml"/><link rel="icon" href="/icon.svg" type="image/svg+xml"/><script>(self.__next_s=self.__next_s||[]).push([0,{"children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();","id":"theme-init"}])</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body style="height:100dvh;display:flex;flex-direction:column"><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/webpack-fb1763edb92ee346.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[42593,[\"7177\",\"static/chunks/app/layout-5608bfe5e8f4e4c0.js\"],\"\"]\n3:I[57121,[],\"\"]\n4:I[74581,[],\"\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[90484,[],\"ViewportBoundary\"]\nb:I[90484,[],\"MetadataBoundary\"]\nd:I[27123,[],\"default\",1]\n:HL[\"/_next/static/media/7deddc85b7ffd1dc-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/ec14413c594b3356-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/88714c00e109ce28.css\",\"style\"]\n:HL[\"/_next/static/css/82991d37d91b75fd.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/88714c00e109ce28.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/82991d37d91b75fd.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"__variable_66b8ca\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"$L2\",null,{\"id\":\"theme-init\",\"strategy\":\"beforeInteractive\",\"children\":\"(function(){try{var t=localStorage.getItem(\\\"pi-theme\\\");if(t===\\\"dark\\\")document.documentElement.classList.add(\\\"dark\\\")}catch(e){}})();\"}]}],[\"$\",\"body\",null,{\"style\":{\"height\":\"100dvh\",\"display\":\"flex\",\"flexDirection\":\"column\"},\"children\":[\"$\",\"$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\":[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\":{\"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.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$@8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"RGo27ZXaxOnz4AWGjVXXd\"}\n"])</script><script>self.__next_f.push([1,"e:[]\n8:\"$We\"\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"f:I[86869,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"AnnoVibe\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI-native bioinformatics workspace by Annoroad\"}],[\"$\",\"link\",\"2\",{\"rel\":\"shortcut icon\",\"href\":\"/icon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/icon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"$Lf\",\"4\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="__variable_66b8ca"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/7deddc85b7ffd1dc-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/ec14413c594b3356-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/88714c00e109ce28.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/82991d37d91b75fd.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-fb1763edb92ee346.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-123fdf632563f469.js" async=""></script><script src="/_next/static/chunks/main-app-8d81a93b58bb990f.js" async=""></script><script src="/_next/static/chunks/app/layout-5608bfe5e8f4e4c0.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>AnnoVibe</title><meta name="description" content="AI-native bioinformatics workspace by Annoroad"/><link rel="shortcut icon" href="/icon.svg" type="image/svg+xml"/><link rel="icon" href="/icon.svg" type="image/svg+xml"/><script>(self.__next_s=self.__next_s||[]).push([0,{"children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();","id":"theme-init"}])</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body style="height:100dvh;display:flex;flex-direction:column"><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/webpack-fb1763edb92ee346.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[42593,[\"7177\",\"static/chunks/app/layout-5608bfe5e8f4e4c0.js\"],\"\"]\n3:I[57121,[],\"\"]\n4:I[74581,[],\"\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[90484,[],\"ViewportBoundary\"]\nb:I[90484,[],\"MetadataBoundary\"]\nd:I[27123,[],\"default\",1]\n:HL[\"/_next/static/media/7deddc85b7ffd1dc-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/ec14413c594b3356-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/88714c00e109ce28.css\",\"style\"]\n:HL[\"/_next/static/css/82991d37d91b75fd.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/88714c00e109ce28.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/82991d37d91b75fd.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"__variable_66b8ca\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"$L2\",null,{\"id\":\"theme-init\",\"strategy\":\"beforeInteractive\",\"children\":\"(function(){try{var t=localStorage.getItem(\\\"pi-theme\\\");if(t===\\\"dark\\\")document.documentElement.classList.add(\\\"dark\\\")}catch(e){}})();\"}]}],[\"$\",\"body\",null,{\"style\":{\"height\":\"100dvh\",\"display\":\"flex\",\"flexDirection\":\"column\"},\"children\":[\"$\",\"$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\":[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\":{\"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.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$@8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"ryv7dcOEsJ2E9qSarLzwD\"}\n"])</script><script>self.__next_f.push([1,"e:[]\n8:\"$We\"\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"f:I[86869,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"AnnoVibe\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI-native bioinformatics workspace by Annoroad\"}],[\"$\",\"link\",\"2\",{\"rel\":\"shortcut icon\",\"href\":\"/icon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/icon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"$Lf\",\"4\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><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/webpack-fb1763edb92ee346.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-123fdf632563f469.js" async=""></script><script src="/_next/static/chunks/main-app-8d81a93b58bb990f.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.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;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-fb1763edb92ee346.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[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[27123,[],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"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\":[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: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"RGo27ZXaxOnz4AWGjVXXd\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\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,"6:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><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/webpack-fb1763edb92ee346.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-123fdf632563f469.js" async=""></script><script src="/_next/static/chunks/main-app-8d81a93b58bb990f.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.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;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-fb1763edb92ee346.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[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[27123,[],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"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\":[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: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"ryv7dcOEsJ2E9qSarLzwD\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\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,"6:null\nb:[]\n"])</script></body></html>
@@ -1 +1 @@
1
- {"node":{},"edge":{},"encryptionKey":"zbQWmwIl68mDnXuW9/RiiKZhFXq6VFeCEYhZNmKnvW0="}
1
+ {"node":{},"edge":{},"encryptionKey":"W/NhieEtNDUdfrjVhz0l5q2IJSaGRwszsetmatP2Pws="}
@@ -0,0 +1,22 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5377],{5377:(e,t,n)=>{n.d(t,{T:()=>K});var r=n(12115);function a(e){return e?.phase==="running_tools"?{kind:"running_tools",tools:(e.activeTools??[]).map(e=>({id:e.id,name:e.name}))}:e?.phase==="streaming"||e?.phase==="compacting"||e?.phase==="idle"?null:{kind:"waiting_model"}}function o(e){if("assistant"!==e.role)return e;let t=e.content;if(!Array.isArray(t))return e;let n=t.map(e=>("object"!=typeof e||null===e||Array.isArray(e)||"toolCall"!==e.type?null:{type:"toolCall",toolCallId:"string"==typeof e.toolCallId?e.toolCallId:"string"==typeof e.id?e.id:"",toolName:"string"==typeof e.toolName?e.toolName:"string"==typeof e.name?e.name:"",input:"object"!=typeof e.input||null===e.input||Array.isArray(e.input)?"object"!=typeof e.arguments||null===e.arguments||Array.isArray(e.arguments)?{}:e.arguments:e.input})??e);return{...e,content:n}}var s=n(32383),l=n(28999);async function i(e,t){if(!t.length)return[];let n=await fetch("/api/images/upload",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:e,images:t.map(e=>({data:e.data,mimeType:e.mimeType,name:e.name}))})}),r=await n.json().catch(()=>({}));if(!n.ok||r.error)throw Error(r.error??`Upload failed (HTTP ${n.status})`);return(r.uploaded??[]).map((e,n)=>({...e,previewUrl:t[n]?.previewUrl}))}async function u(e,t,n){let r,a=new TextDecoder,o="",s=e=>{if(e.startsWith("id: ")){r=e.slice(4);return}if(!e.startsWith("data: "))return;let n=e.slice(6);if("[DONE]"!==n)try{t(n,r)}catch{}finally{r=void 0}},l=new Promise(e=>{n?.aborted?e():n?.addEventListener("abort",()=>e(),{once:!0})});for(;;){let t=await Promise.race([e.read(),l.then(()=>({done:!0,value:void 0}))]);if(t.done)break;let n=(o+=a.decode(t.value,{stream:!0})).split("\n");for(let e of(o=n.pop()||"",n))s(e)}if(o.trim())for(let e of o.split("\n"))s(e)}var c=n(16865);let d="__annovibeStreamSessions__",p="__annovibeStreamListeners__",m="__annovibeStreamErrorCallbacks__";function f(){let e=globalThis;return e[d]||(e[d]=new Map),e[d]}function g(){let e=globalThis;return e[m]||(e[m]=new Map),e[m]}function h(e){return{sessionId:e,phase:"idle",startedAt:null,lastEventAt:null,lastHeartbeatAt:null,reconnectCount:0,lastSyncReason:null,accumulatedText:"",toolCalls:[],toolResults:[],statusText:null,streamingMessage:null,isStreaming:!1,error:null}}function y(e,t){let n;for(let r of(!(n=globalThis)[p]&&(n[p]=new Map),n[p]).get(e)??[])try{r(t)}catch{}}function w(e){e.textThrottleTimer&&(clearTimeout(e.textThrottleTimer),e.textThrottleTimer=null),e.textDirty&&(e.textDirty=!1,b(e))}function v(e,t=!1){let n=Date.now();if(e.snapshot.lastEventAt=n,!t){e.textDirty=!0,e.textThrottleTimer||(e.textThrottleTimer=setTimeout(()=>{e.textThrottleTimer=null,e.textDirty&&(e.textDirty=!1,b(e))},100));return}w(e),b(e)}function b(e,t){let n=Date.now(),r=function(e){let t=[];for(let n of e.toolCalls.values())t.push({type:"toolCall",toolCallId:n.toolCallId,toolName:n.toolName,input:n.input??{}});let n=e.accumulatedText.trim();return n&&t.push({type:"text",text:n}),t}(e),a=(t??e.snapshot.phase)==="active";e.snapshot={...e.snapshot,phase:t??e.snapshot.phase,lastEventAt:n,accumulatedText:e.accumulatedText,toolCalls:[...e.toolCalls.values()],toolResults:[...e.toolResults.values()],statusText:a?function(e){if(e.activeToolId){let t=e.toolCalls.get(e.activeToolId);if(t){let e=Math.max(0,Math.floor((Date.now()-t.startedAt)/1e3));return`Running ${t.toolName||"tool"}… (${e}s)`}}return e.accumulatedText.trim()?"Generating response…":e.toolCalls.size>0?"Finishing tool results…":null}(e):e.snapshot.statusText,streamingMessage:a&&r.length>0?{role:"assistant",content:r}:null,isStreaming:a},y(e.snapshot.sessionId,{type:"snapshot-updated",snapshot:e.snapshot})}function T(e){C(e),e.idleCheckTimer=setInterval(()=>{if("connected"!==e.connectionState)return;let t=Math.max(e.snapshot.lastEventAt??0,e.snapshot.lastHeartbeatAt??0);if(Date.now()-t>=18e4){k(e),w(e);let t="Stream idle timeout — no activity for 180s.";e.snapshot={...e.snapshot,phase:"error",isStreaming:!1,streamingMessage:null,statusText:null,error:t},C(e),y(e.snapshot.sessionId,{type:"error",snapshot:e.snapshot});let n=g().get(e.snapshot.sessionId);if(n)try{n(e.snapshot.sessionId,t)}catch{}}},1e4)}function C(e){e.idleCheckTimer&&(clearInterval(e.idleCheckTimer),e.idleCheckTimer=null)}function k(e){e.toolProgressTimer&&(clearInterval(e.toolProgressTimer),e.toolProgressTimer=null)}function I(e){let t=f(),n=t.get(e);return n||(n={snapshot:h(e),accumulatedText:"",toolCalls:new Map,toolResults:new Map,toolProgressTimer:null,activeToolId:null,textThrottleTimer:null,textDirty:!1,connectionState:"idle",idleCheckTimer:null},t.set(e,n)),n}function _(e,t){let n=g();return n.set(e,t),()=>{n.get(e)===t&&n.delete(e)}}function S(e){let t=f(),n=t.get(e);n&&(k(n),C(n),w(n)),t.delete(e)}function x(e){let t=f().get(e);t&&(t.snapshot={...t.snapshot,reconnectCount:t.snapshot.reconnectCount+1,lastSyncReason:"sse-reconnect",lastEventAt:Date.now()},v(t,!0))}let M="__annovibeSessionMessageCache__";function E(){let e=globalThis;if(!e[M]){var t;let n={entries:new Map,cleanupTimer:null};e[M]=n,(t=n).cleanupTimer||(t.cleanupTimer=setInterval(()=>{let e=Date.now();for(let[n,r]of t.entries)e-r.loadedAt>72e5&&t.entries.delete(n)},6e4))}return e[M]}function A(e){let t=E(),n=t.entries.get(e);return n?Date.now()-n.loadedAt>72e5?(t.entries.delete(e),null):(n.loadedAt=Date.now(),{...n,messages:[...n.messages],entryIds:[...n.entryIds]}):null}function $(e,t,n,r,a){let o=E(),s=o.entries.get(e);if(!s)return;let l=new Set(s.entryIds),i=[],u=[];for(let e=0;e<t.length;e++){let r=n[e];r&&!l.has(r)&&(i.push(t[e]),u.push(r))}0!==i.length&&o.entries.set(e,{...s,messages:[...i,...s.messages],entryIds:[...u,...s.entryIds],hasMore:r,loadedMessagesCount:a,loadedAt:Date.now()})}function R(e){E().entries.delete(e)}var D=n(14755);function L(e,t){switch(t.type){case"start":return{isStreaming:!0,streamingMessage:null};case"update":return{isStreaming:!0,streamingMessage:t.message};case"end":case"reset":return{isStreaming:!1,streamingMessage:null};default:return e}}function N(e,t){return new DOMException(e,t)}function P(){return"u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,11)}-${Math.random().toString(36).slice(2,11)}`}let U=["read","bash","grep","find","ls"];function j(e,t){return e.trim()||0!==t?`text:${e}|images:${t}`:null}function O(e){return"string"==typeof e?j(e,0):Array.isArray(e)?j(e.filter(e=>!!e&&"object"==typeof e&&"text"===e.type&&"string"==typeof e.text).map(e=>e.text).join("\n"),e.filter(e=>!!e&&"object"==typeof e&&"image"===e.type).length):null}function F(e){let t=new Map;for(let n of e){let e="user"!==n.role?null:O(n.content);e&&t.set(e,(t.get(e)??0)+1)}return t}function H(e,t,n){return e.sessionId===t&&(!e.leafId||n.includes(e.leafId))}function K(e){let{session:t,newSessionCwd:n,planMode:d=!1,onAgentEnd:p,onSessionCreated:m,onSessionForked:g,modelsRefreshKey:b,onBranchDataChange:M,onPlanModeState:K}=e,W=null===t&&null!==n,[J,B]=(0,r.useState)(null),[q,z]=(0,r.useState)(!W),[G,V]=(0,r.useState)(null),[Y,Q]=(0,r.useState)(null),[X,Z]=(0,r.useState)([]),[ee,et]=(0,r.useState)([]),[en,er]=(0,r.useState)(0),[ea,eo]=(0,r.useState)(!1),[es,el]=(0,r.useState)(0),[ei,eu]=(0,r.useReducer)(L,{isStreaming:!1,streamingMessage:null}),[ec,ed]=(0,r.useState)(!1),[ep,em]=(0,r.useState)({}),[ef,eg]=(0,r.useState)([]),[eh,ey]=(0,r.useState)({}),[ew,ev]=(0,r.useState)({}),[eb,eT]=(0,r.useState)(null),[eC,ek]=(0,r.useState)("full"),[eI,e_]=(0,r.useState)([...D.SN]),[eS,ex]=(0,r.useState)("auto"),[eM,eE]=(0,r.useState)(null),[eA,e$]=(0,r.useState)(null),[eR,eD]=(0,r.useState)(null),[eL,eN]=(0,r.useState)(null),[eP,eU]=(0,r.useState)(null),[ej,eO]=(0,r.useState)(null),[eF,eH]=(0,r.useState)(!1),[eK,eW]=(0,r.useState)(null),[eJ,eB]=(0,r.useState)(null),[eq,ez]=(0,r.useState)(null),eG=(0,r.useRef)(null),eV=(0,r.useRef)(t?.id??null),eY=(0,r.useRef)(!1),eQ=(0,r.useRef)(null),eX=(0,r.useRef)(null),eZ=(0,r.useRef)(null),e0=(0,r.useRef)(!1),e1=(0,r.useRef)(null),e3=(0,r.useRef)(!1),e4=(0,r.useRef)(null),e5=(0,r.useRef)(null),e2=(0,r.useRef)(new Map),e6=(0,r.useRef)(new Map),e7=(0,r.useRef)(null),e8=(0,r.useRef)([]),e9=(0,r.useRef)(null),te=(0,r.useRef)(0),tt=(0,r.useRef)(!1),tn=(0,r.useRef)(0),tr=(0,r.useRef)(!1),ta=(0,r.useRef)(!1),to=(0,r.useRef)(0),ts=(0,r.useRef)(null),tl=(0,r.useRef)(null);(0,r.useEffect)(()=>{e7.current=Y},[Y]);let ti=e.setNewSessionModel??eT,tu=e.setToolPreset??ek,tc=e.setMemoryTools??e_,td=eP??J?.context.model??ej??null,tp=W?eb:td,tm=(0,r.useCallback)(()=>d?U:(0,D.tE)(eC,eI),[eI,d,eC]),tf=(0,r.useCallback)(e=>e?.length?e.map((e,t)=>{let n=`Attachment ${t+1}: ${e.fileName} (${e.mimeType||"application/octet-stream"}, ${e.size} bytes)`;if(e.extractedText){let t=e.truncated?"\n[The extracted text was truncated before sending.]":"";return`${n}
2
+ ${t}
3
+ ${e.extractedText}`.trim()}return`${n}
4
+ [Text extraction unavailable: ${e.extractionError??"unsupported file type"}]`}).join("\n\n---\n\n"):"",[]),tg=(0,r.useCallback)(async e=>{let t=await fetch(`/api/agent/${encodeURIComponent(e)}/prepare`,{method:"POST"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error??`Failed to prepare session (HTTP ${t.status})`)},[]),th=(()=>{let e={input:0,output:0,cacheRead:0,cacheWrite:0},t=0;for(let n of X){if("assistant"!==n.role)continue;let r=n.usage;r&&(e.input+=r.input??0,e.output+=r.output??0,e.cacheRead+=r.cacheRead??0,e.cacheWrite+=r.cacheWrite??0,t+=r.cost?.total??0)}return e.input+e.output+e.cacheRead+e.cacheWrite>0?{tokens:e,cost:t}:null})(),ty=(0,r.useRef)(!1),tw=(0,r.useCallback)(async()=>{let e=eV.current;if(!e||ty.current||tr.current)return;ty.current=!0,tt.current=!0;let t=0,n=A(e);t=n?n.loadedMessagesCount:50;try{for(;;)try{let n=await fetch(`/api/sessions/${encodeURIComponent(e)}?limit=100&offset=${t}`);if(!n.ok)break;let r=await n.json();if(eV.current!==e)break;let a=r.context.messages,o=r.context.entryIds??[];if(0===a.length)break;Z(e=>[...a,...e]),et(e=>{let t=[...o,...e];return e8.current=t,t});let s=t+a.length;if(el(s),tn.current=s,eo(r.hasMore??!1),$(e,a,o,r.hasMore??!1,s),t=s,!r.hasMore)break;await new Promise(e=>setTimeout(e,800))}catch{break}}finally{ty.current=!1,tr.current=!0,tt.current=!1}},[]),tv=(0,r.useCallback)(async(e,t=!1,n=!1,r=!1)=>{var a;let o=null;try{if(t&&z(!0),!n&&!eY.current&&!r){let n=A(e);if(n)return er(n.totalMessages),eo(n.hasMore),el(n.loadedMessagesCount),Z(n.messages),e8.current=n.entryIds,et(n.entryIds),e7.current=n.leafId,Q(n.leafId),tn.current=n.loadedMessagesCount,t&&z(!1),n.hasMore&&!tr.current&&setTimeout(()=>{tw()},1500),null}let s=n?`/api/sessions/${encodeURIComponent(e)}?includeState`:`/api/sessions/${encodeURIComponent(e)}?limit=50&offset=0`,l=tl.current;if(l?.sid===e&&!t)return null;l?.controller.abort(N("Session load superseded","AbortError"));let i=new AbortController;o=i,tl.current={sid:e,controller:i};let u=setTimeout(()=>{i.abort(N("Session load timed out after 30 seconds","TimeoutError"))},3e4),c=await fetch(s,{signal:i.signal}).finally(()=>clearTimeout(u));if(eV.current&&eV.current!==e)return null;if(404===c.status)return t&&(B(null),e7.current=null,Q(null),Z([]),V(null)),null;if(!c.ok)throw Error(`HTTP ${c.status}`);let d=await c.json();n?(er(d.totalMessages??d.context.messages.length),eo(!1)):(er(d.totalMessages??d.context.messages.length),eo(d.hasMore??!1)),el(d.context.messages.length),B(d),e7.current=d.leafId,Q(d.leafId);let p=d.context.messages,m=F(p),f=new Map,g=Date.now();for(let[t,n]of e2.current)if(n.sessionId===e){if(g-n.createdAt>12e4){e2.current.delete(t);continue}if(n.confirmKey){let e=m.get(n.confirmKey)??0,r=f.get(n.confirmKey)??0;e-r>n.confirmCountAtCreate&&(e2.current.delete(t),f.set(n.confirmKey,r+1))}}e6.current=m;let h=d.context.entryIds??[],y=[...e2.current.values()].filter(t=>H(t,e,h)).map(e=>e.message),w=y.length>0?[...p,...y]:p,v=w.length;return!n&&tn.current>v?(er(d.totalMessages??d.context.messages.length),eo(d.hasMore??!1)):(Z(w),e8.current=h,et(h),n?tn.current=v:tn.current=Math.max(tn.current,v),a={sessionId:e,leafId:d.leafId,messages:w,entryIds:h,totalMessages:d.totalMessages??d.context.messages.length,hasMore:!n&&(d.hasMore??!1),loadedMessagesCount:d.context.messages.length},E().entries.set(e,{...a,loadedAt:Date.now()})),eU(e=>{if(!e)return null;let t=d.context.model;return t?.provider===e.provider&&t.modelId===e.modelId?null:e}),V(null),!d.agentState?.state?.thinkingLevel&&d.context.thinkingLevel&&"off"!==d.context.thinkingLevel&&ex(d.context.thinkingLevel),d.agentState?.state?.planMode&&K?.(d.agentState.state.planMode),d.agentState??null}catch(e){if(e instanceof DOMException&&("AbortError"===e.name||"TimeoutError"===e.name)||e instanceof Error&&/aborted without reason|AbortError|Session load (?:timed out|superseded)/i.test(e.message))return null;return V(String(e)),null}finally{o&&tl.current?.controller===o&&(tl.current=null),t&&z(!1)}},[K,tw]),tb=(0,r.useRef)(!1),tT=(0,r.useCallback)(async()=>{if(tb.current)return;tb.current=!0;let e=eV.current;if(!e){tb.current=!1;return}try{let t=await fetch(`/api/sessions/${encodeURIComponent(e)}?limit=50&offset=${es}`);if(!t.ok)return;let n=await t.json(),r=n.context.messages,a=n.context.entryIds??[];Z(e=>[...r,...e]),et(e=>{let t=[...a,...e];return e8.current=t,t}),el(e=>e+r.length),eo(n.hasMore??!1),$(e,r,a,n.hasMore??!1,es+r.length)}catch{}finally{tb.current=!1}},[es]),tC=(0,r.useCallback)(async(e,t)=>{try{let n=t?`/api/sessions/${encodeURIComponent(e)}/context?leafId=${encodeURIComponent(t)}`:`/api/sessions/${encodeURIComponent(e)}/context`,r=await fetch(n);if(!r.ok)throw Error(`HTTP ${r.status}`);let a=await r.json(),o=a.context.messages,s=a.context.entryIds??[],l=F(o),i=new Map,u=Date.now();for(let[t,n]of e2.current)if(n.sessionId===e){if(u-n.createdAt>12e4){e2.current.delete(t);continue}if(n.confirmKey){let e=l.get(n.confirmKey)??0,r=i.get(n.confirmKey)??0;e-r>n.confirmCountAtCreate&&(e2.current.delete(t),i.set(n.confirmKey,r+1))}}e6.current=l;let c=[...e2.current.values()].filter(t=>H(t,e,s)).map(e=>e.message);Z(c.length>0?[...o,...c]:o),e8.current=s,et(s)}catch(e){console.error("Failed to load context:",e)}},[]),tk=(0,r.useCallback)(async e=>{try{let t=await (0,s.$)(e,{type:"get_tools"});t&&(tu((0,D.ES)(t)),tc((0,D.IB)(t)))}catch(e){console.error("Failed to load tools:",e)}},[tc,tu]),tI=(0,r.useCallback)((e,t={})=>{eG.current?.close(),eG.current=null;let n=`/api/agent/${encodeURIComponent(e)}/events${t.replay?"?replay=1":""}`;return!function(e){let t=I(e);if("active"===t.snapshot.phase)return v(t,!0),T(t),t.snapshot;let n=Date.now();t.snapshot={...h(e),phase:"active",startedAt:n,lastEventAt:n,isStreaming:!0,streamingMessage:{role:"assistant",content:[]}},T(t),v(t,!0),t.snapshot}(e),new Promise((r,a)=>{let o=!1,s=!1,l=null,i=e=>{if(!o){if(o=!0,clearTimeout(c),e){l?.close(),eG.current===l&&(eG.current=null),a(e);return}r()}},c=setTimeout(()=>{t.requireConnected?i(Error("Timed out waiting for event stream connection")):i()},t.timeoutMs??3e4);eG.current=l=function(e){let{url:t,onEvent:n,onStateChange:r,onFatalError:a,maxReconnectAttempts:o=1/0,reconnectBaseMs:s=1e3,reconnectMaxMs:l=3e4,autoReconnect:i=!0}=e,c="idle",d=new AbortController,p=0,m=null,f=null,g=!1,h=(e,t)=>{t&&(f=t),n(e,t)},y=e=>{c!==e&&(c=e,r?.(e))},w=()=>{null!==m&&(clearTimeout(m),m=null)},v=()=>{if(g)return;if(!i)return void y("error");if(p>=o){y("error"),a?.(Error(`Max reconnect attempts (${o}) reached`));return}let e=Math.min(l,s*2**p);p+=1,y("connecting"),m=setTimeout(()=>{m=null,b()},e)},b=async()=>{if(!g){w(),d=new AbortController,y("connecting");try{let e=await fetch(t,{signal:d.signal,headers:{Accept:"text/event-stream","Cache-Control":"no-cache",...f?{"Last-Event-ID":f}:{}}});if(!e.ok)throw Error(`HTTP ${e.status}: ${e.statusText}`);let n=e.body;if(!n)throw Error("Response has no readable body");let r=n.getReader();if(y("connected"),p=0,await u(r,h,d.signal),d.signal.aborted)try{await r.cancel()}catch{}r.releaseLock(),y("closed"),!g&&i&&v()}catch(e){if(g||e instanceof DOMException&&"AbortError"===e.name)return void y("closed");y("error"),i&&v()}}};return{get state(){return c},connect:()=>{g=!1,p=0,w(),b()},close:()=>{g=!0,w(),d.abort(),y("closed")},get abortController(){return d}}}({url:n,onEvent:t=>{try{let n=JSON.parse(t);if("connected"===n.type&&i(),eV.current!==e)return;eQ.current?.(n)}catch{}},onStateChange:t=>{!function(e,t){let n=f().get(e);if(!n)return;let r=n.connectionState;n.connectionState=t,"connected"===t&&"connected"!==r&&(n.snapshot={...n.snapshot,lastEventAt:Date.now(),lastHeartbeatAt:Date.now()},T(n)),"connected"!==t&&"connected"===r&&C(n)}(e,t),"connected"===t&&(s&&(x(e),eX.current?.(e,"sse_reconnected")),s=!0)},reconnectBaseMs:1e3,reconnectMaxMs:3e4}),l.connect()})},[]),t_=(0,r.useCallback)(async(e,t="manual")=>{if(!e||eV.current!==e)return;let n=te.current;try{let t=await fetch(`/api/agent/${encodeURIComponent(e)}`),r=await t.json().catch(()=>({}));if(eV.current!==e||te.current!==n)return;r.running?(eY.current=!0,ed(!0),eB(a(r.state)),eG.current&&"closed"!==eG.current.state&&"error"!==eG.current.state||(x(e),tI(e,{replay:!0}))):(eY.current=!1,eG.current?.close(),eG.current=null,S(e),ed(!1),eB(null),eE(null),eu({type:"end"}),R(e),await tv(e,!1,!1,!0)),r.state?.contextUsage!==void 0&&e$(r.state.contextUsage??null),r.state?.systemPrompt!==void 0&&eD(r.state.systemPrompt??null),r.state?.isCompacting!==void 0&&eH(r.state.isCompacting),r.state?.thinkingLevel!==void 0&&ex(r.state.thinkingLevel??"auto"),r.state?.planMode!==void 0&&K?.(r.state.planMode)}catch{}},[tI,tv,K]);(0,r.useEffect)(()=>{eX.current=t_},[t_]),(0,r.useEffect)(()=>{eY.current=ec},[ec]),eQ.current=(0,r.useCallback)(e=>{let t=eV.current;switch(t&&function(e,t){let n=I(e),r=Date.now();switch(t.type){case"agent_start":if("active"===n.snapshot.phase)return v(n,!0),n.snapshot;return k(n),n.accumulatedText="",n.toolCalls.clear(),n.toolResults.clear(),n.activeToolId=null,n.snapshot={...h(e),phase:"active",startedAt:r,lastEventAt:r,isStreaming:!0,streamingMessage:{role:"assistant",content:[]}},T(n),v(n,!0),n.snapshot;case"message_update":{let e=t.message;if(!e||"assistant"!==e.role)return n.snapshot;let a=e.content;for(let e of Array.isArray(a)?a:[])"object"==typeof e&&null!==e&&"type"in e&&("text"===e.type?n.accumulatedText=e.text??"":"toolCall"===e.type&&e.toolCallId&&!n.toolCalls.has(e.toolCallId)&&n.toolCalls.set(e.toolCallId,{...e,startedAt:r}));return v(n,!1),n.snapshot}case"tool_execution_start":{let e="string"==typeof t.toolCallId?t.toolCallId:"",a="string"==typeof t.toolName?t.toolName:"tool",o=t.input??{};if(!e)return n.snapshot;let s=n.toolCalls.get(e);return n.toolCalls.set(e,{type:"toolCall",toolCallId:e,toolName:a,input:s?.input??o,startedAt:s?.startedAt??r}),n.activeToolId=e,k(n),n.activeToolId&&(n.toolProgressTimer=setInterval(()=>v(n,!0),1e3)),v(n,!0),n.snapshot}case"tool_execution_end":{let e="string"==typeof t.toolCallId?t.toolCallId:"",a="string"==typeof t.toolName?t.toolName:"tool",o="string"==typeof t.result?t.result:JSON.stringify(t.result??"");if(e){let s=n.toolCalls.get(e);s&&n.toolCalls.set(e,{...s,endedAt:r}),n.toolResults.set(e,{role:"toolResult",toolCallId:e,toolName:a,content:[{type:"text",text:o}],isError:!!t.isError,timestamp:r}),n.activeToolId===e&&(n.activeToolId=null,k(n))}return v(n,!0),n.snapshot}case"message_end":return w(n),v(n,!0),n.snapshot;case"agent_end":{if(w(n),k(n),n.activeToolId=null,!0===t.willRetry)return n.accumulatedText="",n.toolCalls.clear(),n.toolResults.clear(),n.snapshot={...n.snapshot,phase:"active",lastEventAt:r,accumulatedText:"",toolCalls:[],toolResults:[],statusText:null,streamingMessage:null,isStreaming:!0,error:null},T(n),y(e,{type:"snapshot-updated",snapshot:n.snapshot}),n.snapshot;C(n);let a="string"==typeof t.error?t.error:null;return n.snapshot={...n.snapshot,phase:a?"error":"completed",isStreaming:!1,streamingMessage:null,statusText:null,error:a},y(e,a?{type:"error",snapshot:n.snapshot}:{type:"completed",snapshot:n.snapshot}),n.snapshot}case"heartbeat":return n.snapshot={...n.snapshot,lastHeartbeatAt:r},n.snapshot;default:return n.snapshot}}(t,e),e.type){case"prompt_admitted":case"agent_start":ez(null),eY.current=!0,ed(!0),eB({kind:"waiting_model"}),eu({type:"start"});break;case"agent_end":if(!0===e.willRetry){eY.current=!0,ed(!0),eB({kind:"waiting_model"});break}eY.current=!1,eG.current?.close(),eG.current=null,ed(!1),eB(null),eE(null),eu({type:"end"}),t&&(R(t),tv(t,!1,!1,!0),ts.current&&clearTimeout(ts.current),ts.current=setTimeout(()=>{eV.current!==t||eY.current||(R(t),tv(t,!1,!1,!0))},500),fetch(`/api/agent/${encodeURIComponent(t)}`).then(e=>e.json()).then(e=>{e.state?.contextUsage!==void 0&&e$(e.state.contextUsage??null),e.state?.systemPrompt!==void 0&&eD(e.state.systemPrompt??null),e.state?.isCompacting!==void 0&&eH(e.state.isCompacting)}).catch(()=>{})),p?.();break;case"message_start":case"message_update":{if(!eY.current)break;let t=e.message;if(t?.role==="user")break;t&&eu({type:"update",message:o(t)}),eB(null);break}case"message_end":{if(!eY.current)break;let t=e.message,n="string"==typeof e.__entryId?e.__entryId:null;if(t&&"user"!==t.role){"assistant"===t.role&&"error"===t.stopReason&&t.errorMessage?.trim()&&ez(`Model response failed: ${t.errorMessage.trim()}`);let e=o(t);!(n&&e8.current.includes(n))&&(Z(t=>t.some(t=>(function(e,t){let n=e.timestamp,r=t.timestamp;if("number"!=typeof n||"number"!=typeof r||n!==r||e.role!==t.role)return!1;try{return JSON.stringify(e)===JSON.stringify(t)}catch{return!1}})(t,e))?t:[...t,e]),n&&et(e=>{if(e.includes(n))return e;let t=[...e,n];return e8.current=t,t}))}eu({type:"reset"}),eB({kind:"waiting_model"});break}case"replay_gap":t&&(R(t),tv(t,!1,!1,!0));break;case"prompt_done":if(!eY.current)break;t_(eV.current??"","prompt_done");break;case"prompt_error":{let n="string"==typeof e.error&&e.error.trim()?e.error.trim():"The model request failed before producing a response.";if(eY.current=!1,ed(!1),eB(null),eE(null),eu({type:"end"}),eG.current?.close(),eG.current=null,t){for(let[e,n]of(S(t),e2.current))n.sessionId===t&&"prompt"===n.kind&&e2.current.delete(e);R(t),tv(t,!1,!1,!0)}ez(`Model request failed: ${n}`),p?.();break}case"tool_execution_start":{let t=e.toolCallId,n=e.toolName,r=e.args,a="bash"===n&&"string"==typeof r?.command?r.command:void 0;eB(e=>{let r=e?.kind==="running_tools"?[...e.tools]:[];return r.some(e=>e.id===t)||r.push({id:t,name:n,args:a}),{kind:"running_tools",tools:r}});break}case"tool_execution_end":{let t=e.toolCallId;eB(e=>{if(e?.kind!=="running_tools")return e;let n=e.tools.filter(e=>e.id!==t);return 0===n.length?{kind:"waiting_model"}:{kind:"running_tools",tools:n}});break}case"auto_retry_start":ez(null),eY.current=!0,ed(!0),eB({kind:"waiting_model"}),eE({attempt:e.attempt,maxAttempts:e.maxAttempts,errorMessage:e.errorMessage});break;case"auto_retry_end":eE(null),!1===e.success&&"string"==typeof e.finalError&&e.finalError.trim()?ez(`Model response failed after retries: ${e.finalError.trim()}`):!0===e.success&&ez(null);break;case"auto_compaction_start":case"compaction_start":eH(!0),eW(null);break;case"auto_compaction_end":case"compaction_end":eH(!1),e.errorMessage?eW(e.errorMessage):!e.aborted&&eV.current&&tv(eV.current)}},[tv,p,t_]);let tS=(0,r.useCallback)(async(e,r,a,o)=>{if(!e.trim()&&!r?.length&&!a?.length||ec)return;te.current+=1;let u=tf(a),c=e.trim()?u?`${e}
5
+
6
+ Attached document text:
7
+
8
+ ${u}`:e:u?`Attached document text:
9
+
10
+ ${u}`:"",p=[],f=W?n:t?.cwd??J?.info?.cwd;if(r?.length&&f)try{p=await i(f,r)}catch(e){ez(e instanceof Error?e.message:String(e));return}let g=p.length?p.map(e=>{var t;return{type:"image",path:e.path,mimeType:e.mimeType,name:e.name,source:{type:"url",url:(t=e.path,`/api/files/${(0,l.HG)(t)}?type=read`),media_type:e.mimeType}}}):r?.map(e=>({type:"image",source:{type:"base64",media_type:e.mimeType,data:e.data}})),h={role:"user",content:g?.length?[...c.trim()?[{type:"text",text:c}]:[],...g]:c,timestamp:Date.now()},y=P(),w=W?null:t?.id??null;w&&R(w);let v=e7.current,b=O(h.content);e2.current.set(y,{localId:y,sessionId:w??"__new__",leafId:v,message:h,createdAt:Date.now(),kind:"prompt",confirmKey:b,confirmCountAtCreate:W?0:b?e6.current.get(b)??0:0}),Z(e=>[...e,h]),ez(null),eY.current=!0,ed(!0),eB({kind:"waiting_model"}),eu({type:"start"}),e3.current=!0;let T=ef.find(e=>e.provider===td?.provider&&e.id===td?.modelId)?.input,C=!T||0===T.length||T.includes("image")?r?.map(e=>({type:"image",data:e.data,mimeType:e.mimeType})):void 0;try{if(W&&n){eb&&eO(eb);let t=o??tm(),r=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:n,type:"prompt",message:c,toolNames:t,planMode:d,deferPrompt:!0,...C?.length?{images:C}:{},...eb?{provider:eb.provider,modelId:eb.modelId}:{},..."auto"!==eS?{thinkingLevel:eS}:{}})}),a=await r.json().catch(()=>({}));if(!r.ok||a.error||!a.sessionId)throw Error(a.error??`HTTP ${r.status}`);let l=a.sessionId;eV.current=l;let i=e2.current.get(y);i&&(i.sessionId=l),eZ.current?.(),eZ.current=_(l,()=>{eV.current===l&&(ed(!1),eB(null))}),e9.current=l,await tI(l,{requireConnected:!0,timeoutMs:1e4}),await (0,s.$)(l,{type:"prompt",message:c,toolNames:t,planMode:d,...C?.length?{images:C}:{}}),m?.({id:l,path:"",cwd:n,name:void 0,created:new Date().toISOString(),modified:new Date().toISOString(),messageCount:1,firstMessage:e})}else if(t){let e=o??tm();await tg(t.id),eZ.current?.(),eZ.current=_(t.id,()=>{eV.current===t.id&&(ed(!1),eB(null))}),await tI(t.id,{requireConnected:!0,timeoutMs:1e4}),await (0,s.$)(t.id,{type:"prompt",message:c,toolNames:e,planMode:d,leafId:v,...td?{provider:td.provider,modelId:td.modelId}:{},..."auto"!==eS?{thinkingLevel:eS}:{},...C?.length?{images:C}:{}})}}catch(t){let e=eV.current;if(e2.current.delete(y),Z(e=>e.filter(e=>e!==h)),t instanceof s.H&&(409===t.status||"SESSION_BUSY"===t.code)){ez("This session is already running in another tab. Showing that active run instead."),eY.current=!0,ed(!0),eB({kind:"waiting_model"}),eu({type:"start"}),e&&(eG.current?.close(),eG.current=null,x(e),tI(e,{replay:!0}),eX.current?.(e,"prompt_conflict"));return}if(console.error("Failed to send message:",t),W&&eV.current){let e=eV.current;eV.current=null,e9.current=null,fetch(`/api/sessions/${encodeURIComponent(e)}`,{method:"DELETE"}).catch(()=>{})}ez(t instanceof Error?t.message:String(t)),eG.current?.close(),eG.current=null,e&&S(e),eY.current=!1,ed(!1),eB(null),eu({type:"end"})}},[W,n,eb,tm,eS,t,J?.info?.cwd,ec,tI,m,tf,d,ef,td,tg]),tx=(0,r.useCallback)(async()=>{let e=eV.current;if(e){eY.current=!1,ez(null),ed(!1),eB(null),eu({type:"end"}),eG.current?.close(),eG.current=null,S(e),R(e);try{await (0,s.$)(e,{type:"abort"}),await tv(e,!1,!1,!0)}catch(t){console.error("Failed to abort:",t),await tv(e,!1,!1,!0)}}},[tv]),tM=(0,r.useCallback)(async e=>{let t=eV.current;if(t){eN(e);try{let{cancelled:n,newSessionId:r}=await (0,s.$)(t,{type:"fork",entryId:e})??{};!n&&r&&g?.(r)}catch(e){console.error("Fork failed:",e)}finally{eN(null)}}},[g]),tE=(0,r.useCallback)(async e=>{let t=eV.current;t&&(R(t),e7.current=e,Q(e),await tC(t,e))},[tC]),tA=(0,r.useCallback)(async e=>{e7.current=e,Q(e);let t=eV.current;t&&(R(t),await tC(t,e))},[tC]),t$=(0,r.useCallback)(async(e,t)=>{if(W)return void ti({provider:e,modelId:t});let n=eV.current;if(n)try{var r;ez(null);let a=await (0,s.$)(n,{type:"set_model",provider:e,modelId:t}),o={provider:a.provider,modelId:a.id};a.thinkingLevel&&(r=a.thinkingLevel,"auto"===r||"off"===r||"minimal"===r||"low"===r||"medium"===r||"high"===r||"xhigh"===r)&&ex(a.thinkingLevel),eU(o),B(e=>e?{...e,context:{...e.context,model:o}}:e)}catch(t){let e=t instanceof Error?t.message:String(t);console.error("Failed to set model:",t),ez(e)}},[W,ti]),tR=(0,r.useCallback)(async()=>{let e=eV.current;if(e&&!eF){eH(!0),eW(null);try{await (0,s.$)(e,{type:"compact"}),await tv(e,!0)}catch(e){eW(e instanceof Error?e.message:String(e))}finally{eH(!1)}}},[eF,tv]),tD=(0,r.useCallback)(async(e,t,n)=>{let r=eV.current;if(!r)return;R(r);let a=tf(n),o=e.trim()?a?`${e}
11
+
12
+ Attached document text:
13
+
14
+ ${a}`:e:a?`Attached document text:
15
+
16
+ ${a}`:"",l=ef.find(e=>e.provider===td?.provider&&e.id===td?.modelId)?.input,i=!l||0===l.length||l.includes("image")?t?.map(e=>({type:"image",data:e.data,mimeType:e.mimeType})):void 0,u={role:"user",content:`[steer] ${o}`,timestamp:Date.now()},c=P(),d=j(o,i?.length??0);e2.current.set(c,{localId:c,sessionId:r,leafId:e7.current,message:u,createdAt:Date.now(),kind:"steer",confirmKey:d,confirmCountAtCreate:d?e6.current.get(d)??0:0}),Z(e=>[...e,u]);try{await (0,s.$)(r,{type:"steer",message:o,...i?.length?{images:i}:{}})}catch(e){e2.current.delete(c),console.error("Failed to steer:",e)}},[tf,ef,td]),tL=(0,r.useCallback)(async(e,t,n)=>{let r=eV.current;if(!r)return;R(r);let a=tf(n),o=e.trim()?a?`${e}
17
+
18
+ Attached document text:
19
+
20
+ ${a}`:e:a?`Attached document text:
21
+
22
+ ${a}`:"",l=ef.find(e=>e.provider===td?.provider&&e.id===td?.modelId)?.input,i=!l||0===l.length||l.includes("image")?t?.map(e=>({type:"image",data:e.data,mimeType:e.mimeType})):void 0,u={role:"user",content:o,timestamp:Date.now()},c=P(),d=j(o,i?.length??0);e2.current.set(c,{localId:c,sessionId:r,leafId:e7.current,message:u,createdAt:Date.now(),kind:"follow_up",confirmKey:d,confirmCountAtCreate:d?e6.current.get(d)??0:0}),Z(e=>[...e,u]);try{await (0,s.$)(r,{type:"follow_up",message:o,...i?.length?{images:i}:{}})}catch(e){e2.current.delete(c),console.error("Failed to follow up:",e)}},[tf,ef,td]),tN=(0,r.useCallback)(async()=>{let e=eV.current;if(e)try{await (0,s.$)(e,{type:"abort_compaction"})}catch(e){console.error("Failed to abort compaction:",e)}},[]),tP=(0,r.useCallback)(async e=>{if(ex(e),"auto"===e)return;let t=eV.current;if(t)try{await (0,s.$)(t,{type:"set_thinking_level",level:e})}catch(e){console.error("Failed to set thinking level:",e)}},[]),tU=(0,r.useCallback)(async e=>{tu(e);let t=(0,D.tE)(e,eI),n=eV.current;if(n)try{await (0,s.$)(n,{type:"set_tools",toolNames:t})}catch(e){console.error("Failed to set tools:",e)}},[eI,tu]),tj=(0,r.useCallback)(async e=>{tc(e);let t=(0,D.tE)(eC,e),n=eV.current;if(n)try{await (0,s.$)(n,{type:"set_tools",toolNames:t})}catch(e){console.error("Failed to set memory tools:",e)}},[tc,eC]),tO=(0,r.useCallback)((e="smooth")=>{e4.current?.scrollIntoView({behavior:e})},[]),tF=(0,r.useCallback)(()=>{let e=e5.current,t=e1.current;if(!e||!t)return;let n=t.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop;e.scrollTo({top:n-16,behavior:"smooth"})},[]);return(0,r.useEffect)(()=>{if(t){var e;let n;if(eV.current=t.id,t.id===e9.current)return e9.current=null,()=>{ts.current&&clearTimeout(ts.current),ts.current=null,eG.current?.close(),eG.current=null,eZ.current?.(),eZ.current=null};tr.current=!1,tn.current=0;let r=(e=t.id,(n=f().get(e))&&"idle"!==n.snapshot.phase?n.snapshot:null);r?.phase==="active"&&(eY.current=!0,ed(!0),eB({kind:"waiting_model"}),eu({type:"start"})),(async()=>{let e=await tv(t.id,!0,!0,!0);eV.current===t.id&&(await tk(t.id),e?.running?(eY.current=!0,ed(!0),eB(a(e.state)),eu({type:"start"}),tI(t.id,{replay:!0}),eZ.current?.(),eZ.current=_(t.id,()=>{eV.current===t.id&&eX.current?.(t.id,"stream_watchdog")})):e&&r?.phase==="active"?(eY.current=!1,ed(!1),eB(null),eu({type:"end"}),S(t.id)):e||r?.phase!=="active"||eX.current?.(t.id,"mount_state_load_failed"),e?.state&&(void 0!==e.state.isCompacting&&eH(e.state.isCompacting),void 0!==e.state.contextUsage&&e$(e.state.contextUsage??null),void 0!==e.state.systemPrompt&&eD(e.state.systemPrompt??null),void 0!==e.state.thinkingLevel&&ex(e.state.thinkingLevel??"auto"),void 0!==e.state.planMode&&K?.(e.state.planMode)))})()}return()=>{e9.current&&eV.current===e9.current||(ts.current&&clearTimeout(ts.current),ts.current=null,tl.current?.controller.abort(N("Session changed","AbortError")),tl.current=null,eG.current?.close(),eG.current=null,eZ.current?.(),eZ.current=null)}},[tI,tv,tk,M,K,t]),(0,r.useEffect)(()=>{let e=()=>{let e=eV.current;e&&t_(e,"foreground")},t=()=>{"visible"===document.visibilityState&&e()};return document.addEventListener("visibilitychange",t),window.addEventListener("focus",e),window.addEventListener("online",e),()=>{document.removeEventListener("visibilitychange",t),window.removeEventListener("focus",e),window.removeEventListener("online",e)}},[t_]),(0,r.useEffect)(()=>{let e=eV.current;if(e)return ta.current=!1,(0,c.O)(t=>{let n=t.includes(e),r=ta.current;ta.current=n,n&&!eY.current?(R(e),t_(e,"running_feed_start")):!n&&r&&(R(e),eY.current?t_(e,"running_feed_stop"):tv(e,!1,!1,!0))})},[tv,t_,t?.id]),(0,r.useEffect)(()=>{let e=window.setInterval(()=>{let e=eV.current;e&&(eY.current?t_(e,"interval"):Date.now()-to.current>=3e4?(to.current=Date.now(),R(e),tv(e,!1,!1,!0)):tv(e))},15e3);return()=>window.clearInterval(e)},[tv,t_]),(0,r.useEffect)(()=>{M&&M(J?.tree??[],Y,tA)},[J?.tree,Y,tA,M]),(0,r.useEffect)(()=>{X.length>0&&!tt.current&&(e3.current?(e3.current=!1,e0.current=!0,tF()):e0.current?eY.current||tO("smooth"):(e0.current=!0,tO("instant")))},[X.length,ec,tO,tF]),(0,r.useEffect)(()=>{fetch("/api/models").then(e=>e.json()).then(e=>{if(em(e.models),e.thinkingLevels&&ey(e.thinkingLevels),e.thinkingLevelMaps&&ev(e.thinkingLevelMaps),e.modelList&&(eg(e.modelList),W&&e.modelList.length>0)){let t=e.defaultModel,n=t&&e.modelList.find(e=>e.id===t.modelId&&e.provider===t.provider);ti(n?{provider:n.provider,modelId:n.id}:{provider:e.modelList[0].provider,modelId:e.modelList[0].id})}}).catch(()=>{})},[W,b,ti]),(0,r.useEffect)(()=>{if(!eK)return;let e=setTimeout(()=>eW(null),3e3);return()=>clearTimeout(e)},[eK]),{data:J,loading:q,error:G,activeLeafId:Y,messages:X,entryIds:ee,streamState:ei,agentRunning:ec,modelNames:ep,modelList:ef,modelThinkingLevels:eh,modelThinkingLevelMaps:ew,newSessionModel:eb,toolPreset:eC,memoryTools:eI,thinkingLevel:eS,retryInfo:eM,contextUsage:eA,systemPrompt:eR,forkingEntryId:eL,isCompacting:eF,compactError:eK,currentModel:td,displayModel:tp,sessionStats:th,agentPhase:eJ,agentError:eq,isNew:W,sessionIdRef:eV,sseReaderRef:eG,messagesEndRef:e4,scrollContainerRef:e5,lastUserMsgRef:e1,pendingScrollToUserRef:e3,initialScrollDoneRef:e0,handleSend:tS,handleAbort:tx,handleFork:tM,handleNavigate:tE,handleModelChange:t$,handleCompact:tR,handleSteer:tD,handleFollowUp:tL,handleAbortCompaction:tN,handleToolPresetChange:tU,handleMemoryToolsChange:tj,handleThinkingLevelChange:tP,loadTools:tk,setActiveLeafId:Q,setData:B,setMessages:Z,dispatch:eu,setAgentRunning:ed,setForkingEntryId:eN,loadMoreMessages:tT,hasMoreMessages:ea,totalMessages:en,loadedMessagesCount:es,handleAgentEventRef:eQ}}},14755:(e,t,n)=>{n.d(t,{ES:()=>p,IB:()=>m,SN:()=>a,tE:()=>f,xG:()=>d});let r="subagent",a=["retain","recall","reflect"],o=[],s=["read","bash","edit","write"],l=["bash","read","edit","write","grep","find","ls"],i=[...l,"kernel_plot_run","kernel_plot_render","kernel_plot_inspect","kernel_plot_stop","kernel_plot_artifacts"],u=[...l,r];function c(e){return[...e].sort().join(",")}function d(e){switch(e){case"none":return o;case"default":return s;case"workbench":return i;case"agent":return u;default:return l}}function p(e){let t=e.filter(e=>e.active).map(e=>e.name),n=t.filter(e=>!a.includes(e)),o=c(t),d=c(n);return""===o?"none":o===c(s)?"default":o===c(l)?"full":o===c(i)?"workbench":o===c(u)?"agent":""===d?"none":d===c(s)?"default":d===c(l)?"full":d===c(i)?"workbench":d===c(u)||t.includes(r)?"agent":"default"}function m(e){return a.filter(t=>e.some(e=>e.active&&e.name===t))}function f(e,t){return[...new Set([...d(e),...t])]}},16865:(e,t,n)=>{n.d(t,{O:()=>w});let r=new Set,a=null,o=null,s=null,l=null,i=null,u=!1,c=!1;function d(e){for(let t of(a=[...new Set(e.filter(e=>"string"==typeof e))],r))try{t(a)}catch{}}async function p(){try{let e=await fetch("/api/agent/running",{cache:"no-store"});if(!e.ok)return;let t=await e.json();Array.isArray(t.runningSessionIds)&&d(t.runningSessionIds)}catch{}}function m(){s||0===r.size||(p(),s=setInterval(()=>{p()},5e3))}function f(){s&&(clearInterval(s),s=null)}function g(){if(!u){if(u=!0,window.__annovibeRunningSessionSubscribe){i=window.__annovibeRunningSessionSubscribe(d);return}if("u"<typeof SharedWorker)return void m();try{(o=new SharedWorker("/running-session-worker.js?v=1",{name:"annovibe-running-sessions-v1",type:"classic"})).port.onmessage=e=>{let t=e.data;"transport"===t.type?m():"running"===t.type&&Array.isArray(t.runningSessionIds)&&(l&&clearTimeout(l),l=null,f(),d(t.runningSessionIds.filter(e=>"string"==typeof e)))},o.onerror=()=>m(),o.port.start(),o.port.postMessage({type:"subscribe"}),l=setTimeout(()=>m(),3e3)}catch{o=null,m()}}}function h(){if(u){if(u=!1,l&&clearTimeout(l),l=null,f(),i?.(),i=null,o){try{o.port.postMessage({type:"disconnect"})}catch{}try{o.port.close()}catch{}}o=null,a=null}}function y(){r.size>0&&g()}function w(e){return r.add(e),a&&e(a),c||(c=!0,window.addEventListener("pagehide",h),window.addEventListener("pageshow",y)),g(),()=>{r.delete(e),0===r.size&&(h(),c&&(c=!1,window.removeEventListener("pagehide",h),window.removeEventListener("pageshow",y)))}}},32383:(e,t,n)=>{n.d(t,{$:()=>a,H:()=>r});class r extends Error{constructor(e,t,n){super(e),this.status=t,this.code=n,this.name="AgentCommandError"}}async function a(e,t){let n=await fetch(`/api/agent/${encodeURIComponent(e)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),a=await n.json().catch(()=>({}));if(!n.ok||a.error)throw new r(a.error??`HTTP ${n.status}`,n.status,a.code);return a.data}}}]);