@vxnus/siduri 0.1.4 → 0.1.6

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 (42) hide show
  1. package/dist/builtin-manifests.js +10 -10
  2. package/dist/clean-machine-e2e.test.js +21 -21
  3. package/dist/configurators/voice.js +11 -8
  4. package/dist/configurators.test.js +18 -1
  5. package/dist/generator.js +86 -71
  6. package/dist/generator.test.js +20 -3
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/release-check.js +12 -12
  10. package/dist/runtime-parity.test.d.ts +1 -0
  11. package/dist/runtime-parity.test.js +140 -0
  12. package/dist/web-dist/404/index.html +1 -1
  13. package/dist/web-dist/404.html +1 -1
  14. package/dist/web-dist/__next.__PAGE__.txt +22 -22
  15. package/dist/web-dist/__next._full.txt +26 -22
  16. package/dist/web-dist/__next._tree.txt +2 -2
  17. package/dist/web-dist/_next/static/chunks/10rmct1ax-opq.js +1 -0
  18. package/dist/web-dist/_next/static/chunks/2vh8hinyh9xfg.css +1 -0
  19. package/dist/web-dist/_not-found/__next._full.txt +2 -2
  20. package/dist/web-dist/_not-found/__next._not-found.__PAGE__.txt +2 -2
  21. package/dist/web-dist/_not-found/__next._tree.txt +2 -2
  22. package/dist/web-dist/_not-found/index.html +1 -1
  23. package/dist/web-dist/_not-found/index.txt +2 -2
  24. package/dist/web-dist/chat/__next._full.txt +2 -2
  25. package/dist/web-dist/chat/__next._tree.txt +2 -2
  26. package/dist/web-dist/chat/__next.chat.__PAGE__.txt +2 -2
  27. package/dist/web-dist/chat/index.html +1 -1
  28. package/dist/web-dist/chat/index.txt +2 -2
  29. package/dist/web-dist/index.html +1 -1
  30. package/dist/web-dist/index.txt +26 -22
  31. package/dist/web-dist/operator/__next._full.txt +3 -3
  32. package/dist/web-dist/operator/__next._tree.txt +2 -2
  33. package/dist/web-dist/operator/__next.operator.__PAGE__.txt +3 -3
  34. package/dist/web-dist/operator/index.html +1 -1
  35. package/dist/web-dist/operator/index.txt +3 -3
  36. package/dist/web-template.js +15 -6
  37. package/package.json +2 -2
  38. package/dist/web-dist/_next/static/chunks/1dc9n0p39yo65.css +0 -1
  39. package/dist/web-dist/_next/static/chunks/1hz3jco387c-k.js +0 -1
  40. /package/dist/web-dist/_next/static/{fySnDRfSgiBzStXXyXjTp → D38KTbM_PIeZqLpHvixAH}/_buildManifest.js +0 -0
  41. /package/dist/web-dist/_next/static/{fySnDRfSgiBzStXXyXjTp → D38KTbM_PIeZqLpHvixAH}/_clientMiddlewareManifest.js +0 -0
  42. /package/dist/web-dist/_next/static/{fySnDRfSgiBzStXXyXjTp → D38KTbM_PIeZqLpHvixAH}/_ssgManifest.js +0 -0
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const generator_1 = require("./generator");
40
+ const node_path_1 = __importDefault(require("node:path"));
41
+ describe('Localweb and CLI Standalone 1:1 Runtime & Chat Parity', () => {
42
+ // Dynamically import from built packages/core to preserve decoupled packaging
43
+ let dispatchCompanionChat;
44
+ beforeAll(async () => {
45
+ const coreModule = await Promise.resolve(`${node_path_1.default.resolve(__dirname, '../../packages/core/dist/index.js')}`).then(s => __importStar(require(s)));
46
+ dispatchCompanionChat = coreModule.dispatchCompanionChat;
47
+ });
48
+ const fakeRuntime = {
49
+ id: 'test-companion',
50
+ handleUserMessage: jest.fn().mockImplementation(async (message, role, history) => {
51
+ return {
52
+ status: 'APPROVED',
53
+ response_id: 'resp-123',
54
+ correlation_id: 'corr-456',
55
+ response: {
56
+ speech_id: 'speech-789',
57
+ audio_url: '/voice/stream?id=speech-789',
58
+ subtitle_ja: `日本語: ${message}`,
59
+ subtitle_en: `English: ${message}`,
60
+ },
61
+ metadata: {
62
+ language: 'ja',
63
+ internal_monologue: 'Monologue test',
64
+ memory_proposals: [
65
+ {
66
+ proposal_id: 'prop-1',
67
+ subject: 'user',
68
+ predicate: 'likes',
69
+ value: 'tea',
70
+ status: 'PENDING',
71
+ },
72
+ ],
73
+ events: [
74
+ {
75
+ event_id: 'evt-avatar-1',
76
+ kind: 'avatar',
77
+ lifecycle: 'STARTED',
78
+ approval: 'APPROVED',
79
+ expression: 'happy',
80
+ action: 'talk',
81
+ },
82
+ ],
83
+ },
84
+ };
85
+ }),
86
+ };
87
+ test('dispatchCompanionChat returns canonical ChatResponse structure consumed by apps/web', async () => {
88
+ const payload = {
89
+ id: 'test-companion',
90
+ message: 'Hello Siduri',
91
+ role: 'VIEWER',
92
+ history: [{ role: 'user', content: 'Hi' }],
93
+ };
94
+ const result = await dispatchCompanionChat(fakeRuntime, payload);
95
+ // 1. Top-level status & IDs
96
+ expect(result.status).toBe('APPROVED');
97
+ expect(result.response_id).toBe('resp-123');
98
+ expect(result.correlation_id).toBe('corr-456');
99
+ // 2. Exact contract expected by apps/web chat-client: data.response.{subtitle_en, spoken_ja, speech_id, evidence_ids}
100
+ expect(result.response).toBeDefined();
101
+ expect(result.response.subtitle_en).toBe('English: Hello Siduri');
102
+ expect(result.response.subtitle_ja).toBe('日本語: Hello Siduri');
103
+ expect(result.response.spoken_ja).toBe('日本語: Hello Siduri');
104
+ expect(result.response.speech_id).toBe('speech-789');
105
+ expect(result.response.audio_url).toBe('/voice/stream?id=speech-789');
106
+ expect(result.response.evidence_ids).toEqual([]);
107
+ // 3. Metadata proposals & events
108
+ expect(result.metadata?.memory_proposals).toHaveLength(1);
109
+ expect(result.metadata?.memory_proposals?.[0].proposal_id).toBe('prop-1');
110
+ expect(result.metadata?.events).toHaveLength(1);
111
+ expect(result.metadata?.events?.[0].expression).toBe('happy');
112
+ // 4. Convenience backward-compatibility fields (no runtimeResult envelope nesting)
113
+ expect(result.reply).toBe('日本語: Hello Siduri');
114
+ expect(result.text).toBe('日本語: Hello Siduri');
115
+ expect(result.expression).toBe('happy');
116
+ expect(result.runtimeResult).toBeUndefined();
117
+ });
118
+ test('Generated CLI standalone src/index.js routes /chat through dispatchCompanionChat', () => {
119
+ const mockManifest = {
120
+ name: '@siduri-x/brain',
121
+ organType: 'brain',
122
+ version: '1.0.0',
123
+ displayName: 'Brain',
124
+ entrypoint: './dist/index.js',
125
+ factory: 'OpenRouterBrain',
126
+ configKey: 'brain',
127
+ };
128
+ const files = (0, generator_1.generateInstanceFiles)({
129
+ name: 'test-companion',
130
+ selectedManifests: [mockManifest],
131
+ });
132
+ const srcIndexJs = files['src/index.js'];
133
+ // Ensures single source of truth import
134
+ expect(srcIndexJs).toContain("import { SiduriRuntime, dispatchCompanionChat } from '@siduri-x/core';");
135
+ // Ensures /chat uses dispatchCompanionChat directly without ad-hoc runtimeResult envelope
136
+ expect(srcIndexJs).toContain('const response = await dispatchCompanionChat(runtime,');
137
+ expect(srcIndexJs).toContain('res.end(JSON.stringify(response));');
138
+ expect(srcIndexJs).not.toContain('runtimeResult,');
139
+ });
140
+ });
@@ -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"/><link rel="stylesheet" href="/_next/static/chunks/1dc9n0p39yo65.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2kcqevsmv6kh2.js"/><script src="/_next/static/chunks/1_yae15ffa5f6.js" async=""></script><script src="/_next/static/chunks/3bx2gs3idjmo1.js" async=""></script><script src="/_next/static/chunks/32z87id9k6i2z.js" async=""></script><script src="/_next/static/chunks/turbopack-3eipe4c-imn5l.js" async=""></script><script src="/_next/static/chunks/0uwih7sydv413.js" async="" crossorigin=""></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"/><meta name="robots" content="noindex"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><title>404: This page could not be found.</title><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?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><link rel="icon" href="/favicon.ico"/><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/0cz1d0mv5g_q7.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 style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>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)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/2kcqevsmv6kh2.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[81869,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n3:I[57830,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n4:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"ViewportBoundary\"]\na:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"MetadataBoundary\"]\nc:I[4626,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/1dc9n0p39yo65.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\"]\n7:X\n"])</script><script>self.__next_f.push([1,"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/chunks/1dc9n0p39yo65.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0uwih7sydv413.js\",\"async\":true,\"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\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:style\",\"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\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"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\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1dc9n0p39yo65.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"fySnDRfSgiBzStXXyXjTp\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[89236,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"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?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$Ld\",\"4\",{}]]\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"/><link rel="stylesheet" href="/_next/static/chunks/2vh8hinyh9xfg.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2kcqevsmv6kh2.js"/><script src="/_next/static/chunks/1_yae15ffa5f6.js" async=""></script><script src="/_next/static/chunks/3bx2gs3idjmo1.js" async=""></script><script src="/_next/static/chunks/32z87id9k6i2z.js" async=""></script><script src="/_next/static/chunks/turbopack-3eipe4c-imn5l.js" async=""></script><script src="/_next/static/chunks/0uwih7sydv413.js" async="" crossorigin=""></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"/><meta name="robots" content="noindex"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><title>404: This page could not be found.</title><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?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><link rel="icon" href="/favicon.ico"/><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/0cz1d0mv5g_q7.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 style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>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)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/2kcqevsmv6kh2.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[81869,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n3:I[57830,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n4:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"ViewportBoundary\"]\na:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"MetadataBoundary\"]\nc:I[4626,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/2vh8hinyh9xfg.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\"]\n7:X\n"])</script><script>self.__next_f.push([1,"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/chunks/2vh8hinyh9xfg.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0uwih7sydv413.js\",\"async\":true,\"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\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:style\",\"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\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"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\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/2vh8hinyh9xfg.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"D38KTbM_PIeZqLpHvixAH\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[89236,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"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?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$Ld\",\"4\",{}]]\n"])</script></body></html>
@@ -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"/><link rel="stylesheet" href="/_next/static/chunks/1dc9n0p39yo65.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2kcqevsmv6kh2.js"/><script src="/_next/static/chunks/1_yae15ffa5f6.js" async=""></script><script src="/_next/static/chunks/3bx2gs3idjmo1.js" async=""></script><script src="/_next/static/chunks/32z87id9k6i2z.js" async=""></script><script src="/_next/static/chunks/turbopack-3eipe4c-imn5l.js" async=""></script><script src="/_next/static/chunks/0uwih7sydv413.js" async="" crossorigin=""></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"/><meta name="robots" content="noindex"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><title>404: This page could not be found.</title><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?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><link rel="icon" href="/favicon.ico"/><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/0cz1d0mv5g_q7.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 style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>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)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/2kcqevsmv6kh2.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[81869,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n3:I[57830,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n4:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"ViewportBoundary\"]\na:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"MetadataBoundary\"]\nc:I[4626,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/1dc9n0p39yo65.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\"]\n7:X\n"])</script><script>self.__next_f.push([1,"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/chunks/1dc9n0p39yo65.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0uwih7sydv413.js\",\"async\":true,\"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\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:style\",\"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\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"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\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1dc9n0p39yo65.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"fySnDRfSgiBzStXXyXjTp\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[89236,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"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?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$Ld\",\"4\",{}]]\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"/><link rel="stylesheet" href="/_next/static/chunks/2vh8hinyh9xfg.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2kcqevsmv6kh2.js"/><script src="/_next/static/chunks/1_yae15ffa5f6.js" async=""></script><script src="/_next/static/chunks/3bx2gs3idjmo1.js" async=""></script><script src="/_next/static/chunks/32z87id9k6i2z.js" async=""></script><script src="/_next/static/chunks/turbopack-3eipe4c-imn5l.js" async=""></script><script src="/_next/static/chunks/0uwih7sydv413.js" async="" crossorigin=""></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"/><meta name="robots" content="noindex"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><title>404: This page could not be found.</title><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?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><link rel="icon" href="/favicon.ico"/><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/0cz1d0mv5g_q7.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 style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>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)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/2kcqevsmv6kh2.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[81869,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n3:I[57830,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\"]\n4:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"ViewportBoundary\"]\na:I[44101,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"MetadataBoundary\"]\nc:I[4626,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/2vh8hinyh9xfg.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\"]\n7:X\n"])</script><script>self.__next_f.push([1,"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/chunks/2vh8hinyh9xfg.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0uwih7sydv413.js\",\"async\":true,\"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\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:style\",\"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\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"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\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/2vh8hinyh9xfg.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"D38KTbM_PIeZqLpHvixAH\"}\n"])</script><script>self.__next_f.push([1,"7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[89236,[\"/_next/static/chunks/0uwih7sydv413.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"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?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$Ld\",\"4\",{}]]\n"])</script></body></html>
@@ -1,7 +1,7 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[80413,["/_next/static/chunks/0uwih7sydv413.js","/_next/static/chunks/2s3d1bfr0l4b0.js"],""]
3
- e:X
4
- 0:{"buildId":"fySnDRfSgiBzStXXyXjTp","data":[{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"home-page","children":[["$","header",null,{"className":"home-nav","children":["$","div",null,{"className":"home-container home-nav-inner","children":[["$","$L2",null,{"href":"/","className":"brand-link","aria-label":"Siduri Home","children":[["$","span",null,{"className":"siduri-glyph","children":"✦"}],["$","span",null,{"children":"SIDURI"}]]}],["$","nav",null,{"className":"nav-links","aria-label":"Main Navigation","children":[["$","$L2",null,{"href":"/chat","children":"Chat"}],["$","$L2",null,{"href":"/operator","children":"Operator Console"}]]}],["$","div",null,{"children":["$","$L2",null,{"href":"/chat","className":"nav-cta","children":["Open Chat ",["$","span",null,{"children":"→"}]]}]}]]}]}],["$","main",null,{"children":[["$","section",null,{"className":"py-24 md:py-32 border-b border-[var(--siduri-border-subtle)] relative overflow-hidden","children":["$","div",null,{"className":"home-container relative z-10","children":["$","div",null,{"className":"max-w-3xl","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-8","children":[["$","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)]"}],"Local-First Companion · Explicit Architecture"]}],["$","h1",null,{"className":"text-4xl sm:text-5xl md:text-6xl font-normal font-serif text-[var(--siduri-text-primary)] tracking-tight leading-[1.15] mb-6","children":"A companion designed to remember deliberately."}],["$","p",null,{"className":"text-base sm:text-lg text-[var(--siduri-text-secondary)] font-sans leading-relaxed mb-10 max-w-2xl font-light","children":"Local-first context, inspectable memory governance, grounded evidence, and optional visual presence engineered with explicit boundaries between identity and presentation."}],["$","div",null,{"className":"flex flex-wrap items-center gap-4","children":[["$","$L2",null,{"href":"/chat","className":"inline-flex 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 Private Chat",["$","span",null,{"className":"font-mono text-base","children":"→"}]]}],["$","$L2",null,{"href":"/operator","className":"inline-flex 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":[["$","span",null,{"children":"⌘"}],"Inspect Runtime"]}]]}]]}]}]}],["$","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","children":[["$","p",null,{"className":"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2","children":"Core Principles"}],["$","h2",null,{"className":"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)]","children":"Governed intelligence with verifiable state."}]]}],["$","div",null,{"className":"grid grid-cols-1 md:grid-cols-2 gap-6","children":[["$","div",null,{"className":"p-8 rounded-2xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[rgba(255,255,255,0.15)]","children":[["$","div",null,{"className":"w-10 h-10 rounded-xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] text-[var(--siduri-ember)] grid place-items-center font-serif text-lg mb-6","children":"✦"}],["$","h3",null,{"className":"text-lg font-medium text-[var(--siduri-text-primary)] mb-3","children":"Explicit Memory Governance"}],"$L3"]}],"$L4","$L5","$L6"]}]]}]}],"$L7","$L8","$L9"]}],"$La"]}],["$Lb"],"$Lc"]}],"isPartial":"$@d","staleTime":"$e","varyParams":null},{"rsc":"$Lf","isPartial":"$@10","staleTime":"$e","varyParams":null},{"rsc":"$L11","isPartial":"$@12","staleTime":"$e","varyParams":null}],"isUpgradeableISRFallback":false,"a":"$@13","rootVaryParams":null,"needsRuntimeRequest":"$@14"}
3
+ c:X
4
+ 0:{"buildId":"D38KTbM_PIeZqLpHvixAH","data":[{"rsc":["$","$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-4","children":[["$","$L2",null,{"href":"/","className":"brand-link flex items-center gap-2","aria-label":"Siduri Home","children":[["$","span",null,{"className":"siduri-glyph text-[var(--siduri-ember)]","children":"✦"}],["$","span",null,{"className":"font-bold tracking-widest text-sm","children":"SIDURI-X"}]]}],["$","nav",null,{"className":"nav-links flex gap-6 text-sm text-[var(--siduri-text-muted)]","aria-label":"Main Navigation","children":[["$","$L2",null,{"href":"/chat","className":"hover:text-[var(--siduri-text-primary)] transition-colors","children":"Chat"}],["$","$L2",null,{"href":"/operator","className":"hover:text-[var(--siduri-text-primary)] transition-colors","children":"Operator Console"}]]}],["$","div",null,{"children":["$","$L2",null,{"href":"/chat","className":"nav-cta inline-flex items-center gap-2 text-xs font-mono border border-[var(--siduri-border-subtle)] px-4 py-2 rounded-full hover:bg-[var(--siduri-surface)] transition-all","children":["Open Chat ",["$","span",null,{"children":"→"}]]}]}]]}]}],["$","main",null,{"children":[["$","section",null,{"className":"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-8","children":[["$","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)]"}],"Standalone Companion Framework · Version 1.0"]}],["$","h1",null,{"className":"text-4xl sm:text-5xl md:text-6xl font-normal font-serif text-[var(--siduri-text-primary)] tracking-tight leading-[1.15] mb-6 max-w-4xl","children":"A companion grown from memory, powered by modular cognition."}],["$","p",null,{"className":"text-base sm:text-lg text-[var(--siduri-text-secondary)] font-sans leading-relaxed mb-10 max-w-2xl font-light","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."}],["$","div",null,{"className":"flex flex-wrap justify-center items-center gap-4","children":[["$","$L2",null,{"href":"/chat","className":"inline-flex 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",["$","span",null,{"className":"font-mono text-base","children":"→"}]]}],["$","$L2",null,{"href":"/operator","className":"inline-flex 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":[["$","span",null,{"children":"⌘"}],"Operator Console"]}]]}]]}]}],["$","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"}],"$L3","$L4"]}],"$L5"]}]}],"$L6","$L7"]}],"$L8"]}],["$L9"],"$La"]}],"isPartial":"$@b","staleTime":"$c","varyParams":null},{"rsc":"$Ld","isPartial":"$@e","staleTime":"$c","varyParams":null},{"rsc":"$Lf","isPartial":"$@10","staleTime":"$c","varyParams":null}],"isUpgradeableISRFallback":false,"a":"$@11","rootVaryParams":null,"needsRuntimeRequest":"$@12"}
5
5
  16:I[44101,["/_next/static/chunks/0uwih7sydv413.js"],"OutletBoundary"]
6
6
  17:"$Sreact.suspense"
7
7
  19:I[44101,["/_next/static/chunks/0uwih7sydv413.js"],"ViewportBoundary"]
@@ -9,26 +9,26 @@ e:X
9
9
  1b:I[89236,["/_next/static/chunks/0uwih7sydv413.js"],"IconMark"]
10
10
  1c:I[81869,["/_next/static/chunks/0uwih7sydv413.js"],"default"]
11
11
  1d:I[57830,["/_next/static/chunks/0uwih7sydv413.js"],"default"]
12
- :HL["/_next/static/chunks/1dc9n0p39yo65.css","style"]
12
+ :HL["/_next/static/chunks/2vh8hinyh9xfg.css","style"]
13
13
  :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"]
14
- 3:["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed","children":"Memory is never silently accumulated. Facts, preferences, and behavioral directives are proposed in conversation and become permanent only upon explicit receipt approval."}]
15
- 4:["$","div",null,{"className":"p-8 rounded-2xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[rgba(255,255,255,0.15)]","children":[["$","div",null,{"className":"w-10 h-10 rounded-xl border border-emerald-500/30 bg-emerald-500/10 text-emerald-400 grid place-items-center font-mono text-sm mb-6","children":"[#]"}],["$","h3",null,{"className":"text-lg font-medium text-[var(--siduri-text-primary)] mb-3","children":"Grounded Knowledge & Citations"}],["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed","children":"Assertions remain tethered to source evidence. Claims carry verifiable citations with intact uncertainty indicators rather than fabricating authority."}]]}]
16
- 5:["$","div",null,{"className":"p-8 rounded-2xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[rgba(255,255,255,0.15)]","children":[["$","div",null,{"className":"w-10 h-10 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-elevated)] text-[var(--siduri-text-primary)] grid place-items-center font-mono text-sm mb-6","children":""}],["$","h3",null,{"className":"text-lg font-medium text-[var(--siduri-text-primary)] mb-3","children":"Local-First Runtime Boundaries"}],["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed","children":"A modular monolith with strict domain boundaries. Identity, semantic memory, observation capture, and response gating run in your environment with no external leakage."}]]}]
17
- 6:["$","div",null,{"className":"p-8 rounded-2xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] transition-all hover:border-[rgba(255,255,255,0.15)]","children":[["$","div",null,{"className":"w-10 h-10 rounded-xl border border-amber-500/30 bg-amber-500/10 text-amber-300 grid place-items-center font-serif text-lg mb-6","children":"S"}],["$","h3",null,{"className":"text-lg font-medium text-[var(--siduri-text-primary)] mb-3","children":"On-Demand Visual Presence"}],["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed","children":"Presentation is decoupled from core reasoning. Interact in pure text, or activate in-browser Live2D embodiment rendered reactively via WebGL when desired."}]]}]
18
- 7:["$","section",null,{"className":"py-20 md:py-28 border-b border-[var(--siduri-border-subtle)]","children":["$","div",null,{"className":"home-container","children":[["$","div",null,{"className":"max-w-2xl mb-14","children":[["$","p",null,{"className":"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2","children":"Execution Pipeline"}],["$","h2",null,{"className":"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-4","children":"Transparent from input to experience."}],["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed","children":"Every user utterance flows through an inspectable pipeline enforcing strict policy gating before generating speech or avatar expressions."}]]}],["$","div",null,{"className":"p-8 md:p-10 rounded-2xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)]","children":["$","div",null,{"className":"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-5 gap-4 relative","children":[["$","div",null,{"className":"p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-elevated)] flex flex-col justify-between","children":["$","div",null,{"children":[["$","span",null,{"className":"text-[9px] font-mono text-[var(--siduri-ember)] tracking-widest block mb-2","children":"01 / INPUT"}],["$","strong",null,{"className":"text-sm font-medium text-[var(--siduri-text-primary)] block mb-1","children":"User Context"}],["$","p",null,{"className":"text-xs text-[var(--siduri-text-muted)] leading-normal","children":"Channel & role-validated interaction."}]]}]}],["$","div",null,{"className":"p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-elevated)] flex flex-col justify-between","children":["$","div",null,{"children":[["$","span",null,{"className":"text-[9px] font-mono text-[var(--siduri-ember)] tracking-widest block mb-2","children":"02 / RETRIEVAL"}],["$","strong",null,{"className":"text-sm font-medium text-[var(--siduri-text-primary)] block mb-1","children":"Active Self & Memory"}],["$","p",null,{"className":"text-xs text-[var(--siduri-text-muted)] leading-normal","children":"Approved facts, directives & evidence."}]]}]}],["$","div",null,{"className":"p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-elevated)] flex flex-col justify-between","children":["$","div",null,{"children":[["$","span",null,{"className":"text-[9px] font-mono text-[var(--siduri-ember)] tracking-widest block mb-2","children":"03 / REASONING"}],["$","strong",null,{"className":"text-sm font-medium text-[var(--siduri-text-primary)] block mb-1","children":"Structured Planning"}],["$","p",null,{"className":"text-xs text-[var(--siduri-text-muted)] leading-normal","children":"Candidate speech, proposals & actions."}]]}]}],["$","div",null,{"className":"p-5 rounded-xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] flex flex-col justify-between","children":["$","div",null,{"children":[["$","span",null,{"className":"text-[9px] font-mono text-[var(--siduri-ember-highlight)] tracking-widest block mb-2","children":"04 / GATE"}],["$","strong",null,{"className":"text-sm font-medium text-[var(--siduri-text-primary)] block mb-1","children":"Security & Disclosure"}],["$","p",null,{"className":"text-xs text-[var(--siduri-text-secondary)] leading-normal","children":"Explicit staging & boundary approval."}]]}]}],["$","div",null,{"className":"p-5 rounded-xl border border-[var(--siduri-border-subtle)] bg-[var(--siduri-elevated)] flex flex-col justify-between","children":["$","div",null,{"children":[["$","span",null,{"className":"text-[9px] font-mono text-[var(--siduri-online)] tracking-widest block mb-2","children":"05 / OUTPUT"}],["$","strong",null,{"className":"text-sm font-medium text-[var(--siduri-text-primary)] block mb-1","children":"Experience Event"}],"$L15"]}]}]]}]}]]}]}]
19
- 8:["$","section",null,{"className":"py-20 md:py-28 border-b border-[var(--siduri-border-subtle)] bg-[#0e0e12]","children":["$","div",null,{"className":"home-container grid grid-cols-1 lg:grid-cols-2 gap-12 items-center","children":[["$","div",null,{"children":[["$","p",null,{"className":"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2","children":"Governed State"}],["$","h2",null,{"className":"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5","children":"Every memory is an auditable receipt."}],["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-6","children":"When you share preferences or rules with Siduri, they are staged as structured candidates. You decide what enters 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":[["$","span",null,{"className":"text-[var(--siduri-online)]","children":"✓"}],"Structured subject / predicate / value storage"]}],["$","li",null,{"className":"flex items-center gap-2.5","children":[["$","span",null,{"className":"text-[var(--siduri-online)]","children":"✓"}],"Full revocation and override controls"]}],["$","li",null,{"className":"flex items-center gap-2.5","children":[["$","span",null,{"className":"text-[var(--siduri-online)]","children":"✓"}],"Session-isolated candidate staging"]}]]}]]}],["$","div",null,{"className":"p-6 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)]","children":[["$","div",null,{"className":"flex items-center justify-between border-b border-[var(--siduri-border-subtle)] pb-4 mb-6","children":[["$","div",null,{"className":"flex items-center gap-2.5","children":[["$","span",null,{"className":"w-2 h-2 rounded-full bg-[var(--siduri-warning)] shadow-[0_0_8px_rgba(226,179,110,0.6)]"}],["$","span",null,{"className":"text-[11px] font-mono tracking-wider text-[var(--siduri-text-primary)] uppercase","children":"Memory Proposal #prp-842"}]]}],["$","span",null,{"className":"px-2 py-0.5 rounded text-[9px] font-mono bg-amber-500/10 text-amber-400 border border-amber-500/30 uppercase","children":"Pending Review"}]]}],["$","div",null,{"className":"space-y-3.5 mb-6 text-xs font-mono","children":[["$","div",null,{"className":"flex justify-between py-1 border-b border-[rgba(255,255,255,0.04)]","children":[["$","span",null,{"className":"text-[var(--siduri-text-muted)]","children":"Subject"}],["$","span",null,{"className":"text-[var(--siduri-text-primary)]","children":"User / Preference"}]]}],["$","div",null,{"className":"flex justify-between py-1 border-b border-[rgba(255,255,255,0.04)]","children":[["$","span",null,{"className":"text-[var(--siduri-text-muted)]","children":"Directive"}],["$","span",null,{"className":"text-[var(--siduri-text-primary)] font-sans","children":"Keep technical explanations concise and evidence-grounded"}]]}],["$","div",null,{"className":"flex justify-between py-1 border-b border-[rgba(255,255,255,0.04)]","children":[["$","span",null,{"className":"text-[var(--siduri-text-muted)]","children":"Provenance"}],["$","span",null,{"className":"text-[var(--siduri-text-secondary)]","children":"Direct chat teaching"}]]}],["$","div",null,{"className":"flex justify-between py-1","children":[["$","span",null,{"className":"text-[var(--siduri-text-muted)]","children":"Sensitivity"}],["$","span",null,{"className":"text-[var(--siduri-online)]","children":"Private / Operator"}]]}]]}],["$","div",null,{"className":"flex items-center gap-3 pt-2","children":[["$","button",null,{"type":"button","className":"flex-1 py-2 rounded-lg bg-[var(--siduri-online)] text-[#16251a] text-xs font-semibold tracking-wide cursor-default transition-all","children":"Approve Receipt"}],["$","button",null,{"type":"button","className":"flex-1 py-2 rounded-lg border border-[var(--siduri-border-subtle)] bg-[var(--siduri-elevated)] text-[var(--siduri-text-muted)] text-xs font-medium cursor-default","children":"Reject"}]]}]]}]]}]}]
20
- 9:["$","section",null,{"className":"py-20 md:py-28 border-b border-[var(--siduri-border-subtle)]","children":["$","div",null,{"className":"home-container text-center max-w-2xl mx-auto","children":[["$","div",null,{"className":"inline-grid w-14 h-14 place-items-center rounded-2xl border border-[var(--siduri-border-ember)] bg-[var(--siduri-tint-low)] text-[var(--siduri-ember-highlight)] font-serif text-2xl mb-6 mx-auto shadow-[0_0_30px_rgba(217,154,104,0.15)]","children":"✦"}],["$","p",null,{"className":"text-[10px] font-mono uppercase tracking-widest text-[var(--siduri-ember)] mb-2","children":"Embodied Experience"}],["$","h2",null,{"className":"text-3xl sm:text-4xl font-serif font-normal text-[var(--siduri-text-primary)] mb-5","children":"Presence, when wanted."}],["$","p",null,{"className":"text-sm text-[var(--siduri-text-secondary)] leading-relaxed mb-8","children":"Keep the conversation text-only for quiet focus, or activate an on-demand Live2D companion surface directly in your browser. Rendering runs locally via WebGL with zero background software dependencies."}],["$","div",null,{"className":"inline-flex items-center gap-2 px-3.5 py-1.5 rounded-full border border-[var(--siduri-border-subtle)] bg-[var(--siduri-surface)] text-[10px] font-mono text-[var(--siduri-text-muted)]","children":[["$","span",null,{"className":"w-1.5 h-1.5 rounded-full bg-[var(--siduri-ember)]"}],"Cubism Web Runtime · Browser-Isolated · On-Demand"]}]]}]}]
21
- a:["$","footer",null,{"className":"py-14 bg-[#09090c]","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":[["$","span",null,{"className":"siduri-glyph w-6 h-6 text-xs","children":"✦"}],["$","span",null,{"className":"font-bold tracking-widest text-xs text-[var(--siduri-text-primary)]","children":"SIDURI"}],["$","span",null,{"className":"text-[10px] font-mono text-[var(--siduri-text-muted)]","children":"v0.2.0-y"}]]}],["$","p",null,{"className":"text-xs text-[var(--siduri-text-dim)] font-sans text-center sm:text-left","children":"Local-first AI companion runtime with inspectable boundaries."}],["$","div",null,{"className":"flex items-center gap-5 text-xs text-[var(--siduri-text-muted)]","children":[["$","$L2",null,{"href":"/chat","className":"hover:text-[var(--siduri-text-primary)]","children":"Chat"}],["$","$L2",null,{"href":"/operator","className":"hover:text-[var(--siduri-text-primary)]","children":"Operator"}]]}]]}]}]
22
- b:["$","script","script-0",{"src":"/_next/static/chunks/2s3d1bfr0l4b0.js","async":true}]
23
- c:["$","$L16",null,{"children":["$","$17",null,{"name":"Next.MetadataOutlet","children":"$@18"}]}]
24
- f:["$","$1","h",{"children":[null,["$","$L19",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L1a",null,{"children":["$","$17",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?favicon.2vob68tjqpejf.ico","sizes":"256x256","type":"image/x-icon"}],["$","link","3",{"rel":"icon","href":"/favicon.ico"}],["$","$L1b","4",{}]]}]}]}],null]}]
25
- 11:["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/1dc9n0p39yo65.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0uwih7sydv413.js","async":true}]],["$","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":["$","$L1c",null,{"parallelRouterKey":"children","template":["$","$L1d",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."}]}]]}]}]],[]]}]}]]}]]}]
26
- 15:["$","p",null,{"className":"text-xs text-[var(--siduri-text-muted)] leading-normal","children":"Voice, subtitles & optional Live2D."}]
14
+ 3:["$","h2",null,{"className":"text-2xl sm:text-3xl font-serif font-normal text-[var(--siduri-text-primary)] mb-4","children":"The 10-Organ Architecture"}]
15
+ 4:["$","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."}]
16
+ 5:["$","div",null,{"className":"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-4","children":[["$","div","Brain",{"className":"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-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":"PostgreSQL-backed authoritative storage of claims and preferences."}]]}],["$","div","Behavior",{"className":"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-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-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-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."}]]}],["$","div","Vision",{"className":"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."}]]}],["$","div","Voice",{"className":"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"}],"$L13"]}],"$L14","$L15"]}]
17
+ 6:["$","section",null,{"className":"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-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-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":[["$","span",null,{"className":"text-[var(--siduri-online)]","children":"✓"}],"No hidden relationship assumptions"]}],["$","li",null,{"className":"flex items-center gap-2.5","children":[["$","span",null,{"className":"text-[var(--siduri-online)]","children":"✓"}],"Structured episodic and semantic memory"]}],["$","li",null,{"className":"flex items-center gap-2.5","children":[["$","span",null,{"className":"text-[var(--siduri-online)]","children":"✓"}],"Full revocation and override controls"]}]]}]]}],["$","div",null,{"className":"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-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","children":"\"User prefers concise, technical explanations.\""}],["$","div",null,{"className":"flex gap-2 mt-3","children":[["$","span",null,{"className":"bg-[var(--siduri-online)] text-black px-2 py-0.5 rounded font-bold cursor-pointer","children":"APPROVE"}],["$","span",null,{"className":"border border-[var(--siduri-border-subtle)] text-[var(--siduri-text-muted)] px-2 py-0.5 rounded cursor-pointer","children":"REJECT"}]]}]]}]}]]}]]}]}]
18
+ 7:["$","section",null,{"className":"py-20 md:py-28 bg-[#09090c]","children":["$","div",null,{"className":"home-container text-center max-w-2xl mx-auto","children":[["$","h2",null,{"className":"text-3xl 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-4 rounded-xl border border-[var(--siduri-border-subtle)] inline-block text-left text-sm font-mono text-[var(--siduri-text-primary)] shadow-lg mx-auto","children":[["$","span",null,{"className":"text-emerald-400","children":"$$"}]," npx @vxnus/siduri create my-companion"]}]]}]}]
19
+ 8:["$","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":[["$","span",null,{"className":"siduri-glyph w-6 h-6 text-xs text-[var(--siduri-ember)]","children":""}],["$","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":[["$","$L2",null,{"href":"/chat","className":"hover:text-[var(--siduri-text-primary)]","children":"Chat"}],["$","$L2",null,{"href":"/operator","className":"hover:text-[var(--siduri-text-primary)]","children":"Operator"}]]}]]}]}]
20
+ 9:["$","script","script-0",{"src":"/_next/static/chunks/2s3d1bfr0l4b0.js","async":true}]
21
+ a:["$","$L16",null,{"children":["$","$17",null,{"name":"Next.MetadataOutlet","children":"$@18"}]}]
22
+ d:["$","$1","h",{"children":[null,["$","$L19",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L1a",null,{"children":["$","$17",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?favicon.2vob68tjqpejf.ico","sizes":"256x256","type":"image/x-icon"}],["$","link","3",{"rel":"icon","href":"/favicon.ico"}],["$","$L1b","4",{}]]}]}]}],null]}]
23
+ f:["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/2vh8hinyh9xfg.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0uwih7sydv413.js","async":true}]],["$","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":["$","$L1c",null,{"parallelRouterKey":"children","template":["$","$L1d",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."}]}]]}]}]],[]]}]}]]}]]}]
24
+ 13:["$","p",null,{"className":"text-xs text-[var(--siduri-text-secondary)] leading-relaxed","children":"Queued speech synthesis (Edge-TTS, Piper, VOICEVOX) and auditory expression."}]
25
+ 14:["$","div","Body",{"className":"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."}]]}]
26
+ 15:["$","div","Observation",{"className":"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."}]]}]
27
27
  18:null
28
- 14:true
29
- e:300
30
- e:C
31
- 13:0
28
+ 12:true
29
+ c:300
30
+ c:C
31
+ 11:0
32
+ e:"$undefined"
32
33
  10:"$undefined"
33
- 12:"$undefined"
34
- d:"$undefined"
34
+ b:"$undefined"