@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.
Files changed (221) hide show
  1. package/LICENSE +99 -0
  2. package/dist/cli/index.d.ts.map +1 -1
  3. package/dist/cli/index.js +3 -8
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/commands/slash/mem.d.ts +3 -0
  6. package/dist/commands/slash/mem.d.ts.map +1 -0
  7. package/dist/commands/slash/mem.js +167 -0
  8. package/dist/commands/slash/mem.js.map +1 -0
  9. package/dist/commands/slash/registry.d.ts.map +1 -1
  10. package/dist/commands/slash/registry.js +2 -0
  11. package/dist/commands/slash/registry.js.map +1 -1
  12. package/dist/core/CoWorkerAgent.d.ts +4 -1
  13. package/dist/core/CoWorkerAgent.d.ts.map +1 -1
  14. package/dist/core/CoWorkerAgent.js +159 -12
  15. package/dist/core/CoWorkerAgent.js.map +1 -1
  16. package/dist/services/BrowserService.d.ts.map +1 -1
  17. package/dist/services/BrowserService.js +111 -0
  18. package/dist/services/BrowserService.js.map +1 -1
  19. package/dist/services/ChromeExtensionService.d.ts +63 -0
  20. package/dist/services/ChromeExtensionService.d.ts.map +1 -0
  21. package/dist/services/ChromeExtensionService.js +237 -0
  22. package/dist/services/ChromeExtensionService.js.map +1 -0
  23. package/dist/services/browser/browser-manager.d.ts +2 -0
  24. package/dist/services/browser/browser-manager.d.ts.map +1 -1
  25. package/dist/services/browser/browser-manager.js +13 -4
  26. package/dist/services/browser/browser-manager.js.map +1 -1
  27. package/dist/services/browser/protocol.d.ts +4 -4
  28. package/dist/services/browser/sandbox/quickjs-sandbox.d.ts.map +1 -1
  29. package/dist/services/browser/sandbox/quickjs-sandbox.js +71 -1
  30. package/dist/services/browser/sandbox/quickjs-sandbox.js.map +1 -1
  31. package/dist/services/compact/CompactService.d.ts +22 -0
  32. package/dist/services/compact/CompactService.d.ts.map +1 -0
  33. package/dist/services/compact/CompactService.js +156 -0
  34. package/dist/services/compact/CompactService.js.map +1 -0
  35. package/dist/session/db.d.ts +29 -0
  36. package/dist/session/db.d.ts.map +1 -1
  37. package/dist/session/db.js +74 -0
  38. package/dist/session/db.js.map +1 -1
  39. package/dist/tasks/LocalBashTask.d.ts +18 -0
  40. package/dist/tasks/LocalBashTask.d.ts.map +1 -0
  41. package/dist/tasks/LocalBashTask.js +83 -0
  42. package/dist/tasks/LocalBashTask.js.map +1 -0
  43. package/dist/tasks/Task.d.ts +34 -0
  44. package/dist/tasks/Task.d.ts.map +1 -0
  45. package/dist/tasks/Task.js +98 -0
  46. package/dist/tasks/Task.js.map +1 -0
  47. package/dist/tasks/diskOutput.d.ts +13 -0
  48. package/dist/tasks/diskOutput.d.ts.map +1 -0
  49. package/dist/tasks/diskOutput.js +168 -0
  50. package/dist/tasks/diskOutput.js.map +1 -0
  51. package/dist/tasks/index.d.ts +7 -0
  52. package/dist/tasks/index.d.ts.map +1 -0
  53. package/dist/tasks/index.js +19 -0
  54. package/dist/tasks/index.js.map +1 -0
  55. package/dist/tools/AgentTool.d.ts +41 -0
  56. package/dist/tools/AgentTool.d.ts.map +1 -0
  57. package/dist/tools/AgentTool.js +32 -0
  58. package/dist/tools/AgentTool.js.map +1 -0
  59. package/dist/tools/AskUserQuestionTool.d.ts +71 -0
  60. package/dist/tools/AskUserQuestionTool.d.ts.map +1 -0
  61. package/dist/tools/AskUserQuestionTool.js +33 -0
  62. package/dist/tools/AskUserQuestionTool.js.map +1 -0
  63. package/dist/tools/BashTool.d.ts +43 -0
  64. package/dist/tools/BashTool.d.ts.map +1 -0
  65. package/dist/tools/BashTool.js +97 -0
  66. package/dist/tools/BashTool.js.map +1 -0
  67. package/dist/tools/BriefTool.d.ts +23 -0
  68. package/dist/tools/BriefTool.d.ts.map +1 -0
  69. package/dist/tools/BriefTool.js +61 -0
  70. package/dist/tools/BriefTool.js.map +1 -0
  71. package/dist/tools/ConfigTool.d.ts +35 -0
  72. package/dist/tools/ConfigTool.d.ts.map +1 -0
  73. package/dist/tools/ConfigTool.js +81 -0
  74. package/dist/tools/ConfigTool.js.map +1 -0
  75. package/dist/tools/EnterPlanModeTool.d.ts +23 -0
  76. package/dist/tools/EnterPlanModeTool.d.ts.map +1 -0
  77. package/dist/tools/EnterPlanModeTool.js +21 -0
  78. package/dist/tools/EnterPlanModeTool.js.map +1 -0
  79. package/dist/tools/ExitPlanModeTool.d.ts +23 -0
  80. package/dist/tools/ExitPlanModeTool.d.ts.map +1 -0
  81. package/dist/tools/ExitPlanModeTool.js +21 -0
  82. package/dist/tools/ExitPlanModeTool.js.map +1 -0
  83. package/dist/tools/FileEditTool.d.ts +41 -0
  84. package/dist/tools/FileEditTool.d.ts.map +1 -0
  85. package/dist/tools/FileEditTool.js +81 -0
  86. package/dist/tools/FileEditTool.js.map +1 -0
  87. package/dist/tools/FileReadTool.d.ts +35 -0
  88. package/dist/tools/FileReadTool.d.ts.map +1 -0
  89. package/dist/tools/FileReadTool.js +74 -0
  90. package/dist/tools/FileReadTool.js.map +1 -0
  91. package/dist/tools/FileWriteTool.d.ts +29 -0
  92. package/dist/tools/FileWriteTool.d.ts.map +1 -0
  93. package/dist/tools/FileWriteTool.js +67 -0
  94. package/dist/tools/FileWriteTool.js.map +1 -0
  95. package/dist/tools/GlobTool.d.ts +30 -0
  96. package/dist/tools/GlobTool.d.ts.map +1 -0
  97. package/dist/tools/GlobTool.js +98 -0
  98. package/dist/tools/GlobTool.js.map +1 -0
  99. package/dist/tools/GrepTool.d.ts +36 -0
  100. package/dist/tools/GrepTool.d.ts.map +1 -0
  101. package/dist/tools/GrepTool.js +112 -0
  102. package/dist/tools/GrepTool.js.map +1 -0
  103. package/dist/tools/LSPToolWrapper.d.ts +42 -0
  104. package/dist/tools/LSPToolWrapper.d.ts.map +1 -0
  105. package/dist/tools/LSPToolWrapper.js +49 -0
  106. package/dist/tools/LSPToolWrapper.js.map +1 -0
  107. package/dist/tools/ListMcpResourcesTool.d.ts +11 -0
  108. package/dist/tools/ListMcpResourcesTool.d.ts.map +1 -0
  109. package/dist/tools/ListMcpResourcesTool.js +19 -0
  110. package/dist/tools/ListMcpResourcesTool.js.map +1 -0
  111. package/dist/tools/NotebookEditTool.d.ts +41 -0
  112. package/dist/tools/NotebookEditTool.d.ts.map +1 -0
  113. package/dist/tools/NotebookEditTool.js +30 -0
  114. package/dist/tools/NotebookEditTool.js.map +1 -0
  115. package/dist/tools/SchemaGenerator.d.ts +3 -0
  116. package/dist/tools/SchemaGenerator.d.ts.map +1 -0
  117. package/dist/tools/SchemaGenerator.js +69 -0
  118. package/dist/tools/SchemaGenerator.js.map +1 -0
  119. package/dist/tools/SkillTool.d.ts +29 -0
  120. package/dist/tools/SkillTool.d.ts.map +1 -0
  121. package/dist/tools/SkillTool.js +28 -0
  122. package/dist/tools/SkillTool.js.map +1 -0
  123. package/dist/tools/TaskCreateTool.d.ts +41 -0
  124. package/dist/tools/TaskCreateTool.d.ts.map +1 -0
  125. package/dist/tools/TaskCreateTool.js +67 -0
  126. package/dist/tools/TaskCreateTool.js.map +1 -0
  127. package/dist/tools/TaskGetTool.d.ts +23 -0
  128. package/dist/tools/TaskGetTool.d.ts.map +1 -0
  129. package/dist/tools/TaskGetTool.js +66 -0
  130. package/dist/tools/TaskGetTool.js.map +1 -0
  131. package/dist/tools/TaskListTool.d.ts +11 -0
  132. package/dist/tools/TaskListTool.d.ts.map +1 -0
  133. package/dist/tools/TaskListTool.js +64 -0
  134. package/dist/tools/TaskListTool.js.map +1 -0
  135. package/dist/tools/TaskOutputTool.d.ts +29 -0
  136. package/dist/tools/TaskOutputTool.d.ts.map +1 -0
  137. package/dist/tools/TaskOutputTool.js +66 -0
  138. package/dist/tools/TaskOutputTool.js.map +1 -0
  139. package/dist/tools/TaskStopTool.d.ts +23 -0
  140. package/dist/tools/TaskStopTool.d.ts.map +1 -0
  141. package/dist/tools/TaskStopTool.js +66 -0
  142. package/dist/tools/TaskStopTool.js.map +1 -0
  143. package/dist/tools/TaskUpdateTool.d.ts +79 -0
  144. package/dist/tools/TaskUpdateTool.d.ts.map +1 -0
  145. package/dist/tools/TaskUpdateTool.js +73 -0
  146. package/dist/tools/TaskUpdateTool.js.map +1 -0
  147. package/dist/tools/TodoWriteTool.d.ts +63 -0
  148. package/dist/tools/TodoWriteTool.d.ts.map +1 -0
  149. package/dist/tools/TodoWriteTool.js +79 -0
  150. package/dist/tools/TodoWriteTool.js.map +1 -0
  151. package/dist/tools/Tool.d.ts +32 -0
  152. package/dist/tools/Tool.d.ts.map +1 -0
  153. package/dist/tools/Tool.js +20 -0
  154. package/dist/tools/Tool.js.map +1 -0
  155. package/dist/tools/ToolContext.d.ts +12 -0
  156. package/dist/tools/ToolContext.d.ts.map +1 -0
  157. package/dist/tools/ToolContext.js +3 -0
  158. package/dist/tools/ToolContext.js.map +1 -0
  159. package/dist/tools/ToolSearchTool.d.ts +23 -0
  160. package/dist/tools/ToolSearchTool.d.ts.map +1 -0
  161. package/dist/tools/ToolSearchTool.js +62 -0
  162. package/dist/tools/ToolSearchTool.js.map +1 -0
  163. package/dist/tools/WebFetchTool.d.ts +29 -0
  164. package/dist/tools/WebFetchTool.d.ts.map +1 -0
  165. package/dist/tools/WebFetchTool.js +42 -0
  166. package/dist/tools/WebFetchTool.js.map +1 -0
  167. package/dist/tools/WebSearchTool.d.ts +23 -0
  168. package/dist/tools/WebSearchTool.d.ts.map +1 -0
  169. package/dist/tools/WebSearchTool.js +38 -0
  170. package/dist/tools/WebSearchTool.js.map +1 -0
  171. package/dist/tools/bash/readOnly.d.ts +7 -0
  172. package/dist/tools/bash/readOnly.d.ts.map +1 -0
  173. package/dist/tools/bash/readOnly.js +41 -0
  174. package/dist/tools/bash/readOnly.js.map +1 -0
  175. package/dist/tools/bash/sandbox.d.ts +3 -0
  176. package/dist/tools/bash/sandbox.d.ts.map +1 -0
  177. package/dist/tools/bash/sandbox.js +27 -0
  178. package/dist/tools/bash/sandbox.js.map +1 -0
  179. package/dist/tools/bash/semantic.d.ts +5 -0
  180. package/dist/tools/bash/semantic.d.ts.map +1 -0
  181. package/dist/tools/bash/semantic.js +106 -0
  182. package/dist/tools/bash/semantic.js.map +1 -0
  183. package/dist/tools/index.d.ts +26 -0
  184. package/dist/tools/index.d.ts.map +1 -0
  185. package/dist/tools/index.js +74 -0
  186. package/dist/tools/index.js.map +1 -0
  187. package/dist/utils/claudeInChrome/chromeNativeHost.d.ts +3 -0
  188. package/dist/utils/claudeInChrome/chromeNativeHost.d.ts.map +1 -0
  189. package/dist/utils/claudeInChrome/chromeNativeHost.js +376 -0
  190. package/dist/utils/claudeInChrome/chromeNativeHost.js.map +1 -0
  191. package/dist/utils/claudeInChrome/common.d.ts +32 -0
  192. package/dist/utils/claudeInChrome/common.d.ts.map +1 -0
  193. package/dist/utils/claudeInChrome/common.js +301 -0
  194. package/dist/utils/claudeInChrome/common.js.map +1 -0
  195. package/dist/utils/claudeInChrome/mcpServer.d.ts +2 -0
  196. package/dist/utils/claudeInChrome/mcpServer.d.ts.map +1 -0
  197. package/dist/utils/claudeInChrome/mcpServer.js +143 -0
  198. package/dist/utils/claudeInChrome/mcpServer.js.map +1 -0
  199. package/dist/utils/claudeInChrome/setup.d.ts +22 -0
  200. package/dist/utils/claudeInChrome/setup.d.ts.map +1 -0
  201. package/dist/utils/claudeInChrome/setup.js +202 -0
  202. package/dist/utils/claudeInChrome/setup.js.map +1 -0
  203. package/dist/utils/contextManager.d.ts +1 -1
  204. package/dist/utils/contextManager.d.ts.map +1 -1
  205. package/dist/utils/contextManager.js +1 -1
  206. package/dist/utils/contextManager.js.map +1 -1
  207. package/dist/utils/features.d.ts +3 -0
  208. package/dist/utils/features.d.ts.map +1 -0
  209. package/dist/utils/features.js +31 -0
  210. package/dist/utils/features.js.map +1 -0
  211. package/dist/utils/inputbar.d.ts +2 -2
  212. package/dist/utils/inputbar.d.ts.map +1 -1
  213. package/dist/utils/inputbar.js +7 -6
  214. package/dist/utils/inputbar.js.map +1 -1
  215. package/dist/utils/output.js +1 -1
  216. package/dist/utils/output.js.map +1 -1
  217. package/dist/utils/permissions.d.ts +18 -0
  218. package/dist/utils/permissions.d.ts.map +1 -0
  219. package/dist/utils/permissions.js +25 -0
  220. package/dist/utils/permissions.js.map +1 -0
  221. 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 (Context 2.0)
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.performTwoPhaseCompaction(async (content) => this.summarizeChunk(content), 10 // Keep last 10 messages raw
240
- );
241
- if (result.savedTokens > 0) {
242
- yield ` [DONE] optimized · saved ~${result.savedTokens.toLocaleString()} tokens\n`;
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: if tool pruning wasn't enough, do a full summary
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: contextManager_1.CONTEXT_LIMIT, num_predict: 4096, temperature: 0.7 }
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.2 }
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: contextManager_1.CONTEXT_LIMIT, num_predict: 2048, temperature: 0.3 }
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":"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"}
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;AAS3D,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAUjE;AAED,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,CAoCjC"}
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,8CAUC;AAUD,oDAwCC;AArED,+DAA2D;AAC3D,mFAAoE;AACpE,6DAA0D;AAC1D,qDAA+D;AAE/D,uCAAyB;AAEzB,IAAI,OAAO,GAA0B,IAAI,CAAC;AAEnC,KAAK,UAAU,iBAAiB;IACrC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,WAAW,GAAG,IAAA,+BAAc,GAAE,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,IAAA,oCAAuB,GAAE,CAAC;QAChC,OAAO,GAAG,IAAI,gCAAc,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAUM,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,cAAsB,MAAM,EAC5B,WAAoB,IAAI;IAExB,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAEtC,6BAA6B;IAC7B,MAAM,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEnD,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,IAAA,iCAAS,EAClC,MAAM,EACN,GAAG,EACH,WAAW,EACX;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC;YACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC;SACxC,EACD,EAAE,OAAO,EAAE,KAAK,EAAE,CACnB,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;YACrB,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;YACrB,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,YAAY,CAAC,WAAW;SACtC,CAAC;IACJ,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;YACrB,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;YACrB,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,EAAE;YACf,KAAK,EAAE,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC;SAC9B,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"BrowserService.js","sourceRoot":"","sources":["../../src/services/BrowserService.ts"],"names":[],"mappings":"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"}