@sylix/coworker 1.0.0 → 1.1.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 (62) hide show
  1. package/dist/agents/runner.d.ts +19 -0
  2. package/dist/agents/runner.d.ts.map +1 -0
  3. package/dist/agents/runner.js +170 -0
  4. package/dist/agents/runner.js.map +1 -0
  5. package/dist/cli.js +133 -9
  6. package/dist/cli.js.map +1 -1
  7. package/dist/commands/chat.d.ts +7 -1
  8. package/dist/commands/chat.d.ts.map +1 -1
  9. package/dist/commands/chat.js +237 -50
  10. package/dist/commands/chat.js.map +1 -1
  11. package/dist/config/settings.d.ts +33 -0
  12. package/dist/config/settings.d.ts.map +1 -0
  13. package/dist/config/settings.js +72 -0
  14. package/dist/config/settings.js.map +1 -0
  15. package/dist/hooks/engine.d.ts +9 -0
  16. package/dist/hooks/engine.d.ts.map +1 -0
  17. package/dist/hooks/engine.js +85 -0
  18. package/dist/hooks/engine.js.map +1 -0
  19. package/dist/mcp/client.d.ts +15 -0
  20. package/dist/mcp/client.d.ts.map +1 -0
  21. package/dist/mcp/client.js +211 -0
  22. package/dist/mcp/client.js.map +1 -0
  23. package/dist/mcp/transport.d.ts +46 -0
  24. package/dist/mcp/transport.d.ts.map +1 -0
  25. package/dist/mcp/transport.js +196 -0
  26. package/dist/mcp/transport.js.map +1 -0
  27. package/dist/permissions/manager.d.ts +7 -0
  28. package/dist/permissions/manager.d.ts.map +1 -0
  29. package/dist/permissions/manager.js +125 -0
  30. package/dist/permissions/manager.js.map +1 -0
  31. package/dist/session/memory.d.ts +6 -0
  32. package/dist/session/memory.d.ts.map +1 -0
  33. package/dist/session/memory.js +81 -0
  34. package/dist/session/memory.js.map +1 -0
  35. package/dist/session/store.d.ts +19 -0
  36. package/dist/session/store.d.ts.map +1 -0
  37. package/dist/session/store.js +94 -0
  38. package/dist/session/store.js.map +1 -0
  39. package/dist/tools/glob.d.ts +10 -0
  40. package/dist/tools/glob.d.ts.map +1 -0
  41. package/dist/tools/glob.js +245 -0
  42. package/dist/tools/glob.js.map +1 -0
  43. package/dist/tools/grep.d.ts +10 -0
  44. package/dist/tools/grep.d.ts.map +1 -0
  45. package/dist/tools/grep.js +252 -0
  46. package/dist/tools/grep.js.map +1 -0
  47. package/dist/tools/registry.d.ts.map +1 -1
  48. package/dist/tools/registry.js +185 -5
  49. package/dist/tools/registry.js.map +1 -1
  50. package/dist/tools/task.d.ts +11 -0
  51. package/dist/tools/task.d.ts.map +1 -0
  52. package/dist/tools/task.js +118 -0
  53. package/dist/tools/task.js.map +1 -0
  54. package/dist/tools/web.d.ts +3 -0
  55. package/dist/tools/web.d.ts.map +1 -0
  56. package/dist/tools/web.js +113 -0
  57. package/dist/tools/web.js.map +1 -0
  58. package/dist/tools/write.d.ts +18 -0
  59. package/dist/tools/write.d.ts.map +1 -0
  60. package/dist/tools/write.js +122 -0
  61. package/dist/tools/write.js.map +1 -0
  62. package/package.json +1 -1
@@ -0,0 +1,19 @@
1
+ interface AgentDefinition {
2
+ name: string;
3
+ description: string;
4
+ systemPrompt: string;
5
+ allowedTools: string[];
6
+ maxTurns: number;
7
+ }
8
+ interface AgentResult {
9
+ agentName: string;
10
+ success: boolean;
11
+ output: string;
12
+ turns: number;
13
+ }
14
+ export declare function loadAgentDefinition(agentPath: string): Promise<AgentDefinition | null>;
15
+ export declare function listAgents(): Promise<AgentDefinition[]>;
16
+ export declare function runAgent(agentDef: AgentDefinition, userPrompt: string, parentContext?: string): Promise<AgentResult>;
17
+ export declare function runAgentByName(name: string, prompt: string, context?: string): Promise<string>;
18
+ export {};
19
+ //# sourceMappingURL=runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"AAYA,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,WAAW;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAID,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAO5F;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAqB7D;AA8CD,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,eAAe,EACzB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,WAAW,CAAC,CAkFtB;AAID,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAgBjB"}
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.loadAgentDefinition = loadAgentDefinition;
7
+ exports.listAgents = listAgents;
8
+ exports.runAgent = runAgent;
9
+ exports.runAgentByName = runAgentByName;
10
+ const fs_extra_1 = __importDefault(require("fs-extra"));
11
+ const path_1 = __importDefault(require("path"));
12
+ const sylix_1 = require("../api/sylix");
13
+ const registry_1 = require("../tools/registry");
14
+ const output_1 = require("../utils/output");
15
+ // ─── Load Agent Definitions ───
16
+ async function loadAgentDefinition(agentPath) {
17
+ try {
18
+ const content = await fs_extra_1.default.readFile(agentPath, 'utf8');
19
+ return parseAgentMd(content, path_1.default.basename(agentPath, '.md'));
20
+ }
21
+ catch {
22
+ return null;
23
+ }
24
+ }
25
+ async function listAgents() {
26
+ const agentDirs = [
27
+ path_1.default.join(process.cwd(), '.coworker', 'agents'),
28
+ path_1.default.join(process.cwd(), '.agents'),
29
+ ];
30
+ const agents = [];
31
+ for (const dir of agentDirs) {
32
+ if (await fs_extra_1.default.pathExists(dir)) {
33
+ const files = await fs_extra_1.default.readdir(dir);
34
+ for (const file of files) {
35
+ if (file.endsWith('.md')) {
36
+ const def = await loadAgentDefinition(path_1.default.join(dir, file));
37
+ if (def)
38
+ agents.push(def);
39
+ }
40
+ }
41
+ }
42
+ }
43
+ return agents;
44
+ }
45
+ // ─── Parse Agent .md File ───
46
+ function parseAgentMd(content, fallbackName) {
47
+ const lines = content.split('\n');
48
+ let name = fallbackName;
49
+ let description = '';
50
+ let systemPrompt = '';
51
+ let allowedTools = [];
52
+ let maxTurns = 10;
53
+ // Parse YAML frontmatter
54
+ if (lines[0]?.trim() === '---') {
55
+ const endIdx = lines.indexOf('---', 1);
56
+ if (endIdx > 0) {
57
+ const frontmatter = lines.slice(1, endIdx).join('\n');
58
+ const nameMatch = frontmatter.match(/^name:\s*(.+)$/m);
59
+ if (nameMatch)
60
+ name = nameMatch[1].trim();
61
+ const descMatch = frontmatter.match(/^description:\s*(.+)$/m);
62
+ if (descMatch)
63
+ description = descMatch[1].trim();
64
+ const toolsMatch = frontmatter.match(/^allowed_tools:\s*\[([^\]]*)\]/m);
65
+ if (toolsMatch) {
66
+ allowedTools = toolsMatch[1].split(',').map(t => t.trim().replace(/['"]/g, ''));
67
+ }
68
+ const turnsMatch = frontmatter.match(/^max_turns:\s*(\d+)/m);
69
+ if (turnsMatch)
70
+ maxTurns = parseInt(turnsMatch[1], 10);
71
+ // Everything after frontmatter is the system prompt
72
+ systemPrompt = lines.slice(endIdx + 1).join('\n').trim();
73
+ }
74
+ }
75
+ else {
76
+ // No frontmatter — entire content is the system prompt
77
+ systemPrompt = content;
78
+ }
79
+ return { name, description, systemPrompt, allowedTools, maxTurns };
80
+ }
81
+ // ─── Execute Subagent ───
82
+ async function runAgent(agentDef, userPrompt, parentContext) {
83
+ const messages = [];
84
+ // Build system prompt
85
+ let system = agentDef.systemPrompt;
86
+ if (parentContext) {
87
+ system += `\n\n# Context from parent conversation:\n${parentContext}`;
88
+ }
89
+ if (agentDef.allowedTools.length > 0) {
90
+ system += `\n\nYou have access to the following tools: ${agentDef.allowedTools.join(', ')}. Do not use any other tools.`;
91
+ }
92
+ messages.push({ role: 'system', content: system });
93
+ messages.push({ role: 'user', content: userPrompt });
94
+ let totalTurns = 0;
95
+ let finalOutput = '';
96
+ console.log(output_1.theme.dim(` [Agent: ${agentDef.name}] Starting with prompt: "${userPrompt.substring(0, 80)}..."`));
97
+ for (let turn = 0; turn < agentDef.maxTurns; turn++) {
98
+ totalTurns++;
99
+ try {
100
+ const res = await (0, sylix_1.chat)(messages, (chunk) => {
101
+ // Silent — subagents don't stream to stdout
102
+ });
103
+ if (res.content) {
104
+ finalOutput = res.content;
105
+ messages.push({ role: 'assistant', content: res.content });
106
+ }
107
+ if (res.tool_calls && res.tool_calls.length > 0) {
108
+ messages.push({ role: 'assistant', tool_calls: res.tool_calls });
109
+ for (const tc of res.tool_calls) {
110
+ const toolName = tc.function.name;
111
+ // Check if tool is allowed
112
+ if (agentDef.allowedTools.length > 0 && !agentDef.allowedTools.includes(toolName)) {
113
+ messages.push({
114
+ role: 'tool',
115
+ name: toolName,
116
+ tool_call_id: tc.id,
117
+ content: `Error: Tool "${toolName}" is not allowed for this agent. Allowed: ${agentDef.allowedTools.join(', ')}`
118
+ });
119
+ continue;
120
+ }
121
+ const result = await (0, registry_1.handleToolCall)(tc);
122
+ messages.push({
123
+ role: 'tool',
124
+ name: toolName,
125
+ tool_call_id: tc.id,
126
+ content: result
127
+ });
128
+ }
129
+ // Continue the loop for the next turn
130
+ }
131
+ else {
132
+ // No tool calls → agent is done
133
+ break;
134
+ }
135
+ }
136
+ catch (err) {
137
+ console.error(output_1.theme.error(` [Agent: ${agentDef.name}] Error on turn ${turn + 1}: ${err.message}`));
138
+ return {
139
+ agentName: agentDef.name,
140
+ success: false,
141
+ output: `Agent error: ${err.message}`,
142
+ turns: totalTurns
143
+ };
144
+ }
145
+ }
146
+ console.log(output_1.theme.dim(` [Agent: ${agentDef.name}] Completed in ${totalTurns} turns`));
147
+ return {
148
+ agentName: agentDef.name,
149
+ success: true,
150
+ output: finalOutput,
151
+ turns: totalTurns
152
+ };
153
+ }
154
+ // ─── Run Agent by Name ───
155
+ async function runAgentByName(name, prompt, context) {
156
+ const agents = await listAgents();
157
+ const agent = agents.find(a => a.name.toLowerCase() === name.toLowerCase());
158
+ if (!agent) {
159
+ const available = agents.map(a => a.name).join(', ');
160
+ return `Agent "${name}" not found. Available agents: ${available || '(none — create .coworker/agents/*.md)'}`;
161
+ }
162
+ const result = await runAgent(agent, prompt, context);
163
+ if (result.success) {
164
+ return `[Agent: ${result.agentName} completed in ${result.turns} turns]\n\n${result.output}`;
165
+ }
166
+ else {
167
+ return `[Agent: ${result.agentName} failed]\n\n${result.output}`;
168
+ }
169
+ }
170
+ //# sourceMappingURL=runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -43,6 +43,7 @@ const config_1 = require("./commands/config");
43
43
  const login_1 = require("./commands/login");
44
44
  const output_1 = require("./utils/output");
45
45
  const sylix_1 = require("./api/sylix");
46
+ const manager_1 = require("./permissions/manager");
46
47
  const VERSION = '1.0.0';
47
48
  const program = new commander_1.Command();
48
49
  // Global options
@@ -52,7 +53,21 @@ program
52
53
  .version(VERSION)
53
54
  .option('--no-banner', 'Hide the startup banner')
54
55
  .option('--verbose', 'Show detailed information (tokens, timing)')
56
+ .option('-p, --print <prompt>', 'One-shot mode: answer a prompt and exit')
57
+ .option('--model <name>', 'Override model for this session')
58
+ .option('--output-format <format>', 'Output format: text or json (for -p mode)', 'text')
59
+ .option('--debug', 'Enable debug logging')
60
+ .option('-c, --continue', 'Resume the most recent session')
61
+ .option('-r, --resume <id>', 'Resume a specific session by ID')
62
+ .option('--dangerously-skip-permissions', 'Bypass all tool permission checks')
55
63
  .hook('preAction', async () => {
64
+ // Apply global flags
65
+ if (program.opts().dangerouslySkipPermissions) {
66
+ (0, manager_1.setSkipPermissions)(true);
67
+ }
68
+ if (program.opts().debug) {
69
+ process.env.COWORKER_DEBUG = '1';
70
+ }
56
71
  // Show header before commands (unless --no-banner)
57
72
  if ((0, output_1.shouldShowBanner)() && !program.opts().noBanner) {
58
73
  await (0, output_1.printHeader)();
@@ -161,18 +176,20 @@ program
161
176
  .description('Start an interactive chat session')
162
177
  .action(async () => {
163
178
  try {
179
+ const opts = program.opts();
164
180
  const { chatCommand } = await Promise.resolve().then(() => __importStar(require('./commands/chat')));
165
- await chatCommand(program.opts().verbose);
181
+ await chatCommand(opts.verbose, {
182
+ continueSession: opts.continue,
183
+ resumeSessionId: opts.resume,
184
+ model: opts.model
185
+ });
166
186
  }
167
187
  catch (error) {
168
188
  (0, output_1.printError)('Command failed');
169
189
  process.exit(1);
170
190
  }
171
191
  });
172
- // Config command group
173
- const configCmd = program
174
- .command('config')
175
- .description('Manage configuration');
192
+ // Login command
176
193
  program
177
194
  .command('login')
178
195
  .description('Log into Sylix to connect this CLI')
@@ -185,6 +202,71 @@ program
185
202
  process.exit(1);
186
203
  }
187
204
  });
205
+ // Logout command
206
+ program
207
+ .command('logout')
208
+ .description('Log out and clear stored credentials')
209
+ .action(async () => {
210
+ try {
211
+ const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
212
+ const path = await Promise.resolve().then(() => __importStar(require('path')));
213
+ const os = await Promise.resolve().then(() => __importStar(require('os')));
214
+ const configPath = path.join(os.homedir(), '.coworker', 'config.json');
215
+ if (await fs.pathExists(configPath)) {
216
+ await fs.remove(configPath);
217
+ console.log(output_1.theme.success('Logged out successfully.'));
218
+ }
219
+ else {
220
+ console.log(output_1.theme.dim('No active session found.'));
221
+ }
222
+ }
223
+ catch (error) {
224
+ (0, output_1.printError)('Logout failed');
225
+ process.exit(1);
226
+ }
227
+ });
228
+ // Auth status command
229
+ program
230
+ .command('auth')
231
+ .description('Show authentication status')
232
+ .action(async () => {
233
+ try {
234
+ const config = await (0, sylix_1.loadConfig)();
235
+ if (config?.apiKey) {
236
+ console.log(output_1.theme.success('✓ Authenticated'));
237
+ console.log(output_1.theme.dim(` Model: ${config.defaultModel || 'default'}`));
238
+ console.log(output_1.theme.dim(` Endpoint: ${config.baseUrl || 'api.sylixide.com'}`));
239
+ }
240
+ else {
241
+ console.log(output_1.theme.warning('✗ Not authenticated'));
242
+ console.log(output_1.theme.dim(' Run: coworker login'));
243
+ }
244
+ }
245
+ catch {
246
+ console.log(output_1.theme.warning('✗ Not authenticated'));
247
+ console.log(output_1.theme.dim(' Run: coworker login'));
248
+ }
249
+ });
250
+ // Update command
251
+ program
252
+ .command('update')
253
+ .description('Update CoWorker to the latest version')
254
+ .action(async () => {
255
+ try {
256
+ const { execSync } = await Promise.resolve().then(() => __importStar(require('child_process')));
257
+ console.log(output_1.theme.dim('Updating CoWorker...'));
258
+ execSync('npm install -g @sylix/coworker@latest', { stdio: 'inherit' });
259
+ console.log(output_1.theme.success('✓ CoWorker updated to latest version'));
260
+ }
261
+ catch (error) {
262
+ (0, output_1.printError)('Update failed. Try: npm install -g @sylix/coworker@latest');
263
+ process.exit(1);
264
+ }
265
+ });
266
+ // Config command group
267
+ const configCmd = program
268
+ .command('config')
269
+ .description('Manage configuration');
188
270
  configCmd
189
271
  .command('init')
190
272
  .description('Initialize configuration')
@@ -209,18 +291,60 @@ configCmd
209
291
  process.exit(1);
210
292
  }
211
293
  });
212
- // Default action - show help with branding
294
+ // Default action
213
295
  async function main() {
296
+ const opts = program.opts();
297
+ // Handle --print / -p one-shot mode
298
+ if (process.argv.includes('-p') || process.argv.includes('--print')) {
299
+ // Parse first to extract the prompt
300
+ await program.parseAsync(process.argv);
301
+ const parsedOpts = program.opts();
302
+ if (parsedOpts.print) {
303
+ try {
304
+ const { chat, loadConfig: loadCfg } = await Promise.resolve().then(() => __importStar(require('./api/sylix')));
305
+ const messages = [
306
+ { role: 'system', content: 'You are CoWorker, a CLI coding assistant. Be concise and direct.' },
307
+ { role: 'user', content: parsedOpts.print }
308
+ ];
309
+ let fullResponse = '';
310
+ const res = await chat(messages, (chunk) => {
311
+ if (parsedOpts.outputFormat === 'json') {
312
+ fullResponse += chunk;
313
+ }
314
+ else {
315
+ process.stdout.write(chunk);
316
+ }
317
+ });
318
+ if (parsedOpts.outputFormat === 'json') {
319
+ console.log(JSON.stringify({ content: res.content || fullResponse }, null, 2));
320
+ }
321
+ else {
322
+ console.log(); // newline after streaming
323
+ }
324
+ }
325
+ catch (error) {
326
+ if (parsedOpts.outputFormat === 'json') {
327
+ console.log(JSON.stringify({ error: 'Failed to get response' }));
328
+ }
329
+ else {
330
+ (0, output_1.printError)('Failed to get response');
331
+ }
332
+ process.exit(1);
333
+ }
334
+ return;
335
+ }
336
+ }
214
337
  if (process.argv.length === 2) {
215
338
  if ((0, output_1.shouldShowBanner)()) {
216
339
  await (0, output_1.printHeader)();
217
- // Only show top-level user info if we're not immediately jumping into chat,
218
- // but since we are jumping into chat, the chat command has its own header.
219
340
  }
220
341
  // Default to interactive chat instead of help
221
342
  try {
222
343
  const { chatCommand } = await Promise.resolve().then(() => __importStar(require('./commands/chat')));
223
- await chatCommand(program.opts().verbose);
344
+ await chatCommand(false, {
345
+ continueSession: false,
346
+ model: undefined
347
+ });
224
348
  }
225
349
  catch (error) {
226
350
  (0, output_1.printError)('Failed to start interactive chat');
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,8 @@
1
- export declare function chatCommand(verbose?: boolean): Promise<void>;
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 {};
2
8
  //# sourceMappingURL=chat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AAkBA,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAwRlE"}
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"}