@sylix/coworker 1.0.0 → 1.1.1

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 (65) 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 +144 -10
  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/dist/utils/output.d.ts.map +1 -1
  63. package/dist/utils/output.js +1 -1
  64. package/dist/utils/output.js.map +1 -1
  65. 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,7 +43,18 @@ 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 VERSION = '1.0.0';
46
+ const manager_1 = require("./permissions/manager");
47
+ const fs = require('fs');
48
+ const path = require('path');
49
+ let VERSION = '1.1.1';
50
+ try {
51
+ const pkgPath = fs.existsSync(path.join(__dirname, '../package.json'))
52
+ ? path.join(__dirname, '../package.json')
53
+ : path.join(__dirname, '../../package.json');
54
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
55
+ VERSION = pkg.version;
56
+ }
57
+ catch (e) { /* fallback to 1.1.1 */ }
47
58
  const program = new commander_1.Command();
48
59
  // Global options
49
60
  program
@@ -52,7 +63,21 @@ program
52
63
  .version(VERSION)
53
64
  .option('--no-banner', 'Hide the startup banner')
54
65
  .option('--verbose', 'Show detailed information (tokens, timing)')
66
+ .option('-p, --print <prompt>', 'One-shot mode: answer a prompt and exit')
67
+ .option('--model <name>', 'Override model for this session')
68
+ .option('--output-format <format>', 'Output format: text or json (for -p mode)', 'text')
69
+ .option('--debug', 'Enable debug logging')
70
+ .option('-c, --continue', 'Resume the most recent session')
71
+ .option('-r, --resume <id>', 'Resume a specific session by ID')
72
+ .option('--dangerously-skip-permissions', 'Bypass all tool permission checks')
55
73
  .hook('preAction', async () => {
74
+ // Apply global flags
75
+ if (program.opts().dangerouslySkipPermissions) {
76
+ (0, manager_1.setSkipPermissions)(true);
77
+ }
78
+ if (program.opts().debug) {
79
+ process.env.COWORKER_DEBUG = '1';
80
+ }
56
81
  // Show header before commands (unless --no-banner)
57
82
  if ((0, output_1.shouldShowBanner)() && !program.opts().noBanner) {
58
83
  await (0, output_1.printHeader)();
@@ -161,18 +186,20 @@ program
161
186
  .description('Start an interactive chat session')
162
187
  .action(async () => {
163
188
  try {
189
+ const opts = program.opts();
164
190
  const { chatCommand } = await Promise.resolve().then(() => __importStar(require('./commands/chat')));
165
- await chatCommand(program.opts().verbose);
191
+ await chatCommand(opts.verbose, {
192
+ continueSession: opts.continue,
193
+ resumeSessionId: opts.resume,
194
+ model: opts.model
195
+ });
166
196
  }
167
197
  catch (error) {
168
198
  (0, output_1.printError)('Command failed');
169
199
  process.exit(1);
170
200
  }
171
201
  });
172
- // Config command group
173
- const configCmd = program
174
- .command('config')
175
- .description('Manage configuration');
202
+ // Login command
176
203
  program
177
204
  .command('login')
178
205
  .description('Log into Sylix to connect this CLI')
@@ -185,6 +212,71 @@ program
185
212
  process.exit(1);
186
213
  }
187
214
  });
215
+ // Logout command
216
+ program
217
+ .command('logout')
218
+ .description('Log out and clear stored credentials')
219
+ .action(async () => {
220
+ try {
221
+ const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
222
+ const path = await Promise.resolve().then(() => __importStar(require('path')));
223
+ const os = await Promise.resolve().then(() => __importStar(require('os')));
224
+ const configPath = path.join(os.homedir(), '.coworker', 'config.json');
225
+ if (await fs.pathExists(configPath)) {
226
+ await fs.remove(configPath);
227
+ console.log(output_1.theme.success('Logged out successfully.'));
228
+ }
229
+ else {
230
+ console.log(output_1.theme.dim('No active session found.'));
231
+ }
232
+ }
233
+ catch (error) {
234
+ (0, output_1.printError)('Logout failed');
235
+ process.exit(1);
236
+ }
237
+ });
238
+ // Auth status command
239
+ program
240
+ .command('auth')
241
+ .description('Show authentication status')
242
+ .action(async () => {
243
+ try {
244
+ const config = await (0, sylix_1.loadConfig)();
245
+ if (config?.apiKey) {
246
+ console.log(output_1.theme.success('✓ Authenticated'));
247
+ console.log(output_1.theme.dim(` Model: ${config.defaultModel || 'default'}`));
248
+ console.log(output_1.theme.dim(` Endpoint: ${config.baseUrl || 'api.sylixide.com'}`));
249
+ }
250
+ else {
251
+ console.log(output_1.theme.warning('✗ Not authenticated'));
252
+ console.log(output_1.theme.dim(' Run: coworker login'));
253
+ }
254
+ }
255
+ catch {
256
+ console.log(output_1.theme.warning('✗ Not authenticated'));
257
+ console.log(output_1.theme.dim(' Run: coworker login'));
258
+ }
259
+ });
260
+ // Update command
261
+ program
262
+ .command('update')
263
+ .description('Update CoWorker to the latest version')
264
+ .action(async () => {
265
+ try {
266
+ const { execSync } = await Promise.resolve().then(() => __importStar(require('child_process')));
267
+ console.log(output_1.theme.dim('Updating CoWorker...'));
268
+ execSync('npm install -g @sylix/coworker@latest', { stdio: 'inherit' });
269
+ console.log(output_1.theme.success('✓ CoWorker updated to latest version'));
270
+ }
271
+ catch (error) {
272
+ (0, output_1.printError)('Update failed. Try: npm install -g @sylix/coworker@latest');
273
+ process.exit(1);
274
+ }
275
+ });
276
+ // Config command group
277
+ const configCmd = program
278
+ .command('config')
279
+ .description('Manage configuration');
188
280
  configCmd
189
281
  .command('init')
190
282
  .description('Initialize configuration')
@@ -209,18 +301,60 @@ configCmd
209
301
  process.exit(1);
210
302
  }
211
303
  });
212
- // Default action - show help with branding
304
+ // Default action
213
305
  async function main() {
306
+ const opts = program.opts();
307
+ // Handle --print / -p one-shot mode
308
+ if (process.argv.includes('-p') || process.argv.includes('--print')) {
309
+ // Parse first to extract the prompt
310
+ await program.parseAsync(process.argv);
311
+ const parsedOpts = program.opts();
312
+ if (parsedOpts.print) {
313
+ try {
314
+ const { chat, loadConfig: loadCfg } = await Promise.resolve().then(() => __importStar(require('./api/sylix')));
315
+ const messages = [
316
+ { role: 'system', content: 'You are CoWorker, a CLI coding assistant. Be concise and direct.' },
317
+ { role: 'user', content: parsedOpts.print }
318
+ ];
319
+ let fullResponse = '';
320
+ const res = await chat(messages, (chunk) => {
321
+ if (parsedOpts.outputFormat === 'json') {
322
+ fullResponse += chunk;
323
+ }
324
+ else {
325
+ process.stdout.write(chunk);
326
+ }
327
+ });
328
+ if (parsedOpts.outputFormat === 'json') {
329
+ console.log(JSON.stringify({ content: res.content || fullResponse }, null, 2));
330
+ }
331
+ else {
332
+ console.log(); // newline after streaming
333
+ }
334
+ }
335
+ catch (error) {
336
+ if (parsedOpts.outputFormat === 'json') {
337
+ console.log(JSON.stringify({ error: 'Failed to get response' }));
338
+ }
339
+ else {
340
+ (0, output_1.printError)('Failed to get response');
341
+ }
342
+ process.exit(1);
343
+ }
344
+ return;
345
+ }
346
+ }
214
347
  if (process.argv.length === 2) {
215
348
  if ((0, output_1.shouldShowBanner)()) {
216
349
  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
350
  }
220
351
  // Default to interactive chat instead of help
221
352
  try {
222
353
  const { chatCommand } = await Promise.resolve().then(() => __importStar(require('./commands/chat')));
223
- await chatCommand(program.opts().verbose);
354
+ await chatCommand(false, {
355
+ continueSession: false,
356
+ model: undefined
357
+ });
224
358
  }
225
359
  catch (error) {
226
360
  (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"}