@cereworker/cli 0.6.0 → 2026.313.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/app.d.ts.map +1 -1
  2. package/dist/app.js +33 -181
  3. package/dist/app.js.map +1 -1
  4. package/dist/auth.d.ts +2 -0
  5. package/dist/auth.d.ts.map +1 -0
  6. package/dist/auth.js +58 -0
  7. package/dist/auth.js.map +1 -0
  8. package/dist/components/StatusBar.d.ts +3 -1
  9. package/dist/components/StatusBar.d.ts.map +1 -1
  10. package/dist/components/StatusBar.js +2 -2
  11. package/dist/components/StatusBar.js.map +1 -1
  12. package/dist/hooks/useCerebellum.d.ts +7 -0
  13. package/dist/hooks/useCerebellum.d.ts.map +1 -1
  14. package/dist/hooks/useCerebellum.js +19 -1
  15. package/dist/hooks/useCerebellum.js.map +1 -1
  16. package/dist/index.js +31 -0
  17. package/dist/index.js.map +1 -1
  18. package/dist/onboard/config-builder.d.ts.map +1 -1
  19. package/dist/onboard/config-builder.js +12 -0
  20. package/dist/onboard/config-builder.js.map +1 -1
  21. package/dist/onboard/steps/cerebellum.d.ts.map +1 -1
  22. package/dist/onboard/steps/cerebellum.js +29 -1
  23. package/dist/onboard/steps/cerebellum.js.map +1 -1
  24. package/dist/onboard/steps/cerebrum.d.ts +3 -0
  25. package/dist/onboard/steps/cerebrum.d.ts.map +1 -1
  26. package/dist/onboard/steps/cerebrum.js +59 -26
  27. package/dist/onboard/steps/cerebrum.js.map +1 -1
  28. package/dist/onboard/wizard.d.ts.map +1 -1
  29. package/dist/onboard/wizard.js +6 -1
  30. package/dist/onboard/wizard.js.map +1 -1
  31. package/dist/serve.d.ts +3 -0
  32. package/dist/serve.d.ts.map +1 -0
  33. package/dist/serve.js +83 -0
  34. package/dist/serve.js.map +1 -0
  35. package/dist/service.d.ts +25 -0
  36. package/dist/service.d.ts.map +1 -0
  37. package/dist/service.js +232 -0
  38. package/dist/service.js.map +1 -0
  39. package/package.json +12 -11
  40. package/scripts/setup.sh +212 -0
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAqB3D,UAAU,QAAQ;IAChB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,wBAAgB,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,2CAmfvC"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAS3D,UAAU,QAAQ;IAChB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,wBAAgB,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,2CA+UvC"}
package/dist/app.js CHANGED
@@ -4,19 +4,13 @@ import { Box, Text, useApp } from 'ink';
4
4
  import { homedir } from 'node:os';
5
5
  import { join } from 'node:path';
6
6
  import { readFileSync, existsSync } from 'node:fs';
7
- import { Orchestrator, ConversationStore, configureLogger, createLogger } from '@cereworker/core';
8
- import { CerebrumProvider } from '@cereworker/cerebrum';
9
- import { createChannelManager } from '@cereworker/channels';
10
- import { browserToolDefinitions } from '@cereworker/browser';
11
- import { loadSkills, filterEligibleSkills, SkillRegistry } from '@cereworker/skills';
12
- import { HippocampusStore, createMemoryTools, } from '@cereworker/hippocampus';
13
- import { GatewayServer, GatewayNodeClient, createProxyTools } from '@cereworker/gateway';
7
+ import { configureLogger } from '@cereworker/core';
8
+ import { createService } from './service.js';
14
9
  import { StatusBar } from './components/StatusBar.js';
15
10
  import { ChatView } from './components/ChatView.js';
16
11
  import { InputBar } from './components/InputBar.js';
17
12
  import { useChat } from './hooks/useChat.js';
18
13
  import { useCerebellum } from './hooks/useCerebellum.js';
19
- const log = createLogger('cli');
20
14
  export function App({ config }) {
21
15
  const { exit } = useApp();
22
16
  const [channelCount, setChannelCount] = useState(0);
@@ -27,192 +21,38 @@ export function App({ config }) {
27
21
  const [gatewayNodeCount, setGatewayNodeCount] = useState(0);
28
22
  const [gatewayServer, setGatewayServer] = useState(null);
29
23
  const [gatewayClient, setGatewayClient] = useState(null);
30
- const { orchestrator, channelManager, cerebrum, skillRegistry } = useMemo(() => {
31
- // Configure logging
24
+ const service = useMemo(() => {
32
25
  configureLogger({
33
26
  level: config.logging.level,
34
27
  file: config.logging.file,
35
28
  });
36
- // Create persistent conversation store
37
- const conversationStore = new ConversationStore();
38
- const orch = new Orchestrator({
39
- conversationStore,
40
- compaction: {
41
- enabled: config.cerebrum.compaction.enabled,
42
- threshold: config.cerebrum.compaction.threshold,
43
- keepRecentMessages: config.cerebrum.compaction.keepRecentMessages,
44
- contextWindow: config.cerebrum.contextWindow,
45
- },
46
- });
47
- const cerebrumConfig = {
48
- defaultProvider: config.cerebrum.defaultProvider,
49
- defaultModel: config.cerebrum.defaultModel,
50
- providers: config.cerebrum.providers,
51
- maxSteps: config.cerebrum.maxSteps,
52
- temperature: config.cerebrum.temperature,
53
- };
54
- const cerebrumInst = new CerebrumProvider(cerebrumConfig, {
55
- denyList: config.tools.shell.denyList,
56
- timeout: config.tools.shell.timeout,
57
- maxOutputSize: config.tools.shell.maxOutputSize,
58
- autoMode: config.tools.shell.autoMode,
59
- });
60
- // Set initial auto mode on orchestrator
61
- orch.setAutoMode(config.tools.shell.autoMode);
62
- // Bridge CerebrumProvider to Orchestrator's CerebrumAdapter interface
63
- orch.setCerebrum({
64
- stream: async (messages, _tools, callbacks) => {
65
- await cerebrumInst.stream(messages, callbacks);
66
- },
67
- summarize: async (messages) => {
68
- return cerebrumInst.summarize(messages);
69
- },
70
- });
71
- // Load and inject skills
72
- const registry = new SkillRegistry();
73
- const skillDirs = [
74
- ...config.skills.directories,
75
- join(homedir(), '.cereworker', 'skills'),
76
- join(process.cwd(), 'skills'),
77
- ];
78
- const allSkills = loadSkills(skillDirs);
79
- const eligible = filterEligibleSkills(allSkills);
80
- registry.registerAll(eligible);
81
- const skillPrompt = registry.buildPrompt();
82
- if (skillPrompt) {
83
- orch.setSystemContext(skillPrompt);
84
- log.info('Skills loaded', { count: eligible.length, total: allSkills.length });
85
- }
86
- // Register hippocampus (memory) tools
87
- if (config.hippocampus.enabled) {
88
- const hippocampusStore = new HippocampusStore(config.hippocampus.directory);
89
- const memoryTools = createMemoryTools(hippocampusStore);
90
- orch.registerTool('memory_read', {
91
- description: 'Read a memory file (MEMORY.md or a daily log like 2026-03-08.md)',
92
- parameters: {},
93
- execute: async (args) => memoryTools.executeMemoryRead(args),
94
- });
95
- orch.registerTool('memory_write', {
96
- description: 'Write/update the main MEMORY.md file with curated long-term notes',
97
- parameters: {},
98
- execute: async (args) => memoryTools.executeMemoryWrite(args),
99
- });
100
- orch.registerTool('memory_log', {
101
- description: "Append a note to today's daily log",
102
- parameters: {},
103
- execute: async (args) => memoryTools.executeMemoryLog(args),
104
- });
105
- orch.registerTool('memory_search', {
106
- description: 'Search across all memory files for a text pattern',
107
- parameters: {},
108
- execute: async (args) => memoryTools.executeMemorySearch(args),
109
- });
110
- }
111
- // Setup sub-agents
112
- if (config.subAgents.enabled) {
113
- orch.setupSubAgents({
114
- maxConcurrent: config.subAgents.maxConcurrent,
115
- monitorIntervalMs: config.subAgents.monitorIntervalSeconds * 1000,
116
- });
117
- }
118
- // Register browser tools with orchestrator
119
- for (const [name, toolDef] of Object.entries(browserToolDefinitions)) {
120
- orch.registerTool(name, {
121
- description: toolDef.description,
122
- parameters: {},
123
- execute: async (args) => toolDef.execute(args),
124
- });
125
- }
126
- // Create channel manager
127
- const chMgr = createChannelManager(config);
128
- // Wire channels to orchestrator
129
- chMgr.setHandler(async (msg) => {
130
- await orch.sendMessage(msg.text);
131
- const messages = orch.getMessages();
132
- const lastMsg = messages[messages.length - 1];
133
- return lastMsg?.role === 'cerebrum' ? lastMsg.content : undefined;
134
- });
135
- orch.start();
136
- return { orchestrator: orch, channelManager: chMgr, cerebrum: cerebrumInst, skillRegistry: registry };
29
+ return createService(config);
137
30
  }, [config]);
31
+ const { orchestrator, channelManager, cerebrum, skillRegistry } = service;
138
32
  // Start channels in background
139
33
  useEffect(() => {
140
- const channels = channelManager.list();
141
- if (channels.length > 0) {
142
- channelManager.startAll().then(() => {
143
- setChannelCount(channelManager.listConnected().length);
144
- });
145
- }
34
+ service.startChannels().then(setChannelCount);
146
35
  return () => {
147
36
  channelManager.stopAll();
148
37
  };
149
- }, [channelManager]);
38
+ }, [service]);
150
39
  // Start gateway/node mode
151
40
  useEffect(() => {
152
- const mode = config.gateway.mode;
153
- if (mode === 'standalone')
41
+ if (config.gateway.mode === 'standalone')
154
42
  return;
155
- if (mode === 'gateway') {
156
- const server = new GatewayServer({
157
- port: config.gateway.port,
158
- token: config.gateway.token,
159
- invokeTimeoutMs: config.gateway.invokeTimeoutMs,
160
- pingIntervalMs: config.gateway.pingIntervalMs,
161
- });
162
- server.setNodeConnectedHandler((nodeId, capabilities) => {
163
- const proxyTools = createProxyTools(server, nodeId, capabilities);
164
- orchestrator.registerTools(proxyTools);
165
- orchestrator.emit({ type: 'node:connected', nodeId, capabilities });
166
- setGatewayNodeCount(server.listNodes().length);
167
- });
168
- server.setNodeDisconnectedHandler((nodeId, reason, capabilities) => {
169
- for (const cap of capabilities) {
170
- orchestrator.unregisterTool(`${cap}@${nodeId}`);
171
- }
172
- orchestrator.emit({ type: 'node:disconnected', nodeId, reason });
173
- setGatewayNodeCount(server.listNodes().length);
174
- });
175
- server.start().then(() => {
176
- setGatewayServer(server);
177
- log.info('Gateway server started', { port: config.gateway.port });
178
- });
179
- return () => {
180
- server.stop();
181
- };
182
- }
183
- if (mode === 'node') {
184
- if (!config.gateway.gatewayUrl || !config.gateway.nodeId) {
185
- log.error('Node mode requires gatewayUrl and nodeId in config');
186
- return;
187
- }
188
- const client = new GatewayNodeClient({
189
- gatewayUrl: config.gateway.gatewayUrl,
190
- nodeId: config.gateway.nodeId,
191
- token: config.gateway.token ?? '',
192
- capabilities: config.gateway.capabilities,
193
- }, async (tool, args) => {
194
- // Execute tool locally via orchestrator's registered tools
195
- const toolDef = orchestrator['tools'].get(tool);
196
- if (!toolDef)
197
- throw new Error(`Unknown tool: ${tool}`);
198
- return toolDef.execute(args);
199
- });
200
- client.setEmergencyStopHandler(() => {
201
- orchestrator.emergencyStop();
202
- });
203
- client.connect().then(() => {
204
- setGatewayClient(client);
205
- log.info('Connected to gateway', { url: config.gateway.gatewayUrl });
206
- }).catch((err) => {
207
- log.error('Failed to connect to gateway', { error: err.message });
208
- });
209
- return () => {
210
- client.disconnect();
211
- };
212
- }
213
- }, [config, orchestrator]);
43
+ service.startGateway({
44
+ onNodeConnected: (_id, count) => setGatewayNodeCount(count),
45
+ onNodeDisconnected: (_id, count) => setGatewayNodeCount(count),
46
+ }).then(({ server, client }) => {
47
+ setGatewayServer(server);
48
+ setGatewayClient(client);
49
+ });
50
+ return () => {
51
+ service.shutdown();
52
+ };
53
+ }, [service]);
214
54
  const { messages, isStreaming, streamingContent, activeToolCall, error } = useChat(orchestrator);
215
- const { status: cerebellumStatus } = useCerebellum(orchestrator);
55
+ const { status: cerebellumStatus, finetune } = useCerebellum(orchestrator);
216
56
  const handleSubmit = useCallback((text) => {
217
57
  orchestrator.sendMessage(text);
218
58
  }, [orchestrator]);
@@ -396,6 +236,16 @@ export function App({ config }) {
396
236
  }
397
237
  break;
398
238
  }
239
+ case 'auth': {
240
+ const authProvider = args.trim() || 'openai';
241
+ setSystemMessage(`Run 'cereworker auth ${authProvider}' from your terminal to authenticate via OAuth.`);
242
+ break;
243
+ }
244
+ case 'finetune':
245
+ orchestrator.triggerFineTune()
246
+ .then(() => setSystemMessage('Fine-tuning started.'))
247
+ .catch((err) => setSystemMessage(`Fine-tune error: ${err.message}`));
248
+ break;
399
249
  case 'stop':
400
250
  orchestrator.emergencyStop();
401
251
  gatewayServer?.emergencyStopAll();
@@ -414,6 +264,8 @@ export function App({ config }) {
414
264
  /channels Show channel status
415
265
  /nodes Show connected nodes (gateway/node mode)
416
266
  /auto [on|off] Toggle auto mode (skip command approval)
267
+ /auth [provider] OAuth authentication instructions
268
+ /finetune Manually trigger fine-tuning
417
269
  /stop Emergency stop (works during streaming)
418
270
  /clear Start a new conversation
419
271
  /help Show this help
@@ -431,6 +283,6 @@ export function App({ config }) {
431
283
  const timer = setTimeout(() => setSystemMessage(null), 15_000);
432
284
  return () => clearTimeout(timer);
433
285
  }, [systemMessage]);
434
- return (_jsxs(Box, { flexDirection: "column", height: "100%", children: [_jsx(StatusBar, { provider: currentProvider, model: currentModel, cerebellumStatus: cerebellumStatus, isStreaming: isStreaming, channelCount: channelCount, autoMode: autoMode, gatewayMode: config.gateway.mode, gatewayNodeCount: gatewayNodeCount, gatewayConnected: gatewayClient?.isConnected() ?? false, gatewayUrl: config.gateway.gatewayUrl }), _jsx(ChatView, { messages: messages, streamingContent: streamingContent, isStreaming: isStreaming, activeToolCall: activeToolCall }), systemMessage && (_jsx(Box, { paddingX: 1, borderStyle: "single", borderColor: "gray", children: _jsx(Text, { color: "gray", children: systemMessage }) })), error && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: "red", children: ["Error: ", error] }) })), _jsx(InputBar, { onSubmit: handleSubmit, onCommand: handleCommand, disabled: isStreaming })] }));
286
+ return (_jsxs(Box, { flexDirection: "column", height: "100%", children: [_jsx(StatusBar, { provider: currentProvider, model: currentModel, cerebellumStatus: cerebellumStatus, isStreaming: isStreaming, channelCount: channelCount, autoMode: autoMode, gatewayMode: config.gateway.mode, gatewayNodeCount: gatewayNodeCount, gatewayConnected: gatewayClient?.isConnected() ?? false, gatewayUrl: config.gateway.gatewayUrl, finetuneActive: finetune.active, finetuneProgress: finetune.progress }), _jsx(ChatView, { messages: messages, streamingContent: streamingContent, isStreaming: isStreaming, activeToolCall: activeToolCall }), systemMessage && (_jsx(Box, { paddingX: 1, borderStyle: "single", borderColor: "gray", children: _jsx(Text, { color: "gray", children: systemMessage }) })), error && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: "red", children: ["Error: ", error] }) })), _jsx(InputBar, { onSubmit: handleSubmit, onCommand: handleCommand, disabled: isStreaming })] }));
435
287
  }
436
288
  //# sourceMappingURL=app.js.map
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,oBAAoB,EAAuB,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAKlB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;AAMhC,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,EAAY;IACtC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACxF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/E,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAuB,IAAI,CAAC,CAAC;IAC/E,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAA2B,IAAI,CAAC,CAAC;IAEnF,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7E,oBAAoB;QACpB,eAAe,CAAC;YACd,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAA4C;YAClE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;SAC1B,CAAC,CAAC;QAEH,uCAAuC;QACvC,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAElD,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC;YAC5B,iBAAiB;YACjB,UAAU,EAAE;gBACV,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO;gBAC3C,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS;gBAC/C,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB;gBACjE,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa;aAC7C;SACF,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG;YACrB,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,eAAe;YAChD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY;YAC1C,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAkF;YAC7G,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;YAClC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW;SACzC,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,cAAc,EAAE;YACxD,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ;YACrC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO;YACnC,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa;YAC/C,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ;SACtC,CAAC,CAAC;QAEH,wCAAwC;QACxC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE9C,sEAAsE;QACtE,IAAI,CAAC,WAAW,CAAC;YACf,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;gBAC5C,MAAM,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACjD,CAAC;YACD,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC5B,OAAO,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC,CAAC;QAEH,yBAAyB;QACzB,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG;YAChB,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW;YAC5B,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC;SAC9B,CAAC;QACF,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACjD,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE/B,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;YACnC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,sCAAsC;QACtC,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC5E,MAAM,WAAW,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;YAExD,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE;gBAC/B,WAAW,EAAE,kEAAkE;gBAC/E,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAwB,CAAC;aACjF,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE;gBAChC,WAAW,EAAE,mEAAmE;gBAChF,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAA2B,CAAC;aACrF,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;gBAC9B,WAAW,EAAE,oCAAoC;gBACjD,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAA2B,CAAC;aACnF,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE;gBACjC,WAAW,EAAE,mDAAmD;gBAChE,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAyB,CAAC;aACpF,CAAC,CAAC;QACL,CAAC;QAED,mBAAmB;QACnB,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,cAAc,CAAC;gBAClB,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,aAAa;gBAC7C,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC,sBAAsB,GAAG,IAAI;aAClE,CAAC,CAAC;QACL,CAAC;QAED,2CAA2C;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACrE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;gBACtB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAa,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;QAED,yBAAyB;QACzB,MAAM,KAAK,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAE3C,gCAAgC;QAChC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC7B,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC9C,OAAO,OAAO,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;IACxG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,+BAA+B;IAC/B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;QACvC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClC,eAAe,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,GAAG,EAAE;YACV,cAAc,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,0BAA0B;IAC1B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,KAAK,YAAY;YAAE,OAAO;QAElC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC;gBAC/B,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;gBACzB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK;gBAC3B,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe;gBAC/C,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,cAAc;aAC9C,CAAC,CAAC;YAEH,MAAM,CAAC,uBAAuB,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;gBACtD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;gBAClE,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;gBACvC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;gBACpE,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,0BAA0B,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE;gBACjE,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;oBAC/B,YAAY,CAAC,cAAc,CAAC,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC,CAAC;gBAClD,CAAC;gBACD,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gBACjE,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACzB,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC;YAEH,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACzD,GAAG,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBAChE,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAClC;gBACE,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU;gBACrC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;gBAC7B,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBACjC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY;aAC1C,EACD,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACnB,2DAA2D;gBAC3D,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,CAAC,OAAO;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;gBACvD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CACF,CAAC;YAEF,MAAM,CAAC,uBAAuB,CAAC,GAAG,EAAE;gBAClC,YAAY,CAAC,aAAa,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACzB,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACzB,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACf,GAAG,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC;YAEH,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,CAAC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IAE3B,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACjG,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAEjE,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAY,EAAE,EAAE;QACf,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,OAAe,EAAE,IAAY,EAAE,EAAE;QAChC,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,YAAY,CAAC,IAAI,EAAE,CAAC;gBACpB,cAAc,CAAC,OAAO,EAAE,CAAC;gBACzB,IAAI,EAAE,CAAC;gBACP,MAAM;YAER,KAAK,OAAO;gBACV,YAAY,CAAC,iBAAiB,EAAE,CAAC;gBACjC,MAAM;YAER,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,SAAS,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC;gBACjD,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7H,gBAAgB,CAAC,aAAa,SAAS,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,iBAAiB,IAAI,IAAI,qBAAqB,EAAE,CAAC,CAAC;gBAC9G,MAAM;YACR,CAAC;YAED,KAAK,OAAO;gBACV,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;oBAChB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/B,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC7B,gBAAgB,CAAC,sBAAsB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,kBAAkB,YAAY,EAAE,CAAC,CAAC;gBACrD,CAAC;gBACD,MAAM;YAER,KAAK,UAAU;gBACb,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;oBAChB,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAClC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAChC,gBAAgB,CAAC,yBAAyB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC3D,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,qBAAqB,eAAe,EAAE,CAAC,CAAC;gBAC3D,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,GAAG,GAAG,YAAY,CAAC,kBAAkB,EAAE,CAAC;gBAC9C,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;oBAChD,MAAM;gBACR,CAAC;gBACD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG;oBACZ,WAAW,OAAO,CAAC,KAAK,WAAW,OAAO,CAAC,OAAO,aAAa,OAAO,CAAC,SAAS,eAAe,OAAO,CAAC,MAAM,SAAS;iBACvH,CAAC;gBACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBACpC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;oBAC9D,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC;gBAC1F,CAAC;gBACD,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,OAAO,GAAG,IAAI,CAClB,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,EACpD,WAAW,CACZ,CAAC;gBACF,IAAI,CAAC;oBACH,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;wBACxB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAC/C,gBAAgB,CAAC,sBAAsB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;oBACnE,CAAC;yBAAM,CAAC;wBACN,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;oBAC1C,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;gBAC/C,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;gBACpC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBAC7B,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC;wBAClD,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;oBACnD,CAAC,CAAC,CAAC;oBACH,gBAAgB,CAAC,kBAAkB,MAAM,CAAC,MAAM,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC7E,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,KAAK,GAAG;oBACZ,aAAa,eAAe,EAAE;oBAC9B,UAAU,YAAY,EAAE;oBACxB,gBAAgB,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;oBAC7C,cAAc,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;oBACxC,eAAe,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE;oBACnE,gBAAgB,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE;oBACxF,eAAe,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE;oBAChG,YAAY,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;iBAC7F,CAAC;gBACF,gBAAgB,CAAC,mBAAmB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC7E,MAAM;YACR,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,KAAK,GAAG,YAAY,CAAC,oBAAoB,EAAE,CAAC;gBAClD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,MAAM,QAAQ,GAAG,YAAY,CAAC,uBAAuB,EAAE,CAAC;oBACxD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBAC5B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,CAAC;wBACpD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC;wBAClE,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,MAAM,IAAI,MAAM,OAAO,EAAE,CAAC;oBACjE,CAAC,CAAC,CAAC;oBACH,gBAAgB,CAAC,kBAAkB,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5E,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,gBAAgB,CAAC,kCAAkC,CAAC,CAAC;oBACrD,MAAM;gBACR,CAAC;gBACD,sBAAsB;gBACtB,MAAM,KAAK,GAAG,YAAY,CAAC,oBAAoB,EAAE,CAAC;gBAClD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,gBAAgB,CAAC,wCAAwC,QAAQ,GAAG,CAAC,CAAC;oBACtE,MAAM;gBACR,CAAC;gBACD,IAAI,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC9C,gBAAgB,CAAC,wBAAwB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,YAAY,CAAC,CAAC;gBACpH,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;gBAChE,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACtC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACjB,WAAW,CAAC,IAAI,CAAC,CAAC;oBAClB,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAC/B,gBAAgB,CAAC,sGAAsG,CAAC,CAAC;gBAC3H,CAAC;qBAAM,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;oBACzB,WAAW,CAAC,KAAK,CAAC,CAAC;oBACnB,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBAChC,gBAAgB,CAAC,wDAAwD,CAAC,CAAC;gBAC7E,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,cAAc,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,yBAAyB,CAAC,CAAC;gBACnF,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,IAAI,MAAM,KAAK,SAAS,IAAI,aAAa,EAAE,CAAC;oBAC1C,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;oBACxC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACvB,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;oBAC1C,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;4BAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;4BAChE,OAAO,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,YAAY,CAAC,MAAM,WAAW,OAAO,IAAI,CAAC;wBACpF,CAAC,CAAC,CAAC;wBACH,gBAAgB,CAAC,oBAAoB,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;qBAAM,IAAI,MAAM,KAAK,MAAM,IAAI,aAAa,EAAE,CAAC;oBAC9C,gBAAgB,CAAC,cAAc,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC/H,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,wEAAwE,CAAC,CAAC;gBAC7F,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,MAAM;gBACT,YAAY,CAAC,aAAa,EAAE,CAAC;gBAC7B,aAAa,EAAE,gBAAgB,EAAE,CAAC;gBAClC,gBAAgB,CAAC,mDAAmD,CAAC,CAAC;gBACtE,MAAM;YAER,KAAK,MAAM;gBACT,gBAAgB,CACd;;;;;;;;;;;;;;;wCAe4B,CAC7B,CAAC;gBACF,MAAM;YAER;gBACE,gBAAgB,CAAC,qBAAqB,OAAO,sCAAsC,CAAC,CAAC;gBACrF,MAAM;QACV,CAAC;IACH,CAAC,EACD,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,CAC7I,CAAC;IAEF,qCAAqC;IACrC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa;YAAE,OAAO;QAC3B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,MAAM,EAAC,MAAM,aACvC,KAAC,SAAS,IACR,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,YAAY,EACnB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,KAAK,EACvD,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,GACrC,EACF,KAAC,QAAQ,IACP,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,GAC9B,EACD,aAAa,IAAI,CAChB,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,YACvD,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,aAAa,GAAQ,GACrC,CACP,EACA,KAAK,IAAI,CACR,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAS,KAAK,IAAQ,GACnC,CACP,EACD,KAAC,QAAQ,IACP,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,WAAW,GACrB,IACE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":"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"}
package/dist/auth.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare function runAuth(provider: string): Promise<void>;
2
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAWA,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwD7D"}
package/dist/auth.js ADDED
@@ -0,0 +1,58 @@
1
+ import { exec } from 'node:child_process';
2
+ import { platform } from 'node:os';
3
+ import { loadConfig } from '@cereworker/config';
4
+ import { runOAuthFlow, TokenStore, OAUTH_PROVIDERS, isRemoteEnvironment } from '@cereworker/cerebrum';
5
+ function openBrowser(url) {
6
+ const cmd = platform() === 'darwin' ? 'open' : platform() === 'win32' ? 'start' : 'xdg-open';
7
+ exec(`${cmd} ${JSON.stringify(url)}`);
8
+ }
9
+ export async function runAuth(provider) {
10
+ if (!OAUTH_PROVIDERS[provider]) {
11
+ console.error(`OAuth not supported for provider: ${provider}`);
12
+ console.error(`Supported: ${Object.keys(OAUTH_PROVIDERS).join(', ')}`);
13
+ process.exit(1);
14
+ }
15
+ const config = loadConfig();
16
+ const providerConfig = config.cerebrum.providers[provider];
17
+ const clientId = providerConfig?.oauth?.clientId;
18
+ const clientSecret = providerConfig?.oauth?.clientSecret;
19
+ if (!clientId && !OAUTH_PROVIDERS[provider].clientId) {
20
+ console.error(`OAuth clientId required. Set cerebrum.providers.${provider}.oauth.clientId in config.`);
21
+ process.exit(1);
22
+ }
23
+ const remote = isRemoteEnvironment();
24
+ console.log(`\nAuthenticating with ${provider} via OAuth...`);
25
+ if (remote) {
26
+ console.log('Remote environment detected. You will need to paste the redirect URL.\n');
27
+ }
28
+ else {
29
+ console.log('A browser window will open. Sign in and authorize CereWorker.\n');
30
+ }
31
+ const tokens = await runOAuthFlow(provider, {
32
+ clientId: clientId ?? undefined,
33
+ clientSecret,
34
+ onReady: (authUrl) => {
35
+ if (remote) {
36
+ console.log(`Open this URL in your browser:\n ${authUrl}\n`);
37
+ console.log('After authorizing, copy the URL your browser redirected to.');
38
+ }
39
+ else {
40
+ console.log('Opening browser...');
41
+ openBrowser(authUrl);
42
+ console.log(`\nIf the browser didn't open, visit:\n ${authUrl}\n`);
43
+ console.log('Waiting for authorization...');
44
+ }
45
+ },
46
+ });
47
+ const store = new TokenStore();
48
+ store.save(provider, tokens);
49
+ console.log(`\nAuthenticated! Token saved to ~/.cereworker/oauth/${provider}.json`);
50
+ console.log(`\nSet auth: oauth in your config to use it:`);
51
+ console.log(` cerebrum:`);
52
+ console.log(` providers:`);
53
+ console.log(` ${provider}:`);
54
+ console.log(` auth: oauth`);
55
+ console.log(` oauth:`);
56
+ console.log(` clientId: "${clientId}"\n`);
57
+ }
58
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEtG,SAAS,WAAW,CAAC,GAAW;IAC9B,MAAM,GAAG,GACP,QAAQ,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;IACnF,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,QAAgB;IAC5C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,cAAc,GAClB,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAkD,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC;IACjD,MAAM,YAAY,GAAG,cAAc,EAAE,KAAK,EAAE,YAAY,CAAC;IAEzD,IAAI,CAAC,QAAQ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;QACrD,OAAO,CAAC,KAAK,CACX,mDAAmD,QAAQ,4BAA4B,CACxF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;IAErC,OAAO,CAAC,GAAG,CAAC,yBAAyB,QAAQ,eAAe,CAAC,CAAC;IAC9D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;IACzF,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE;QAC1C,QAAQ,EAAE,QAAQ,IAAI,SAAS;QAC/B,YAAY;QACZ,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;YACnB,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,qCAAqC,OAAO,IAAI,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAClC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,2CAA2C,OAAO,IAAI,CAAC,CAAC;gBACpE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;IAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAE7B,OAAO,CAAC,GAAG,CAAC,uDAAuD,QAAQ,OAAO,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,SAAS,QAAQ,GAAG,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,wBAAwB,QAAQ,KAAK,CAAC,CAAC;AACrD,CAAC"}
@@ -10,7 +10,9 @@ interface StatusBarProps {
10
10
  gatewayNodeCount?: number;
11
11
  gatewayConnected?: boolean;
12
12
  gatewayUrl?: string;
13
+ finetuneActive?: boolean;
14
+ finetuneProgress?: number;
13
15
  }
14
- export declare function StatusBar({ provider, model, cerebellumStatus, isStreaming, channelCount, autoMode, gatewayMode, gatewayNodeCount, gatewayConnected, gatewayUrl, }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function StatusBar({ provider, model, cerebellumStatus, isStreaming, channelCount, autoMode, gatewayMode, gatewayNodeCount, gatewayConnected, gatewayUrl, finetuneActive, finetuneProgress, }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
15
17
  export {};
16
18
  //# sourceMappingURL=StatusBar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../src/components/StatusBar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,UAAU,cAAc;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,YAAgB,EAChB,QAAgB,EAChB,WAA0B,EAC1B,gBAAoB,EACpB,gBAAwB,EACxB,UAAU,GACX,EAAE,cAAc,2CA6BhB"}
1
+ {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../src/components/StatusBar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,UAAU,cAAc;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,YAAgB,EAChB,QAAgB,EAChB,WAA0B,EAC1B,gBAAoB,EACpB,gBAAwB,EACxB,UAAU,EACV,cAAsB,EACtB,gBAAoB,GACrB,EAAE,cAAc,2CAgChB"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Box, Text } from 'ink';
3
- export function StatusBar({ provider, model, cerebellumStatus, isStreaming, channelCount = 0, autoMode = false, gatewayMode = 'standalone', gatewayNodeCount = 0, gatewayConnected = false, gatewayUrl, }) {
4
- return (_jsxs(Box, { borderStyle: "single", borderColor: "gray", paddingX: 1, justifyContent: "space-between", children: [_jsxs(Box, { gap: 2, children: [_jsxs(Text, { color: "cyan", children: [provider, "/", model] }), _jsxs(Text, { color: cerebellumStatus?.healthy ? 'green' : 'yellow', children: ["Cerebellum: ", cerebellumStatus?.healthy ? 'connected' : 'offline', cerebellumStatus?.tasksRegistered ? ` (${cerebellumStatus.tasksRegistered} tasks)` : ''] }), channelCount > 0 && (_jsxs(Text, { color: "green", children: ["Channels: ", channelCount] })), gatewayMode === 'gateway' && (_jsxs(Text, { color: "magenta", children: ["[GW] ", gatewayNodeCount, " node", gatewayNodeCount !== 1 ? 's' : ''] })), gatewayMode === 'node' && (_jsxs(Text, { color: gatewayConnected ? 'magenta' : 'yellow', children: ["[NODE", gatewayConnected ? '' : '?', "]"] })), autoMode && (_jsx(Text, { color: "red", bold: true, children: "AUTO" }))] }), _jsx(Box, { children: isStreaming && _jsx(Text, { color: "yellow", children: "streaming..." }) })] }));
3
+ export function StatusBar({ provider, model, cerebellumStatus, isStreaming, channelCount = 0, autoMode = false, gatewayMode = 'standalone', gatewayNodeCount = 0, gatewayConnected = false, gatewayUrl, finetuneActive = false, finetuneProgress = 0, }) {
4
+ return (_jsxs(Box, { borderStyle: "single", borderColor: "gray", paddingX: 1, justifyContent: "space-between", children: [_jsxs(Box, { gap: 2, children: [_jsxs(Text, { color: "cyan", children: [provider, "/", model] }), _jsxs(Text, { color: cerebellumStatus?.healthy ? 'green' : 'yellow', children: ["Cerebellum: ", cerebellumStatus?.healthy ? 'connected' : 'offline', cerebellumStatus?.tasksRegistered ? ` (${cerebellumStatus.tasksRegistered} tasks)` : ''] }), channelCount > 0 && (_jsxs(Text, { color: "green", children: ["Channels: ", channelCount] })), gatewayMode === 'gateway' && (_jsxs(Text, { color: "magenta", children: ["[GW] ", gatewayNodeCount, " node", gatewayNodeCount !== 1 ? 's' : ''] })), gatewayMode === 'node' && (_jsxs(Text, { color: gatewayConnected ? 'magenta' : 'yellow', children: ["[NODE", gatewayConnected ? '' : '?', "]"] })), finetuneActive && (_jsxs(Text, { color: "blue", children: ["[FT ", Math.round(finetuneProgress * 100), "%]"] })), autoMode && (_jsx(Text, { color: "red", bold: true, children: "AUTO" }))] }), _jsx(Box, { children: isStreaming && _jsx(Text, { color: "yellow", children: "streaming..." }) })] }));
5
5
  }
6
6
  //# sourceMappingURL=StatusBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../src/components/StatusBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAgBhC,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,YAAY,GAAG,CAAC,EAChB,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,YAAY,EAC1B,gBAAgB,GAAG,CAAC,EACpB,gBAAgB,GAAG,KAAK,EACxB,UAAU,GACK;IACf,OAAO,CACL,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aACtF,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aAAE,QAAQ,OAAG,KAAK,IAAQ,EAC5C,MAAC,IAAI,IAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,6BAC5C,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAC/D,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,eAAe,SAAS,CAAC,CAAC,CAAC,EAAE,IACnF,EACN,YAAY,GAAG,CAAC,IAAI,CACnB,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,2BAAY,YAAY,IAAQ,CACpD,EACA,WAAW,KAAK,SAAS,IAAI,CAC5B,MAAC,IAAI,IAAC,KAAK,EAAC,SAAS,sBAAO,gBAAgB,WAAO,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAQ,CAC7F,EACA,WAAW,KAAK,MAAM,IAAI,CACzB,MAAC,IAAI,IAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,sBAC5C,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAC5B,CACR,EACA,QAAQ,IAAI,CACX,KAAC,IAAI,IAAC,KAAK,EAAC,KAAK,EAAC,IAAI,2BAAY,CACnC,IACG,EACN,KAAC,GAAG,cACD,WAAW,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,6BAAoB,GACpD,IACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../src/components/StatusBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAkBhC,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,YAAY,GAAG,CAAC,EAChB,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,YAAY,EAC1B,gBAAgB,GAAG,CAAC,EACpB,gBAAgB,GAAG,KAAK,EACxB,UAAU,EACV,cAAc,GAAG,KAAK,EACtB,gBAAgB,GAAG,CAAC,GACL;IACf,OAAO,CACL,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aACtF,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aAAE,QAAQ,OAAG,KAAK,IAAQ,EAC5C,MAAC,IAAI,IAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,6BAC5C,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAC/D,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,eAAe,SAAS,CAAC,CAAC,CAAC,EAAE,IACnF,EACN,YAAY,GAAG,CAAC,IAAI,CACnB,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,2BAAY,YAAY,IAAQ,CACpD,EACA,WAAW,KAAK,SAAS,IAAI,CAC5B,MAAC,IAAI,IAAC,KAAK,EAAC,SAAS,sBAAO,gBAAgB,WAAO,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAQ,CAC7F,EACA,WAAW,KAAK,MAAM,IAAI,CACzB,MAAC,IAAI,IAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,sBAC5C,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAC5B,CACR,EACA,cAAc,IAAI,CACjB,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,qBAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,GAAG,CAAC,UAAU,CACrE,EACA,QAAQ,IAAI,CACX,KAAC,IAAI,IAAC,KAAK,EAAC,KAAK,EAAC,IAAI,2BAAY,CACnC,IACG,EACN,KAAC,GAAG,cACD,WAAW,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,6BAAoB,GACpD,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,6 +1,13 @@
1
1
  import type { Orchestrator, CerebellumStatus, TaskAction } from '@cereworker/core';
2
+ export interface FineTuneInfo {
3
+ active: boolean;
4
+ jobId: string;
5
+ progress: number;
6
+ loss: number;
7
+ }
2
8
  export declare function useCerebellum(orchestrator: Orchestrator): {
3
9
  status: CerebellumStatus | null;
4
10
  lastActions: TaskAction[];
11
+ finetune: FineTuneInfo;
5
12
  };
6
13
  //# sourceMappingURL=useCerebellum.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCerebellum.d.ts","sourceRoot":"","sources":["../../src/hooks/useCerebellum.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnF,wBAAgB,aAAa,CAAC,YAAY,EAAE,YAAY;;;EAuBvD"}
1
+ {"version":3,"file":"useCerebellum.d.ts","sourceRoot":"","sources":["../../src/hooks/useCerebellum.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnF,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,YAAY;;;;EAqDvD"}
@@ -2,6 +2,12 @@ import { useState, useEffect } from 'react';
2
2
  export function useCerebellum(orchestrator) {
3
3
  const [status, setStatus] = useState(null);
4
4
  const [lastActions, setLastActions] = useState([]);
5
+ const [finetune, setFinetune] = useState({
6
+ active: false,
7
+ jobId: '',
8
+ progress: 0,
9
+ loss: 0,
10
+ });
5
11
  useEffect(() => {
6
12
  const unsubs = [];
7
13
  unsubs.push(orchestrator.on('cerebellum:status', ({ status: s }) => {
@@ -10,8 +16,20 @@ export function useCerebellum(orchestrator) {
10
16
  unsubs.push(orchestrator.on('heartbeat:tick', ({ actions }) => {
11
17
  setLastActions(actions);
12
18
  }));
19
+ unsubs.push(orchestrator.on('finetune:start', ({ jobId }) => {
20
+ setFinetune({ active: true, jobId, progress: 0, loss: 0 });
21
+ }));
22
+ unsubs.push(orchestrator.on('finetune:progress', ({ jobId, progress, loss }) => {
23
+ setFinetune({ active: true, jobId, progress, loss });
24
+ }));
25
+ unsubs.push(orchestrator.on('finetune:complete', () => {
26
+ setFinetune((prev) => ({ ...prev, active: false, progress: 1 }));
27
+ }));
28
+ unsubs.push(orchestrator.on('finetune:error', () => {
29
+ setFinetune((prev) => ({ ...prev, active: false }));
30
+ }));
13
31
  return () => unsubs.forEach((u) => u());
14
32
  }, [orchestrator]);
15
- return { status, lastActions };
33
+ return { status, lastActions, finetune };
16
34
  }
17
35
  //# sourceMappingURL=useCerebellum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCerebellum.js","sourceRoot":"","sources":["../../src/hooks/useCerebellum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG5C,MAAM,UAAU,aAAa,CAAC,YAA0B;IACtD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAC;IAEjE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAsB,EAAE,CAAC;QAErC,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;YACrD,SAAS,CAAC,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YAChD,cAAc,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"useCerebellum.js","sourceRoot":"","sources":["../../src/hooks/useCerebellum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAU5C,MAAM,UAAU,aAAa,CAAC,YAA0B;IACtD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAC;IACjE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAe;QACrD,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,CAAC;KACR,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAsB,EAAE,CAAC;QAErC,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;YACrD,SAAS,CAAC,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YAChD,cAAc,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAC9C,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;YACjE,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;YACxC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,CAAC,IAAI,CACT,YAAY,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACrC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAC3C,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { render, Text, Box } from 'ink';
4
+ import { execFileSync } from 'node:child_process';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { dirname, resolve } from 'node:path';
4
7
  import { loadConfig } from '@cereworker/config';
5
8
  import { App } from './app.js';
9
+ const __dirname = dirname(fileURLToPath(import.meta.url));
6
10
  async function main() {
7
11
  // Handle subcommands that bypass Ink
8
12
  const subcommand = process.argv[2];
@@ -11,6 +15,33 @@ async function main() {
11
15
  await runOnboardingWizard();
12
16
  return;
13
17
  }
18
+ if (subcommand === 'setup') {
19
+ const scriptPath = resolve(__dirname, '..', 'scripts', 'setup.sh');
20
+ const args = process.argv.slice(3);
21
+ try {
22
+ execFileSync('bash', [scriptPath, ...args], { stdio: 'inherit' });
23
+ }
24
+ catch (err) {
25
+ process.exit(1);
26
+ }
27
+ return;
28
+ }
29
+ if (subcommand === 'auth') {
30
+ const provider = process.argv[3];
31
+ if (!provider) {
32
+ console.error('Usage: cereworker auth <provider>');
33
+ process.exit(1);
34
+ }
35
+ const { runAuth } = await import('./auth.js');
36
+ await runAuth(provider);
37
+ return;
38
+ }
39
+ if (subcommand === 'serve') {
40
+ const { runHeadlessService } = await import('./serve.js');
41
+ const config = loadConfig();
42
+ await runHeadlessService(config);
43
+ return;
44
+ }
14
45
  try {
15
46
  const config = loadConfig();
16
47
  render(_jsx(App, { config: config }));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,KAAK,UAAU,IAAI;IACjB,qCAAqC;IACrC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACpE,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,MAAM,CAAC,KAAC,GAAG,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CACJ,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,aACpC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,KAAK,2CAAkC,EACxD,KAAC,IAAI,IAAC,KAAK,EAAC,KAAK,YAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAQ,EAC3E,KAAC,IAAI,IAAC,QAAQ,qEAAsD,IAChE,CACP,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../../src/onboard/config-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACjD;AAOD,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0E9E"}
1
+ {"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../../src/onboard/config-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACjD;AAOD,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqF9E"}
@@ -18,6 +18,18 @@ export function buildConfig(params) {
18
18
  },
19
19
  };
20
20
  }
21
+ else if (params.cerebrum.auth === 'oauth') {
22
+ const providerKey = params.cerebrum.provider;
23
+ cerebrum.providers = {
24
+ [providerKey]: {
25
+ auth: 'oauth',
26
+ oauth: {
27
+ clientId: params.cerebrum.oauthClientId,
28
+ ...(params.cerebrum.oauthClientSecret ? { clientSecret: params.cerebrum.oauthClientSecret } : {}),
29
+ },
30
+ },
31
+ };
32
+ }
21
33
  else if (params.cerebrum.apiKey) {
22
34
  const providerKey = params.cerebrum.provider;
23
35
  let apiKeyValue;
@@ -1 +1 @@
1
- {"version":3,"file":"config-builder.js","sourceRoot":"","sources":["../../src/onboard/config-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-builder.js","sourceRoot":"","sources":["../../src/onboard/config-builder.ts"],"names":[],"mappings":"AAWA,SAAS,sBAAsB,CAAC,KAAkC;IAChE,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,MAAM,KAAK,CAAC,MAAM,GAAG,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAyB;IACnD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,WAAW;IACX,MAAM,QAAQ,GAA4B;QACxC,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;QACzC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;KACpC,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzC,QAAQ,CAAC,SAAS,GAAG;YACnB,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,wBAAwB;gBACjE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;aAC7B;SACF,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7C,QAAQ,CAAC,SAAS,GAAG;YACnB,CAAC,WAAW,CAAC,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa;oBACvC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClG;aACF;SACF,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7C,IAAI,WAAmB,CAAC;QAExB,IAAI,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACvC,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACjD,CAAC;QAED,QAAQ,CAAC,SAAS,GAAG;YACnB,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;SACvC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAE3B,aAAa;IACb,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,UAAU,GAA4B;YAC1C,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAC5B,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC;QAC7C,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YAC/B,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;QACnD,CAAC;QAED,UAAU,CAAC,MAAM,GAAG;YAClB,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,eAAe,IAAI,IAAI;SACrD,CAAC;QAEF,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,UAAU,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;IAED,WAAW;IACX,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAE7C,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,aAAa,GAA4B,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAEjE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC1D,aAAa,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YACrD,CAAC;YAED,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC;QAClC,CAAC;QAED,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}