@vxnus/siduri 2.0.38 → 2.0.39

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 (34) hide show
  1. package/dist/builtin-manifests.js +2 -2
  2. package/dist/generator.js +5 -15
  3. package/dist/generator.test.js +8 -8
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/web-dist/404/index.html +1 -1
  7. package/dist/web-dist/404.html +1 -1
  8. package/dist/web-dist/__next.__PAGE__.txt +3 -3
  9. package/dist/web-dist/__next._full.txt +2 -2
  10. package/dist/web-dist/__next._tree.txt +2 -2
  11. package/dist/web-dist/_next/static/chunks/app/chat/page-ab036ea25d23b1ee.js +30 -0
  12. package/dist/web-dist/_next/static/css/5295df1ca5e44779.css +1 -0
  13. package/dist/web-dist/_not-found/__next._full.txt +2 -2
  14. package/dist/web-dist/_not-found/__next._not-found.__PAGE__.txt +2 -2
  15. package/dist/web-dist/_not-found/__next._tree.txt +2 -2
  16. package/dist/web-dist/_not-found/index.html +1 -1
  17. package/dist/web-dist/_not-found/index.txt +2 -2
  18. package/dist/web-dist/chat/__next._full.txt +3 -3
  19. package/dist/web-dist/chat/__next._tree.txt +2 -2
  20. package/dist/web-dist/chat/__next.chat.__PAGE__.txt +3 -3
  21. package/dist/web-dist/chat/index.html +1 -1
  22. package/dist/web-dist/chat/index.txt +3 -3
  23. package/dist/web-dist/index.html +1 -1
  24. package/dist/web-dist/index.txt +2 -2
  25. package/dist/web-dist/operator/__next._full.txt +2 -2
  26. package/dist/web-dist/operator/__next._tree.txt +2 -2
  27. package/dist/web-dist/operator/__next.operator.__PAGE__.txt +2 -2
  28. package/dist/web-dist/operator/index.html +1 -1
  29. package/dist/web-dist/operator/index.txt +2 -2
  30. package/package.json +1 -1
  31. package/dist/web-dist/_next/static/chunks/app/chat/page-04f8f8f515d407da.js +0 -30
  32. package/dist/web-dist/_next/static/css/8ef96fc81e2b580f.css +0 -1
  33. /package/dist/web-dist/_next/static/{iplHbDjfL1rRff3HgwtW0 → gwoBwxvzaJ6JerUVTkuz1}/_buildManifest.js +0 -0
  34. /package/dist/web-dist/_next/static/{iplHbDjfL1rRff3HgwtW0 → gwoBwxvzaJ6JerUVTkuz1}/_ssgManifest.js +0 -0
@@ -6,10 +6,10 @@
6
6
  8:I[5127,[],"ViewportBoundary"]
7
7
  a:I[5127,[],"MetadataBoundary"]
8
8
  c:I[6886,[],"default",1]
9
- :HL["/_next/static/css/8ef96fc81e2b580f.css","style"]
9
+ :HL["/_next/static/css/5295df1ca5e44779.css","style"]
10
10
  :HL["https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","style"]
11
11
  7:X
12
- 0:{"P":null,"c":["","_not-found",""],"q":"","i":false,"f":[[["",{"children":["_not-found",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/8ef96fc81e2b580f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$7"]},null,false,null],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"iplHbDjfL1rRff3HgwtW0"}
12
+ 0:{"P":null,"c":["","_not-found",""],"q":"","i":false,"f":[[["",{"children":["_not-found",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/5295df1ca5e44779.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$7"]},null,false,null],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"gwoBwxvzaJ6JerUVTkuz1"}
13
13
  7:C
14
14
  9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}],["$","meta","2",{"name":"theme-color","content":"#0b0b0e"}]]
15
15
  d:I[3366,[],"IconMark"]
@@ -1,16 +1,16 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[8766,[],""]
3
3
  3:I[356,[],""]
4
- 4:I[2186,["426","static/chunks/426-9f7f6e7fffd4c3c3.js","457","static/chunks/app/chat/page-04f8f8f515d407da.js"],"default"]
4
+ 4:I[2186,["426","static/chunks/426-9f7f6e7fffd4c3c3.js","457","static/chunks/app/chat/page-ab036ea25d23b1ee.js"],"default"]
5
5
  5:I[5127,[],"OutletBoundary"]
6
6
  6:"$Sreact.suspense"
7
7
  9:I[5127,[],"ViewportBoundary"]
8
8
  b:I[5127,[],"MetadataBoundary"]
9
9
  d:I[6886,[],"default",1]
10
- :HL["/_next/static/css/8ef96fc81e2b580f.css","style"]
10
+ :HL["/_next/static/css/5295df1ca5e44779.css","style"]
11
11
  :HL["https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","style"]
12
12
  8:X
13
- 0:{"P":null,"c":["","chat",""],"q":"","i":false,"f":[[["",{"children":["chat",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/8ef96fc81e2b580f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,"$8"]},null,false,null],["$","$1","h",{"children":[null,["$","$L9",null,{"children":"$La"}],["$","div",null,{"hidden":true,"children":["$","$Lb",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lc"}]}]}],null]}],false]],"m":"$undefined","G":["$d",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"iplHbDjfL1rRff3HgwtW0"}
13
+ 0:{"P":null,"c":["","chat",""],"q":"","i":false,"f":[[["",{"children":["chat",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/5295df1ca5e44779.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,"$8"]},null,false,null],["$","$1","h",{"children":[null,["$","$L9",null,{"children":"$La"}],["$","div",null,{"hidden":true,"children":["$","$Lb",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lc"}]}]}],null]}],false]],"m":"$undefined","G":["$d",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"gwoBwxvzaJ6JerUVTkuz1"}
14
14
  8:C
15
15
  a:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}],["$","meta","2",{"name":"theme-color","content":"#0b0b0e"}]]
16
16
  e:I[3366,[],"IconMark"]
@@ -1,3 +1,3 @@
1
- :HL["/_next/static/css/8ef96fc81e2b580f.css","style"]
1
+ :HL["/_next/static/css/5295df1ca5e44779.css","style"]
2
2
  :HL["https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","style"]
3
- 0:{"tree":{"name":"","param":null,"prefetchHints":4176,"slots":{"children":{"name":"chat","param":null,"prefetchHints":4192,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":4256,"slots":null}}}}},"staleTime":300,"buildId":"iplHbDjfL1rRff3HgwtW0"}
3
+ 0:{"tree":{"name":"","param":null,"prefetchHints":4176,"slots":{"children":{"name":"chat","param":null,"prefetchHints":4192,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":4256,"slots":null}}}}},"staleTime":300,"buildId":"gwoBwxvzaJ6JerUVTkuz1"}
@@ -1,5 +1,5 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[2186,["426","static/chunks/426-9f7f6e7fffd4c3c3.js","457","static/chunks/app/chat/page-04f8f8f515d407da.js"],"default"]
2
+ 2:I[2186,["426","static/chunks/426-9f7f6e7fffd4c3c3.js","457","static/chunks/app/chat/page-ab036ea25d23b1ee.js"],"default"]
3
3
  3:I[5127,[],"OutletBoundary"]
4
4
  4:"$Sreact.suspense"
5
5
  8:I[5127,[],"ViewportBoundary"]
@@ -7,12 +7,12 @@
7
7
  a:I[3366,[],"IconMark"]
8
8
  c:I[8766,[],""]
9
9
  d:I[356,[],""]
10
- :HL["/_next/static/css/8ef96fc81e2b580f.css","style"]
10
+ :HL["/_next/static/css/5295df1ca5e44779.css","style"]
11
11
  :HL["https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","style"]
12
12
  7:X
13
13
  f:X
14
14
  f:C
15
- 0:{"buildId":"iplHbDjfL1rRff3HgwtW0","data":[{"rsc":["$","$1","c",{"children":[["$","$L2",null,{}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"isPartial":"$@6","staleTime":"$7","varyParams":null},{"rsc":["$","$1","h",{"children":[null,["$","$L8",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}],["$","meta","2",{"name":"theme-color","content":"#0b0b0e"}]]}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Siduri — Local-First Companion"}],["$","meta","1",{"name":"description","content":"Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence."}],["$","link","2",{"rel":"icon","href":"/favicon.ico?7715e5163ea8ac02","type":"image/x-icon","sizes":"16x16"}],["$","link","3",{"rel":"icon","href":"/favicon.ico"}],["$","link","4",{"rel":"icon","href":"/favicon.svg","type":"image/svg+xml"}],["$","link","5",{"rel":"apple-touch-icon","href":"/apple-touch-icon.png"}],["$","$La","6",{}]]}]}]}],null]}],"isPartial":"$@b","staleTime":"$7","varyParams":null},{"rsc":["$","$1","c",{"children":[null,["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}]}]]}],"isPartial":"$@e","staleTime":"$7","varyParams":"$f"},{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/8ef96fc81e2b580f.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}]]}],"isPartial":"$@10","staleTime":"$7","varyParams":null}],"isUpgradeableISRFallback":false,"a":"$@11","rootVaryParams":null,"needsRuntimeRequest":"$@12"}
15
+ 0:{"buildId":"gwoBwxvzaJ6JerUVTkuz1","data":[{"rsc":["$","$1","c",{"children":[["$","$L2",null,{}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"isPartial":"$@6","staleTime":"$7","varyParams":null},{"rsc":["$","$1","h",{"children":[null,["$","$L8",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}],["$","meta","2",{"name":"theme-color","content":"#0b0b0e"}]]}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Siduri — Local-First Companion"}],["$","meta","1",{"name":"description","content":"Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence."}],["$","link","2",{"rel":"icon","href":"/favicon.ico?7715e5163ea8ac02","type":"image/x-icon","sizes":"16x16"}],["$","link","3",{"rel":"icon","href":"/favicon.ico"}],["$","link","4",{"rel":"icon","href":"/favicon.svg","type":"image/svg+xml"}],["$","link","5",{"rel":"apple-touch-icon","href":"/apple-touch-icon.png"}],["$","$La","6",{}]]}]}]}],null]}],"isPartial":"$@b","staleTime":"$7","varyParams":null},{"rsc":["$","$1","c",{"children":[null,["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}]}]]}],"isPartial":"$@e","staleTime":"$7","varyParams":"$f"},{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/5295df1ca5e44779.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}]]}],"isPartial":"$@10","staleTime":"$7","varyParams":null}],"isUpgradeableISRFallback":false,"a":"$@11","rootVaryParams":null,"needsRuntimeRequest":"$@12"}
16
16
  5:null
17
17
  7:300
18
18
  12:true
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="h-full antialiased dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/8ef96fc81e2b580f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-f73cedc256be153e.js"/><script src="/_next/static/chunks/563b947f-8e2871a2ab7cd91e.js" async=""></script><script src="/_next/static/chunks/136-1d10af93b770a1c8.js" async=""></script><script src="/_next/static/chunks/main-app-9e6a144626e5a5b9.js" async=""></script><script src="/_next/static/chunks/426-9f7f6e7fffd4c3c3.js" async=""></script><script src="/_next/static/chunks/app/chat/page-04f8f8f515d407da.js" async=""></script><link rel="preload" href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" as="style"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><meta name="theme-color" content="#0b0b0e"/><title>Siduri — Local-First Companion</title><meta name="description" content="Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence."/><link rel="icon" href="/favicon.ico?7715e5163ea8ac02" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/favicon.ico"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" rel="stylesheet"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]"><div hidden=""><!--$--><!--/$--></div><div class="chat-app "><aside class="chat-sidebar" aria-label="Conversation history"><div class="chat-sidebar-top"><a class="chat-brand" href="/chat"><span class="chat-brand-mark">S</span><span>SIDURI</span></a><button class="sidebar-collapse" type="button" aria-label="Collapse sidebar"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg></button><button class="mobile-drawer-close flex items-center justify-center" type="button" aria-label="Close conversation drawer"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></button></div><button class="new-chat-button flex items-center gap-1.5" type="button"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line></svg><span>New conversation</span></button><div class="history-heading"><span>Recent conversations</span><span>0</span></div><div class="conversation-list"><p class="history-empty">Loading history…</p></div><div class="sidebar-footer"><button type="button" class="sidebar-settings-btn md:hidden flex items-center gap-1.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="truncate">Preferences (<!-- -->hybrid<!-- -->)</span></button><a class="sidebar-console" href="/operator"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path></svg><span>Operator console</span><b><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg></b></a></div></aside><main class="chat-workspace"><header class="chat-header"><div class="chat-header-brand-group"><button type="button" class="mobile-menu-toggle flex items-center justify-center" aria-label="Open conversation menu"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line></svg></button><a href="/chat" class="chat-header-title"><span class="chat-brand-mark">S</span><span class="font-bold tracking-widest text-xs hidden xs:inline">SIDURI</span></a></div><div class="chat-header-actions flex items-center gap-1.5 sm:gap-2.5"><button type="button" class="connection-pill cursor-pointer transition-all focus-visible:ring-1 focus-visible:ring-[var(--siduri-border-ember)] outline-none hover:border-[var(--siduri-border-ember)] text-[var(--siduri-text-secondary)]" aria-label="Toggle avatar presence" aria-expanded="false" title="Enable Avatar Presence"><span class="status-light "></span><span class="text-xs">Presence</span></button><button type="button" class="connection-pill cursor-pointer transition-all md:hidden flex items-center gap-1.5 hover:border-[var(--siduri-border-ember)] text-[var(--siduri-text-secondary)]" aria-label="Open chat preferences" title="Preferences &amp; Subtitles"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="text-xs font-mono font-medium tracking-wide">Options</span></button><div class="connection-pill hidden md:flex items-center gap-1 sm:gap-1.5 transition-all focus-within:ring-1 focus-within:ring-[var(--siduri-border-ember)] hover:border-[var(--siduri-border-ember)] text-[var(--siduri-text-secondary)]" title="Subtitle translation language"><span class="status-light "></span><span class="text-[10px] uppercase font-mono tracking-wider opacity-60">Subtitles:</span><select class="bg-transparent text-xs text-[var(--siduri-text-primary)] font-medium outline-none cursor-pointer border-none p-0" aria-label="Select subtitle language"><option value="off" class="bg-[#121214] text-white" selected="">Subtitles: Off</option><option value="en" class="bg-[#121214] text-white">English (EN)</option><option value="ja" class="bg-[#121214] text-white">Japanese (JA)</option><option value="id" class="bg-[#121214] text-white">Indonesian (ID)</option><option value="es" class="bg-[#121214] text-white">Spanish (ES)</option><option value="zh" class="bg-[#121214] text-white">Chinese (ZH)</option><option value="ko" class="bg-[#121214] text-white">Korean (KO)</option><option value="fr" class="bg-[#121214] text-white">French (FR)</option><option value="de" class="bg-[#121214] text-white">German (DE)</option><option value="custom" class="bg-[#121214] text-white">Other...</option></select></div><span class="connection-pill hidden lg:inline-flex" title="Status: connecting"><span class="status-light "></span><span class="text-xs">connecting</span></span><div class="connection-pill hidden md:flex items-center gap-1 sm:gap-1.5" title="Operating interaction mode"><span class="text-[10px] uppercase font-mono tracking-wider opacity-60">Mode:</span><select class="bg-transparent text-xs text-[var(--siduri-text-primary)] font-medium outline-none cursor-pointer border-none p-0" aria-label="Select interaction mode"><option value="hybrid" class="bg-[#121214] text-white" selected="">Hybrid (Default)</option><option value="teach" class="bg-[#121214] text-white">Teach</option><option value="casual" class="bg-[#121214] text-white">Casual</option></select></div></div></header><div class="flex flex-col flex-1 min-h-0 w-full overflow-hidden relative"><section class="conversation-surface" aria-label="Private chat"><div class="conversation-scroll " aria-live="polite"><div class="chat-empty-state " data-testid="preferences-starter"><div class="siduri-orb">✦</div><h2>Teach <!-- -->Siduri<!-- --> your preferences.</h2><p>Choose a starting point, replace the blanks, and send it. Nothing becomes memory until you approve the receipt.</p><div class="starter-prompts onboarding-prompts"><button type="button"><span>Identity</span>Preferred name or title</button><button type="button"><span>Localization</span>Timezone and language</button><button type="button"><span>Response style</span>Tone and verbosity</button><button type="button"><span>Knowledge</span>Topics of interest</button></div><p class="onboarding-privacy">Teach <!-- -->Siduri<!-- --> preferences explicitly. Information is stored in private memory only after you approve the receipt.</p></div></div><form class="platform-composer"><textarea placeholder="Message Siduri…" rows="1" maxLength="4000" aria-label="Message Siduri"></textarea><div class="composer-bottom"><div class="flex items-center gap-3 flex-wrap"><span class="composer-session-info inline-flex items-center gap-1.5">Private local session ·<!-- --> <!-- -->No evidence attached</span></div><button type="submit" disabled="" aria-label="Send message" class="composer-action-btn flex items-center justify-center"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="12" y1="19" x2="12" y2="5"></line><polyline points="5 12 12 5 19 12"></polyline></svg></button></div></form></section></div><p class="chat-disclaimer">Responses can be uncertain. Verify important details against the evidence.</p></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-f73cedc256be153e.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[8766,[],\"\"]\n3:I[356,[],\"\"]\n4:I[2186,[\"426\",\"static/chunks/426-9f7f6e7fffd4c3c3.js\",\"457\",\"static/chunks/app/chat/page-04f8f8f515d407da.js\"],\"default\"]\n5:I[5127,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[5127,[],\"ViewportBoundary\"]\nb:I[5127,[],\"MetadataBoundary\"]\nd:I[6886,[],\"default\",1]\n:HL[\"/_next/static/css/8ef96fc81e2b580f.css\",\"style\"]\n:HL[\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"style\"]\n8:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"chat\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"chat\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/8ef96fc81e2b580f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased dark\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"rel\":\"stylesheet\"}]]}],[\"$\",\"body\",null,{\"className\":\"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"iplHbDjfL1rRff3HgwtW0\"}\n"])</script><script>self.__next_f.push([1,"8:C\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0b0b0e\"}]]\n"])</script><script>self.__next_f.push([1,"e:I[3366,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"Siduri — Local-First Companion\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?7715e5163ea8ac02\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-touch-icon.png\"}],[\"$\",\"$Le\",\"6\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="h-full antialiased dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/5295df1ca5e44779.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-f73cedc256be153e.js"/><script src="/_next/static/chunks/563b947f-8e2871a2ab7cd91e.js" async=""></script><script src="/_next/static/chunks/136-1d10af93b770a1c8.js" async=""></script><script src="/_next/static/chunks/main-app-9e6a144626e5a5b9.js" async=""></script><script src="/_next/static/chunks/426-9f7f6e7fffd4c3c3.js" async=""></script><script src="/_next/static/chunks/app/chat/page-ab036ea25d23b1ee.js" async=""></script><link rel="preload" href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" as="style"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><meta name="theme-color" content="#0b0b0e"/><title>Siduri — Local-First Companion</title><meta name="description" content="Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence."/><link rel="icon" href="/favicon.ico?7715e5163ea8ac02" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/favicon.ico"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" rel="stylesheet"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]"><div hidden=""><!--$--><!--/$--></div><div class="chat-app "><aside class="chat-sidebar" aria-label="Conversation history"><div class="chat-sidebar-top"><a class="chat-brand" href="/chat"><span class="chat-brand-mark">S</span><span>SIDURI</span></a><button class="sidebar-collapse" type="button" aria-label="Collapse sidebar"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg></button><button class="mobile-drawer-close flex items-center justify-center" type="button" aria-label="Close conversation drawer"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></button></div><button class="new-chat-button flex items-center gap-1.5" type="button"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line></svg><span>New conversation</span></button><div class="history-heading"><span>Recent conversations</span><span>0</span></div><div class="conversation-list"><p class="history-empty">Loading history…</p></div><div class="sidebar-footer"><button type="button" class="sidebar-settings-btn md:hidden flex items-center gap-1.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="truncate">Preferences (<!-- -->hybrid<!-- -->)</span></button><a class="sidebar-console" href="/operator"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path></svg><span>Operator console</span><b><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg></b></a></div></aside><main class="chat-workspace"><header class="chat-header"><div class="chat-header-brand-group"><button type="button" class="mobile-menu-toggle flex items-center justify-center" aria-label="Open conversation menu"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line></svg></button><a href="/chat" class="chat-header-title"><span class="chat-brand-mark">S</span><span class="font-bold tracking-widest text-xs hidden xs:inline">SIDURI</span></a></div><div class="chat-header-actions flex items-center gap-1.5 sm:gap-2.5"><button type="button" class="connection-pill cursor-pointer transition-all focus-visible:ring-1 focus-visible:ring-[var(--siduri-border-ember)] outline-none hover:border-[var(--siduri-border-ember)] text-[var(--siduri-text-secondary)]" aria-label="Toggle avatar presence" aria-expanded="false" title="Enable Avatar Presence"><span class="status-light "></span><span class="text-xs">Presence</span></button><button type="button" class="connection-pill cursor-pointer transition-all md:hidden flex items-center gap-1.5 hover:border-[var(--siduri-border-ember)] text-[var(--siduri-text-secondary)]" aria-label="Open chat preferences" title="Preferences &amp; Subtitles"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="text-xs font-mono font-medium tracking-wide">Options</span></button><div class="connection-pill hidden md:flex items-center gap-1 sm:gap-1.5 transition-all focus-within:ring-1 focus-within:ring-[var(--siduri-border-ember)] hover:border-[var(--siduri-border-ember)] text-[var(--siduri-text-secondary)]" title="Subtitle translation language"><span class="status-light "></span><span class="text-[10px] uppercase font-mono tracking-wider opacity-60">Subtitles:</span><select class="bg-transparent text-xs text-[var(--siduri-text-primary)] font-medium outline-none cursor-pointer border-none p-0" aria-label="Select subtitle language"><option value="off" class="bg-[#121214] text-white" selected="">Subtitles: Off</option><option value="en" class="bg-[#121214] text-white">English (EN)</option><option value="ja" class="bg-[#121214] text-white">Japanese (JA)</option><option value="id" class="bg-[#121214] text-white">Indonesian (ID)</option><option value="es" class="bg-[#121214] text-white">Spanish (ES)</option><option value="zh" class="bg-[#121214] text-white">Chinese (ZH)</option><option value="ko" class="bg-[#121214] text-white">Korean (KO)</option><option value="fr" class="bg-[#121214] text-white">French (FR)</option><option value="de" class="bg-[#121214] text-white">German (DE)</option><option value="custom" class="bg-[#121214] text-white">Other...</option></select></div><span class="connection-pill hidden lg:inline-flex" title="Status: connecting"><span class="status-light "></span><span class="text-xs">connecting</span></span><div class="connection-pill hidden md:flex items-center gap-1 sm:gap-1.5" title="Operating interaction mode"><span class="text-[10px] uppercase font-mono tracking-wider opacity-60">Mode:</span><select class="bg-transparent text-xs text-[var(--siduri-text-primary)] font-medium outline-none cursor-pointer border-none p-0" aria-label="Select interaction mode"><option value="hybrid" class="bg-[#121214] text-white" selected="">Hybrid (Default)</option><option value="teach" class="bg-[#121214] text-white">Teach</option><option value="casual" class="bg-[#121214] text-white">Casual</option></select></div></div></header><div class="flex flex-col flex-1 min-h-0 w-full overflow-hidden relative"><section class="conversation-surface" aria-label="Private chat"><div class="conversation-scroll " aria-live="polite"><div class="chat-empty-state " data-testid="preferences-starter"><div class="siduri-orb">✦</div><h2>Teach <!-- -->Siduri<!-- --> your preferences.</h2><p>Choose a starting point, replace the blanks, and send it. Nothing becomes memory until you approve the receipt.</p><div class="starter-prompts onboarding-prompts"><button type="button"><span>Identity</span>Preferred name or title</button><button type="button"><span>Localization</span>Timezone and language</button><button type="button"><span>Response style</span>Tone and verbosity</button><button type="button"><span>Knowledge</span>Topics of interest</button></div><p class="onboarding-privacy">Teach <!-- -->Siduri<!-- --> preferences explicitly. Information is stored in private memory only after you approve the receipt.</p></div></div><form class="platform-composer"><textarea placeholder="Message Siduri…" rows="1" maxLength="4000" aria-label="Message Siduri"></textarea><div class="composer-bottom"><div class="flex items-center gap-3 flex-wrap"><span class="composer-session-info inline-flex items-center gap-1.5">Private local session ·<!-- --> <!-- -->No evidence attached</span></div><button type="submit" disabled="" aria-label="Send message" class="composer-action-btn flex items-center justify-center"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="12" y1="19" x2="12" y2="5"></line><polyline points="5 12 12 5 19 12"></polyline></svg></button></div></form></section></div><p class="chat-disclaimer">Responses can be uncertain. Verify important details against the evidence.</p></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-f73cedc256be153e.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[8766,[],\"\"]\n3:I[356,[],\"\"]\n4:I[2186,[\"426\",\"static/chunks/426-9f7f6e7fffd4c3c3.js\",\"457\",\"static/chunks/app/chat/page-ab036ea25d23b1ee.js\"],\"default\"]\n5:I[5127,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[5127,[],\"ViewportBoundary\"]\nb:I[5127,[],\"MetadataBoundary\"]\nd:I[6886,[],\"default\",1]\n:HL[\"/_next/static/css/5295df1ca5e44779.css\",\"style\"]\n:HL[\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"style\"]\n8:X\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"chat\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"chat\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/5295df1ca5e44779.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased dark\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"rel\":\"stylesheet\"}]]}],[\"$\",\"body\",null,{\"className\":\"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"gwoBwxvzaJ6JerUVTkuz1\"}\n"])</script><script>self.__next_f.push([1,"8:C\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0b0b0e\"}]]\n"])</script><script>self.__next_f.push([1,"e:I[3366,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"Siduri — Local-First Companion\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?7715e5163ea8ac02\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-touch-icon.png\"}],[\"$\",\"$Le\",\"6\",{}]]\n"])</script></body></html>
@@ -1,16 +1,16 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[8766,[],""]
3
3
  3:I[356,[],""]
4
- 4:I[2186,["426","static/chunks/426-9f7f6e7fffd4c3c3.js","457","static/chunks/app/chat/page-04f8f8f515d407da.js"],"default"]
4
+ 4:I[2186,["426","static/chunks/426-9f7f6e7fffd4c3c3.js","457","static/chunks/app/chat/page-ab036ea25d23b1ee.js"],"default"]
5
5
  5:I[5127,[],"OutletBoundary"]
6
6
  6:"$Sreact.suspense"
7
7
  9:I[5127,[],"ViewportBoundary"]
8
8
  b:I[5127,[],"MetadataBoundary"]
9
9
  d:I[6886,[],"default",1]
10
- :HL["/_next/static/css/8ef96fc81e2b580f.css","style"]
10
+ :HL["/_next/static/css/5295df1ca5e44779.css","style"]
11
11
  :HL["https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","style"]
12
12
  8:X
13
- 0:{"P":null,"c":["","chat",""],"q":"","i":false,"f":[[["",{"children":["chat",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/8ef96fc81e2b580f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,"$8"]},null,false,null],["$","$1","h",{"children":[null,["$","$L9",null,{"children":"$La"}],["$","div",null,{"hidden":true,"children":["$","$Lb",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lc"}]}]}],null]}],false]],"m":"$undefined","G":["$d",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"iplHbDjfL1rRff3HgwtW0"}
13
+ 0:{"P":null,"c":["","chat",""],"q":"","i":false,"f":[[["",{"children":["chat",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/5295df1ca5e44779.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased dark","children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,"$8"]},null,false,null],["$","$1","h",{"children":[null,["$","$L9",null,{"children":"$La"}],["$","div",null,{"hidden":true,"children":["$","$Lb",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lc"}]}]}],null]}],false]],"m":"$undefined","G":["$d",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"gwoBwxvzaJ6JerUVTkuz1"}
14
14
  8:C
15
15
  a:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}],["$","meta","2",{"name":"theme-color","content":"#0b0b0e"}]]
16
16
  e:I[3366,[],"IconMark"]
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="h-full antialiased dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="preload" href="/logo-circle.svg" as="image"/><link rel="stylesheet" href="/_next/static/css/8ef96fc81e2b580f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-f73cedc256be153e.js"/><script src="/_next/static/chunks/563b947f-8e2871a2ab7cd91e.js" async=""></script><script src="/_next/static/chunks/136-1d10af93b770a1c8.js" async=""></script><script src="/_next/static/chunks/main-app-9e6a144626e5a5b9.js" async=""></script><script src="/_next/static/chunks/app/page-fc4bf56cf33ae27b.js" async=""></script><link rel="preload" href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" as="style"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><meta name="theme-color" content="#0b0b0e"/><title>Siduri — Local-First Companion</title><meta name="description" content="Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence."/><link rel="icon" href="/favicon.ico?7715e5163ea8ac02" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/favicon.ico"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" rel="stylesheet"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]"><div hidden=""><!--$--><!--/$--></div><div class="home-page bg-[#09090c] min-h-screen text-[var(--siduri-text-primary)] font-sans"><header class="home-nav"><div class="home-container home-nav-inner flex items-center justify-between py-3 sm:py-4"><a class="brand-link flex items-center gap-2" aria-label="Siduri Home" href="/"><img src="/logo-circle.svg" alt="Siduri-X Logo" class="w-6 h-6 rounded-full shrink-0" width="24" height="24"/><span class="font-bold tracking-widest text-sm">SIDURI-X</span></a><nav class="nav-links hidden sm:flex gap-6 text-sm text-[var(--siduri-text-muted)]" aria-label="Main Navigation"><a class="hover:text-[var(--siduri-text-primary)] transition-colors" href="/chat/">Chat</a><a class="hover:text-[var(--siduri-text-primary)] transition-colors" href="/operator/">Operator Console</a></nav><div class="flex items-center gap-3"><a class="nav-cta inline-flex items-center gap-1.5 text-xs font-mono border border-[var(--siduri-border-subtle)] px-3 sm:px-4 py-2 rounded-full hover:bg-[var(--siduri-surface)] transition-all" href="/chat/"><span>Chat</span> <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a></div></div></header><main><section class="py-16 sm:py-24 md:py-32 border-b border-[var(--siduri-border-subtle)] relative overflow-hidden"><div class="home-container relative z-10 text-center flex flex-col items-center"><div class="inline-flex items-center gap-2 px-3 py-1 rounded-full border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] text-[var(--siduri-ember-light)] text-[10px] font-mono tracking-widest uppercase mb-6 sm:mb-8 text-center max-w-full"><span class="w-1.5 h-1.5 rounded-full bg-[var(--siduri-online)] shadow-[0_0_8px_rgba(127,199,154,0.6)] shrink-0"></span><span class="truncate">Standalone Companion · Version 1.0</span></div><h1 class="text-3xl sm:text-5xl md:text-6xl font-normal font-serif text-[var(--siduri-text-primary)] tracking-tight leading-[1.2] sm:leading-[1.15] mb-6 max-w-4xl px-2">A companion grown from memory, powered by modular cognition.</h1><p class="text-sm sm:text-lg text-[var(--siduri-text-secondary)] font-sans leading-relaxed mb-8 sm:mb-10 max-w-2xl font-light px-2">Siduri-X is an intelligent companion designed with authoritative memory, atomic behavioral gating, and a strict 10-organ architecture. She starts as a blank slate and forms her identity entirely through your interactions.</p><div class="flex flex-col sm:flex-row justify-center items-stretch sm:items-center gap-3 sm:gap-4 w-full max-w-md sm:max-w-none px-4"><a class="inline-flex justify-center items-center gap-3 px-6 py-3.5 rounded-xl bg-[var(--siduri-ember)] text-[#1b1619] font-sans font-semibold text-sm tracking-wide transition-all hover:brightness-110 shadow-[0_4px_20px_rgba(217,154,104,0.2)]" href="/chat/">Launch Companion<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a><a class="inline-flex justify-center items-center gap-2.5 px-6 py-3.5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] text-[var(--siduri-text-primary)] font-sans font-medium text-sm transition-all hover:border-[var(--siduri-border-ember)] hover:bg-[var(--siduri-tint-low)]" href="/operator/"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path></svg>Operator Console</a></div></div></section><section class="py-20 md:py-28 border-b border-[var(--siduri-border-subtle)] bg-[#0e0e12]"><div class="home-container"><div class="mb-14 text-center max-w-3xl mx-auto"><p class="text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2">Decoupled Philosophy</p><h2 class="text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-4">The 10-Organ Architecture</h2><p class="text-sm text-[var(--siduri-text-secondary)] leading-relaxed">Siduri is not a chatbot. She is a cognition runtime composed of independent organs. Every decision originates from the Brain, while other organs perceive, remember, act, and embody.</p></div><div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-3 sm:gap-4"><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Brain</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Cognition, planning, and authoritative decision making.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Memory</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">SQLite FTS5 authoritative storage of verified claims and episodic memory.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Behavior</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Atomic directive state machine and personality projection.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Knowledge</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">External factual context and verifiable E-compatible packs.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Hands</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Tool execution and strict cryptographic action policy capabilities.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Ear</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Audio transcription, perception, and sensory input ingestion.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Vision</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Visual observation, cropping, and OCR interpretation.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Voice</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Queued speech synthesis (Edge-TTS, Kokoro, Piper, VOICEVOX) and auditory expression.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Body</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Renderer-agnostic avatar expression (Live2D) and embodiment.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Observation</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Event frame deduplication and real-time evidence extraction.</p></div></div></div></section><section class="py-16 sm:py-20 md:py-28 border-b border-[var(--siduri-border-subtle)]"><div class="home-container grid grid-cols-1 lg:grid-cols-2 gap-10 sm:gap-16 items-center"><div><p class="text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2">Authoritative State</p><h2 class="text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5">Blank Slate Identity</h2><p class="text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-6">Unlike standard conversational agents, Siduri starts with no pre-baked persona. She learns, remembers, and adapts over time. When you share preferences, they are staged as structured candidates. You decide what enters her long-term memory with explicit single-click approval.</p><ul class="space-y-3 text-xs text-[var(--siduri-text-muted)] font-mono"><li class="flex items-center gap-2.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="text-[var(--siduri-online)] shrink-0" aria-hidden="true"><polyline points="20 6 9 17 4 12"></polyline></svg><span>No hidden relationship assumptions</span></li><li class="flex items-center gap-2.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="text-[var(--siduri-online)] shrink-0" aria-hidden="true"><polyline points="20 6 9 17 4 12"></polyline></svg><span>Structured episodic and semantic memory</span></li><li class="flex items-center gap-2.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="text-[var(--siduri-online)] shrink-0" aria-hidden="true"><polyline points="20 6 9 17 4 12"></polyline></svg><span>Full revocation and override controls</span></li></ul></div><div class="p-5 sm:p-8 rounded-2xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-surface)] shadow-[0_10px_35px_rgba(0,0,0,0.4)] relative"><div class="absolute top-0 right-6 sm:right-8 -translate-y-1/2 bg-[var(--siduri-bg)] px-3 text-[10px] font-mono text-[var(--siduri-ember)] tracking-widest uppercase">Operator View</div><div class="space-y-4 font-mono text-xs"><div class="p-3 border border-[var(--siduri-border-subtle)] rounded bg-[#13131a]"><div class="text-[var(--siduri-text-muted)] mb-1">Incoming Claim</div><div class="text-[var(--siduri-online)] font-bold break-words">“User prefers concise, technical explanations.”</div><div class="flex flex-wrap gap-2 mt-3"><span class="bg-[var(--siduri-online)] text-black px-2.5 py-1 rounded font-bold cursor-pointer text-xs">APPROVE</span><span class="border border-[var(--siduri-border-subtle)] text-[var(--siduri-text-muted)] px-2.5 py-1 rounded cursor-pointer text-xs">REJECT</span></div></div></div></div></div></section><section class="py-16 sm:py-20 md:py-28 bg-[#09090c]"><div class="home-container text-center max-w-2xl mx-auto px-4"><h2 class="text-2xl sm:text-4xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5">Private, local, and yours.</h2><p class="text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-8">Siduri is designed for local-first operations and explicit consent. The CLI dynamically generates a standalone companion instance leveraging only the organ packages you need. Run it completely on your own machine.</p><div class="bg-[#13131a] p-3.5 sm:p-4 rounded-xl border border-[var(--siduri-border-subtle)] inline-block text-left text-xs sm:text-sm font-mono text-[var(--siduri-text-primary)] shadow-lg mx-auto max-w-full overflow-x-auto"><span class="text-emerald-400">$</span> npx @vxnus/siduri create my-companion</div></div></section></main><footer class="py-14 border-t border-[var(--siduri-border-subtle)] bg-[#0e0e12]"><div class="home-container flex flex-col sm:flex-row items-center justify-between gap-6"><div class="flex items-center gap-3"><img src="/logo-circle.svg" alt="Siduri-X Logo" class="w-5 h-5 rounded-full shrink-0" width="20" height="20"/><span class="font-bold tracking-widest text-xs text-[var(--siduri-text-primary)]">SIDURI-X</span></div><p class="text-xs text-[var(--siduri-text-dim)] font-sans text-center sm:text-left">Local-first AI companion framework.</p><div class="flex items-center gap-5 text-xs text-[var(--siduri-text-muted)]"><a class="hover:text-[var(--siduri-text-primary)]" href="/chat/">Chat</a><a class="hover:text-[var(--siduri-text-primary)]" href="/operator/">Operator</a></div></div></footer></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-f73cedc256be153e.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[8766,[],\"\"]\n3:I[356,[],\"\"]\n4:I[7443,[\"974\",\"static/chunks/app/page-fc4bf56cf33ae27b.js\"],\"\"]\n10:I[6886,[],\"default\",1]\n:HL[\"/_next/static/css/8ef96fc81e2b580f.css\",\"style\"]\n:HL[\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"style\"]\n:HL[\"/logo-circle.svg\",\"image\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/8ef96fc81e2b580f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased dark\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"rel\":\"stylesheet\"}]]}],[\"$\",\"body\",null,{\"className\":\"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"home-page bg-[#09090c] min-h-screen text-[var(--siduri-text-primary)] font-sans\",\"children\":[[\"$\",\"header\",null,{\"className\":\"home-nav\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container home-nav-inner flex items-center justify-between py-3 sm:py-4\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/\",\"className\":\"brand-link flex items-center gap-2\",\"aria-label\":\"Siduri Home\",\"children\":[[\"$\",\"img\",null,{\"src\":\"/logo-circle.svg\",\"alt\":\"Siduri-X Logo\",\"className\":\"w-6 h-6 rounded-full shrink-0\",\"width\":24,\"height\":24}],[\"$\",\"span\",null,{\"className\":\"font-bold tracking-widest text-sm\",\"children\":\"SIDURI-X\"}]]}],[\"$\",\"nav\",null,{\"className\":\"nav-links hidden sm:flex gap-6 text-sm text-[var(--siduri-text-muted)]\",\"aria-label\":\"Main Navigation\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"hover:text-[var(--siduri-text-primary)] transition-colors\",\"children\":\"Chat\"}],[\"$\",\"$L4\",null,{\"href\":\"/operator\",\"className\":\"hover:text-[var(--siduri-text-primary)] transition-colors\",\"children\":\"Operator Console\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3\",\"children\":[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"nav-cta inline-flex items-center gap-1.5 text-xs font-mono border border-[var(--siduri-border-subtle)] px-3 sm:px-4 py-2 rounded-full hover:bg-[var(--siduri-surface)] transition-all\",\"children\":[[\"$\",\"span\",null,{\"children\":\"Chat\"}],\" \",[\"$\",\"svg\",null,{\"width\":12,\"height\":12,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"$undefined\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"line\",null,{\"x1\":\"5\",\"y1\":\"12\",\"x2\":\"19\",\"y2\":\"12\"}],[\"$\",\"polyline\",null,{\"points\":\"12 5 19 12 12 19\"}]]}]]}]}]]}]}],[\"$\",\"main\",null,{\"children\":[[\"$\",\"section\",null,{\"className\":\"py-16 sm:py-24 md:py-32 border-b border-[var(--siduri-border-subtle)] relative overflow-hidden\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container relative z-10 text-center flex flex-col items-center\",\"children\":[[\"$\",\"div\",null,{\"className\":\"inline-flex items-center gap-2 px-3 py-1 rounded-full border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] text-[var(--siduri-ember-light)] text-[10px] font-mono tracking-widest uppercase mb-6 sm:mb-8 text-center max-w-full\",\"children\":[\"$L5\",\"$L6\"]}],\"$L7\",\"$L8\",\"$L9\"]}]}],\"$La\",\"$Lb\",\"$Lc\"]}],\"$Ld\"]}],null,\"$Le\"]}],{},null,false,null]},null,false,null],\"$Lf\",false]],\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"iplHbDjfL1rRff3HgwtW0\"}\n"])</script><script>self.__next_f.push([1,"15:I[5127,[],\"OutletBoundary\"]\n16:\"$Sreact.suspense\"\n18:I[5127,[],\"ViewportBoundary\"]\n1a:I[5127,[],\"MetadataBoundary\"]\n5:[\"$\",\"span\",null,{\"className\":\"w-1.5 h-1.5 rounded-full bg-[var(--siduri-online)] shadow-[0_0_8px_rgba(127,199,154,0.6)] shrink-0\"}]\n6:[\"$\",\"span\",null,{\"className\":\"truncate\",\"children\":\"Standalone Companion · Version 1.0\"}]\n7:[\"$\",\"h1\",null,{\"className\":\"text-3xl sm:text-5xl md:text-6xl font-normal font-serif text-[var(--siduri-text-primary)] tracking-tight leading-[1.2] sm:leading-[1.15] mb-6 max-w-4xl px-2\",\"children\":\"A companion grown from memory, powered by modular cognition.\"}]\n8:[\"$\",\"p\",null,{\"className\":\"text-sm sm:text-lg text-[var(--siduri-text-secondary)] font-sans leading-relaxed mb-8 sm:mb-10 max-w-2xl font-light px-2\",\"children\":\"Siduri-X is an intelligent companion designed with authoritative memory, atomic behavioral gating, and a strict 10-organ architecture. She starts as a blank slate and forms her identity entirely through your interactions.\"}]\n"])</script><script>self.__next_f.push([1,"9:[\"$\",\"div\",null,{\"className\":\"flex flex-col sm:flex-row justify-center items-stretch sm:items-center gap-3 sm:gap-4 w-full max-w-md sm:max-w-none px-4\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"inline-flex justify-center items-center gap-3 px-6 py-3.5 rounded-xl bg-[var(--siduri-ember)] text-[#1b1619] font-sans font-semibold text-sm tracking-wide transition-all hover:brightness-110 shadow-[0_4px_20px_rgba(217,154,104,0.2)]\",\"children\":[\"Launch Companion\",[\"$\",\"svg\",null,{\"width\":16,\"height\":16,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"$undefined\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"line\",null,{\"x1\":\"5\",\"y1\":\"12\",\"x2\":\"19\",\"y2\":\"12\"}],[\"$\",\"polyline\",null,{\"points\":\"12 5 19 12 12 19\"}]]}]]}],[\"$\",\"$L4\",null,{\"href\":\"/operator\",\"className\":\"inline-flex justify-center items-center gap-2.5 px-6 py-3.5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] text-[var(--siduri-text-primary)] font-sans font-medium text-sm transition-all hover:border-[var(--siduri-border-ember)] hover:bg-[var(--siduri-tint-low)]\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z\"}]}],\"Operator Console\"]}]]}]\n"])</script><script>self.__next_f.push([1,"a:[\"$\",\"section\",null,{\"className\":\"py-20 md:py-28 border-b border-[var(--siduri-border-subtle)] bg-[#0e0e12]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-14 text-center max-w-3xl mx-auto\",\"children\":[[\"$\",\"p\",null,{\"className\":\"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2\",\"children\":\"Decoupled Philosophy\"}],[\"$\",\"h2\",null,{\"className\":\"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-4\",\"children\":\"The 10-Organ Architecture\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Siduri is not a chatbot. She is a cognition runtime composed of independent organs. Every decision originates from the Brain, while other organs perceive, remember, act, and embody.\"}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-3 sm:gap-4\",\"children\":[[\"$\",\"div\",\"Brain\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Brain\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Cognition, planning, and authoritative decision making.\"}]]}],[\"$\",\"div\",\"Memory\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Memory\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"SQLite FTS5 authoritative storage of verified claims and episodic memory.\"}]]}],[\"$\",\"div\",\"Behavior\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Behavior\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Atomic directive state machine and personality projection.\"}]]}],[\"$\",\"div\",\"Knowledge\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Knowledge\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"External factual context and verifiable E-compatible packs.\"}]]}],[\"$\",\"div\",\"Hands\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Hands\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Tool execution and strict cryptographic action policy capabilities.\"}]]}],[\"$\",\"div\",\"Ear\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Ear\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Audio transcription, perception, and sensory input ingestion.\"}]]}],\"$L11\",\"$L12\",\"$L13\",\"$L14\"]}]]}]}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"section\",null,{\"className\":\"py-16 sm:py-20 md:py-28 border-b border-[var(--siduri-border-subtle)]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container grid grid-cols-1 lg:grid-cols-2 gap-10 sm:gap-16 items-center\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2\",\"children\":\"Authoritative State\"}],[\"$\",\"h2\",null,{\"className\":\"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5\",\"children\":\"Blank Slate Identity\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-6\",\"children\":\"Unlike standard conversational agents, Siduri starts with no pre-baked persona. She learns, remembers, and adapts over time. When you share preferences, they are staged as structured candidates. You decide what enters her long-term memory with explicit single-click approval.\"}],[\"$\",\"ul\",null,{\"className\":\"space-y-3 text-xs text-[var(--siduri-text-muted)] font-mono\",\"children\":[[\"$\",\"li\",null,{\"className\":\"flex items-center gap-2.5\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"text-[var(--siduri-online)] shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"polyline\",null,{\"points\":\"20 6 9 17 4 12\"}]}],[\"$\",\"span\",null,{\"children\":\"No hidden relationship assumptions\"}]]}],[\"$\",\"li\",null,{\"className\":\"flex items-center gap-2.5\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"text-[var(--siduri-online)] shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"polyline\",null,{\"points\":\"20 6 9 17 4 12\"}]}],[\"$\",\"span\",null,{\"children\":\"Structured episodic and semantic memory\"}]]}],[\"$\",\"li\",null,{\"className\":\"flex items-center gap-2.5\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"text-[var(--siduri-online)] shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"polyline\",null,{\"points\":\"20 6 9 17 4 12\"}]}],[\"$\",\"span\",null,{\"children\":\"Full revocation and override controls\"}]]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"p-5 sm:p-8 rounded-2xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-surface)] shadow-[0_10px_35px_rgba(0,0,0,0.4)] relative\",\"children\":[[\"$\",\"div\",null,{\"className\":\"absolute top-0 right-6 sm:right-8 -translate-y-1/2 bg-[var(--siduri-bg)] px-3 text-[10px] font-mono text-[var(--siduri-ember)] tracking-widest uppercase\",\"children\":\"Operator View\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4 font-mono text-xs\",\"children\":[\"$\",\"div\",null,{\"className\":\"p-3 border border-[var(--siduri-border-subtle)] rounded bg-[#13131a]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"text-[var(--siduri-text-muted)] mb-1\",\"children\":\"Incoming Claim\"}],[\"$\",\"div\",null,{\"className\":\"text-[var(--siduri-online)] font-bold break-words\",\"children\":\"“User prefers concise, technical explanations.”\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-wrap gap-2 mt-3\",\"children\":[[\"$\",\"span\",null,{\"className\":\"bg-[var(--siduri-online)] text-black px-2.5 py-1 rounded font-bold cursor-pointer text-xs\",\"children\":\"APPROVE\"}],[\"$\",\"span\",null,{\"className\":\"border border-[var(--siduri-border-subtle)] text-[var(--siduri-text-muted)] px-2.5 py-1 rounded cursor-pointer text-xs\",\"children\":\"REJECT\"}]]}]]}]}]]}]]}]}]\n"])</script><script>self.__next_f.push([1,"c:[\"$\",\"section\",null,{\"className\":\"py-16 sm:py-20 md:py-28 bg-[#09090c]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container text-center max-w-2xl mx-auto px-4\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"text-2xl sm:text-4xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5\",\"children\":\"Private, local, and yours.\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-8\",\"children\":\"Siduri is designed for local-first operations and explicit consent. The CLI dynamically generates a standalone companion instance leveraging only the organ packages you need. Run it completely on your own machine.\"}],[\"$\",\"div\",null,{\"className\":\"bg-[#13131a] p-3.5 sm:p-4 rounded-xl border border-[var(--siduri-border-subtle)] inline-block text-left text-xs sm:text-sm font-mono text-[var(--siduri-text-primary)] shadow-lg mx-auto max-w-full overflow-x-auto\",\"children\":[[\"$\",\"span\",null,{\"className\":\"text-emerald-400\",\"children\":\"$$\"}],\" npx @vxnus/siduri create my-companion\"]}]]}]}]\nd:[\"$\",\"footer\",null,{\"className\":\"py-14 border-t border-[var(--siduri-border-subtle)] bg-[#0e0e12]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container flex flex-col sm:flex-row items-center justify-between gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3\",\"children\":[[\"$\",\"img\",null,{\"src\":\"/logo-circle.svg\",\"alt\":\"Siduri-X Logo\",\"className\":\"w-5 h-5 rounded-full shrink-0\",\"width\":20,\"height\":20}],[\"$\",\"span\",null,{\"className\":\"font-bold tracking-widest text-xs text-[var(--siduri-text-primary)]\",\"children\":\"SIDURI-X\"}]]}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-dim)] font-sans text-center sm:text-left\",\"children\":\"Local-first AI companion framework.\"}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-5 text-xs text-[var(--siduri-text-muted)]\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"hover:text-[var(--siduri-text-primary)]\",\"children\":\"Chat\"}],[\"$\",\"$L4\",null,{\"href\":\"/operator\",\"className\":\"hover:text-[var(--siduri-text-primary)]\",\"children\":\"Operator\"}]]}]]}]}]\ne:[\"$\",\"$L15\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@17\"}]}]\nf:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1a\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1b\"}]}]}],null]}]\n"])</script><script>self.__next_f.push([1,"11:[\"$\",\"div\",\"Vision\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Vision\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Visual observation, cropping, and OCR interpretation.\"}]]}]\n12:[\"$\",\"div\",\"Voice\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Voice\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Queued speech synthesis (Edge-TTS, Kokoro, Piper, VOICEVOX) and auditory expression.\"}]]}]\n13:[\"$\",\"div\",\"Body\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Body\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Renderer-agnostic avatar expression (Live2D) and embodiment.\"}]]}]\n14:[\"$\",\"div\",\"Observation\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Observation\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Event frame deduplication and real-time evidence extraction.\"}]]}]\n"])</script><script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0b0b0e\"}]]\n"])</script><script>self.__next_f.push([1,"1c:I[3366,[],\"IconMark\"]\n17:null\n1b:[[\"$\",\"title\",\"0\",{\"children\":\"Siduri — Local-First Companion\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?7715e5163ea8ac02\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-touch-icon.png\"}],[\"$\",\"$L1c\",\"6\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="h-full antialiased dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="preload" href="/logo-circle.svg" as="image"/><link rel="stylesheet" href="/_next/static/css/5295df1ca5e44779.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-f73cedc256be153e.js"/><script src="/_next/static/chunks/563b947f-8e2871a2ab7cd91e.js" async=""></script><script src="/_next/static/chunks/136-1d10af93b770a1c8.js" async=""></script><script src="/_next/static/chunks/main-app-9e6a144626e5a5b9.js" async=""></script><script src="/_next/static/chunks/app/page-fc4bf56cf33ae27b.js" async=""></script><link rel="preload" href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" as="style"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><meta name="theme-color" content="#0b0b0e"/><title>Siduri — Local-First Companion</title><meta name="description" content="Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence."/><link rel="icon" href="/favicon.ico?7715e5163ea8ac02" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/favicon.ico"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&amp;family=Noto+Sans+JP:wght@400;500;700&amp;family=Noto+Serif+JP:wght@400;500;700&amp;display=swap" rel="stylesheet"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]"><div hidden=""><!--$--><!--/$--></div><div class="home-page bg-[#09090c] min-h-screen text-[var(--siduri-text-primary)] font-sans"><header class="home-nav"><div class="home-container home-nav-inner flex items-center justify-between py-3 sm:py-4"><a class="brand-link flex items-center gap-2" aria-label="Siduri Home" href="/"><img src="/logo-circle.svg" alt="Siduri-X Logo" class="w-6 h-6 rounded-full shrink-0" width="24" height="24"/><span class="font-bold tracking-widest text-sm">SIDURI-X</span></a><nav class="nav-links hidden sm:flex gap-6 text-sm text-[var(--siduri-text-muted)]" aria-label="Main Navigation"><a class="hover:text-[var(--siduri-text-primary)] transition-colors" href="/chat/">Chat</a><a class="hover:text-[var(--siduri-text-primary)] transition-colors" href="/operator/">Operator Console</a></nav><div class="flex items-center gap-3"><a class="nav-cta inline-flex items-center gap-1.5 text-xs font-mono border border-[var(--siduri-border-subtle)] px-3 sm:px-4 py-2 rounded-full hover:bg-[var(--siduri-surface)] transition-all" href="/chat/"><span>Chat</span> <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a></div></div></header><main><section class="py-16 sm:py-24 md:py-32 border-b border-[var(--siduri-border-subtle)] relative overflow-hidden"><div class="home-container relative z-10 text-center flex flex-col items-center"><div class="inline-flex items-center gap-2 px-3 py-1 rounded-full border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] text-[var(--siduri-ember-light)] text-[10px] font-mono tracking-widest uppercase mb-6 sm:mb-8 text-center max-w-full"><span class="w-1.5 h-1.5 rounded-full bg-[var(--siduri-online)] shadow-[0_0_8px_rgba(127,199,154,0.6)] shrink-0"></span><span class="truncate">Standalone Companion · Version 1.0</span></div><h1 class="text-3xl sm:text-5xl md:text-6xl font-normal font-serif text-[var(--siduri-text-primary)] tracking-tight leading-[1.2] sm:leading-[1.15] mb-6 max-w-4xl px-2">A companion grown from memory, powered by modular cognition.</h1><p class="text-sm sm:text-lg text-[var(--siduri-text-secondary)] font-sans leading-relaxed mb-8 sm:mb-10 max-w-2xl font-light px-2">Siduri-X is an intelligent companion designed with authoritative memory, atomic behavioral gating, and a strict 10-organ architecture. She starts as a blank slate and forms her identity entirely through your interactions.</p><div class="flex flex-col sm:flex-row justify-center items-stretch sm:items-center gap-3 sm:gap-4 w-full max-w-md sm:max-w-none px-4"><a class="inline-flex justify-center items-center gap-3 px-6 py-3.5 rounded-xl bg-[var(--siduri-ember)] text-[#1b1619] font-sans font-semibold text-sm tracking-wide transition-all hover:brightness-110 shadow-[0_4px_20px_rgba(217,154,104,0.2)]" href="/chat/">Launch Companion<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a><a class="inline-flex justify-center items-center gap-2.5 px-6 py-3.5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] text-[var(--siduri-text-primary)] font-sans font-medium text-sm transition-all hover:border-[var(--siduri-border-ember)] hover:bg-[var(--siduri-tint-low)]" href="/operator/"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="shrink-0" aria-hidden="true"><path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path></svg>Operator Console</a></div></div></section><section class="py-20 md:py-28 border-b border-[var(--siduri-border-subtle)] bg-[#0e0e12]"><div class="home-container"><div class="mb-14 text-center max-w-3xl mx-auto"><p class="text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2">Decoupled Philosophy</p><h2 class="text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-4">The 10-Organ Architecture</h2><p class="text-sm text-[var(--siduri-text-secondary)] leading-relaxed">Siduri is not a chatbot. She is a cognition runtime composed of independent organs. Every decision originates from the Brain, while other organs perceive, remember, act, and embody.</p></div><div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-3 sm:gap-4"><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Brain</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Cognition, planning, and authoritative decision making.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Memory</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">SQLite FTS5 authoritative storage of verified claims and episodic memory.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Behavior</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Atomic directive state machine and personality projection.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Knowledge</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">External factual context and verifiable E-compatible packs.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Hands</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Tool execution and strict cryptographic action policy capabilities.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Ear</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Audio transcription, perception, and sensory input ingestion.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Vision</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Visual observation, cropping, and OCR interpretation.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Voice</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Queued speech synthesis (Edge-TTS, Kokoro, Piper, VOICEVOX) and auditory expression.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Body</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Renderer-agnostic avatar expression (Live2D) and embodiment.</p></div><div class="p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]"><h3 class="text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2">Observation</h3><p class="text-xs text-[var(--siduri-text-secondary)] leading-relaxed">Event frame deduplication and real-time evidence extraction.</p></div></div></div></section><section class="py-16 sm:py-20 md:py-28 border-b border-[var(--siduri-border-subtle)]"><div class="home-container grid grid-cols-1 lg:grid-cols-2 gap-10 sm:gap-16 items-center"><div><p class="text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2">Authoritative State</p><h2 class="text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5">Blank Slate Identity</h2><p class="text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-6">Unlike standard conversational agents, Siduri starts with no pre-baked persona. She learns, remembers, and adapts over time. When you share preferences, they are staged as structured candidates. You decide what enters her long-term memory with explicit single-click approval.</p><ul class="space-y-3 text-xs text-[var(--siduri-text-muted)] font-mono"><li class="flex items-center gap-2.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="text-[var(--siduri-online)] shrink-0" aria-hidden="true"><polyline points="20 6 9 17 4 12"></polyline></svg><span>No hidden relationship assumptions</span></li><li class="flex items-center gap-2.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="text-[var(--siduri-online)] shrink-0" aria-hidden="true"><polyline points="20 6 9 17 4 12"></polyline></svg><span>Structured episodic and semantic memory</span></li><li class="flex items-center gap-2.5"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="text-[var(--siduri-online)] shrink-0" aria-hidden="true"><polyline points="20 6 9 17 4 12"></polyline></svg><span>Full revocation and override controls</span></li></ul></div><div class="p-5 sm:p-8 rounded-2xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-surface)] shadow-[0_10px_35px_rgba(0,0,0,0.4)] relative"><div class="absolute top-0 right-6 sm:right-8 -translate-y-1/2 bg-[var(--siduri-bg)] px-3 text-[10px] font-mono text-[var(--siduri-ember)] tracking-widest uppercase">Operator View</div><div class="space-y-4 font-mono text-xs"><div class="p-3 border border-[var(--siduri-border-subtle)] rounded bg-[#13131a]"><div class="text-[var(--siduri-text-muted)] mb-1">Incoming Claim</div><div class="text-[var(--siduri-online)] font-bold break-words">“User prefers concise, technical explanations.”</div><div class="flex flex-wrap gap-2 mt-3"><span class="bg-[var(--siduri-online)] text-black px-2.5 py-1 rounded font-bold cursor-pointer text-xs">APPROVE</span><span class="border border-[var(--siduri-border-subtle)] text-[var(--siduri-text-muted)] px-2.5 py-1 rounded cursor-pointer text-xs">REJECT</span></div></div></div></div></div></section><section class="py-16 sm:py-20 md:py-28 bg-[#09090c]"><div class="home-container text-center max-w-2xl mx-auto px-4"><h2 class="text-2xl sm:text-4xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5">Private, local, and yours.</h2><p class="text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-8">Siduri is designed for local-first operations and explicit consent. The CLI dynamically generates a standalone companion instance leveraging only the organ packages you need. Run it completely on your own machine.</p><div class="bg-[#13131a] p-3.5 sm:p-4 rounded-xl border border-[var(--siduri-border-subtle)] inline-block text-left text-xs sm:text-sm font-mono text-[var(--siduri-text-primary)] shadow-lg mx-auto max-w-full overflow-x-auto"><span class="text-emerald-400">$</span> npx @vxnus/siduri create my-companion</div></div></section></main><footer class="py-14 border-t border-[var(--siduri-border-subtle)] bg-[#0e0e12]"><div class="home-container flex flex-col sm:flex-row items-center justify-between gap-6"><div class="flex items-center gap-3"><img src="/logo-circle.svg" alt="Siduri-X Logo" class="w-5 h-5 rounded-full shrink-0" width="20" height="20"/><span class="font-bold tracking-widest text-xs text-[var(--siduri-text-primary)]">SIDURI-X</span></div><p class="text-xs text-[var(--siduri-text-dim)] font-sans text-center sm:text-left">Local-first AI companion framework.</p><div class="flex items-center gap-5 text-xs text-[var(--siduri-text-muted)]"><a class="hover:text-[var(--siduri-text-primary)]" href="/chat/">Chat</a><a class="hover:text-[var(--siduri-text-primary)]" href="/operator/">Operator</a></div></div></footer></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-f73cedc256be153e.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[8766,[],\"\"]\n3:I[356,[],\"\"]\n4:I[7443,[\"974\",\"static/chunks/app/page-fc4bf56cf33ae27b.js\"],\"\"]\n10:I[6886,[],\"default\",1]\n:HL[\"/_next/static/css/5295df1ca5e44779.css\",\"style\"]\n:HL[\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"style\"]\n:HL[\"/logo-circle.svg\",\"image\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/5295df1ca5e44779.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased dark\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500\u0026family=Noto+Sans+JP:wght@400;500;700\u0026family=Noto+Serif+JP:wght@400;500;700\u0026display=swap\",\"rel\":\"stylesheet\"}]]}],[\"$\",\"body\",null,{\"className\":\"min-h-full flex flex-col bg-[#0b0b0e] text-[#eee8df] selection:bg-[#d99a68]/30 selection:text-[#f4c28d]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"home-page bg-[#09090c] min-h-screen text-[var(--siduri-text-primary)] font-sans\",\"children\":[[\"$\",\"header\",null,{\"className\":\"home-nav\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container home-nav-inner flex items-center justify-between py-3 sm:py-4\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/\",\"className\":\"brand-link flex items-center gap-2\",\"aria-label\":\"Siduri Home\",\"children\":[[\"$\",\"img\",null,{\"src\":\"/logo-circle.svg\",\"alt\":\"Siduri-X Logo\",\"className\":\"w-6 h-6 rounded-full shrink-0\",\"width\":24,\"height\":24}],[\"$\",\"span\",null,{\"className\":\"font-bold tracking-widest text-sm\",\"children\":\"SIDURI-X\"}]]}],[\"$\",\"nav\",null,{\"className\":\"nav-links hidden sm:flex gap-6 text-sm text-[var(--siduri-text-muted)]\",\"aria-label\":\"Main Navigation\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"hover:text-[var(--siduri-text-primary)] transition-colors\",\"children\":\"Chat\"}],[\"$\",\"$L4\",null,{\"href\":\"/operator\",\"className\":\"hover:text-[var(--siduri-text-primary)] transition-colors\",\"children\":\"Operator Console\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3\",\"children\":[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"nav-cta inline-flex items-center gap-1.5 text-xs font-mono border border-[var(--siduri-border-subtle)] px-3 sm:px-4 py-2 rounded-full hover:bg-[var(--siduri-surface)] transition-all\",\"children\":[[\"$\",\"span\",null,{\"children\":\"Chat\"}],\" \",[\"$\",\"svg\",null,{\"width\":12,\"height\":12,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"$undefined\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"line\",null,{\"x1\":\"5\",\"y1\":\"12\",\"x2\":\"19\",\"y2\":\"12\"}],[\"$\",\"polyline\",null,{\"points\":\"12 5 19 12 12 19\"}]]}]]}]}]]}]}],[\"$\",\"main\",null,{\"children\":[[\"$\",\"section\",null,{\"className\":\"py-16 sm:py-24 md:py-32 border-b border-[var(--siduri-border-subtle)] relative overflow-hidden\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container relative z-10 text-center flex flex-col items-center\",\"children\":[[\"$\",\"div\",null,{\"className\":\"inline-flex items-center gap-2 px-3 py-1 rounded-full border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] text-[var(--siduri-ember-light)] text-[10px] font-mono tracking-widest uppercase mb-6 sm:mb-8 text-center max-w-full\",\"children\":[\"$L5\",\"$L6\"]}],\"$L7\",\"$L8\",\"$L9\"]}]}],\"$La\",\"$Lb\",\"$Lc\"]}],\"$Ld\"]}],null,\"$Le\"]}],{},null,false,null]},null,false,null],\"$Lf\",false]],\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"gwoBwxvzaJ6JerUVTkuz1\"}\n"])</script><script>self.__next_f.push([1,"15:I[5127,[],\"OutletBoundary\"]\n16:\"$Sreact.suspense\"\n18:I[5127,[],\"ViewportBoundary\"]\n1a:I[5127,[],\"MetadataBoundary\"]\n5:[\"$\",\"span\",null,{\"className\":\"w-1.5 h-1.5 rounded-full bg-[var(--siduri-online)] shadow-[0_0_8px_rgba(127,199,154,0.6)] shrink-0\"}]\n6:[\"$\",\"span\",null,{\"className\":\"truncate\",\"children\":\"Standalone Companion · Version 1.0\"}]\n7:[\"$\",\"h1\",null,{\"className\":\"text-3xl sm:text-5xl md:text-6xl font-normal font-serif text-[var(--siduri-text-primary)] tracking-tight leading-[1.2] sm:leading-[1.15] mb-6 max-w-4xl px-2\",\"children\":\"A companion grown from memory, powered by modular cognition.\"}]\n8:[\"$\",\"p\",null,{\"className\":\"text-sm sm:text-lg text-[var(--siduri-text-secondary)] font-sans leading-relaxed mb-8 sm:mb-10 max-w-2xl font-light px-2\",\"children\":\"Siduri-X is an intelligent companion designed with authoritative memory, atomic behavioral gating, and a strict 10-organ architecture. She starts as a blank slate and forms her identity entirely through your interactions.\"}]\n"])</script><script>self.__next_f.push([1,"9:[\"$\",\"div\",null,{\"className\":\"flex flex-col sm:flex-row justify-center items-stretch sm:items-center gap-3 sm:gap-4 w-full max-w-md sm:max-w-none px-4\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"inline-flex justify-center items-center gap-3 px-6 py-3.5 rounded-xl bg-[var(--siduri-ember)] text-[#1b1619] font-sans font-semibold text-sm tracking-wide transition-all hover:brightness-110 shadow-[0_4px_20px_rgba(217,154,104,0.2)]\",\"children\":[\"Launch Companion\",[\"$\",\"svg\",null,{\"width\":16,\"height\":16,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"$undefined\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"line\",null,{\"x1\":\"5\",\"y1\":\"12\",\"x2\":\"19\",\"y2\":\"12\"}],[\"$\",\"polyline\",null,{\"points\":\"12 5 19 12 12 19\"}]]}]]}],[\"$\",\"$L4\",null,{\"href\":\"/operator\",\"className\":\"inline-flex justify-center items-center gap-2.5 px-6 py-3.5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] text-[var(--siduri-text-primary)] font-sans font-medium text-sm transition-all hover:border-[var(--siduri-border-ember)] hover:bg-[var(--siduri-tint-low)]\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z\"}]}],\"Operator Console\"]}]]}]\n"])</script><script>self.__next_f.push([1,"a:[\"$\",\"section\",null,{\"className\":\"py-20 md:py-28 border-b border-[var(--siduri-border-subtle)] bg-[#0e0e12]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-14 text-center max-w-3xl mx-auto\",\"children\":[[\"$\",\"p\",null,{\"className\":\"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2\",\"children\":\"Decoupled Philosophy\"}],[\"$\",\"h2\",null,{\"className\":\"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-4\",\"children\":\"The 10-Organ Architecture\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Siduri is not a chatbot. She is a cognition runtime composed of independent organs. Every decision originates from the Brain, while other organs perceive, remember, act, and embody.\"}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-3 sm:gap-4\",\"children\":[[\"$\",\"div\",\"Brain\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Brain\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Cognition, planning, and authoritative decision making.\"}]]}],[\"$\",\"div\",\"Memory\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Memory\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"SQLite FTS5 authoritative storage of verified claims and episodic memory.\"}]]}],[\"$\",\"div\",\"Behavior\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Behavior\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Atomic directive state machine and personality projection.\"}]]}],[\"$\",\"div\",\"Knowledge\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Knowledge\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"External factual context and verifiable E-compatible packs.\"}]]}],[\"$\",\"div\",\"Hands\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Hands\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Tool execution and strict cryptographic action policy capabilities.\"}]]}],[\"$\",\"div\",\"Ear\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Ear\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Audio transcription, perception, and sensory input ingestion.\"}]]}],\"$L11\",\"$L12\",\"$L13\",\"$L14\"]}]]}]}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"section\",null,{\"className\":\"py-16 sm:py-20 md:py-28 border-b border-[var(--siduri-border-subtle)]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container grid grid-cols-1 lg:grid-cols-2 gap-10 sm:gap-16 items-center\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2\",\"children\":\"Authoritative State\"}],[\"$\",\"h2\",null,{\"className\":\"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5\",\"children\":\"Blank Slate Identity\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-6\",\"children\":\"Unlike standard conversational agents, Siduri starts with no pre-baked persona. She learns, remembers, and adapts over time. When you share preferences, they are staged as structured candidates. You decide what enters her long-term memory with explicit single-click approval.\"}],[\"$\",\"ul\",null,{\"className\":\"space-y-3 text-xs text-[var(--siduri-text-muted)] font-mono\",\"children\":[[\"$\",\"li\",null,{\"className\":\"flex items-center gap-2.5\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"text-[var(--siduri-online)] shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"polyline\",null,{\"points\":\"20 6 9 17 4 12\"}]}],[\"$\",\"span\",null,{\"children\":\"No hidden relationship assumptions\"}]]}],[\"$\",\"li\",null,{\"className\":\"flex items-center gap-2.5\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"text-[var(--siduri-online)] shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"polyline\",null,{\"points\":\"20 6 9 17 4 12\"}]}],[\"$\",\"span\",null,{\"children\":\"Structured episodic and semantic memory\"}]]}],[\"$\",\"li\",null,{\"className\":\"flex items-center gap-2.5\",\"children\":[[\"$\",\"svg\",null,{\"width\":14,\"height\":14,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"text-[var(--siduri-online)] shrink-0\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"polyline\",null,{\"points\":\"20 6 9 17 4 12\"}]}],[\"$\",\"span\",null,{\"children\":\"Full revocation and override controls\"}]]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"p-5 sm:p-8 rounded-2xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-surface)] shadow-[0_10px_35px_rgba(0,0,0,0.4)] relative\",\"children\":[[\"$\",\"div\",null,{\"className\":\"absolute top-0 right-6 sm:right-8 -translate-y-1/2 bg-[var(--siduri-bg)] px-3 text-[10px] font-mono text-[var(--siduri-ember)] tracking-widest uppercase\",\"children\":\"Operator View\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4 font-mono text-xs\",\"children\":[\"$\",\"div\",null,{\"className\":\"p-3 border border-[var(--siduri-border-subtle)] rounded bg-[#13131a]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"text-[var(--siduri-text-muted)] mb-1\",\"children\":\"Incoming Claim\"}],[\"$\",\"div\",null,{\"className\":\"text-[var(--siduri-online)] font-bold break-words\",\"children\":\"“User prefers concise, technical explanations.”\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-wrap gap-2 mt-3\",\"children\":[[\"$\",\"span\",null,{\"className\":\"bg-[var(--siduri-online)] text-black px-2.5 py-1 rounded font-bold cursor-pointer text-xs\",\"children\":\"APPROVE\"}],[\"$\",\"span\",null,{\"className\":\"border border-[var(--siduri-border-subtle)] text-[var(--siduri-text-muted)] px-2.5 py-1 rounded cursor-pointer text-xs\",\"children\":\"REJECT\"}]]}]]}]}]]}]]}]}]\n"])</script><script>self.__next_f.push([1,"c:[\"$\",\"section\",null,{\"className\":\"py-16 sm:py-20 md:py-28 bg-[#09090c]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container text-center max-w-2xl mx-auto px-4\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"text-2xl sm:text-4xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5\",\"children\":\"Private, local, and yours.\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-8\",\"children\":\"Siduri is designed for local-first operations and explicit consent. The CLI dynamically generates a standalone companion instance leveraging only the organ packages you need. Run it completely on your own machine.\"}],[\"$\",\"div\",null,{\"className\":\"bg-[#13131a] p-3.5 sm:p-4 rounded-xl border border-[var(--siduri-border-subtle)] inline-block text-left text-xs sm:text-sm font-mono text-[var(--siduri-text-primary)] shadow-lg mx-auto max-w-full overflow-x-auto\",\"children\":[[\"$\",\"span\",null,{\"className\":\"text-emerald-400\",\"children\":\"$$\"}],\" npx @vxnus/siduri create my-companion\"]}]]}]}]\nd:[\"$\",\"footer\",null,{\"className\":\"py-14 border-t border-[var(--siduri-border-subtle)] bg-[#0e0e12]\",\"children\":[\"$\",\"div\",null,{\"className\":\"home-container flex flex-col sm:flex-row items-center justify-between gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3\",\"children\":[[\"$\",\"img\",null,{\"src\":\"/logo-circle.svg\",\"alt\":\"Siduri-X Logo\",\"className\":\"w-5 h-5 rounded-full shrink-0\",\"width\":20,\"height\":20}],[\"$\",\"span\",null,{\"className\":\"font-bold tracking-widest text-xs text-[var(--siduri-text-primary)]\",\"children\":\"SIDURI-X\"}]]}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-dim)] font-sans text-center sm:text-left\",\"children\":\"Local-first AI companion framework.\"}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-5 text-xs text-[var(--siduri-text-muted)]\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/chat\",\"className\":\"hover:text-[var(--siduri-text-primary)]\",\"children\":\"Chat\"}],[\"$\",\"$L4\",null,{\"href\":\"/operator\",\"className\":\"hover:text-[var(--siduri-text-primary)]\",\"children\":\"Operator\"}]]}]]}]}]\ne:[\"$\",\"$L15\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@17\"}]}]\nf:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1a\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1b\"}]}]}],null]}]\n"])</script><script>self.__next_f.push([1,"11:[\"$\",\"div\",\"Vision\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Vision\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Visual observation, cropping, and OCR interpretation.\"}]]}]\n12:[\"$\",\"div\",\"Voice\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Voice\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Queued speech synthesis (Edge-TTS, Kokoro, Piper, VOICEVOX) and auditory expression.\"}]]}]\n13:[\"$\",\"div\",\"Body\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Body\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Renderer-agnostic avatar expression (Live2D) and embodiment.\"}]]}]\n14:[\"$\",\"div\",\"Observation\",{\"className\":\"p-4 sm:p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[var(--siduri-border-ember)]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-sm font-bold font-mono text-[var(--siduri-ember-light)] mb-2\",\"children\":\"Observation\"}],[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--siduri-text-secondary)] leading-relaxed\",\"children\":\"Event frame deduplication and real-time evidence extraction.\"}]]}]\n"])</script><script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0b0b0e\"}]]\n"])</script><script>self.__next_f.push([1,"1c:I[3366,[],\"IconMark\"]\n17:null\n1b:[[\"$\",\"title\",\"0\",{\"children\":\"Siduri — Local-First Companion\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Siduri — a local-first companion with explicit memory, grounded knowledge, and optional presence.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?7715e5163ea8ac02\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-touch-icon.png\"}],[\"$\",\"$L1c\",\"6\",{}]]\n"])</script></body></html>