@sylix/coworker 2.0.12 → 2.0.15
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.
- package/LICENSE +99 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +3 -8
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/slash/mem.d.ts +3 -0
- package/dist/commands/slash/mem.d.ts.map +1 -0
- package/dist/commands/slash/mem.js +167 -0
- package/dist/commands/slash/mem.js.map +1 -0
- package/dist/commands/slash/registry.d.ts.map +1 -1
- package/dist/commands/slash/registry.js +2 -0
- package/dist/commands/slash/registry.js.map +1 -1
- package/dist/core/CoWorkerAgent.d.ts +4 -1
- package/dist/core/CoWorkerAgent.d.ts.map +1 -1
- package/dist/core/CoWorkerAgent.js +159 -12
- package/dist/core/CoWorkerAgent.js.map +1 -1
- package/dist/services/BrowserService.d.ts.map +1 -1
- package/dist/services/BrowserService.js +111 -0
- package/dist/services/BrowserService.js.map +1 -1
- package/dist/services/ChromeExtensionService.d.ts +63 -0
- package/dist/services/ChromeExtensionService.d.ts.map +1 -0
- package/dist/services/ChromeExtensionService.js +237 -0
- package/dist/services/ChromeExtensionService.js.map +1 -0
- package/dist/services/browser/browser-manager.d.ts +2 -0
- package/dist/services/browser/browser-manager.d.ts.map +1 -1
- package/dist/services/browser/browser-manager.js +13 -4
- package/dist/services/browser/browser-manager.js.map +1 -1
- package/dist/services/browser/protocol.d.ts +4 -4
- package/dist/services/browser/sandbox/quickjs-sandbox.d.ts.map +1 -1
- package/dist/services/browser/sandbox/quickjs-sandbox.js +71 -1
- package/dist/services/browser/sandbox/quickjs-sandbox.js.map +1 -1
- package/dist/services/compact/CompactService.d.ts +22 -0
- package/dist/services/compact/CompactService.d.ts.map +1 -0
- package/dist/services/compact/CompactService.js +156 -0
- package/dist/services/compact/CompactService.js.map +1 -0
- package/dist/session/db.d.ts +29 -0
- package/dist/session/db.d.ts.map +1 -1
- package/dist/session/db.js +74 -0
- package/dist/session/db.js.map +1 -1
- package/dist/tasks/LocalBashTask.d.ts +18 -0
- package/dist/tasks/LocalBashTask.d.ts.map +1 -0
- package/dist/tasks/LocalBashTask.js +83 -0
- package/dist/tasks/LocalBashTask.js.map +1 -0
- package/dist/tasks/Task.d.ts +34 -0
- package/dist/tasks/Task.d.ts.map +1 -0
- package/dist/tasks/Task.js +98 -0
- package/dist/tasks/Task.js.map +1 -0
- package/dist/tasks/diskOutput.d.ts +13 -0
- package/dist/tasks/diskOutput.d.ts.map +1 -0
- package/dist/tasks/diskOutput.js +168 -0
- package/dist/tasks/diskOutput.js.map +1 -0
- package/dist/tasks/index.d.ts +7 -0
- package/dist/tasks/index.d.ts.map +1 -0
- package/dist/tasks/index.js +19 -0
- package/dist/tasks/index.js.map +1 -0
- package/dist/tools/AgentTool.d.ts +41 -0
- package/dist/tools/AgentTool.d.ts.map +1 -0
- package/dist/tools/AgentTool.js +32 -0
- package/dist/tools/AgentTool.js.map +1 -0
- package/dist/tools/AskUserQuestionTool.d.ts +71 -0
- package/dist/tools/AskUserQuestionTool.d.ts.map +1 -0
- package/dist/tools/AskUserQuestionTool.js +33 -0
- package/dist/tools/AskUserQuestionTool.js.map +1 -0
- package/dist/tools/BashTool.d.ts +43 -0
- package/dist/tools/BashTool.d.ts.map +1 -0
- package/dist/tools/BashTool.js +97 -0
- package/dist/tools/BashTool.js.map +1 -0
- package/dist/tools/BriefTool.d.ts +23 -0
- package/dist/tools/BriefTool.d.ts.map +1 -0
- package/dist/tools/BriefTool.js +61 -0
- package/dist/tools/BriefTool.js.map +1 -0
- package/dist/tools/ConfigTool.d.ts +35 -0
- package/dist/tools/ConfigTool.d.ts.map +1 -0
- package/dist/tools/ConfigTool.js +81 -0
- package/dist/tools/ConfigTool.js.map +1 -0
- package/dist/tools/EnterPlanModeTool.d.ts +23 -0
- package/dist/tools/EnterPlanModeTool.d.ts.map +1 -0
- package/dist/tools/EnterPlanModeTool.js +21 -0
- package/dist/tools/EnterPlanModeTool.js.map +1 -0
- package/dist/tools/ExitPlanModeTool.d.ts +23 -0
- package/dist/tools/ExitPlanModeTool.d.ts.map +1 -0
- package/dist/tools/ExitPlanModeTool.js +21 -0
- package/dist/tools/ExitPlanModeTool.js.map +1 -0
- package/dist/tools/FileEditTool.d.ts +41 -0
- package/dist/tools/FileEditTool.d.ts.map +1 -0
- package/dist/tools/FileEditTool.js +81 -0
- package/dist/tools/FileEditTool.js.map +1 -0
- package/dist/tools/FileReadTool.d.ts +35 -0
- package/dist/tools/FileReadTool.d.ts.map +1 -0
- package/dist/tools/FileReadTool.js +74 -0
- package/dist/tools/FileReadTool.js.map +1 -0
- package/dist/tools/FileWriteTool.d.ts +29 -0
- package/dist/tools/FileWriteTool.d.ts.map +1 -0
- package/dist/tools/FileWriteTool.js +67 -0
- package/dist/tools/FileWriteTool.js.map +1 -0
- package/dist/tools/GlobTool.d.ts +30 -0
- package/dist/tools/GlobTool.d.ts.map +1 -0
- package/dist/tools/GlobTool.js +98 -0
- package/dist/tools/GlobTool.js.map +1 -0
- package/dist/tools/GrepTool.d.ts +36 -0
- package/dist/tools/GrepTool.d.ts.map +1 -0
- package/dist/tools/GrepTool.js +112 -0
- package/dist/tools/GrepTool.js.map +1 -0
- package/dist/tools/LSPToolWrapper.d.ts +42 -0
- package/dist/tools/LSPToolWrapper.d.ts.map +1 -0
- package/dist/tools/LSPToolWrapper.js +49 -0
- package/dist/tools/LSPToolWrapper.js.map +1 -0
- package/dist/tools/ListMcpResourcesTool.d.ts +11 -0
- package/dist/tools/ListMcpResourcesTool.d.ts.map +1 -0
- package/dist/tools/ListMcpResourcesTool.js +19 -0
- package/dist/tools/ListMcpResourcesTool.js.map +1 -0
- package/dist/tools/NotebookEditTool.d.ts +41 -0
- package/dist/tools/NotebookEditTool.d.ts.map +1 -0
- package/dist/tools/NotebookEditTool.js +30 -0
- package/dist/tools/NotebookEditTool.js.map +1 -0
- package/dist/tools/SchemaGenerator.d.ts +3 -0
- package/dist/tools/SchemaGenerator.d.ts.map +1 -0
- package/dist/tools/SchemaGenerator.js +69 -0
- package/dist/tools/SchemaGenerator.js.map +1 -0
- package/dist/tools/SkillTool.d.ts +29 -0
- package/dist/tools/SkillTool.d.ts.map +1 -0
- package/dist/tools/SkillTool.js +28 -0
- package/dist/tools/SkillTool.js.map +1 -0
- package/dist/tools/TaskCreateTool.d.ts +41 -0
- package/dist/tools/TaskCreateTool.d.ts.map +1 -0
- package/dist/tools/TaskCreateTool.js +67 -0
- package/dist/tools/TaskCreateTool.js.map +1 -0
- package/dist/tools/TaskGetTool.d.ts +23 -0
- package/dist/tools/TaskGetTool.d.ts.map +1 -0
- package/dist/tools/TaskGetTool.js +66 -0
- package/dist/tools/TaskGetTool.js.map +1 -0
- package/dist/tools/TaskListTool.d.ts +11 -0
- package/dist/tools/TaskListTool.d.ts.map +1 -0
- package/dist/tools/TaskListTool.js +64 -0
- package/dist/tools/TaskListTool.js.map +1 -0
- package/dist/tools/TaskOutputTool.d.ts +29 -0
- package/dist/tools/TaskOutputTool.d.ts.map +1 -0
- package/dist/tools/TaskOutputTool.js +66 -0
- package/dist/tools/TaskOutputTool.js.map +1 -0
- package/dist/tools/TaskStopTool.d.ts +23 -0
- package/dist/tools/TaskStopTool.d.ts.map +1 -0
- package/dist/tools/TaskStopTool.js +66 -0
- package/dist/tools/TaskStopTool.js.map +1 -0
- package/dist/tools/TaskUpdateTool.d.ts +79 -0
- package/dist/tools/TaskUpdateTool.d.ts.map +1 -0
- package/dist/tools/TaskUpdateTool.js +73 -0
- package/dist/tools/TaskUpdateTool.js.map +1 -0
- package/dist/tools/TodoWriteTool.d.ts +63 -0
- package/dist/tools/TodoWriteTool.d.ts.map +1 -0
- package/dist/tools/TodoWriteTool.js +79 -0
- package/dist/tools/TodoWriteTool.js.map +1 -0
- package/dist/tools/Tool.d.ts +32 -0
- package/dist/tools/Tool.d.ts.map +1 -0
- package/dist/tools/Tool.js +20 -0
- package/dist/tools/Tool.js.map +1 -0
- package/dist/tools/ToolContext.d.ts +12 -0
- package/dist/tools/ToolContext.d.ts.map +1 -0
- package/dist/tools/ToolContext.js +3 -0
- package/dist/tools/ToolContext.js.map +1 -0
- package/dist/tools/ToolSearchTool.d.ts +23 -0
- package/dist/tools/ToolSearchTool.d.ts.map +1 -0
- package/dist/tools/ToolSearchTool.js +62 -0
- package/dist/tools/ToolSearchTool.js.map +1 -0
- package/dist/tools/WebFetchTool.d.ts +29 -0
- package/dist/tools/WebFetchTool.d.ts.map +1 -0
- package/dist/tools/WebFetchTool.js +42 -0
- package/dist/tools/WebFetchTool.js.map +1 -0
- package/dist/tools/WebSearchTool.d.ts +23 -0
- package/dist/tools/WebSearchTool.d.ts.map +1 -0
- package/dist/tools/WebSearchTool.js +38 -0
- package/dist/tools/WebSearchTool.js.map +1 -0
- package/dist/tools/bash/readOnly.d.ts +7 -0
- package/dist/tools/bash/readOnly.d.ts.map +1 -0
- package/dist/tools/bash/readOnly.js +41 -0
- package/dist/tools/bash/readOnly.js.map +1 -0
- package/dist/tools/bash/sandbox.d.ts +3 -0
- package/dist/tools/bash/sandbox.d.ts.map +1 -0
- package/dist/tools/bash/sandbox.js +27 -0
- package/dist/tools/bash/sandbox.js.map +1 -0
- package/dist/tools/bash/semantic.d.ts +5 -0
- package/dist/tools/bash/semantic.d.ts.map +1 -0
- package/dist/tools/bash/semantic.js +106 -0
- package/dist/tools/bash/semantic.js.map +1 -0
- package/dist/tools/index.d.ts +26 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +74 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/utils/claudeInChrome/chromeNativeHost.d.ts +3 -0
- package/dist/utils/claudeInChrome/chromeNativeHost.d.ts.map +1 -0
- package/dist/utils/claudeInChrome/chromeNativeHost.js +376 -0
- package/dist/utils/claudeInChrome/chromeNativeHost.js.map +1 -0
- package/dist/utils/claudeInChrome/common.d.ts +32 -0
- package/dist/utils/claudeInChrome/common.d.ts.map +1 -0
- package/dist/utils/claudeInChrome/common.js +301 -0
- package/dist/utils/claudeInChrome/common.js.map +1 -0
- package/dist/utils/claudeInChrome/mcpServer.d.ts +2 -0
- package/dist/utils/claudeInChrome/mcpServer.d.ts.map +1 -0
- package/dist/utils/claudeInChrome/mcpServer.js +143 -0
- package/dist/utils/claudeInChrome/mcpServer.js.map +1 -0
- package/dist/utils/claudeInChrome/setup.d.ts +22 -0
- package/dist/utils/claudeInChrome/setup.d.ts.map +1 -0
- package/dist/utils/claudeInChrome/setup.js +202 -0
- package/dist/utils/claudeInChrome/setup.js.map +1 -0
- package/dist/utils/contextManager.d.ts +1 -1
- package/dist/utils/contextManager.d.ts.map +1 -1
- package/dist/utils/contextManager.js +1 -1
- package/dist/utils/contextManager.js.map +1 -1
- package/dist/utils/features.d.ts +3 -0
- package/dist/utils/features.d.ts.map +1 -0
- package/dist/utils/features.js +31 -0
- package/dist/utils/features.js.map +1 -0
- package/dist/utils/inputbar.d.ts +2 -2
- package/dist/utils/inputbar.d.ts.map +1 -1
- package/dist/utils/inputbar.js +7 -6
- package/dist/utils/inputbar.js.map +1 -1
- package/dist/utils/output.js +1 -1
- package/dist/utils/output.js.map +1 -1
- package/dist/utils/permissions.d.ts +18 -0
- package/dist/utils/permissions.d.ts.map +1 -0
- package/dist/utils/permissions.js +25 -0
- package/dist/utils/permissions.js.map +1 -0
- package/package.json +3 -2
|
@@ -40,6 +40,9 @@ exports.CoWorkerAgent = void 0;
|
|
|
40
40
|
const output_1 = require("../utils/output");
|
|
41
41
|
const PermissionInterceptor_1 = require("../permissions/PermissionInterceptor");
|
|
42
42
|
const NativeTools_1 = require("../tools/NativeTools");
|
|
43
|
+
const tools_1 = require("../tools");
|
|
44
|
+
const features_1 = require("../utils/features");
|
|
45
|
+
const SchemaGenerator_1 = require("../tools/SchemaGenerator");
|
|
43
46
|
const TaskEngine_1 = require("../task/TaskEngine");
|
|
44
47
|
const SessionManager_1 = require("../session/SessionManager");
|
|
45
48
|
const MCPClientManager_1 = require("../mcp/MCPClientManager");
|
|
@@ -63,6 +66,7 @@ const modes_1 = require("../types/modes");
|
|
|
63
66
|
const PromptCache_1 = require("../utils/PromptCache");
|
|
64
67
|
const PluginManager_1 = require("../plugins/PluginManager");
|
|
65
68
|
const CronManager_1 = require("../tools/CronManager");
|
|
69
|
+
const CompactService_1 = require("../services/compact/CompactService");
|
|
66
70
|
// No fixed tool turn limit - let the model decide when it's done.
|
|
67
71
|
/**
|
|
68
72
|
* THE SDK LAYER — Real Agentic Tool Loop for CoWorker v1.5.0.
|
|
@@ -90,6 +94,7 @@ class CoWorkerAgent {
|
|
|
90
94
|
this.mcp = new MCPClientManager_1.MCPClientManager();
|
|
91
95
|
this.hooks = new HookAndSkillManager_1.HookAndSkillManager();
|
|
92
96
|
this.settings = new SettingsManager_1.SettingsManager();
|
|
97
|
+
this.sylixModel = options.model || 'helix-1.2';
|
|
93
98
|
this.permissions = new PermissionInterceptor_1.PermissionInterceptor();
|
|
94
99
|
this.snapshots = new SnapshotManager_1.SnapshotManager(options.cwd || process.cwd());
|
|
95
100
|
this.hookEngine = new HookEngine_1.HookEngine();
|
|
@@ -99,11 +104,19 @@ class CoWorkerAgent {
|
|
|
99
104
|
this.ruleManager = new RuleManager_1.RuleManager();
|
|
100
105
|
this.plugins = new PluginManager_1.PluginManager();
|
|
101
106
|
this.cronManager = new CronManager_1.CronManager();
|
|
107
|
+
this.cwd = options.cwd || process.cwd();
|
|
108
|
+
this.compactService = new CompactService_1.CompactService(this.settings);
|
|
102
109
|
// Lazy initialize LSP to save resources if not used
|
|
103
110
|
this.lspClient = null;
|
|
104
111
|
}
|
|
105
112
|
async boot() {
|
|
106
113
|
await this.settings.loadSettings();
|
|
114
|
+
// Load model from saved config after settings are loaded
|
|
115
|
+
const savedModel = this.settings.config.model;
|
|
116
|
+
if (savedModel && savedModel !== this.model) {
|
|
117
|
+
this.model = savedModel;
|
|
118
|
+
this.sylixModel = savedModel;
|
|
119
|
+
}
|
|
107
120
|
await this.hooks.loadSkillsFromDirectory();
|
|
108
121
|
this.hooks.registerHooks(this.hookEngine);
|
|
109
122
|
// Initialize the snapshot system
|
|
@@ -231,18 +244,21 @@ class CoWorkerAgent {
|
|
|
231
244
|
// ── Context Management ──
|
|
232
245
|
// 1. Prune large tool results
|
|
233
246
|
this.sessions.state.messages = (0, contextManager_1.pruneToolResults)(this.sessions.state.messages);
|
|
234
|
-
// 2. Auto-Compact if needed (
|
|
247
|
+
// 2. Auto-Compact if needed (5-Layer Compaction System)
|
|
235
248
|
const usage = (0, contextManager_1.getContextUsage)(this.sessions.state.messages);
|
|
236
249
|
if (usage >= contextManager_1.AUTO_COMPACT_THRESHOLD) {
|
|
237
250
|
await this.hookEngine.fire('PreCompact', { event: 'PreCompact', cwd: this.cwd });
|
|
238
|
-
yield `\n [SYSTEM] context window at ${Math.floor(usage * 100)}% — optimizing memory...\n`;
|
|
239
|
-
const result = await this.sessions.
|
|
240
|
-
)
|
|
241
|
-
|
|
242
|
-
yield ` [DONE]
|
|
251
|
+
yield `\n [SYSTEM] context window at ${Math.floor(usage * 100)}% — optimizing memory (${this.compactService.getLayers().length}-layer)...\n`;
|
|
252
|
+
const result = await this.compactService.compact(this.sessions.state.messages, async (content) => this.summarizeChunk(content));
|
|
253
|
+
if (result.messages) {
|
|
254
|
+
this.sessions.state.messages = result.messages;
|
|
255
|
+
yield ` [DONE] ${result.method} · saved ~${result.savedTokens.toLocaleString()} tokens\n`;
|
|
256
|
+
}
|
|
257
|
+
else if (result.savedTokens > 0) {
|
|
258
|
+
yield ` [DONE] ${result.method} · saved ~${result.savedTokens.toLocaleString()} tokens\n`;
|
|
243
259
|
}
|
|
244
260
|
else {
|
|
245
|
-
// Fallback:
|
|
261
|
+
// Fallback: full conversation summary
|
|
246
262
|
const summary = await this.summarizeConversation(this.sessions.state.messages);
|
|
247
263
|
await this.sessions.compactMessages(summary);
|
|
248
264
|
yield ` [DONE] deep compression completed\n`;
|
|
@@ -303,7 +319,7 @@ class CoWorkerAgent {
|
|
|
303
319
|
{ role: 'user', content: userMessageContent }
|
|
304
320
|
];
|
|
305
321
|
await this.sessions.appendMessage({ role: 'user', content: userMessageContent });
|
|
306
|
-
let toolsToUse = Schemas_1.CoWorkerToolSchemas;
|
|
322
|
+
let toolsToUse = (0, features_1.feature)('NEW_TOOLS') ? (0, SchemaGenerator_1.generateToolSchemas)() : Schemas_1.CoWorkerToolSchemas;
|
|
307
323
|
if (PromptCache_1.PromptCache.shouldUseCache(fullSystemPrompt, Schemas_1.CoWorkerToolSchemas)) {
|
|
308
324
|
toolsToUse = PromptCache_1.PromptCache.getCachedTools();
|
|
309
325
|
const savings = PromptCache_1.PromptCache.calculateSavings(fullSystemPrompt);
|
|
@@ -470,7 +486,6 @@ class CoWorkerAgent {
|
|
|
470
486
|
];
|
|
471
487
|
try {
|
|
472
488
|
const learningContent = { content: '', tool_calls: [] };
|
|
473
|
-
// Run extraction in background (don't yield to user)
|
|
474
489
|
for await (const _ of this.callLLMStreamUnified(learningMessages, learningContent)) { }
|
|
475
490
|
if (learningContent.content.trim()) {
|
|
476
491
|
await this.autoMemory.append(this.cwd, learningContent.content.trim());
|
|
@@ -482,6 +497,34 @@ class CoWorkerAgent {
|
|
|
482
497
|
if (process.env.CW_VERBOSE)
|
|
483
498
|
console.warn(`[AutoMemory] Extraction failed: ${e.message}`);
|
|
484
499
|
}
|
|
500
|
+
// Extract structured observations (Claude-Mem style)
|
|
501
|
+
try {
|
|
502
|
+
const obsResult = await this.extractObservations();
|
|
503
|
+
if (obsResult) {
|
|
504
|
+
const { addObservation } = await Promise.resolve().then(() => __importStar(require('../session/db')));
|
|
505
|
+
addObservation(this.sessions.currentSessionId, this.cwd, obsResult.type, obsResult.title, obsResult.facts, obsResult.concepts, obsResult.files);
|
|
506
|
+
if (process.env.CW_VERBOSE)
|
|
507
|
+
console.log(`[Observations] Stored for ${this.cwd}`);
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
catch (e) {
|
|
511
|
+
if (process.env.CW_VERBOSE)
|
|
512
|
+
console.warn(`[Observations] Extraction failed: ${e.message}`);
|
|
513
|
+
}
|
|
514
|
+
// Extract session summary
|
|
515
|
+
try {
|
|
516
|
+
const summaryResult = await this.extractSessionSummary();
|
|
517
|
+
if (summaryResult) {
|
|
518
|
+
const { addSessionSummary } = await Promise.resolve().then(() => __importStar(require('../session/db')));
|
|
519
|
+
addSessionSummary(this.sessions.currentSessionId, this.cwd, summaryResult.request, summaryResult.investigated, summaryResult.learned, summaryResult.completed, summaryResult.next_steps);
|
|
520
|
+
if (process.env.CW_VERBOSE)
|
|
521
|
+
console.log(`[SessionSummary] Stored for ${this.cwd}`);
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
catch (e) {
|
|
525
|
+
if (process.env.CW_VERBOSE)
|
|
526
|
+
console.warn(`[SessionSummary] Extraction failed: ${e.message}`);
|
|
527
|
+
}
|
|
485
528
|
}
|
|
486
529
|
}
|
|
487
530
|
/**
|
|
@@ -527,7 +570,7 @@ class CoWorkerAgent {
|
|
|
527
570
|
tools: toolsToUse,
|
|
528
571
|
tool_choice: 'auto',
|
|
529
572
|
stream: true,
|
|
530
|
-
options: { num_ctx:
|
|
573
|
+
options: { num_ctx: 262144, num_predict: 4096, temperature: 0.2 }
|
|
531
574
|
}),
|
|
532
575
|
signal,
|
|
533
576
|
});
|
|
@@ -614,6 +657,24 @@ class CoWorkerAgent {
|
|
|
614
657
|
}
|
|
615
658
|
}
|
|
616
659
|
async executeToolLocally(toolName, args) {
|
|
660
|
+
// Check new tool registry first
|
|
661
|
+
const newTool = (0, tools_1.getToolByName)(toolName);
|
|
662
|
+
if (newTool) {
|
|
663
|
+
const ctx = {
|
|
664
|
+
cwd: this.cwd,
|
|
665
|
+
session: this.sessions,
|
|
666
|
+
settings: this.settings,
|
|
667
|
+
permissions: this.permissions,
|
|
668
|
+
toolUseId: `tool_${Date.now()}`,
|
|
669
|
+
};
|
|
670
|
+
try {
|
|
671
|
+
return await newTool.execute(ctx, args);
|
|
672
|
+
}
|
|
673
|
+
catch (error) {
|
|
674
|
+
return `[Error] ${error.message}`;
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
// Fall back to NativeTools for legacy tools
|
|
617
678
|
switch (toolName) {
|
|
618
679
|
// ═══════════════════════════════════════════════════════════════════
|
|
619
680
|
// NEW CONCISE NAMES (v1.5.2)
|
|
@@ -755,7 +816,7 @@ class CoWorkerAgent {
|
|
|
755
816
|
body: JSON.stringify({
|
|
756
817
|
model: this.sylixModel,
|
|
757
818
|
messages: [{ role: 'user', content: prompt }],
|
|
758
|
-
options: { num_ctx: 4096, num_predict: 200, temperature: 0.
|
|
819
|
+
options: { num_ctx: 4096, num_predict: 200, temperature: 0.0 }
|
|
759
820
|
})
|
|
760
821
|
});
|
|
761
822
|
if (!res.ok)
|
|
@@ -799,7 +860,7 @@ Stay under 800 words. Focus on actionable information.`;
|
|
|
799
860
|
body: JSON.stringify({
|
|
800
861
|
model: this.sylixModel,
|
|
801
862
|
messages: [...messages, { role: 'user', content: prompt }],
|
|
802
|
-
options: { num_ctx:
|
|
863
|
+
options: { num_ctx: 262144, num_predict: 2048, temperature: 0.3 }
|
|
803
864
|
})
|
|
804
865
|
});
|
|
805
866
|
if (!res.ok)
|
|
@@ -811,6 +872,92 @@ Stay under 800 words. Focus on actionable information.`;
|
|
|
811
872
|
return 'Summary error occurred.';
|
|
812
873
|
}
|
|
813
874
|
}
|
|
875
|
+
async extractObservations() {
|
|
876
|
+
const baseUrl = this.settings.config.baseUrl || this.endpoint;
|
|
877
|
+
const url = `${baseUrl}/v1/sylix/chat/completions`;
|
|
878
|
+
const prompt = `Extract key technical observations from this conversation as JSON. Use this exact format:
|
|
879
|
+
{"type": "code-pattern|architecture|workflow|preference|bug", "title": "short title", "facts": "key facts discovered", "concepts": "concepts learned", "files": "relevant file paths"}
|
|
880
|
+
|
|
881
|
+
Focus on non-trivial learnings that would help future sessions. Return ONLY valid JSON, no other text.`;
|
|
882
|
+
try {
|
|
883
|
+
const headers = { 'Content-Type': 'application/json' };
|
|
884
|
+
if (this.settings.config.apiKey) {
|
|
885
|
+
headers['Authorization'] = `Bearer ${this.settings.config.apiKey}`;
|
|
886
|
+
}
|
|
887
|
+
const res = await (0, node_fetch_1.default)(url, {
|
|
888
|
+
method: 'POST',
|
|
889
|
+
headers,
|
|
890
|
+
body: JSON.stringify({
|
|
891
|
+
model: this.sylixModel,
|
|
892
|
+
messages: [...this.sessions.state.messages, { role: 'user', content: prompt }],
|
|
893
|
+
options: { num_ctx: 8192, num_predict: 500, temperature: 0.0 }
|
|
894
|
+
})
|
|
895
|
+
});
|
|
896
|
+
if (!res.ok)
|
|
897
|
+
return null;
|
|
898
|
+
const data = await res.json();
|
|
899
|
+
const content = data.choices?.[0]?.message?.content || '';
|
|
900
|
+
try {
|
|
901
|
+
const parsed = JSON.parse(content.trim());
|
|
902
|
+
return {
|
|
903
|
+
type: parsed.type || 'general',
|
|
904
|
+
title: parsed.title || 'Session observation',
|
|
905
|
+
facts: parsed.facts || '',
|
|
906
|
+
concepts: parsed.concepts || '',
|
|
907
|
+
files: parsed.files || ''
|
|
908
|
+
};
|
|
909
|
+
}
|
|
910
|
+
catch {
|
|
911
|
+
return null;
|
|
912
|
+
}
|
|
913
|
+
}
|
|
914
|
+
catch {
|
|
915
|
+
return null;
|
|
916
|
+
}
|
|
917
|
+
}
|
|
918
|
+
async extractSessionSummary() {
|
|
919
|
+
const baseUrl = this.settings.config.baseUrl || this.endpoint;
|
|
920
|
+
const url = `${baseUrl}/v1/sylix/chat/completions`;
|
|
921
|
+
const prompt = `Create a session summary as JSON. Use this exact format:
|
|
922
|
+
{"request": "what user asked for", "investigated": "what you looked into", "learned": "key discoveries", "completed": "what was accomplished", "next_steps": "what remains"}
|
|
923
|
+
|
|
924
|
+
Return ONLY valid JSON, no other text.`;
|
|
925
|
+
try {
|
|
926
|
+
const headers = { 'Content-Type': 'application/json' };
|
|
927
|
+
if (this.settings.config.apiKey) {
|
|
928
|
+
headers['Authorization'] = `Bearer ${this.settings.config.apiKey}`;
|
|
929
|
+
}
|
|
930
|
+
const res = await (0, node_fetch_1.default)(url, {
|
|
931
|
+
method: 'POST',
|
|
932
|
+
headers,
|
|
933
|
+
body: JSON.stringify({
|
|
934
|
+
model: this.sylixModel,
|
|
935
|
+
messages: [...this.sessions.state.messages, { role: 'user', content: prompt }],
|
|
936
|
+
options: { num_ctx: 8192, num_predict: 500, temperature: 0.0 }
|
|
937
|
+
})
|
|
938
|
+
});
|
|
939
|
+
if (!res.ok)
|
|
940
|
+
return null;
|
|
941
|
+
const data = await res.json();
|
|
942
|
+
const content = data.choices?.[0]?.message?.content || '';
|
|
943
|
+
try {
|
|
944
|
+
const parsed = JSON.parse(content.trim());
|
|
945
|
+
return {
|
|
946
|
+
request: parsed.request || '',
|
|
947
|
+
investigated: parsed.investigated || '',
|
|
948
|
+
learned: parsed.learned || '',
|
|
949
|
+
completed: parsed.completed || '',
|
|
950
|
+
next_steps: parsed.next_steps || ''
|
|
951
|
+
};
|
|
952
|
+
}
|
|
953
|
+
catch {
|
|
954
|
+
return null;
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
catch {
|
|
958
|
+
return null;
|
|
959
|
+
}
|
|
960
|
+
}
|
|
814
961
|
/**
|
|
815
962
|
* Ask the user whether to continue after a doom loop detection.
|
|
816
963
|
* Blocks execution until user responds.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoWorkerAgent.js","sourceRoot":"","sources":["../../src/core/CoWorkerAgent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAwC;AACxC,gFAA6E;AAC7E,sDAAmD;AACnD,mDAAgD;AAChD,8DAA2D;AAC3D,8DAA2D;AAC3D,uEAAoE;AACpE,+DAA4D;AAC5D,8CAAuD;AACvD,mCAAoC;AACpC,4DAA+B;AAE/B,mDAAgD;AAChD,wDAAoE;AAEpE,4DAAmI;AACnI,iEAA8D;AAC9D,oDAAiD;AACjD,6DAA0D;AAC1D,qDAAkD;AAClD,+DAA4D;AAC5D,sDAAmD;AACnD,yDAAsE;AACtE,mDAAqC;AACrC,0CAA2C;AAC3C,sDAA+D;AAC/D,4DAAyD;AACzD,sDAAmD;AAWnD,kEAAkE;AAElE;;GAEG;AACH,MAAa,aAAa;IA8BxB,YAAY,OAAwB;QAV5B,kBAAa,GAAY,KAAK,CAAC;QAC/B,iBAAY,GAAW,EAAE,CAAC;QAE1B,iBAAY,GAAW,EAAE,CAAC;QAC1B,aAAQ,GAAiC,OAAO,CAAC;QACjD,cAAS,GAAc,iBAAS,CAAC,KAAK,CAAC;QACvC,oBAAe,GAA2C,EAAE,CAAC;QACpD,wBAAmB,GAAG,CAAC,CAAC;QACjC,eAAU,GAAU,EAAE,CAAC;QAwcd,gBAAW,GAAG,CAAC,CAAC;QAChB,wBAAmB,GAAG,IAAI,CAAC;QAtc1C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,0BAA0B,CAAC;QAC/D,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAExC,IAAI,CAAC,KAAK,GAAG,IAAI,uBAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,+BAAc,CAAC,IAAA,mBAAU,GAAE,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,GAAG,IAAI,mCAAgB,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,yCAAmB,EAAE,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,iCAAe,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,6CAAqB,EAAE,CAAC;QAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,iCAAe,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,6BAAa,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;QAErC,oDAAoD;QACpD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE1C,iCAAiC;QACjC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAE5B,4BAA4B;QAC5B,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAEjC,mCAAmC;QACnC,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEtC,qCAAqC;QACrC,IAAA,mCAAwB,EAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAE1E,0BAA0B;QAC1B,IAAI,CAAC,YAAY,GAAG,MAAM,IAAA,8BAAe,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpD,wDAAwD;QACxD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,IAAI,yDAAyD,OAAO,EAAE,CAAC;QAC1F,CAAC;QAED,IAAI,CAAC,YAAY,IAAI,4BAA4B,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC;QAEjF,4CAA4C;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,IAAI,8BAA8B,CAAC;YACpD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,YAAY,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,QAAQ,WAAW,CAAC;YAC/H,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,sBAAsB,GAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,WAAW,CAAC,oBAAoB,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,IAAI,gBAAgB,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,UAAU,GAAG;oBACjB,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,KAAK;oBAClB,SAAS,EAAE,KAAK;iBACjB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACf,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;oBACpC,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAChF,CAAC,CAAC,cAAc,CAAC;gBACnB,IAAI,CAAC,YAAY,IAAI,GAAG,UAAU,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,CAAC;YACtG,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QAElD,6DAA6D;QAC7D,IAAI,CAAC,WAAW,GAAG,IAAI,6CAAqB,CAAC;YAC3C,IAAI,EAAE,SAAS,EAAE,qCAAqC;YACtD,KAAK,EAAE,MAAM,CAAC,KAAY;YAC1B,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK;YACtC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;SACrC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC;QAED,sCAAsC;QACtC,MAAM,6BAAa,CAAC,WAAW,EAAE,CAAC;QAElC,uBAAuB;QACvB,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;QAEnC,0BAA0B;QAC1B,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE;YACzC,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB;YACzC,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,CAAC,IAAI,CAAC,MAA0B,EAAE,OAAkB,iBAAS,CAAC,KAAK;QAC9E,IAAI,SAAiB,CAAC;QACtB,IAAI,WAAW,GAAa,EAAE,CAAC;QAE/B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;YACnD,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;YACxB,WAAW,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,MAAgB,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QAEnC,wDAAwD;QACxD,IAAI,IAAA,yBAAU,EAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,YAAY,GAAG,MAAM,IAAA,8BAAe,EAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACjE,CAAC;QAED,0DAA0D;QAC1D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,kBAAkB,EAAE;YACxE,KAAK,EAAE,kBAAkB;YACzB,MAAM,EAAE,SAAS;YACjB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,yCAAyC,UAAU,CAAC,MAAM,IAAI,WAAW,IAAI,CAAC;YACpF,OAAO;QACT,CAAC;QACD,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC9B,SAAS,GAAG,UAAU,CAAC,cAAc,CAAC;QACxC,CAAC;QAED,oBAAoB;QACpB,IAAI,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACjD,CAAC;aAAM,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;YACvB,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC1B,CAAC;QAED,2CAA2C;QAC3C,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC;QAChD,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC;QAChD,CAAC;QAED,2BAA2B;QAC3B,8BAA8B;QAC9B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAA,iCAAgB,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAe,CAAC,CAAC;QAErF,0CAA0C;QAC1C,MAAM,KAAK,GAAG,IAAA,gCAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAe,CAAC,CAAC;QACnE,IAAI,KAAK,IAAI,uCAAsB,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACjF,MAAM,kCAAkC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,4BAA4B,CAAC;YAE5F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAC1D,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAC/C,EAAE,CAAC,4BAA4B;aAChC,CAAC;YAEF,IAAI,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,+BAA+B,MAAM,CAAC,WAAW,CAAC,cAAc,EAAE,WAAW,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,6DAA6D;gBAC7D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAe,CAAC,CAAC;gBACtF,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBAC7C,MAAM,uCAAuC,CAAC;YAChD,CAAC;YAED,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAEnF,cAAc;YACd,MAAM,iCAAiC,CAAC;QAC1C,CAAC;QAED,MAAM,gBAAgB,GAAG,wCAAwC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACzF,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,6BAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5F,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEnF,IAAI,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC;QACzC,IAAI,WAAW,EAAE,CAAC;YAChB,gBAAgB,IAAI,wCAAwC,WAAW,EAAE,CAAC;QAC5E,CAAC;QAED,kDAAkD;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ;aAC7C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC;aAChD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,8CAA8C;QAE5D,kDAAkD;QAClD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,gBAAgB,IAAI,2CAA2C,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9F,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACtE,IAAI,WAAW;gBAAE,gBAAgB,IAAI,WAAW,CAAC;QACnD,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,gBAAgB,IAAI;;;gEAGsC,CAAC;QAC7D,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,IAAI,EAAE,CAAC;YACzE,gBAAgB,IAAI;;mEAEyC,CAAC;QAChE,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,QAAQ,EAAE,CAAC;YAC1C,gBAAgB,IAAI;;;6DAGmC,CAAC;QAC1D,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,GAAG,EAAE,CAAC;YAC5C,gBAAgB,IAAI;;;mCAGS,CAAC;QAChC,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAEhF,MAAM,QAAQ,GAAU;YACtB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE;YAC7C,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ;YAC/B,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE;SAC9C,CAAC;QAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAS,CAAC,CAAC;QAExF,IAAI,UAAU,GAAG,6BAAmB,CAAC;QACrC,IAAI,yBAAW,CAAC,cAAc,CAAC,gBAAgB,EAAE,6BAAmB,CAAC,EAAE,CAAC;YACtE,UAAU,GAAG,yBAAW,CAAC,cAAc,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,yBAAW,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;YAC/D,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM,OAAO,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,YAAY,CAAC;YACtF,CAAC;QACH,CAAC;QAED,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,SAAS,GAA2C,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;YAC1F,KAAK,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;YAElE,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/D,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;oBACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAS,CAAC,CAAC;gBAC9F,CAAC;qBAAM,CAAC;oBACN,MAAM,OAAO,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;gBAChE,CAAC;gBACD,MAAM;YACR,CAAC;YAED,MAAM,YAAY,GAAG;gBACnB,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,EAAE;gBAChC,UAAU,EAAE,SAAS,CAAC,UAAU;aACjC,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5B,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAmB,CAAC,CAAC;YAEvD,KAAK,MAAM,EAAE,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACnC,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,IAAI,QAAQ,IAAA,mBAAU,GAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,IAAS,CAAC;gBACd,IAAI,CAAC;oBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC;gBACpD,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,MAAM,GAAG,6CAA6C,QAAQ,EAAE,CAAC;oBACvE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;oBACvE,MAAM,eAAe,MAAM,IAAI,CAAC;oBAChC,SAAS;gBACX,CAAC;gBAED,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,sBAAsB,EAAE,aAAa,CAAC,CAAC;gBAC9E,IAAI,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACrC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACjE,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,MAAM,GAAG,iDAAiD,QAAQ,EAAE,CAAC;wBAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;wBACvE,MAAM,SAAS,MAAM,IAAI,CAAC;wBAC1B,SAAS;oBACX,CAAC;gBACH,CAAC;gBAED,4BAA4B;gBAC5B,oFAAoF;gBACpF,MAAM,WAAW,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACvC,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC3D,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;gBAC/B,CAAC;gBACD,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC;oBACvC,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAChC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAChF,CAAC;oBACF,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,OAAO,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,cAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,mBAAmB,IAAI,CAAC;wBAC7G,MAAM,OAAO,cAAK,CAAC,GAAG,CAAC,gFAAgF,CAAC,IAAI,CAAC;wBAE7G,sDAAsD;wBACtD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;wBAC5D,IAAI,CAAC,cAAc,EAAE,CAAC;4BACpB,MAAM,OAAO,GAAG,6CAA6C,QAAQ,mCAAmC,CAAC;4BACzG,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;4BACxE,MAAM,iBAAiB,cAAK,CAAC,OAAO,CAAC,+CAA+C,CAAC,IAAI,CAAC;4BAC1F,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;4BAC1B,SAAS;wBACX,CAAC;wBACD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;oBAC5B,CAAC;gBACH,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,QAAQ,EAAE,CAAC,CAAC;gBAE3D,mCAAmC;gBACnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,YAAY,EAAE;oBAC/D,KAAK,EAAE,YAAY;oBACnB,QAAQ;oBACR,IAAI;oBACJ,GAAG,EAAE,IAAI,CAAC,GAAG;iBACd,CAAC,CAAC;gBACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,MAAM,OAAO,GAAG,kBAAkB,OAAO,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;oBACvE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;oBACxE,MAAM,SAAS,OAAO,IAAI,CAAC;oBAC3B,SAAS;gBACX,CAAC;gBAED,MAAM,cAAc,cAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAK,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;gBAE/L,IAAI,MAAc,CAAC;gBACnB,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACzD,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,MAAM,GAAG,eAAe,QAAQ,aAAa,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC3D,CAAC;gBAED,IAAI,eAAe,GAAQ,MAAM,CAAC;gBAClC,IAAI,WAAW,GAAa,EAAE,CAAC;gBAE/B,wEAAwE;gBACxE,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAClC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,QAAQ,IAAI,MAAM,IAAI,aAAa,IAAI,MAAM,CAAC,EAAE,CAAC;wBAC5F,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;wBAC/F,IAAI,MAAM,CAAC,WAAW;4BAAE,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;oBAC3D,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,kCAAkC;gBACpC,CAAC;gBAED,MAAM,cAAc,GAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;gBACxE,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;oBACjC,cAAc,CAAC,IAAI,CAAC;wBAClB,IAAI,EAAE,WAAW;wBACjB,SAAS,EAAE,EAAE,GAAG,EAAE,yBAAyB,MAAM,EAAE,EAAE;qBACtD,CAAC,CAAC;gBACL,CAAC;gBAED,MAAM,OAAO,GAAG;oBACd,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe;oBAClE,YAAY,EAAE,MAAM;iBACrB,CAAC;gBACF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAc,CAAC,CAAC;gBAElD,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAE1D,MAAM,aAAa,GAAG,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBAC9G,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACpE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,OAAO,cAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,cAAK,CAAC,KAAK,CAAC,YAAY,WAAW,CAAC,MAAM,gBAAgB,CAAC,IAAI,CAAC;gBACtG,CAAC;gBACD,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBAC5B,KAAK,MAAM,IAAI,IAAI,WAAW;wBAAE,MAAM,OAAO,cAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,cAAK,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,MAAM,OAAO,cAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,cAAK,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;oBACrH,MAAM,OAAO,cAAK,CAAC,GAAG,CAAC,UAAU,WAAW,CAAC,MAAM,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC;gBAC5E,CAAC;gBAED,yBAAyB;gBACzB,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE;oBACxC,KAAK,EAAE,aAAa;oBACpB,QAAQ;oBACR,IAAI;oBACJ,MAAM,EAAE,eAAe;oBACvB,GAAG,EAAE,IAAI,CAAC,GAAG;iBACd,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,uDAAuD;QACvD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE;YACvC,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB;YACzC,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;QAEH,8EAA8E;QAC9E,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC;YAC7D,MAAM,gBAAgB,GAAG;gBACvB,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ;gBAC/B,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE;aAC1C,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,eAAe,GAA2C,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBAChG,qDAAqD;gBACrD,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvF,IAAI,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBACnC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBACvE,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU;wBAAE,OAAO,CAAC,GAAG,CAAC,wCAAwC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC9F,CAAC;YACH,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU;oBAAE,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;IACH,CAAC;IAKD;;OAEG;IACK,gBAAgB,CAAC,MAAc;QACrC,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,CAAC,CAAC;IAChH,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,EAAU,EAAE,MAAoB;QAClD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACxC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACrC,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,CAAC,oBAAoB,CACjC,QAAe,EACf,SAAiD,EACjD,KAAa,EACb,MAAoB;QAEpB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,MAAM,UAAU,GAAG,KAAK,IAAI,6BAAmB,CAAC;QAEhD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;YACV,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC;gBAC9D,MAAM,GAAG,GAAG,GAAG,OAAO,4BAA4B,CAAC;gBAEnD,MAAM,OAAO,GAA2B;oBACtC,cAAc,EAAE,kBAAkB;oBAClC,gBAAgB,EAAE,MAAM;iBACzB,CAAC;gBACF,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACrE,CAAC;gBAED,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,EAAE;oBAC3B,MAAM,EAAE,MAAM;oBACd,OAAO;oBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,IAAI,CAAC,UAAU;wBACtB,QAAQ;wBACR,KAAK,EAAE,UAAU;wBACjB,WAAW,EAAE,MAAM;wBACnB,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,EAAE,OAAO,EAAE,8BAAa,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;qBACzE,CAAC;oBACF,MAAM;iBACP,CAAC,CAAC;gBAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;oBACnD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;oBAE1B,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;wBAChE,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;wBAClE,MAAM,OAAO,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,wBAAwB,KAAK,GAAG,IAAI,SAAS,OAAO,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;wBACvH,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;wBAChC,SAAS;oBACX,CAAC;oBAED,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,MAAM,SAAS,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBAED,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;gBAC5B,IAAI,CAAC,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBAErD,IAAI,MAAM,GAAG,EAAE,CAAC;gBAChB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAe,CAAC;gBAE3C,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,UAAmC,EAAE,CAAC;oBACjE,MAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;oBAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;4BAAE,SAAS;wBAChD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;wBACzC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC;gCAAE,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;4BAElF,IAAI,CAAC,yBAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;gCAC5B,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;gCACjE,IAAI,SAAS,EAAE,CAAC;oCACd,yBAAW,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gCACzD,CAAC;4BACH,CAAC;4BAED,OAAO;wBACT,CAAC;wBAED,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAChC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;4BAC1D,IAAI,OAAO,EAAE,CAAC;gCACZ,SAAS,CAAC,OAAO,IAAI,OAAO,CAAC;gCAC7B,MAAM,OAAO,CAAC;4BAChB,CAAC;4BAED,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;4BACtD,IAAI,MAAM,EAAE,CAAC;gCACX,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;oCACxB,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC;oCAC1B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wCAC1B,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,QAAQ,IAAA,mBAAU,GAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oCACvH,CAAC;oCACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;oCACvC,IAAI,EAAE,CAAC,EAAE;wCAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;oCAC/B,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI;wCAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;oCAClE,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS;wCAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gCACnF,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC,CAAC,CAAC;oBACb,CAAC;gBACH,CAAC;gBACD,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9D,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC1D,CAAC;gBACD,OAAO,CAAC,UAAU;YACpB,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,IAAI,CAAC,CAAC,OAAO,KAAK,eAAe;oBAAE,OAAO;gBAC1C,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpG,IAAI,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;wBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;wBAClE,MAAM,OAAO,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,KAAK,GAAG,IAAI,SAAS,OAAO,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;wBACrH,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;wBAChC,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,MAAM,CAAC,CAAC,CAAC,uCAAuC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,QAAgB,EAAE,IAAS;QAC1D,QAAQ,QAAQ,EAAE,CAAC;YACjB,sEAAsE;YACtE,6BAA6B;YAC7B,sEAAsE;YACtE,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACrF,KAAK,OAAO,CAAC,CAAC,OAAO,yBAAW,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5E,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAChH,KAAK,WAAW;gBACd,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;oBAChD,SAAS,EAAE,CAAC,CAAC,UAAU;oBACvB,SAAS,EAAE,CAAC,CAAC,UAAU;oBACvB,UAAU,EAAE,CAAC,CAAC,WAAW;iBAC1B,CAAC,CAAC,CAAC;gBACJ,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC7D,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1D,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7F,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACtE,KAAK,IAAI,CAAC,CAAC,OAAO,yBAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACnE,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClE,KAAK,UAAU,CAAC,CAAC,OAAO,yBAAW,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9D,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAW,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;YAClF,KAAK,YAAY,CAAC,CAAC,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACrH,KAAK,SAAS,CAAC,CAAC,OAAO,yBAAW,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/D,KAAK,YAAY,CAAC,CAAC,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACnF,KAAK,UAAU,CAAC,CAAC,OAAO,yBAAW,CAAC,eAAe,EAAE,CAAC;YACtD,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClE,KAAK,UAAU,CAAC,CAAC,OAAO,yBAAW,CAAC,eAAe,EAAE,CAAC;YACtD,KAAK,YAAY,CAAC,CAAC,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClE,KAAK,UAAU,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/D,KAAK,gBAAgB;gBACnB,OAAO,MAAM,yBAAW,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvD,KAAK,oBAAoB;gBACvB,OAAO,MAAM,yBAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1E,KAAK,YAAY;gBACf,OAAO,MAAM,yBAAW,CAAC,iBAAiB,EAAE,CAAC;YAC/C,KAAK,aAAa;gBAChB,OAAO,MAAM,yBAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEvE,+BAA+B;YAC/B,KAAK,gBAAgB,CAAC;YACtB,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACpB,MAAM,EAAE,SAAS,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;oBACvD,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;gBAC/B,CAAC;gBACD,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;oBAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC5G,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC5G,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,kCAAkC;YAClC,sEAAsE;YACtE,KAAK,aAAa,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3F,KAAK,cAAc,CAAC,CAAC,OAAO,yBAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAClF,KAAK,aAAa,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACnH,KAAK,kBAAkB,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACxF,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1E,KAAK,gBAAgB,CAAC,CAAC,OAAO,yBAAW,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvE,KAAK,aAAa,CAAC,CAAC,OAAO,CAAC,MAAM,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9F,KAAK,aAAa,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACxF,KAAK,aAAa,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1E,KAAK,aAAa,CAAC,CAAC,OAAO,yBAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3E,KAAK,YAAY,CAAC,CAAC,OAAO,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClE,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChE,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChE,KAAK,SAAS,CAAC,CAAC,OAAO,yBAAW,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACxF,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1F,KAAK,YAAY,CAAC,CAAC,OAAO,yBAAW,CAAC,iBAAiB,EAAE,CAAC;YAC1D,KAAK,aAAa,CAAC,CAAC,OAAO,yBAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACnF,KAAK,WAAW,CAAC;YACjB,KAAK,kBAAkB,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACzF,KAAK,UAAU,CAAC;YAChB,KAAK,iBAAiB,CAAC,CAAC,OAAO,yBAAW,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrE,KAAK,oBAAoB,CAAC,CAAC,OAAO,yBAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3E,KAAK,UAAU,CAAC,CAAC,OAAO,yBAAW,CAAC,eAAe,EAAE,CAAC;YACtD,KAAK,WAAW,CAAC,CAAC,OAAO,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClE,KAAK,YAAY,CAAC,CAAC,OAAO,yBAAyB,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;YAC5H,KAAK,YAAY;gBACf,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtE,OAAO,QAAQ,IAAI,CAAC,MAAM,eAAe,IAAI,CAAC,KAAK,EAAE,CAAC;YACxD,KAAK,iBAAiB,CAAC;YACvB,KAAK,wBAAwB;gBAC3B,IAAI,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBACpD,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC5B,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;wBACnB,OAAO,yBAAW,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,QAAQ,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzH,CAAC;oBACD,OAAO,yBAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,yBAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3D,KAAK,qBAAqB,CAAC,CAAC,OAAO,yBAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtF,KAAK,qBAAqB,CAAC,CAAC,OAAO,yBAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAClI,KAAK,OAAO,CAAC,CAAC,OAAO,yBAAW,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnF,KAAK,sBAAsB,CAAC,CAAC,OAAO,yBAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzF,KAAK,eAAe,CAAC,CAAC,OAAO,kDAAkD,CAAC;YAChF,KAAK,cAAc,CAAC,CAAC,OAAO,wBAAwB,CAAC;YACrD,OAAO,CAAC,CAAC,OAAO,mBAAmB,QAAQ,sBAAsB,CAAC;QACpE,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,OAAe;QAC9D,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAChF,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC;QAClE,OAAO,sBAAsB,MAAM,EAAE,CAAC;IACxC,CAAC;IAEO,aAAa,CAAC,MAAc,EAAE,OAAc;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC;QACjE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,EAAE,CAAC;YACpC,OAAO,GAAG,MAAM,oBAAoB,OAAO,WAAW,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC;QACpH,CAAC;QACD,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,GAAG,MAAM,mDAAmD,CAAC;QACrG,IAAI,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,GAAG,MAAM,gDAAgD,CAAC;QACrH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,OAAe;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC9D,MAAM,GAAG,GAAG,GAAG,OAAO,4BAA4B,CAAC;QACnD,MAAM,MAAM,GAAG,yGAAyG,OAAO,EAAE,CAAC;QAElI,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAChC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,EAAE;gBAC3B,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,IAAI,CAAC,UAAU;oBACtB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBAC7C,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE;iBAC/D,CAAC;aACH,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAO,wBAAwB,CAAC;YAC7C,MAAM,IAAI,GAAQ,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,uBAAuB,CAAC;QACjC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,QAAe;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC9D,MAAM,GAAG,GAAG,GAAG,OAAO,4BAA4B,CAAC;QACnD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;uDAiBoC,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;YAC/E,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBAChC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACrE,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,EAAE;gBAC3B,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,IAAI,CAAC,UAAU;oBACtB,QAAQ,EAAE,CAAC,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBAC1D,OAAO,EAAE,EAAE,OAAO,EAAE,8BAAa,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;iBACzE,CAAC;aACH,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAO,mCAAmC,CAAC;YACxD,MAAM,IAAI,GAAQ,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,uBAAuB,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,yBAAyB,CAAC;QACnC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,eAAe,CAAC,QAAgB;QAC5C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,wCAAwC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACtF,EAAE,CAAC,QAAQ,CAAC,KAAK,cAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,cAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE;gBACtF,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,IAAY,EAAE,MAAgB;QAC5D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,EAAE,GAAG,EAAE,yBAAyB,MAAM,EAAE,EAAE;aACtD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,iBAAiB,CAAC,KAAa;QACrC,MAAM,QAAQ,GAA2B;YACvC,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,WAAW;YACxB,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,wBAAwB;SACtC,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,CAAC,gBAAgB,CAC7B,QAAe,EACf,KAAa,EACb,MAAoB;QAEpB,MAAM,GAAG,GAAG,sDAAsD,CAAC;QAEnE,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,UAAU,IAAI,CAAC,YAAY,EAAE;YAC9C,QAAQ,EAAE,mBAAmB;SAC9B,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEvD,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,WAAW;gBAClB,QAAQ;gBACR,UAAU,EAAE,KAAK;gBACjB,WAAW,EAAE,GAAG;gBAChB,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,KAAK,IAAI,6BAAmB;gBACnC,WAAW,EAAE,MAAM;aACpB,CAAC;YACF,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,MAAM,MAAM,SAAS,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAErD,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAe,CAAC;QAE3C,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,UAAmC,EAAE,CAAC;YACjE,MAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAAE,SAAS;gBACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;wBACzB,MAAM,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;wBACvD,WAAW,CAAC,KAAK,EAAE,CAAC;oBACtB,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAChC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;oBACzC,IAAI,CAAC,KAAK;wBAAE,SAAS;oBAErB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBAClB,MAAM,KAAK,CAAC,OAAO,CAAC;oBACtB,CAAC;oBAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;wBACrB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;4BAClC,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC;4BAC1B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gCAC1B,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE;oCACnB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,QAAQ,GAAG,EAAE;oCAC1B,IAAI,EAAE,UAAU;oCAChB,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,EAAE;iCACrF,CAAC,CAAC;4BACL,CAAC;4BACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;4BACtC,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI;gCAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;4BACjE,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS;gCAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;wBACnF,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC;QAED,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;QACzD,CAAC;IACH,CAAC;CACF;AA18BD,sCA08BC"}
|
|
1
|
+
{"version":3,"file":"CoWorkerAgent.js","sourceRoot":"","sources":["../../src/core/CoWorkerAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserService.d.ts","sourceRoot":"","sources":["../../src/services/BrowserService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"BrowserService.d.ts","sourceRoot":"","sources":["../../src/services/BrowserService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAe3D,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAUjE;AAoHD,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,WAAW,GAAE,MAAe,EAC5B,QAAQ,GAAE,OAAc,GACvB,OAAO,CAAC,sBAAsB,CAAC,CA4CjC"}
|
|
@@ -39,8 +39,15 @@ const browser_manager_1 = require("./browser/browser-manager");
|
|
|
39
39
|
const script_runner_quickjs_1 = require("./browser/sandbox/script-runner-quickjs");
|
|
40
40
|
const local_endpoint_1 = require("./browser/local-endpoint");
|
|
41
41
|
const temp_files_1 = require("./browser/temp-files");
|
|
42
|
+
const setup_1 = require("../utils/claudeInChrome/setup");
|
|
43
|
+
const common_1 = require("../utils/claudeInChrome/common");
|
|
44
|
+
const path = __importStar(require("path"));
|
|
42
45
|
const fs = __importStar(require("fs"));
|
|
46
|
+
const child_process_1 = require("child_process");
|
|
43
47
|
let manager = null;
|
|
48
|
+
let nativeHostProcess = null;
|
|
49
|
+
let nativeHostReady = false;
|
|
50
|
+
let nativeHostReadyPromise = null;
|
|
44
51
|
async function getBrowserManager() {
|
|
45
52
|
if (!manager) {
|
|
46
53
|
const browsersDir = (0, local_endpoint_1.getBrowsersDir)();
|
|
@@ -52,10 +59,114 @@ async function getBrowserManager() {
|
|
|
52
59
|
}
|
|
53
60
|
return manager;
|
|
54
61
|
}
|
|
62
|
+
async function startNativeHost() {
|
|
63
|
+
if (nativeHostReady)
|
|
64
|
+
return;
|
|
65
|
+
if (nativeHostReadyPromise) {
|
|
66
|
+
await nativeHostReadyPromise;
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
nativeHostReadyPromise = doStartNativeHost();
|
|
70
|
+
await nativeHostReadyPromise;
|
|
71
|
+
}
|
|
72
|
+
async function doStartNativeHost() {
|
|
73
|
+
const extPath = await (0, setup_1.getExtensionPath)();
|
|
74
|
+
if (!extPath) {
|
|
75
|
+
console.log('[CoWorker] Extension path not found, skipping native host');
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
const platform_os = process.platform;
|
|
79
|
+
const chromeDir = path.join(process.env.USERPROFILE || process.env.HOME || '', '.coworker', 'chrome');
|
|
80
|
+
if (!fs.existsSync(chromeDir)) {
|
|
81
|
+
fs.mkdirSync(chromeDir, { recursive: true });
|
|
82
|
+
}
|
|
83
|
+
const wrapperPath = platform_os === 'win32'
|
|
84
|
+
? path.join(chromeDir, 'coworker-chrome-native-host.bat')
|
|
85
|
+
: path.join(chromeDir, 'coworker-chrome-native-host');
|
|
86
|
+
const execCommand = process.execPath;
|
|
87
|
+
const nativeHostJsPath = path.join(__dirname, '..', 'utils', 'claudeInChrome', 'chromeNativeHost.js');
|
|
88
|
+
const scriptContent = platform_os === 'win32'
|
|
89
|
+
? `@echo off\nREM CoWorker Chrome native host wrapper\n"${execCommand}" "${nativeHostJsPath}" --coworker-chrome-native-host\n`
|
|
90
|
+
: `#!/bin/sh\n# CoWorker Chrome native host wrapper\nexec ${execCommand} "${nativeHostJsPath}" --coworker-chrome-native-host\n`;
|
|
91
|
+
fs.writeFileSync(wrapperPath, scriptContent);
|
|
92
|
+
if (platform_os !== 'win32') {
|
|
93
|
+
fs.chmodSync(wrapperPath, 0o755);
|
|
94
|
+
}
|
|
95
|
+
const manifestDir = platform_os === 'win32'
|
|
96
|
+
? path.join(process.env.APPDATA || '', 'CoWorker', 'ChromeNativeHost')
|
|
97
|
+
: platform_os === 'darwin'
|
|
98
|
+
? path.join(process.env.HOME || '', 'Library', 'Application Support', 'CoWorker', 'ChromeNativeHost')
|
|
99
|
+
: path.join(process.env.HOME || '', '.config', 'coworker', 'ChromeNativeHost');
|
|
100
|
+
if (!fs.existsSync(manifestDir)) {
|
|
101
|
+
fs.mkdirSync(manifestDir, { recursive: true });
|
|
102
|
+
}
|
|
103
|
+
const manifest = {
|
|
104
|
+
name: 'com.coworker.chrome_native_host',
|
|
105
|
+
description: 'CoWorker Chrome Native Host - MCP Bridge for browser automation',
|
|
106
|
+
path: wrapperPath,
|
|
107
|
+
type: 'stdio',
|
|
108
|
+
allowed_origins: [
|
|
109
|
+
'chrome-extension://coworker-browser-control/',
|
|
110
|
+
],
|
|
111
|
+
};
|
|
112
|
+
const manifestPath = path.join(manifestDir, 'com.coworker.chrome_native_host.json');
|
|
113
|
+
fs.writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
|
|
114
|
+
console.log('[CoWorker] Installed native host manifest at:', manifestPath);
|
|
115
|
+
const socketPath = (0, common_1.getSecureSocketPath)();
|
|
116
|
+
const readyFile = socketPath + '.ready';
|
|
117
|
+
// Clean up stale ready file
|
|
118
|
+
try {
|
|
119
|
+
fs.unlinkSync(readyFile);
|
|
120
|
+
}
|
|
121
|
+
catch { }
|
|
122
|
+
nativeHostProcess = (0, child_process_1.spawn)(process.execPath, [nativeHostJsPath, '--coworker-chrome-native-host'], {
|
|
123
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
124
|
+
detached: false,
|
|
125
|
+
env: { ...process.env, COWORKER_NATIVE_SOCKET: socketPath },
|
|
126
|
+
});
|
|
127
|
+
nativeHostProcess.stdout?.on('data', (data) => {
|
|
128
|
+
const msg = data.toString().trim();
|
|
129
|
+
console.log('[CoWorker Native Host]', msg);
|
|
130
|
+
if (msg.includes('Socket server listening')) {
|
|
131
|
+
fs.writeFileSync(readyFile, Date.now().toString());
|
|
132
|
+
nativeHostReady = true;
|
|
133
|
+
console.log('[CoWorker] Native host ready, socket:', socketPath);
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
nativeHostProcess.stderr?.on('data', (data) => {
|
|
137
|
+
console.error('[CoWorker Native Host Error]', data.toString().trim());
|
|
138
|
+
});
|
|
139
|
+
nativeHostProcess.on('error', (err) => {
|
|
140
|
+
console.error('[CoWorker] Failed to start native host:', err);
|
|
141
|
+
nativeHostReady = false;
|
|
142
|
+
});
|
|
143
|
+
nativeHostProcess.on('exit', (code) => {
|
|
144
|
+
console.log('[CoWorker] Native host exited with code:', code);
|
|
145
|
+
nativeHostReady = false;
|
|
146
|
+
try {
|
|
147
|
+
fs.unlinkSync(readyFile);
|
|
148
|
+
}
|
|
149
|
+
catch { }
|
|
150
|
+
});
|
|
151
|
+
// Wait for native host to be ready (up to 10 seconds)
|
|
152
|
+
const startTime = Date.now();
|
|
153
|
+
while (!nativeHostReady && Date.now() - startTime < 10000) {
|
|
154
|
+
await new Promise(r => setTimeout(r, 100));
|
|
155
|
+
}
|
|
156
|
+
if (!nativeHostReady) {
|
|
157
|
+
console.log('[CoWorker] Native host did not become ready within 10 seconds');
|
|
158
|
+
}
|
|
159
|
+
}
|
|
55
160
|
async function executeBrowserScript(script, browserName = "main", headless = true) {
|
|
56
161
|
const mgr = await getBrowserManager();
|
|
162
|
+
// Check if we should enable Chrome extension
|
|
163
|
+
const shouldEnableExt = (0, setup_1.shouldEnableChromeExtension)(undefined);
|
|
57
164
|
// Ensure browser is launched
|
|
58
165
|
await mgr.ensureBrowser(browserName, { headless });
|
|
166
|
+
// Start native host if extension is enabled
|
|
167
|
+
if (shouldEnableExt) {
|
|
168
|
+
await startNativeHost();
|
|
169
|
+
}
|
|
59
170
|
let stdout = "";
|
|
60
171
|
let stderr = "";
|
|
61
172
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserService.js","sourceRoot":"","sources":["../../src/services/BrowserService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"BrowserService.js","sourceRoot":"","sources":["../../src/services/BrowserService.ts"],"names":[],"mappings":"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"}
|