ltcai 9.9.9 โ†’ 10.2.0

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 (228) hide show
  1. package/README.md +51 -38
  2. package/docs/CHANGELOG.md +197 -0
  3. package/docs/COMMUNITY_AND_PLUGINS.md +1 -1
  4. package/docs/DEVELOPMENT.md +1 -1
  5. package/docs/HYBRID_CLOUD_KG_STREAMING.md +101 -0
  6. package/docs/ONBOARDING.md +1 -1
  7. package/docs/OPERATIONS.md +1 -1
  8. package/docs/TRUST_MODEL.md +1 -1
  9. package/docs/WHY_LATTICE.md +1 -1
  10. package/docs/kg-schema.md +1 -1
  11. package/lattice_brain/__init__.py +1 -1
  12. package/lattice_brain/archive.py +5 -4
  13. package/lattice_brain/conversations.py +14 -3
  14. package/lattice_brain/embeddings.py +12 -2
  15. package/lattice_brain/graph/_kg_common.py +5 -5
  16. package/lattice_brain/graph/_kg_fsutil.py +4 -3
  17. package/lattice_brain/graph/discovery.py +4 -3
  18. package/lattice_brain/graph/discovery_index.py +0 -1
  19. package/lattice_brain/graph/documents.py +3 -2
  20. package/lattice_brain/graph/fusion.py +4 -0
  21. package/lattice_brain/graph/ingest.py +12 -2
  22. package/lattice_brain/graph/projection.py +3 -2
  23. package/lattice_brain/graph/provenance.py +5 -3
  24. package/lattice_brain/graph/rerank.py +4 -1
  25. package/lattice_brain/graph/retrieval.py +0 -1
  26. package/lattice_brain/graph/retrieval_docgen.py +0 -1
  27. package/lattice_brain/graph/retrieval_reads.py +0 -1
  28. package/lattice_brain/graph/retrieval_vector.py +0 -1
  29. package/lattice_brain/graph/schema.py +4 -3
  30. package/lattice_brain/graph/store.py +18 -4
  31. package/lattice_brain/graph/write_master.py +46 -1
  32. package/lattice_brain/ingestion.py +4 -1
  33. package/lattice_brain/portability.py +5 -2
  34. package/lattice_brain/quality.py +12 -5
  35. package/lattice_brain/quiet.py +43 -0
  36. package/lattice_brain/runtime/agent_runtime.py +12 -8
  37. package/lattice_brain/runtime/hooks.py +2 -1
  38. package/lattice_brain/runtime/multi_agent.py +2 -3
  39. package/lattice_brain/sensitivity.py +94 -0
  40. package/lattice_brain/storage/base.py +30 -2
  41. package/lattice_brain/storage/migration.py +3 -2
  42. package/lattice_brain/storage/postgres.py +2 -2
  43. package/lattice_brain/storage/sqlite.py +6 -4
  44. package/lattice_brain/workflow.py +4 -2
  45. package/latticeai/__init__.py +1 -1
  46. package/latticeai/api/admin.py +1 -1
  47. package/latticeai/api/agents.py +4 -2
  48. package/latticeai/api/auth.py +5 -1
  49. package/latticeai/api/automation_intelligence.py +2 -1
  50. package/latticeai/api/browser.py +3 -2
  51. package/latticeai/api/chat.py +28 -17
  52. package/latticeai/api/chat_agent_http.py +22 -8
  53. package/latticeai/api/chat_contracts.py +4 -0
  54. package/latticeai/api/chat_documents.py +6 -2
  55. package/latticeai/api/chat_hybrid.py +82 -0
  56. package/latticeai/api/computer_use.py +8 -3
  57. package/latticeai/api/knowledge_graph.py +1 -1
  58. package/latticeai/api/mcp.py +4 -4
  59. package/latticeai/api/models.py +5 -2
  60. package/latticeai/api/network_boundary.py +220 -0
  61. package/latticeai/api/permissions.py +0 -1
  62. package/latticeai/api/realtime.py +1 -1
  63. package/latticeai/api/security_dashboard.py +1 -1
  64. package/latticeai/api/setup.py +16 -3
  65. package/latticeai/api/static_routes.py +2 -1
  66. package/latticeai/api/tools.py +12 -8
  67. package/latticeai/api/voice_capture.py +3 -1
  68. package/latticeai/api/workflow_designer.py +1 -1
  69. package/latticeai/api/workspace.py +1 -2
  70. package/latticeai/app_factory.py +131 -78
  71. package/latticeai/cli/entrypoint.py +6 -4
  72. package/latticeai/core/agent.py +55 -495
  73. package/latticeai/core/agent_eval.py +2 -2
  74. package/latticeai/core/agent_helpers.py +493 -0
  75. package/latticeai/core/agent_prompts.py +0 -1
  76. package/latticeai/core/agent_registry.py +3 -1
  77. package/latticeai/core/agent_state.py +41 -0
  78. package/latticeai/core/audit.py +1 -1
  79. package/latticeai/core/builtin_hooks.py +2 -1
  80. package/latticeai/core/config.py +0 -1
  81. package/latticeai/core/embedding_providers.py +12 -1
  82. package/latticeai/core/file_generation.py +3 -0
  83. package/latticeai/core/invitations.py +4 -1
  84. package/latticeai/core/io_utils.py +3 -1
  85. package/latticeai/core/legacy_compatibility.py +1 -2
  86. package/latticeai/core/local_embeddings.py +12 -1
  87. package/latticeai/core/marketplace.py +1 -2
  88. package/latticeai/core/mcp_registry.py +0 -1
  89. package/latticeai/core/model_compat.py +1 -1
  90. package/latticeai/core/model_resolution.py +1 -1
  91. package/latticeai/core/network_boundary.py +168 -0
  92. package/latticeai/core/oidc.py +3 -0
  93. package/latticeai/core/permission_mode.py +6 -6
  94. package/latticeai/core/plugins.py +3 -2
  95. package/latticeai/core/policy.py +0 -1
  96. package/latticeai/core/quiet.py +84 -0
  97. package/latticeai/core/realtime.py +3 -2
  98. package/latticeai/core/run_store.py +4 -2
  99. package/latticeai/core/security.py +4 -0
  100. package/latticeai/core/users.py +5 -3
  101. package/latticeai/core/workspace_graph_trace.py +3 -0
  102. package/latticeai/core/workspace_os.py +65 -273
  103. package/latticeai/core/workspace_os_constants.py +126 -0
  104. package/latticeai/core/workspace_os_state.py +180 -0
  105. package/latticeai/core/workspace_os_utils.py +3 -1
  106. package/latticeai/core/workspace_permissions.py +1 -0
  107. package/latticeai/core/workspace_snapshots.py +3 -1
  108. package/latticeai/core/workspace_timeline.py +3 -1
  109. package/latticeai/integrations/telegram_bot.py +25 -16
  110. package/latticeai/models/router.py +6 -3
  111. package/latticeai/runtime/access_runtime.py +3 -1
  112. package/latticeai/runtime/audit_runtime.py +3 -2
  113. package/latticeai/runtime/chat_wiring.py +4 -1
  114. package/latticeai/runtime/history_runtime.py +1 -1
  115. package/latticeai/runtime/lifespan_runtime.py +3 -1
  116. package/latticeai/runtime/network_boundary_wiring.py +124 -0
  117. package/latticeai/runtime/persistence_runtime.py +3 -1
  118. package/latticeai/runtime/router_registration.py +11 -1
  119. package/latticeai/services/architecture_readiness.py +1 -2
  120. package/latticeai/services/change_proposals.py +2 -1
  121. package/latticeai/services/cloud_egress_audit.py +85 -0
  122. package/latticeai/services/cloud_extraction.py +129 -0
  123. package/latticeai/services/cloud_streaming.py +266 -0
  124. package/latticeai/services/cloud_token_guard.py +84 -0
  125. package/latticeai/services/command_center.py +2 -1
  126. package/latticeai/services/folder_watch.py +3 -0
  127. package/latticeai/services/funnel_metrics.py +3 -1
  128. package/latticeai/services/hybrid_chat.py +265 -0
  129. package/latticeai/services/hybrid_context.py +228 -0
  130. package/latticeai/services/hybrid_policy.py +178 -0
  131. package/latticeai/services/memory_service.py +1 -1
  132. package/latticeai/services/model_catalog.py +10 -1
  133. package/latticeai/services/model_engines.py +35 -14
  134. package/latticeai/services/model_loading.py +3 -2
  135. package/latticeai/services/model_runtime.py +68 -17
  136. package/latticeai/services/multimodal_streaming.py +123 -0
  137. package/latticeai/services/network_boundary_service.py +154 -0
  138. package/latticeai/services/openai_compatible_adapter.py +100 -0
  139. package/latticeai/services/p_reinforce.py +4 -0
  140. package/latticeai/services/platform_runtime.py +9 -4
  141. package/latticeai/services/process_audit.py +0 -1
  142. package/latticeai/services/product_readiness.py +1 -1
  143. package/latticeai/services/run_executor.py +3 -2
  144. package/latticeai/services/search_service.py +1 -4
  145. package/latticeai/services/setup_detection.py +2 -1
  146. package/latticeai/services/tool_dispatch.py +7 -2
  147. package/latticeai/services/upload_service.py +2 -1
  148. package/latticeai/setup/auto_setup.py +10 -7
  149. package/latticeai/setup/wizard.py +15 -11
  150. package/latticeai/tools/__init__.py +3 -3
  151. package/latticeai/tools/commands.py +7 -7
  152. package/latticeai/tools/computer.py +3 -2
  153. package/latticeai/tools/documents.py +10 -9
  154. package/latticeai/tools/filesystem.py +7 -4
  155. package/latticeai/tools/knowledge.py +2 -0
  156. package/latticeai/tools/local_files.py +1 -1
  157. package/latticeai/tools/network.py +2 -1
  158. package/package.json +6 -4
  159. package/scripts/bench_agent_smoke.py +0 -1
  160. package/scripts/bench_models.py +0 -1
  161. package/scripts/brain_quality_eval.py +7 -2
  162. package/scripts/bump_version.py +2 -1
  163. package/scripts/check_current_release_docs.mjs +1 -1
  164. package/scripts/migrate_brain_storage.py +5 -1
  165. package/scripts/profile_kg.py +2 -7
  166. package/scripts/verify_hf_model_registry.py +2 -2
  167. package/src-tauri/Cargo.lock +1 -1
  168. package/src-tauri/Cargo.toml +1 -1
  169. package/src-tauri/tauri.conf.json +1 -1
  170. package/static/app/asset-manifest.json +37 -37
  171. package/static/app/assets/Act-CbdGD-2i.js +1 -0
  172. package/static/app/assets/AdminConsole-LgCkXpnf.js +1 -0
  173. package/static/app/assets/Brain-CoPGJI1L.js +321 -0
  174. package/static/app/assets/BrainHome-gVnaxSwp.js +2 -0
  175. package/static/app/assets/BrainSignals-ChxAYHtj.js +1 -0
  176. package/static/app/assets/Capture-DBtgkHZg.js +1 -0
  177. package/static/app/assets/CommandPalette-Ovtv5I0Y.js +1 -0
  178. package/static/app/assets/Library-CBia2Fvm.js +1 -0
  179. package/static/app/assets/LivingBrain-CNz-6NSd.js +1 -0
  180. package/static/app/assets/{ProductFlow-cB3EFinZ.js โ†’ ProductFlow-ePX-Y73J.js} +1 -1
  181. package/static/app/assets/ReviewCard-C4mpvkwH.js +3 -0
  182. package/static/app/assets/System-BvWNK1zc.js +1 -0
  183. package/static/app/assets/activity-CiauPV_3.js +1 -0
  184. package/static/app/assets/{bot-DtKkLfXj.js โ†’ bot-Dwct-Q1x.js} +1 -1
  185. package/static/app/assets/brain-BKDW1F0T.js +1 -0
  186. package/static/app/assets/{button-BTxZDMFJ.js โ†’ button-CCB9Kuw7.js} +1 -1
  187. package/static/app/assets/{circle-pause--qxF9-EO.js โ†’ circle-pause-DNa8WHC5.js} +1 -1
  188. package/static/app/assets/{circle-play-89x3S6jm.js โ†’ circle-play-8jmxn5mf.js} +1 -1
  189. package/static/app/assets/{cpu-DTUI63vo.js โ†’ cpu-mxvF3V1I.js} +1 -1
  190. package/static/app/assets/{download-EJS5_O0f.js โ†’ download--SmCcx0p.js} +1 -1
  191. package/static/app/assets/{folder-open-BL9zYTnc.js โ†’ folder-open-D4Wy5roo.js} +1 -1
  192. package/static/app/assets/{hard-drive-BFnwi1Lu.js โ†’ hard-drive-BwQcSPlS.js} +1 -1
  193. package/static/app/assets/index-CQWdDU3z.css +2 -0
  194. package/static/app/assets/index-DDV2YZwM.js +10 -0
  195. package/static/app/assets/input-DFhSjmLS.js +1 -0
  196. package/static/app/assets/{network-zKa3jAwl.js โ†’ network-Bts7VO94.js} +1 -1
  197. package/static/app/assets/primitives-BuSMEJY8.js +1 -0
  198. package/static/app/assets/search-DZzxhWaQ.js +1 -0
  199. package/static/app/assets/{shield-alert-CpHeCsaF.js โ†’ shield-alert-BfTO6X_G.js} +1 -1
  200. package/static/app/assets/textarea-BjctW1oh.js +1 -0
  201. package/static/app/assets/{useFocusTrap-58TNCONM.js โ†’ useFocusTrap-CE43-LrA.js} +1 -1
  202. package/static/app/assets/{useQuery-CcVlXlBd.js โ†’ useQuery-Bv3ejLL5.js} +1 -1
  203. package/static/app/assets/{users-C0cFMj6o.js โ†’ users-CsNqLZAj.js} +1 -1
  204. package/static/app/assets/utils-KFFdVG_t.js +7 -0
  205. package/static/app/assets/workspace-wdCvdyPF.js +1 -0
  206. package/static/app/index.html +4 -4
  207. package/static/sw.js +1 -1
  208. package/static/app/assets/Act-BFbpl2_Y.js +0 -1
  209. package/static/app/assets/AdminConsole-DaZPha9Y.js +0 -1
  210. package/static/app/assets/Brain-DGrV0heZ.js +0 -321
  211. package/static/app/assets/BrainHome-Re6Zxh_W.js +0 -2
  212. package/static/app/assets/BrainSignals-BQ11jDpJ.js +0 -1
  213. package/static/app/assets/Capture-DRaf1zLH.js +0 -1
  214. package/static/app/assets/CommandPalette-DAKPm4uJ.js +0 -1
  215. package/static/app/assets/LanguageSwitcher-BgTwHoWv.js +0 -1
  216. package/static/app/assets/Library-BVtrSt12.js +0 -1
  217. package/static/app/assets/LivingBrain-7glOmK0R.js +0 -1
  218. package/static/app/assets/ReviewCard-CShhHS-w.js +0 -3
  219. package/static/app/assets/System-B4nQDy8a.js +0 -1
  220. package/static/app/assets/brain-wVV63_1z.js +0 -1
  221. package/static/app/assets/index-BFtDYI6l.js +0 -10
  222. package/static/app/assets/index-BY9bpxyx.css +0 -2
  223. package/static/app/assets/input-DEz5UjBz.js +0 -1
  224. package/static/app/assets/primitives-jNrZm2O9.js +0 -1
  225. package/static/app/assets/search-ku6-_6wY.js +0 -1
  226. package/static/app/assets/textarea-DpcQkn75.js +0 -1
  227. package/static/app/assets/utils-DYf7pqrR.js +0 -7
  228. package/static/app/assets/workspace-CjthHsLN.js +0 -1
@@ -1 +0,0 @@
1
- import{a as e,g as t,p as n,s as r,t as i,u as a,v as o,x as s,y as c}from"./utils-DYf7pqrR.js";import{r as l,t as u}from"./useQuery-CcVlXlBd.js";import{t as d}from"./workspace-CjthHsLN.js";import{_ as f,a as p,c as m,d as h,g,h as _,i as v,l as y,m as b,n as x,p as S,r as C,s as w,t as T,u as E,v as D}from"./primitives-jNrZm2O9.js";import{t as O}from"./input-DEz5UjBz.js";import{t as k}from"./network-zKa3jAwl.js";import{t as A}from"./shield-alert-CpHeCsaF.js";import{t as j}from"./users-C0cFMj6o.js";import{c as M,h as ee,i as N,t as P}from"./index-BFtDYI6l.js";import{t as F}from"./button-BTxZDMFJ.js";var I=s(c()),L=o(),R={low:`success`,medium:`warning`,high:`danger`};function z(e,t){return t===`ko`&&e.label_ko||e.label}function B(e,t){return t===`ko`&&e.summary_ko||e.summary}function te(e,t){return t===`ko`&&e.warning_ko||e.warning||``}function ne(){let e=l(),r=t(e=>e.language),[i,o]=I.useState(null),[s,c]=I.useState(!1),p=u({queryKey:[`permissionMode`],queryFn:a.permissionMode}),m=d({mutationFn:e=>a.setPermissionMode(e.mode,e.ack),onSuccess:t=>{t.ok&&(e.invalidateQueries({queryKey:[`permissionMode`]}),o(null),c(!1))}}),h=p.data?.ok?p.data.data:void 0,v=h?.catalog??[],y=h?.mode??``,x=i??y,w=v.find(e=>e.id===x),T=!!w?.requires_ack&&x!==y,E=T&&!s,O=x===y;return p.isLoading?(0,L.jsxs)(S,{children:[(0,L.jsx)(g,{children:(0,L.jsx)(f,{children:n(r,`system.permission.title`)})}),(0,L.jsx)(b,{children:(0,L.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n(r,`ui.loading`)})})]}):!h||v.length===0?(0,L.jsxs)(S,{children:[(0,L.jsx)(g,{children:(0,L.jsx)(f,{children:n(r,`system.permission.title`)})}),(0,L.jsx)(b,{children:(0,L.jsx)(C,{title:n(r,`ui.requestUnavailable`),detail:p.data?.error})})]}):(0,L.jsxs)(S,{"data-testid":`permission-mode-panel`,children:[(0,L.jsxs)(g,{children:[(0,L.jsx)(f,{children:n(r,`system.permission.title`)}),(0,L.jsx)(_,{children:n(r,`system.permission.hint`)})]}),(0,L.jsxs)(b,{className:`space-y-3`,children:[(0,L.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[n(r,`system.permission.current`),`:`,` `,(0,L.jsx)(`strong`,{"data-testid":`permission-mode-active`,children:r===`ko`&&h.label_ko||h.label})]}),(0,L.jsx)(`div`,{className:`space-y-2`,role:`radiogroup`,"aria-label":n(r,`system.permission.title`),children:v.map(e=>{let t=e.id===x;return(0,L.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":t,"data-testid":`permission-mode-option-${e.id}`,onClick:()=>{o(e.id),c(!1),m.reset()},className:`w-full rounded-md border p-3 text-left transition ${t?`border-primary bg-accent`:`border-border hover:bg-accent/50`}`,children:[(0,L.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,L.jsx)(`strong`,{className:`text-sm`,children:z(e,r)}),(0,L.jsx)(D,{variant:R[e.risk]||`warning`,children:n(r,`system.permission.risk.${e.risk}`)}),e.id===y?(0,L.jsx)(D,{variant:`muted`,children:n(r,`system.permission.current`)}):null]}),(0,L.jsx)(`span`,{className:`mt-1 block text-xs text-muted-foreground`,children:B(e,r)})]},e.id)})}),T?(0,L.jsxs)(`div`,{className:`space-y-2 rounded-md border border-border bg-muted p-3`,children:[(0,L.jsxs)(`p`,{className:`flex items-start gap-2 text-xs`,children:[(0,L.jsx)(A,{className:`mt-0.5 h-4 w-4 shrink-0`}),(0,L.jsx)(`span`,{children:w?te(w,r):``})]}),(0,L.jsxs)(`label`,{className:`flex items-center gap-2 text-xs`,children:[(0,L.jsx)(`input`,{type:`checkbox`,"data-testid":`permission-mode-ack`,checked:s,onChange:e=>c(e.target.checked)}),n(r,`system.permission.ack`)]})]}):null,(0,L.jsx)(F,{"data-testid":`permission-mode-apply`,disabled:O||E||m.isPending,onClick:()=>m.mutate({mode:x,ack:s}),children:n(r,`system.permission.apply`)}),m.data&&!m.data.ok?(0,L.jsx)(C,{title:n(r,`ui.requestUnavailable`),detail:m.data.error}):null,m.data?.ok?(0,L.jsx)(D,{variant:`success`,"data-testid":`permission-mode-applied`,children:n(r,`ui.requestCompleted`)}):null,(0,L.jsxs)(`div`,{className:`rounded-md border border-border p-3`,children:[(0,L.jsx)(`p`,{className:`text-xs font-medium`,children:n(r,`system.permission.guards`)}),(0,L.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:n(r,`system.permission.guards.detail`)})]})]})]})}var V=[{id:`account`,labelKey:`system.tab.account`},{id:`workspaces`,labelKey:`system.tab.workspaces`},{id:`snapshots`,labelKey:`system.tab.snapshots`},{id:`activity`,labelKey:`system.tab.activity`},{id:`network`,labelKey:`system.tab.network`},{id:`settings`,labelKey:`system.tab.settings`},{id:`admin`,labelKey:`system.tab.admin`}];function H({initialTab:e}){let r=t(e=>e.mode),i=t(e=>e.language),[a,o]=I.useState(e||`account`);I.useEffect(()=>{V.some(t=>t.id===e)&&o(e)},[e]);let s=e=>{o(e),N(`/`+{account:`account`,workspaces:`workspace-admin`,snapshots:`snapshots`,activity:`activity`,network:`network`,settings:`settings`,admin:`system-admin`}[e])};return(0,L.jsxs)(`div`,{className:`product-page settings-page space-y-5`,children:[(0,L.jsxs)(`header`,{className:`page-hero`,children:[(0,L.jsxs)(`div`,{className:`page-kicker`,children:[(0,L.jsx)(M,{className:`h-4 w-4`}),` `,n(i,`system.kicker`)]}),(0,L.jsx)(`h1`,{className:`page-title`,children:n(i,`system.title`)}),(0,L.jsx)(`p`,{className:`page-copy`,children:n(i,`system.body`)})]}),(0,L.jsx)(h,{tabs:(r===`basic`?V.filter(e=>e.id===`account`||e.id===`workspaces`||e.id===`snapshots`||e.id===`settings`):V).map(e=>({id:e.id,label:n(i,e.labelKey)})),value:a,onChange:e=>s(e)}),a===`account`?(0,L.jsx)(U,{}):null,a===`workspaces`?(0,L.jsx)(W,{}):null,a===`snapshots`?(0,L.jsx)(G,{}):null,a===`activity`?(0,L.jsx)(K,{}):null,a===`network`?(0,L.jsx)(q,{}):null,a===`settings`?(0,L.jsx)(J,{}):null,a===`admin`?(0,L.jsx)(se,{}):null]})}function U(){let e=l(),r=t(e=>e.language),i=t(e=>e.setWorkspaceId),o=u({queryKey:[`profile`],queryFn:a.profile}),s=u({queryKey:[`sso`],queryFn:a.ssoConfig}),[c,h]=I.useState(``),[v,y]=I.useState(``),[C,w]=I.useState(``),[D,k]=I.useState(``),[A,j]=I.useState(``),M=e=>{e.ok&&(P(),i(null))},N=d({mutationFn:()=>a.login(c,v),onSuccess:M}),R=d({mutationFn:()=>a.register({email:c,password:v,name:C,nickname:D}),onSuccess:M}),z=d({mutationFn:()=>a.updateProfile({name:C,nickname:D}),onSuccess:()=>e.invalidateQueries({queryKey:[`profile`]})}),B=d({mutationFn:()=>a.changePassword(v,A)});return(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-2`,children:[(0,L.jsx)(x,{title:n(r,`system.account.profile`),result:o.data,children:e=>(0,L.jsx)(p,{data:e})}),(0,L.jsxs)(S,{children:[(0,L.jsxs)(g,{children:[(0,L.jsxs)(f,{className:`flex items-center gap-2`,children:[(0,L.jsx)(ee,{className:`h-4 w-4`}),` `,n(r,`system.account.title`)]}),(0,L.jsx)(_,{children:n(r,`system.account.detail`)})]}),(0,L.jsxs)(b,{className:`grid gap-3`,children:[(0,L.jsx)(O,{value:c,onChange:e=>h(e.target.value),placeholder:n(r,`system.account.email`)}),(0,L.jsx)(O,{type:`password`,value:v,onChange:e=>y(e.target.value),placeholder:n(r,`system.account.password`)}),(0,L.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-2`,children:[(0,L.jsx)(O,{value:C,onChange:e=>w(e.target.value),placeholder:n(r,`system.account.name`)}),(0,L.jsx)(O,{value:D,onChange:e=>k(e.target.value),placeholder:n(r,`system.account.nickname`)})]}),(0,L.jsx)(O,{type:`password`,value:A,onChange:e=>j(e.target.value),placeholder:n(r,`system.account.newPassword`)}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(F,{onClick:()=>N.mutate(),disabled:!c||!v||N.isPending,children:n(r,`system.account.login`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>R.mutate(),disabled:!c||!v||R.isPending,children:n(r,`system.account.register`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>z.mutate(),disabled:z.isPending,children:n(r,`system.account.save`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>B.mutate(),disabled:!v||!A||B.isPending,children:n(r,`system.account.changePassword`)}),(0,L.jsx)(T,{label:n(r,`system.account.logout`),action:()=>a.logout(),onSuccess:M})]}),[N.data,R.data,z.data,B.data].filter(Boolean).map((e,t)=>(0,L.jsx)(m,{result:e,successLabel:n(r,`system.account.requestDone`)},t))]})]}),(0,L.jsx)(x,{title:n(r,`system.account.signInOptions`),result:s.data,className:`xl:col-span-2`,children:e=>(0,L.jsx)(E,{value:e})})]})}function W(){let e=l(),r=t(e=>e.language),{setWorkspaceId:o}=t(),s=u({queryKey:[`workspaceRegistry`],queryFn:a.workspaceRegistry}),c=u({queryKey:[`invitations`],queryFn:a.invitations}),[p,m]=I.useState(``),[h,y]=I.useState(``),[C,w]=I.useState(``),E=d({mutationFn:()=>a.createOrg(p),onSuccess:()=>e.invalidateQueries({queryKey:[`workspaceRegistry`]})}),D=d({mutationFn:()=>a.createInvitation({email:h||null,role:`member`,expires_hours:168}),onSuccess:()=>e.invalidateQueries({queryKey:[`invitations`]})}),k=d({mutationFn:()=>a.acceptInvitation(C),onSuccess:()=>e.invalidateQueries({queryKey:[`workspaceRegistry`]})}),A=i(s.data?.data?.workspaces);return(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-[1.1fr_0.9fr]`,children:[(0,L.jsx)(x,{title:n(r,`system.workspace.yours`),result:s.data,children:()=>(0,L.jsx)(`div`,{className:`grid gap-2`,children:A.map(e=>{let t=String(e.workspace_id||e.id);return(0,L.jsx)(`div`,{className:`rounded-md border border-border p-3`,children:(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`div`,{className:`font-medium`,children:String(e.name||t)}),(0,L.jsxs)(`div`,{className:`text-sm text-muted-foreground`,children:[String(e.type||``),` ยท `,String(e.your_role||e.role||``)]})]}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(F,{variant:`outline`,onClick:()=>o(t),children:n(r,`system.workspace.use`)}),(0,L.jsx)(T,{label:n(r,`system.workspace.activate`),action:()=>a.activateWorkspace(t),invalidate:[`workspaceRegistry`]}),(0,L.jsx)(T,{label:n(r,`system.workspace.archive`),action:()=>a.archiveWorkspace(t),invalidate:[`workspaceRegistry`],variant:`destructive`})]})]})},t)})})}),(0,L.jsxs)(S,{children:[(0,L.jsxs)(g,{children:[(0,L.jsxs)(f,{className:`flex items-center gap-2`,children:[(0,L.jsx)(j,{className:`h-4 w-4`}),` `,n(r,`system.workspace.organizations`)]}),(0,L.jsx)(_,{children:n(r,`system.workspace.organizationsHint`)})]}),(0,L.jsxs)(b,{className:`grid gap-3`,children:[(0,L.jsx)(O,{value:p,onChange:e=>m(e.target.value),placeholder:n(r,`system.workspace.orgPlaceholder`)}),(0,L.jsx)(F,{disabled:!p.trim()||E.isPending,onClick:()=>E.mutate(),children:n(r,`system.workspace.createOrg`)}),(0,L.jsx)(O,{value:h,onChange:e=>y(e.target.value),placeholder:n(r,`system.workspace.inviteeEmail`)}),(0,L.jsx)(F,{variant:`outline`,disabled:D.isPending,onClick:()=>D.mutate(),children:n(r,`system.workspace.createInvite`)}),(0,L.jsx)(O,{value:C,onChange:e=>w(e.target.value),placeholder:n(r,`system.workspace.inviteToken`)}),(0,L.jsx)(F,{variant:`outline`,disabled:!C.trim()||k.isPending,onClick:()=>k.mutate(),children:n(r,`system.workspace.acceptInvite`)}),(0,L.jsx)(x,{title:n(r,`system.workspace.invitations`),result:c.data,children:e=>(0,L.jsx)(v,{items:e.invitations,titleKey:`token`,metaKey:`role`})})]})]})]})}function G(){let e=t(e=>e.language),r=u({queryKey:[`snapshots`],queryFn:a.snapshots}),o=u({queryKey:[`timeMachine`],queryFn:a.timeMachine}),[s,c]=I.useState(``),[l,p]=I.useState(``),[h,y]=I.useState(``),C=d({mutationFn:()=>a.createSnapshot(s||n(e,`system.snapshots.defaultName`))}),w=d({mutationFn:()=>a.compareSnapshots(l,h)}),E=i(r.data?.data?.snapshots);return(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-2`,children:[(0,L.jsx)(x,{title:n(e,`system.snapshots.title`),result:r.data,children:()=>(0,L.jsx)(`div`,{className:`space-y-2`,children:E.map(t=>{let r=String(t.id||t.snapshot_id);return(0,L.jsxs)(`div`,{className:`rounded-md border border-border p-3`,children:[(0,L.jsx)(`div`,{className:`font-medium`,children:String(t.name||r)}),(0,L.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:[(0,L.jsx)(T,{label:n(e,`system.snapshots.export`),action:()=>a.exportSnapshot(r)}),(0,L.jsx)(T,{label:n(e,`system.snapshots.mergeRestore`),action:()=>a.restoreSnapshot(r),variant:`outline`})]})]},r)})})}),(0,L.jsxs)(S,{children:[(0,L.jsxs)(g,{children:[(0,L.jsx)(f,{children:n(e,`system.snapshots.actions`)}),(0,L.jsx)(_,{children:n(e,`system.snapshots.actionsHint`)})]}),(0,L.jsxs)(b,{className:`grid gap-3`,children:[(0,L.jsx)(O,{value:s,onChange:e=>c(e.target.value),placeholder:n(e,`system.snapshots.namePlaceholder`)}),(0,L.jsx)(F,{onClick:()=>C.mutate(),disabled:C.isPending,children:n(e,`system.snapshots.create`)}),(0,L.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-2`,children:[(0,L.jsx)(O,{value:l,onChange:e=>p(e.target.value),placeholder:n(e,`system.snapshots.beforeId`)}),(0,L.jsx)(O,{value:h,onChange:e=>y(e.target.value),placeholder:n(e,`system.snapshots.afterId`)})]}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>w.mutate(),disabled:!l||!h||w.isPending,children:n(e,`system.snapshots.compare`)}),w.data?(0,L.jsx)(m,{result:w.data,successLabel:n(e,`system.snapshots.compareDone`)}):null]})]}),(0,L.jsx)(x,{title:n(e,`system.snapshots.timeline`),result:o.data,className:`xl:col-span-2`,children:e=>(0,L.jsx)(v,{items:e.events||e,titleKey:`event`,metaKey:`type`,limit:14})})]})}function K(){let e=t(e=>e.language),r=u({queryKey:[`realtimeFeed`],queryFn:a.realtimeFeed}),i=u({queryKey:[`presence`],queryFn:a.presence});return(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-2`,children:[(0,L.jsx)(x,{title:n(e,`system.activity.feed`),result:r.data,children:e=>(0,L.jsx)(v,{items:e.events,titleKey:`event_type`,metaKey:`area`,limit:14})}),(0,L.jsx)(x,{title:n(e,`system.activity.presence`),result:i.data,children:e=>(0,L.jsx)(X,{data:e})})]})}function q(){let e=l(),r=t(e=>e.language),o=u({queryKey:[`networkIdentity`],queryFn:a.networkIdentity}),s=u({queryKey:[`networkPeers`],queryFn:a.networkPeers}),[c,p]=I.useState(``),[h,v]=I.useState(``),[y,C]=I.useState(``),w=d({mutationFn:()=>a.pairPeer({name:c,base_url:h,public_key:y}),onSuccess:()=>e.invalidateQueries({queryKey:[`networkPeers`]})});return(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-[0.8fr_1.2fr]`,children:[(0,L.jsx)(x,{title:n(r,`system.network.identity`),result:o.data,children:e=>(0,L.jsx)(Z,{data:e})}),(0,L.jsxs)(S,{children:[(0,L.jsxs)(g,{children:[(0,L.jsxs)(f,{className:`flex items-center gap-2`,children:[(0,L.jsx)(k,{className:`h-4 w-4`}),` `,n(r,`system.network.pair`)]}),(0,L.jsx)(_,{children:n(r,`system.network.pairHint`)})]}),(0,L.jsxs)(b,{className:`grid gap-3`,children:[(0,L.jsx)(O,{value:c,onChange:e=>p(e.target.value),placeholder:n(r,`system.network.deviceName`)}),(0,L.jsx)(O,{value:h,onChange:e=>v(e.target.value),placeholder:n(r,`system.network.address`)}),(0,L.jsx)(O,{value:y,onChange:e=>C(e.target.value),placeholder:n(r,`system.network.publicKey`)}),(0,L.jsx)(F,{disabled:!c||!h||!y||w.isPending,onClick:()=>w.mutate(),children:n(r,`system.network.pair`)}),w.data?(0,L.jsx)(m,{result:w.data,successLabel:n(r,`system.network.pairDone`)}):null]})]}),(0,L.jsx)(x,{title:n(r,`system.network.peers`),result:s.data,className:`xl:col-span-2`,children:e=>(0,L.jsx)(`div`,{className:`grid gap-2`,children:i(e.peers).map(e=>{let i=String(e.peer_id||e.id);return(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 rounded-md border border-border p-3`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`div`,{className:`font-medium`,children:String(e.name||i)}),(0,L.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:String(e.base_url||``)})]}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(T,{label:n(r,`system.network.pushWorkspace`),action:()=>a.pushPeer(i,t.getState().workspaceId)}),(0,L.jsx)(T,{label:n(r,`system.network.unpair`),action:()=>a.unpairPeer(i),invalidate:[`networkPeers`],variant:`destructive`})]})]},i)})})})]})}function J(){let e=l(),{theme:r,setTheme:i,mode:o,setMode:s}=t(),c=t(e=>e.language),p=u({queryKey:[`health`],queryFn:a.health}),h=u({queryKey:[`sysinfo`],queryFn:a.sysinfo}),v=u({queryKey:[`computerMemory`],queryFn:a.computerMemory}),C=u({queryKey:[`brainStorage`],queryFn:a.brainStorage}),w=u({queryKey:[`backupHealth`],queryFn:a.backupHealth}),[D,k]=I.useState(``),[A,j]=I.useState(`lattice_brain`),[M,ee]=I.useState(!1),[N,P]=I.useState(``),[R,z]=I.useState(``),[B,te]=I.useState(``),[V,H]=I.useState(!1),[U,W]=I.useState(!1),G=d({mutationFn:e=>a.dockerPostgres({consent:e,dry_run:!e,port:5432})}),K=d({mutationFn:()=>a.migratePostgres({dsn:D,schema_name:A||`lattice_brain`,dry_run:!0})}),q=d({mutationFn:()=>a.brainArchive({path:N.trim()||null,passphrase:B}),onSuccess:()=>e.invalidateQueries({queryKey:[`backupHealth`]})}),J=d({mutationFn:()=>a.brainArchiveInspect({path:R,passphrase:B||null})}),Y=d({mutationFn:()=>a.brainArchiveVerify({path:R,passphrase:B})}),X=d({mutationFn:()=>a.brainArchiveRestore({path:R,passphrase:B,dry_run:!0,confirm:!1})}),Z=d({mutationFn:()=>a.brainArchiveRestore({path:R,passphrase:B,dry_run:!1,confirm:V}),onSuccess:()=>{e.invalidateQueries({queryKey:[`brainStorage`]}),e.invalidateQueries({queryKey:[`backupHealth`]})}}),Q=d({mutationFn:()=>a.brainArchiveImport({path:R,passphrase:B,dry_run:!0,confirm:!1})}),$=d({mutationFn:()=>a.brainArchiveImport({path:R,passphrase:B,dry_run:!1,confirm:U}),onSuccess:()=>{e.invalidateQueries({queryKey:[`brainStorage`]}),e.invalidateQueries({queryKey:[`backupHealth`]})}});return(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-3`,children:[(0,L.jsxs)(S,{children:[(0,L.jsxs)(g,{children:[(0,L.jsx)(f,{children:n(c,`system.panel.appearance`)}),(0,L.jsx)(_,{children:n(c,`system.panel.appearance.hint`)})]}),(0,L.jsxs)(b,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(F,{variant:r===`dark`?`default`:`outline`,onClick:()=>i(`dark`),children:n(c,`system.theme.dark`)}),(0,L.jsx)(F,{variant:r===`light`?`default`:`outline`,onClick:()=>i(`light`),children:n(c,`system.theme.light`)}),[`basic`,`advanced`,`admin`].map(e=>(0,L.jsx)(F,{variant:o===e?`default`:`outline`,onClick:()=>s(e),children:n(c,`shell.mode.${e}`)},e))]})]}),(0,L.jsx)(ne,{}),(0,L.jsx)(x,{title:o===`basic`?n(c,`system.panel.brainStatus`):n(c,`system.panel.serverHealth`),result:p.data,children:e=>(0,L.jsx)(re,{data:e})}),(0,L.jsx)(x,{title:o===`basic`?n(c,`system.panel.readiness`):n(c,`system.panel.hostTelemetry`),result:h.data,children:e=>o===`basic`?(0,L.jsx)(y,{stats:[{label:n(c,`system.stat.cpu`),value:`${String(e.cpu_pct||`0`)}%`},{label:n(c,`system.stat.memory`),value:`${String(e.ram_pct||`0`)}%`},{label:n(c,`system.stat.gpu`),value:`${String(e.gpu_mem_pct||`0`)}%`},{label:n(c,`system.stat.localStatus`),value:n(c,`system.stat.ready`)}]}):(0,L.jsx)(E,{value:e})}),(0,L.jsx)(x,{title:o===`basic`?n(c,`system.storage.title`):n(c,`system.panel.brainStorage`),result:C.data,className:`xl:col-span-3`,children:e=>(0,L.jsx)(ie,{data:e,mode:o,language:c})}),o===`basic`?null:(0,L.jsx)(x,{title:n(c,`system.backup.health`),result:w.data,className:`xl:col-span-3`,children:e=>(0,L.jsx)(ae,{data:e})}),o===`basic`?null:(0,L.jsxs)(S,{className:`xl:col-span-3`,children:[(0,L.jsxs)(g,{children:[(0,L.jsx)(f,{children:n(c,`system.archive.title`)}),(0,L.jsx)(_,{children:n(c,`system.archive.detail`)})]}),(0,L.jsxs)(b,{className:`grid gap-3`,children:[(0,L.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-[1fr_1fr]`,children:[(0,L.jsx)(O,{value:N,onChange:e=>P(e.target.value),placeholder:n(c,`system.archive.exportPath`)}),(0,L.jsx)(O,{value:R,onChange:e=>z(e.target.value),placeholder:n(c,`system.archive.restorePath`)})]}),(0,L.jsx)(O,{type:`password`,value:B,onChange:e=>te(e.target.value),placeholder:n(c,`system.archive.passphrase`)}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(F,{onClick:()=>q.mutate(),disabled:!B||q.isPending,children:n(c,`system.archive.export`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>J.mutate(),disabled:!R||J.isPending,children:n(c,`system.archive.inspect`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>Y.mutate(),disabled:!R||!B||Y.isPending,children:n(c,`system.archive.verify`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>X.mutate(),disabled:!R||!B||X.isPending,children:n(c,`system.archive.restoreDryRun`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>Q.mutate(),disabled:!R||!B||Q.isPending,children:n(c,`system.archive.importDryRun`)}),(0,L.jsxs)(`label`,{className:`flex items-center gap-2 rounded-md border border-border px-3 py-2 text-sm`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:V,onChange:e=>H(e.target.checked)}),n(c,`system.archive.confirmRestore`)]}),(0,L.jsx)(F,{variant:`destructive`,onClick:()=>Z.mutate(),disabled:!R||!B||!V||Z.isPending,children:n(c,`system.archive.restore`)}),(0,L.jsxs)(`label`,{className:`flex items-center gap-2 rounded-md border border-border px-3 py-2 text-sm`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:U,onChange:e=>W(e.target.checked)}),n(c,`system.archive.confirmImport`)]}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>$.mutate(),disabled:!R||!B||!U||$.isPending,children:n(c,`system.archive.import`)})]}),[q.data,J.data,Y.data,X.data,Z.data,Q.data,$.data].filter(Boolean).map((e,t)=>(0,L.jsx)(m,{result:e,successLabel:n(c,`system.archive.requestDone`)},t))]})]}),o===`basic`?null:(0,L.jsxs)(S,{className:`xl:col-span-3`,children:[(0,L.jsxs)(g,{children:[(0,L.jsx)(f,{children:n(c,`system.scale.title`)}),(0,L.jsx)(_,{children:n(c,`system.scale.detail`)})]}),(0,L.jsxs)(b,{className:`grid gap-3`,children:[(0,L.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-[1fr_220px]`,children:[(0,L.jsx)(O,{value:D,onChange:e=>k(e.target.value),placeholder:n(c,`system.scale.dsn`)}),(0,L.jsx)(O,{value:A,onChange:e=>j(e.target.value),placeholder:n(c,`system.scale.schema`)})]}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsx)(F,{variant:`outline`,onClick:()=>G.mutate(!1),disabled:G.isPending,children:n(c,`system.scale.dockerPlan`)}),(0,L.jsxs)(`label`,{className:`flex items-center gap-2 rounded-md border border-border px-3 py-2 text-sm`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:M,onChange:e=>ee(e.target.checked)}),n(c,`system.scale.dockerConsent`)]}),(0,L.jsx)(F,{onClick:()=>G.mutate(!0),disabled:!M||G.isPending,children:n(c,`system.scale.dockerStart`)}),(0,L.jsx)(F,{variant:`outline`,onClick:()=>K.mutate(),disabled:!D||K.isPending,children:n(c,`system.scale.migrationPlan`)})]}),G.data?(0,L.jsx)(m,{result:G.data,successLabel:n(c,`system.scale.dockerDone`)}):null,K.data?(0,L.jsx)(m,{result:K.data,successLabel:n(c,`system.scale.migrationDone`)}):null]})]}),o===`basic`?null:(0,L.jsx)(x,{title:n(c,`system.computerMemory.title`),result:v.data,className:`xl:col-span-3`,children:e=>(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(E,{value:e}),(0,L.jsxs)(`div`,{className:`flex gap-2`,children:[(0,L.jsx)(T,{label:n(c,`system.computerMemory.enable`),action:()=>a.setComputerMemory(!0),invalidate:[`computerMemory`]}),(0,L.jsx)(T,{label:n(c,`system.computerMemory.disable`),action:()=>a.setComputerMemory(!1),invalidate:[`computerMemory`],variant:`destructive`})]})]})})]})}function Y(e,t,r=n(e,`system.value.notReported`)){return t==null||t===``?r:typeof t==`boolean`?n(e,t?`system.value.enabled`:`system.value.disabled`):String(t)}function X({data:e}){let r=t(e=>e.language),a=i(e.presence||e.clients||e);return a.length?(0,L.jsx)(v,{items:a,titleKey:`user`,metaKey:`workspace_id`}):(0,L.jsx)(C,{title:n(r,`system.presence.empty`),detail:n(r,`system.presence.emptyDetail`)})}function Z({data:e}){let i=t(e=>e.mode),a=t(e=>e.language),o=Y(a,e.public_key,``);return i===`basic`?(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(Q,{title:n(a,`system.device.thisMac`),status:n(a,`system.value.trusted`),detail:n(a,`system.device.thisMacDetail`)}),(0,L.jsx)(D,{variant:`muted`,children:Y(a,e.algorithm,n(a,`system.value.localIdentity`))})]}):(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,L.jsx)(D,{variant:`success`,children:n(a,`system.value.localDevice`)}),(0,L.jsx)(D,{variant:`muted`,children:Y(a,e.algorithm,n(a,`system.value.identityKey`))})]}),(0,L.jsx)(p,{data:{device_id:e.device_id||e.id||n(a,`system.value.notReported`),fingerprint:e.fingerprint||n(a,`system.value.notReported`),public_key:o?r(o.replace(/\s+/g,` `),72):n(a,`system.value.notReported`)}})]})}function re({data:e}){let r=t(e=>e.mode),i=t(e=>e.language);return r===`basic`?(0,L.jsx)(Q,{title:n(i,`system.health.title`),status:n(i,`system.health.ok`),detail:n(i,`system.health.detail`)}):(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(y,{stats:[{label:n(i,`system.health.status`),value:e.status||e.ok||n(i,`system.value.reported`)},{label:n(i,`system.health.version`),value:e.version||n(i,`system.value.notReported`)},{label:n(i,`system.health.mode`),value:e.mode||e.environment||n(i,`system.value.local`)},{label:n(i,`system.health.port`),value:e.port||e.backend_port||n(i,`system.value.configured`)}]}),(0,L.jsx)(E,{value:e})]})}function ie({data:t,mode:r=`advanced`,language:i=`en`}){let a=e(t.active)?t.active:t,o=e(t.postgres)?t.postgres:{},s=e(t.backup_health)?t.backup_health:{},c=a.vector_search||a.vector||t.vector_search||t.sqlite_vec,l=!!(o.available||o.connected||o.enabled),u=!!c&&String(c).toLowerCase()!==`not reported`;return r===`basic`?(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(Q,{title:n(i,`system.storage.local.title`),status:n(i,`system.storage.local.badge`),detail:n(i,`system.storage.local.detail`)}),(0,L.jsx)(Q,{title:n(i,`system.storage.search.title`),status:u?n(i,`system.storage.search.on`):n(i,`system.storage.search.pending`),detail:u?n(i,`system.storage.search.detailOn`):n(i,`system.storage.search.detailPending`)})]}):(0,L.jsxs)(`div`,{className:`space-y-4`,children:[(0,L.jsx)(y,{stats:[{label:n(i,`system.storage.activeEngine`),value:a.engine||t.engine||n(i,`system.storage.sqlite`)},{label:n(i,`system.storage.sqliteDefault`),value:a.engine===`postgres`?n(i,`system.value.scaleMode`):n(i,`system.value.enabled`)},{label:n(i,`system.storage.vector`),value:c||n(i,`system.value.notReported`)},{label:n(i,`system.storage.postgres`),value:l?n(i,`system.value.available`):n(i,`system.value.optional`)}]}),(0,L.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,L.jsx)(Q,{title:n(i,`system.storage.sqlite`),status:a.available===!1?n(i,`system.value.unavailable`):n(i,`system.value.default`),detail:Y(i,a.reason||a.path||t.path,n(i,`system.storage.sqliteDetail`))}),(0,L.jsx)(Q,{title:n(i,`system.storage.vector`),status:Y(i,c,n(i,`system.value.reported`)),detail:Y(i,a.vector_reason||a.sqlite_vec_reason||t.vector_reason,n(i,`system.storage.vectorDetail`))}),(0,L.jsx)(Q,{title:n(i,`system.storage.postgres`),status:l?n(i,`system.value.available`):n(i,`system.value.notEnabled`),detail:Y(i,o.reason||o.dsn||o.status,n(i,`system.storage.postgresDetail`))})]}),Object.keys(s).length?(0,L.jsx)(E,{value:{backup_health:s}}):null]})}function ae({data:e}){let r=t(e=>e.language);return(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(y,{stats:[{label:n(r,`system.backup.available`),value:e.available===!1?n(r,`system.value.no`):n(r,`system.value.yes`)},{label:n(r,`system.backup.backups`),value:e.count||e.backups||0},{label:n(r,`system.backup.encrypted`),value:e.encrypted_archives||0},{label:n(r,`system.backup.zip`),value:e.zip_backups||0}]}),(0,L.jsx)(p,{data:{directory:e.directory||n(r,`system.value.notReported`),latest:e.latest||n(r,`system.value.noneReported`),last_verified:e.last_verified||e.verified_at||n(r,`system.value.notReported`),failure:e.error||e.reason||n(r,`system.value.noneReported`)}})]})}function Q({title:e,status:t,detail:n}){let r=/unavailable|failed|denied|disabled|not enabled|์‚ฌ์šฉ ๋ถˆ๊ฐ€|์‹คํŒจ|๊ฑฐ๋ถ€|๋น„ํ™œ์„ฑ|ํ™œ์„ฑํ™”๋˜์ง€ ์•Š์Œ/i.test(t)?`warning`:`success`;return(0,L.jsxs)(`div`,{className:`rounded-md border border-border bg-background p-3`,children:[(0,L.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,L.jsx)(`div`,{className:`font-medium`,children:e}),(0,L.jsx)(D,{variant:r,children:t})]}),(0,L.jsx)(`p`,{className:`mt-2 text-sm text-muted-foreground`,children:n})]})}function $({data:r}){let i=t(e=>e.language),a=e(r.startup)?r.startup:{},o=e(r.privacy)?r.privacy:{},s=e(r.storage)?r.storage:{},c=e(r.backup)?r.backup:{},l=e(r.device_identity)?r.device_identity:{},u=e(r.permissions)?r.permissions:{};return(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(y,{stats:[{label:n(i,`system.hardening.version`),value:r.version||n(i,`system.value.reported`)},{label:n(i,`system.hardening.localOnly`),value:o.local_only_default??a.local_only_default??n(i,`system.value.reported`)},{label:n(i,`system.hardening.storage`),value:e(s.active)?s.active.engine:n(i,`system.value.reported`)},{label:n(i,`system.hardening.backups`),value:c.count||c.available||n(i,`system.value.reported`)}]}),(0,L.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-2`,children:[(0,L.jsx)(Q,{title:n(i,`system.hardening.startup`),status:n(i,a.network_exposed?`system.value.networkExposed`:`system.value.localOnly`),detail:n(i,`system.hardening.startupDetail`)}),(0,L.jsx)(Q,{title:n(i,`system.hardening.integrations`),status:n(i,o.local_only_default===!1?`system.value.reviewRequired`:`system.value.optIn`),detail:n(i,`system.hardening.integrationsDetail`)}),(0,L.jsx)(Q,{title:n(i,`system.hardening.identity`),status:Y(i,l.algorithm||l.fingerprint,n(i,`system.value.reported`)),detail:Y(i,l.storage,n(i,`system.hardening.identityStorage`))}),(0,L.jsx)(Q,{title:n(i,`system.hardening.permissions`),status:n(i,u.destructive_restore_requires_confirmation===!1?`system.value.reviewRequired`:`system.value.guarded`),detail:n(i,`system.hardening.permissionsDetail`)})]})]})}function oe({data:r}){let i=t(e=>e.language),a=e(r.cards)?r.cards:{},o=e(r.severity_counts)?r.severity_counts:{};return(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsx)(y,{stats:[{label:n(i,`system.security.eventsToday`),value:a.events_today||0},{label:n(i,`system.security.highRisk`),value:a.high_risk_events||o.high||0},{label:n(i,`system.security.review`),value:a.review_required||0},{label:n(i,`system.security.riskRate`),value:r.risk_rate||0}]}),(0,L.jsx)(E,{value:{severity_counts:o,sensitive_fields:r.field_counts||{}}})]})}function se(){let e=t(e=>e.mode),r=t(e=>e.language),i=u({queryKey:[`adminSummary`],queryFn:a.adminSummary}),o=u({queryKey:[`adminUsers`],queryFn:a.adminUsers}),s=u({queryKey:[`adminAudit`],queryFn:()=>a.adminAudit()}),c=u({queryKey:[`adminRoles`],queryFn:a.adminRoles}),l=u({queryKey:[`adminPolicies`],queryFn:a.adminPolicies}),d=u({queryKey:[`adminProductHardening`],queryFn:a.adminProductHardening}),f=u({queryKey:[`adminSecurity`],queryFn:a.adminSecurity}),m=u({queryKey:[`vpcStatus`],queryFn:a.vpcStatus});return e===`admin`?(0,L.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-2`,children:[(0,L.jsx)(x,{title:n(r,`system.admin.summary`),result:i.data,children:e=>(0,L.jsx)(p,{data:e})}),(0,L.jsx)(x,{title:n(r,`system.admin.users`),result:o.data,children:e=>(0,L.jsx)(v,{items:e,titleKey:`email`,metaKey:`role`})}),(0,L.jsx)(x,{title:n(r,`system.admin.audit`),result:s.data,children:e=>(0,L.jsx)(v,{items:e.recent_events||e,titleKey:`act`,metaKey:`sev`})}),(0,L.jsx)(x,{title:n(r,`system.admin.roles`),result:c.data,children:e=>(0,L.jsx)(v,{items:e.roles||e,titleKey:`role`,metaKey:`members`})}),(0,L.jsx)(x,{title:n(r,`system.admin.policies`),result:l.data,children:e=>(0,L.jsx)(v,{items:e.policies||e,titleKey:`label`,metaKey:`enforced`})}),(0,L.jsx)(x,{title:n(r,`system.admin.hardening`),result:d.data,children:e=>(0,L.jsx)($,{data:e})}),(0,L.jsx)(x,{title:n(r,`system.admin.security`),result:f.data,children:e=>(0,L.jsx)(oe,{data:e})}),(0,L.jsx)(x,{title:n(r,`system.admin.vpc`),result:m.data,className:`xl:col-span-2`,children:e=>(0,L.jsxs)(`div`,{className:`space-y-2`,children:[(0,L.jsx)(D,{variant:`muted`,children:n(r,`system.admin.communityUnavailable`)}),(0,L.jsx)(E,{value:e})]})})]}):(0,L.jsx)(w,{title:n(r,`system.admin.controls`),detail:n(r,`system.admin.controlsDetail`),target:`admin`})}export{H as SystemPage};
@@ -1 +0,0 @@
1
- import{m as e}from"./utils-DYf7pqrR.js";e({ko:{"brain.level":`๋‹จ๊ณ„`,"brain.depth.1":`์ง€๊ธˆ ๊ธฐ์–ต`,"brain.depth.2":`์˜ค๋ž˜๋œ ๊ธฐ์–ต`,"brain.depth.3":`์ฃผ์ œ`,"brain.depth.4":`๊ด€๊ณ„`,"brain.depth.5":`์ „์ฒด ์ง€์‹ ๊ทธ๋ž˜ํ”„`,"brain.depthTitle.1":`๊นŠ์ด 1: ํ˜„์žฌ ๋งฅ๋ฝ`,"brain.depthLabel.1":`์‚ด์•„์žˆ๋Š” Brain`,"brain.depthLabel.2":`๊ธฐ์–ต ๊ณ„์ธต`,"brain.depthLabel.3":`์ง€์‹ ๊ณ„์ธต`,"brain.depthLabel.4":`๊ด€๊ณ„ ๊ณ„์ธต`,"brain.depthLabel.5":`์ง€์‹ ๊ทธ๋ž˜ํ”„`,"brain.view.memories":`๊ธฐ์–ต ๋ณด๊ธฐ`,"brain.view.topics":`์ฃผ์ œ ๋ณด๊ธฐ`,"brain.view.relationships":`๊ด€๊ณ„ ๋ณด๊ธฐ`,"brain.view.graph":`๊ทธ๋ž˜ํ”„๋กœ ๋ณด๊ธฐ`,"brain.surface":`๋Œ์•„๊ฐ€๊ธฐ`,"brain.aria.home":`Lattice Brain`,"brain.aria.exploration":`Brain ํƒ์ƒ‰`,"brain.aria.quickViews":`Brain ๋น ๋ฅธ ๋ณด๊ธฐ`,"brain.depthRail.aria":`Brain ๊นŠ์ด ์ง„ํ–‰ ์ƒํƒœ`,"brain.aria.conversation":`Brain๊ณผ์˜ ๋Œ€ํ™”`,"brain.aria.ownership":`Brain ์†Œ์œ  ๋ณด์žฅ`,"brain.aria.actions":`Brain ์ฃผ์š” ์ž‘์—…`,"brain.aria.starterPrompts":`์‹œ์ž‘ ํ”„๋กฌํ”„ํŠธ`,"brain.aria.overview":`Brain ํ•œ๋ˆˆ์— ๋ณด๊ธฐ`,"brain.aria.graph":`์ง€์‹ ๊ทธ๋ž˜ํ”„`,"brain.edition":`์ •์‹ ์ œํ’ˆ`,"brain.edition.tip":`Lattice AI {version} โ€” ํ•œ๋ˆˆ์— ๋ฐ”๋กœ ์“ฐ๋Š” ๋””์ง€ํ„ธ ๋ธŒ๋ ˆ์ธ`,"brain.local":`๋กœ์ปฌ ์šฐ์„ `,"brain.portable":`์ด๋™ ๊ฐ€๋Šฅ`,"brain.private":`๊ฐœ์ธ ์†Œ์œ `,"brain.admin":`๊ด€๋ฆฌ์ž ์ฝ˜์†”`,"brain.command.aria":`์ œํ’ˆ ์ƒํƒœ์™€ ๋‹ค์Œ ํ–‰๋™`,"brain.command.kicker":`์ œํ’ˆ ์ƒํƒœํŒ`,"brain.command.title":`์ง€๊ธˆ ๋ฐ”๋กœ ์“ธ ์ˆ˜ ์žˆ๋Š” Brain`,"brain.command.score":`์ œํ’ˆ ์ค€๋น„๋„`,"brain.command.next":`๋‹ค์Œ ํ–‰๋™`,"brain.command.next.empty":`์ฒซ ์ž๋ฃŒ๋ฅผ ๋„ฃ๊ณ  ๋ฐ”๋กœ ์งˆ๋ฌธํ•˜์„ธ์š”.`,"brain.command.next.forming":`์ฃผ์ œ๋ฅผ ์—ด์–ด ๊ธฐ์–ต์ด ์–ด๋–ป๊ฒŒ ๋ฌถ์ด๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.`,"brain.command.next.alive":`๊ทผ๊ฑฐ๋ฅผ ํ™•์ธํ•˜๊ณ  ํ•„์š”ํ•˜๋ฉด ๋ชจ๋ธ์„ ๋ฐ”๊ฟ” ๋ณด์„ธ์š”.`,"brain.command.metrics":`Brain ์ œํ’ˆ ์ง€ํ‘œ`,"brain.command.metric.memories":`๊ธฐ์–ต {count}๊ฐœ`,"brain.command.metric.topics":`์ฃผ์ œ {count}๊ฐœ`,"brain.command.metric.sources":`์ •์ƒ ์ถœ์ฒ˜ {count}๊ฐœ`,"brain.command.metric.proof":`๊ทผ๊ฑฐ {count}๊ฐœ`,"brain.command.source.empty":`์•„์ง ์ˆ˜์ง‘ ์ „`,"brain.command.action.add":`์ž๋ฃŒ ๋„ฃ๊ธฐ`,"brain.command.action.find":`์ฃผ์ œ ํ™•์ธ`,"brain.command.action.find.detail":`๊ธฐ์–ต์ด ๋ฌถ์ธ ๊ตฌ์กฐ ๋ณด๊ธฐ`,"brain.command.action.proof":`๊ทผ๊ฑฐ ํ™•์ธ`,"brain.command.action.own":`์†Œ์œ ๊ถŒ ๊ด€๋ฆฌ`,"brain.command.action.own.detail":`๋ฐฑ์—…, ๋ณต์›, ์„ค์ •`,"brain.command.signal.local":`๋กœ์ปฌ ์šฐ์„ `,"brain.command.signal.private":`๋ช…์‹œ ๋™์˜`,"brain.command.signal.portable":`๋ฐฑ์—… ๊ฐ€๋Šฅ`,"brain.chatHome.aria":`Brain Chat Home`,"brain.chatHome.contextAria":`Brain ์ƒํƒœ์™€ ์ž๋ฃŒ ํŒจ๋„`,"brain.chatHome.headerLine":`ํ•„์š”ํ•œ ์ผ๋ถ€ํ„ฐ ๋ฐ”๋กœ ์‹œ์ž‘ํ•˜์„ธ์š”.`,"brain.chatHome.kicker":`Lattice Brain`,"brain.chatHome.title":`๋ฌด์—‡์„ ํ•ด๋ณผ๊นŒ์š”?`,"brain.chatHome.body":`์งˆ๋ฌธํ•˜๊ฑฐ๋‚˜ ์ž๋ฃŒ๋ฅผ ๋„ฃ์œผ๋ฉด Brain์ด ๊ธฐ์–ตํ•˜๊ณ  ์—ฐ๊ฒฐํ•ด ๋‹ค์Œ ๋‹ต๋ณ€์— ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.`,"brain.chatHome.utility":`Brain ์„ธ๋ถ€ ์ •๋ณด`,"brain.chatHome.utility.basic":`์ž๋ฃŒ์™€ Brain ๊ด€๋ฆฌ`,"brain.files.title":`ํŒŒ์ผ์„ ๋งŒ๋“ค์—ˆ์–ด์š”`,"brain.files.download":`๋‹ค์šด๋กœ๋“œ`,"brain.files.downloading":`๋‚ด๋ ค๋ฐ›๋Š” ์ค‘โ€ฆ`,"brain.files.downloadError":`๋‹ค์šด๋กœ๋“œํ•˜์ง€ ๋ชปํ–ˆ์–ด์š”: {reason}`,"brain.files.hint":`์ด ์ปดํ“จํ„ฐ์˜ Lattice ์ž‘์—… ํด๋”์— ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅ๋˜์–ด ์žˆ์–ด์š”.`,"brain.files.repaired":`์ž๋™ ๋ณด์ •๋จ โ€” ๋‚ด์šฉ์„ ํ•œ๋ฒˆ ํ™•์ธํ•ด ์ฃผ์„ธ์š”`,"brain.agent.needsReview":`์™„๋ฃŒ๋ฅผ ๊ฒ€์ฆํ•˜์ง€ ๋ชปํ–ˆ์–ด์š” โ€” ๊ฒฐ๊ณผ๋ฅผ ์ง์ ‘ ํ™•์ธํ•ด ์ฃผ์„ธ์š”.`,"brain.agent.failed":`์ž‘์—…์„ ๋๊นŒ์ง€ ์™„๋ฃŒํ•˜์ง€ ๋ชปํ–ˆ์–ด์š”. ๋‹ค์‹œ ์‹œ๋„ํ•ด ์ฃผ์„ธ์š”.`,"brain.code.copy":`๋ณต์‚ฌ`,"brain.code.copied":`๋ณต์‚ฌํ–ˆ์–ด์š”`,"brain.code.save":`ํŒŒ์ผ๋กœ ์ €์žฅ`,"brain.code.saving":`์ €์žฅ ์ค‘โ€ฆ`,"brain.code.saveError":`ํŒŒ์ผ๋กœ ์ €์žฅํ•˜์ง€ ๋ชปํ–ˆ์–ด์š”: {reason}`,"brain.firstScreen.aria":`Brain ์ฒซ ํ™”๋ฉด`,"brain.home.kicker":`๋‚ด ๊ธฐ์–ต์ด ์ž๋ผ๋Š” ๊ณณ`,"brain.home.insights":`Brain์ด ์ •๋ฆฌํ•œ ๋‚ด์šฉ`,"brain.home.shelf.close":`Brain ๋ณด์กฐ ํŒจ๋„ ๋‹ซ๊ธฐ`,"brain.home.insights.detail":`๊ธฐ์–ต, ์—ฐ๊ฒฐ, ๋‹ค์Œ ํ–‰๋™์„ ํ•„์š”ํ•  ๋•Œ ํ™•์ธํ•˜์„ธ์š”`,"brain.firstScreen.title":`๋งํ•˜๊ณ , ๋„ฃ์œผ๋ฉด, Brain์ด ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.`,"brain.firstScreen.body":`๋Œ€ํ™”์™€ ์ปดํ“จํ„ฐ์˜ ํŒŒ์ผยทํด๋”๊ฐ€ ๊ธฐ์–ต์œผ๋กœ ๋“ค์–ด์˜ค๊ณ , ์‹ค์ œ ์ง€์‹ ๊ทธ๋ž˜ํ”„์™€ ๋‹ค์Œ ์ž๋™ํ™”๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.`,"brain.firstScreen.state.quiet":`์•„์ง ๊ธฐ์–ตํ•  ๋‚ด์šฉ์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์–ด์š”`,"brain.firstScreen.state.forming":`์ƒˆ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜๊ณ  ์žˆ์–ด์š”`,"brain.firstScreen.state.alive":`๊ธฐ์–ต์„ ์‚ฌ์šฉํ•  ์ค€๋น„๊ฐ€ ๋์–ด์š”`,"brain.firstScreen.readiness":`Brain ์ค€๋น„๋„ {score}%`,"brain.firstScreen.memoryAria":`Brain์ด ๊ธฐ์–ตํ•˜๊ณ  ์—ฐ๊ฒฐํ•œ ๋‚ด์šฉ`,"brain.firstScreen.memory":`๋ฐฉ๊ธˆ ๊ธฐ์–ตํ•œ ๊ฒƒ`,"brain.firstScreen.memory.empty":`์•„์ง ์—†์Šต๋‹ˆ๋‹ค. ์ฒซ ์ƒ๊ฐ์ด๋‚˜ ๋ฌธ์„œ๋ฅผ ๋„ฃ์–ด๋ณด์„ธ์š”.`,"brain.firstScreen.memory.with":`{title}`,"brain.firstScreen.connection":`์—ฐ๊ฒฐ ์ค‘์ธ ์ฃผ์ œ`,"brain.firstScreen.concept.empty":`์ž๋ฃŒ๊ฐ€ ๋“ค์–ด์˜ค๋ฉด ๊ด€๋ จ ์ฃผ์ œ๊ฐ€ ์—ฌ๊ธฐ์— ๋ณด์ž…๋‹ˆ๋‹ค.`,"brain.firstScreen.concept.with":`{title}`,"brain.firstScreen.next":`๋‹ค์Œ ํ–‰๋™`,"brain.firstScreen.next.source":`๋ฌธ์„œ๋‚˜ ๋ฉ”๋ชจ๋ฅผ ๋„ฃ์œผ๋ฉด Brain์ด ๋ฐ”๋กœ ๊ธฐ์–ต์„ ๋งŒ๋“ค๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.`,"brain.firstScreen.next.ask":`์ฒซ ์งˆ๋ฌธ์„ ๋˜์ง€๋ฉด Brain์ด ๊ฐ€์ง„ ๊ธฐ์–ต์„ ๊ธฐ์ค€์œผ๋กœ ๋‹ตํ•ฉ๋‹ˆ๋‹ค.`,"brain.firstScreen.next.graph":`๊ธฐ์–ต ๊ทธ๋ž˜ํ”„์—์„œ Brain์ด ์—ฐ๊ฒฐํ•œ ๋‚ด์šฉ์„ ํ™•์ธํ•ด๋ณด์„ธ์š”.`,"brain.firstScreen.actions":`Brain ์ฒซ ํ™”๋ฉด ์ฃผ์š” ํ–‰๋™`,"brain.firstScreen.action.talk":`Brain์—๊ฒŒ ๋งํ•˜๊ธฐ`,"brain.firstScreen.action.source":`์ž๋ฃŒ ๋„ฃ๊ธฐ`,"brain.firstScreen.action.graph":`๊ธฐ์–ต ๊ทธ๋ž˜ํ”„ ๋ณด๊ธฐ`,"brain.living.aria":`์‚ด์•„ ์žˆ๋Š” ๋‚˜์˜ Brain`,"brain.living.open":`Brain์˜ ์‹ค์ œ ์ง€์‹ ๊ทธ๋ž˜ํ”„ ์—ด๊ธฐ`,"brain.living.graph":`๋‚ด ์ง€์‹ ๊ทธ๋ž˜ํ”„ ์ค‘์‹ฌ`,"brain.living.depth":`Brain ๊นŠ์ด {depth}`,"brain.living.state.idle":`๊ธฐ์–ต์„ ์ง€ํ‚ค๋Š” ์ค‘`,"brain.living.state.listening":`๋“ฃ๋Š” ์ค‘`,"brain.living.state.thinking":`ํ•จ๊ป˜ ์ƒ๊ฐํ•˜๋Š” ์ค‘`,"brain.living.state.recalling":`๊ธฐ์–ต์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘`,"brain.living.state.synthesizing":`์—ฐ๊ฒฐ์„ ๋งŒ๋“œ๋Š” ์ค‘`,"brain.living.state.planning":`๊ณ„ํšํ•˜๋Š” ์ค‘`,"brain.living.state.acting":`์‹คํ–‰ํ•˜๋Š” ์ค‘`,"brain.living.state.resting":`๊ณ์—์„œ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ค‘`,"brain.flow.sources.aria":`Brain์œผ๋กœ ๋“ค์–ด์˜ค๋Š” ์ง€์‹ ์ถœ์ฒ˜`,"brain.flow.sources":`๋“ค์–ด์˜ค๋Š” ์ง€์‹`,"brain.flow.vital":`Brain ์ƒ๋ช… ์‹ ํ˜ธ`,"brain.flow.memory":`๊ธฐ์–ตํ•˜๋Š” Brain`,"brain.flow.graph":`์‹ค์ œ ์ง€์‹ ๊ทธ๋ž˜ํ”„`,"brain.flow.graph.aria":`์‹ค์ œ ์ฃผ์ œ {concepts}๊ฐœ์™€ ๊ด€๊ณ„ {relationships}๊ฐœ๋กœ ๊ตฌ์„ฑ๋œ ์ง€์‹ ๊ทธ๋ž˜ํ”„`,"brain.flow.graph.empty":`์ฒซ ๋Œ€ํ™”๋‚˜ ์ž๋ฃŒ๊ฐ€ ๋“ค์–ด์˜ค๋ฉด ์‹ค์ œ ์ฃผ์ œ์™€ ์—ฐ๊ฒฐ์ด ์—ฌ๊ธฐ์—์„œ ์ƒ๊ฒจ๋‚ฉ๋‹ˆ๋‹ค.`,"brain.flow.graph.empty.short":`์ฒซ ์—ฐ๊ฒฐ์„ ๋งŒ๋“œ๋Š” ์ค‘`,"brain.flow.node.aria":`{type} ์ฃผ์ œ {label}๋ฅผ ์ง€์‹ ๊ทธ๋ž˜ํ”„์—์„œ ์—ด๊ธฐ`,"brain.flow.source.empty":`์ฒซ ๋Œ€ํ™”๋‚˜ ์ž๋ฃŒ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ค‘`,"brain.flow.status.emerged":`์ƒˆ ๊ธฐ์–ต {memories}๊ฐœ์™€ ์ฃผ์ œ {entities}๊ฐœ๊ฐ€ ์‹ค์ œ Brain์— ์—ฐ๊ฒฐ๋์Šต๋‹ˆ๋‹ค.`,"brain.flow.status.ready":`{focus} ์ฃผ๋ณ€์˜ ๊ธฐ์–ต๊ณผ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.flow.status.empty":`์งˆ๋ฌธํ•˜๊ฑฐ๋‚˜ ์ž๋ฃŒ๋ฅผ ๋„ฃ์œผ๋ฉด Brain์ด ๊ธฐ์–ต๊ณผ ์—ฐ๊ฒฐ์„ ๋งŒ๋“ค๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.`,"brain.flow.path.aria":`์ง€์‹์ด ๊ธฐ์–ต๊ณผ ์ž๋™ํ™”๋กœ ์ด์–ด์ง€๋Š” ํ๋ฆ„`,"brain.flow.path.input":`์ž…๋ ฅ`,"brain.flow.path.waiting":`๋Œ€๊ธฐ ์ค‘`,"brain.flow.path.memory":`๊ธฐ์–ต`,"brain.flow.path.memoryCount":`์‹ค์ œ ๊ธฐ์–ต {count}๊ฐœ`,"brain.flow.path.connections":`์—ฐ๊ฒฐ`,"brain.flow.path.graphCount":`์ฃผ์ œ {concepts} ยท ๊ด€๊ณ„ {relationships}`,"brain.flow.path.automation":`๋‹ค์Œ ํ–‰๋™`,"brain.flow.path.actionCount":`๊ธฐ์–ต ๊ธฐ๋ฐ˜ ์ œ์•ˆ {count}๊ฐœ`,"brain.flow.conversation":`์ด๋ฒˆ ๋Œ€ํ™”`,"brain.flow.conversation.ready":`๋Œ€ํ™”๋ฅผ Brain ๊ธฐ์–ต์œผ๋กœ ๋ณด๊ด€`,"brain.flow.relationships":`์‹ค์ œ ๊ด€๊ณ„ {count}๊ฐœ`,"brain.automation.kicker":`๊ธฐ์–ต์—์„œ ์‹คํ–‰์œผ๋กœ`,"brain.automation.title":`์ด ๊ธฐ์–ต์œผ๋กœ Brain์ด ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ`,"brain.automation.more":`๋ชจ๋“  ๊ธฐ์–ต ๊ธฐ๋ฐ˜ ํ–‰๋™ ๋ณด๊ธฐ`,"brain.automation.close":`๊ธฐ์–ต ๊ธฐ๋ฐ˜ ํ–‰๋™ ๋‹ซ๊ธฐ`,"brain.automation.body":`ํ˜„์žฌ ๊ธฐ์–ต์˜ ์ดˆ์ ๊ณผ ๊ทผ๊ฑฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋‹ค์Œ ์งˆ๋ฌธ, ๊ฒ€ํ† , Agent ์‹คํ–‰์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.`,"brain.automation.basedOn":`์ด ๊ธฐ์–ต์„ ๊ทผ๊ฑฐ๋กœ ์ถ”์ฒœ`,"brain.automation.empty":`๊ธฐ์–ต์ด ๋” ์ƒ๊ธฐ๋ฉด Brain์ด ๊ทผ๊ฑฐ๊ฐ€ ์žˆ๋Š” ์ž๋™ํ™”๋ฅผ ์ด๊ณณ์— ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.`,"brain.automation.guard":`์ถ”์ฒœ์€ ๊ธฐ์–ต์„ ๊ทผ๊ฑฐ๋กœ ๋งŒ๋“ค๊ณ , ์‹คํ–‰์€ ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•œ ๋’ค ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.`,"brain.automation.intent.ask":`๊ธฐ์–ต์œผ๋กœ ์งˆ๋ฌธ`,"brain.automation.intent.delegate":`Agent ์‹คํ–‰`,"brain.automation.intent.review":`๊ฒ€ํ† ํ•จ์— ์ดˆ์•ˆ`,"brain.automation.intent.route":`๊ทธ๋ž˜ํ”„์—์„œ ํ™•์ธ`,"brain.brief.aria":`Brain ๋ธŒ๋ฆฌํ•‘`,"brain.brief.kicker":`ํ•œ๋ˆˆ์— ๋ณด๊ธฐ`,"brain.brief.headline.quiet":`์•„์ง ๋น„์–ด ์žˆ์ง€๋งŒ ๋ฐ”๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค`,"brain.brief.headline.forming":`์ƒˆ ๊ธฐ์–ต์ด ์ฃผ์ œ๋กœ ๋ฌถ์ด๋Š” ์ค‘์ž…๋‹ˆ๋‹ค`,"brain.brief.headline.alive":`์ง€๊ธˆ ์ฐธ๊ณ ํ•  ๋งŒํ•œ ๊ธฐ์–ต์ด ์žˆ์Šต๋‹ˆ๋‹ค`,"brain.brief.body.quiet":`์ฒซ ์ž๋ฃŒ๋‚˜ ์งˆ๋ฌธ์„ ๋„ฃ์œผ๋ฉด ์ด ์ž๋ฆฌ์— ๋ฐฉ๊ธˆ ๋ฐฐ์šด ๋‚ด์šฉ๊ณผ ๋‹ค์Œ ํ–‰๋™์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.`,"brain.brief.body.forming":`{focus}๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ๊ธฐ์–ต์„ ์—ฐ๊ฒฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.brief.body.alive":`{focus}๋ฅผ ๋ฐ”๋กœ ๋ฌผ์–ด๋ณด๊ฑฐ๋‚˜ ๊ทธ๋ž˜ํ”„์—์„œ ์—ฐ๊ฒฐ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.brief.focus":`์ง€๊ธˆ ๋ณผ ๊ฒƒ`,"brain.brief.focus.empty":`์•„์ง ์ฒซ ๊ธฐ์–ต์ด ์—†์Šต๋‹ˆ๋‹ค`,"brain.brief.focus.empty.detail":`๋ฌธ์„œ, ๋…ธํŠธ, ์›นํŽ˜์ด์ง€, ์งˆ๋ฌธ ์ค‘ ํ•˜๋‚˜๋กœ ์‹œ์ž‘ํ•˜์„ธ์š”.`,"brain.brief.evidence.aria":`Brain ๋ธŒ๋ฆฌํ•‘ ๊ทผ๊ฑฐ`,"brain.brief.evidence.durable":`์ €์žฅ ๊ทผ๊ฑฐ`,"brain.brief.evidence.durable.detail":`๋กœ์ปฌ์— ๋‚จ์•„ ๋ชจ๋ธ์„ ๋ฐ”๊ฟ”๋„ ์œ ์ง€๋˜๋Š” ๊ธฐ์–ต ์ˆ˜`,"brain.brief.evidence.graph":`๊ทธ๋ž˜ํ”„ ์ฃผ์ œ`,"brain.brief.evidence.graph.detail":`์ง€์‹ ๊ทธ๋ž˜ํ”„์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•œ ์ฃผ์ œ ์ˆ˜`,"brain.brief.evidence.sources":`์ •์ƒ ์ถœ์ฒ˜`,"brain.brief.evidence.sources.detail":`์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ธฐ์–ต ๊ณ„์ธต ์ˆ˜`,"brain.brief.actions":`Brain ๋ธŒ๋ฆฌํ•‘ ๋‹ค์Œ ํ–‰๋™`,"brain.brief.action.add":`์ž๋ฃŒ ๋„ฃ๊ธฐ`,"brain.brief.action.add.detail":`ํŒŒ์ผ, ํด๋”, ๋…ธํŠธ, ์›น`,"brain.brief.action.ask":`๋ฐ”๋กœ ์งˆ๋ฌธ`,"brain.brief.action.ask.detail":`์ž…๋ ฅ์ฐฝ์œผ๋กœ ์ด๋™`,"brain.brief.action.topics":`์—ฐ๊ฒฐ ๋ณด๊ธฐ`,"brain.brief.action.topics.detail":`๊ทธ๋ž˜ํ”„์—์„œ ์ฃผ์ œ ํ™•์ธ`,"brain.brief.action.verify":`๊ทผ๊ฑฐ ํ™•์ธ`,"brain.brief.action.verify.detail":`๋ชจ๋ธ์„ ๋ฐ”๊ฟ”๋„ ์œ ์ง€๋˜๋Š”์ง€ ๋ณด๊ธฐ`,"brain.brief.action.backup":`๋ฐฑ์—… ๊ด€๋ฆฌ`,"brain.brief.action.backup.detail":`Brain์„ ๋‚ด๋ณด๋‚ด๊ณ  ๋ณด๊ด€`,"brain.suggestions.aria":`Brain ์ถ”์ฒœ ์งˆ๋ฌธ`,"brain.suggestions.title":`์ด๋ ‡๊ฒŒ ์‹œ์ž‘ํ•ด ๋ณด์„ธ์š”`,"brain.proactive.aria":`Brain ์ถ”์ฒœ ์‹คํ–‰`,"brain.proactive.title":`Brain์ด ๋จผ์ € ์ถ”์ฒœํ•˜๋Š” ์‹คํ–‰`,"brain.proactive.addSource.label":`์ž๋ฃŒ๋ถ€ํ„ฐ ๋„ฃ๊ธฐ`,"brain.proactive.addSource.detail":`Brain์ด ๊ธฐ์–ตํ•  ์ฒซ ์ž๋ฃŒ๋ฅผ ์ถ”๊ฐ€`,"brain.proactive.seed.label":`๊ธฐ์–ต ์‹œ๋“œ ๋งŒ๋“ค๊ธฐ`,"brain.proactive.seed.detail":`๋ฌด์—‡์„ ๊ธฐ์–ตํ•ด์•ผ ํ• ์ง€ ๋Œ€ํ™”๋กœ ์ •๋ฆฌ`,"brain.proactive.evidence.label":`๊ทผ๊ฑฐ ๊ฒ€ํ† `,"brain.proactive.evidence.detail":`ํ™•์‹คํ•œ ์‚ฌ์‹ค๊ณผ ์•ฝํ•œ ์‹ ํ˜ธ ๋ถ„๋ฆฌ`,"brain.proactive.delegate.label":`Agent์—๊ฒŒ ๋งก๊ธฐ๊ธฐ`,"brain.proactive.delegate.detail":`ํ˜„์žฌ ์ดˆ์ ์„ ์‹คํ–‰ ๊ณ„ํš์œผ๋กœ ์œ„์ž„`,"brain.proactive.review.label":`๊ฒ€ํ†  ์ž‘์—…์œผ๋กœ ์ €์žฅ`,"brain.proactive.review.detail":`Review Center์—์„œ ์Šน์ธํ•  ์ดˆ์•ˆ ์ƒ์„ฑ`,"brain.proactive.map.label":`์—ฐ๊ฒฐ ์ง€๋„ ๋ณด๊ธฐ`,"brain.proactive.map.detail":`๊ด€๋ จ ์ฃผ์ œ๋ฅผ ๊ทธ๋ž˜ํ”„์—์„œ ํ™•์ธ`,"brain.proactive.weekly.label":`์ฃผ๊ฐ„ Brain ์ ๊ฒ€`,"brain.proactive.weekly.detail":`๋ณ€ํ™”/๊ฒฐ์ •/์œ„์ž„ ํ›„๋ณด๋ฅผ ๊ฒ€ํ†  ์ดˆ์•ˆ์œผ๋กœ`,"brain.proactive.trail.aria":`Brain ์ถ”์ฒœ ์‹คํ–‰ ๊ธฐ๋ก`,"brain.proactive.trail.title":`์ตœ๊ทผ ์‹คํ–‰`,"brain.proactive.status.running":`์ง„ํ–‰ ์ค‘`,"brain.proactive.status.completed":`์™„๋ฃŒ`,"brain.proactive.status.failed":`์‹คํŒจ`,"brain.proactive.intent.ask":`Brain ์งˆ๋ฌธ`,"brain.proactive.intent.delegate":`Agent ์œ„์ž„`,"brain.proactive.intent.review":`Review ์ดˆ์•ˆ`,"brain.proactive.intent.route":`ํ™”๋ฉด ์ด๋™`,"brain.suggestion.start.label":`์‹œ์ž‘ ๊ฐ€์ด๋“œ`,"brain.suggestion.start.detail":`์ฒซ ๊ธฐ์–ต์„ ๋งŒ๋“ค ์ž๋ฃŒ์™€ ์งˆ๋ฌธ ์ถ”์ฒœ`,"brain.suggestion.start.prompt":`๋‚ด Brain์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ์ง€๊ธˆ ๋„ฃ์œผ๋ฉด ์ข‹์€ ์ž๋ฃŒ์™€ ์ฒซ ์งˆ๋ฌธ์„ ์ถ”์ฒœํ•ด์ค˜.`,"brain.suggestion.context.label":`์ž๋ฃŒ ์ค€๋น„`,"brain.suggestion.context.detail":`์ง€๊ธˆ ๋„ฃ์„ ๋งŒํ•œ ๋งฅ๋ฝ ์ •๋ฆฌ`,"brain.suggestion.context.prompt":`๋‚ด๊ฐ€ ์ง€๊ธˆ Brain์— ๋„ฃ์œผ๋ฉด ๊ฐ€์žฅ ๋„์›€์ด ๋  ๋ฌธ์„œ, ๋ฉ”๋ชจ, ์›นํŽ˜์ด์ง€๋ฅผ ์šฐ์„ ์ˆœ์œ„๋กœ ์ •๋ฆฌํ•ด์ค˜.`,"brain.suggestion.focus.label":`์ดˆ์  ์ •๋ฆฌ`,"brain.suggestion.focus.detail":`ํ˜„์žฌ ๊ธฐ์–ต์—์„œ ๋‹ค์Œ ํ–‰๋™ ๋ฝ‘๊ธฐ`,"brain.suggestion.focus.prompt":`{focus}๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ง€๊ธˆ ํ™•์ธํ•ด์•ผ ํ•  ํ•ต์‹ฌ ๊ฒฐ์ •๊ณผ ๋‹ค์Œ ํ–‰๋™์„ ์ •๋ฆฌํ•ด์ค˜.`,"brain.suggestion.evidence.label":`๊ทผ๊ฑฐ ํ™•์ธ`,"brain.suggestion.evidence.detail":`Brain์ด ๊ธฐ์–ตํ•œ ๊ทผ๊ฑฐ๋กœ ๋‹ต๋ณ€`,"brain.suggestion.evidence.prompt":`{focus}์— ๋Œ€ํ•ด Brain์ด ๊ฐ€์ง„ ๊ทผ๊ฑฐ๋ฅผ ์ธ์šฉํ•ด์„œ ๋‹ตํ•ด์ค˜.`,"brain.suggestion.graph.label":`์—ฐ๊ฒฐ ํƒ์ƒ‰`,"brain.suggestion.graph.detail":`๊ทธ๋ž˜ํ”„์— ๋ฌถ์ธ ๊ด€๋ จ ์ฃผ์ œ ๋ณด๊ธฐ`,"brain.suggestion.graph.prompt":`{focus}์™€ ์—ฐ๊ฒฐ๋œ ์ฃผ์ œ๋ฅผ ๊ทผ๊ฑฐ์™€ ํ•จ๊ป˜ ์„ค๋ช…ํ•ด์ค˜.`,"brain.suggestion.history.label":`ํ›„์† ์ž‘์—…`,"brain.suggestion.history.detail":`์ตœ๊ทผ ๋Œ€ํ™”์—์„œ ์ด์–ด๊ฐˆ ์ผ ์ฐพ๊ธฐ`,"brain.suggestion.history.prompt":`{focus}์™€ ๊ด€๋ จํ•ด์„œ ์ตœ๊ทผ ๋Œ€ํ™”์—์„œ ๋†“์นœ ํ›„์† ์ž‘์—…์„ ๋ฝ‘์•„์ค˜.`,"brain.tab.conversation":`๋Œ€ํ™”`,"brain.tab.memory":`๋‚ด ์ž๋ฃŒ`,"brain.tab.knowledge":`์ฐพ๊ธฐ`,"brain.tab.relationships":`๊ด€๊ณ„`,"brain.tab.graph":`์—ฐ๊ฒฐ ์ง€๋„`,"brain.tab.portability":`๋Œ๋ณด๊ธฐ`,"brain.headline.conversation":`Brain๊ณผ ๋Œ€ํ™”ํ•˜์„ธ์š”.`,"brain.headline.memory":`์ €์žฅ๋œ ๊ธฐ์–ต๊ณผ ์ถœ์ฒ˜๋ฅผ ํ™•์ธํ•˜์„ธ์š”.`,"brain.headline.knowledge":`๊ธฐ์–ต์—์„œ ์ฐพ์•„๋ณด์„ธ์š”.`,"brain.headline.relationships":`๊ด€๊ณ„ โ€” ์™œ ๊ทธ๋Ÿฐ์ง€ ์•Œ ๋•Œ.`,"brain.headline.graph":`๊ธฐ์–ต ์‚ฌ์ด์˜ ์—ฐ๊ฒฐ์„ ์‚ดํŽด๋ณด์„ธ์š”.`,"brain.headline.portability":`Brain ๋Œ๋ณด๊ธฐ.`,"brain.search.title":`๊ธฐ์–ต ์ฐพ๊ธฐ`,"brain.search.detail":`๋Œ€ํ™”์™€ ์ถ”๊ฐ€ํ•œ ์ž๋ฃŒ์—์„œ ํ•„์š”ํ•œ ๋‚ด์šฉ์„ ์ฐพ์Šต๋‹ˆ๋‹ค.`,"brain.search.placeholder":`์‚ฌ๋žŒ, ๋ฌธ์„œ, ์ฃผ์ œ๋กœ ๊ฒ€์ƒ‰`,"brain.search.cta":`์ฐพ๊ธฐ`,"brain.search.results":`๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ`,"brain.group.knowledge":`์ง€์‹`,"brain.group.source":`์ถœ์ฒ˜`,"brain.group.activity":`ํ™œ๋™`,"brain.group.memory":`๊ธฐ์–ต`,"brain.group.people":`์‚ฌ๋žŒ`,"brain.group.system":`์‹œ์Šคํ…œ`,"brain.group.other":`๊ธฐํƒ€`,"graph.search.basic":`์ƒ๊ฐ, ํŒŒ์ผ, ์‚ฌ๋žŒ, ๋…ธํŠธ ๊ฒ€์ƒ‰โ€ฆ`,"graph.search.advanced":`๊ทธ๋ž˜ํ”„ ๋ผ๋ฒจ, ์œ ํ˜•, ์ถœ์ฒ˜ ๊ฒ€์ƒ‰โ€ฆ`,"graph.group.all":`๋ชจ๋“  ๋ฌถ์Œ`,"graph.labels.important":`์ค‘์š”ํ•œ ์ด๋ฆ„๋งŒ`,"graph.labels.all":`๋ชจ๋“  ์ด๋ฆ„`,"graph.labels.off":`์ด๋ฆ„ ์ˆจ๊ธฐ๊ธฐ`,"graph.fit":`ํ™”๋ฉด ๋งž์ถค`,"graph.canvas.aria":`์ง€์‹ ๊ทธ๋ž˜ํ”„ ์บ”๋ฒ„์Šค โ€” ํ™”์‚ดํ‘œ ํ‚ค๋กœ ํ•ญ๋ชฉ์„ ์ด๋™ํ•˜๊ณ  Enter๋กœ ์—ด์–ด์š”`,"graph.deep.title":`์—ฐ๊ฒฐ ์ง€๋„`,"graph.deep.summary":`์ €์žฅ๋œ {total}๊ฐœ ์ค‘์—์„œ ์ƒ๊ฐ {nodes}๊ฐœ์™€ ์—ฐ๊ฒฐ {edges}๊ฐœ๋ฅผ ๋ณด์—ฌ๋“œ๋ ค์š”.`,"graph.filtered":`{count}๊ฐœ ์ˆจ๊น€`,"graph.allInView":`๋ชจ๋‘ ๋ณด์ด๋Š” ์ค‘`,"graph.importance":`์ค‘์š”๋„`,"graph.clearFocus":`์„ ํƒ ํ•ด์ œ`,"graph.searchAll":`์ „์ฒด ๊ธฐ์–ต์—์„œ ์ฐพ๊ธฐ`,"graph.collapsed":`์ ‘ํž˜`,"graph.focus.title":`์ž์„ธํžˆ ๋ณด๊ธฐ`,"graph.focus.desc":`ํ•ญ๋ชฉ์„ ๋ˆ„๋ฅด๋ฉด ์™œ ์ค‘์š”ํ•œ์ง€ ์•Œ๋ ค๋“œ๋ ค์š”.`,"graph.importanceBadge":`์ค‘์š”๋„ {n}`,"graph.source.none":`์ถœ์ฒ˜ ๊ธฐ๋ก ์—†์Œ`,"graph.created.none":`์ €์žฅ ์‹œ๊ฐ ๊ธฐ๋ก ์—†์Œ`,"graph.copySource":`์ถœ์ฒ˜ ๋ณต์‚ฌ`,"graph.collapsedGroup":`์ ‘ํžŒ ๋ฌถ์Œ`,"graph.expandGroup":`๋ฌถ์Œ ํŽผ์น˜๊ธฐ`,"graph.nothingSelected.title":`์•„์ง ์„ ํƒํ•œ ํ•ญ๋ชฉ์ด ์—†์–ด์š”`,"graph.nothingSelected.detail":`๊ทธ๋ž˜ํ”„์—์„œ ํ•ญ๋ชฉ์ด๋‚˜ ๋ฌถ์Œ์„ ๋ˆŒ๋Ÿฌ ๋ณด์„ธ์š”.`,"graph.empty.title":`์•„์ง ์—ฐ๊ฒฐ๋œ ๊ธฐ์–ต์ด ์—†์–ด์š”`,"graph.empty.detail":`๋ฌธ์„œ, ๋…ธํŠธ, ํด๋”๋ฅผ ๋„ฃ์œผ๋ฉด ์ถœ์ฒ˜์™€ ํ•จ๊ป˜ ์—ฐ๊ฒฐ๋œ ๊ธฐ์–ต์ด ๋งŒ๋“ค์–ด์ ธ์š”.`,"graph.important.title":`์ค‘์š”ํ•œ ํ•ญ๋ชฉ`,"graph.important.desc":`์ง€๊ธˆ ๊ฐ€์žฅ ๋งŽ์ด ์—ฐ๊ฒฐ๋œ ํ•ญ๋ชฉ์ด์—์š”.`,"graph.advanced.title":`๊ด€๊ณ„ ์ž์„ธํžˆ ๋ณด๊ธฐ`,"graph.advanced.desc.basic":`์—ฐ๊ฒฐ์ด ์–ด๋–ป๊ฒŒ ์ด์–ด์ง€๋Š”์ง€ ์ž์„ธํžˆ ๋ณด๊ณ  ์‹ถ์„ ๋•Œ ์—ฌ์„ธ์š”.`,"graph.advanced.desc.other":`๊ด€๊ณ„, ์ถœ์ฒ˜, ๊ทธ๋ž˜ํ”„ ๊ตฌ์กฐ๋ฅผ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.`,"graph.minImportance.aria":`์ตœ์†Œ ๊ด€๊ณ„ ์ค‘์š”๋„`,"graph.coverage":`์ถœ์ฒ˜ ๋ฐ˜์˜๋ฅ `,"brain.action.add":`๋„ฃ๊ธฐ`,"brain.action.find":`์ฐพ๊ธฐ`,"brain.action.model":`๋ชจ๋ธ`,"brain.action.settings":`์„ค์ •`,"brain.empty.kicker":`์‹œ์ž‘ ์˜ˆ์‹œ`,"brain.empty.title":`์•„๋ž˜ ๋ฌธ์žฅ์„ ๋ˆŒ๋Ÿฌ ๋ฐ”๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.empty.body":`๋ฌธ์„œ๋ฅผ ๋„ฃ๊ณ  ์‹ถ์œผ๋ฉด ์ž…๋ ฅ์ฐฝ์˜ ๋ฌธ์„œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด์„ธ์š”.`,"brain.empty.trail.label":`์ฒซ Brain ํ๋ฆ„`,"brain.empty.trail.save":`1. ์ฒซ ๊ธฐ์–ต ์ €์žฅ`,"brain.empty.trail.recall":`2. Brain Home์—์„œ ํ™•์ธ`,"brain.empty.trail.backup":`3. ๋ฐฑ์—…์œผ๋กœ ์†Œ์œ `,"brain.home.line":`๋Œ€ํ™”ํ• ์ˆ˜๋ก ์„ ๋ช…ํ•ด์ง€๋Š”, ๋‚ด ๋กœ์ปฌ ์ง€์‹์˜ ์ค‘์‹ฌ`,"brain.prompt.remember":`๋‚ด ์ž๋ฃŒ์—์„œ ์ค‘์š”ํ•œ ๊ฒฐ์ •์„ ์ฐพ์•„์ค˜`,"brain.prompt.know":`์ด ๋ฌธ์„œ์˜ ํ•ต์‹ฌ๋งŒ ์ •๋ฆฌํ•ด์ค˜`,"brain.prompt.plan":`์ง€๊ธˆ ํ•ด์•ผ ํ•  ์ผ์„ ์šฐ์„ ์ˆœ์œ„๋กœ ์ •๋ฆฌํ•ด์ค˜`,"brain.placeholder":`์งˆ๋ฌธํ•˜๊ฑฐ๋‚˜, ์ž๋ฃŒ๋ฅผ ๋ถ™์—ฌ ๋„ฃ๊ฑฐ๋‚˜, ํ•  ์ผ์„ ์ ์–ด๋ณด์„ธ์š”`,"brain.composer.attachments":`์ž๋ฃŒ ์ฒจ๋ถ€`,"brain.composer.hint":`Enter๋กœ ๋ณด๋‚ด๊ธฐ ยท Shift+Enter๋กœ ์ค„๋ฐ”๊ฟˆ`,"brain.upload.cta":`ํŒŒ์ผ/๋ฌธ์„œ ๋„ฃ๊ธฐ`,"brain.upload.ctaShort":`๋ฌธ์„œ`,"brain.upload.uploading":`๋„ฃ๋Š” ์ค‘`,"brain.upload.hint":`์—…๋กœ๋“œํ•˜๋ฉด ์‹ค์ œ ๊ธฐ์–ต๊ณผ ๊ทธ๋ž˜ํ”„๋กœ ๋‹ค์‹œ ๋ณด์ž…๋‹ˆ๋‹ค.`,"brain.upload.pending":`{name}์„ Brain์— ๋„ฃ๋Š” ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.upload.saved":`{name}์ด Brain์— ์ €์žฅ๋์Šต๋‹ˆ๋‹ค.`,"brain.upload.failed":`๋ฌธ์„œ๋ฅผ ๋„ฃ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.ingest.aria":`Brain์— ๋„ฃ๊ธฐ`,"brain.ingest.kicker":`Brain์—๊ฒŒ ๊ฐ€๋ฅด์น˜๊ธฐ`,"brain.ingest.title":`์ปดํ“จํ„ฐ์˜ ์ž๋ฃŒ๋ฅผ ์„ ํƒํ•˜๋ฉด ๊ธฐ์–ต๊ณผ ๊ทธ๋ž˜ํ”„๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.`,"brain.ingest.dock.title":`ํŒŒ์ผ ยท ํด๋” ยท ๋…ธํŠธ ยท ์›น`,"brain.ingest.dock.close":`์ž๋ฃŒ ์ž…๋ ฅ ๋‹ซ๊ธฐ`,"brain.ingest.type.chat":`๋Œ€ํ™”`,"brain.ingest.file":`ํŒŒ์ผ ๋„ฃ๊ธฐ`,"brain.ingest.file.detail":`PDF, ๋ฌธ์„œ, ํ‘œ, ๋ฉ”๋ชจ`,"brain.ingest.folder":`ํด๋” ๋„ฃ๊ธฐ`,"brain.ingest.folder.placeholder":`๋กœ์ปฌ ํด๋” ๊ฒฝ๋กœ`,"brain.ingest.note":`๋…ธํŠธ ๋„ฃ๊ธฐ`,"brain.ingest.note.placeholder":`๊ฒฐ์ •์ด๋‚˜ ๋งฅ๋ฝ์„ ๋ถ™์—ฌ๋„ฃ๊ธฐ`,"brain.ingest.web":`์›น ๋„ฃ๊ธฐ`,"brain.ingest.web.placeholder":`https://...`,"brain.ingest.folder.pending":`{path} ํด๋”๋ฅผ Brain์— ์—ฐ๊ฒฐ ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.ingest.folder.saved":`{path} ํด๋”๊ฐ€ Brain์— ์—ฐ๊ฒฐ๋์Šต๋‹ˆ๋‹ค.`,"brain.ingest.folder.failed":`ํด๋”๋ฅผ ๋„ฃ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.ingest.note.pending":`๋…ธํŠธ๋ฅผ Brain์— ์ €์žฅ ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.ingest.note.saved":`๋…ธํŠธ๊ฐ€ Brain์— ์ €์žฅ๋์Šต๋‹ˆ๋‹ค.`,"brain.ingest.note.failed":`๋…ธํŠธ๋ฅผ ๋„ฃ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.ingest.web.pending":`{url}์„ ์ฝ์–ด Brain์— ๋„ฃ๋Š” ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.ingest.web.saved":`{url}์ด Brain์— ์ €์žฅ๋์Šต๋‹ˆ๋‹ค.`,"brain.ingest.web.failed":`์›น ํŽ˜์ด์ง€๋ฅผ ๋„ฃ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.ingest.type.file":`ํŒŒ์ผ`,"brain.ingest.type.folder":`ํด๋”`,"brain.ingest.type.note":`๋…ธํŠธ`,"brain.ingest.type.web":`์›น`,"brain.ingest.cta.file":`์„ ํƒํ•ด์„œ ๋ฐ”๋กœ ๋„ฃ๊ธฐ`,"brain.ingest.cta.folder":`๊ฒฝ๋กœ๋ฅผ ๋„ฃ๊ณ  Enter`,"brain.ingest.cta.note":`๋‚ด์šฉ์„ ๋ถ™์—ฌ๋„ฃ๊ณ  Enter`,"brain.ingest.cta.web":`URL์„ ๋„ฃ๊ณ  Enter`,"brain.ingest.active":`{label} ์ฒ˜๋ฆฌ ์ค‘`,"brain.ingest.progress.aria":`{label} ์ˆ˜์ง‘ ์ง„ํ–‰ ์ƒํƒœ`,"brain.ingest.stage.preparing":`์ค€๋น„`,"brain.ingest.stage.parsing":`ํŒŒ์‹ฑ`,"brain.ingest.stage.embedding":`์ž„๋ฒ ๋”ฉ`,"brain.ingest.stage.indexing":`์ธ๋ฑ์‹ฑ`,"brain.ingest.stage.complete":`๋ฉ”๋ชจ๋ฆฌํ™” ์™„๋ฃŒ`,"brain.ingest.stage.error":`์‹คํŒจ`,"brain.ingest.stage.error.hint":`Brain์— ๋“ค์–ด๊ฐ€์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค`,"brain.ingest.stage.preparing.hint":`์›๋ณธ์„ ์ฝ์–ด๋“ค์ด๋Š” ์ค‘`,"brain.ingest.stage.parsing.hint":`ํ…์ŠคํŠธ์™€ ๊ตฌ์กฐ๋ฅผ ์ถ”์ถœํ•˜๋Š” ์ค‘`,"brain.ingest.stage.embedding.hint":`์˜๋ฏธ ๋ฒกํ„ฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ค‘`,"brain.ingest.stage.indexing.hint":`์ง€์‹ ๊ทธ๋ž˜ํ”„์— ์—ฐ๊ฒฐํ•˜๋Š” ์ค‘`,"brain.ingest.stage.complete.hint":`๋‚ด ์ง€์‹์œผ๋กœ ๋“ค์–ด์™”์Šต๋‹ˆ๋‹ค`,"brain.ingest.result":`์ƒˆ ๊ธฐ์–ต {memories}๊ฐœ ยท ์ƒˆ ์—”ํ‹ฐํ‹ฐ {entities}๊ฐœ`,"brain.ingest.result.empty":`๊ธฐ์กด ์ง€์‹๊ณผ ํ†ตํ•ฉ๋จ`,"brain.ingest.quality.low":`์ด ์ž๋ฃŒ๋Š” ๋‚ด์šฉ์„ ์ฝ์–ด๋‚ด๊ธฐ ์–ด๋ ค์› ์–ด์š”. ์ผ๋ถ€๊ฐ€ ๋น ์กŒ๊ฑฐ๋‚˜ ๋ถ€์ •ํ™•ํ•  ์ˆ˜ ์žˆ์–ด์š”.`,"brain.freshness.pending":`์ผ๋ถ€ ์ง€์‹์ด ์ตœ์‹  ์ธ๋ฑ์‹ฑ์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์–ด์š” ({count}๊ฑด). ๋‹ต๋ณ€์—๋Š” ๊ณง ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.`,"brain.freshness.staleEmbedder":`์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ์ด ๋ฐ”๋€Œ์—ˆ์–ด์š”`,"brain.freshness.staleEmbedder.detail":`์˜ˆ์ „ ๋ชจ๋ธ๋กœ ๋งŒ๋“  ์ƒ‰์ธ์ด ๋‚จ์•„ ์žˆ์–ด ๊ฒ€์ƒ‰ ํ’ˆ์งˆ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์–ด์š”. ๋‹ค์‹œ ์ธ๋ฑ์‹ฑํ•˜๋ฉด ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.`,"brain.freshness.reindex":`๋‹ค์‹œ ์ธ๋ฑ์‹ฑํ•˜๊ธฐ`,"brain.freshness.reindex.running":`๋‹ค์‹œ ์ธ๋ฑ์‹ฑํ•˜๋Š” ์ค‘โ€ฆ`,"brain.freshness.reindex.failed":`๋‹ค์‹œ ์ธ๋ฑ์‹ฑ์— ์‹คํŒจํ–ˆ์–ด์š”. ์ž ์‹œ ํ›„ ๋‹ค์‹œ ์‹œ๋„ํ•ด ์ฃผ์„ธ์š”.`,"brain.contextQuality.limited":`์ด๋ฒˆ ๋‹ต๋ณ€์€ ์ €์žฅ๋œ ์ง€์‹ ์—ฐ๊ฒฐ์ด ์ ์€ ์ƒํƒœ์—์„œ ๋งŒ๋“ค์–ด์กŒ์–ด์š”.`,"brain.contextQuality.reason":`์ด์œ : {reason}`,"brain.jobs.aria":`๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ˆ˜์ง‘ ์ž‘์—…`,"brain.jobs.title":`์ž๋ฃŒ๋ฅผ ์ •๋ฆฌํ•˜๋Š” ์ค‘`,"brain.jobs.progress":`{processed}/{total} ์ฒ˜๋ฆฌ`,"brain.jobs.progressAria":`์ˆ˜์ง‘ ์ง„ํ–‰๋ฅ : {total}๊ฐœ ์ค‘ {processed}๊ฐœ ์ฒ˜๋ฆฌ`,"brain.jobs.failedCount":`์‹คํŒจ {count}๊ฑด`,"brain.jobs.resume":`์ด์–ด์„œ ์ฒ˜๋ฆฌ`,"brain.jobs.resuming":`๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋Š” ์ค‘โ€ฆ`,"brain.jobs.status.queued":`๋Œ€๊ธฐ ์ค‘`,"brain.jobs.status.running":`์ง„ํ–‰ ์ค‘`,"brain.jobs.status.completed":`์™„๋ฃŒ`,"brain.jobs.status.failed":`์‹คํŒจ`,"brain.jobs.status.partial":`๋ถ€๋ถ„ ์™„๋ฃŒ`,"brain.jobs.report.title":`ํด๋” ์ˆ˜์ง‘์„ ๋งˆ์ณค์–ด์š”`,"brain.jobs.report.titlePartial":`ํด๋” ์ˆ˜์ง‘์„ ์ผ๋ถ€ ๋งˆ์ณค์–ด์š”`,"brain.jobs.report.documents":`+{count} ๋ฌธ์„œ`,"brain.jobs.report.vector":`๋ฒกํ„ฐ ์ธ๋ฑ์Šค {percent}% ์ตœ์‹ `,"brain.jobs.report.skipped":`๊ฑด๋„ˆ๋›ฐ๊ฑฐ๋‚˜ ์‹คํŒจํ•œ ํŒŒ์ผ`,"brain.jobs.report.dismiss":`์ˆ˜์ง‘ ๊ฒฐ๊ณผ ๋‹ซ๊ธฐ`,"brain.preview.open":`๋ฏธ๋ฆฌ๋ณด๊ธฐ`,"brain.preview.close":`๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋‹ซ๊ธฐ`,"brain.preview.aria":`ํŒŒ์ผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ: {name}`,"brain.preview.loading":`๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘โ€ฆ`,"brain.preview.error":`๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค์ง€ ๋ชปํ–ˆ์–ด์š”: {reason}`,"brain.preview.sandboxNote":`์•ˆ์ „ํ•œ ๋ฏธ๋ฆฌ๋ณด๊ธฐ โ€” ์Šคํฌ๋ฆฝํŠธ์™€ ์™ธ๋ถ€ ์—ฐ๊ฒฐ์€ ์‹คํ–‰๋˜์ง€ ์•Š์•„์š”.`,"brain.dnd.title":`์—ฌ๊ธฐ์— ๋†“์•„ Brain์— ์ถ”๊ฐ€`,"brain.dnd.detail":`ํŒŒ์ผ์„ ๋†“์œผ๋ฉด ๋ฐ”๋กœ ๊ธฐ์–ต์œผ๋กœ ์ •๋ฆฌํ•ด ๋“œ๋ ค์š”.`,"brain.timeline.aria":`์ตœ๊ทผ ๋ฉ”๋ชจ๋ฆฌ ์ƒ์„ฑ ํƒ€์ž„๋ผ์ธ`,"brain.timeline.emergenceTitle":`๋ฐฉ๊ธˆ ์ƒ๊ธด ์ง€์‹`,"brain.timeline.recent":`์ตœ๊ทผ ์ˆ˜์ง‘`,"brain.timeline.newMemories":`์ƒˆ ๊ธฐ์–ต {count}๊ฐœ`,"brain.timeline.newEntities":`์ƒˆ ์—”ํ‹ฐํ‹ฐ {count}๊ฐœ`,"brain.timeline.at":`{time}`,"brain.timeline.justNow":`๋ฐฉ๊ธˆ`,"brain.timeline.minutesAgo":`{count}๋ถ„ ์ „`,"brain.timeline.empty":`์•„์ง ์ˆ˜์ง‘ ๊ธฐ๋ก์ด ์—†์Šต๋‹ˆ๋‹ค. ์œ„์—์„œ ๋ฌด์—‡์ด๋“  ๋„ฃ์–ด๋ณด์„ธ์š”.`,"brain.image":`์ด๋ฏธ์ง€`,"brain.unavailable":`์ง€๊ธˆ์€ ์‘๋‹ตํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค`,"brain.noModel.message":`์•„์ง ๋ถˆ๋Ÿฌ์˜จ ๋ชจ๋ธ์ด ์—†์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ ์„ ํƒ ํ™”๋ฉด์—์„œ ๋กœ์ปฌ ๋ชจ๋ธ์„ ์ค€๋น„ํ•œ ๋’ค ๋‹ค์‹œ ๋ณด๋‚ด ์ฃผ์„ธ์š”.`,"brain.noModel.status":`๋ชจ๋ธ์„ ๋จผ์ € ์ค€๋น„ํ•ด์•ผ ๋Œ€ํ™”๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.noModel.banner":`์•„์ง Brain์˜ ๋ชฉ์†Œ๋ฆฌ(๋ชจ๋ธ)๊ฐ€ ์ค€๋น„๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ค€๋น„ ํ›„ ๋ฐ”๋กœ ๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ์–ด์š”.`,"brain.noModel.cta":`๋ชจ๋ธ ์ค€๋น„ํ•˜๊ธฐ`,"brain.newChat":`์ƒˆ ๋Œ€ํ™”`,"brain.stop":`์ค‘์ง€`,"brain.stopped":`์‘๋‹ต ์ƒ์„ฑ์„ ์ค‘๋‹จํ–ˆ์Šต๋‹ˆ๋‹ค.`,"brain.stopped.empty":`(์‘๋‹ต์ด ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค)`,"brain.history.title":`์ง€๋‚œ ๋Œ€ํ™”`,"brain.history.hint":`Brain์ด ๊ธฐ์–ตํ•˜๋Š” ์ตœ๊ทผ ๋Œ€ํ™”์ž…๋‹ˆ๋‹ค. ๋ˆŒ๋Ÿฌ์„œ ์ด์–ด๊ฐ€์„ธ์š”.`,"brain.history.aria":`์ง€๋‚œ ๋Œ€ํ™” ๋ชฉ๋ก`,"brain.history.messages":`๋ฉ”์‹œ์ง€ {count}๊ฐœ`,"brain.history.resumeAria":`๋Œ€ํ™” ์ด์–ด๊ฐ€๊ธฐ: {title}`,"brain.history.deleteAria":`๋Œ€ํ™” ์‚ญ์ œ: {title}`,"brain.history.deleteConfirm":`ํ•œ ๋ฒˆ ๋” ๋ˆ„๋ฅด๋ฉด ์‚ญ์ œ`,"brain.history.deleted":`๋Œ€ํ™”๋ฅผ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค.`,"brain.history.deleteFailed":`๋Œ€ํ™”๋ฅผ ์‚ญ์ œํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.history.loading":`๋Œ€ํ™”๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘...`,"brain.history.loadFailed":`๋Œ€ํ™”๋ฅผ ๋ถˆ๋Ÿฌ์˜ค์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.history.emptyConversation":`์ €์žฅ๋œ ๋ฉ”์‹œ์ง€๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค`,"brain.history.resumed":`์ง€๋‚œ ๋Œ€ํ™”๋ฅผ ์ด์–ด๊ฐ‘๋‹ˆ๋‹ค. ์ด์–ด์„œ ๋งํ•ด ๋ณด์„ธ์š”.`,"brain.history.showMore":`๋” ๋ณด๊ธฐ ({count}๊ฐœ)`,"brain.history.showLess":`์ ‘๊ธฐ`,"brain.message.copy":`๋ณต์‚ฌ`,"brain.message.copied":`๋ณต์‚ฌ๋จ`,"brain.message.copyAria":`์‘๋‹ต ์ „์ฒด ๋ณต์‚ฌ`,"brain.message.regenerate":`๋‹ค์‹œ ์ƒ์„ฑ`,"brain.message.regenerateAria":`๋งˆ์ง€๋ง‰ ์งˆ๋ฌธ์— ๋‹ค์‹œ ๋‹ต๋ณ€ ๋ฐ›๊ธฐ`,"brain.message.saveTask":`์ž‘์—…ํ•จ์— ์ €์žฅ`,"brain.message.saveTaskAria":`์ด ๋‹ต๋ณ€์„ ๊ฒ€ํ† ํ•จ ์ž‘์—… ์ดˆ์•ˆ์œผ๋กœ ์ €์žฅ`,"brain.message.followup.aria":`๋‹ต๋ณ€ ํ›„์† ์งˆ๋ฌธ`,"brain.message.followup.checklist":`์ฒดํฌ๋ฆฌ์ŠคํŠธ๋กœ`,"brain.message.followup.checklist.prompt":`๋ฐฉ๊ธˆ ๋‹ต๋ณ€์„ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ฒดํฌ๋ฆฌ์ŠคํŠธ๋กœ ๋ฐ”๊ฟ”์ค˜.`,"brain.message.followup.evidence":`๊ทผ๊ฑฐ/๋ถˆํ™•์‹ค์„ฑ`,"brain.message.followup.evidence.prompt":`๋ฐฉ๊ธˆ ๋‹ต๋ณ€์˜ ๊ทผ๊ฑฐ์™€ ์•„์ง ๋ถˆํ™•์‹คํ•œ ๋ถ€๋ถ„์„ ๋ถ„๋ฆฌํ•ด์„œ ๋ณด์—ฌ์ค˜.`,"brain.message.followup.next":`๋‹ค์Œ 3๊ฐ€์ง€`,"brain.message.followup.next.prompt":`๋ฐฉ๊ธˆ ๋‹ต๋ณ€์„ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๊ฐ€ ๋‹ค์Œ์— ํ•ด์•ผ ํ•  3๊ฐ€์ง€๋ฅผ ์šฐ์„ ์ˆœ์œ„๋กœ ์ •๋ฆฌํ•ด์ค˜.`,"brain.imageAttached":`์ด๋ฏธ์ง€ ์ฒจ๋ถ€๋จ`,"brain.send":`๋ณด๋‚ด๊ธฐ`,"brain.saved":`๊ธฐ์–ต์— ์ €์žฅ๋จ ยท ์—ฐ๊ฒฐ๋œ ์ฃผ์ œ {topics}๊ฐœ ยท ๊ด€๋ จ ๊ธฐ์–ต {memories}๊ฐœ`,"brain.saved.detail":`์ถœ์ฒ˜์™€ ํ•จ๊ป˜ ๋‚˜์ค‘์— ๋‹ค์‹œ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.action.defaultTitle":`Brain ๋‹ต๋ณ€ ํ›„์† ์ž‘์—…`,"brain.action.saved":`์ž‘์—… ์ดˆ์•ˆ์ด Review Center์— ์ €์žฅ๋จ`,"brain.action.saveFailed":`์ž‘์—… ์ดˆ์•ˆ์„ ์ €์žฅํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.delegate.title":`Agent team`,"brain.delegate.detail":`ํ˜„์žฌ ์ดˆ์•ˆ์„ ๋ชฉํ‘œ๋กœ ์œ„์ž„ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ Brain์— ๋‚จ๊น๋‹ˆ๋‹ค.`,"brain.delegate.cta":`์œ„์ž„`,"brain.delegate.running":`์œ„์ž„ ์ค‘...`,"brain.delegate.saved":`Brain ๊ฐฑ์‹ ๋จ`,"brain.delegate.done":`์—์ด์ „ํŠธ ๊ฒฐ๊ณผ๊ฐ€ Brain ๋ฉ”๋ชจ๋ฆฌ๋กœ ํ•ฉ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.`,"brain.delegate.failed":`์—์ด์ „ํŠธ ์œ„์ž„ ์‹คํŒจ: {reason}`,"brain.recalled":`๊ธฐ์–ต์„ ๋‹ค์‹œ ๊บผ๋ƒˆ์Šต๋‹ˆ๋‹ค: {title}`,"brain.overview.kicker":`Brain ํ•œ๋ˆˆ์— ๋ณด๊ธฐ`,"brain.overview.title":`๊ธฐ์–ต๊ณผ ์ฃผ์ œ๋ฅผ ๋ฐ”๋กœ ํ™•์ธํ•˜์„ธ์š”.`,"brain.overview.graph":`์ „์ฒด ๊ทธ๋ž˜ํ”„`,"brain.overview.agent":`Agent ๊ฒฐ๊ณผ`,"brain.overview.agentEmpty":`์œ„์ž„ ๊ฒฐ๊ณผ๊ฐ€ ์ƒ๊ธฐ๋ฉด ์—ฌ๊ธฐ์— ๊ฐ•์กฐ๋ฉ๋‹ˆ๋‹ค.`,"brain.overview.recent":`์ตœ๊ทผ ๊ธฐ์–ต`,"brain.overview.recentEmpty":`์•„์ง ์ตœ๊ทผ ๊ธฐ์–ต์ด ์—†์Šต๋‹ˆ๋‹ค.`,"brain.overview.older":`์ด์ „ ๊ธฐ์–ต`,"brain.overview.olderEmpty":`๋Œ€ํ™”๊ฐ€ ์Œ“์ด๋ฉด ๊ณผ๊ฑฐ ๊ธฐ์–ต์ด ๋ณด์ž…๋‹ˆ๋‹ค.`,"brain.overview.topics":`์ฃผ์š” ์ฃผ์ œ`,"brain.overview.topicsEmpty":`์ฃผ์ œ๊ฐ€ ํ˜•์„ฑ๋˜๋Š” ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.readiness.kicker":`Brain ์ค€๋น„๋„`,"brain.readiness.aria":`Brain ์ค€๋น„๋„ ์ ์ˆ˜`,"brain.readiness.quiet":`์ฒซ ๊ธฐ์–ต์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.readiness.forming":`๊ธฐ์–ต์ด ์ฃผ์ œ๋กœ ์ž๋ผ๋Š” ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.readiness.alive":`๊ธฐ์–ต๊ณผ ๊ด€๊ณ„๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.readiness.start":`์ฒซ ๊ธฐ์–ต ๋ณด๊ธฐ`,"brain.readiness.grow":`์ฃผ์ œ ํ‚ค์šฐ๊ธฐ`,"brain.readiness.map":`์ง€๋„ ๋ณด๊ธฐ`,"brain.proof.aria":`Brain ์ฆ๊ฑฐ`,"brain.proof.context":`๋‹ค์‹œ ๋ถˆ๋Ÿฌ์˜ฌ ๋งฅ๋ฝ`,"brain.proof.contextValue":`{count}๊ฐœ ์ €์žฅ๋จ`,"brain.proof.contextEmpty":`์ฒซ ๊ธฐ์–ต ๋Œ€๊ธฐ`,"brain.proof.model":`๋ชจ๋ธ ๊ต์ฒด ํ›„์—๋„ ์œ ์ง€`,"brain.proof.noModel":`๋ชจ๋ธ ๋ฏธ๋กœ๋“œ`,"brain.proof.modelPending":`์ €์žฅ ํ›„ ์ฆ๋ช…๋จ`,"brain.proof.store":`์ง€์‹ ์ €์žฅ์†Œ`,"brain.proof.storeValue":`์ฃผ์ œ {topics}๊ฐœ ยท ๊ธฐ์–ต ์กฐ๊ฐ {vectors}๊ฐœ`,"brain.proof.recall":`๋ฐฉ๊ธˆ Brain์ด ๋‹ค์‹œ ๊บผ๋‚ธ ๊ธฐ์–ต`,"brain.proof.recallEmpty.kicker":`Brain ์ฆ๊ฑฐ ์ž๋ฆฌ`,"brain.proof.recallEmpty.title":`์ฒซ ๋Œ€ํ™” ํ›„ ์—ฌ๊ธฐ์— ๋‹ค์‹œ ๊บผ๋‚ธ ๊ธฐ์–ต์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.`,"brain.proof.recallEmpty.detail":`์•„์ง ์ €์žฅ๋œ ๊ธฐ์–ต์ด ์—†์–ด, ์˜ˆ์‹œ๋ฅผ ๊พธ๋ฉฐ๋‚ด๋Š” ๋Œ€์‹  ์‹ค์ œ ๊ธฐ์–ต์ด ์Œ“์ด๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.`,"brain.proof.recallPending":`๊ธฐ์–ต์€ ์ €์žฅ๋๊ณ , ๋‹ค์‹œ ๊บผ๋‚ผ ์ค€๋น„๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.proof.recallPending.detail":`์ธ๋ฑ์‹ฑ์ด ๋๋‚˜๋ฉด ์ด ์ž๋ฆฌ์—์„œ ์‹ค์ œ ๊ธฐ์–ต์„ ๋‹ค์‹œ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.`,"brain.modelDemo.aria":`๋ชจ๋ธ ๊ต์ฒด ์ฆ๊ฑฐ`,"brain.modelDemo.kicker":`๋ชจ๋ธ ๋…๋ฆฝ Brain`,"brain.modelDemo.proven":`ํ˜„์žฌ ๊ธฐ์–ต์€ ๋ชจ๋ธ ๋ฐ–์— ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.modelDemo.pending":`์ฒซ ๊ธฐ์–ต์ด ์ €์žฅ๋˜๋ฉด ๋ชจ๋ธ ๊ต์ฒด ์ฆ๊ฑฐ๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค.`,"brain.modelDemo.detail":`ํ˜„์žฌ ๋ชจ๋ธ: {model}. ๊ฐ™์€ ์งˆ๋ฌธ์œผ๋กœ Brain ์ฆ๊ฑฐ๋ฅผ ๋‹ค์‹œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.modelDemo.verify":`๊ฐ™์€ ์ฆ๊ฑฐ ํ™•์ธ`,"brain.modelDemo.change":`๋ชจ๋ธ ๋ฐ”๊พธ๊ธฐ`,"brain.modelDemo.needQuestion":`๋จผ์ € ์งˆ๋ฌธํ•˜๊ฑฐ๋‚˜ ๊ธฐ์–ต์„ ๋„ฃ์œผ๋ฉด ๊ฐ™์€ ์ฆ๊ฑฐ๋ฅผ ๋‹ค์‹œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.modelDemo.checking":`{model}์—์„œ ๊ฐ™์€ Brain ์ฆ๊ฑฐ๋ฅผ ๋‹ค์‹œ ํ™•์ธ ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.modelDemo.done":`{model}์—์„œ๋„ ๊ฐ™์€ Brain ์ฆ๊ฑฐ๋ฅผ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.`,"brain.proof.unavailable":`Brain ๊ทผ๊ฑฐ๋ฅผ ํ™•์ธํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: {reason}`,"brain.answerProof.aria":`๋‹ต๋ณ€ ์ถœ์ฒ˜์™€ ๊ธฐ์–ต ๊ทผ๊ฑฐ`,"brain.answerProof.title":`๊ธฐ์–ต ๊ทผ๊ฑฐ์™€ ์ถœ์ฒ˜`,"brain.answerProof.modelProven":`{model} ๋ฐ–์— ๋‚จ์€ Brain ์ฆ๊ฑฐ`,"brain.answerProof.modelPending":`{model} ์‘๋‹ต ยท ์ฆ๊ฑฐ ์ €์žฅ ๋Œ€๊ธฐ`,"brain.answerProof.empty":`์•„์ง ์—ฐ๊ฒฐ๋œ ์ถœ์ฒ˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ธฐ์–ต์ด ์ธ๋ฑ์‹ฑ๋˜๋ฉด ์—ฌ๊ธฐ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.`,"brain.citation.chip":`์ถœ์ฒ˜ {num}`,"brain.citation.chip.long":`์ถœ์ฒ˜ {num}: {title}`,"brain.citation.expand":`์ถœ์ฒ˜ ์—ด๊ธฐ`,"brain.citation.close":`์ถœ์ฒ˜ ๋‹ซ๊ธฐ`,"brain.citation.preview.from":`์ถœ์ฒ˜: `,"brain.citation.preview.snippet":`๋ฐœ์ทŒ: `,"brain.citation.keyboard.tip":`์ŠคํŽ˜์ด์Šค/์—”ํ„ฐ๋กœ ์ถœ์ฒ˜๋ฅผ ์—ด๊ณ , ESC๋กœ ๋‹ซ์Šต๋‹ˆ๋‹ค.`,"brain.citation.region":`๋ณธ๋ฌธ์—์„œ ์ฐธ์กฐํ•œ ์ถœ์ฒ˜ ์ธ์šฉ`,"brain.citation.announce.open":`{num}๋ฒˆ ์ถœ์ฒ˜๋ฅผ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค: {title}`,"brain.citation.announce.close":`์ถœ์ฒ˜ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ๋‹ซ์•˜์Šต๋‹ˆ๋‹ค.`,"brain.citation.count":`์ด ๋‹ต๋ณ€์€ {count}๊ฐœ์˜ ์ถœ์ฒ˜๋ฅผ ์ธ์šฉํ•ฉ๋‹ˆ๋‹ค.`,"brain.citation.score":`๊ด€๋ จ๋„ {score}%`,"brain.memory.empty.kicker":`์ฒซ ๊ธฐ์–ต`,"brain.memory.empty":`๊ธฐ์–ต์ด ์กฐ์šฉํ•ฉ๋‹ˆ๋‹ค.`,"brain.knowledge.empty":`์ง€์‹์ด ํ˜•์„ฑ๋˜๋Š” ์ค‘์ž…๋‹ˆ๋‹ค.`,"brain.graph.empty":`์•„์ง ๋งž๋Š” ์ง€์‹์ด ์—†์Šต๋‹ˆ๋‹ค.`,"brain.graph.summaryFallback":`์ด ๊ฐœ๋…์€ ๊ฐ€์žฅ ๊นŠ์€ ์ง€์‹ ๊ณ„์ธต์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค.`,"brain.graph.focused":`๋Œ€ํ™”์™€ ๋ฌธ์„œ์—์„œ ํ•จ๊ป˜ ๋‚˜์˜จ ๋‚ด์šฉ์ด ์„ ์œผ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.`,"brain.graph.emptyFocus":`๋Œ€ํ™”, ๋ฌธ์„œ, ํ”„๋กœ์ ํŠธ๋ฅผ ์Œ“์œผ๋ฉด Brain ๊ทธ๋ž˜ํ”„๊ฐ€ ์ž๋ž๋‹ˆ๋‹ค.`,"brain.graph.search":`๊ฒ€์ƒ‰`,"brain.graph.searchAria":`์ง€์‹ ๊ทธ๋ž˜ํ”„ ๊ฒ€์ƒ‰`,"brain.graph.control.panel":`๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰ ์ปจํŠธ๋กค`,"brain.graph.control.filter":`ํ•„ํ„ฐ`,"brain.graph.control.types":`์—”ํ‹ฐํ‹ฐ ํƒ€์ž…`,"brain.graph.control.allTypes":`์ „์ฒด ํƒ€์ž…`,"brain.graph.control.time":`์‹œ๊ฐ„ ํƒ์ƒ‰`,"brain.graph.control.dateRange":`์ตœ๊ทผ ์ถ”๊ฐ€ ๊ฐ•์กฐ ๋ฒ”์œ„`,"brain.graph.control.resetFilters":`ํ•„ํ„ฐ ์ดˆ๊ธฐํ™”`,"brain.graph.control.recentWindow":`์ตœ๊ทผ {days}์ผ`,"brain.graph.control.allTime":`์ „์ฒด ๊ธฐ๊ฐ„`,"brain.graph.control.toggleType":`{type} ํƒ€์ž… ํ‘œ์‹œ ์ „ํ™˜`,"brain.graph.search.typeahead":`๊ฒ€์ƒ‰ ์ถ”์ฒœ`,"brain.graph.search.typeaheadAria":`๊ฒ€์ƒ‰ ์ถ”์ฒœ ๊ฒฐ๊ณผ`,"brain.graph.search.noMatches":`์ผ์น˜ํ•˜๋Š” ๋…ธ๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.`,"brain.graph.search.matchCount":`{count}๊ฐœ ์ผ์น˜`,"brain.graph.focus.neighbors":`์ด์›ƒ {count}๊ฐœ ๊ฐ•์กฐ`,"brain.graph.focus.smooth":`์„ ํƒํ•œ ๋…ธ๋“œ๋กœ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ํฌ์ปค์Šค ์ด๋™ํ•˜๊ณ  ์ด์›ƒ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค.`,"brain.graph.focus.recent":`์ตœ๊ทผ ์ถ”๊ฐ€๋จ`,"brain.graph.focus.clear":`ํฌ์ปค์Šค ํ•ด์ œ`,"brain.rings.aria":`Brain ๊ธฐ์–ต ๊นŠ์ด ๋ง`,"brain.rings.1":`์ง€๊ธˆ`,"brain.rings.2":`๊ธฐ์–ต`,"brain.rings.3":`์ฃผ์ œ`,"brain.rings.4":`๊ด€๊ณ„`,"brain.rings.5":`๊ทธ๋ž˜ํ”„`,"care.title":`๋‚ด Brain ๋Œ๋ณด๊ธฐ`,"care.subtitle":`๋‚ด ์ปดํ“จํ„ฐ์— ๋‘๊ณ , ํ•„์š”ํ•˜๋ฉด ์˜ฎ๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"care.private":`๊ฐœ์ธ ๋ณด๊ด€`,"care.ownershipModel":`์†Œ์œ  ๋ชจ๋ธ`,"care.export":`๋‚ด๋ณด๋‚ด๊ธฐ`,"care.export.detail":`๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ๊ฐ€์ ธ๊ฐ€๊ธฐ`,"care.backup":`๋ฐฑ์—…`,"care.backup.detail":`๋ณต์‚ฌ๋ณธ ์ €์žฅ`,"care.backup.count":`๋ฐฑ์—… {count}๊ฐœ`,"care.backup.ready":`๋ฐฑ์—… ์ค€๋น„๋จ`,"care.archive":`๋ณด๊ด€ ํŒŒ์ผ`,"care.archive.detail":`์•”ํ˜ธํ™”๋œ Brain`,"care.path.placeholder":`ํ™•์ธํ•˜๊ฑฐ๋‚˜ ๋ฏธ๋ฆฌ ๋ณผ ๋ณด๊ด€ ํŒŒ์ผ ๊ฒฝ๋กœ`,"care.path.label":`Brain ๋ณด๊ด€ ํŒŒ์ผ ๊ฒฝ๋กœ`,"care.passphrase.placeholder":`๋ณด๊ด€ ํŒŒ์ผ ๋น„๋ฐ€๋ฒˆํ˜ธ`,"care.passphrase.label":`Brain ๋ณด๊ด€ ํŒŒ์ผ ๋น„๋ฐ€๋ฒˆํ˜ธ`,"care.passphrase.confirmPlaceholder":`๋น„๋ฐ€๋ฒˆํ˜ธ ๋‹ค์‹œ ์ž…๋ ฅ`,"care.passphrase.confirmLabel":`Brain ๋ณด๊ด€ ํŒŒ์ผ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ`,"care.passphrase.tooShort":`๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” 12์ž ์ด์ƒ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.`,"care.passphrase.tooSimple":`๋Œ€๋ฌธ์ž, ์†Œ๋ฌธ์ž, ์ˆซ์ž, ๊ธฐํ˜ธ ์ค‘ 3์ข…๋ฅ˜ ์ด์ƒ์„ ์„ž์–ด ์ฃผ์„ธ์š”.`,"care.passphrase.mismatch":`๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ์ด ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.`,"care.passphrase.strong":`๋น„๋ฐ€๋ฒˆํ˜ธ ๊ฐ•๋„๊ฐ€ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.`,"care.path.ready":`๋ณด๊ด€ ํŒŒ์ผ ๊ฒฝ๋กœ ํ˜•์‹์ด ์˜ฌ๋ฐ”๋ฆ…๋‹ˆ๋‹ค.`,"care.path.invalidChars":`๋ณด๊ด€ ํŒŒ์ผ ๊ฒฝ๋กœ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๋ฌธ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.`,"care.path.extension":`.latticebrain, .zip, .json ํŒŒ์ผ๋งŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.`,"care.inspect":`ํ™•์ธ`,"care.restorePreview":`๋ณต์› ๋ฏธ๋ฆฌ๋ณด๊ธฐ`,"care.note":`๋ณต์› ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋Š” Brain์„ ๋ฐ”๊พธ์ง€ ์•Š๊ณ  ๋ณด๊ด€ ํŒŒ์ผ๋งŒ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ๋ณต์›์€ ์„ค์ •์—์„œ ํ™•์ •ํ•ฉ๋‹ˆ๋‹ค.`,"care.working":`์ง„ํ–‰ ์ค‘`,"care.result.error":`Brain ๊ด€๋ฆฌ ์ž‘์—…์„ ์™„๋ฃŒํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.`,"care.result.completed":`Brain ๊ด€๋ฆฌ ์ž‘์—… ์™„๋ฃŒ`,"care.result.path":`ํŒŒ์ผ: {path}`,"care.result.contents":`๊ธฐ์–ต {memories}๊ฐœ ยท ์—ฐ๊ฒฐ {links}๊ฐœ ยท ๋Œ€ํ™” {conversations}๊ฐœ`,"care.result.dryRun":`๋ฏธ๋ฆฌ๋ณด๊ธฐ๋งŒ ์‹คํ–‰๋˜์–ด ํ˜„์žฌ Brain์€ ๋ฐ”๋€Œ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.`,"intelligence.title":`Brain ์ง€๋Šฅ ์ง„๋‹จ`,"intelligence.subtitle":`Brain์ด ์Šค์Šค๋กœ ์ง€์‹ ์ƒํƒœ๋ฅผ ์ ๊ฒ€ํ•ฉ๋‹ˆ๋‹ค.`,"intelligence.loading":`์ง„๋‹จ ์ค‘...`,"intelligence.unavailable":`์ง„๋‹จ ์ •๋ณด๋ฅผ ๋ถˆ๋Ÿฌ์˜ค์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.`,"intelligence.score":`์ข…ํ•ฉ ์ ์ˆ˜`,"intelligence.grade.excellent":`์•„์ฃผ ์ข‹์Œ`,"intelligence.grade.good":`์ข‹์Œ`,"intelligence.grade.attention":`๊ด€์‹ฌ ํ•„์š”`,"intelligence.grade.critical":`์ •๋ฆฌ ํ•„์š”`,"intelligence.grade.unknown":`๋ฐ์ดํ„ฐ ์—†์Œ`,"intelligence.dim.freshness":`์‹ ์„ ๋„`,"intelligence.dim.connectivity":`์—ฐ๊ฒฐ์„ฑ`,"intelligence.dim.embedding_coverage":`๊ฒ€์ƒ‰ ์ค€๋น„`,"intelligence.dim.consistency":`์ผ๊ด€์„ฑ`,"intelligence.actions":`์ถ”์ฒœ ๊ด€๋ฆฌ ์ž‘์—…`,"intelligence.action.rebuild_vector_index":`์˜๋ฏธ ๊ฒ€์ƒ‰ ์ƒ‰์ธ ๋‹ค์‹œ ๋งŒ๋“ค๊ธฐ`,"intelligence.action.review_orphans":`์—ฐ๊ฒฐ ์—†๋Š” ๊ธฐ์–ต ์‚ดํŽด๋ณด๊ธฐ`,"intelligence.action.refresh_stale_knowledge":`์˜ค๋ž˜๋œ ์ง€์‹ ๋‹ค์‹œ ํ™•์ธํ•˜๊ธฐ`,"intelligence.action.resolve_contradictions":`์„œ๋กœ ์–ด๊ธ‹๋‚˜๋Š” ๊ธฐ์–ต ์ •๋ฆฌํ•˜๊ธฐ`,"intelligence.insights":`์ตœ๊ทผ ํ™œ๋™`,"intelligence.insights.recent":`์ตœ๊ทผ 7์ผ ์ƒˆ ์ง€์‹ {count}๊ฐœ`,"intelligence.insights.stale":`์˜ค๋ž˜๋œ ์ง€์‹ {count}๊ฐœ`,"intelligence.insights.orphans":`์—ฐ๊ฒฐ ์—†๋Š” ์ง€์‹ {count}๊ฐœ`,"intelligence.contradictions":`์–ด๊ธ‹๋‚˜๋Š” ๊ธฐ์–ต {count}๊ฑด`,"intelligence.consolidate":`์ค‘๋ณต ์ •๋ฆฌ ๋ฏธ๋ฆฌ๋ณด๊ธฐ`,"intelligence.consolidate.working":`ํ™•์ธ ์ค‘...`,"intelligence.consolidate.none":`์ค‘๋ณต๋œ ๊ธฐ์–ต์ด ์—†์Šต๋‹ˆ๋‹ค.`,"intelligence.consolidate.found":`์ค‘๋ณต ๊ธฐ์–ต {memories}๊ฐœ ยท ์ค‘๋ณต ์—ฐ๊ฒฐ {edges}๊ฐœ ๋ฐœ๊ฒฌ`,"intelligence.consolidate.apply":`์ค‘๋ณต ๊ธฐ์–ต ์ •๋ฆฌ ์‹คํ–‰`,"intelligence.consolidate.applied":`์ค‘๋ณต ๊ธฐ์–ต {count}๊ฐœ๋ฅผ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.`,"brain.answerProof.citationsLabel":`๊ทผ๊ฑฐ ์ถœ์ฒ˜ {count}๊ฐœ`,"brain.answerProof.marker":`์ถœ์ฒ˜ {index}๋กœ ์ด๋™`,"brain.answerProof.markerShort":`์ถœ์ฒ˜ {index}`,"brain.answerProof.citationItem":`์ถœ์ฒ˜ {index}: {title}`,"brain.answerProof.modelLine":`{model} ๊ธฐ์ค€ ๋‹ต๋ณ€ ๊ทผ๊ฑฐ`,"brain.answerProof.why.aria":`์ด ๊ทผ๊ฑฐ๋ฅผ ๊ณ ๋ฅธ ์ด์œ `,"brain.answerProof.matched":`์ผ์น˜ํ•œ ๋‹จ์–ด`,"brain.answerProof.matched.none":`์ €์žฅ๋œ ๊ธฐ์–ต์—์„œ ์ง์ ‘ ์ฐพ์Œ`,"brain.answerProof.confidence.high":`์ผ์น˜ ๊ฐ•ํ•จ`,"brain.answerProof.confidence.medium":`์ผ์น˜ ๋ณดํ†ต`,"brain.answerProof.confidence.low":`์ผ์น˜ ์•ฝํ•จ`,"brain.garden.title":`๋‚ด ์ง€์‹ ์ •์›`,"brain.garden.loading":`์ •์›์„ ๋‘˜๋Ÿฌ๋ณด๋Š” ์ค‘โ€ฆ`,"brain.garden.unavailable":`์•„์ง ์ •์›์„ ๋ณผ ์ˆ˜ ์—†์–ด์š”. ์ž๋ฃŒ๋ฅผ ์กฐ๊ธˆ ๋” ๋ชจ์•„ ๋ณด์„ธ์š”.`,"brain.garden.bed.recent":`์ตœ๊ทผ ๋“ค์–ด์˜จ ๊ฒƒ`,"brain.garden.bed.contradictions":`์„œ๋กœ ์–ด๊ธ‹๋‚˜๋Š” ๊ฒƒ`,"brain.garden.bed.stale":`์˜ค๋ž˜๋œ ๊ฒƒ`,"brain.garden.bed.frequent":`์ž์ฃผ ์“ฐ๋Š” ๊ฒƒ`,"brain.garden.empty.recent":`์ตœ๊ทผ์— ์ƒˆ๋กœ ๋“ค์–ด์˜จ ์ž๋ฃŒ๊ฐ€ ์—†์–ด์š”.`,"brain.garden.empty.contradictions":`์ง€๊ธˆ์€ ์–ด๊ธ‹๋‚˜๋Š” ๋‚ด์šฉ์ด ์—†์–ด์š”.`,"brain.garden.empty.stale":`์˜ค๋ž˜ ๋ฐฉ์น˜๋œ ์ž๋ฃŒ๊ฐ€ ์—†์–ด์š”.`,"brain.garden.empty.frequent":`์•„์ง ์ž์ฃผ ์—ฐ๊ฒฐ๋˜๋Š” ์ฃผ์ œ๊ฐ€ ์—†์–ด์š”.`,"brain.evidenceActions.open":`์ด ๊ทผ๊ฑฐ๋กœ ๋ฐ”๋กœ ๋งŒ๋“ค๊ธฐ`,"brain.evidenceActions.title":`์ด ๊ทผ๊ฑฐ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒƒ`,"brain.evidenceActions.loading":`๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ์ฐพ๋Š” ์ค‘โ€ฆ`,"brain.evidenceActions.unavailable":`์ด ๋‹ต๋ณ€์˜ ์ถœ์ฒ˜๋กœ๋Š” ๋ฐ”๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒŒ ์—†์Šต๋‹ˆ๋‹ค.`,"brain.rings.peek.aria":`{label} ๋ฏธ๋ฆฌ ๋ณด๊ธฐ ยท {count}๊ฐœ`,"brain.rings.peek.title":`{label} ๋ฏธ๋ฆฌ ๋ณด๊ธฐ`,"brain.rings.peek.summary":`{count}๊ฐœ์˜ ์—ฐ๊ฒฐ์ด ์ด ์ธต์— ์žˆ์Šต๋‹ˆ๋‹ค.`,"brain.rings.count":`{count}๊ฐœ`,"brain.rings.close":`๋ฏธ๋ฆฌ ๋ณด๊ธฐ ๋‹ซ๊ธฐ`,"brain.rings.deeper":`์ด ์ธต ์ž์„ธํžˆ ๋ณด๊ธฐ`,"brain.rings.empty.now":`์•„์ง ์ตœ๊ทผ ๋Œ€ํ™” ๊ธฐ์–ต์ด ์—†์–ด์š”. ์ง€๊ธˆ ๋ง์„ ๊ฑธ์–ด๋ณด์„ธ์š”.`,"brain.rings.empty.memories":`์•„์ง ์˜ค๋ž˜ ๋‚จ๋Š” ๊ธฐ์–ต์ด ์—†์–ด์š”. ๋ฌธ์„œ๋‚˜ ๋ฉ”๋ชจ๋ฅผ ๋„ฃ์–ด์ฃผ์„ธ์š”.`,"brain.rings.empty.topics":`์ฃผ์ œ๋Š” ๊ธฐ์–ต์ด ์Œ“์ด๋ฉด ์Šค์Šค๋กœ ์ƒ๊ฒจ๋‚ฉ๋‹ˆ๋‹ค.`,"brain.rings.empty.graph":`์—ฐ๊ฒฐ์ด ์ƒ๊ธฐ๋ฉด ์ „์ฒด ๊ทธ๋ž˜ํ”„๊ฐ€ ์—ด๋ฆฝ๋‹ˆ๋‹ค.`,"brain.home.wakingHint":`Brain์ด ๋ง‰ ๊นจ์–ด๋‚ฌ์–ด์š”. ์•„๋ฌด ๋ง์ด๋‚˜ ๊ฑธ๊ฑฐ๋‚˜ ๋ฌธ์„œ ํ•˜๋‚˜๋ฅผ ๋„ฃ์–ด์ฃผ๋ฉด ์ฒซ ๊ธฐ์–ต์ด ์ƒ๊น๋‹ˆ๋‹ค.`,"brain.firstFive.title":`์ฒซ 5๋ถ„`,"brain.firstFive.aria":`์ฒ˜์Œ 5๋ถ„ ์•ˆ๋‚ด`,"brain.firstFive.subtitle":`์„ธ ๊ฐ€์ง€๋งŒ ํ•ด๋ณด๋ฉด Brain์ด ๋ฌด์—‡์„ ํ•ด์ฃผ๋Š”์ง€ ๋ฐ”๋กœ ๋А๋‚„ ์ˆ˜ ์žˆ์–ด์š”.`,"brain.firstFive.progress":`{done}/{total} ์™„๋ฃŒ`,"brain.firstFive.dismiss":`์ด ์•ˆ๋‚ด ๋‹ซ๊ธฐ`,"brain.firstFive.step.ask":`Brain์—๊ฒŒ ์ฒซ ์งˆ๋ฌธํ•˜๊ธฐ`,"brain.firstFive.step.ask.detail":`์ถ”์ฒœ ์งˆ๋ฌธ์„ ์ž…๋ ฅ์ฐฝ์— ์ฑ„์›Œ ๋“œ๋ ค์š”. ๋ณด๋‚ด๊ธฐ๋งŒ ๋ˆ„๋ฅด๋ฉด ๋ฉ๋‹ˆ๋‹ค.`,"brain.firstFive.step.add":`์ž๋ฃŒ ํ•˜๋‚˜ ๋„ฃ์–ด๋ณด๊ธฐ`,"brain.firstFive.step.add.detail":`ํŒŒ์ผ, ๋ฉ”๋ชจ, ์›น ์ฃผ์†Œ ๋ฌด์—‡์ด๋“  ์ข‹์•„์š”. ์‹ค์ œ๋กœ ๋“ค์–ด๊ฐ€๋Š” ์ˆœ๊ฐ„ ์™„๋ฃŒ๋ผ์š”.`,"brain.firstFive.step.learned":`Brain์ด ๋ฐฐ์šด ๊ฒƒ ํ™•์ธํ•˜๊ธฐ`,"brain.firstFive.step.learned.detail":`๋ฐฉ๊ธˆ ๋„ฃ์€ ๋‚ด์šฉ์ด ์–ด๋–ป๊ฒŒ ์ •๋ฆฌ๋๋Š”์ง€ ๋ณด์—ฌ๋“œ๋ ค์š”.`,"brain.firstFive.step.done":`์™„๋ฃŒ`,"brain.approval.aria":`์—์ด์ „ํŠธ ์‹คํ–‰ ์Šน์ธ`,"brain.approval.title":`์‹คํ–‰ ์ „์— ์Šน์ธ์ด ํ•„์š”ํ•ด์š”`,"brain.approval.summaryLabel":`๊ณ„ํš ์š”์•ฝ`,"brain.approval.expiry":`{time}๊นŒ์ง€ ๊ฒฐ์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๋งŒ๋ฃŒ๋ผ์š”.`,"brain.approval.approve":`์Šน์ธํ•˜๊ณ  ์‹คํ–‰`,"brain.approval.edit":`์ˆ˜์ •ํ•ด์„œ ์‹คํ–‰`,"brain.approval.cancel":`์ทจ์†Œ`,"brain.approval.running":`์‹คํ–‰ ์ค‘...`,"brain.approval.edit.label":`๊ณ„ํš ์ˆ˜์ • (JSON)`,"brain.approval.edit.run":`์ด ๊ณ„ํš์œผ๋กœ ์‹คํ–‰`,"brain.approval.edit.close":`์ˆ˜์ • ๋‹ซ๊ธฐ`,"brain.approval.edit.invalid":`๊ณ„ํš JSON์„ ํ•ด์„ํ•  ์ˆ˜ ์—†์–ด์š”. ํ˜•์‹์„ ํ™•์ธํ•ด ์ฃผ์„ธ์š”.`,"brain.approval.resolved":`์Šน์ธ ํ›„ ์‹คํ–‰์„ ๋งˆ์ณค์–ด์š”.`,"brain.approval.cancelled":`๊ณ„ํš์„ ์ทจ์†Œํ–ˆ์–ด์š”. ์‹คํ–‰๋œ ์ž‘์—…์€ ์—†์Šต๋‹ˆ๋‹ค.`,"brain.approval.expired":`์Šน์ธ ์‹œ๊ฐ„์ด ๋งŒ๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค โ€” ๋‹ค์‹œ ์š”์ฒญํ•ด์ฃผ์„ธ์š”.`,"brain.approval.error":`์Šน์ธ ์ฒ˜๋ฆฌ์— ์‹คํŒจํ–ˆ์–ด์š”: {reason}`,"brain.grounding.supported":`๊ทผ๊ฑฐ ์žˆ์Œ`,"brain.grounding.none":`๊ทผ๊ฑฐ ์—†์Œ`,"brain.fvl.title":`30์ดˆ ์ฒดํ—˜`,"brain.fvl.aria":`30์ดˆ ์ฒดํ—˜ ์•ˆ๋‚ด`,"brain.fvl.dismiss":`์ด ์•ˆ๋‚ด ๋‹ซ๊ธฐ`,"brain.fvl.subtitle":`์ƒ˜ํ”Œ ์ž๋ฃŒ 3๊ฐœ๋ฅผ ๋„ฃ๊ณ  ๋ฐ”๋กœ ์งˆ๋ฌธํ•ด์„œ, Brain์ด ๊ธฐ์–ต์œผ๋กœ ๋‹ตํ•˜๋Š” ๊ฑธ ํ™•์ธํ•ด ๋ณด์„ธ์š”.`,"brain.fvl.start":`์ƒ˜ํ”Œ ์ž๋ฃŒ 3๊ฐœ ๋„ฃ์–ด๋ณด๊ธฐ`,"brain.fvl.starting":`๋„ฃ๋Š” ์ค‘...`,"brain.fvl.installed":`์ƒ˜ํ”Œ ์ž๋ฃŒ {count}๊ฐœ๊ฐ€ Brain์— ๋“ค์–ด๊ฐ”์–ด์š”.`,"brain.fvl.docs.aria":`๋ฐ๋ชจ ๋ฌธ์„œ ๋ชฉ๋ก`,"brain.fvl.doc.duplicate":`์ด๋ฏธ ์žˆ์Œ`,"brain.fvl.ask.title":`์ด์ œ ์ด๋ ‡๊ฒŒ ๋ฌผ์–ด๋ณด์„ธ์š”`,"brain.fvl.chips.aria":`์ถ”์ฒœ ์งˆ๋ฌธ`,"brain.fvl.next.title":`๋‹ค์Œ ๋‹จ๊ณ„`,"brain.fvl.filegen.chip":`์ด ๋‚ด์šฉ์œผ๋กœ HTML ํŽ˜์ด์ง€ ๋งŒ๋“ค์–ด๋ณด๊ธฐ`,"brain.fvl.filegen.prompt":`๋ฐฉ๊ธˆ ๋Œ€ํ™”ํ•œ ์ƒˆ์‹น ๊ฐ€๋“  ํ”„๋กœ์ ํŠธ ๋‚ด์šฉ์„ ๊ฐ„๋‹จํ•œ HTML ์†Œ๊ฐœ ํŽ˜์ด์ง€๋กœ ๋งŒ๋“ค์–ด์„œ ํŒŒ์ผ๋กœ ์ €์žฅํ•ด์ค˜.`,"brain.fvl.done":`์ฒดํ—˜ ์™„๋ฃŒ! ์ด์ œ ์ง„์งœ ์ž๋ฃŒ๋ฅผ ๋„ฃ์–ด๋ณด์„ธ์š”.`,"brain.fvl.remove":`๋ฐ๋ชจ ๋ฐ์ดํ„ฐ ์ง€์šฐ๊ธฐ`,"brain.fvl.removing":`์ง€์šฐ๋Š” ์ค‘...`,"brain.fvl.error":`์‹คํŒจํ–ˆ์–ด์š”: {reason}`,"brain.fvl.connectCta":`๋‚ด ํด๋” ์—ฐ๊ฒฐํ•˜๊ธฐ`,"brain.fvl.cleanupCta":`์ƒ˜ํ”Œ ์ •๋ฆฌํ•˜๊ธฐ`,"brain.steps.aria":`์—์ด์ „ํŠธ ์‹คํ–‰ ๋‹จ๊ณ„`,"brain.steps.live":`{count}๋‹จ๊ณ„ ์ง„ํ–‰ ์ค‘`,"brain.steps.summary":`{count}๋‹จ๊ณ„ ์‹คํ–‰๋จ`,"brain.steps.planned":`๊ณ„ํš ์ˆ˜๋ฆฝ`,"brain.steps.tool":`๋„๊ตฌ ์‹คํ–‰`,"brain.steps.tool.failed":`๋„๊ตฌ ์‹คํ–‰ ์‹คํŒจ`,"brain.steps.proposed":`๋ณ€๊ฒฝ ์ œ์•ˆ์œผ๋กœ ์ €์žฅ`,"brain.steps.blocked":`์ •์ฑ…์œผ๋กœ ์ฐจ๋‹จ๋จ`,"brain.steps.parseError":`๋ชจ๋ธ ์‘๋‹ต ๋ณด์ •`,"brain.steps.verdict":`๊ฒ€์ฆ ๊ฒฐ๊ณผ`,"brain.steps.final":`๋งˆ๋ฌด๋ฆฌ`,"brain.steps.state":`์ƒํƒœ ๋ณ€๊ฒฝ`,"brain.steps.rollback":`๋ณ€๊ฒฝ ๋˜๋Œ๋ฆผ`,"brain.steps.step":`๋‹จ๊ณ„`,"brain.sourceModal.aria":`์ถœ์ฒ˜ ์›๋ฌธ: {title}`,"brain.sourceModal.open":`์›๋ฌธ ๋ณด๊ธฐ`,"brain.sourceModal.openAria":`์ถœ์ฒ˜ ์›๋ฌธ ๋ณด๊ธฐ: {title}`,"brain.sourceModal.close":`์›๋ฌธ ๋‹ซ๊ธฐ`,"brain.sourceModal.loading":`์›๋ฌธ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘โ€ฆ`,"brain.sourceModal.error":`์›๋ฌธ์„ ๋ถˆ๋Ÿฌ์˜ค์ง€ ๋ชปํ–ˆ์–ด์š”: {reason}`,"brain.sourceModal.empty":`์ด ์ถœ์ฒ˜์—๋Š” ์ €์žฅ๋œ ๋ณธ๋ฌธ์ด ์—†์–ด์š”.`,"brain.sourceModal.provenance":`์ถœ์ฒ˜ ์ •๋ณด`,"brain.watch.aria":`ํด๋” ๊ฐ์‹œ ์ƒํƒœ`,"brain.watch.title":`์—ฐ๊ฒฐ๋œ ํด๋” ๊ฐ์‹œ`,"brain.watch.notLive":`์‹ค์‹œ๊ฐ„ ์•„๋‹˜ โ€” ์ฃผ๊ธฐ ์Šค์บ”`,"brain.watch.scan.never":`์•„์ง ์Šค์บ” ์ „`,"brain.watch.scan.now":`๋ฐฉ๊ธˆ ์Šค์บ”`,"brain.watch.scan.minutes":`{count}๋ถ„ ์ „ ์Šค์บ”`,"brain.watch.scan.hours":`{count}์‹œ๊ฐ„ ์ „ ์Šค์บ”`,"brain.watch.scan.days":`{count}์ผ ์ „ ์Šค์บ”`,"brain.watch.ingested":`+{count} ๋ฐ˜์˜`,"brain.watch.tracked":`{count}๊ฐœ ํŒŒ์ผ ์ถ”์  ์ค‘`,"brain.watch.errors":`์ตœ๊ทผ ์˜ค๋ฅ˜`,"brain.approval.countdown":`๋‚จ์€ ์‹œ๊ฐ„ {time}`,"brain.approval.countdown.warning":`2๋ถ„ ์•ˆ์— ๋งŒ๋ฃŒ๋ผ์š” โ€” ์ง€๊ธˆ ๊ฒฐ์ •ํ•ด ์ฃผ์„ธ์š”.`,"brain.approval.expiredReplan":`๋‹ค์‹œ ๊ณ„ํšํ•˜๊ธฐ`,"brain.approval.pendingNotice":`์Šน์ธ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ž‘์—…์ด ์žˆ์–ด์š”: {goal}`,"brain.approval.pendingNotice.generic":`์Šน์ธ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ž‘์—…์ด ์žˆ์–ด์š”.`,"brain.approval.pendingNotice.aria":`์Šน์ธ ๋Œ€๊ธฐ ์‹คํ–‰ ์•Œ๋ฆผ`,"brain.approval.pendingNotice.expiry":`{time}๊นŒ์ง€ ์œ ํšจํ•ด์š”. ์›๋ž˜ ๋Œ€ํ™”์˜ ์Šน์ธ ์นด๋“œ์—์„œ ์ด์–ด๊ฐ€๊ฑฐ๋‚˜, ๊ฐ™์€ ์š”์ฒญ์„ ๋‹ค์‹œ ๋ณด๋‚ด ์ฃผ์„ธ์š”.`,"brain.approval.pendingNotice.hint":`์›๋ž˜ ๋Œ€ํ™”์˜ ์Šน์ธ ์นด๋“œ์—์„œ ์ด์–ด๊ฐ€๊ฑฐ๋‚˜, ๊ฐ™์€ ์š”์ฒญ์„ ๋‹ค์‹œ ๋ณด๋‚ด ์ฃผ์„ธ์š”.`,"brain.files.brainOk":`Brain์— ๊ธฐ์–ต๋จ โœ“`,"brain.files.brainPending":`๊ธฐ์–ต ๋Œ€๊ธฐ ์ค‘`,"brain.files.brainFailed":`๊ธฐ์–ต ์‹คํŒจ`,"brain.agent.repairs":`๋ชจ๋ธ ์‘๋‹ต์„ {count}ํšŒ ๋ณด์ •ํ–ˆ์–ด์š”`,"brain.agent.explanation.why":`์™œ ์ด๋ ‡๊ฒŒ ๋๋‚ฌ๋Š”์ง€ ์š”์•ฝํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.`,"brain.stats.memories":`๊ธฐ์–ต`,"brain.stats.links":`์—ฐ๊ฒฐ`,"brain.stats.memoryKinds":`๊ธฐ์–ต ์ข…๋ฅ˜`,"brain.stats.linkKinds":`์—ฐ๊ฒฐ ์ข…๋ฅ˜`,"brain.stats.sources":`์ถœ์ฒ˜`,"brain.stats.items":`ํ•ญ๋ชฉ`,"brain.stats.bytes":`๋ฐ”์ดํŠธ`,"brain.stats.health":`์ƒํƒœ`,"brain.stats.format":`Brain ํ˜•์‹`,"brain.stats.storage":`์ €์žฅ์†Œ`,"brain.value.reported":`๋ณด๊ณ ๋จ`,"brain.graph.nodeStats":`์ค‘์š”๋„ {importance} ยท ์—ฐ๊ฒฐ {links}๊ฐœ`,"brain.memory.recall.title":`๊ธฐ์–ต ๋‹ค์‹œ ์ฐพ๊ธฐ`,"brain.memory.recall.detail":`์ €์žฅ๋œ ๊ธฐ์–ต์„ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.`,"brain.memory.recall.placeholder":`๋‹ค์‹œ ์ฐพ์„ ๊ธฐ์–ต์˜ ๋‚ด์šฉ...`,"brain.memory.recall.action":`์ฐพ๊ธฐ`,"brain.memory.recall.completed":`๊ธฐ์–ต ๊ฒ€์ƒ‰ ์™„๋ฃŒ`,"brain.memory.compact":`์••์ถ• ์ •๋ฆฌ`,"brain.memory.rebuildVector":`๋ฒกํ„ฐ ๋‹ค์‹œ ๋งŒ๋“ค๊ธฐ`,"brain.sources.title":`์ถœ์ฒ˜์™€ ์ด๋ ฅ`,"brain.sources.detail":`๊ธฐ์–ต์ด ์–ด๋””์—์„œ ์™”๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.`,"brain.sources.loading":`์ถœ์ฒ˜ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘`,"brain.sources.empty":`์•„์ง ์ถœ์ฒ˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค`,"brain.sources.emptyDetail":`์ƒˆ ๊ธฐ์–ต์˜ ๋Œ€ํ™”, ์ˆ˜๋™ ์ž…๋ ฅ, ๋ฌธ์„œ ๋˜๋Š” ๊ฐ€์ ธ์˜ค๊ธฐ ์ถœ์ฒ˜๊ฐ€ ์—ฌ๊ธฐ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.`,"brain.sources.fallback":`์ถœ์ฒ˜ {index}`,"brain.sources.createdUnknown":`์ƒ์„ฑ ์‹œ๊ฐ„์ด ๊ธฐ๋ก๋˜์ง€ ์•Š์Œ`,"brain.sources.inspectable":`ํ™•์ธ ๊ฐ€๋Šฅ`,"brain.sources.missingProvenance":`์ถœ์ฒ˜ ์ด๋ ฅ ์—†์Œ`,"brain.sources.copy":`์ถœ์ฒ˜ ๋ณต์‚ฌ`,"brain.sources.legacyMissing":`์ด์ „ ๊ธฐ์–ต์—๋Š” ์ถœ์ฒ˜ ๊ฒฝ๋กœ๋‚˜ ๋Œ€ํ™”๊ฐ€ ๊ธฐ๋ก๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰์€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ถœ์ฒ˜ ์ด๋ ฅ์ด ์™„์ „ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.`,"brain.sources.type.chat":`๋Œ€ํ™”`,"brain.sources.type.document":`๋ฌธ์„œ`,"brain.sources.type.import":`๊ฐ€์ ธ์˜ค๊ธฐ`,"brain.sources.type.manual":`์ˆ˜๋™ ์ž…๋ ฅ`,"brain.sources.type.unknown":`์•Œ ์ˆ˜ ์—†๋Š” ์ถœ์ฒ˜`,"brain.portability.title":`๋‚ด๋ณด๋‚ด๊ธฐ์™€ ๋ฐฑ์—…`,"brain.portability.detail":`Brain ๋ฐ์ดํ„ฐ๋ฅผ ๋‚ด๋ณด๋‚ด๊ฑฐ๋‚˜ ๋ฐฑ์—…ํ•˜๊ณ  ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.`,"brain.portability.export":`Brain ๋‚ด๋ณด๋‚ด๊ธฐ`,"brain.portability.backup":`๋ฐฑ์—… ๋งŒ๋“ค๊ธฐ`,"brain.portability.importPlaceholder":`๊ฐ€์ ธ์˜ค๊ธฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์œ„ํ•ด ๋‚ด๋ณด๋‚ธ Brain ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ™์—ฌ๋„ฃ์œผ์„ธ์š”`,"brain.portability.previewImport":`๊ฐ€์ ธ์˜ค๊ธฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ`,"brain.portability.importCompleted":`๊ฐ€์ ธ์˜ค๊ธฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์™„๋ฃŒ`},en:{"brain.level":`Level`,"brain.depth.1":`Now memory`,"brain.depth.2":`Older memory`,"brain.depth.3":`Topics`,"brain.depth.4":`Relationships`,"brain.depth.5":`Full knowledge graph`,"brain.depthTitle.1":`Depth 1: Active Context`,"brain.depthLabel.1":`Living Brain`,"brain.depthLabel.2":`Memory Layer`,"brain.depthLabel.3":`Knowledge Layer`,"brain.depthLabel.4":`Relationship Layer`,"brain.depthLabel.5":`Knowledge Graph`,"brain.view.memories":`Memories`,"brain.view.topics":`Topics`,"brain.view.relationships":`Relationships`,"brain.view.graph":`Graph`,"brain.surface":`Back`,"brain.aria.home":`Lattice Brain`,"brain.aria.exploration":`Brain exploration`,"brain.aria.quickViews":`Brain quick views`,"brain.depthRail.aria":`Brain depth progress`,"brain.aria.conversation":`Conversation`,"brain.aria.ownership":`Brain ownership guarantees`,"brain.aria.actions":`Brain primary actions`,"brain.aria.starterPrompts":`Starter prompts`,"brain.aria.overview":`Brain overview`,"brain.aria.graph":`Knowledge Graph`,"brain.edition":`Production Ready`,"brain.edition.tip":`Lattice AI {version} โ€” a Digital Brain you can understand and use at a glance`,"brain.local":`Local-first`,"brain.portable":`Portable`,"brain.private":`Private`,"brain.admin":`Admin Console`,"brain.command.aria":`Product status and next action`,"brain.command.kicker":`Product command center`,"brain.command.title":`A Brain ready to use now`,"brain.command.score":`Product readiness`,"brain.command.next":`Next action`,"brain.command.next.empty":`Add a first source, then ask immediately.`,"brain.command.next.forming":`Open topics to see how memories are grouping.`,"brain.command.next.alive":`Check the evidence, then switch models whenever you like.`,"brain.command.metrics":`Brain product metrics`,"brain.command.metric.memories":`{count} memories`,"brain.command.metric.topics":`{count} topics`,"brain.command.metric.sources":`{count} healthy sources`,"brain.command.metric.proof":`{count} pieces of evidence`,"brain.command.source.empty":`No ingestion yet`,"brain.command.action.add":`Add source`,"brain.command.action.find":`Inspect topics`,"brain.command.action.find.detail":`See grouped memory structure`,"brain.command.action.proof":`See the evidence`,"brain.command.action.own":`Manage ownership`,"brain.command.action.own.detail":`Backup, restore, settings`,"brain.command.signal.local":`Local-first`,"brain.command.signal.private":`Consent gated`,"brain.command.signal.portable":`Backup ready`,"brain.chatHome.aria":`Brain Chat Home`,"brain.chatHome.contextAria":`Brain status and source panel`,"brain.chatHome.headerLine":`Start with the work in front of you.`,"brain.chatHome.kicker":`Lattice Brain`,"brain.chatHome.title":`What should we work on?`,"brain.chatHome.body":`Ask or add sources. Your Brain remembers, connects, and uses them in later answers.`,"brain.chatHome.utility":`Brain details`,"brain.chatHome.utility.basic":`Sources and Brain settings`,"brain.files.title":`Your file is ready`,"brain.files.download":`Download`,"brain.files.downloading":`Downloadingโ€ฆ`,"brain.files.downloadError":`Could not download: {reason}`,"brain.files.hint":`Saved safely in your Lattice workspace folder on this computer.`,"brain.files.repaired":`Auto-repaired โ€” please double-check the content`,"brain.agent.needsReview":`Completion could not be verified โ€” please check the result yourself.`,"brain.agent.failed":`The task could not be completed. Please try again.`,"brain.code.copy":`Copy`,"brain.code.copied":`Copied`,"brain.code.save":`Save as file`,"brain.code.saving":`Savingโ€ฆ`,"brain.code.saveError":`Could not save as a file: {reason}`,"brain.firstScreen.aria":`Brain first screen`,"brain.home.kicker":`Where your memory grows`,"brain.home.insights":`What Brain has organized`,"brain.home.shelf.close":`Close Brain support panel`,"brain.home.insights.detail":`Open memory, connections, and next steps when you need them`,"brain.firstScreen.title":`Talk or add something. Brain connects it.`,"brain.firstScreen.body":`Chats, files, and folders become durable memory, a real knowledge graph, and grounded automation.`,"brain.firstScreen.state.quiet":`Waiting for something to remember`,"brain.firstScreen.state.forming":`Organizing something new`,"brain.firstScreen.state.alive":`Your memory is ready to use`,"brain.firstScreen.readiness":`Brain readiness {score}%`,"brain.firstScreen.memoryAria":`What your Brain remembers and connects`,"brain.firstScreen.memory":`Just remembered`,"brain.firstScreen.memory.empty":`Nothing yet. Add the first thought or document.`,"brain.firstScreen.memory.with":`{title}`,"brain.firstScreen.connection":`Connecting topic`,"brain.firstScreen.concept.empty":`Related topics appear here as sources arrive.`,"brain.firstScreen.concept.with":`{title}`,"brain.firstScreen.next":`Next best step`,"brain.firstScreen.next.source":`Add a document or note and your Brain will start forming memory.`,"brain.firstScreen.next.ask":`Ask the first question and your Brain will answer from what it knows.`,"brain.firstScreen.next.graph":`Open the memory graph to see what your Brain connected.`,"brain.firstScreen.actions":`Primary Brain actions`,"brain.firstScreen.action.talk":`Talk to Brain`,"brain.firstScreen.action.source":`Add sources`,"brain.firstScreen.action.graph":`View graph`,"brain.living.aria":`Your living Brain`,"brain.living.open":`Open Brain's real knowledge graph`,"brain.living.graph":`The center of your knowledge graph`,"brain.living.depth":`Brain depth {depth}`,"brain.living.state.idle":`Keeping your memory`,"brain.living.state.listening":`Listening`,"brain.living.state.thinking":`Thinking with you`,"brain.living.state.recalling":`Recalling memory`,"brain.living.state.synthesizing":`Making connections`,"brain.living.state.planning":`Planning`,"brain.living.state.acting":`Acting`,"brain.living.state.resting":`Waiting with you`,"brain.flow.sources.aria":`Knowledge sources entering Brain`,"brain.flow.sources":`Knowledge coming in`,"brain.flow.vital":`Brain vital signal`,"brain.flow.memory":`The remembering Brain`,"brain.flow.graph":`Real knowledge graph`,"brain.flow.graph.aria":`Knowledge graph with {concepts} real topics and {relationships} relationships`,"brain.flow.graph.empty":`Your first chat or source will create real topics and connections here.`,"brain.flow.graph.empty.short":`Forming the first connection`,"brain.flow.node.aria":`Open {type} topic {label} in the knowledge graph`,"brain.flow.source.empty":`Waiting for the first chat or source`,"brain.flow.status.emerged":`{memories} new memories and {entities} topics entered the real Brain.`,"brain.flow.status.ready":`Keeping memory and connections around {focus} ready.`,"brain.flow.status.empty":`Ask or add a source and Brain will start forming memory and connections.`,"brain.flow.path.aria":`How knowledge becomes memory and automation`,"brain.flow.path.input":`Input`,"brain.flow.path.waiting":`Waiting`,"brain.flow.path.memory":`Memory`,"brain.flow.path.memoryCount":`{count} real memories`,"brain.flow.path.connections":`Connections`,"brain.flow.path.graphCount":`{concepts} topics ยท {relationships} links`,"brain.flow.path.automation":`Next action`,"brain.flow.path.actionCount":`{count} memory-based suggestions`,"brain.flow.conversation":`This conversation`,"brain.flow.conversation.ready":`Conversation kept in Brain memory`,"brain.flow.relationships":`{count} real relationships`,"brain.automation.kicker":`From memory to action`,"brain.automation.title":`What Brain can do with this memory`,"brain.automation.more":`View all memory-grounded actions`,"brain.automation.close":`Close memory-grounded actions`,"brain.automation.body":`Brain suggests questions, reviews, and Agent work from the current memory focus and its evidence.`,"brain.automation.basedOn":`Suggested from this memory`,"brain.automation.empty":`As memory grows, Brain will suggest evidence-backed automation here.`,"brain.automation.guard":`Suggestions come from memory; execution begins only after you choose one.`,"brain.automation.intent.ask":`Ask from memory`,"brain.automation.intent.delegate":`Run Agent`,"brain.automation.intent.review":`Draft for review`,"brain.automation.intent.route":`Inspect graph`,"brain.brief.aria":`Brain briefing`,"brain.brief.kicker":`At a glance`,"brain.brief.headline.quiet":`Empty, but ready to start`,"brain.brief.headline.forming":`New memory is forming into topics`,"brain.brief.headline.alive":`There is memory worth using now`,"brain.brief.body.quiet":`Add a source or ask a question; this space will show what your Brain just learned and what to do next.`,"brain.brief.body.forming":`Your Brain is connecting memory around {focus}.`,"brain.brief.body.alive":`Ask about {focus} now, or open the graph to inspect the links.`,"brain.brief.focus":`Focus now`,"brain.brief.focus.empty":`No first memory yet`,"brain.brief.focus.empty.detail":`Start with a document, note, web page, or question.`,"brain.brief.evidence.aria":`Brain brief evidence`,"brain.brief.evidence.durable":`saved`,"brain.brief.evidence.durable.detail":`Memories kept on your computer that stay even if you change models`,"brain.brief.evidence.graph":`topics`,"brain.brief.evidence.graph.detail":`Topics visible in the Knowledge Graph`,"brain.brief.evidence.sources":`sources`,"brain.brief.evidence.sources.detail":`Available memory tiers`,"brain.brief.actions":`Brain brief next actions`,"brain.brief.action.add":`Add source`,"brain.brief.action.add.detail":`Files, folders, notes, web`,"brain.brief.action.ask":`Ask now`,"brain.brief.action.ask.detail":`Jump to the composer`,"brain.brief.action.topics":`Inspect links`,"brain.brief.action.topics.detail":`Open connected topics`,"brain.brief.action.verify":`Verify proof`,"brain.brief.action.verify.detail":`See what stays even if you change models`,"brain.brief.action.backup":`Manage backup`,"brain.brief.action.backup.detail":`Export and keep your Brain`,"brain.suggestions.aria":`Brain suggested questions`,"brain.suggestions.title":`Try one of these`,"brain.proactive.aria":`Brain suggested actions`,"brain.proactive.title":`Brain suggests doing next`,"brain.proactive.addSource.label":`Add a source`,"brain.proactive.addSource.detail":`Give Brain something useful to remember`,"brain.proactive.seed.label":`Seed memory`,"brain.proactive.seed.detail":`Talk through what Brain should remember`,"brain.proactive.evidence.label":`Review evidence`,"brain.proactive.evidence.detail":`Split facts, weak signals, and risks`,"brain.proactive.delegate.label":`Delegate to Agent`,"brain.proactive.delegate.detail":`Turn the current focus into an execution plan`,"brain.proactive.review.label":`Save review task`,"brain.proactive.review.detail":`Create a Review Center draft for approval`,"brain.proactive.map.label":`Open connection map`,"brain.proactive.map.detail":`Inspect related graph topics`,"brain.proactive.weekly.label":`Weekly Brain review`,"brain.proactive.weekly.detail":`Draft changes, decisions, and delegation candidates`,"brain.proactive.trail.aria":`Brain suggested action activity`,"brain.proactive.trail.title":`Recent action trail`,"brain.proactive.status.running":`Running`,"brain.proactive.status.completed":`Completed`,"brain.proactive.status.failed":`Failed`,"brain.proactive.intent.ask":`Brain ask`,"brain.proactive.intent.delegate":`Agent delegation`,"brain.proactive.intent.review":`Review draft`,"brain.proactive.intent.route":`Navigation`,"brain.suggestion.start.label":`Start guide`,"brain.suggestion.start.detail":`Suggest first sources and questions`,"brain.suggestion.start.prompt":`Recommend the best sources and first questions to start my Brain.`,"brain.suggestion.context.label":`Prepare context`,"brain.suggestion.context.detail":`Prioritize what to add next`,"brain.suggestion.context.prompt":`Prioritize the documents, notes, and webpages that would be most useful to add to my Brain now.`,"brain.suggestion.focus.label":`Focus brief`,"brain.suggestion.focus.detail":`Turn current memory into next actions`,"brain.suggestion.focus.prompt":`Using {focus}, summarize the key decisions I should check now and the next actions.`,"brain.suggestion.evidence.label":`Check evidence`,"brain.suggestion.evidence.detail":`Answer from remembered proof`,"brain.suggestion.evidence.prompt":`Answer about {focus} using citations from the evidence my Brain has.`,"brain.suggestion.graph.label":`Explore links`,"brain.suggestion.graph.detail":`Inspect related graph topics`,"brain.suggestion.graph.prompt":`Explain the topics connected to {focus} with supporting evidence.`,"brain.suggestion.history.label":`Follow-ups`,"brain.suggestion.history.detail":`Find work hidden in recent chats`,"brain.suggestion.history.prompt":`Find the follow-up work I may have missed in recent conversations related to {focus}.`,"brain.tab.conversation":`Chat`,"brain.tab.memory":`My sources`,"brain.tab.knowledge":`Search`,"brain.tab.relationships":`Relationships`,"brain.tab.graph":`Connections`,"brain.tab.portability":`Care`,"brain.headline.conversation":`Talk to your Brain.`,"brain.headline.memory":`Review saved memories and their sources.`,"brain.headline.knowledge":`Find something in your memory.`,"brain.headline.relationships":`Relationships, when you need the why.`,"brain.headline.graph":`Explore how your memories connect.`,"brain.headline.portability":`Care for the Brain.`,"brain.search.title":`Search memory`,"brain.search.detail":`Find what you need across conversations and added sources.`,"brain.search.placeholder":`Search people, documents, or topics`,"brain.search.cta":`Search`,"brain.search.results":`Results`,"brain.group.knowledge":`Knowledge`,"brain.group.source":`Sources`,"brain.group.activity":`Activity`,"brain.group.memory":`Memory`,"brain.group.people":`People`,"brain.group.system":`System`,"brain.group.other":`Other`,"graph.search.basic":`Search ideas, files, people, and notesโ€ฆ`,"graph.search.advanced":`Search graph labels, types, provenanceโ€ฆ`,"graph.group.all":`All groups`,"graph.labels.important":`Important labels`,"graph.labels.all":`All labels`,"graph.labels.off":`Hide labels`,"graph.fit":`Fit`,"graph.canvas.aria":`Knowledge graph canvas โ€” use the arrow keys to move between items and Enter to open one`,"graph.deep.title":`Connection map`,"graph.deep.summary":`Showing {nodes} ideas and {edges} connections out of {total} saved items.`,"graph.filtered":`{count} hidden`,"graph.allInView":`all in view`,"graph.importance":`Importance`,"graph.clearFocus":`Clear selection`,"graph.searchAll":`Search all memories`,"graph.collapsed":`collapsed`,"graph.focus.title":`Details`,"graph.focus.desc":`Click any item to see why it matters.`,"graph.importanceBadge":`{n} importance`,"graph.source.none":`No source recorded`,"graph.created.none":`No saved time recorded`,"graph.copySource":`Copy source`,"graph.collapsedGroup":`Collapsed group`,"graph.expandGroup":`Expand group`,"graph.nothingSelected.title":`Nothing selected yet`,"graph.nothingSelected.detail":`Click an item or group in the graph.`,"graph.empty.title":`No connected memories yet`,"graph.empty.detail":`Add a document, note, or folder and Lattice builds connected memories with sources.`,"graph.important.title":`Important items`,"graph.important.desc":`What's most connected right now.`,"graph.advanced.title":`Explore relationships`,"graph.advanced.desc.basic":`Open this when you want to see how things connect.`,"graph.advanced.desc.other":`Explore relationships, sources, and graph structure.`,"graph.minImportance.aria":`Minimum relationship importance`,"graph.coverage":`Source coverage`,"brain.action.add":`Add`,"brain.action.find":`Find`,"brain.action.model":`Model`,"brain.action.settings":`Settings`,"brain.empty.kicker":`Try one`,"brain.empty.title":`Pick a starter or write your own.`,"brain.empty.body":`Use the Document button when you want to add a file.`,"brain.empty.trail.label":`First Brain flow`,"brain.empty.trail.save":`1. Save first memory`,"brain.empty.trail.recall":`2. See it in Brain Home`,"brain.empty.trail.backup":`3. Own it with backup`,"brain.home.line":`The center of your local knowledge, clearer with every conversation`,"brain.prompt.remember":`Find the important decisions in my sources`,"brain.prompt.know":`Summarize the key points in this document`,"brain.prompt.plan":`Prioritize what I should do next`,"brain.placeholder":`Ask a question, paste a source, or describe a task`,"brain.composer.attachments":`Attach sources`,"brain.composer.hint":`Enter to send ยท Shift+Enter for a new line`,"brain.upload.cta":`Add file or document`,"brain.upload.ctaShort":`Document`,"brain.upload.uploading":`Adding...`,"brain.upload.hint":`After upload, it reappears as real memory and graph context.`,"brain.upload.pending":`Adding {name} to Brain.`,"brain.upload.saved":`{name} was saved to Brain.`,"brain.upload.failed":`Could not add the document: {reason}`,"brain.ingest.aria":`Add to Brain`,"brain.ingest.kicker":`Teach your Brain`,"brain.ingest.title":`Choose something on your computer and watch it enter memory and the graph.`,"brain.ingest.dock.title":`Files ยท folders ยท notes ยท web`,"brain.ingest.dock.close":`Close source input`,"brain.ingest.type.chat":`Chat`,"brain.ingest.file":`Add file`,"brain.ingest.file.detail":`PDFs, docs, tables, notes`,"brain.ingest.folder":`Add folder`,"brain.ingest.folder.placeholder":`Local folder path`,"brain.ingest.note":`Add note`,"brain.ingest.note.placeholder":`Paste a decision or context`,"brain.ingest.web":`Add web`,"brain.ingest.web.placeholder":`https://...`,"brain.ingest.folder.pending":`Connecting {path} to Brain.`,"brain.ingest.folder.saved":`{path} is connected to Brain.`,"brain.ingest.folder.failed":`Could not add the folder: {reason}`,"brain.ingest.note.pending":`Saving note to Brain.`,"brain.ingest.note.saved":`Note was saved to Brain.`,"brain.ingest.note.failed":`Could not add the note: {reason}`,"brain.ingest.web.pending":`Reading {url} into Brain.`,"brain.ingest.web.saved":`{url} was saved to Brain.`,"brain.ingest.web.failed":`Could not add the web page: {reason}`,"brain.ingest.type.file":`File`,"brain.ingest.type.folder":`Folder`,"brain.ingest.type.note":`Note`,"brain.ingest.type.web":`Web`,"brain.ingest.cta.file":`Pick a file to add now`,"brain.ingest.cta.folder":`Enter a path and press Enter`,"brain.ingest.cta.note":`Paste content and press Enter`,"brain.ingest.cta.web":`Enter a URL and press Enter`,"brain.ingest.active":`Processing {label}`,"brain.ingest.progress.aria":`Ingestion progress for {label}`,"brain.ingest.stage.preparing":`Preparing`,"brain.ingest.stage.parsing":`Parsing`,"brain.ingest.stage.embedding":`Embedding`,"brain.ingest.stage.indexing":`Indexing`,"brain.ingest.stage.complete":`Memorized`,"brain.ingest.stage.error":`Failed`,"brain.ingest.stage.error.hint":`It did not enter Brain`,"brain.ingest.stage.preparing.hint":`Reading the source`,"brain.ingest.stage.parsing.hint":`Extracting text and structure`,"brain.ingest.stage.embedding.hint":`Turning into semantic vectors`,"brain.ingest.stage.indexing.hint":`Linking into the knowledge graph`,"brain.ingest.stage.complete.hint":`It is now part of your knowledge`,"brain.ingest.result":`{memories} new memories ยท {entities} new entities`,"brain.ingest.result.empty":`Merged into existing knowledge`,"brain.ingest.quality.low":`This source was hard to read. Some content may be missing or inaccurate.`,"brain.freshness.pending":`Some knowledge is still waiting for indexing ({count} items). It will reach answers shortly.`,"brain.freshness.staleEmbedder":`The embedding model changed`,"brain.freshness.staleEmbedder.detail":`Part of the index was built with the previous model, so recall may be weaker. Re-indexing fixes it.`,"brain.freshness.reindex":`Re-index now`,"brain.freshness.reindex.running":`Re-indexingโ€ฆ`,"brain.freshness.reindex.failed":`Re-indexing failed. Please try again shortly.`,"brain.contextQuality.limited":`This answer was produced with limited graph-backed context.`,"brain.contextQuality.reason":`Reason: {reason}`,"brain.jobs.aria":`Background ingestion jobs`,"brain.jobs.title":`Organizing your sources`,"brain.jobs.progress":`{processed}/{total} processed`,"brain.jobs.progressAria":`Ingestion progress: {processed} of {total} processed`,"brain.jobs.failedCount":`{count} failed`,"brain.jobs.resume":`Resume`,"brain.jobs.resuming":`Resumingโ€ฆ`,"brain.jobs.status.queued":`Queued`,"brain.jobs.status.running":`Running`,"brain.jobs.status.completed":`Completed`,"brain.jobs.status.failed":`Failed`,"brain.jobs.status.partial":`Partially completed`,"brain.jobs.report.title":`Folder ingest complete`,"brain.jobs.report.titlePartial":`Folder ingest partially complete`,"brain.jobs.report.documents":`+{count} documents`,"brain.jobs.report.vector":`vector index {percent}% fresh`,"brain.jobs.report.skipped":`Skipped or failed files`,"brain.jobs.report.dismiss":`Dismiss ingest report`,"brain.preview.open":`Preview`,"brain.preview.close":`Close preview`,"brain.preview.aria":`File preview: {name}`,"brain.preview.loading":`Loading previewโ€ฆ`,"brain.preview.error":`Could not load the preview: {reason}`,"brain.preview.sandboxNote":`Safe preview โ€” scripts and external connections never run.`,"brain.dnd.title":`Drop to add to your Brain`,"brain.dnd.detail":`Dropped files are organized into memories right away.`,"brain.timeline.aria":`Recent memory emergence timeline`,"brain.timeline.emergenceTitle":`Knowledge that just emerged`,"brain.timeline.recent":`Recent ingestion`,"brain.timeline.newMemories":`{count} new memories`,"brain.timeline.newEntities":`{count} new entities`,"brain.timeline.at":`{time}`,"brain.timeline.justNow":`just now`,"brain.timeline.minutesAgo":`{count}m ago`,"brain.timeline.empty":`No ingestion yet. Add anything above to begin.`,"brain.image":`Image`,"brain.unavailable":`Temporarily unavailable`,"brain.noModel.message":`No model is loaded yet. Open Models, prepare a local model, then send the message again.`,"brain.noModel.status":`Load a model before starting chat.`,"brain.noModel.banner":`Your Brain's voice (a model) isn't ready yet. Prepare one to start talking.`,"brain.noModel.cta":`Prepare a model`,"brain.newChat":`New chat`,"brain.stop":`Stop`,"brain.stopped":`Stopped generating the response.`,"brain.stopped.empty":`(Response stopped)`,"brain.history.title":`Past conversations`,"brain.history.hint":`Recent conversations your Brain remembers. Click one to continue.`,"brain.history.aria":`Past conversation list`,"brain.history.messages":`{count} messages`,"brain.history.resumeAria":`Resume conversation: {title}`,"brain.history.deleteAria":`Delete conversation: {title}`,"brain.history.deleteConfirm":`Press again to delete`,"brain.history.deleted":`Conversation deleted.`,"brain.history.deleteFailed":`Could not delete the conversation: {reason}`,"brain.history.loading":`Loading conversation...`,"brain.history.loadFailed":`Could not load the conversation: {reason}`,"brain.history.emptyConversation":`No saved messages`,"brain.history.resumed":`Continuing your past conversation. Pick up where you left off.`,"brain.history.showMore":`Show more ({count})`,"brain.history.showLess":`Show less`,"brain.message.copy":`Copy`,"brain.message.copied":`Copied`,"brain.message.copyAria":`Copy the whole response`,"brain.message.regenerate":`Regenerate`,"brain.message.regenerateAria":`Answer the last question again`,"brain.message.saveTask":`Save task`,"brain.message.saveTaskAria":`Save this answer as a review inbox task draft`,"brain.message.followup.aria":`Answer follow-up questions`,"brain.message.followup.checklist":`Checklist`,"brain.message.followup.checklist.prompt":`Turn your previous answer into an actionable checklist.`,"brain.message.followup.evidence":`Evidence / uncertainty`,"brain.message.followup.evidence.prompt":`Separate the evidence in your previous answer from the parts that are still uncertain.`,"brain.message.followup.next":`Next 3`,"brain.message.followup.next.prompt":`Prioritize the next 3 things I should do based on your previous answer.`,"brain.imageAttached":`Image attached`,"brain.send":`Send`,"brain.saved":`Saved to memory ยท {topics} linked topics ยท {memories} related memories`,"brain.saved.detail":`Available later with source-aware recall.`,"brain.action.defaultTitle":`Brain answer follow-up`,"brain.action.saved":`Task draft saved to Review Center`,"brain.action.saveFailed":`Could not save the task draft: {reason}`,"brain.delegate.title":`Agent team`,"brain.delegate.detail":`Delegate the current draft as a goal and keep the result in Brain.`,"brain.delegate.cta":`Delegate`,"brain.delegate.running":`Delegating...`,"brain.delegate.saved":`Brain updated`,"brain.delegate.done":`Agent result synthesized into Brain memory.`,"brain.delegate.failed":`Agent delegation failed: {reason}`,"brain.recalled":`Recalled this memory: {title}`,"brain.overview.kicker":`Brain at a glance`,"brain.overview.title":`See memories and topics immediately.`,"brain.overview.graph":`Full graph`,"brain.overview.agent":`Agent outcomes`,"brain.overview.agentEmpty":`Delegated outcomes will stand out here.`,"brain.overview.recent":`Recent memories`,"brain.overview.recentEmpty":`No recent memories yet.`,"brain.overview.older":`Earlier memories`,"brain.overview.olderEmpty":`Earlier memories appear as conversations accumulate.`,"brain.overview.topics":`Main topics`,"brain.overview.topicsEmpty":`Topics are still forming.`,"brain.readiness.kicker":`Brain readiness`,"brain.readiness.aria":`Brain readiness score`,"brain.readiness.quiet":`Waiting for the first memory.`,"brain.readiness.forming":`Memories are becoming topics.`,"brain.readiness.alive":`Memories and relationships are connected.`,"brain.readiness.start":`View first memory`,"brain.readiness.grow":`Grow topics`,"brain.readiness.map":`Open map`,"brain.proof.aria":`Brain proof`,"brain.proof.context":`Recallable context`,"brain.proof.contextValue":`{count} saved`,"brain.proof.contextEmpty":`Waiting for first memory`,"brain.proof.model":`Survives model switches`,"brain.proof.noModel":`No model loaded`,"brain.proof.modelPending":`Proven after saving`,"brain.proof.store":`Knowledge store`,"brain.proof.storeValue":`{topics} topics ยท {vectors} memory pieces`,"brain.proof.recall":`Just recalled by Brain`,"brain.proof.recallEmpty.kicker":`Brain proof slot`,"brain.proof.recallEmpty.title":`After your first exchange, recalled memory appears here.`,"brain.proof.recallEmpty.detail":`No saved memory yet โ€” Lattice waits for real memory instead of inventing a placeholder example.`,"brain.proof.recallPending":`Saved โ€” getting ready to bring it back.`,"brain.proof.recallPending.detail":`When indexing finishes, this slot shows the actual memory Brain can bring back.`,"brain.modelDemo.aria":`Model switch proof`,"brain.modelDemo.kicker":`Model-independent Brain`,"brain.modelDemo.proven":`This memory lives outside the model.`,"brain.modelDemo.pending":`After the first memory is saved, model-switch proof appears.`,"brain.modelDemo.detail":`Current model: {model}. Recheck the same question against Brain evidence.`,"brain.modelDemo.verify":`Recheck same evidence`,"brain.modelDemo.change":`Switch model`,"brain.modelDemo.needQuestion":`Ask a question or add memory first, then recheck the same evidence.`,"brain.modelDemo.checking":`Rechecking the same Brain evidence with {model}.`,"brain.modelDemo.done":`The same Brain evidence is visible with {model}.`,"brain.proof.unavailable":`Brain evidence could not be verified: {reason}`,"brain.answerProof.aria":`Answer sources and memory proof`,"brain.answerProof.title":`Evidence and sources`,"brain.answerProof.modelProven":`Brain evidence outside {model}`,"brain.answerProof.modelPending":`{model} response ยท evidence pending`,"brain.answerProof.empty":`No linked source yet. Indexed memory appears here.`,"brain.citation.chip":`Source {num}`,"brain.citation.chip.long":`Source {num}: {title}`,"brain.citation.expand":`Expand source`,"brain.citation.close":`Close source`,"brain.citation.preview.from":`From: `,"brain.citation.preview.snippet":`Excerpt: `,"brain.citation.keyboard.tip":`Press Space or Enter to expand a source, Escape to close.`,"brain.citation.region":`Source citations referenced in the answer`,"brain.citation.announce.open":`Opened source {num}: {title}`,"brain.citation.announce.close":`Closed source preview.`,"brain.citation.count":`This answer cites {count} source(s).`,"brain.citation.score":`Relevance {score}%`,"brain.memory.empty.kicker":`First memory`,"brain.memory.empty":`Memory is quiet`,"brain.knowledge.empty":`Knowledge is forming`,"brain.graph.empty":`No matching knowledge yet`,"brain.graph.summaryFallback":`This concept is part of the deepest knowledge layer.`,"brain.graph.focused":`Ideas that appeared together in conversations and documents are connected by lines.`,"brain.graph.emptyFocus":`Your Brain graph grows as you add conversations, documents, and projects.`,"brain.graph.search":`Search`,"brain.graph.searchAria":`Search knowledge graph`,"brain.graph.control.panel":`Graph exploration controls`,"brain.graph.control.filter":`Filter`,"brain.graph.control.types":`Entity types`,"brain.graph.control.allTypes":`All types`,"brain.graph.control.time":`Time exploration`,"brain.graph.control.dateRange":`Recently added window`,"brain.graph.control.resetFilters":`Reset filters`,"brain.graph.control.recentWindow":`Last {days} days`,"brain.graph.control.allTime":`All time`,"brain.graph.control.toggleType":`Toggle {type} type`,"brain.graph.search.typeahead":`Search suggestions`,"brain.graph.search.typeaheadAria":`Search suggestion results`,"brain.graph.search.noMatches":`No matching nodes`,"brain.graph.search.matchCount":`{count} matches`,"brain.graph.focus.neighbors":`{count} neighbors highlighted`,"brain.graph.focus.smooth":`Smoothly focuses the selected node and highlights its neighbors.`,"brain.graph.focus.recent":`Recently added`,"brain.graph.focus.clear":`Clear focus`,"brain.rings.aria":`Brain memory depth rings`,"brain.rings.1":`Now`,"brain.rings.2":`Memory`,"brain.rings.3":`Topics`,"brain.rings.4":`Relations`,"brain.rings.5":`Graph`,"care.title":`Care for my Brain`,"care.subtitle":`Own it locally. Keep it portable.`,"care.private":`Private`,"care.ownershipModel":`Ownership model`,"care.export":`Export`,"care.export.detail":`Take it with you`,"care.backup":`Backup`,"care.backup.detail":`Save a copy`,"care.backup.count":`{count} backups`,"care.backup.ready":`Backups ready`,"care.archive":`Archive`,"care.archive.detail":`Encrypted Brain`,"care.path.placeholder":`Paste an archive path to inspect or preview`,"care.path.label":`Brain archive path`,"care.passphrase.placeholder":`Archive passphrase`,"care.passphrase.label":`Brain archive passphrase`,"care.passphrase.confirmPlaceholder":`Repeat passphrase`,"care.passphrase.confirmLabel":`Confirm Brain archive passphrase`,"care.passphrase.tooShort":`Use at least 12 characters.`,"care.passphrase.tooSimple":`Mix at least three of uppercase, lowercase, numbers, and symbols.`,"care.passphrase.mismatch":`Passphrases do not match.`,"care.passphrase.strong":`Passphrase strength is sufficient.`,"care.path.ready":`Archive path format looks valid.`,"care.path.invalidChars":`Archive path contains unsupported characters.`,"care.path.extension":`Use a .latticebrain, .zip, or .json archive.`,"care.inspect":`Inspect`,"care.restorePreview":`Restore preview`,"care.note":`Restore preview checks an archive without changing your Brain. Confirmed restore stays in Settings.`,"care.working":`Working`,"care.result.error":`Brain care action could not complete.`,"care.result.completed":`Brain care action completed.`,"care.result.path":`File: {path}`,"care.result.contents":`{memories} memories ยท {links} links ยท {conversations} conversations`,"care.result.dryRun":`Preview only; your current Brain was not changed.`,"intelligence.title":`Brain intelligence check`,"intelligence.subtitle":`Your Brain diagnoses its own knowledge.`,"intelligence.loading":`Diagnosing...`,"intelligence.unavailable":`Diagnosis is unavailable right now.`,"intelligence.score":`Overall score`,"intelligence.grade.excellent":`Excellent`,"intelligence.grade.good":`Good`,"intelligence.grade.attention":`Needs attention`,"intelligence.grade.critical":`Needs care`,"intelligence.grade.unknown":`No data yet`,"intelligence.dim.freshness":`Freshness`,"intelligence.dim.connectivity":`Connectivity`,"intelligence.dim.embedding_coverage":`Search readiness`,"intelligence.dim.consistency":`Consistency`,"intelligence.actions":`Recommended care`,"intelligence.action.rebuild_vector_index":`Rebuild the semantic search index`,"intelligence.action.review_orphans":`Review disconnected memories`,"intelligence.action.refresh_stale_knowledge":`Revisit stale knowledge`,"intelligence.action.resolve_contradictions":`Resolve conflicting memories`,"intelligence.insights":`Recent activity`,"intelligence.insights.recent":`{count} new items in the last 7 days`,"intelligence.insights.stale":`{count} stale items`,"intelligence.insights.orphans":`{count} disconnected items`,"intelligence.contradictions":`{count} conflicting memories`,"intelligence.consolidate":`Preview duplicate cleanup`,"intelligence.consolidate.working":`Checking...`,"intelligence.consolidate.none":`No duplicate memories found.`,"intelligence.consolidate.found":`Found {memories} duplicate memories ยท {edges} duplicate links`,"intelligence.consolidate.apply":`Clean up duplicate memories`,"intelligence.consolidate.applied":`Cleaned up {count} duplicate memories.`,"brain.answerProof.citationsLabel":`{count} evidence sources`,"brain.answerProof.marker":`Jump to source {index}`,"brain.answerProof.markerShort":`Source {index}`,"brain.answerProof.citationItem":`Source {index}: {title}`,"brain.answerProof.modelLine":`Evidence behind this {model} answer`,"brain.answerProof.why.aria":`Why this evidence was chosen`,"brain.answerProof.matched":`Matched words`,"brain.answerProof.matched.none":`Found directly in stored memory`,"brain.answerProof.confidence.high":`Strong match`,"brain.answerProof.confidence.medium":`Fair match`,"brain.answerProof.confidence.low":`Weak match`,"brain.garden.title":`My knowledge garden`,"brain.garden.loading":`Walking the gardenโ€ฆ`,"brain.garden.unavailable":`No garden to show yet. Add a little more material first.`,"brain.garden.bed.recent":`Newly arrived`,"brain.garden.bed.contradictions":`Disagrees with itself`,"brain.garden.bed.stale":`Gone stale`,"brain.garden.bed.frequent":`Most relied on`,"brain.garden.empty.recent":`Nothing new arrived recently.`,"brain.garden.empty.contradictions":`Nothing contradicts itself right now.`,"brain.garden.empty.stale":`Nothing has been left untouched.`,"brain.garden.empty.frequent":`No topic is heavily connected yet.`,"brain.evidenceActions.open":`Build from this evidence`,"brain.evidenceActions.title":`What you can build from this evidence`,"brain.evidenceActions.loading":`Looking for what this evidence supportsโ€ฆ`,"brain.evidenceActions.unavailable":`Nothing can be built directly from this answer's sources.`,"brain.rings.peek.aria":`Peek at {label} ยท {count} items`,"brain.rings.peek.title":`Peek at {label}`,"brain.rings.peek.summary":`{count} connections live in this layer.`,"brain.rings.count":`{count} items`,"brain.rings.close":`Close peek`,"brain.rings.deeper":`Open this layer`,"brain.rings.empty.now":`No recent conversation memory yet. Say something now.`,"brain.rings.empty.memories":`No durable memories yet. Add a document or a note.`,"brain.rings.empty.topics":`Topics emerge on their own as memories build up.`,"brain.rings.empty.graph":`The full graph opens once connections form.`,"brain.home.wakingHint":`Your Brain just woke up. Say anything or drop in one document and its first memory will form.`,"brain.firstFive.title":`First 5 minutes`,"brain.firstFive.aria":`First five minutes guide`,"brain.firstFive.subtitle":`Three small steps and you will feel what your Brain can do.`,"brain.firstFive.progress":`{done}/{total} done`,"brain.firstFive.dismiss":`Dismiss this guide`,"brain.firstFive.step.ask":`Ask your Brain a first question`,"brain.firstFive.step.ask.detail":`We fill a starter question into the box โ€” just press send.`,"brain.firstFive.step.add":`Add one file or note`,"brain.firstFive.step.add.detail":`A file, a note, or a web address โ€” anything works. It completes once something really goes in.`,"brain.firstFive.step.learned":`See what your Brain learned`,"brain.firstFive.step.learned.detail":`See how what you just added was organized.`,"brain.firstFive.step.done":`Done`,"brain.approval.aria":`Agent run approval`,"brain.approval.title":`Approval needed before running`,"brain.approval.summaryLabel":`Plan summary`,"brain.approval.expiry":`Expires if you don't decide by {time}.`,"brain.approval.approve":`Approve and run`,"brain.approval.edit":`Edit and run`,"brain.approval.cancel":`Cancel`,"brain.approval.running":`Running...`,"brain.approval.edit.label":`Edit plan (JSON)`,"brain.approval.edit.run":`Run this plan`,"brain.approval.edit.close":`Close editor`,"brain.approval.edit.invalid":`Could not parse the plan JSON. Please check the format.`,"brain.approval.resolved":`Approved and finished running.`,"brain.approval.cancelled":`Plan cancelled. Nothing was executed.`,"brain.approval.expired":`The approval window expired โ€” please ask again.`,"brain.approval.error":`Approval failed: {reason}`,"brain.grounding.supported":`Sources used`,"brain.grounding.none":`No sources`,"brain.fvl.title":`30-second tour`,"brain.fvl.aria":`30-second tour guide`,"brain.fvl.dismiss":`Dismiss this guide`,"brain.fvl.subtitle":`Add 3 sample documents, then ask right away and watch your Brain answer from memory.`,"brain.fvl.start":`Add 3 sample documents`,"brain.fvl.starting":`Adding...`,"brain.fvl.installed":`{count} sample documents went into your Brain.`,"brain.fvl.docs.aria":`Demo document list`,"brain.fvl.doc.duplicate":`already there`,"brain.fvl.ask.title":`Now try asking`,"brain.fvl.chips.aria":`Suggested questions`,"brain.fvl.next.title":`Next step`,"brain.fvl.filegen.chip":`Turn this into an HTML page`,"brain.fvl.filegen.prompt":`Turn what we just discussed about the Saessak Garden project into a simple HTML intro page and save it as a file.`,"brain.fvl.done":`Tour complete! Now add your real documents.`,"brain.fvl.remove":`Remove demo data`,"brain.fvl.removing":`Removing...`,"brain.fvl.error":`Failed: {reason}`,"brain.fvl.connectCta":`Connect my folder`,"brain.fvl.cleanupCta":`Clean up samples`,"brain.steps.aria":`Agent run steps`,"brain.steps.live":`Step {count} in progress`,"brain.steps.summary":`{count} steps executed`,"brain.steps.planned":`Plan created`,"brain.steps.tool":`Tool run`,"brain.steps.tool.failed":`Tool run failed`,"brain.steps.proposed":`Saved as change proposal`,"brain.steps.blocked":`Blocked by policy`,"brain.steps.parseError":`Model output repaired`,"brain.steps.verdict":`Verification verdict`,"brain.steps.final":`Wrap-up`,"brain.steps.state":`State change`,"brain.steps.rollback":`Rolled back`,"brain.steps.step":`Step`,"brain.sourceModal.aria":`Source text: {title}`,"brain.sourceModal.open":`View source`,"brain.sourceModal.openAria":`View source text: {title}`,"brain.sourceModal.close":`Close source view`,"brain.sourceModal.loading":`Loading source textโ€ฆ`,"brain.sourceModal.error":`Could not load the source text: {reason}`,"brain.sourceModal.empty":`This source has no stored text.`,"brain.sourceModal.provenance":`Provenance`,"brain.watch.aria":`Folder watch status`,"brain.watch.title":`Watched folders`,"brain.watch.notLive":`Not real-time โ€” periodic scans`,"brain.watch.scan.never":`Not scanned yet`,"brain.watch.scan.now":`Scanned just now`,"brain.watch.scan.minutes":`Scanned {count}m ago`,"brain.watch.scan.hours":`Scanned {count}h ago`,"brain.watch.scan.days":`Scanned {count}d ago`,"brain.watch.ingested":`+{count} added`,"brain.watch.tracked":`Tracking {count} files`,"brain.watch.errors":`Recent errors`,"brain.approval.countdown":`Time left {time}`,"brain.approval.countdown.warning":`Expires in under 2 minutes โ€” please decide now.`,"brain.approval.expiredReplan":`Plan again`,"brain.approval.pendingNotice":`A task is waiting for your approval: {goal}`,"brain.approval.pendingNotice.generic":`A task is waiting for your approval.`,"brain.approval.pendingNotice.aria":`Pending approval notice`,"brain.approval.pendingNotice.expiry":`Valid until {time}. Continue from the approval card in the original conversation, or send the request again.`,"brain.approval.pendingNotice.hint":`Continue from the approval card in the original conversation, or send the request again.`,"brain.files.brainOk":`Remembered in Brain โœ“`,"brain.files.brainPending":`Memory pending`,"brain.files.brainFailed":`Not remembered`,"brain.agent.repairs":`Repaired the model output {count} times`,"brain.agent.explanation.why":`A summary of why this run ended the way it did.`,"brain.stats.memories":`Memories`,"brain.stats.links":`Links`,"brain.stats.memoryKinds":`Memory kinds`,"brain.stats.linkKinds":`Link kinds`,"brain.stats.sources":`Sources`,"brain.stats.items":`Items`,"brain.stats.bytes":`Bytes`,"brain.stats.health":`Health`,"brain.stats.format":`Brain format`,"brain.stats.storage":`Storage`,"brain.value.reported":`reported`,"brain.graph.nodeStats":`{importance} importance ยท {links} links`,"brain.memory.recall.title":`Memory Recall`,"brain.memory.recall.detail":`Search and manage your saved memories.`,"brain.memory.recall.placeholder":`Recall memories about...`,"brain.memory.recall.action":`Recall`,"brain.memory.recall.completed":`Recall completed`,"brain.memory.compact":`Compact`,"brain.memory.rebuildVector":`Rebuild vector`,"brain.sources.title":`Sources & Provenance`,"brain.sources.detail":`Where your memories came from.`,"brain.sources.loading":`Loading sources`,"brain.sources.empty":`No sources yet`,"brain.sources.emptyDetail":`New memories will show their chat, manual, document, or import origin here.`,"brain.sources.fallback":`Source {index}`,"brain.sources.createdUnknown":`Created time not recorded`,"brain.sources.inspectable":`inspectable`,"brain.sources.missingProvenance":`missing provenance`,"brain.sources.copy":`Copy source`,"brain.sources.legacyMissing":`This older memory did not record a source path or conversation. It remains searchable, but provenance is incomplete.`,"brain.sources.type.chat":`chat`,"brain.sources.type.document":`document`,"brain.sources.type.import":`import`,"brain.sources.type.manual":`manual`,"brain.sources.type.unknown":`source unknown`,"brain.portability.title":`Export & Backup`,"brain.portability.detail":`Export, back up, or import your Brain data.`,"brain.portability.export":`Export Brain`,"brain.portability.backup":`Create backup`,"brain.portability.importPlaceholder":`Paste an exported Brain artifact to preview import`,"brain.portability.previewImport":`Preview import`,"brain.portability.importCompleted":`Import preview completed`}});