@tablestore/tablestore-agent-cli 0.2.10 → 0.3.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 (618) hide show
  1. package/dist/commands/dashboard.d.ts.map +1 -1
  2. package/dist/commands/dashboard.js +3 -0
  3. package/dist/commands/dashboard.js.map +1 -1
  4. package/dist/commands/doctor.d.ts.map +1 -1
  5. package/dist/commands/doctor.js +10 -11
  6. package/dist/commands/doctor.js.map +1 -1
  7. package/dist/commands/memory-items.d.ts +3 -0
  8. package/dist/commands/memory-items.d.ts.map +1 -0
  9. package/dist/commands/memory-items.js +375 -0
  10. package/dist/commands/memory-items.js.map +1 -0
  11. package/dist/commands/memory.d.ts.map +1 -1
  12. package/dist/commands/memory.js +133 -122
  13. package/dist/commands/memory.js.map +1 -1
  14. package/dist/dashboard-runtime/dashboard/.next/BUILD_ID +1 -1
  15. package/dist/dashboard-runtime/dashboard/.next/app-path-routes-manifest.json +2 -3
  16. package/dist/dashboard-runtime/dashboard/.next/build-manifest.json +3 -3
  17. package/dist/dashboard-runtime/dashboard/.next/prerender-manifest.json +3 -3
  18. package/dist/dashboard-runtime/dashboard/.next/required-server-files.json +4 -4
  19. package/dist/dashboard-runtime/dashboard/.next/routes-manifest.json +11 -20
  20. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/api-keys/page.js.nft.json +1 -1
  21. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/api-keys/page_client-reference-manifest.js +1 -1
  22. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  23. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  24. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page.js.nft.json +1 -1
  25. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page_client-reference-manifest.js +1 -1
  26. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page.js.nft.json +1 -1
  27. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page_client-reference-manifest.js +1 -1
  28. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page.js.nft.json +1 -1
  29. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page_client-reference-manifest.js +1 -1
  30. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page.js.nft.json +1 -1
  31. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page_client-reference-manifest.js +1 -1
  32. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page.js.nft.json +1 -1
  33. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page_client-reference-manifest.js +1 -1
  34. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page.js.nft.json +1 -1
  35. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page_client-reference-manifest.js +1 -1
  36. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page.js.nft.json +1 -1
  37. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page_client-reference-manifest.js +1 -1
  38. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page.js.nft.json +1 -1
  39. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page_client-reference-manifest.js +1 -1
  40. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page.js.nft.json +1 -1
  41. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page_client-reference-manifest.js +1 -1
  42. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page.js.nft.json +1 -1
  43. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page_client-reference-manifest.js +1 -1
  44. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/[dreamId]/page.js.nft.json +1 -1
  45. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/[dreamId]/page_client-reference-manifest.js +1 -1
  46. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/page.js.nft.json +1 -1
  47. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/page_client-reference-manifest.js +1 -1
  48. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page.js.nft.json +1 -1
  49. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page_client-reference-manifest.js +1 -1
  50. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page.js.nft.json +1 -1
  51. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page_client-reference-manifest.js +1 -1
  52. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page.js.nft.json +1 -1
  53. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page_client-reference-manifest.js +1 -1
  54. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page.js.nft.json +1 -1
  55. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page_client-reference-manifest.js +1 -1
  56. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page.js.nft.json +1 -1
  57. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page_client-reference-manifest.js +1 -1
  58. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/tasks/page.js.nft.json +1 -1
  59. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/tasks/page_client-reference-manifest.js +1 -1
  60. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page.js.nft.json +1 -1
  61. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page_client-reference-manifest.js +1 -1
  62. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page.js.nft.json +1 -1
  63. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page_client-reference-manifest.js +1 -1
  64. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page.js.nft.json +1 -1
  65. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
  66. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  67. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  68. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.html +1 -1
  69. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.rsc +1 -1
  70. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  71. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  72. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  73. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  74. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  75. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found/page.js.nft.json +1 -1
  76. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  77. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.html +1 -1
  78. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.rsc +16 -16
  79. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +16 -16
  80. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
  81. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  82. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -4
  83. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  84. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  85. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/custom-policy/route.js +2 -2
  86. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/custom-policy/route.js.nft.json +1 -1
  87. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/effective-permissions/route.js +2 -2
  88. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/effective-permissions/route.js.nft.json +1 -1
  89. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/policies/route.js +2 -2
  90. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/policies/route.js.nft.json +1 -1
  91. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/route.js +2 -2
  92. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/route.js.nft.json +1 -1
  93. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/filter-by-permission/route.js +2 -2
  94. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/filter-by-permission/route.js.nft.json +1 -1
  95. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/route.js +2 -2
  96. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/route.js.nft.json +1 -1
  97. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/status/route.js +2 -2
  98. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/status/route.js.nft.json +1 -1
  99. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/token/route.js +2 -2
  100. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/token/route.js.nft.json +1 -1
  101. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/route.js +2 -2
  102. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/route.js.nft.json +1 -1
  103. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/token/route.js +2 -2
  104. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/token/route.js.nft.json +1 -1
  105. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/use/route.js +2 -2
  106. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/use/route.js.nft.json +1 -1
  107. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/connectivity/route/app-paths-manifest.json +3 -0
  108. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/connectivity/route.js +6 -0
  109. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/connectivity/route.js.nft.json +1 -0
  110. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/connectivity/route_client-reference-manifest.js +3 -0
  111. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/route.js +2 -2
  112. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/route.js.nft.json +1 -1
  113. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/chunks/route.js +2 -2
  114. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/chunks/route.js.nft.json +1 -1
  115. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/chunks/route.js +2 -2
  116. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/chunks/route.js.nft.json +1 -1
  117. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/route.js +2 -2
  118. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/route.js.nft.json +1 -1
  119. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/route.js +2 -2
  120. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/route.js.nft.json +1 -1
  121. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/upload/route.js +2 -2
  122. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/upload/route.js.nft.json +1 -1
  123. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/retrieve/route.js +2 -2
  124. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/retrieve/route.js.nft.json +1 -1
  125. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/route.js +4 -4
  126. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/route.js.nft.json +1 -1
  127. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/route.js +2 -2
  128. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/route.js.nft.json +1 -1
  129. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/chat/route.js +2 -2
  130. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/chat/route.js.nft.json +1 -1
  131. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/models/route.js +2 -2
  132. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/models/route.js.nft.json +1 -1
  133. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/route.js +2 -2
  134. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/route.js.nft.json +1 -1
  135. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/test/route.js +2 -2
  136. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/test/route.js.nft.json +1 -1
  137. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/route.js +2 -2
  138. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/route.js.nft.json +1 -1
  139. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/logs/client/route.js +2 -2
  140. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/logs/client/route.js.nft.json +1 -1
  141. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-kb-sync/route.js +2 -2
  142. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-kb-sync/route.js.nft.json +1 -1
  143. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/apply/route.js +2 -2
  144. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/apply/route.js.nft.json +1 -1
  145. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/route.js +2 -2
  146. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/route.js.nft.json +1 -1
  147. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/cancel/route.js +2 -2
  148. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/cancel/route.js.nft.json +1 -1
  149. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/route.js +2 -2
  150. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/route.js.nft.json +1 -1
  151. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/route.js +2 -2
  152. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/route.js.nft.json +1 -1
  153. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/[action]/route/app-paths-manifest.json +3 -0
  154. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/[action]/route.js +6 -0
  155. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/{sync → [action]}/route.js.nft.json +1 -1
  156. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/[action]/route_client-reference-manifest.js +3 -0
  157. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/messages/route.js +2 -2
  158. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/messages/route.js.nft.json +1 -1
  159. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/requests/route.js +2 -2
  160. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/requests/route.js.nft.json +1 -1
  161. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/route.js +2 -2
  162. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/route.js.nft.json +1 -1
  163. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/scopes/route.js +2 -2
  164. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/scopes/route.js.nft.json +1 -1
  165. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/search/route.js +2 -2
  166. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/search/route.js.nft.json +1 -1
  167. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/[requestId]/route.js +2 -2
  168. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/[requestId]/route.js.nft.json +1 -1
  169. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/route.js +2 -2
  170. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/route.js.nft.json +1 -1
  171. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/[memoryId]/route.js +2 -2
  172. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/[memoryId]/route.js.nft.json +1 -1
  173. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/route.js +2 -2
  174. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/route.js.nft.json +1 -1
  175. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/route.js +2 -2
  176. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/route.js.nft.json +1 -1
  177. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/oss/list/route.js +2 -2
  178. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/oss/list/route.js.nft.json +1 -1
  179. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/runtime/context/route.js +2 -2
  180. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/runtime/context/route.js.nft.json +1 -1
  181. package/dist/dashboard-runtime/dashboard/.next/server/app/index.html +1 -1
  182. package/dist/dashboard-runtime/dashboard/.next/server/app/index.rsc +15 -15
  183. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  184. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_full.segment.rsc +15 -15
  185. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_head.segment.rsc +3 -3
  186. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_index.segment.rsc +11 -11
  187. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  188. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page.js.nft.json +1 -1
  189. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  190. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.html +1 -1
  191. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.rsc +18 -18
  192. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_full.segment.rsc +18 -18
  193. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_head.segment.rsc +3 -3
  194. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_index.segment.rsc +11 -11
  195. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
  196. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +4 -4
  197. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding.segment.rsc +4 -4
  198. package/dist/dashboard-runtime/dashboard/.next/server/app/page.js.nft.json +1 -1
  199. package/dist/dashboard-runtime/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
  200. package/dist/dashboard-runtime/dashboard/.next/server/app-paths-manifest.json +2 -3
  201. package/dist/dashboard-runtime/dashboard/.next/server/chunks/05a2_app_api_v1_memory_stores_[store]_file-memory_[action]_route_actions_0m70if_.js +3 -0
  202. package/dist/dashboard-runtime/dashboard/.next/server/chunks/0e95__next-internal_server_app_api_v1_instances_connectivity_route_actions_0hc.k~w.js +3 -0
  203. package/dist/dashboard-runtime/dashboard/.next/server/chunks/0p91_next_dist_esm_build_templates_app-route_0n~ec7s.js +19 -12
  204. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0--nu07._.js +3 -0
  205. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0-pbmiq._.js +3 -0
  206. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0-wmyic._.js +40 -0
  207. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.gylau._.js +3 -0
  208. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.hvkwy._.js +3 -0
  209. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.li3cj._.js +40 -0
  210. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.qtdn4._.js +3 -0
  211. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__02p1x3t._.js +3 -0
  212. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__03og44p._.js +3 -0
  213. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04dd04u._.js +3 -0
  214. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04ujbw-._.js +3 -0
  215. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04zbudf._.js +3 -0
  216. package/dist/dashboard-runtime/dashboard/.next/server/chunks/{[root-of-the-server]__0-3~.bv._.js → [root-of-the-server]__052epg.._.js} +3 -3
  217. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__05eryp~._.js +3 -0
  218. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__06fva9g._.js +3 -0
  219. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__08_2avk._.js +3 -0
  220. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0acvvri._.js +3 -0
  221. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0byveuc._.js +3 -0
  222. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0cee_lo._.js +3 -0
  223. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0cyd2qb._.js +3 -0
  224. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ecs-9r._.js +3 -0
  225. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ejcow5._.js +3 -0
  226. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0es0s_~._.js +3 -0
  227. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0fglxiw._.js +3 -0
  228. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0g3yw6w._.js +3 -0
  229. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0i1_p1s._.js +3 -0
  230. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0is6qso._.js +3 -0
  231. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0no9qm0._.js +3 -0
  232. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0q8vcw8._.js +3 -0
  233. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0q9fgt6._.js +3 -0
  234. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0rx9hon._.js +3 -0
  235. package/dist/dashboard-runtime/dashboard/.next/server/chunks/{[root-of-the-server]__089es3y._.js → [root-of-the-server]__0sa.9zr._.js} +10 -10
  236. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0tc-.6s._.js +3 -0
  237. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0u03tze._.js +3 -0
  238. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ua_nqs._.js +3 -0
  239. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0uebf40._.js +3 -0
  240. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0v0il3n._.js +3 -0
  241. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0w_ig2a._.js +3 -0
  242. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0y0w3mg._.js +3 -0
  243. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0zmo~nd._.js +3 -0
  244. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__10m-wmo._.js +3 -0
  245. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__11s_zx6._.js +3 -0
  246. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__11wq90l._.js +3 -0
  247. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__126srko._.js +3 -0
  248. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__12e1t6o._.js +3 -0
  249. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__12ylr4n._.js +3 -0
  250. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__13g_f9w._.js +3 -0
  251. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__13q2wbt._.js +3 -0
  252. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__13~-fxp._.js +3 -0
  253. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0b1r_app_(dashboard)_knowledge-base_[name]_documents_documents-client_tsx_0g2uxmt._.js +1 -1
  254. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0.ooo1s._.js +3 -0
  255. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__07fsbff._.js +3 -0
  256. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0b5cw4e._.js +3 -0
  257. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0p1cst6._.js +3 -0
  258. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0xza7lz._.js +3 -0
  259. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0.6x0yu._.js +3 -0
  260. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0.pa1e6._.js +3 -0
  261. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_01snuz~._.js +3 -0
  262. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0251rsp._.js +1 -1
  263. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_02waf76._.js +1 -1
  264. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_06_hoj_._.js +3 -0
  265. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0_aw2vr._.js +3 -0
  266. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0brqbty._.js +1 -1
  267. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0csuit-._.js +3 -0
  268. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0ep_q37._.js +3 -0
  269. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0eps5jg._.js +3 -0
  270. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0ez3yia._.js +3 -0
  271. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0fttf6a._.js +3 -0
  272. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0fz3kge._.js +3 -0
  273. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0hx2079._.js +3 -0
  274. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0k7q0ug._.js +3 -0
  275. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0oiggmj._.js +3 -0
  276. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0p0sh02._.js +3 -0
  277. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0pwlb77._.js +3 -0
  278. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0t.h859._.js +1 -1
  279. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0thp9l5._.js +3 -0
  280. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0uc_gmf._.js +3 -0
  281. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0wce254._.js +3 -0
  282. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0ww5s91._.js +3 -0
  283. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0y4mxf8._.js +3 -0
  284. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_12l8jkb._.js +3 -0
  285. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_079nj-_._.js +3 -0
  286. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0_z9696._.js +3 -0
  287. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0grv2wq._.js +1 -1
  288. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0jrh7xy._.js +3 -0
  289. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0x60pxf._.js +1 -1
  290. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0y49vhd._.js +1 -1
  291. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_10dsqx~._.js +1 -1
  292. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_api-keys_page_tsx_0lb6fu7._.js +1 -1
  293. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_dream_[dreamId]_page_tsx_0wy3tv6._.js +1 -1
  294. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_dream_page_tsx_0uzzpvs._.js +1 -1
  295. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_layout_tsx_0rbi41w._.js +1 -1
  296. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_messages_page_tsx_0votz-n._.js +1 -1
  297. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_tasks_page_tsx_0a_bgx4._.js +1 -1
  298. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_units_page_tsx_0.6xnei._.js +1 -1
  299. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_memory_memory-files-browser_tsx_0o2~94-._.js +3 -0
  300. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_i18n_i18n-context_tsx_0c39ewr._.js +1 -1
  301. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_providers_runtime-context-provider_tsx_0wmj66z._.js +1 -1
  302. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_0ymj2~2._.js +3 -0
  303. package/dist/dashboard-runtime/dashboard/.next/server/functions-config-manifest.json +2 -3
  304. package/dist/dashboard-runtime/dashboard/.next/server/middleware-build-manifest.js +3 -3
  305. package/dist/dashboard-runtime/dashboard/.next/server/pages/404.html +1 -1
  306. package/dist/dashboard-runtime/dashboard/.next/server/pages/500.html +1 -1
  307. package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.js +1 -1
  308. package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.json +1 -1
  309. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-xwobg-a6si1.js +1 -0
  310. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0.hi0qmo.f-h4.js +1 -0
  311. package/dist/dashboard-runtime/dashboard/.next/static/chunks/01bokygf48bnj.js +1 -0
  312. package/dist/dashboard-runtime/dashboard/.next/static/chunks/026lyw-ynx1og.js +1 -0
  313. package/dist/dashboard-runtime/dashboard/.next/static/chunks/04a.1c2rygy08.js +1 -0
  314. package/dist/dashboard-runtime/dashboard/.next/static/chunks/05.2q9f0yx4e_.js +1 -0
  315. package/dist/dashboard-runtime/dashboard/.next/static/chunks/05_iqjh-v2gej.js +1 -0
  316. package/dist/dashboard-runtime/dashboard/.next/static/chunks/05f4mjbi6x-tm.js +1 -0
  317. package/dist/dashboard-runtime/dashboard/.next/static/chunks/07twdccs42b_-.js +1 -0
  318. package/dist/dashboard-runtime/dashboard/.next/static/chunks/090n1_814n.n~.js +1 -0
  319. package/dist/dashboard-runtime/dashboard/.next/static/chunks/09v-qczj__g1x.js +1 -0
  320. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{08nzc9sye_0~h.js → 0_8~9zgfm5f.8.js} +1 -1
  321. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0_zw2y~vb_52n.js +1 -0
  322. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0a2f-mxepv-y7.js +1 -0
  323. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0amex7bwxnme9.js +1 -0
  324. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0apfhv-v7oy7u.js +1 -0
  325. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0bxt5icwb83xt.js +1 -0
  326. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0dpi1comd-thc.js +1 -0
  327. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0eafb9pun~54k.js +9 -0
  328. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{010bpq~3ntjcm.js → 0eerrv808~6bh.js} +1 -1
  329. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0j6agpotrd_n4.js +1 -0
  330. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0jbcdgtcgqemd.js +1 -0
  331. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0jp7zmwvyv0bn.js +1 -0
  332. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0k8mhea24d_kj.js +1 -0
  333. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0krt75we1wtcy.js +1 -0
  334. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0l~3_bvic.da3.js → 0ogrq_r43je48.js} +1 -1
  335. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0prl9yrb8ksp8.js +1 -0
  336. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0r4azm.3hswcs.js +138 -0
  337. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0r6utd8g~.cc1.js +1 -0
  338. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0u6c8q4k~6aiy.js +1 -0
  339. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0uj7ezedkm6ou.css +1 -0
  340. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0uu2cjfwvbn3y.js +1 -0
  341. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0x5qtkdg2trq9.js +5 -0
  342. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0yvc~t7p88wsf.js +1 -0
  343. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0zhfdjby7cj-q.js +1 -0
  344. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{02u9ocsl0a12t.js → 0~naqbx3873~r.js} +1 -1
  345. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0~a4ig2x9z8uq.js → 13__t3s3ipfzl.js} +1 -1
  346. package/dist/dashboard-runtime/dashboard/.next/static/chunks/14.8mq880kjoc.js +1 -0
  347. package/dist/dashboard-runtime/dashboard/.next/static/chunks/145hqnc~4wc~n.js +1 -0
  348. package/dist/dashboard-runtime/dashboard/.next/static/chunks/14rpr3z1.lmgj.js +1 -0
  349. package/dist/dashboard-runtime/dashboard/.next/static/chunks/16uky1ro-t_~9.js +1 -0
  350. package/dist/dashboard-runtime/dashboard/.next/static/chunks/18absak_u0d85.js +138 -0
  351. package/dist/dashboard-runtime/dashboard/server.js +1 -1
  352. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/chat/page.tsx +1 -0
  353. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/qa/page.tsx +1 -0
  354. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/dream/[dreamId]/page.tsx +187 -2
  355. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/dream/page.tsx +14 -1
  356. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/layout.tsx +59 -8
  357. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/messages/page.tsx +15 -0
  358. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/tasks/page.tsx +9 -0
  359. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/units/page.tsx +123 -24
  360. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/projects/page.tsx +3 -0
  361. package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/connectivity/route.ts +66 -0
  362. package/dist/dashboard-runtime/dashboard/src/app/api/v1/llm/chat/file-memory-curator.ts +496 -0
  363. package/dist/dashboard-runtime/dashboard/src/app/api/v1/llm/chat/file-memory-helpers.ts +12 -81
  364. package/dist/dashboard-runtime/dashboard/src/app/api/v1/llm/chat/memory-helpers.ts +3 -3
  365. package/dist/dashboard-runtime/dashboard/src/app/api/v1/llm/chat/route.ts +200 -39
  366. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/apply/route.ts +39 -6
  367. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/file-memory/[action]/route.ts +86 -0
  368. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/file-memory/_helpers.ts +26 -36
  369. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/file-memory/_request.ts +49 -0
  370. package/dist/dashboard-runtime/dashboard/src/app/onboarding/page.tsx +1 -3
  371. package/dist/dashboard-runtime/dashboard/src/components/chat/chat-config-context.tsx +48 -9
  372. package/dist/dashboard-runtime/dashboard/src/components/chat/memory-bind-section.tsx +66 -18
  373. package/dist/dashboard-runtime/dashboard/src/components/chat/memory-files-dialog.tsx +1 -1
  374. package/dist/dashboard-runtime/dashboard/src/components/chat/mount-picker.tsx +5 -1
  375. package/dist/dashboard-runtime/dashboard/src/components/instance/instance-connectivity-dot.tsx +96 -0
  376. package/dist/dashboard-runtime/dashboard/src/components/instance/project-card.tsx +5 -1
  377. package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/subspace-gate.tsx +23 -5
  378. package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/subspace-switcher.tsx +23 -5
  379. package/dist/dashboard-runtime/dashboard/src/components/layout/instance-switcher.tsx +13 -1
  380. package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar-instance-card.tsx +29 -4
  381. package/dist/dashboard-runtime/dashboard/src/components/memory/file-details-panel.tsx +91 -0
  382. package/dist/dashboard-runtime/dashboard/src/components/memory/file-editor.tsx +144 -0
  383. package/dist/dashboard-runtime/dashboard/src/components/memory/file-mutation-dialogs.tsx +181 -0
  384. package/dist/dashboard-runtime/dashboard/src/components/memory/file-scope-onboarding.tsx +154 -0
  385. package/dist/dashboard-runtime/dashboard/src/components/memory/file-version-history.tsx +251 -0
  386. package/dist/dashboard-runtime/dashboard/src/components/memory/file-workspace-toolbar.tsx +101 -0
  387. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-create-form.tsx +166 -75
  388. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-create-dialog.tsx +385 -73
  389. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-plan-approval-dialog.tsx +172 -0
  390. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-files-browser.tsx +500 -168
  391. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-scope-bar.tsx +230 -72
  392. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-form.tsx +51 -14
  393. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-results.tsx +5 -1
  394. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-settings-form.tsx +54 -46
  395. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-store-card.tsx +126 -69
  396. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-unit-table.tsx +5 -1
  397. package/dist/dashboard-runtime/dashboard/src/components/memory/scope-combobox.tsx +169 -42
  398. package/dist/dashboard-runtime/dashboard/src/components/qa/qa-message.tsx +233 -38
  399. package/dist/dashboard-runtime/dashboard/src/components/shared/error-state.tsx +3 -2
  400. package/dist/dashboard-runtime/dashboard/src/components/shared/llm-model-selector.tsx +5 -1
  401. package/dist/dashboard-runtime/dashboard/src/components/ui/dialog.tsx +1 -1
  402. package/dist/dashboard-runtime/dashboard/src/contexts/subspace-context.tsx +144 -30
  403. package/dist/dashboard-runtime/dashboard/src/hooks/use-approve-dream-plan.ts +25 -0
  404. package/dist/dashboard-runtime/dashboard/src/hooks/use-chat-history.ts +125 -47
  405. package/dist/dashboard-runtime/dashboard/src/hooks/use-file-memory.ts +185 -29
  406. package/dist/dashboard-runtime/dashboard/src/hooks/use-instances.ts +40 -0
  407. package/dist/dashboard-runtime/dashboard/src/hooks/use-memory-store-scopes.ts +2 -1
  408. package/dist/dashboard-runtime/dashboard/src/hooks/use-qa-chat.ts +188 -23
  409. package/dist/dashboard-runtime/dashboard/src/hooks/use-subspace-history.ts +64 -75
  410. package/dist/dashboard-runtime/dashboard/src/i18n/locales/en.ts +198 -14
  411. package/dist/dashboard-runtime/dashboard/src/i18n/locales/zh.ts +188 -14
  412. package/dist/dashboard-runtime/dashboard/src/lib/api-error-toast.ts +9 -1
  413. package/dist/dashboard-runtime/dashboard/src/lib/browser-file-memory.ts +397 -0
  414. package/dist/dashboard-runtime/dashboard/src/lib/file-scope-history.ts +108 -0
  415. package/dist/dashboard-runtime/dashboard/src/lib/memory-scope-history.ts +165 -0
  416. package/dist/dashboard-runtime/dashboard/src/lib/memory-storage-mode.ts +193 -31
  417. package/dist/dashboard-runtime/dashboard/src/lib/memory.ts +29 -4
  418. package/dist/dashboard-runtime/dashboard/src/lib/query-keys.ts +63 -0
  419. package/dist/dashboard-runtime/dashboard/src/lib/server/api-helpers.ts +5 -0
  420. package/dist/dashboard-runtime/dashboard/src/lib/server/instance-connectivity.ts +136 -0
  421. package/dist/dashboard-runtime/dashboard/src/lib/server/sdk-client.ts +25 -3
  422. package/dist/dashboard-runtime/dashboard/src/lib/subspace-history.ts +151 -0
  423. package/dist/dashboard-runtime/dashboard/src/schemas/llm-chat.ts +58 -13
  424. package/dist/dashboard-runtime/dashboard/src/services/file-memory.ts +80 -46
  425. package/dist/dashboard-runtime/dashboard/src/services/instances.ts +5 -0
  426. package/dist/dashboard-runtime/dashboard/src/services/memory.ts +45 -5
  427. package/dist/dashboard-runtime/dashboard/src/types/file-memory.ts +150 -0
  428. package/dist/dashboard-runtime/dashboard/src/types/instance.ts +17 -0
  429. package/dist/dashboard-runtime/dashboard/src/types/llm-chat.ts +49 -13
  430. package/dist/dashboard-runtime/dashboard/src/types/memory.ts +59 -5
  431. package/dist/dashboard-runtime/dashboard/tsconfig.tsbuildinfo +1 -0
  432. package/dist/dashboard-runtime/node_modules/@img/sharp-darwin-arm64/lib/sharp-darwin-arm64.node +0 -0
  433. package/dist/dashboard-runtime/node_modules/@img/{sharp-linux-x64 → sharp-darwin-arm64}/package.json +7 -13
  434. package/dist/dashboard-runtime/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/README.md +2 -2
  435. package/dist/dashboard-runtime/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/lib/glib-2.0/include/glibconfig.h +8 -9
  436. package/dist/dashboard-runtime/node_modules/@img/{sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 → sharp-libvips-darwin-arm64/lib/libvips-cpp.8.17.3.dylib} +0 -0
  437. package/dist/dashboard-runtime/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/package.json +5 -11
  438. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/index.d.ts +0 -1
  439. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/index.d.ts.map +1 -1
  440. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/index.js +0 -1
  441. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/index.js.map +1 -1
  442. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts +9 -8
  443. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts.map +1 -1
  444. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js +24 -10
  445. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js.map +1 -1
  446. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/response.d.ts.map +1 -1
  447. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/response.js +5 -1
  448. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/response.js.map +1 -1
  449. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
  450. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/package.json +1 -1
  451. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
  452. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
  453. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/index.d.ts +0 -1
  454. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/index.d.ts.map +1 -1
  455. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/index.js +0 -1
  456. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/index.js.map +1 -1
  457. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts +9 -8
  458. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts.map +1 -1
  459. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js +24 -10
  460. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js.map +1 -1
  461. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/response.d.ts.map +1 -1
  462. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/response.js +5 -1
  463. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/response.js.map +1 -1
  464. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
  465. package/dist/node_modules/@tablestore/tablestore-agent-sdk/package.json +1 -1
  466. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
  467. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
  468. package/package.json +3 -3
  469. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/file/route/app-paths-manifest.json +0 -3
  470. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/file/route.js +0 -6
  471. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/file/route.js.nft.json +0 -1
  472. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/file/route_client-reference-manifest.js +0 -3
  473. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/sync/route/app-paths-manifest.json +0 -3
  474. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/sync/route.js +0 -6
  475. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/sync/route_client-reference-manifest.js +0 -3
  476. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route/app-paths-manifest.json +0 -3
  477. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route/build-manifest.json +0 -9
  478. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route/server-reference-manifest.json +0 -4
  479. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route.js +0 -6
  480. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route.js.map +0 -5
  481. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route.js.nft.json +0 -1
  482. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/tree/route_client-reference-manifest.js +0 -3
  483. package/dist/dashboard-runtime/dashboard/.next/server/chunks/0ndq_server_app_api_v1_memory_stores_[store]_file-memory_file_route_actions_06~k01v.js +0 -3
  484. package/dist/dashboard-runtime/dashboard/.next/server/chunks/0ndq_server_app_api_v1_memory_stores_[store]_file-memory_sync_route_actions_0rt6p8e.js +0 -3
  485. package/dist/dashboard-runtime/dashboard/.next/server/chunks/0ndq_server_app_api_v1_memory_stores_[store]_file-memory_tree_route_actions_0wl_n8b.js +0 -3
  486. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0-dt7~s._.js +0 -3
  487. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.-~ff4._.js +0 -3
  488. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.l706t._.js +0 -3
  489. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.nejw_._.js +0 -3
  490. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__00_mrad._.js +0 -3
  491. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__00i.7se._.js +0 -3
  492. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__00r7uqs._.js +0 -3
  493. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__02~yw7n._.js +0 -3
  494. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04kpzpa._.js +0 -3
  495. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04p1a88._.js +0 -3
  496. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__05x0k4d._.js +0 -3
  497. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__060s~oe._.js +0 -3
  498. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__06fanvv._.js +0 -3
  499. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__06tci88._.js +0 -3
  500. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__08bzgzm._.js +0 -3
  501. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__08d7wb.._.js +0 -3
  502. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__08p_m_c._.js +0 -3
  503. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__095xiwn._.js +0 -3
  504. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__09h95i6._.js +0 -3
  505. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ai2k_o._.js +0 -40
  506. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0alcygi._.js +0 -3
  507. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0aspytx._.js +0 -3
  508. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0cq-9s~._.js +0 -3
  509. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0cyiuai._.js +0 -3
  510. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0d4zrpj._.js +0 -3
  511. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0d~m09k._.js +0 -3
  512. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0f1lugp._.js +0 -3
  513. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0g1cfb7._.js +0 -40
  514. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0gpz.~y._.js +0 -3
  515. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0i3u9x3._.js +0 -3
  516. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0iromt6._.js +0 -3
  517. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0j8.u0y._.js +0 -3
  518. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0k-pfaj._.js +0 -3
  519. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0kcbz7k._.js +0 -3
  520. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0nrl-.g._.js +0 -3
  521. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0o5mf4h._.js +0 -3
  522. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0omyr40._.js +0 -3
  523. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ty8jgt._.js +0 -3
  524. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ug_2kc._.js +0 -3
  525. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0v98i9~._.js +0 -3
  526. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0wt0ksb._.js +0 -3
  527. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0ya_8d2._.js +0 -3
  528. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0zfg-ml._.js +0 -3
  529. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0~9ru5n._.js +0 -3
  530. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0~f7ckz._.js +0 -3
  531. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__109i6ps._.js +0 -3
  532. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__10o5zq5._.js +0 -3
  533. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__12ls5l8._.js +0 -3
  534. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0w-2_lucide-react_dist_esm_icons_0h-3_0x._.js +0 -3
  535. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0k0es2c._.js +0 -3
  536. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0ky8i.~._.js +0 -3
  537. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0ocsrt0._.js +0 -3
  538. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0ys4x_n._.js +0 -3
  539. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__10rkv6z._.js +0 -3
  540. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_002mc1c._.js +0 -3
  541. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_04f2u4t._.js +0 -3
  542. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_06ny.4k._.js +0 -3
  543. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0b9pl2d._.js +0 -3
  544. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0e.ehti._.js +0 -3
  545. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0f8moq0._.js +0 -3
  546. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0f8yv4v._.js +0 -3
  547. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0fvg_xo._.js +0 -3
  548. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0h9c.8m._.js +0 -3
  549. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0ip4ncy._.js +0 -3
  550. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0izjcsk._.js +0 -3
  551. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0j.62sb._.js +0 -3
  552. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0mdbcju._.js +0 -3
  553. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0p_s55v._.js +0 -3
  554. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0qiamjd._.js +0 -3
  555. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0xp94lc._.js +0 -3
  556. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_13730cz._.js +0 -3
  557. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_13ctfae._.js +0 -3
  558. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_00.1.s_._.js +0 -3
  559. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_04o7mfc._.js +0 -3
  560. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0bhjp9s._.js +0 -3
  561. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0qlyj-q._.js +0 -3
  562. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_00usyu3._.js +0 -3
  563. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_0791f2k._.js +0 -3
  564. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0--dupndun7xc.css +0 -1
  565. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0.uxk~hsm6yi8.js +0 -138
  566. package/dist/dashboard-runtime/dashboard/.next/static/chunks/00eggrx~.4c55.js +0 -1
  567. package/dist/dashboard-runtime/dashboard/.next/static/chunks/00lvoeu_v3253.js +0 -1
  568. package/dist/dashboard-runtime/dashboard/.next/static/chunks/00o9vmhspv._3.js +0 -138
  569. package/dist/dashboard-runtime/dashboard/.next/static/chunks/00x1.t633f041.js +0 -1
  570. package/dist/dashboard-runtime/dashboard/.next/static/chunks/02p7gke47s.2~.js +0 -1
  571. package/dist/dashboard-runtime/dashboard/.next/static/chunks/03dth-av1gl-h.js +0 -1
  572. package/dist/dashboard-runtime/dashboard/.next/static/chunks/07s0f6938um2v.js +0 -1
  573. package/dist/dashboard-runtime/dashboard/.next/static/chunks/09y30vyml4r.b.js +0 -1
  574. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0au0pbejtwahz.js +0 -1
  575. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0b-ei8-g7ceug.js +0 -1
  576. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0chiv044h3u58.js +0 -1
  577. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0fcdli-~wmvvx.js +0 -1
  578. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0fz_9~-rxluly.js +0 -1
  579. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0i55cqygnl-a9.js +0 -5
  580. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0j8p7vk~awgs..js +0 -1
  581. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0j_.hkhjix9hw.js +0 -1
  582. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0ll488v66ycn1.js +0 -1
  583. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0naliud7av3p1.js +0 -1
  584. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0pbfl~23ac79y.js +0 -9
  585. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0u3qx.qasmdx9.js +0 -1
  586. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0vuh8jgeqqdy..js +0 -1
  587. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0wbevjtr1_grz.js +0 -1
  588. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0y-gjpq3kxsbz.js +0 -1
  589. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0z_pq4ttgotxw.js +0 -1
  590. package/dist/dashboard-runtime/dashboard/.next/static/chunks/10i~m4_8ainxw.js +0 -1
  591. package/dist/dashboard-runtime/dashboard/.next/static/chunks/12535rmhzbk63.js +0 -1
  592. package/dist/dashboard-runtime/dashboard/.next/static/chunks/13uk2uuzuop5e.js +0 -1
  593. package/dist/dashboard-runtime/dashboard/.next/static/chunks/13vd4hv~l95-c.js +0 -1
  594. package/dist/dashboard-runtime/dashboard/.next/static/chunks/16.2aecdwo6w_.js +0 -1
  595. package/dist/dashboard-runtime/dashboard/.next/static/chunks/16yu0g~7n~33c.js +0 -1
  596. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/file-memory/file/route.ts +0 -69
  597. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/file-memory/sync/route.ts +0 -69
  598. package/dist/dashboard-runtime/dashboard/src/app/api/v1/memory/stores/[store]/file-memory/tree/route.ts +0 -44
  599. package/dist/dashboard-runtime/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  600. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.d.ts +0 -153
  601. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.d.ts.map +0 -1
  602. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.js +0 -451
  603. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.js.map +0 -1
  604. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.d.ts +0 -153
  605. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.d.ts.map +0 -1
  606. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.js +0 -451
  607. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/file-memory.js.map +0 -1
  608. /package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/{memory/stores/[store]/file-memory/file → instances/connectivity}/route/build-manifest.json +0 -0
  609. /package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/{memory/stores/[store]/file-memory/file → instances/connectivity}/route/server-reference-manifest.json +0 -0
  610. /package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/{memory/stores/[store]/file-memory/file → instances/connectivity}/route.js.map +0 -0
  611. /package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/{sync → [action]}/route/build-manifest.json +0 -0
  612. /package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/{sync → [action]}/route/server-reference-manifest.json +0 -0
  613. /package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/file-memory/{sync → [action]}/route.js.map +0 -0
  614. /package/dist/dashboard-runtime/dashboard/.next/static/{5irIRCYtKcYh5T_Bewihp → 8G6beqTEKH_-N0JljpgWT}/_buildManifest.js +0 -0
  615. /package/dist/dashboard-runtime/dashboard/.next/static/{5irIRCYtKcYh5T_Bewihp → 8G6beqTEKH_-N0JljpgWT}/_clientMiddlewareManifest.js +0 -0
  616. /package/dist/dashboard-runtime/dashboard/.next/static/{5irIRCYtKcYh5T_Bewihp → 8G6beqTEKH_-N0JljpgWT}/_ssgManifest.js +0 -0
  617. /package/dist/dashboard-runtime/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/lib/index.js +0 -0
  618. /package/dist/dashboard-runtime/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/versions.json +0 -0
@@ -18,9 +18,10 @@ import {
18
18
  } from "@/components/ui/form";
19
19
  import { useUpdateMemoryStore } from "@/hooks/use-update-memory-store";
20
20
  import { useLocaleRevalidation } from "@/hooks/use-locale-revalidation";
21
+ import { storageModeCapabilities } from "@/lib/memory-storage-mode";
21
22
  import { useI18n } from "@/i18n/i18n-context";
22
23
  import type { TranslateFn } from "@/i18n/i18n-context";
23
- import type { MemoryStore } from "@/types/memory";
24
+ import type { MemoryStore, UpdateMemoryStoreRequest } from "@/types/memory";
24
25
 
25
26
  function buildUpdateMemoryStoreSchema(t: TranslateFn) {
26
27
  return z.object({
@@ -41,6 +42,25 @@ type UpdateMemoryStoreInput = z.infer<
41
42
  ReturnType<typeof buildUpdateMemoryStoreSchema>
42
43
  >;
43
44
 
45
+ export function buildUpdateMemoryStoreRequest(
46
+ memoryStore: MemoryStore,
47
+ values: UpdateMemoryStoreInput,
48
+ ): UpdateMemoryStoreRequest {
49
+ const request: UpdateMemoryStoreRequest = {
50
+ memoryStoreName: memoryStore.memoryStoreName,
51
+ description: values.description?.length ? values.description : undefined,
52
+ };
53
+ if (!storageModeCapabilities(memoryStore.storageMode).supportsExtraction) {
54
+ return request;
55
+ }
56
+
57
+ const initialInstructions = memoryStore.extractInstructions ?? "";
58
+ const nextInstructions = values.extractInstructions ?? "";
59
+ return nextInstructions === initialInstructions
60
+ ? request
61
+ : { ...request, extractInstructions: nextInstructions };
62
+ }
63
+
44
64
  interface MemorySettingsFormProps {
45
65
  memoryStore: MemoryStore;
46
66
  }
@@ -48,6 +68,7 @@ interface MemorySettingsFormProps {
48
68
  export function MemorySettingsForm({ memoryStore }: MemorySettingsFormProps) {
49
69
  const updateStore = useUpdateMemoryStore();
50
70
  const { t } = useI18n();
71
+ const capabilities = storageModeCapabilities(memoryStore.storageMode);
51
72
 
52
73
  const resolver = useMemo(
53
74
  () => zodResolver(buildUpdateMemoryStoreSchema(t)),
@@ -68,24 +89,9 @@ export function MemorySettingsForm({ memoryStore }: MemorySettingsFormProps) {
68
89
 
69
90
  async function onSubmit(values: UpdateMemoryStoreInput) {
70
91
  try {
71
- // The currently-running server build may predate extractInstructions and
72
- // rejects unknown JSON fields. Only include it in the PATCH when the user
73
- // actually changed it, so description-only edits keep working. An empty
74
- // string is a deliberate "clear" (the field uses pointer/PATCH semantics
75
- // server-side once a newer build is deployed).
76
- const initialInstructions = memoryStore.extractInstructions ?? "";
77
- const nextInstructions = values.extractInstructions ?? "";
78
- const instructionsChanged = nextInstructions !== initialInstructions;
79
-
80
- await updateStore.mutateAsync({
81
- memoryStoreName: memoryStore.memoryStoreName,
82
- description: values.description?.length
83
- ? values.description
84
- : undefined,
85
- ...(instructionsChanged
86
- ? { extractInstructions: nextInstructions }
87
- : {}),
88
- });
92
+ await updateStore.mutateAsync(
93
+ buildUpdateMemoryStoreRequest(memoryStore, values),
94
+ );
89
95
  toast.success(t("memory.settings.updateSuccess"));
90
96
  } catch (error) {
91
97
  toast.error(
@@ -131,33 +137,35 @@ export function MemorySettingsForm({ memoryStore }: MemorySettingsFormProps) {
131
137
  </div>
132
138
  </section>
133
139
 
134
- <section className="rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-5 shadow-sm">
135
- <SettingsSectionHeader
136
- title={t("memory.settings.extractSection")}
137
- description={t("memory.settings.extractSectionDesc")}
138
- />
139
- <FormField
140
- control={form.control}
141
- name="extractInstructions"
142
- render={({ field }) => (
143
- <FormItem>
144
- <FormLabel>{t("memory.settings.extractLabel")}</FormLabel>
145
- <FormControl>
146
- <Textarea
147
- placeholder={t("memory.settings.extractPlaceholder")}
148
- className="resize-none"
149
- rows={5}
150
- {...field}
151
- />
152
- </FormControl>
153
- <FormDescription>
154
- {t("memory.settings.extractHelp")}
155
- </FormDescription>
156
- <FormMessage />
157
- </FormItem>
158
- )}
159
- />
160
- </section>
140
+ {capabilities.supportsExtraction && (
141
+ <section className="rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-5 shadow-sm">
142
+ <SettingsSectionHeader
143
+ title={t("memory.settings.extractSection")}
144
+ description={t("memory.settings.extractSectionDesc")}
145
+ />
146
+ <FormField
147
+ control={form.control}
148
+ name="extractInstructions"
149
+ render={({ field }) => (
150
+ <FormItem>
151
+ <FormLabel>{t("memory.settings.extractLabel")}</FormLabel>
152
+ <FormControl>
153
+ <Textarea
154
+ placeholder={t("memory.settings.extractPlaceholder")}
155
+ className="resize-none"
156
+ rows={5}
157
+ {...field}
158
+ />
159
+ </FormControl>
160
+ <FormDescription>
161
+ {t("memory.settings.extractHelp")}
162
+ </FormDescription>
163
+ <FormMessage />
164
+ </FormItem>
165
+ )}
166
+ />
167
+ </section>
168
+ )}
161
169
 
162
170
  <div className="flex justify-end border-t border-[hsl(var(--border-light))] pt-4">
163
171
  <Button type="submit" disabled={updateStore.isPending}>
@@ -25,7 +25,12 @@ import {
25
25
  DropdownMenuTrigger,
26
26
  } from "@/components/ui/dropdown-menu";
27
27
  import { cn } from "@/lib/utils";
28
- import { isFileMemory, storageModeLabel } from "@/lib/memory-storage-mode";
28
+ import {
29
+ storageModeCapabilities,
30
+ storageModeToSelection,
31
+ type MemoryCardAction,
32
+ type MemoryCardShortcut,
33
+ } from "@/lib/memory-storage-mode";
29
34
  import { useI18n } from "@/i18n/i18n-context";
30
35
  import type { MemoryStore } from "@/types/memory";
31
36
 
@@ -52,7 +57,77 @@ function MemoryStoreCardImpl({ memoryStore, onDelete }: MemoryStoreCardProps) {
52
57
  const { memoryStoreName } = memoryStore;
53
58
  const storePath = `/memory/${encodeURIComponent(memoryStoreName)}`;
54
59
  const basePath = `${storePath}/units`;
55
- const fileMemory = isFileMemory(memoryStore.storageMode);
60
+ const capabilities = storageModeCapabilities(memoryStore.storageMode);
61
+ const storageSelection = storageModeToSelection(memoryStore.storageMode);
62
+ const inputLabel =
63
+ storageSelection.inputType === "short-term"
64
+ ? t("memory.create.shortTermInputLabel")
65
+ : t("memory.create.fileInputLabel");
66
+ const storageLabel = storageSelection.storageStructures
67
+ .map((structure) =>
68
+ structure === "structured"
69
+ ? t("memory.create.structuredStorageLabel")
70
+ : t("memory.create.fileStorageLabel"),
71
+ )
72
+ .join(" + ");
73
+ const shortcutContent = {
74
+ longTerm: {
75
+ segment: "units",
76
+ icon: <Database className="h-3.5 w-3.5" />,
77
+ label: t("memory.card.longTerm"),
78
+ title: t("memory.card.longTermTitle"),
79
+ },
80
+ shortTerm: {
81
+ segment: "messages",
82
+ icon: <MessageSquare className="h-3.5 w-3.5" />,
83
+ label: t("memory.card.shortTerm"),
84
+ title: t("memory.card.shortTermTitle"),
85
+ },
86
+ extract: {
87
+ segment: "tasks",
88
+ icon: <ListChecks className="h-3.5 w-3.5" />,
89
+ label: t("memory.card.extract"),
90
+ title: t("memory.card.extractTitle"),
91
+ },
92
+ consolidate: {
93
+ segment: "dream",
94
+ icon: <Sparkles className="h-3.5 w-3.5" />,
95
+ label: t("memory.card.consolidate"),
96
+ title: t("memory.card.consolidateTitle"),
97
+ },
98
+ files: {
99
+ segment: "units",
100
+ icon: <FolderTree className="h-3.5 w-3.5" />,
101
+ label: t("memory.detail.tabFiles"),
102
+ title: t("memory.detail.tabFiles"),
103
+ },
104
+ } satisfies Record<
105
+ MemoryCardShortcut,
106
+ { segment: string; icon: React.ReactNode; label: string; title: string }
107
+ >;
108
+ const actionContent = {
109
+ units: {
110
+ icon: capabilities.structured ? (
111
+ <TableProperties className="mr-2 h-4 w-4" />
112
+ ) : (
113
+ <FolderTree className="mr-2 h-4 w-4" />
114
+ ),
115
+ label: capabilities.structured
116
+ ? t("memory.detail.tabUnits")
117
+ : t("memory.detail.tabFiles"),
118
+ },
119
+ search: {
120
+ icon: <Search className="mr-2 h-4 w-4" />,
121
+ label: t("memory.detail.tabSearch"),
122
+ },
123
+ settings: {
124
+ icon: <Settings className="mr-2 h-4 w-4" />,
125
+ label: t("memory.detail.tabSettings"),
126
+ },
127
+ } satisfies Record<
128
+ MemoryCardAction,
129
+ { icon: React.ReactNode; label: string }
130
+ >;
56
131
 
57
132
  return (
58
133
  <Link href={basePath} className="no-underline">
@@ -64,22 +139,6 @@ function MemoryStoreCardImpl({ memoryStore, onDelete }: MemoryStoreCardProps) {
64
139
  <h3 className="min-w-0 truncate text-base font-semibold text-foreground">
65
140
  {memoryStoreName}
66
141
  </h3>
67
- <span
68
- className={cn(
69
- "inline-flex shrink-0 items-center gap-1 rounded-full border px-1.5 py-0.5 text-[10px]",
70
- fileMemory
71
- ? "border-violet-200 bg-violet-50 text-violet-700"
72
- : "border-slate-200 bg-slate-50 text-slate-600",
73
- )}
74
- title={storageModeLabel(memoryStore.storageMode, t)}
75
- >
76
- {fileMemory ? (
77
- <FolderTree className="h-2.5 w-2.5" />
78
- ) : (
79
- <Database className="h-2.5 w-2.5" />
80
- )}
81
- {storageModeLabel(memoryStore.storageMode, t)}
82
- </span>
83
142
  </div>
84
143
 
85
144
  <div
@@ -93,24 +152,18 @@ function MemoryStoreCardImpl({ memoryStore, onDelete }: MemoryStoreCardProps) {
93
152
  </Button>
94
153
  </DropdownMenuTrigger>
95
154
  <DropdownMenuContent align="end">
96
- <DropdownMenuItem
97
- onClick={() => router.push(`${storePath}/units`)}
98
- >
99
- <TableProperties className="mr-2 h-4 w-4" />
100
- {t("memory.detail.tabUnits")}
101
- </DropdownMenuItem>
102
- <DropdownMenuItem
103
- onClick={() => router.push(`${storePath}/search`)}
104
- >
105
- <Search className="mr-2 h-4 w-4" />
106
- {t("memory.detail.tabSearch")}
107
- </DropdownMenuItem>
108
- <DropdownMenuItem
109
- onClick={() => router.push(`${storePath}/settings`)}
110
- >
111
- <Settings className="mr-2 h-4 w-4" />
112
- {t("memory.detail.tabSettings")}
113
- </DropdownMenuItem>
155
+ {capabilities.cardActions.map((segment) => {
156
+ const content = actionContent[segment];
157
+ return (
158
+ <DropdownMenuItem
159
+ key={segment}
160
+ onClick={() => router.push(`${storePath}/${segment}`)}
161
+ >
162
+ {content.icon}
163
+ {content.label}
164
+ </DropdownMenuItem>
165
+ );
166
+ })}
114
167
  <DropdownMenuItem
115
168
  className="text-[hsl(var(--destructive))] focus:text-[hsl(var(--destructive))]"
116
169
  onClick={() => onDelete?.(memoryStoreName)}
@@ -123,39 +176,41 @@ function MemoryStoreCardImpl({ memoryStore, onDelete }: MemoryStoreCardProps) {
123
176
  </div>
124
177
  </div>
125
178
 
179
+ <div className="mt-3 flex flex-wrap gap-1.5 text-[10px]">
180
+ <span
181
+ className="inline-flex rounded-full border border-slate-200 bg-slate-50 px-2 py-0.5 text-slate-600"
182
+ title={`${t("memory.card.inputType")}: ${inputLabel}`}
183
+ >
184
+ {t("memory.card.inputType")}: {inputLabel}
185
+ </span>
186
+ <span
187
+ className={cn(
188
+ "inline-flex rounded-full border px-2 py-0.5",
189
+ capabilities.files
190
+ ? "border-violet-200 bg-violet-50 text-violet-700"
191
+ : "border-slate-200 bg-slate-50 text-slate-600",
192
+ )}
193
+ title={`${t("memory.card.storageStructure")}: ${storageLabel}`}
194
+ >
195
+ {t("memory.card.storageStructure")}: {storageLabel}
196
+ </span>
197
+ </div>
198
+
126
199
  <div className="mt-auto flex items-center gap-1 pt-4 text-xs text-muted-foreground min-w-0">
127
- <HintLink
128
- segment="units"
129
- storePath={storePath}
130
- router={router}
131
- icon={<Database className="h-3.5 w-3.5" />}
132
- label={t("memory.card.longTerm")}
133
- title={t("memory.card.longTermTitle")}
134
- />
135
- <HintLink
136
- segment="messages"
137
- storePath={storePath}
138
- router={router}
139
- icon={<MessageSquare className="h-3.5 w-3.5" />}
140
- label={t("memory.card.shortTerm")}
141
- title={t("memory.card.shortTermTitle")}
142
- />
143
- <HintLink
144
- segment="tasks"
145
- storePath={storePath}
146
- router={router}
147
- icon={<ListChecks className="h-3.5 w-3.5" />}
148
- label={t("memory.card.extract")}
149
- title={t("memory.card.extractTitle")}
150
- />
151
- <HintLink
152
- segment="dream"
153
- storePath={storePath}
154
- router={router}
155
- icon={<Sparkles className="h-3.5 w-3.5" />}
156
- label={t("memory.card.consolidate")}
157
- title={t("memory.card.consolidateTitle")}
158
- />
200
+ {capabilities.cardShortcuts.map((shortcut) => {
201
+ const content = shortcutContent[shortcut];
202
+ return (
203
+ <HintLink
204
+ key={shortcut}
205
+ segment={content.segment}
206
+ storePath={storePath}
207
+ router={router}
208
+ icon={content.icon}
209
+ label={content.label}
210
+ title={content.title}
211
+ />
212
+ );
213
+ })}
159
214
  </div>
160
215
  </CardContent>
161
216
  </CardInteractive>
@@ -210,6 +265,8 @@ export const MemoryStoreCard = memo(
210
265
  MemoryStoreCardImpl,
211
266
  (prev, next) =>
212
267
  prev.memoryStore === next.memoryStore ||
213
- prev.memoryStore.memoryStoreName === next.memoryStore.memoryStoreName,
268
+ (prev.memoryStore.memoryStoreName === next.memoryStore.memoryStoreName &&
269
+ prev.memoryStore.storageMode === next.memoryStore.storageMode &&
270
+ prev.onDelete === next.onDelete),
214
271
  );
215
272
  MemoryStoreCard.displayName = "MemoryStoreCard";
@@ -140,6 +140,10 @@ export function MemoryUnitTable({
140
140
  onDelete,
141
141
  }: MemoryUnitTableProps) {
142
142
  const { t, locale } = useI18n();
143
+ // `created_at` is the event time of the source message, not the write time —
144
+ // surface the fallback rules on hover so the column label isn't read as an
145
+ // insert timestamp.
146
+ const hintCreatedAt = t("memory.units.tableCreatedAtHint");
143
147
  if (!units.length) {
144
148
  return (
145
149
  <div className="rounded-lg border border-dashed py-12 text-center text-sm text-muted-foreground">
@@ -163,7 +167,7 @@ export function MemoryUnitTable({
163
167
  <TableHead className="w-[120px]">
164
168
  {t("memory.units.tableVersion")}
165
169
  </TableHead>
166
- <TableHead className="w-[170px]">
170
+ <TableHead className="w-[170px]" title={hintCreatedAt}>
167
171
  {t("memory.units.tableCreatedAt")}
168
172
  </TableHead>
169
173
  <TableHead className="w-[160px] text-right">
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { useState } from "react";
3
+ import { useMemo, useState } from "react";
4
4
  import { Check, ChevronsUpDown } from "lucide-react";
5
5
 
6
6
  import { Button } from "@/components/ui/button";
@@ -18,8 +18,9 @@ import {
18
18
  PopoverTrigger,
19
19
  } from "@/components/ui/popover";
20
20
  import { useAllMemoryStoreScopes } from "@/hooks/use-memory-store-scopes";
21
+ import { scopeLabel } from "@/lib/memory";
21
22
  import { cn } from "@/lib/utils";
22
- import { useI18n } from "@/i18n/i18n-context";
23
+ import { useI18n, type MessageKey } from "@/i18n/i18n-context";
23
24
  import type { MemoryScope } from "@/types/memory";
24
25
 
25
26
  const WILDCARD: MemoryScope = {
@@ -29,16 +30,77 @@ const WILDCARD: MemoryScope = {
29
30
  runId: "*",
30
31
  };
31
32
 
32
- function scopeLabel(scope: MemoryScope): string {
33
- return [scope.appId, scope.tenantId, scope.agentId, scope.runId]
34
- .map((v) => v || "—")
35
- .join(" / ");
33
+ /** Stable identity so the memoized filter isn't invalidated every render. */
34
+ const NO_SCOPES: MemoryScope[] = [];
35
+
36
+ /** How many rows to render at once, and how many more each "show more" adds. */
37
+ export const SCOPE_WINDOW_SIZE = 100;
38
+
39
+ /** Distance from the bottom (px) at which scrolling grows the window. */
40
+ const NEAR_BOTTOM_PX = 64;
41
+
42
+ /**
43
+ * Case-insensitive substring match over the scope label, where every
44
+ * whitespace-separated term must hit somewhere — so `ots claude` narrows
45
+ * across two dimensions without caring about their order.
46
+ *
47
+ * We filter here rather than letting cmdk do it because cmdk's default is a
48
+ * fuzzy subsequence score, and run ids are uuids: almost any short query
49
+ * finds scattered hex characters in an unrelated tuple, so the "matches"
50
+ * drown out the real ones. Owning the filter also keeps DOM order equal to
51
+ * JSX order, which is what lets the window below stay correct.
52
+ */
53
+ export function filterScopes(
54
+ scopes: readonly MemoryScope[],
55
+ query: string,
56
+ ): MemoryScope[] {
57
+ const terms = query.toLowerCase().split(/\s+/).filter(Boolean);
58
+ if (terms.length === 0) return [...scopes];
59
+ return scopes.filter((scope) => {
60
+ const label = scopeLabel(scope).toLowerCase();
61
+ return terms.every((term) => label.includes(term));
62
+ });
63
+ }
64
+
65
+ export function isNearListBottom(el: {
66
+ scrollTop: number;
67
+ clientHeight: number;
68
+ scrollHeight: number;
69
+ }): boolean {
70
+ return el.scrollHeight - el.scrollTop - el.clientHeight <= NEAR_BOTTOM_PX;
71
+ }
72
+
73
+ /**
74
+ * Which message the status bar shows. Windowing and server-side truncation are
75
+ * independent and, on a big enough store, simultaneous — truncation in fact
76
+ * implies windowing — so they get a combined message rather than an either/or
77
+ * that would hide "· 已截断" in the one case it matters.
78
+ */
79
+ export function scopeStatusKey(state: {
80
+ loading: boolean;
81
+ error: boolean;
82
+ hasMore: boolean;
83
+ truncated: boolean;
84
+ }): MessageKey {
85
+ if (state.loading) return "memory.common.querying";
86
+ if (state.error) return "memory.scopeCombobox.loadFailed";
87
+ if (state.hasMore) {
88
+ return state.truncated
89
+ ? "memory.scopeCombobox.windowCountTruncated"
90
+ : "memory.scopeCombobox.windowCount";
91
+ }
92
+ return state.truncated
93
+ ? "memory.common.scopeCountTruncated"
94
+ : "memory.common.scopeCount";
36
95
  }
37
96
 
38
97
  /**
39
98
  * 通过 ListScopes 拉取某记忆库里真实存在的 scope 元组,供下拉选择。选中后回调
40
99
  * `onPick(完整 scope)`,由上层决定填哪些字段。对话配置的记忆 scope、Dream 任务
41
100
  * 的 scope 输入共用它,避免用户手动逐字段敲。
101
+ *
102
+ * scope 多起来时的三件事:列表本身要能滚(见下方 `modal` 注释)、一次只渲染
103
+ * 一屏窗口(滚到底或点「显示更多」再追加),以及搜索由本组件负责而不是 cmdk。
42
104
  */
43
105
  export function ScopeCombobox({
44
106
  memoryStoreName,
@@ -55,14 +117,44 @@ export function ScopeCombobox({
55
117
  }) {
56
118
  const { t } = useI18n();
57
119
  const [open, setOpen] = useState(false);
58
- const query = useAllMemoryStoreScopes(memoryStoreName ?? "", WILDCARD);
59
- const scopes = query.data?.items ?? [];
120
+ const [search, setSearch] = useState("");
121
+ const [windowSize, setWindowSize] = useState(SCOPE_WINDOW_SIZE);
122
+
123
+ // 只在弹层打开时才查。Dream 创建对话框最多同时挂 20 个 ScopeCombobox,
124
+ // 抽屉/对话框一打开就全量拉 scope 是白花的往返。
125
+ const query = useAllMemoryStoreScopes(memoryStoreName ?? "", WILDCARD, {
126
+ enabled: open,
127
+ });
128
+ const scopes = query.data?.items ?? NO_SCOPES;
60
129
  const truncated = query.data?.truncated ?? false;
61
130
  const resolvedPlaceholder =
62
131
  placeholder ?? t("memory.scopeCombobox.defaultPlaceholder");
63
132
 
133
+ const matches = useMemo(() => filterScopes(scopes, search), [scopes, search]);
134
+ const visible = matches.slice(0, windowSize);
135
+ const hasMore = visible.length < matches.length;
136
+
137
+ const showMore = () => setWindowSize((n) => n + SCOPE_WINDOW_SIZE);
138
+
139
+ const handleOpenChange = (next: boolean) => {
140
+ setOpen(next);
141
+ if (!next) {
142
+ setSearch("");
143
+ setWindowSize(SCOPE_WINDOW_SIZE);
144
+ }
145
+ };
146
+
64
147
  return (
65
- <Popover open={open} onOpenChange={setOpen}>
148
+ // `modal` is load-bearing, not decoration. Both call sites live inside a
149
+ // Radix Dialog (the chat config Sheet / the Dream create dialog), whose
150
+ // overlay wraps everything in <RemoveScroll shards={[content]}> with no
151
+ // `noIsolation`. That cancels wheel events on any portalled node the
152
+ // dialog doesn't own — and PopoverContent portals to document.body, so
153
+ // the list silently refused to scroll and only the first ~10 rows were
154
+ // ever reachable. `modal` gives the popover its own scroll lock, which
155
+ // sits on top of react-remove-scroll's lockStack and hands scrolling
156
+ // back. See components/ui/__tests__/popover-in-dialog.test.ts.
157
+ <Popover open={open} onOpenChange={handleOpenChange} modal>
66
158
  <PopoverTrigger asChild>
67
159
  <Button
68
160
  type="button"
@@ -76,28 +168,40 @@ export function ScopeCombobox({
76
168
  </Button>
77
169
  </PopoverTrigger>
78
170
  <PopoverContent align="start" className="w-[420px] p-0">
79
- <Command shouldFilter>
171
+ <Command shouldFilter={false}>
80
172
  <CommandInput
81
173
  placeholder={t("memory.common.searchScopePlaceholder")}
82
174
  className="text-xs"
175
+ value={search}
176
+ onValueChange={(v) => {
177
+ setSearch(v);
178
+ setWindowSize(SCOPE_WINDOW_SIZE);
179
+ }}
83
180
  />
84
- <CommandList className="max-h-[320px]">
181
+ <CommandList
182
+ className="max-h-[min(52vh,420px)]"
183
+ onScroll={(e) => {
184
+ if (hasMore && isNearListBottom(e.currentTarget)) showMore();
185
+ }}
186
+ >
85
187
  <CommandEmpty>
86
188
  {query.isLoading
87
189
  ? t("common.loading")
88
- : t("memory.scopeCombobox.empty")}
190
+ : query.isError
191
+ ? t("memory.scopeCombobox.loadFailed")
192
+ : search
193
+ ? t("memory.common.noMatchingScope")
194
+ : t("memory.scopeCombobox.empty")}
89
195
  </CommandEmpty>
90
- {scopes.length > 0 && (
196
+ {visible.length > 0 && (
197
+ // 标题只报命中数;服务端截断由状态条统一表达,避免「仅前 3 条」
198
+ // 这种把搜索命中数说成服务端上限的读法。
91
199
  <CommandGroup
92
- heading={
93
- truncated
94
- ? t("memory.common.knownScopesTruncated", {
95
- count: scopes.length,
96
- })
97
- : t("memory.common.knownScopes", { count: scopes.length })
98
- }
200
+ heading={t("memory.common.knownScopes", {
201
+ count: matches.length,
202
+ })}
99
203
  >
100
- {scopes.map((scope, idx) => {
204
+ {visible.map((scope, idx) => {
101
205
  const label = scopeLabel(scope);
102
206
  return (
103
207
  <CommandItem
@@ -105,7 +209,7 @@ export function ScopeCombobox({
105
209
  value={label}
106
210
  onSelect={() => {
107
211
  onPick(scope);
108
- setOpen(false);
212
+ handleOpenChange(false);
109
213
  }}
110
214
  className="text-xs"
111
215
  >
@@ -119,27 +223,50 @@ export function ScopeCombobox({
119
223
  </CommandGroup>
120
224
  )}
121
225
  </CommandList>
122
- <div className="flex items-center justify-between border-t border-[hsl(var(--border-light))] px-2 py-1.5 text-[10px] text-muted-foreground">
123
- <span>
124
- {query.isLoading
125
- ? t("memory.common.querying")
126
- : truncated
127
- ? t("memory.common.scopeCountTruncated", {
128
- count: scopes.length,
129
- })
130
- : t("memory.common.scopeCount", { count: scopes.length })}
226
+ {/* 状态条留在 CommandList 之外:它不属于 [cmdk-list],因此永远不会
227
+ 被搜索过滤掉或被 cmdk 的排序搬走。 */}
228
+ <div className="flex items-center justify-between gap-2 border-t border-[hsl(var(--border-light))] px-2 py-1.5 text-[10px] text-muted-foreground">
229
+ <span className="truncate">
230
+ {t(
231
+ scopeStatusKey({
232
+ loading: query.isLoading,
233
+ error: query.isError,
234
+ hasMore,
235
+ truncated,
236
+ }),
237
+ // 各 key 只会用到其中一部分占位符,多余的会被 interpolate 忽略。
238
+ {
239
+ shown: visible.length,
240
+ total: matches.length,
241
+ count: matches.length,
242
+ },
243
+ )}
244
+ </span>
245
+ <span className="flex shrink-0 items-center gap-1">
246
+ {hasMore ? (
247
+ <button
248
+ type="button"
249
+ onClick={(e) => {
250
+ e.preventDefault();
251
+ showMore();
252
+ }}
253
+ className="rounded px-1.5 py-0.5 font-medium text-[hsl(var(--primary))] hover:bg-[hsl(var(--accent))]"
254
+ >
255
+ {t("memory.scopeCombobox.showMore")}
256
+ </button>
257
+ ) : null}
258
+ <button
259
+ type="button"
260
+ onClick={(e) => {
261
+ e.preventDefault();
262
+ query.refetch();
263
+ }}
264
+ disabled={query.isFetching}
265
+ className="rounded px-1.5 py-0.5 hover:bg-[hsl(var(--accent))] disabled:opacity-50"
266
+ >
267
+ {t("common.refresh")}
268
+ </button>
131
269
  </span>
132
- <button
133
- type="button"
134
- onClick={(e) => {
135
- e.preventDefault();
136
- query.refetch();
137
- }}
138
- disabled={query.isFetching}
139
- className="rounded px-1.5 py-0.5 hover:bg-[hsl(var(--accent))] disabled:opacity-50"
140
- >
141
- {t("common.refresh")}
142
- </button>
143
270
  </div>
144
271
  </Command>
145
272
  </PopoverContent>