@sylix/coworker 1.1.4 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/dist/cli/index.d.ts +7 -0
  2. package/dist/cli/index.d.ts.map +1 -0
  3. package/dist/cli/index.js +183 -0
  4. package/dist/cli/index.js.map +1 -0
  5. package/dist/config/SettingsManager.d.ts +25 -0
  6. package/dist/config/SettingsManager.d.ts.map +1 -0
  7. package/dist/config/SettingsManager.js +96 -0
  8. package/dist/config/SettingsManager.js.map +1 -0
  9. package/dist/core/CoWorkerAgent.d.ts +52 -0
  10. package/dist/core/CoWorkerAgent.d.ts.map +1 -0
  11. package/dist/core/CoWorkerAgent.js +308 -0
  12. package/dist/core/CoWorkerAgent.js.map +1 -0
  13. package/dist/mcp/MCPClientManager.d.ts +30 -0
  14. package/dist/mcp/MCPClientManager.d.ts.map +1 -0
  15. package/dist/mcp/MCPClientManager.js +100 -0
  16. package/dist/mcp/MCPClientManager.js.map +1 -0
  17. package/dist/permissions/PermissionInterceptor.d.ts +21 -0
  18. package/dist/permissions/PermissionInterceptor.d.ts.map +1 -0
  19. package/dist/permissions/PermissionInterceptor.js +104 -0
  20. package/dist/permissions/PermissionInterceptor.js.map +1 -0
  21. package/dist/session/SessionManager.d.ts +38 -0
  22. package/dist/session/SessionManager.d.ts.map +1 -0
  23. package/dist/session/SessionManager.js +129 -0
  24. package/dist/session/SessionManager.js.map +1 -0
  25. package/dist/skills/HookAndSkillManager.d.ts +37 -0
  26. package/dist/skills/HookAndSkillManager.d.ts.map +1 -0
  27. package/dist/skills/HookAndSkillManager.js +141 -0
  28. package/dist/skills/HookAndSkillManager.js.map +1 -0
  29. package/dist/task/TaskEngine.d.ts +29 -0
  30. package/dist/task/TaskEngine.d.ts.map +1 -0
  31. package/dist/task/TaskEngine.js +117 -0
  32. package/dist/task/TaskEngine.js.map +1 -0
  33. package/dist/tools/CronManager.d.ts +22 -0
  34. package/dist/tools/CronManager.d.ts.map +1 -0
  35. package/dist/tools/CronManager.js +44 -0
  36. package/dist/tools/CronManager.js.map +1 -0
  37. package/dist/tools/NativeTools.d.ts +33 -0
  38. package/dist/tools/NativeTools.d.ts.map +1 -0
  39. package/dist/tools/NativeTools.js +175 -0
  40. package/dist/tools/NativeTools.js.map +1 -0
  41. package/dist/tools/Schemas.d.ts +365 -0
  42. package/dist/tools/Schemas.d.ts.map +1 -0
  43. package/dist/tools/Schemas.js +177 -0
  44. package/dist/tools/Schemas.js.map +1 -0
  45. package/dist/ui/InkUI.d.ts +2 -0
  46. package/dist/ui/InkUI.d.ts.map +1 -0
  47. package/dist/ui/InkUI.js +11 -0
  48. package/dist/ui/InkUI.js.map +1 -0
  49. package/package.json +18 -8
  50. package/dist/agents/runner.d.ts +0 -19
  51. package/dist/agents/runner.d.ts.map +0 -1
  52. package/dist/agents/runner.js +0 -170
  53. package/dist/agents/runner.js.map +0 -1
  54. package/dist/api/sylix.d.ts +0 -53
  55. package/dist/api/sylix.d.ts.map +0 -1
  56. package/dist/api/sylix.js +0 -237
  57. package/dist/api/sylix.js.map +0 -1
  58. package/dist/cli.d.ts +0 -3
  59. package/dist/cli.d.ts.map +0 -1
  60. package/dist/cli.js +0 -369
  61. package/dist/cli.js.map +0 -1
  62. package/dist/commands/ask.d.ts +0 -2
  63. package/dist/commands/ask.d.ts.map +0 -1
  64. package/dist/commands/ask.js +0 -55
  65. package/dist/commands/ask.js.map +0 -1
  66. package/dist/commands/chat.d.ts +0 -8
  67. package/dist/commands/chat.d.ts.map +0 -1
  68. package/dist/commands/chat.js +0 -479
  69. package/dist/commands/chat.js.map +0 -1
  70. package/dist/commands/commit.d.ts +0 -2
  71. package/dist/commands/commit.d.ts.map +0 -1
  72. package/dist/commands/commit.js +0 -163
  73. package/dist/commands/commit.js.map +0 -1
  74. package/dist/commands/config.d.ts +0 -3
  75. package/dist/commands/config.d.ts.map +0 -1
  76. package/dist/commands/config.js +0 -101
  77. package/dist/commands/config.js.map +0 -1
  78. package/dist/commands/edit.d.ts +0 -2
  79. package/dist/commands/edit.d.ts.map +0 -1
  80. package/dist/commands/edit.js +0 -112
  81. package/dist/commands/edit.js.map +0 -1
  82. package/dist/commands/explain.d.ts +0 -2
  83. package/dist/commands/explain.d.ts.map +0 -1
  84. package/dist/commands/explain.js +0 -99
  85. package/dist/commands/explain.js.map +0 -1
  86. package/dist/commands/login.d.ts +0 -2
  87. package/dist/commands/login.d.ts.map +0 -1
  88. package/dist/commands/login.js +0 -151
  89. package/dist/commands/login.js.map +0 -1
  90. package/dist/commands/review.d.ts +0 -2
  91. package/dist/commands/review.d.ts.map +0 -1
  92. package/dist/commands/review.js +0 -137
  93. package/dist/commands/review.js.map +0 -1
  94. package/dist/commands/run.d.ts +0 -2
  95. package/dist/commands/run.d.ts.map +0 -1
  96. package/dist/commands/run.js +0 -136
  97. package/dist/commands/run.js.map +0 -1
  98. package/dist/config/settings.d.ts +0 -33
  99. package/dist/config/settings.d.ts.map +0 -1
  100. package/dist/config/settings.js +0 -72
  101. package/dist/config/settings.js.map +0 -1
  102. package/dist/context/reader.d.ts +0 -24
  103. package/dist/context/reader.d.ts.map +0 -1
  104. package/dist/context/reader.js +0 -209
  105. package/dist/context/reader.js.map +0 -1
  106. package/dist/hooks/engine.d.ts +0 -9
  107. package/dist/hooks/engine.d.ts.map +0 -1
  108. package/dist/hooks/engine.js +0 -85
  109. package/dist/hooks/engine.js.map +0 -1
  110. package/dist/mcp/client.d.ts +0 -15
  111. package/dist/mcp/client.d.ts.map +0 -1
  112. package/dist/mcp/client.js +0 -211
  113. package/dist/mcp/client.js.map +0 -1
  114. package/dist/mcp/transport.d.ts +0 -46
  115. package/dist/mcp/transport.d.ts.map +0 -1
  116. package/dist/mcp/transport.js +0 -196
  117. package/dist/mcp/transport.js.map +0 -1
  118. package/dist/memory/loader.d.ts +0 -41
  119. package/dist/memory/loader.d.ts.map +0 -1
  120. package/dist/memory/loader.js +0 -249
  121. package/dist/memory/loader.js.map +0 -1
  122. package/dist/permissions/manager.d.ts +0 -7
  123. package/dist/permissions/manager.d.ts.map +0 -1
  124. package/dist/permissions/manager.js +0 -125
  125. package/dist/permissions/manager.js.map +0 -1
  126. package/dist/scripts/postinstall.d.ts +0 -7
  127. package/dist/scripts/postinstall.d.ts.map +0 -1
  128. package/dist/scripts/postinstall.js +0 -23
  129. package/dist/scripts/postinstall.js.map +0 -1
  130. package/dist/session/memory.d.ts +0 -6
  131. package/dist/session/memory.d.ts.map +0 -1
  132. package/dist/session/memory.js +0 -81
  133. package/dist/session/memory.js.map +0 -1
  134. package/dist/session/store.d.ts +0 -19
  135. package/dist/session/store.d.ts.map +0 -1
  136. package/dist/session/store.js +0 -94
  137. package/dist/session/store.js.map +0 -1
  138. package/dist/tools/bash.d.ts +0 -2
  139. package/dist/tools/bash.d.ts.map +0 -1
  140. package/dist/tools/bash.js +0 -40
  141. package/dist/tools/bash.js.map +0 -1
  142. package/dist/tools/chrome.d.ts +0 -10
  143. package/dist/tools/chrome.d.ts.map +0 -1
  144. package/dist/tools/chrome.js +0 -228
  145. package/dist/tools/chrome.js.map +0 -1
  146. package/dist/tools/edit.d.ts +0 -2
  147. package/dist/tools/edit.d.ts.map +0 -1
  148. package/dist/tools/edit.js +0 -67
  149. package/dist/tools/edit.js.map +0 -1
  150. package/dist/tools/glob.d.ts +0 -10
  151. package/dist/tools/glob.d.ts.map +0 -1
  152. package/dist/tools/glob.js +0 -245
  153. package/dist/tools/glob.js.map +0 -1
  154. package/dist/tools/grep.d.ts +0 -10
  155. package/dist/tools/grep.d.ts.map +0 -1
  156. package/dist/tools/grep.js +0 -252
  157. package/dist/tools/grep.js.map +0 -1
  158. package/dist/tools/ls.d.ts +0 -2
  159. package/dist/tools/ls.d.ts.map +0 -1
  160. package/dist/tools/ls.js +0 -75
  161. package/dist/tools/ls.js.map +0 -1
  162. package/dist/tools/read.d.ts +0 -2
  163. package/dist/tools/read.d.ts.map +0 -1
  164. package/dist/tools/read.js +0 -72
  165. package/dist/tools/read.js.map +0 -1
  166. package/dist/tools/registry.d.ts +0 -3
  167. package/dist/tools/registry.d.ts.map +0 -1
  168. package/dist/tools/registry.js +0 -281
  169. package/dist/tools/registry.js.map +0 -1
  170. package/dist/tools/schema.json +0 -508
  171. package/dist/tools/task.d.ts +0 -11
  172. package/dist/tools/task.d.ts.map +0 -1
  173. package/dist/tools/task.js +0 -118
  174. package/dist/tools/task.js.map +0 -1
  175. package/dist/tools/web.d.ts +0 -3
  176. package/dist/tools/web.d.ts.map +0 -1
  177. package/dist/tools/web.js +0 -113
  178. package/dist/tools/web.js.map +0 -1
  179. package/dist/tools/write.d.ts +0 -18
  180. package/dist/tools/write.d.ts.map +0 -1
  181. package/dist/tools/write.js +0 -122
  182. package/dist/tools/write.js.map +0 -1
  183. package/dist/utils/output.d.ts +0 -62
  184. package/dist/utils/output.d.ts.map +0 -1
  185. package/dist/utils/output.js +0 -487
  186. package/dist/utils/output.js.map +0 -1
@@ -1,55 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.askCommand = askCommand;
4
- const sylix_1 = require("../api/sylix");
5
- const reader_1 = require("../context/reader");
6
- const output_1 = require("../utils/output");
7
- async function askCommand(prompt, verbose = false) {
8
- const timer = new output_1.Timer();
9
- try {
10
- const cwd = process.cwd();
11
- // Start loading animation
12
- (0, output_1.startLoadingAnimation)();
13
- // Load context in parallel
14
- const contextPromise = (0, reader_1.getContextString)(cwd, prompt);
15
- const messages = [
16
- {
17
- role: 'system',
18
- content: `You are CoWorker, an AI coding assistant by Sylix. You help developers with coding tasks.
19
- Be concise and practical. When showing code, use proper markdown code blocks with language identifiers.
20
- Focus on providing actionable solutions.
21
-
22
- You have access to the current working directory context. Use it to understand the user's codebase.`
23
- },
24
- {
25
- role: 'user',
26
- content: await contextPromise
27
- }
28
- ];
29
- // Start streaming renderer
30
- const renderer = new output_1.StreamingRenderer();
31
- let response = '';
32
- let tokenCount = 0;
33
- await (0, sylix_1.chat)(messages, (chunk) => {
34
- if (!response) {
35
- // First chunk - start the response box
36
- renderer.start();
37
- }
38
- response += chunk;
39
- renderer.write(chunk);
40
- tokenCount++;
41
- });
42
- renderer.end();
43
- // Print stats
44
- (0, output_1.printResponseStats)(timer.elapsed(), verbose ? tokenCount : undefined, verbose);
45
- }
46
- catch (error) {
47
- (0, output_1.stopLoadingAnimation)();
48
- (0, output_1.printError)('Failed to process your request');
49
- if (error instanceof Error) {
50
- console.error(error.message);
51
- }
52
- process.exit(1);
53
- }
54
- }
55
- //# sourceMappingURL=ask.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../src/commands/ask.ts"],"names":[],"mappings":";;AAaA,gCAuDC;AApED,wCAAoC;AACpC,8CAAqD;AACrD,4CAQyB;AAGlB,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,UAAmB,KAAK;IACvE,MAAM,KAAK,GAAG,IAAI,cAAK,EAAE,CAAC;IAE1B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,0BAA0B;QAC1B,IAAA,8BAAqB,GAAE,CAAC;QAExB,2BAA2B;QAC3B,MAAM,cAAc,GAAG,IAAA,yBAAgB,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAErD,MAAM,QAAQ,GAAG;YACf;gBACE,IAAI,EAAE,QAAiB;gBACvB,OAAO,EAAE;;;;oGAImF;aAC7F;YACD;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE,MAAM,cAAc;aAC9B;SACF,CAAC;QAEF,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,IAAI,0BAAiB,EAAE,CAAC;QAEzC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,MAAM,IAAA,YAAI,EAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,uCAAuC;gBACvC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,CAAC;YACD,QAAQ,IAAI,KAAK,CAAC;YAClB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtB,UAAU,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,GAAG,EAAE,CAAC;QAEf,cAAc;QACd,IAAA,2BAAkB,EAAC,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAA,6BAAoB,GAAE,CAAC;QACvB,IAAA,mBAAU,EAAC,gCAAgC,CAAC,CAAC;QAC7C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,8 +0,0 @@
1
- interface ChatOptions {
2
- continueSession?: boolean;
3
- resumeSessionId?: string;
4
- model?: string;
5
- }
6
- export declare function chatCommand(verbose?: boolean, options?: ChatOptions): Promise<void>;
7
- export {};
8
- //# sourceMappingURL=chat.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AA2BA,UAAU,WAAW;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAydzF"}
@@ -1,479 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.chatCommand = chatCommand;
37
- const readline = __importStar(require("readline"));
38
- const sylix_1 = require("../api/sylix");
39
- const output_1 = require("../utils/output");
40
- const registry_1 = require("../tools/registry");
41
- const sylix_2 = require("../api/sylix");
42
- const loader_1 = require("../memory/loader");
43
- const store_1 = require("../session/store");
44
- const memory_1 = require("../session/memory");
45
- const manager_1 = require("../permissions/manager");
46
- const settings_1 = require("../config/settings");
47
- const engine_1 = require("../hooks/engine");
48
- const client_1 = require("../mcp/client");
49
- async function chatCommand(verbose, options) {
50
- await (0, output_1.printHeader)();
51
- (0, output_1.printInfo)('Interactive chat session started. Type "exit" to quit.');
52
- // Initial status check for UI
53
- const config = await (0, sylix_2.loadConfig)();
54
- const settings = (0, settings_1.loadSettings)();
55
- // Apply settings
56
- if (settings.permissions) {
57
- (0, manager_1.setPermissionMode)(settings.permissions);
58
- }
59
- console.log(output_1.theme.dim('Type /help for commands or start chatting.'));
60
- console.log();
61
- const rl = readline.createInterface({
62
- input: process.stdin,
63
- output: process.stdout
64
- });
65
- // Input history
66
- const inputHistory = [];
67
- let historyIndex = -1;
68
- // Load memory context (COWORKER.md chain + auto-memory)
69
- const cwd = process.cwd();
70
- const memCtx = await (0, loader_1.loadMemory)(cwd);
71
- const memoryPrompt = (0, loader_1.buildMemorySystemPrompt)(memCtx);
72
- const hasMemory = !!(memCtx.global || memCtx.project || memCtx.rules.length > 0 || memCtx.autoMemory);
73
- // Load previous session summary for cross-session context
74
- const previousSummary = await (0, memory_1.loadLatestSummary)();
75
- const systemContent = [
76
- `You are CoWorker, an AI coding assistant by Sylix. You help developers write, debug, and understand code.`,
77
- `You have access to tools to read files, run bash commands, edit code, search the web, and manage tasks.`,
78
- `Always be concise, direct, and helpful. Use code blocks when showing code. Remember the conversation context.`,
79
- memoryPrompt ? `\n${memoryPrompt}` : '',
80
- previousSummary ? `\n# Previous Session Context\n${previousSummary}` : ''
81
- ].filter(Boolean).join('\n');
82
- // Session management
83
- let session;
84
- if (options?.continueSession) {
85
- const recent = await (0, store_1.getMostRecentSession)();
86
- if (recent) {
87
- session = recent;
88
- (0, output_1.printInfo)(`Resuming session: ${recent.title}`);
89
- }
90
- else {
91
- session = (0, store_1.createNewSession)();
92
- (0, output_1.printInfo)('No previous session found. Starting new session.');
93
- }
94
- }
95
- else if (options?.resumeSessionId) {
96
- const loaded = await (0, store_1.loadSession)(options.resumeSessionId);
97
- if (loaded) {
98
- session = loaded;
99
- (0, output_1.printInfo)(`Resumed session: ${loaded.title}`);
100
- }
101
- else {
102
- session = (0, store_1.createNewSession)();
103
- (0, output_1.printInfo)(`Session ${options.resumeSessionId} not found. Starting new session.`);
104
- }
105
- }
106
- else {
107
- session = (0, store_1.createNewSession)();
108
- }
109
- const conversationHistory = session.messages.length > 0
110
- ? session.messages
111
- : [{ role: 'system', content: systemContent }];
112
- // Token tracking
113
- let totalTokens = session.tokenCount || 0;
114
- let lastSummaryTokens = 0;
115
- let planMode = false;
116
- if (hasMemory) {
117
- const memSources = [
118
- memCtx.global && 'global',
119
- memCtx.project && 'project',
120
- memCtx.rules.length > 0 && `${memCtx.rules.length} rules`,
121
- memCtx.autoMemory && 'auto-memory'
122
- ].filter(Boolean).join(', ');
123
- console.log(output_1.theme.success(' ✓ Memory loaded: ') + output_1.theme.dim(memSources));
124
- }
125
- if (previousSummary) {
126
- console.log(output_1.theme.success(' ✓ Previous session context loaded'));
127
- }
128
- console.log(output_1.theme.dim(` Session: ${session.id}`));
129
- console.log();
130
- // Run start hooks
131
- await (0, engine_1.runHooks)('Start', {});
132
- // Auto-connect MCP servers from settings
133
- await (0, client_1.autoConnectFromSettings)();
134
- const promptUser = () => {
135
- const width = process.stdout.columns || 80;
136
- const divider = output_1.theme.dim('─'.repeat(width));
137
- const loginStatus = config?.apiKey ? 'Signed in to Sylix' : 'Not logged in · Run /login';
138
- const modeLabel = planMode ? output_1.theme.warning(' [PLAN]') : '';
139
- const shortcuts = '/help for commands';
140
- const paddingLength = Math.max(0, width - loginStatus.length - shortcuts.length - 4);
141
- const padding = ' '.repeat(paddingLength);
142
- console.log();
143
- console.log(divider);
144
- console.log(output_1.theme.dim(' ' + shortcuts) + padding + output_1.theme.dim(loginStatus + ' ') + modeLabel);
145
- console.log(divider);
146
- rl.question(output_1.theme.brand(planMode ? '(plan)> ' : '> ') + ' ', async (input) => {
147
- const message = input.trim();
148
- if (!message) {
149
- promptUser();
150
- return;
151
- }
152
- // Track input history
153
- inputHistory.push(message);
154
- historyIndex = inputHistory.length;
155
- // ─── Slash Commands ───
156
- const cmd = message.toLowerCase();
157
- if (cmd === '/help' || cmd === '?') {
158
- console.log();
159
- console.log(output_1.theme.brand(' CoWorker Commands'));
160
- console.log();
161
- console.log(output_1.theme.dim(' Chat'));
162
- console.log(' exit, quit ' + output_1.theme.dim('End the session'));
163
- console.log(' /clear ' + output_1.theme.dim('Clear chat history'));
164
- console.log(' /compact ' + output_1.theme.dim('Summarize conversation to free context'));
165
- console.log(' /export [filename] ' + output_1.theme.dim('Export conversation to markdown'));
166
- console.log(' /btw <question> ' + output_1.theme.dim('Ask a side question without context break'));
167
- console.log();
168
- console.log(output_1.theme.dim(' Session'));
169
- console.log(' /resume <id> ' + output_1.theme.dim('Resume a previous session'));
170
- console.log(' /sessions ' + output_1.theme.dim('List recent sessions'));
171
- console.log(' /cost ' + output_1.theme.dim('Show token usage for this session'));
172
- console.log();
173
- console.log(output_1.theme.dim(' Model & Mode'));
174
- console.log(' /model <name> ' + output_1.theme.dim('Switch AI model'));
175
- console.log(' /plan ' + output_1.theme.dim('Toggle plan mode (read-only tools)'));
176
- console.log();
177
- console.log(output_1.theme.dim(' Git & Code'));
178
- console.log(' /diff ' + output_1.theme.dim('Show git diff of current changes'));
179
- console.log(' /init ' + output_1.theme.dim('Create COWORKER.md in current directory'));
180
- console.log();
181
- console.log(output_1.theme.dim(' Memory'));
182
- console.log(' /memory ' + output_1.theme.dim('Show all loaded memory sources'));
183
- console.log(' /remember <text> ' + output_1.theme.dim('Save a note to auto-memory'));
184
- console.log();
185
- console.log(output_1.theme.dim(' Chrome'));
186
- console.log(' /chrome ' + output_1.theme.dim('Show browser integration capabilities'));
187
- console.log();
188
- console.log(output_1.theme.dim(' Auth'));
189
- console.log(' /login ' + output_1.theme.dim('Authenticate the CLI'));
190
- console.log();
191
- console.log(output_1.theme.dim(' Keyboard'));
192
- console.log(' Ctrl+C ' + output_1.theme.dim('Interrupt / cancel'));
193
- console.log(' Ctrl+L ' + output_1.theme.dim('Clear screen'));
194
- console.log();
195
- promptUser();
196
- return;
197
- }
198
- if (cmd === '/login') {
199
- const { loginCommand } = await Promise.resolve().then(() => __importStar(require('./login')));
200
- await loginCommand();
201
- promptUser();
202
- return;
203
- }
204
- if (cmd === '/clear') {
205
- conversationHistory.length = 1; // Keep system prompt
206
- totalTokens = 0;
207
- console.clear();
208
- await (0, output_1.printHeader)();
209
- promptUser();
210
- return;
211
- }
212
- if (cmd === '/memory') {
213
- await (0, loader_1.showMemory)(cwd);
214
- promptUser();
215
- return;
216
- }
217
- if (cmd.startsWith('/remember ')) {
218
- const note = message.slice(10).trim();
219
- const noteKey = `note-${Date.now()}`;
220
- await (0, loader_1.writeAutoMemory)(noteKey, note, cwd);
221
- (0, output_1.printSuccess)('Saved to memory: ' + note.substring(0, 60));
222
- promptUser();
223
- return;
224
- }
225
- if (cmd === '/diff') {
226
- const { executeBash } = await Promise.resolve().then(() => __importStar(require('../tools/bash')));
227
- const result = await executeBash({ command: 'git diff' });
228
- console.log(output_1.theme.dim(result || 'No changes'));
229
- promptUser();
230
- return;
231
- }
232
- if (cmd === '/init') {
233
- const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
234
- const coworkerMd = `# COWORKER.md\n\nThis file provides context to CoWorker about your project.\n\n## Project\n<!-- Briefly describe what this project does -->\n\n## Tech Stack\n<!-- e.g. Next.js, TypeScript, Postgres -->\n\n## Key Files\n<!-- List important files/folders and what they do -->\n\n## Conventions\n<!-- Coding standards, naming conventions, etc. -->\n`;
235
- await fs.writeFile('COWORKER.md', coworkerMd, 'utf8');
236
- (0, output_1.printSuccess)('Created COWORKER.md — fill it in to give CoWorker project context!');
237
- promptUser();
238
- return;
239
- }
240
- if (cmd.startsWith('/compact')) {
241
- const summary = conversationHistory.slice(1).map(m => `${m.role}: ${m.content || ''}`).join('\n').substring(0, 3000);
242
- conversationHistory.length = 1;
243
- conversationHistory.push({ role: 'user', content: `Please summarize this conversation so far in a few sentences, then I'll continue: ${summary}` });
244
- (0, output_1.printInfo)('Compacted conversation history. Re-summarizing...');
245
- promptUser();
246
- return;
247
- }
248
- if (cmd.startsWith('/export')) {
249
- const parts = message.split(' ');
250
- const filename = parts[1] || `coworker-export-${Date.now()}.md`;
251
- const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
252
- const exportContent = conversationHistory.slice(1).map(m => {
253
- const role = m.role === 'assistant' ? '**CoWorker**' : '**You**';
254
- return `${role}\n\n${m.content || ''}\n`;
255
- }).join('\n---\n\n');
256
- await fs.writeFile(filename, `# CoWorker Conversation Export\n\n${exportContent}`, 'utf8');
257
- (0, output_1.printSuccess)(`Conversation exported to ${filename}`);
258
- promptUser();
259
- return;
260
- }
261
- if (cmd.startsWith('/btw ')) {
262
- const sideQuestion = message.slice(5).trim();
263
- conversationHistory.push({ role: 'user', content: `[Side question, answer briefly without changing your current task]: ${sideQuestion}` });
264
- // Fall through
265
- }
266
- if (cmd === '/chrome') {
267
- console.log();
268
- console.log(output_1.theme.brand(' Chrome Browser Integration'));
269
- console.log();
270
- console.log(output_1.theme.dim(' CoWorker can control Chrome to:'));
271
- console.log(' ● ' + output_1.theme.dim('Debug live web apps with console log capture'));
272
- console.log(' ● ' + output_1.theme.dim('Navigate, click, fill forms autonomously'));
273
- console.log(' ● ' + output_1.theme.dim('Take screenshots of pages'));
274
- console.log(' ● ' + output_1.theme.dim('Read and summarize page DOM/content'));
275
- console.log(' ● ' + output_1.theme.dim('Execute JavaScript in the browser'));
276
- console.log();
277
- console.log(output_1.theme.dim(' Just ask naturally:'));
278
- console.log(' ' + output_1.theme.brand('> ') + 'Go to localhost:3000 and check the console for errors');
279
- console.log(' ' + output_1.theme.brand('> ') + 'Take a screenshot of https://sylixide.com');
280
- console.log();
281
- promptUser();
282
- return;
283
- }
284
- // ─── New Slash Commands ───
285
- if (cmd === '/cost') {
286
- console.log();
287
- console.log(output_1.theme.brand(' Token Usage'));
288
- console.log(output_1.theme.dim(` Estimated tokens: ~${totalTokens}`));
289
- console.log(output_1.theme.dim(` Messages: ${conversationHistory.length}`));
290
- console.log(output_1.theme.dim(` Session: ${session.id}`));
291
- console.log();
292
- promptUser();
293
- return;
294
- }
295
- if (cmd.startsWith('/model')) {
296
- const parts = message.split(' ');
297
- if (parts.length > 1) {
298
- const modelName = parts.slice(1).join(' ');
299
- if (options)
300
- options.model = modelName;
301
- (0, output_1.printSuccess)(`Model switched to: ${modelName}`);
302
- }
303
- else {
304
- const currentModel = options?.model || config?.defaultModel || 'default';
305
- console.log(output_1.theme.dim(` Current model: ${currentModel}`));
306
- console.log(output_1.theme.dim(' Usage: /model <name>'));
307
- }
308
- promptUser();
309
- return;
310
- }
311
- if (cmd === '/plan') {
312
- planMode = !planMode;
313
- if (planMode) {
314
- (0, manager_1.setPermissionMode)('plan');
315
- (0, output_1.printInfo)('Plan mode ON — only read-only tools allowed. Type /plan again to exit.');
316
- }
317
- else {
318
- (0, manager_1.setPermissionMode)(settings.permissions || 'default');
319
- (0, output_1.printInfo)('Plan mode OFF — all tools available.');
320
- }
321
- promptUser();
322
- return;
323
- }
324
- if (cmd === '/sessions') {
325
- const sessions = await (0, store_1.listSessions)();
326
- if (sessions.length === 0) {
327
- console.log(output_1.theme.dim(' No previous sessions found.'));
328
- }
329
- else {
330
- console.log();
331
- console.log(output_1.theme.brand(' Recent Sessions'));
332
- for (const s of sessions.slice(0, 10)) {
333
- const date = new Date(s.updatedAt).toLocaleString();
334
- console.log(` ${output_1.theme.dim(s.id)} ${s.title.substring(0, 50)} ${output_1.theme.dim(date)}`);
335
- }
336
- }
337
- console.log();
338
- promptUser();
339
- return;
340
- }
341
- if (cmd.startsWith('/resume ')) {
342
- const sessionId = message.split(' ')[1];
343
- const loaded = await (0, store_1.loadSession)(sessionId);
344
- if (loaded) {
345
- conversationHistory.length = 0;
346
- loaded.messages.forEach(m => conversationHistory.push(m));
347
- session.id = loaded.id;
348
- session.title = loaded.title;
349
- totalTokens = loaded.tokenCount || 0;
350
- (0, output_1.printSuccess)(`Resumed session: ${loaded.title}`);
351
- }
352
- else {
353
- (0, output_1.printError)(`Session ${sessionId} not found.`);
354
- }
355
- promptUser();
356
- return;
357
- }
358
- if (cmd === 'exit' || cmd === 'quit') {
359
- // Save session and run stop hooks
360
- session.messages = conversationHistory;
361
- session.tokenCount = totalTokens;
362
- session.title = (0, store_1.deriveTitle)(conversationHistory);
363
- await (0, store_1.saveSession)(session);
364
- await (0, engine_1.runHooks)('Stop', {});
365
- console.log();
366
- (0, output_1.printSuccess)(`Chat session saved. Session ID: ${session.id}`);
367
- rl.close();
368
- process.exit(0);
369
- }
370
- if (!cmd.startsWith('/btw ')) {
371
- conversationHistory.push({ role: 'user', content: message });
372
- }
373
- const runChatTurn = async () => {
374
- const timer = new output_1.Timer();
375
- let responseContent = '';
376
- let toolCalls = [];
377
- let isFirstChunk = true;
378
- let tokenCount = 0;
379
- try {
380
- const res = await (0, sylix_1.chat)(conversationHistory, (chunk) => {
381
- if (isFirstChunk) {
382
- process.stdout.write(output_1.theme.ai('CoWorker') + output_1.theme.dim(' › '));
383
- isFirstChunk = false;
384
- }
385
- process.stdout.write(chunk);
386
- tokenCount++;
387
- });
388
- responseContent = res.content || '';
389
- toolCalls = res.tool_calls || [];
390
- totalTokens += tokenCount;
391
- if (responseContent) {
392
- conversationHistory.push({ role: 'assistant', content: responseContent });
393
- console.log();
394
- console.log();
395
- (0, output_1.printResponseStats)(timer.elapsed(), verbose ? tokenCount : undefined, verbose);
396
- console.log();
397
- }
398
- if (toolCalls.length > 0) {
399
- conversationHistory.push({
400
- role: 'assistant',
401
- tool_calls: toolCalls
402
- });
403
- for (const tc of toolCalls) {
404
- // Run pre-tool hooks
405
- const hookResult = await (0, engine_1.runHooks)('PreToolUse', {
406
- toolName: tc.function.name,
407
- toolArgs: JSON.parse(tc.function.arguments || '{}')
408
- });
409
- let result;
410
- if (hookResult === 'block') {
411
- result = `Tool ${tc.function.name} was blocked by a hook.`;
412
- }
413
- else {
414
- result = await (0, registry_1.handleToolCall)(tc);
415
- }
416
- // Run post-tool hooks
417
- await (0, engine_1.runHooks)('PostToolUse', {
418
- toolName: tc.function.name,
419
- toolArgs: JSON.parse(tc.function.arguments || '{}'),
420
- result
421
- });
422
- conversationHistory.push({
423
- role: 'tool',
424
- name: tc.function.name,
425
- tool_call_id: tc.id,
426
- content: result
427
- });
428
- }
429
- await runChatTurn();
430
- }
431
- else {
432
- // Auto-save session after each complete turn
433
- session.messages = conversationHistory;
434
- session.tokenCount = totalTokens;
435
- session.title = (0, store_1.deriveTitle)(conversationHistory);
436
- await (0, store_1.saveSession)(session);
437
- // Check if we should auto-summarize
438
- if ((0, memory_1.shouldSummarize)(totalTokens, lastSummaryTokens)) {
439
- const summaryPrompt = (0, memory_1.generateSummaryPrompt)(conversationHistory);
440
- // Save a lightweight summary for future sessions
441
- await (0, memory_1.saveSummary)(session.id, summaryPrompt);
442
- lastSummaryTokens = totalTokens;
443
- }
444
- promptUser();
445
- }
446
- }
447
- catch (error) {
448
- (0, output_1.stopLoadingAnimation)();
449
- (0, output_1.printError)('Failed to get response');
450
- if (error instanceof Error) {
451
- console.error(error.message);
452
- }
453
- promptUser();
454
- }
455
- };
456
- await runChatTurn();
457
- });
458
- };
459
- promptUser();
460
- // Handle Ctrl+C
461
- rl.on('close', async () => {
462
- // Save session on Ctrl+C too
463
- session.messages = conversationHistory;
464
- session.tokenCount = totalTokens;
465
- session.title = (0, store_1.deriveTitle)(conversationHistory);
466
- await (0, store_1.saveSession)(session);
467
- await (0, engine_1.runHooks)('Stop', {});
468
- console.log();
469
- (0, output_1.printSuccess)(`Session saved: ${session.id}`);
470
- process.exit(0);
471
- });
472
- // Handle Ctrl+L (clear screen)
473
- process.stdin.on('keypress', (_ch, key) => {
474
- if (key && key.ctrl && key.name === 'l') {
475
- console.clear();
476
- }
477
- });
478
- }
479
- //# sourceMappingURL=chat.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function commitCommand(customMessage?: string, verbose?: boolean): Promise<void>;
2
- //# sourceMappingURL=commit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commit.d.ts","sourceRoot":"","sources":["../../src/commands/commit.ts"],"names":[],"mappings":"AAgBA,wBAAsB,aAAa,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAkInG"}