@leanspec/ui 0.2.24 → 0.2.26

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 (258) hide show
  1. package/dist/{_baseUniq-0KC2LwTU.js → _baseUniq-ijHblO0i.js} +1 -1
  2. package/dist/{arc-BF3pCZeb.js → arc-DSoiQqhG.js} +1 -1
  3. package/dist/{architecture-U656AL7Q-Dvz3aEBf.js → architecture-U656AL7Q-0EY1UA93.js} +1 -1
  4. package/dist/{architectureDiagram-VXUJARFQ-DUvgrr6M.js → architectureDiagram-VXUJARFQ-CpZ7MNJ1.js} +3 -3
  5. package/dist/assets/{_baseUniq-zaVu3d-8.js → _baseUniq-CwL8whuW.js} +1 -1
  6. package/dist/assets/{arc-CNsbs1Hc.js → arc-DQK79yWt.js} +1 -1
  7. package/dist/assets/{architectureDiagram-VXUJARFQ-CNRNXzWH.js → architectureDiagram-VXUJARFQ-0lyQJAFV.js} +1 -1
  8. package/dist/assets/{blockDiagram-VD42YOAC-B-z5fhLO.js → blockDiagram-VD42YOAC-De6LVB6b.js} +1 -1
  9. package/dist/assets/{c4Diagram-YG6GDRKO-D1wRy3rn.js → c4Diagram-YG6GDRKO-DmO_YZpf.js} +1 -1
  10. package/dist/assets/channel-CPL3ZhB2.js +1 -0
  11. package/dist/assets/{chunk-4BX2VUAB-Ju0iuf5T.js → chunk-4BX2VUAB-D_i5DxBx.js} +1 -1
  12. package/dist/assets/{chunk-55IACEB6-BOKBDX1b.js → chunk-55IACEB6-CYBqqEaM.js} +1 -1
  13. package/dist/assets/{chunk-B4BG7PRW-DsLx2FWG.js → chunk-B4BG7PRW-B_kJst0L.js} +1 -1
  14. package/dist/assets/{chunk-DI55MBZ5-DVZlU9hx.js → chunk-DI55MBZ5-DmQQvuy9.js} +1 -1
  15. package/dist/assets/{chunk-FMBD7UC4-DcibvRDC.js → chunk-FMBD7UC4-DIj1fMOC.js} +1 -1
  16. package/dist/assets/{chunk-QN33PNHL-CNdyoS13.js → chunk-QN33PNHL-Dob4GXZN.js} +1 -1
  17. package/dist/assets/{chunk-QZHKN3VN-B6wDkRFR.js → chunk-QZHKN3VN-B9l1Ct5_.js} +1 -1
  18. package/dist/assets/{chunk-TZMSLE5B-DiRAl639.js → chunk-TZMSLE5B-D5kj2wzj.js} +1 -1
  19. package/dist/assets/classDiagram-2ON5EDUG-BGtOMy27.js +1 -0
  20. package/dist/assets/classDiagram-v2-WZHVMYZB-BGtOMy27.js +1 -0
  21. package/dist/assets/clone-TRq3RsgR.js +1 -0
  22. package/dist/assets/{code-block-37QAKDTI-D0bYQ3tc.js → code-block-37QAKDTI-DPta_cDe.js} +1 -1
  23. package/dist/assets/{cose-bilkent-S5V4N54A-C7eFSjsi.js → cose-bilkent-S5V4N54A-CIbyIxy7.js} +1 -1
  24. package/dist/assets/{dagre-6UL2VRFP-Chm9A17M.js → dagre-6UL2VRFP-DiNoo8UH.js} +1 -1
  25. package/dist/assets/devopicons-JYBX4xNv.woff2 +0 -0
  26. package/dist/assets/{diagram-PSM6KHXK-CCbDlCx9.js → diagram-PSM6KHXK-oPUYMkQi.js} +1 -1
  27. package/dist/assets/{diagram-QEK2KX5R-Dtd49XA6.js → diagram-QEK2KX5R-ekYHp-_K.js} +1 -1
  28. package/dist/assets/{diagram-S2PKOQOG-0K2p7g5b.js → diagram-S2PKOQOG-BjESZsAo.js} +1 -1
  29. package/dist/assets/{erDiagram-Q2GNP2WA-jqGcgMyf.js → erDiagram-Q2GNP2WA-C18-XmOn.js} +1 -1
  30. package/dist/assets/file-icons-Byv9wKV-.woff2 +0 -0
  31. package/dist/assets/{flowDiagram-NV44I4VS-Dq-5nSyY.js → flowDiagram-NV44I4VS-C_-yn3lU.js} +1 -1
  32. package/dist/assets/fontawesome-B-jkhYfk.woff2 +0 -0
  33. package/dist/assets/{ganttDiagram-JELNMOA3-I2WySoN5.js → ganttDiagram-JELNMOA3-Da95ISpS.js} +1 -1
  34. package/dist/assets/{gitGraphDiagram-NY62KEGX-B-rqrf_i.js → gitGraphDiagram-NY62KEGX-CKst-DTk.js} +1 -1
  35. package/dist/assets/{graph-BXq8Vy6g.js → graph-ByVyFk5n.js} +1 -1
  36. package/dist/assets/index-B-FvbnKr.js +2236 -0
  37. package/dist/assets/index-BUH5BNQv.css +1 -0
  38. package/dist/assets/{infoDiagram-WHAUD3N6-C7RcpAsC.js → infoDiagram-WHAUD3N6-B-KLbNx8.js} +1 -1
  39. package/dist/assets/{journeyDiagram-XKPGCS4Q-CzPy13x7.js → journeyDiagram-XKPGCS4Q-Dc0gGxNW.js} +1 -1
  40. package/dist/assets/{kanban-definition-3W4ZIXB7-BwjszvCG.js → kanban-definition-3W4ZIXB7-BBl3Os5b.js} +1 -1
  41. package/dist/assets/{layout-tBkKcjOH.js → layout-DUjHnQ3q.js} +1 -1
  42. package/dist/assets/mfixx-DfQCz-aF.woff2 +0 -0
  43. package/dist/assets/{min-L_dIkaz8.js → min-B84CwCRn.js} +1 -1
  44. package/dist/assets/{mindmap-definition-VGOIOE7T-Dv_R0Kzs.js → mindmap-definition-VGOIOE7T-DwXr0an_.js} +1 -1
  45. package/dist/assets/octicons-CS-gsnb3.woff2 +0 -0
  46. package/dist/assets/{pieDiagram-ADFJNKIX-DBdEQqzX.js → pieDiagram-ADFJNKIX-kg25OEdx.js} +1 -1
  47. package/dist/assets/{quadrantDiagram-AYHSOK5B-DSe0t1Vr.js → quadrantDiagram-AYHSOK5B-jzIPJrQC.js} +1 -1
  48. package/dist/assets/{requirementDiagram-UZGBJVZJ-DINdLdJg.js → requirementDiagram-UZGBJVZJ-D7lvVmve.js} +1 -1
  49. package/dist/assets/{sankeyDiagram-TZEHDZUN-ByLK18cs.js → sankeyDiagram-TZEHDZUN-CkKJUu-X.js} +1 -1
  50. package/dist/assets/{sequenceDiagram-WL72ISMW-BtwZoEF6.js → sequenceDiagram-WL72ISMW-DWXoU2Xu.js} +1 -1
  51. package/dist/assets/{stateDiagram-FKZM4ZOC-B_dGGh5t.js → stateDiagram-FKZM4ZOC-DKMSa2-u.js} +1 -1
  52. package/dist/assets/stateDiagram-v2-4FDKWEC3-fGhjroU9.js +1 -0
  53. package/dist/assets/{timeline-definition-IT6M3QCI-BKq8fAVj.js → timeline-definition-IT6M3QCI-i8tdCjji.js} +1 -1
  54. package/dist/assets/{treemap-KMMF4GRG-DpzypmYP.js → treemap-KMMF4GRG-Bo2ueTP9.js} +1 -1
  55. package/dist/assets/{xychartDiagram-PRI3JC2R-B2nRsBEy.js → xychartDiagram-PRI3JC2R-C54lHEBd.js} +1 -1
  56. package/dist/{blockDiagram-VD42YOAC-C5CukG0j.js → blockDiagram-VD42YOAC-ByO9mclR.js} +5 -5
  57. package/dist/{c4Diagram-YG6GDRKO-D700bLUP.js → c4Diagram-YG6GDRKO-G9IBNezV.js} +2 -2
  58. package/dist/{channel-Cti7M2bZ.js → channel-TVLaQyE6.js} +1 -1
  59. package/dist/{chunk-4BX2VUAB-CgLsIbqb.js → chunk-4BX2VUAB-DvQETnkD.js} +1 -1
  60. package/dist/{chunk-55IACEB6-BlgtjLk2.js → chunk-55IACEB6-Fx760vrL.js} +1 -1
  61. package/dist/{chunk-B4BG7PRW-B0F1XFJz.js → chunk-B4BG7PRW-BdBF-s3l.js} +4 -4
  62. package/dist/{chunk-DI55MBZ5-DHtjqtxd.js → chunk-DI55MBZ5-Bq1Xpipe.js} +3 -3
  63. package/dist/{chunk-FMBD7UC4-d2R18kU3.js → chunk-FMBD7UC4-CHwx9e7Z.js} +1 -1
  64. package/dist/{chunk-QN33PNHL-hc_HFHv7.js → chunk-QN33PNHL-29-xlpoh.js} +1 -1
  65. package/dist/{chunk-QZHKN3VN-DFrM02dn.js → chunk-QZHKN3VN-B4R9UyOO.js} +1 -1
  66. package/dist/{chunk-TZMSLE5B-BKKjuHyU.js → chunk-TZMSLE5B-D7ZMH86x.js} +1 -1
  67. package/dist/{classDiagram-v2-WZHVMYZB-CWBGyk3O.js → classDiagram-2ON5EDUG-BZJNp72Q.js} +2 -2
  68. package/dist/{classDiagram-2ON5EDUG-CWBGyk3O.js → classDiagram-v2-WZHVMYZB-BZJNp72Q.js} +2 -2
  69. package/dist/{clone-C-SjnjM3.js → clone-BuM257qi.js} +1 -1
  70. package/dist/{cose-bilkent-S5V4N54A-DP3AP0OF.js → cose-bilkent-S5V4N54A-BDx7dcIS.js} +1 -1
  71. package/dist/{dagre-6UL2VRFP-D9e9iL9P.js → dagre-6UL2VRFP-fvMEdLZ9.js} +5 -5
  72. package/dist/{diagram-PSM6KHXK-BpO0cxRG.js → diagram-PSM6KHXK-B5DR0Fbv.js} +4 -4
  73. package/dist/{diagram-QEK2KX5R-CSMfjuPl.js → diagram-QEK2KX5R-DVAmb4ns.js} +3 -3
  74. package/dist/{diagram-S2PKOQOG-Csx2ehrH.js → diagram-S2PKOQOG-oXO-KMCB.js} +3 -3
  75. package/dist/{erDiagram-Q2GNP2WA-X4t9tzNA.js → erDiagram-Q2GNP2WA-Cw3S1xrg.js} +4 -4
  76. package/dist/{flowDiagram-NV44I4VS-JVEdioX6.js → flowDiagram-NV44I4VS-B41EhOsx.js} +5 -5
  77. package/dist/{ganttDiagram-JELNMOA3-BksGSOHP.js → ganttDiagram-JELNMOA3-CktjaPtm.js} +2 -2
  78. package/dist/{gitGraph-F6HP7TQM-OK0kClD7.js → gitGraph-F6HP7TQM-BtaG3hDI.js} +1 -1
  79. package/dist/{gitGraphDiagram-NY62KEGX-BRpBdTVE.js → gitGraphDiagram-NY62KEGX-DoYr9lJ6.js} +4 -4
  80. package/dist/{graph-Czb_7a7B.js → graph-aZrSt0UC.js} +2 -2
  81. package/dist/{index-iCTLJvaV.js → index-2ILPnvAG.js} +9703 -9869
  82. package/dist/index.html +2 -2
  83. package/dist/info-NVLQJR56-5Whifced.js +5 -0
  84. package/dist/{infoDiagram-WHAUD3N6-DWuyY_dJ.js → infoDiagram-WHAUD3N6-C-9mSXCL.js} +2 -2
  85. package/dist/{journeyDiagram-XKPGCS4Q-CrnINICH.js → journeyDiagram-XKPGCS4Q-BZaGhFGN.js} +4 -4
  86. package/dist/{kanban-definition-3W4ZIXB7-64OgHBcl.js → kanban-definition-3W4ZIXB7-DcgJ4LvA.js} +2 -2
  87. package/dist/{layout-Bx4_X9_k.js → layout-CZbv8l1x.js} +4 -4
  88. package/dist/lib/components/dependencies/dependency-filter-bar.d.ts +18 -0
  89. package/dist/lib/components/dependencies/dependency-graph-view.d.ts +14 -0
  90. package/dist/lib/components/dependencies/spec-selector.d.ts +10 -0
  91. package/dist/lib/components/files/CodeViewer.d.ts +7 -0
  92. package/dist/lib/components/files/FileExplorer.d.ts +29 -0
  93. package/dist/lib/components/files/FileIcon.d.ts +7 -0
  94. package/dist/lib/components/library/ai-elements/prompt-input/AttachmentBar.d.ts +2 -0
  95. package/dist/lib/components/library/ai-elements/prompt-input/ContextSelector.d.ts +2 -0
  96. package/dist/lib/components/library/ai-elements/prompt-input/PromptTextArea.d.ts +2 -0
  97. package/dist/lib/components/library/ai-elements/prompt-input/VoiceInput.d.ts +2 -0
  98. package/dist/lib/components/library/ai-elements/prompt-input/compounds.d.ts +72 -0
  99. package/dist/lib/components/library/ai-elements/prompt-input/context.d.ts +14 -0
  100. package/dist/lib/components/library/ai-elements/prompt-input/core.d.ts +16 -0
  101. package/dist/lib/components/library/ai-elements/prompt-input/hooks.d.ts +46 -0
  102. package/dist/lib/components/library/ai-elements/prompt-input.d.ts +4 -136
  103. package/dist/lib/components/library/navigation/back-to-top.d.ts +3 -1
  104. package/dist/lib/components/library/project/project-avatar.d.ts +1 -1
  105. package/dist/lib/components/library/ui/avatar.d.ts +2 -2
  106. package/dist/lib/components/library/ui/input-group.d.ts +1 -1
  107. package/dist/lib/components/searchable-select.d.ts +12 -0
  108. package/dist/lib/components/session-detail-layout.context.d.ts +5 -0
  109. package/dist/lib/components/session-detail-layout.d.ts +1 -0
  110. package/dist/lib/components/session-status-badge.d.ts +9 -0
  111. package/dist/lib/components/sessions/acp-conversation.d.ts +13 -0
  112. package/dist/lib/components/sessions/collapsible-json-log.d.ts +5 -0
  113. package/dist/lib/components/sessions/session-create-dialog.d.ts +1 -5
  114. package/dist/lib/components/sessions/session-duration-badge.d.ts +8 -0
  115. package/dist/lib/components/sessions/session-mode-badge.d.ts +6 -0
  116. package/dist/lib/components/sessions/sessions-popover.d.ts +1 -0
  117. package/dist/lib/components/sessions-nav-sidebar.d.ts +6 -0
  118. package/dist/lib/components/settings/models-settings/ModelEditor.d.ts +2 -0
  119. package/dist/lib/components/settings/models-settings/ModelTestPanel.d.ts +2 -0
  120. package/dist/lib/components/settings/models-settings/ModelsList.d.ts +2 -0
  121. package/dist/lib/components/settings/models-settings/custom-provider-card.d.ts +9 -0
  122. package/dist/lib/components/settings/models-settings/custom-provider-dialog.d.ts +8 -0
  123. package/dist/lib/components/settings/models-settings/provider-api-key-dialog.d.ts +7 -0
  124. package/dist/lib/components/settings/models-settings/provider-models-dialog.d.ts +8 -0
  125. package/dist/lib/components/settings/models-settings/registry-provider-card.d.ts +10 -0
  126. package/dist/lib/components/shared/back-to-top.d.ts +5 -1
  127. package/dist/lib/components/shared/project-avatar.d.ts +1 -1
  128. package/dist/lib/components/spec-context-attachments.d.ts +26 -0
  129. package/dist/lib/components/spec-detail/spec-detail-content.d.ts +9 -0
  130. package/dist/lib/components/spec-detail/spec-detail-header.d.ts +36 -0
  131. package/dist/lib/components/spec-detail/sub-spec-tabs.d.ts +14 -0
  132. package/dist/lib/components/spec-search-select.d.ts +8 -0
  133. package/dist/lib/components/specs/board-view.d.ts +1 -1
  134. package/dist/lib/components/specs/list-view.d.ts +1 -1
  135. package/dist/lib/components/specs-nav/SidebarGrouping.d.ts +2 -0
  136. package/dist/lib/components/specs-nav/SidebarSearch.d.ts +2 -0
  137. package/dist/lib/components/specs-nav/SidebarSpecList.d.ts +2 -0
  138. package/dist/lib/components/specs-nav/sidebar-filters.d.ts +18 -0
  139. package/dist/lib/components/specs-nav/sidebar-spec-list.d.ts +22 -0
  140. package/dist/lib/hooks/useSessionStatusToasts.d.ts +4 -0
  141. package/dist/lib/hooks/useSessionsQuery.d.ts +2 -0
  142. package/dist/lib/hooks/useSpecsQuery.d.ts +6 -1
  143. package/dist/lib/index.js +366 -361
  144. package/dist/lib/lib/api-error.d.ts +2 -0
  145. package/dist/lib/lib/api.d.ts +12 -2
  146. package/dist/lib/lib/backend-adapter/core.d.ts +26 -4
  147. package/dist/lib/lib/backend-adapter/http.d.ts +12 -2
  148. package/dist/lib/lib/backend-adapter/tauri.d.ts +12 -2
  149. package/dist/lib/lib/session-stream.d.ts +15 -0
  150. package/dist/lib/lib/session-utils.d.ts +25 -1
  151. package/dist/lib/locales/en/common.json.d.ts +115 -3
  152. package/dist/lib/locales/en/errors.json.d.ts +14 -0
  153. package/dist/lib/locales/zh-CN/common.json.d.ts +115 -3
  154. package/dist/lib/locales/zh-CN/errors.json.d.ts +14 -0
  155. package/dist/lib/pages/FilesPage.d.ts +5 -0
  156. package/dist/lib/pages/dependencies/DependencyControls.d.ts +2 -0
  157. package/dist/lib/pages/dependencies/DependencyFilters.d.ts +2 -0
  158. package/dist/lib/pages/dependencies/DependencyGraph.d.ts +2 -0
  159. package/dist/lib/pages/spec-detail/SpecContent.d.ts +2 -0
  160. package/dist/lib/pages/spec-detail/SpecHeader.d.ts +2 -0
  161. package/dist/lib/pages/spec-detail/SpecMetadataPanel.d.ts +2 -0
  162. package/dist/lib/pages/spec-detail/SpecRelationships.d.ts +2 -0
  163. package/dist/lib/stores/sessions-sidebar.d.ts +19 -0
  164. package/dist/lib/stores/sessions-ui.d.ts +2 -0
  165. package/dist/lib/stores/settings-filters.d.ts +4 -0
  166. package/dist/lib/types/api.d.ts +128 -5
  167. package/dist/lib/types/generated/BatchMetadataRequest.d.ts +6 -0
  168. package/dist/lib/types/generated/BatchMetadataResponse.d.ts +9 -0
  169. package/dist/lib/types/generated/ChecklistToggleItem.d.ts +7 -0
  170. package/dist/lib/types/generated/ChecklistToggleRequest.d.ts +12 -0
  171. package/dist/lib/types/generated/ChecklistToggleResponse.d.ts +9 -0
  172. package/dist/lib/types/generated/ChecklistToggledResult.d.ts +8 -0
  173. package/dist/lib/types/generated/ConfigFeatures.d.ts +3 -0
  174. package/dist/lib/types/generated/ConfigStructure.d.ts +7 -0
  175. package/dist/lib/types/generated/ContextFile.d.ts +10 -0
  176. package/dist/lib/types/generated/CreateSpecRequest.d.ts +14 -0
  177. package/dist/lib/types/generated/DependencyEdge.d.ts +5 -0
  178. package/dist/lib/types/generated/DependencyGraphResponse.d.ts +10 -0
  179. package/dist/lib/types/generated/DependencyNode.d.ts +8 -0
  180. package/dist/lib/types/generated/DependencyResponse.d.ts +9 -0
  181. package/dist/lib/types/generated/DetailedBreakdown.d.ts +22 -0
  182. package/dist/lib/types/generated/DetectionConfig.d.ts +6 -0
  183. package/dist/lib/types/generated/DetectionResult.d.ts +6 -0
  184. package/dist/lib/types/generated/DraftStatusConfig.d.ts +3 -0
  185. package/dist/lib/types/generated/FrontmatterResponse.d.ts +15 -0
  186. package/dist/lib/types/generated/HealthResponse.d.ts +7 -0
  187. package/dist/lib/types/generated/HierarchyNode.d.ts +29 -0
  188. package/dist/lib/types/generated/LeanSpecConfig.d.ts +16 -0
  189. package/dist/lib/types/generated/ListSpecsQuery.d.ts +16 -0
  190. package/dist/lib/types/generated/ListSpecsResponse.d.ts +15 -0
  191. package/dist/lib/types/generated/MetadataUpdate.d.ts +17 -0
  192. package/dist/lib/types/generated/PriorityCountItem.d.ts +4 -0
  193. package/dist/lib/types/generated/ProjectConfigResponse.d.ts +9 -0
  194. package/dist/lib/types/generated/ProjectContextResponse.d.ts +12 -0
  195. package/dist/lib/types/generated/ProjectValidationResponse.d.ts +9 -0
  196. package/dist/lib/types/generated/ProjectValidationSummary.d.ts +5 -0
  197. package/dist/lib/types/generated/RunnerDefinition.d.ts +19 -0
  198. package/dist/lib/types/generated/SearchFilters.d.ts +8 -0
  199. package/dist/lib/types/generated/SearchRequest.d.ts +9 -0
  200. package/dist/lib/types/generated/SearchResponse.d.ts +10 -0
  201. package/dist/lib/types/generated/SectionTokenCount.d.ts +7 -0
  202. package/dist/lib/types/generated/Session.d.ts +69 -0
  203. package/dist/lib/types/generated/SessionConfig.d.ts +44 -0
  204. package/dist/lib/types/generated/SessionMode.d.ts +4 -0
  205. package/dist/lib/types/generated/SessionStatus.d.ts +4 -0
  206. package/dist/lib/types/generated/SpecDetail.d.ts +31 -0
  207. package/dist/lib/types/generated/SpecMetadata.d.ts +8 -0
  208. package/dist/lib/types/generated/SpecPriority.d.ts +4 -0
  209. package/dist/lib/types/generated/SpecRawResponse.d.ts +8 -0
  210. package/dist/lib/types/generated/SpecRawUpdateRequest.d.ts +7 -0
  211. package/dist/lib/types/generated/SpecRelationships.d.ts +7 -0
  212. package/dist/lib/types/generated/SpecStatus.d.ts +4 -0
  213. package/dist/lib/types/generated/SpecSummary.d.ts +28 -0
  214. package/dist/lib/types/generated/SpecTokenResponse.d.ts +9 -0
  215. package/dist/lib/types/generated/SpecValidationError.d.ts +10 -0
  216. package/dist/lib/types/generated/SpecValidationResponse.d.ts +8 -0
  217. package/dist/lib/types/generated/StatsResponse.d.ts +13 -0
  218. package/dist/lib/types/generated/StatusCountItem.d.ts +4 -0
  219. package/dist/lib/types/generated/StatusTransition.d.ts +8 -0
  220. package/dist/lib/types/generated/SubSpec.d.ts +8 -0
  221. package/dist/lib/types/generated/TokenBreakdown.d.ts +13 -0
  222. package/dist/lib/types/generated/UpdateMetadataResponse.d.ts +9 -0
  223. package/dist/lib/types/generated/ValidationError.d.ts +5 -0
  224. package/dist/lib/types/generated/ValidationResponse.d.ts +8 -0
  225. package/dist/lib/types/generated/index.d.ts +58 -0
  226. package/dist/lib/types/specs.d.ts +3 -12
  227. package/dist/{linear-D6e8ml0A.js → linear-DOiEav8w.js} +1 -1
  228. package/dist/{mermaid-parser.core-CJoVqMU2.js → mermaid-parser.core-CE74cRHV.js} +10 -10
  229. package/dist/{min-D0H_bVmw.js → min-iEZRg5We.js} +2 -2
  230. package/dist/{mindmap-definition-VGOIOE7T-c7LG-I9l.js → mindmap-definition-VGOIOE7T-B7vK-2rU.js} +3 -3
  231. package/dist/{packet-BFZMPI3H-Xg1qsh9M.js → packet-BFZMPI3H-CRtMZ75O.js} +1 -1
  232. package/dist/pie-7BOR55EZ-CTCOpJ_s.js +5 -0
  233. package/dist/{pieDiagram-ADFJNKIX-Dq5FSMbe.js → pieDiagram-ADFJNKIX-B2CycMp2.js} +4 -4
  234. package/dist/{quadrantDiagram-AYHSOK5B-CSC6AaCS.js → quadrantDiagram-AYHSOK5B-DWzMKUVW.js} +2 -2
  235. package/dist/radar-NHE76QYJ-B-kEmJss.js +5 -0
  236. package/dist/{requirementDiagram-UZGBJVZJ-B1VMLqi1.js → requirementDiagram-UZGBJVZJ-B1JPpr0N.js} +3 -3
  237. package/dist/{sankeyDiagram-TZEHDZUN-5yhAl98J.js → sankeyDiagram-TZEHDZUN-DUe4DMeI.js} +1 -1
  238. package/dist/{sequenceDiagram-WL72ISMW-BdRUPrKR.js → sequenceDiagram-WL72ISMW-D1ka_qcb.js} +3 -3
  239. package/dist/{stateDiagram-FKZM4ZOC-ieQQjJqa.js → stateDiagram-FKZM4ZOC-kHECs8c-.js} +4 -4
  240. package/dist/{stateDiagram-v2-4FDKWEC3-CMJV60i9.js → stateDiagram-v2-4FDKWEC3-DtTw2e8h.js} +2 -2
  241. package/dist/{timeline-definition-IT6M3QCI-CgpuLO53.js → timeline-definition-IT6M3QCI-B9QaWiVQ.js} +2 -2
  242. package/dist/{treemap-KMMF4GRG-C-mDpIlT.js → treemap-KMMF4GRG-Ba6NXlAy.js} +1 -1
  243. package/dist/ui.css +1 -1
  244. package/dist/{xychartDiagram-PRI3JC2R-CQmC0pjv.js → xychartDiagram-PRI3JC2R-Cx42bjo1.js} +2 -2
  245. package/package.json +3 -2
  246. package/src/index.css +2 -6
  247. package/dist/assets/channel-C1utiKyQ.js +0 -1
  248. package/dist/assets/classDiagram-2ON5EDUG-DHe9K9aJ.js +0 -1
  249. package/dist/assets/classDiagram-v2-WZHVMYZB-DHe9K9aJ.js +0 -1
  250. package/dist/assets/clone-BP5MKGQF.js +0 -1
  251. package/dist/assets/index-CiNlAQ9U.js +0 -2224
  252. package/dist/assets/index-CzAbEYUe.css +0 -1
  253. package/dist/assets/stateDiagram-v2-4FDKWEC3-lqWWS4Yz.js +0 -1
  254. package/dist/info-NVLQJR56-BY80xctL.js +0 -5
  255. package/dist/lib/components/badge-config.d.ts +0 -13
  256. package/dist/lib/components/sessions/sessions-drawer.d.ts +0 -1
  257. package/dist/pie-7BOR55EZ-DTOFOZjt.js +0 -5
  258. package/dist/radar-NHE76QYJ-C6sDWiPq.js +0 -5
@@ -13,10 +13,17 @@ declare const _default: {
13
13
  "manageMachines": "管理设备",
14
14
  "collapse": "收起",
15
15
  "closeMenu": "关闭菜单",
16
+ "indicators": {
17
+ "running": "会话运行中",
18
+ "attention": "会话需要关注",
19
+ "completedRecent": "会话最近已完成"
20
+ },
16
21
  "dashboard": "仪表板",
17
22
  "allSpecifications": "所有规范",
18
23
  "sessions": "会话",
19
24
  "sessionsDescription": "监控 AI 会话",
25
+ "files": "文件",
26
+ "filesDescription": "浏览项目代码库",
20
27
  "dependencyGraph": "依赖图",
21
28
  "analytics": "数据分析",
22
29
  "projectContext": "项目上下文",
@@ -99,6 +106,7 @@ declare const _default: {
99
106
  "resume": "继续",
100
107
  "archive": "归档",
101
108
  "stop": "停止",
109
+ "viewAll": "查看全部",
102
110
  "logs": "查看日志",
103
111
  "view": "查看",
104
112
  "retry": "重试",
@@ -112,6 +120,7 @@ declare const _default: {
112
120
  "labels": {
113
121
  "runner": "运行器",
114
122
  "mode": "模式",
123
+ "model": "模型",
115
124
  "started": "开始时间",
116
125
  "ended": "结束时间",
117
126
  "duration": "持续时间",
@@ -119,6 +128,12 @@ declare const _default: {
119
128
  "spec": "规范",
120
129
  "specId": "规范 ID",
121
130
  "specIdPlaceholder": "输入规范 ID",
131
+ "prompt": "初始提示词",
132
+ "promptPlaceholder": "为 AI 运行器提供的可选指令或上下文",
133
+ "promptTemplateDefault": "实现以下规范:\n\n{specs}",
134
+ "promptPreview": "实际发送提示预览",
135
+ "promptPreviewEmpty": "添加规范或输入自定义提示后可预览发送内容。",
136
+ "attachSpec": "@ 规范",
122
137
  "noSpec": "未关联规范",
123
138
  "tokens": "令牌",
124
139
  "cost": "预估费用",
@@ -127,12 +142,44 @@ declare const _default: {
127
142
  "unknownTime": "未知",
128
143
  "autoScroll": "自动滚动",
129
144
  "logs": "日志",
145
+ "plan": "计划",
146
+ "protocolAcp": "ACP",
147
+ "protocolCli": "CLI",
148
+ "activeTool": "工具:{{tool}}",
149
+ "planProgress": "计划:{{completed}}/{{total}}",
130
150
  "completed": "已完成"
131
151
  },
132
152
  "modes": {
133
153
  "autonomous": "自主",
134
154
  "guided": "引导",
135
- "ralph": "Ralph"
155
+ "ralph": "Ralph(已弃用)"
156
+ },
157
+ "runners": {
158
+ "claude": "Claude",
159
+ "copilot": "GitHub Copilot",
160
+ "codex": "Codex",
161
+ "opencode": "OpenCode",
162
+ "aider": "Aider",
163
+ "cline": "Cline",
164
+ "gemini": "Gemini",
165
+ "cursor": "Cursor",
166
+ "windsurf": "Windsurf",
167
+ "droid": "Droid",
168
+ "kiro": "Kiro",
169
+ "kimi": "Kimi",
170
+ "qodo": "Qodo",
171
+ "amp": "Amp",
172
+ "trae": "Trae",
173
+ "qwen-code": "Qwen Code",
174
+ "goose": "Goose",
175
+ "openhands": "OpenHands",
176
+ "continue": "Continue",
177
+ "crush": "Crush",
178
+ "roo": "Roo",
179
+ "codebuddy": "CodeBuddy",
180
+ "kilo": "Kilo",
181
+ "augment": "Augment",
182
+ "antigravity": "Antigravity"
136
183
  },
137
184
  "select": {
138
185
  "placeholder": "选择...",
@@ -151,6 +198,12 @@ declare const _default: {
151
198
  "load": "加载会话失败。",
152
199
  "create": "创建会话失败。",
153
200
  "noProjectPath": "当前工作区缺少项目路径。"
201
+ },
202
+ "permissions": {
203
+ "allow_once": "允许一次",
204
+ "allow_always": "始终允许",
205
+ "reject": "拒绝",
206
+ "responding": "正在发送响应..."
154
207
  }
155
208
  },
156
209
  "sessionsPage": {
@@ -180,6 +233,15 @@ declare const _default: {
180
233
  "emptyDescription": "创建新会话以开始跟踪 AI 运行情况。",
181
234
  "noResultsTitle": "没有匹配的会话",
182
235
  "noResultsDescription": "尝试调整筛选条件或搜索关键词。"
236
+ },
237
+ "groups": {
238
+ "active": "运行中",
239
+ "today": "今天",
240
+ "yesterday": "昨天",
241
+ "older": "更早"
242
+ },
243
+ "labels": {
244
+ "noSpecs": "无 Specs"
183
245
  }
184
246
  },
185
247
  "sessionDetail": {
@@ -194,7 +256,21 @@ declare const _default: {
194
256
  "logsDescription": "来自该会话的实时输出。",
195
257
  "filters": {
196
258
  "search": "搜索日志",
197
- "autoScroll": "自动滚动"
259
+ "autoScroll": "自动滚动",
260
+ "acp": {
261
+ "messages": "消息",
262
+ "thoughts": "思考",
263
+ "tools": "工具调用",
264
+ "plan": "计划"
265
+ }
266
+ },
267
+ "displayMode": {
268
+ "messages": "消息",
269
+ "verbose": "详细"
270
+ },
271
+ "actions": {
272
+ "download": "下载日志文件",
273
+ "copyLogs": "复制日志到剪贴板"
198
274
  },
199
275
  "state": {
200
276
  "notFoundTitle": "会话不可用",
@@ -280,6 +356,8 @@ declare const _default: {
280
356
  "toggleModelSettings": "切换模型设置",
281
357
  "openChat": "打开 AI 聊天",
282
358
  "openFullChat": "完整聊天",
359
+ "attachSpec": "@ 规范",
360
+ "specContextPrefix": "请将以下规范作为上下文:",
283
361
  "toolExecution": {
284
362
  "status": {
285
363
  "failed": "失败",
@@ -651,6 +729,7 @@ declare const _default: {
651
729
  "filters": {
652
730
  "status": "状态",
653
731
  "showUnavailable": "显示不可用",
732
+ "showIdeRunners": "显示 IDE 运行器",
654
733
  "source": "来源",
655
734
  "allSources": "全部来源",
656
735
  "builtin": "内置",
@@ -775,6 +854,8 @@ declare const _default: {
775
854
  "quickSearch": "打开快速搜索",
776
855
  "toggleChat": "切换 AI 聊天",
777
856
  "toggleChatSidebar": "切换 AI 聊天侧边栏",
857
+ "toggleSessionsPopover": "切换会话弹出层",
858
+ "newSession": "新建会话",
778
859
  "focusChatInput": "聚焦聊天输入框",
779
860
  "newConversation": "新建对话",
780
861
  "viewHistory": "查看历史记录",
@@ -824,6 +905,12 @@ declare const _default: {
824
905
  "collapse": "收起侧边栏",
825
906
  "expand": "展开侧边栏"
826
907
  },
908
+ "sessionsSidebar": {
909
+ "searchPlaceholder": "搜索会话...",
910
+ "noResults": "没有匹配的会话",
911
+ "collapse": "收起侧边栏",
912
+ "expand": "展开侧边栏"
913
+ },
827
914
  "specsNavSidebar": {
828
915
  "title": "规范列表",
829
916
  "searchPlaceholder": "搜索规范...",
@@ -889,7 +976,8 @@ declare const _default: {
889
976
  "enter": "进入宽屏模式",
890
977
  "exit": "退出宽屏模式"
891
978
  },
892
- "searchPlaceholder": "搜索规范...",
979
+ "searchPlaceholder": "搜索标题、内容、标签...",
980
+ "searchHint": "在规范标题、内容和标签中搜索",
893
981
  "filters": {
894
982
  "status": "状态",
895
983
  "priority": "优先级",
@@ -902,6 +990,8 @@ declare const _default: {
902
990
  "hideArchived": "隐藏已归档",
903
991
  "settings": "设置",
904
992
  "filteredCount": "{{filtered}} / {{total}} 个规范",
993
+ "showingAll": "显示全部 {{count}} 个会话",
994
+ "showingFiltered": "显示 {{count}} / {{total}} 个会话",
905
995
  "sortOptions": {
906
996
  "id-desc": "最新优先",
907
997
  "id-asc": "最早优先",
@@ -1415,6 +1505,28 @@ declare const _default: {
1415
1505
  "website": "网站",
1416
1506
  "support": "支持"
1417
1507
  }
1508
+ },
1509
+ "filesPage": {
1510
+ "title": "文件",
1511
+ "description": "浏览项目源代码文件。",
1512
+ "loading": "加载文件中...",
1513
+ "loadingFile": "加载文件内容...",
1514
+ "emptyDirectory": "此目录为空。",
1515
+ "selectFile": "选择文件以查看其内容。",
1516
+ "binaryFile": "无法显示二进制文件。",
1517
+ "fileTooLarge": "文件过大,无法显示(最大 1 MB)。",
1518
+ "lines": "{{count}} 行",
1519
+ "bytes": "{{size}} 字节",
1520
+ "copyPath": "复制路径",
1521
+ "pathCopied": "路径已复制!",
1522
+ "searchPlaceholder": "搜索文件...",
1523
+ "clearSearch": "清除搜索",
1524
+ "noSearchResults": "没有匹配的文件。",
1525
+ "closeTab": "关闭标签",
1526
+ "errors": {
1527
+ "loadFailed": "加载目录失败。",
1528
+ "fileFailed": "加载文件失败。"
1529
+ }
1418
1530
  }
1419
1531
  };
1420
1532
 
@@ -8,6 +8,20 @@ declare const _default: {
8
8
  "unknownError": "发生未知错误",
9
9
  "permissionDenied": "权限被拒绝",
10
10
  "operationFailed": "操作失败",
11
+ "apiCodes": {
12
+ "notFound": "资源未找到",
13
+ "projectNotFound": "项目未找到",
14
+ "specNotFound": "Spec 未找到",
15
+ "noProject": "未选择项目",
16
+ "invalidRequest": "无效请求",
17
+ "unauthorized": "未授权",
18
+ "validationFailed": "验证失败",
19
+ "databaseError": "数据库错误",
20
+ "configError": "配置错误",
21
+ "toolNotFound": "工具未找到",
22
+ "toolError": "工具执行失败",
23
+ "internalError": "服务器内部错误"
24
+ },
11
25
  "pageError": {
12
26
  "title": "页面出现错误",
13
27
  "description": "页面渲染失败。"
@@ -0,0 +1,5 @@
1
+ /**
2
+ * FilesPage - VS Code-like codebase browser
3
+ * Spec 246 - Codebase File Viewing in @leanspec/ui
4
+ */
5
+ export declare function FilesPage(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function DependencyControls({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function DependencyFilters({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function DependencyGraph({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecContent({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecHeader({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecMetadataPanel({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecRelationships({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ interface SessionsSidebarState {
2
+ collapsed: boolean;
3
+ setCollapsed: (collapsed: boolean) => void;
4
+ toggleCollapsed: () => void;
5
+ }
6
+ export declare const useSessionsSidebarStore: import('zustand').UseBoundStore<Omit<import('zustand').StoreApi<SessionsSidebarState>, "setState" | "persist"> & {
7
+ setState(partial: SessionsSidebarState | Partial<SessionsSidebarState> | ((state: SessionsSidebarState) => SessionsSidebarState | Partial<SessionsSidebarState>), replace?: false | undefined): unknown;
8
+ setState(state: SessionsSidebarState | ((state: SessionsSidebarState) => SessionsSidebarState), replace: true): unknown;
9
+ persist: {
10
+ setOptions: (options: Partial<import('zustand/middleware').PersistOptions<SessionsSidebarState, unknown, unknown>>) => void;
11
+ clearStorage: () => void;
12
+ rehydrate: () => Promise<void> | void;
13
+ hasHydrated: () => boolean;
14
+ onHydrate: (fn: (state: SessionsSidebarState) => void) => () => void;
15
+ onFinishHydration: (fn: (state: SessionsSidebarState) => void) => () => void;
16
+ getOptions: () => Partial<import('zustand/middleware').PersistOptions<SessionsSidebarState, unknown, unknown>>;
17
+ };
18
+ }>;
19
+ export {};
@@ -2,9 +2,11 @@ interface SessionsUiState {
2
2
  isDrawerOpen: boolean;
3
3
  activeSessionId: string | null;
4
4
  specFilter: string | null;
5
+ createDialogNonce: number;
5
6
  toggleDrawer: () => void;
6
7
  openDrawer: (specName?: string) => void;
7
8
  closeDrawer: () => void;
9
+ openCreateDialog: (specName?: string) => void;
8
10
  setSpecFilter: (specName: string | null) => void;
9
11
  setActiveSessionId: (id: string | null) => void;
10
12
  }
@@ -36,10 +36,12 @@ interface RunnerFiltersState {
36
36
  searchQuery: string;
37
37
  sortBy: RunnerSortOption;
38
38
  showUnavailable: boolean;
39
+ showIdeRunners: boolean;
39
40
  sourceFilter: RunnerSourceFilter;
40
41
  setSearchQuery: (query: string) => void;
41
42
  setSortBy: (sort: RunnerSortOption) => void;
42
43
  setShowUnavailable: (show: boolean) => void;
44
+ setShowIdeRunners: (show: boolean) => void;
43
45
  setSourceFilter: (filter: RunnerSourceFilter) => void;
44
46
  resetFilters: () => void;
45
47
  }
@@ -51,6 +53,7 @@ export declare const useRunnerFiltersStore: import('zustand').UseBoundStore<Omit
51
53
  searchQuery: string;
52
54
  sortBy: RunnerSortOption;
53
55
  showUnavailable: boolean;
56
+ showIdeRunners: boolean;
54
57
  sourceFilter: RunnerSourceFilter;
55
58
  }, unknown>>) => void;
56
59
  clearStorage: () => void;
@@ -62,6 +65,7 @@ export declare const useRunnerFiltersStore: import('zustand').UseBoundStore<Omit
62
65
  searchQuery: string;
63
66
  sortBy: RunnerSortOption;
64
67
  showUnavailable: boolean;
68
+ showIdeRunners: boolean;
65
69
  sourceFilter: RunnerSourceFilter;
66
70
  }, unknown>>;
67
71
  };
@@ -1,10 +1,13 @@
1
- import { LightweightSpec as UiLightweightSpec, SpecRelationships as UiSpecRelationships, SpecPriority as UiSpecPriority, SpecStatus as UiSpecStatus, SpecWithMetadata as UiSpecWithMetadata, SubSpec as UiSubSpec } from './specs';
2
- export type SpecStatus = UiSpecStatus;
3
- export type SpecPriority = UiSpecPriority;
1
+ import { LightweightSpec as UiLightweightSpec, SpecRelationships as UiSpecRelationships, SpecWithMetadata as UiSpecWithMetadata, SubSpec as UiSubSpec } from './specs';
2
+ import { SessionMode as GeneratedSessionMode, SessionStatus as GeneratedSessionStatus, SpecPriority as GeneratedSpecPriority, SpecStatus as GeneratedSpecStatus } from './generated';
3
+ export type SpecStatus = GeneratedSpecStatus;
4
+ export type SpecPriority = GeneratedSpecPriority;
4
5
  export type TokenStatus = 'optimal' | 'good' | 'warning' | 'critical';
5
6
  export type ValidationStatus = 'pass' | 'warn' | 'fail';
6
- export type SessionStatus = 'pending' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
7
- export type SessionMode = 'guided' | 'autonomous' | 'ralph';
7
+ export type SessionStatus = GeneratedSessionStatus;
8
+ /** @deprecated 'ralph' is deprecated and kept only for backward-compatibility with existing sessions */
9
+ export type SessionMode = GeneratedSessionMode;
10
+ export type SessionProtocol = 'acp' | 'subprocess';
8
11
  export type SubSpec = UiSubSpec & {
9
12
  file?: string;
10
13
  name?: string;
@@ -31,14 +34,27 @@ export type SpecDetail = UiSpecWithMetadata & {
31
34
  export interface Session {
32
35
  id: string;
33
36
  projectPath: string;
37
+ specIds: string[];
38
+ /** @deprecated Use specIds instead. Returns first spec ID for backward compatibility. */
34
39
  specId?: string | null;
40
+ prompt?: string | null;
35
41
  runner: string;
36
42
  mode: SessionMode;
43
+ protocol?: SessionProtocol | null;
37
44
  status: SessionStatus;
38
45
  startedAt: string;
39
46
  endedAt?: string | null;
40
47
  durationMs?: number | null;
41
48
  tokenCount?: number | null;
49
+ activeToolCall?: {
50
+ id?: string;
51
+ tool: string;
52
+ status: 'running' | 'completed' | 'failed';
53
+ } | null;
54
+ planProgress?: {
55
+ completed: number;
56
+ total: number;
57
+ } | null;
42
58
  }
43
59
  export type RunnerSource = 'builtin' | 'global' | 'project';
44
60
  export interface RunnerDefinition {
@@ -63,6 +79,9 @@ export interface RunnerValidateResponse {
63
79
  valid: boolean;
64
80
  error?: string | null;
65
81
  }
82
+ export interface RunnerVersionResponse {
83
+ version?: string | null;
84
+ }
66
85
  export type RunnerScope = 'project' | 'global';
67
86
  export interface SessionLog {
68
87
  id: number;
@@ -70,6 +89,62 @@ export interface SessionLog {
70
89
  level: string;
71
90
  message: string;
72
91
  }
92
+ export type AcpToolCallStatus = 'running' | 'completed' | 'failed';
93
+ export type AcpPlanEntryStatus = 'pending' | 'running' | 'done';
94
+ export type SessionStreamEvent = {
95
+ type: 'log';
96
+ timestamp: string;
97
+ level: string;
98
+ message: string;
99
+ } | {
100
+ type: 'acp_message';
101
+ timestamp?: string;
102
+ role: 'agent' | 'user';
103
+ content: string;
104
+ done: boolean;
105
+ contentBlocks?: unknown[];
106
+ rawContent?: unknown;
107
+ } | {
108
+ type: 'acp_thought';
109
+ timestamp?: string;
110
+ content: string;
111
+ done: boolean;
112
+ contentBlocks?: unknown[];
113
+ rawContent?: unknown;
114
+ } | {
115
+ type: 'acp_tool_call';
116
+ timestamp?: string;
117
+ id: string;
118
+ tool: string;
119
+ args: Record<string, unknown>;
120
+ status: AcpToolCallStatus;
121
+ result?: unknown;
122
+ rawContent?: unknown;
123
+ } | {
124
+ type: 'acp_plan';
125
+ timestamp?: string;
126
+ entries: Array<{
127
+ id: string;
128
+ title: string;
129
+ status: AcpPlanEntryStatus;
130
+ }>;
131
+ done?: boolean;
132
+ } | {
133
+ type: 'acp_permission_request';
134
+ timestamp?: string;
135
+ id: string;
136
+ tool: string;
137
+ args: Record<string, unknown>;
138
+ options: string[];
139
+ } | {
140
+ type: 'acp_mode_update';
141
+ timestamp?: string;
142
+ mode: string;
143
+ } | {
144
+ type: 'complete';
145
+ status: string;
146
+ duration_ms: number;
147
+ };
73
148
  export interface SessionArchiveResult {
74
149
  path: string;
75
150
  }
@@ -222,12 +297,16 @@ export interface ListParams {
222
297
  priority?: string;
223
298
  tag?: string;
224
299
  search?: string;
300
+ limit?: number;
301
+ offset?: number;
302
+ cursor?: string;
225
303
  /** When true, server returns pre-built hierarchy tree for performance */
226
304
  hierarchy?: boolean;
227
305
  }
228
306
  export interface ListSpecsResponse {
229
307
  specs: Spec[];
230
308
  total: number;
309
+ nextCursor?: string;
231
310
  projectId?: string;
232
311
  /** Pre-built hierarchy tree (only when hierarchy=true query param) */
233
312
  hierarchy?: HierarchyNode[];
@@ -292,3 +371,47 @@ export interface SpecMetadata {
292
371
  export interface BatchMetadataResponse {
293
372
  specs: Record<string, SpecMetadata>;
294
373
  }
374
+ export type FileEntryType = 'file' | 'directory';
375
+ export interface FileEntry {
376
+ name: string;
377
+ type: FileEntryType;
378
+ /** Size in bytes – only for files */
379
+ size?: number;
380
+ /** Whether this entry is ignored by .gitignore */
381
+ ignored?: boolean;
382
+ }
383
+ export interface FileListResponse {
384
+ path: string;
385
+ entries: FileEntry[];
386
+ }
387
+ export interface FileContentResponse {
388
+ path: string;
389
+ content: string;
390
+ language: string;
391
+ size: number;
392
+ lineCount: number;
393
+ }
394
+ export interface FileSearchEntry {
395
+ name: string;
396
+ path: string;
397
+ type: FileEntryType;
398
+ /** Size in bytes – only for files */
399
+ size?: number;
400
+ /** Whether this entry is ignored by .gitignore */
401
+ ignored?: boolean;
402
+ }
403
+ export interface FileSearchResponse {
404
+ query: string;
405
+ results: FileSearchEntry[];
406
+ }
407
+ export interface SpecSearchFilters {
408
+ status?: string;
409
+ priority?: string;
410
+ tags?: string[];
411
+ }
412
+ export interface SpecSearchResponse {
413
+ results: Spec[];
414
+ total: number;
415
+ query: string;
416
+ projectId?: string;
417
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Batch metadata request
3
+ */
4
+ export type BatchMetadataRequest = {
5
+ specNames: Array<string>;
6
+ };
@@ -0,0 +1,9 @@
1
+ import { SpecMetadata } from './SpecMetadata';
2
+ /**
3
+ * Batch metadata response - tokens and validation for multiple specs
4
+ */
5
+ export type BatchMetadataResponse = {
6
+ specs: {
7
+ [key in string]?: SpecMetadata;
8
+ };
9
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * A single checklist toggle item
3
+ */
4
+ export type ChecklistToggleItem = {
5
+ itemText: string;
6
+ checked: boolean;
7
+ };
@@ -0,0 +1,12 @@
1
+ import { ChecklistToggleItem } from './ChecklistToggleItem';
2
+ /**
3
+ * Request to toggle checklist items in a spec
4
+ */
5
+ export type ChecklistToggleRequest = {
6
+ toggles: Array<ChecklistToggleItem>;
7
+ expectedContentHash: string | null;
8
+ /**
9
+ * Optional sub-spec filename (e.g., "IMPLEMENTATION.md")
10
+ */
11
+ subspec: string | null;
12
+ };
@@ -0,0 +1,9 @@
1
+ import { ChecklistToggledResult } from './ChecklistToggledResult';
2
+ /**
3
+ * Response from checklist toggle
4
+ */
5
+ export type ChecklistToggleResponse = {
6
+ success: boolean;
7
+ contentHash: string;
8
+ toggled: Array<ChecklistToggledResult>;
9
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Result of a single checklist toggle
3
+ */
4
+ export type ChecklistToggledResult = {
5
+ itemText: string;
6
+ checked: boolean;
7
+ line: number;
8
+ };
@@ -0,0 +1,3 @@
1
+ export type ConfigFeatures = {
2
+ aiAgents: boolean | null;
3
+ };
@@ -0,0 +1,7 @@
1
+ export type ConfigStructure = {
2
+ pattern: string | null;
3
+ prefix: string | null;
4
+ dateFormat: string | null;
5
+ sequenceDigits: number | null;
6
+ defaultFile: string | null;
7
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Context file representation
3
+ */
4
+ export type ContextFile = {
5
+ name: string;
6
+ path: string;
7
+ content: string;
8
+ tokenCount: number;
9
+ lastModified: string;
10
+ };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Create spec request
3
+ */
4
+ export type CreateSpecRequest = {
5
+ name: string;
6
+ title: string | null;
7
+ status: string | null;
8
+ priority: string | null;
9
+ tags: Array<string> | null;
10
+ assignee: string | null;
11
+ dependsOn: Array<string> | null;
12
+ template: string | null;
13
+ content: string | null;
14
+ };
@@ -0,0 +1,5 @@
1
+ export type DependencyEdge = {
2
+ source: string;
3
+ target: string;
4
+ type: string | null;
5
+ };
@@ -0,0 +1,10 @@
1
+ import { DependencyEdge } from './DependencyEdge';
2
+ import { DependencyNode } from './DependencyNode';
3
+ /**
4
+ * Project-level dependency graph
5
+ */
6
+ export type DependencyGraphResponse = {
7
+ projectId: string | null;
8
+ nodes: Array<DependencyNode>;
9
+ edges: Array<DependencyEdge>;
10
+ };
@@ -0,0 +1,8 @@
1
+ export type DependencyNode = {
2
+ id: string;
3
+ name: string;
4
+ number: number;
5
+ status: string;
6
+ priority: string;
7
+ tags: Array<string>;
8
+ };