@researai/deepscientist 1.5.0 → 1.5.1

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 (163) hide show
  1. package/AGENTS.md +26 -0
  2. package/README.md +19 -179
  3. package/assets/connectors/lingzhu/openclaw-bridge/README.md +124 -0
  4. package/assets/connectors/lingzhu/openclaw-bridge/index.ts +162 -0
  5. package/assets/connectors/lingzhu/openclaw-bridge/openclaw.plugin.json +145 -0
  6. package/assets/connectors/lingzhu/openclaw-bridge/package.json +35 -0
  7. package/assets/connectors/lingzhu/openclaw-bridge/src/cli.ts +180 -0
  8. package/assets/connectors/lingzhu/openclaw-bridge/src/config.ts +196 -0
  9. package/assets/connectors/lingzhu/openclaw-bridge/src/debug-log.ts +111 -0
  10. package/assets/connectors/lingzhu/openclaw-bridge/src/events.ts +4 -0
  11. package/assets/connectors/lingzhu/openclaw-bridge/src/http-handler.ts +1133 -0
  12. package/assets/connectors/lingzhu/openclaw-bridge/src/image-cache.ts +75 -0
  13. package/assets/connectors/lingzhu/openclaw-bridge/src/lingzhu-tools.ts +246 -0
  14. package/assets/connectors/lingzhu/openclaw-bridge/src/transform.ts +541 -0
  15. package/assets/connectors/lingzhu/openclaw-bridge/src/types.ts +131 -0
  16. package/assets/connectors/lingzhu/openclaw-bridge/tsconfig.json +14 -0
  17. package/assets/connectors/lingzhu/openclaw.lingzhu.config.template.json +39 -0
  18. package/bin/ds.js +233 -53
  19. package/docs/en/00_QUICK_START.md +134 -0
  20. package/docs/en/01_SETTINGS_REFERENCE.md +1104 -0
  21. package/docs/en/02_START_RESEARCH_GUIDE.md +404 -0
  22. package/docs/en/03_QQ_CONNECTOR_GUIDE.md +325 -0
  23. package/docs/en/04_LINGZHU_CONNECTOR_GUIDE.md +216 -0
  24. package/docs/en/05_TUI_GUIDE.md +141 -0
  25. package/docs/en/06_RUNTIME_AND_CANVAS.md +679 -0
  26. package/docs/en/07_MEMORY_AND_MCP.md +253 -0
  27. package/docs/en/08_FIGURE_STYLE_GUIDE.md +97 -0
  28. package/docs/en/09_DOCTOR.md +108 -0
  29. package/docs/en/90_ARCHITECTURE.md +245 -0
  30. package/docs/en/91_DEVELOPMENT.md +195 -0
  31. package/docs/en/99_ACKNOWLEDGEMENTS.md +29 -0
  32. package/docs/zh/00_QUICK_START.md +134 -0
  33. package/docs/zh/01_SETTINGS_REFERENCE.md +1137 -0
  34. package/docs/zh/02_START_RESEARCH_GUIDE.md +414 -0
  35. package/docs/zh/03_QQ_CONNECTOR_GUIDE.md +324 -0
  36. package/docs/zh/04_LINGZHU_CONNECTOR_GUIDE.md +230 -0
  37. package/docs/zh/05_TUI_GUIDE.md +128 -0
  38. package/docs/zh/06_RUNTIME_AND_CANVAS.md +271 -0
  39. package/docs/zh/07_MEMORY_AND_MCP.md +235 -0
  40. package/docs/zh/08_FIGURE_STYLE_GUIDE.md +97 -0
  41. package/docs/zh/09_DOCTOR.md +112 -0
  42. package/docs/zh/99_ACKNOWLEDGEMENTS.md +29 -0
  43. package/install.sh +32 -8
  44. package/package.json +4 -2
  45. package/pyproject.toml +1 -1
  46. package/src/deepscientist/artifact/guidance.py +9 -2
  47. package/src/deepscientist/artifact/service.py +482 -22
  48. package/src/deepscientist/bash_exec/monitor.py +27 -5
  49. package/src/deepscientist/bash_exec/runtime.py +639 -0
  50. package/src/deepscientist/bash_exec/service.py +99 -16
  51. package/src/deepscientist/bridges/base.py +3 -0
  52. package/src/deepscientist/bridges/connectors.py +292 -13
  53. package/src/deepscientist/channels/qq.py +19 -2
  54. package/src/deepscientist/channels/relay.py +1 -0
  55. package/src/deepscientist/cli.py +32 -25
  56. package/src/deepscientist/config/models.py +28 -2
  57. package/src/deepscientist/config/service.py +201 -6
  58. package/src/deepscientist/connector_runtime.py +2 -0
  59. package/src/deepscientist/daemon/api/handlers.py +50 -5
  60. package/src/deepscientist/daemon/api/router.py +1 -0
  61. package/src/deepscientist/daemon/app.py +442 -15
  62. package/src/deepscientist/doctor.py +444 -0
  63. package/src/deepscientist/home.py +1 -0
  64. package/src/deepscientist/latex_runtime.py +17 -4
  65. package/src/deepscientist/lingzhu_support.py +182 -0
  66. package/src/deepscientist/mcp/server.py +49 -2
  67. package/src/deepscientist/prompts/builder.py +181 -58
  68. package/src/deepscientist/quest/layout.py +1 -0
  69. package/src/deepscientist/quest/service.py +63 -2
  70. package/src/deepscientist/quest/stage_views.py +19 -1
  71. package/src/deepscientist/runtime_tools/__init__.py +16 -0
  72. package/src/deepscientist/runtime_tools/builtins.py +19 -0
  73. package/src/deepscientist/runtime_tools/models.py +29 -0
  74. package/src/deepscientist/runtime_tools/registry.py +40 -0
  75. package/src/deepscientist/runtime_tools/service.py +59 -0
  76. package/src/deepscientist/runtime_tools/tinytex.py +25 -0
  77. package/src/deepscientist/tinytex.py +276 -0
  78. package/src/prompts/connectors/lingzhu.md +12 -0
  79. package/src/prompts/connectors/qq.md +121 -0
  80. package/src/prompts/system.md +177 -33
  81. package/src/skills/analysis-campaign/SKILL.md +22 -6
  82. package/src/skills/baseline/SKILL.md +5 -4
  83. package/src/skills/decision/SKILL.md +4 -3
  84. package/src/skills/experiment/SKILL.md +5 -4
  85. package/src/skills/finalize/SKILL.md +5 -4
  86. package/src/skills/idea/SKILL.md +5 -4
  87. package/src/skills/intake-audit/SKILL.md +277 -0
  88. package/src/skills/intake-audit/references/state-audit-template.md +41 -0
  89. package/src/skills/rebuttal/SKILL.md +407 -0
  90. package/src/skills/rebuttal/references/action-plan-template.md +63 -0
  91. package/src/skills/rebuttal/references/evidence-update-template.md +30 -0
  92. package/src/skills/rebuttal/references/response-letter-template.md +113 -0
  93. package/src/skills/rebuttal/references/review-matrix-template.md +55 -0
  94. package/src/skills/review/SKILL.md +293 -0
  95. package/src/skills/review/references/experiment-todo-template.md +29 -0
  96. package/src/skills/review/references/review-report-template.md +83 -0
  97. package/src/skills/review/references/revision-log-template.md +40 -0
  98. package/src/skills/scout/SKILL.md +5 -4
  99. package/src/skills/write/SKILL.md +7 -3
  100. package/src/tui/dist/components/WelcomePanel.js +17 -43
  101. package/src/tui/dist/components/messages/BashExecOperationMessage.js +3 -2
  102. package/src/tui/package.json +1 -1
  103. package/src/ui/dist/assets/{AiManusChatView-7v-dHngU.js → AiManusChatView-w5lF2Ttt.js} +109 -575
  104. package/src/ui/dist/assets/{AnalysisPlugin-B_Xmz-KE.js → AnalysisPlugin-DJOED79I.js} +1 -1
  105. package/src/ui/dist/assets/{AutoFigurePlugin-Cko-0tm1.js → AutoFigurePlugin-DaG61Y0M.js} +63 -8
  106. package/src/ui/dist/assets/{CliPlugin-BsU0ht7q.js → CliPlugin-CV4LqUB_.js} +43 -609
  107. package/src/ui/dist/assets/{CodeEditorPlugin-DcMMP0Rt.js → CodeEditorPlugin-DylfAea4.js} +8 -8
  108. package/src/ui/dist/assets/{CodeViewerPlugin-BqoQ5QyY.js → CodeViewerPlugin-F7saY0LM.js} +5 -5
  109. package/src/ui/dist/assets/{DocViewerPlugin-D7eHNhU6.js → DocViewerPlugin-COP0c7jf.js} +3 -3
  110. package/src/ui/dist/assets/{GitDiffViewerPlugin-DLJN42T5.js → GitDiffViewerPlugin-CAS05pT9.js} +1 -1
  111. package/src/ui/dist/assets/{ImageViewerPlugin-gJMV7MOu.js → ImageViewerPlugin-Bco1CN_w.js} +5 -6
  112. package/src/ui/dist/assets/{LabCopilotPanel-B857sfxP.js → LabCopilotPanel-CvMlCD99.js} +12 -15
  113. package/src/ui/dist/assets/LabPlugin-BYankkE4.js +2676 -0
  114. package/src/ui/dist/assets/LabPlugin-D9jVIo0A.css +2698 -0
  115. package/src/ui/dist/assets/{LatexPlugin-DWKEo-Wj.js → LatexPlugin-LDSMR-t-.js} +16 -16
  116. package/src/ui/dist/assets/{MarkdownViewerPlugin-DBzoEmhv.js → MarkdownViewerPlugin-B7o80jgm.js} +4 -4
  117. package/src/ui/dist/assets/{MarketplacePlugin-DoHc-8vo.js → MarketplacePlugin-CM6ZOcpC.js} +3 -3
  118. package/src/ui/dist/assets/{NotebookEditor-CKjKH-yS.js → NotebookEditor-Dc61cXmK.js} +3 -3
  119. package/src/ui/dist/assets/{PdfLoader-zFoL0VPo.js → PdfLoader-DWowuQwx.js} +1 -1
  120. package/src/ui/dist/assets/{PdfMarkdownPlugin-DXPaL9Nt.js → PdfMarkdownPlugin-BsJM1q_a.js} +3 -3
  121. package/src/ui/dist/assets/{PdfViewerPlugin-DhK8qCFp.js → PdfViewerPlugin-DB2eEEFQ.js} +10 -10
  122. package/src/ui/dist/assets/{SearchPlugin-CdSi6krf.js → SearchPlugin-CraThSvt.js} +1 -1
  123. package/src/ui/dist/assets/{Stepper-V-WiDQJl.js → Stepper-CgocRTPq.js} +1 -1
  124. package/src/ui/dist/assets/{TextViewerPlugin-hIs1Efiu.js → TextViewerPlugin-B1JGhKtd.js} +4 -4
  125. package/src/ui/dist/assets/{VNCViewer-DG8b0q2X.js → VNCViewer-CclFC7FM.js} +9 -10
  126. package/src/ui/dist/assets/{bibtex-HDac6fVW.js → bibtex-D3IKsMl7.js} +1 -1
  127. package/src/ui/dist/assets/{code-BnBeNxBc.js → code-BP37Xx0p.js} +1 -1
  128. package/src/ui/dist/assets/{file-content-IRQ3jHb8.js → file-content-BAJSu-9r.js} +1 -1
  129. package/src/ui/dist/assets/{file-diff-panel-DZoQ9I6r.js → file-diff-panel-DUGeCTuy.js} +1 -1
  130. package/src/ui/dist/assets/{file-socket-BMCdLc-P.js → file-socket-CXc1Ojf7.js} +1 -1
  131. package/src/ui/dist/assets/{file-utils-CltILB3w.js → file-utils-2J21jt7M.js} +1 -1
  132. package/src/ui/dist/assets/{image-Boe6ffhu.js → image-CMMmgvcn.js} +1 -1
  133. package/src/ui/dist/assets/{index-BlplpvE1.js → index-BaVumsQT.js} +2 -2
  134. package/src/ui/dist/assets/{index-DZqJ-qAM.js → index-CWgMgpow.js} +60 -2154
  135. package/src/ui/dist/assets/{index-DO43pFZP.js → index-DmwmJmbW.js} +6372 -8434
  136. package/src/ui/dist/assets/{index-Bq2bvfkl.css → index-KGt-z-dD.css} +225 -2920
  137. package/src/ui/dist/assets/{index-2Zf65FZt.js → index-s7aHnNQ4.js} +1 -1
  138. package/src/ui/dist/assets/{message-square-mUHn_Ssb.js → message-square-CQRfX0Am.js} +1 -1
  139. package/src/ui/dist/assets/{monaco-fe0arNEU.js → monaco-B4TbdsrF.js} +1 -1
  140. package/src/ui/dist/assets/{popover-D_7i19qU.js → popover-B8Rokodk.js} +1 -1
  141. package/src/ui/dist/assets/{project-sync-DyVGrU7H.js → project-sync-D_i96KH4.js} +2 -8
  142. package/src/ui/dist/assets/{sigma-BzazRyxQ.js → sigma-D12PnzCN.js} +1 -1
  143. package/src/ui/dist/assets/{tooltip-DN_yjHFH.js → tooltip-B6YrI4aJ.js} +1 -1
  144. package/src/ui/dist/assets/trash-Bc8jGp0V.js +32 -0
  145. package/src/ui/dist/assets/{useCliAccess-DV2L2Qxy.js → useCliAccess-mXVCYSZ-.js} +12 -42
  146. package/src/ui/dist/assets/{useFileDiffOverlay-DyTj-p_V.js → useFileDiffOverlay-Bg6b9H9K.js} +1 -1
  147. package/src/ui/dist/assets/{wrap-text-ozYHtUwq.js → wrap-text-Drh5GEnL.js} +1 -1
  148. package/src/ui/dist/assets/{zoom-out-BN9MUyCQ.js → zoom-out-CJj9DZLn.js} +1 -1
  149. package/src/ui/dist/index.html +2 -2
  150. package/assets/fonts/Inter-Variable.ttf +0 -0
  151. package/assets/fonts/NotoSerifSC-Regular-C94HN_ZN.ttf +0 -0
  152. package/assets/fonts/NunitoSans-Variable.ttf +0 -0
  153. package/assets/fonts/Satoshi-Medium-ByP-Zb-9.woff2 +0 -0
  154. package/assets/fonts/SourceSans3-Variable.ttf +0 -0
  155. package/assets/fonts/ds-fonts.css +0 -83
  156. package/src/ui/dist/assets/Inter-Variable-VF2RPR_K.ttf +0 -0
  157. package/src/ui/dist/assets/LabPlugin-bL7rpic8.js +0 -43
  158. package/src/ui/dist/assets/NotoSerifSC-Regular-C94HN_ZN-C94HN_ZN.ttf +0 -0
  159. package/src/ui/dist/assets/NunitoSans-Variable-B_ZymHAd.ttf +0 -0
  160. package/src/ui/dist/assets/Satoshi-Medium-ByP-Zb-9-GkA34YXu.woff2 +0 -0
  161. package/src/ui/dist/assets/SourceSans3-Variable-CD-WOsSK.ttf +0 -0
  162. package/src/ui/dist/assets/info-CcsK_htA.js +0 -18
  163. package/src/ui/dist/assets/user-plus-BusDx-hF.js +0 -79
@@ -1,12 +1,12 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/monaco-fe0arNEU.js","assets/index-DO43pFZP.js","assets/index-Bq2bvfkl.css"])))=>i.map(i=>d[i]);
2
- import { i as isCliFileId, R as React, f as useFileTreeStore, j as jsxRuntimeExports, b as cn, L as LoaderCircle, S as Save, B as Braces, g as RefreshCw, h as dynamic, _ as __vitePreload } from './index-DO43pFZP.js';
3
- import { u as useFileContentStore, a as useFileContentLoading } from './file-content-IRQ3jHb8.js';
4
- import { a as acquireFileSocket } from './file-socket-BMCdLc-P.js';
5
- import { c as configureMonacoLoader } from './monaco-fe0arNEU.js';
6
- import { u as useFileDiffOverlay } from './useFileDiffOverlay-DyTj-p_V.js';
7
- import { F as FileDiffPanel } from './file-diff-panel-DZoQ9I6r.js';
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/monaco-B4TbdsrF.js","assets/index-DmwmJmbW.js","assets/index-KGt-z-dD.css"])))=>i.map(i=>d[i]);
2
+ import { i as isCliFileId, R as React, f as useFileTreeStore, j as jsxRuntimeExports, b as cn, L as LoaderCircle, S as Save, B as Braces, g as RefreshCw, h as dynamic, _ as __vitePreload } from './index-DmwmJmbW.js';
3
+ import { u as useFileContentStore, a as useFileContentLoading } from './file-content-BAJSu-9r.js';
4
+ import { a as acquireFileSocket } from './file-socket-CXc1Ojf7.js';
5
+ import { c as configureMonacoLoader } from './monaco-B4TbdsrF.js';
6
+ import { u as useFileDiffOverlay } from './useFileDiffOverlay-Bg6b9H9K.js';
7
+ import { F as FileDiffPanel } from './file-diff-panel-DUGeCTuy.js';
8
8
 
9
- const MonacoEditor = dynamic(() => __vitePreload(() => import('./monaco-fe0arNEU.js').then(n => n.i),true?__vite__mapDeps([0,1,2]):void 0), { });
9
+ const MonacoEditor = dynamic(() => __vitePreload(() => import('./monaco-B4TbdsrF.js').then(n => n.i),true?__vite__mapDeps([0,1,2]):void 0), { });
10
10
  configureMonacoLoader();
11
11
  function getLanguageFromName(name) {
12
12
  const lower = name.toLowerCase();
@@ -1,8 +1,8 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DO43pFZP.js","assets/index-Bq2bvfkl.css"])))=>i.map(i=>d[i]);
2
- import { u as useI18n, a as useWorkspaceSurfaceStore, r as reactExports, c as copyToClipboard, j as jsxRuntimeExports, L as LoaderCircle, C as CircleAlert, F as FileCode, E as Eye, b as cn, d as Check, e as Copy, _ as __vitePreload } from './index-DO43pFZP.js';
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DmwmJmbW.js","assets/index-KGt-z-dD.css"])))=>i.map(i=>d[i]);
2
+ import { u as useI18n, a as useWorkspaceSurfaceStore, r as reactExports, c as copyToClipboard, j as jsxRuntimeExports, L as LoaderCircle, C as CircleAlert, F as FileCode, E as Eye, b as cn, d as Check, e as Copy, _ as __vitePreload } from './index-DmwmJmbW.js';
3
3
  import { c as consumeFileJumpEffects } from './file-jump-queue-r5XKgJEV.js';
4
- import { C as Code } from './code-BnBeNxBc.js';
5
- import { H as Hash, W as WrapText } from './wrap-text-ozYHtUwq.js';
4
+ import { C as Code } from './code-BP37Xx0p.js';
5
+ import { H as Hash, W as WrapText } from './wrap-text-Drh5GEnL.js';
6
6
 
7
7
  const EXTENSION_TO_LANGUAGE = {
8
8
  // JavaScript/TypeScript
@@ -416,7 +416,7 @@ function CodeViewerPlugin({
416
416
  setLoading(false);
417
417
  return;
418
418
  }
419
- const { getFileContent } = await __vitePreload(async () => { const { getFileContent } = await import('./index-DO43pFZP.js').then(n => n.eA);return { getFileContent }},true?__vite__mapDeps([0,1]):void 0);
419
+ const { getFileContent } = await __vitePreload(async () => { const { getFileContent } = await import('./index-DmwmJmbW.js').then(n => n.eh);return { getFileContent }},true?__vite__mapDeps([0,1]):void 0);
420
420
  const text = await getFileContent(context.resourceId);
421
421
  setContent(text);
422
422
  } catch (err) {
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DO43pFZP.js","assets/index-Bq2bvfkl.css"])))=>i.map(i=>d[i]);
2
- import { o as createLucideIcon, u as useI18n, r as reactExports, j as jsxRuntimeExports, L as LoaderCircle, b as cn, T as TriangleAlert, a1 as Download, _ as __vitePreload, a7 as FileSpreadsheet, k as FileText } from './index-DO43pFZP.js';
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DmwmJmbW.js","assets/index-KGt-z-dD.css"])))=>i.map(i=>d[i]);
2
+ import { z as createLucideIcon, u as useI18n, r as reactExports, j as jsxRuntimeExports, L as LoaderCircle, b as cn, T as TriangleAlert, $ as Download, _ as __vitePreload, a4 as FileSpreadsheet, k as FileText } from './index-DmwmJmbW.js';
3
3
 
4
4
  /**
5
5
  * @license lucide-react v0.511.0 - ISC
@@ -228,7 +228,7 @@ function DocViewerPlugin({
228
228
  if (!context.resourceId) return;
229
229
  (async () => {
230
230
  try {
231
- const { downloadFileById } = await __vitePreload(async () => { const { downloadFileById } = await import('./index-DO43pFZP.js').then(n => n.eA);return { downloadFileById }},true?__vite__mapDeps([0,1]):void 0);
231
+ const { downloadFileById } = await __vitePreload(async () => { const { downloadFileById } = await import('./index-DmwmJmbW.js').then(n => n.eh);return { downloadFileById }},true?__vite__mapDeps([0,1]):void 0);
232
232
  await downloadFileById(context.resourceId, fileName);
233
233
  } catch (err) {
234
234
  console.error("Failed to download document:", err);
@@ -1,4 +1,4 @@
1
- import { o as createLucideIcon, r as reactExports, j as jsxRuntimeExports, b as cn, ai as useQuery, a6 as Button, g as RefreshCw, ah as ExternalLink, aj as client } from './index-DO43pFZP.js';
1
+ import { z as createLucideIcon, r as reactExports, j as jsxRuntimeExports, b as cn, af as useQuery, a3 as Button, g as RefreshCw, ae as ExternalLink, ag as client } from './index-DmwmJmbW.js';
2
2
 
3
3
  /**
4
4
  * @license lucide-react v0.511.0 - ISC
@@ -1,8 +1,7 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DO43pFZP.js","assets/index-Bq2bvfkl.css"])))=>i.map(i=>d[i]);
2
- import { o as createLucideIcon, r as reactExports, j as jsxRuntimeExports, b as cn, ak as RotateCcw, a1 as Download, L as LoaderCircle, _ as __vitePreload } from './index-DO43pFZP.js';
3
- import { I as Image } from './image-Boe6ffhu.js';
4
- import { Z as ZoomOut, a as ZoomIn } from './zoom-out-BN9MUyCQ.js';
5
- import { I as Info } from './info-CcsK_htA.js';
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DmwmJmbW.js","assets/index-KGt-z-dD.css"])))=>i.map(i=>d[i]);
2
+ import { z as createLucideIcon, r as reactExports, j as jsxRuntimeExports, b as cn, ah as RotateCcw, ai as Info, $ as Download, L as LoaderCircle, _ as __vitePreload } from './index-DmwmJmbW.js';
3
+ import { I as Image } from './image-CMMmgvcn.js';
4
+ import { Z as ZoomOut, a as ZoomIn } from './zoom-out-CJj9DZLn.js';
6
5
 
7
6
  /**
8
7
  * @license lucide-react v0.511.0 - ISC
@@ -281,7 +280,7 @@ function ImageViewerPlugin({
281
280
  }
282
281
  const loadImageUrl = async () => {
283
282
  try {
284
- const { createFileObjectUrl } = await __vitePreload(async () => { const { createFileObjectUrl } = await import('./index-DO43pFZP.js').then(n => n.eA);return { createFileObjectUrl }},true?__vite__mapDeps([0,1]):void 0);
283
+ const { createFileObjectUrl } = await __vitePreload(async () => { const { createFileObjectUrl } = await import('./index-DmwmJmbW.js').then(n => n.eh);return { createFileObjectUrl }},true?__vite__mapDeps([0,1]):void 0);
285
284
  objectUrl = await createFileObjectUrl(context.resourceId);
286
285
  if (cancelled) {
287
286
  URL.revokeObjectURL(objectUrl);
@@ -1,16 +1,15 @@
1
- import { o as createLucideIcon, r as reactExports, aM as reactDomExports, aN as useReducedMotion, j as jsxRuntimeExports, aO as useQueryClient, w as useToast, u as useI18n, aC as useLabCopilotStore, aP as useLabGraphSelectionStore, aQ as useChatSessionStore, aR as buildAvatarColorMap, aS as isLabWorkingStatus, aT as getLabAgentDirectSession, aU as buildAgentDescriptor, aV as resolveAgentLogo, aH as resolveAgentDisplayName, aI as resolveAgentMentionLabel, aW as AnimatePresence, aX as motion, a6 as Button, aY as pickAvatarFrameColor, aJ as resolveQuestLabel, d as Check, b as cn, q as useAuthStore, aZ as useCopilotDockHeaderPortal, a_ as assignLabAgent, a$ as ScrollArea, L as LoaderCircle, b0 as likeLabMoment, b1 as unlikeLabMoment, b2 as commentLabMoment, b3 as Plus, l as Search, b4 as Select, b5 as SelectTrigger, b6 as SelectValue, b7 as SelectContent, b8 as SelectItem, b9 as Dialog, ba as DialogContent, bb as DialogHeader, bc as DialogTitle, bd as DialogFooter, be as getLabGroupSession, bf as getLabFriendsSession } from './index-DO43pFZP.js';
2
- import { P as Popover, a as PopoverTrigger, b as PopoverContent } from './popover-D_7i19qU.js';
3
- import { A as AiManusChatView, D as DEFAULT_AGENT_ID, C as ChatBox, a as applyChatEvent, u as useSSESession, b as ChatMessage, r as renderMarkdown } from './AiManusChatView-7v-dHngU.js';
4
- import { E as Ellipsis } from './user-plus-BusDx-hF.js';
5
- import './file-content-IRQ3jHb8.js';
6
- import './file-utils-CltILB3w.js';
1
+ import { z as createLucideIcon, r as reactExports, aK as reactDomExports, aL as useReducedMotion, j as jsxRuntimeExports, aM as useQueryClient, v as useToast, u as useI18n, aA as useLabCopilotStore, aN as useLabGraphSelectionStore, aO as useChatSessionStore, aP as buildAvatarColorMap, aQ as isLabWorkingStatus, aR as getLabAgentDirectSession, aS as buildAgentDescriptor, aT as resolveAgentLogo, aF as resolveAgentDisplayName, aG as resolveAgentMentionLabel, aU as AnimatePresence, aV as motion, a3 as Button, aW as pickAvatarFrameColor, aH as resolveQuestLabel, d as Check, b as cn, p as useAuthStore, aX as useCopilotDockHeaderPortal, aY as assignLabAgent, aZ as ScrollArea, L as LoaderCircle, a_ as likeLabMoment, a$ as unlikeLabMoment, b0 as commentLabMoment, b1 as Ellipsis, b2 as Plus, l as Search, b3 as Select, b4 as SelectTrigger, b5 as SelectValue, b6 as SelectContent, b7 as SelectItem, b8 as Dialog, b9 as DialogContent, ba as DialogHeader, bb as DialogTitle, bc as DialogFooter, bd as getLabGroupSession, be as getLabFriendsSession } from './index-DmwmJmbW.js';
2
+ import { P as Popover, a as PopoverTrigger, b as PopoverContent } from './popover-B8Rokodk.js';
3
+ import { A as AiManusChatView, D as DEFAULT_AGENT_ID, C as ChatBox, a as applyChatEvent, u as useSSESession, b as ChatMessage, r as renderMarkdown } from './AiManusChatView-w5lF2Ttt.js';
4
+ import './file-content-BAJSu-9r.js';
5
+ import './file-utils-2J21jt7M.js';
7
6
  import './file-jump-queue-r5XKgJEV.js';
8
7
  import './pdf-effect-queue-DSw_D3RV.js';
9
- import './file-diff-panel-DZoQ9I6r.js';
10
- import './message-square-mUHn_Ssb.js';
11
- import './NotebookEditor-CKjKH-yS.js';
12
- import './tooltip-DN_yjHFH.js';
13
- import './info-CcsK_htA.js';
8
+ import './file-diff-panel-DUGeCTuy.js';
9
+ import './message-square-CQRfX0Am.js';
10
+ import './NotebookEditor-Dc61cXmK.js';
11
+ import './tooltip-B6YrI4aJ.js';
12
+ import './trash-Bc8jGp0V.js';
14
13
 
15
14
  /**
16
15
  * @license lucide-react v0.511.0 - ISC
@@ -1767,7 +1766,6 @@ function LabCopilotHeader({
1767
1766
  function LabCopilotPanel({
1768
1767
  projectId,
1769
1768
  readOnly,
1770
- shareReadOnly,
1771
1769
  cliStatus,
1772
1770
  templates,
1773
1771
  agents,
@@ -1976,9 +1974,8 @@ function LabCopilotPanel({
1976
1974
  endPiOnboarding();
1977
1975
  }
1978
1976
  }, [copilotMeta?.hasHistory, endPiOnboarding, piOnboardingActive]);
1979
- const shareReadOnlyMode = Boolean(shareReadOnly);
1980
1977
  const cliReadOnly = cliStatus !== "online";
1981
- const labReadOnly = readOnly || shareReadOnlyMode || cliReadOnly;
1978
+ const labReadOnly = readOnly || cliReadOnly;
1982
1979
  const mentionsEnabled = !labReadOnly && !(mode === "direct" && shouldShowInitTemplate);
1983
1980
  const mentionablesOverride = reactExports.useMemo(() => {
1984
1981
  return agents.map((agent) => {
@@ -2221,7 +2218,7 @@ function LabCopilotPanel({
2221
2218
  exit: { opacity: 1 },
2222
2219
  transition: { duration: 0 }
2223
2220
  };
2224
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex h-full min-h-0 flex-col", children: shareReadOnlyMode ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex flex-1 items-center justify-center px-6 text-center text-sm text-[var(--lab-text-secondary)]", children: "Copilot is disabled in shared view." }) : /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
2221
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex h-full min-h-0 flex-col", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
2225
2222
  cliReadOnly ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "border-b border-[var(--lab-border)] px-5 py-2 text-xs text-[var(--lab-text-secondary)]", children: cliStatus === "unbound" ? "Bind an execution server to activate Lab Copilot." : "Your execution server is offline. Messages will be sent once it reconnects." }) : null,
2226
2223
  /* @__PURE__ */ jsxRuntimeExports.jsxs(AnimatePresence, { mode: "wait", initial: false, children: [
2227
2224
  mode === "direct" ? /* @__PURE__ */ jsxRuntimeExports.jsx(motion.div, { className: "flex flex-1 min-h-0 flex-col overflow-hidden", ...modeMotion, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-1 min-h-0 overflow-hidden", children: [