@tonk/cli 0.2.5 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/worker/commands.d.ts +42 -0
- package/dist/commands/worker/commands.d.ts.map +1 -0
- package/dist/commands/worker/commands.js +580 -0
- package/dist/commands/worker/commands.js.map +1 -0
- package/dist/commands/worker/index.d.ts +7 -0
- package/dist/commands/worker/index.d.ts.map +1 -0
- package/dist/commands/worker/index.js +28 -0
- package/dist/commands/worker/index.js.map +1 -0
- package/dist/commands/worker/utils/config.d.ts +26 -0
- package/dist/commands/worker/utils/config.d.ts.map +1 -0
- package/dist/commands/worker/utils/config.js +197 -0
- package/dist/commands/worker/utils/config.js.map +1 -0
- package/dist/commands/worker/utils/display.d.ts +6 -0
- package/dist/commands/worker/utils/display.d.ts.map +1 -0
- package/dist/commands/worker/utils/display.js +32 -0
- package/dist/commands/worker/utils/display.js.map +1 -0
- package/dist/commands/worker/utils/finder.d.ts +12 -0
- package/dist/commands/worker/utils/finder.d.ts.map +1 -0
- package/dist/commands/worker/utils/finder.js +60 -0
- package/dist/commands/worker/utils/finder.js.map +1 -0
- package/dist/lib/workerManager.d.ts +60 -0
- package/dist/lib/workerManager.d.ts.map +1 -0
- package/dist/lib/workerManager.js +426 -0
- package/dist/lib/workerManager.js.map +1 -0
- package/dist/tonk.js +2 -0
- package/dist/tonk.js.map +1 -1
- package/dist/types/worker.d.ts +102 -0
- package/dist/types/worker.d.ts.map +1 -0
- package/dist/types/worker.js +7 -0
- package/dist/types/worker.js.map +1 -0
- package/dist/types/workerConfig.d.ts +164 -0
- package/dist/types/workerConfig.d.ts.map +1 -0
- package/dist/types/workerConfig.js +80 -0
- package/dist/types/workerConfig.js.map +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,426 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import envPaths from 'env-paths';
|
|
4
|
+
import http from 'node:http';
|
|
5
|
+
import https from 'node:https';
|
|
6
|
+
import { exec } from 'node:child_process';
|
|
7
|
+
import { promisify } from 'node:util';
|
|
8
|
+
/**
|
|
9
|
+
* Implementation of the WorkerManager interface
|
|
10
|
+
*/
|
|
11
|
+
export class TonkWorkerManager {
|
|
12
|
+
workersPath;
|
|
13
|
+
constructor() {
|
|
14
|
+
// Create paths for Tonk daemon home
|
|
15
|
+
const paths = envPaths('tonk', { suffix: '' });
|
|
16
|
+
const tonkHome = paths.data;
|
|
17
|
+
this.workersPath = path.join(tonkHome, 'workers');
|
|
18
|
+
// Ensure workers directory exists
|
|
19
|
+
if (!fs.existsSync(this.workersPath)) {
|
|
20
|
+
fs.mkdirSync(this.workersPath, { recursive: true });
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Register a new worker
|
|
25
|
+
*/
|
|
26
|
+
async register(options) {
|
|
27
|
+
// Generate a unique ID for the worker
|
|
28
|
+
const workerId = this.generateWorkerId(options.name);
|
|
29
|
+
// Parse environment variables
|
|
30
|
+
const env = {};
|
|
31
|
+
if (options.env && Array.isArray(options.env)) {
|
|
32
|
+
options.env.forEach((envVar) => {
|
|
33
|
+
const [key, value] = envVar.split('=');
|
|
34
|
+
if (key && value) {
|
|
35
|
+
env[key] = value;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
let workerConfig = {
|
|
40
|
+
...(options.config && typeof options.config === 'object'
|
|
41
|
+
? options.config
|
|
42
|
+
: {}),
|
|
43
|
+
type: options.type || 'custom',
|
|
44
|
+
};
|
|
45
|
+
// Create worker object
|
|
46
|
+
const worker = {
|
|
47
|
+
id: workerId,
|
|
48
|
+
name: options.name,
|
|
49
|
+
description: options.description || '',
|
|
50
|
+
endpoint: options.endpoint,
|
|
51
|
+
protocol: options.protocol || 'http',
|
|
52
|
+
status: {
|
|
53
|
+
active: false,
|
|
54
|
+
lastSeen: null,
|
|
55
|
+
},
|
|
56
|
+
env,
|
|
57
|
+
config: workerConfig,
|
|
58
|
+
createdAt: Date.now(),
|
|
59
|
+
updatedAt: Date.now(),
|
|
60
|
+
};
|
|
61
|
+
// Save worker to file
|
|
62
|
+
const workerFilePath = path.join(this.workersPath, `${workerId}.json`);
|
|
63
|
+
fs.writeFileSync(workerFilePath, JSON.stringify(worker, null, 2));
|
|
64
|
+
return worker;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Register a worker from a YAML configuration file
|
|
68
|
+
*/
|
|
69
|
+
async registerFromYamlConfig(yamlConfig) {
|
|
70
|
+
// Generate a unique ID for the worker
|
|
71
|
+
const workerId = this.generateWorkerId(yamlConfig.name);
|
|
72
|
+
// Create worker object from YAML config
|
|
73
|
+
const worker = {
|
|
74
|
+
id: workerId,
|
|
75
|
+
name: yamlConfig.name,
|
|
76
|
+
description: yamlConfig.description || '',
|
|
77
|
+
endpoint: yamlConfig.endpoint,
|
|
78
|
+
protocol: yamlConfig.protocol || 'http',
|
|
79
|
+
status: {
|
|
80
|
+
active: false,
|
|
81
|
+
lastSeen: null,
|
|
82
|
+
},
|
|
83
|
+
env: yamlConfig.process?.env || {},
|
|
84
|
+
config: {
|
|
85
|
+
type: yamlConfig.type || 'custom',
|
|
86
|
+
version: yamlConfig.version,
|
|
87
|
+
healthCheck: yamlConfig.healthCheck,
|
|
88
|
+
process: yamlConfig.process,
|
|
89
|
+
...yamlConfig.config,
|
|
90
|
+
},
|
|
91
|
+
createdAt: Date.now(),
|
|
92
|
+
updatedAt: Date.now(),
|
|
93
|
+
};
|
|
94
|
+
// Save worker to file
|
|
95
|
+
const workerFilePath = path.join(this.workersPath, `${workerId}.json`);
|
|
96
|
+
fs.writeFileSync(workerFilePath, JSON.stringify(worker, null, 2));
|
|
97
|
+
return worker;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Get a worker by ID
|
|
101
|
+
*/
|
|
102
|
+
async get(id) {
|
|
103
|
+
const workerFilePath = path.join(this.workersPath, `${id}.json`);
|
|
104
|
+
if (!fs.existsSync(workerFilePath)) {
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
const fileContent = fs.readFileSync(workerFilePath, 'utf-8');
|
|
108
|
+
return JSON.parse(fileContent);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Find a worker by name or ID
|
|
112
|
+
* If the identifier matches an ID exactly, returns that worker
|
|
113
|
+
* Otherwise, searches for a worker with a matching name
|
|
114
|
+
*/
|
|
115
|
+
async findByNameOrId(identifier) {
|
|
116
|
+
// First try to get by ID (exact match)
|
|
117
|
+
const workerById = await this.get(identifier);
|
|
118
|
+
if (workerById) {
|
|
119
|
+
return workerById;
|
|
120
|
+
}
|
|
121
|
+
// If not found by ID, try to find by name
|
|
122
|
+
const workers = await this.list();
|
|
123
|
+
const matchingWorker = workers.find(worker => worker.name.toLowerCase() === identifier.toLowerCase());
|
|
124
|
+
return matchingWorker || null;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* List all registered workers
|
|
128
|
+
*/
|
|
129
|
+
async list() {
|
|
130
|
+
const workerFiles = fs
|
|
131
|
+
.readdirSync(this.workersPath)
|
|
132
|
+
.filter(file => file.endsWith('.json'));
|
|
133
|
+
if (workerFiles.length === 0) {
|
|
134
|
+
return [];
|
|
135
|
+
}
|
|
136
|
+
return workerFiles.map(file => {
|
|
137
|
+
const filePath = path.join(this.workersPath, file);
|
|
138
|
+
const fileContent = fs.readFileSync(filePath, 'utf-8');
|
|
139
|
+
return JSON.parse(fileContent);
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Update a worker
|
|
144
|
+
*/
|
|
145
|
+
async update(id, updates) {
|
|
146
|
+
const worker = await this.get(id);
|
|
147
|
+
if (!worker) {
|
|
148
|
+
throw new Error(`Worker with ID '${id}' not found.`);
|
|
149
|
+
}
|
|
150
|
+
// Update worker properties
|
|
151
|
+
const updatedWorker = {
|
|
152
|
+
...worker,
|
|
153
|
+
...updates,
|
|
154
|
+
updatedAt: Date.now(),
|
|
155
|
+
};
|
|
156
|
+
// Save updated worker
|
|
157
|
+
const workerFilePath = path.join(this.workersPath, `${id}.json`);
|
|
158
|
+
fs.writeFileSync(workerFilePath, JSON.stringify(updatedWorker, null, 2));
|
|
159
|
+
return updatedWorker;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Remove a worker
|
|
163
|
+
*/
|
|
164
|
+
async remove(id) {
|
|
165
|
+
const workerFilePath = path.join(this.workersPath, `${id}.json`);
|
|
166
|
+
if (!fs.existsSync(workerFilePath)) {
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
169
|
+
// Get worker details before removing
|
|
170
|
+
const worker = await this.get(id);
|
|
171
|
+
if (!worker) {
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
// Try to stop and delete from PM2 if it's running
|
|
175
|
+
const execAsync = promisify(exec);
|
|
176
|
+
try {
|
|
177
|
+
// Check if worker is running in PM2
|
|
178
|
+
const { stdout } = await execAsync('pm2 list');
|
|
179
|
+
if (stdout.includes(`${worker.id}`)) {
|
|
180
|
+
// Stop the worker with PM2 first
|
|
181
|
+
await execAsync(`pm2 stop ${worker.id}`);
|
|
182
|
+
// Then delete it from PM2
|
|
183
|
+
await execAsync(`pm2 delete ${worker.id}`);
|
|
184
|
+
console.log(`Worker '${worker.name}' stopped and removed from PM2.`);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
console.error(`Error stopping worker in PM2:`, error);
|
|
189
|
+
// Continue with removal even if PM2 operations fail
|
|
190
|
+
}
|
|
191
|
+
// Remove worker file
|
|
192
|
+
fs.unlinkSync(workerFilePath);
|
|
193
|
+
return true;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Start a worker
|
|
197
|
+
* @param id Worker ID to start
|
|
198
|
+
*/
|
|
199
|
+
async start(id) {
|
|
200
|
+
const worker = await this.get(id);
|
|
201
|
+
if (!worker) {
|
|
202
|
+
throw new Error(`Worker with ID '${id}' not found.`);
|
|
203
|
+
}
|
|
204
|
+
const execAsync = promisify(exec);
|
|
205
|
+
try {
|
|
206
|
+
// Check if worker is already running in PM2
|
|
207
|
+
const { stdout } = await execAsync('pm2 list');
|
|
208
|
+
if (stdout.includes(`${worker.id}`)) {
|
|
209
|
+
console.log(`Worker '${worker.name}' is already running. Restarting...`);
|
|
210
|
+
await execAsync(`pm2 restart ${worker.id}`);
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
// Prepare environment variables
|
|
214
|
+
const envVars = Object.entries(worker.env)
|
|
215
|
+
.map(([key, value]) => `${key}=${value}`)
|
|
216
|
+
.join(' ');
|
|
217
|
+
// Ensure log directory exists
|
|
218
|
+
const logDir = envPaths('tonk', { suffix: '' }).log;
|
|
219
|
+
if (!fs.existsSync(logDir)) {
|
|
220
|
+
fs.mkdirSync(logDir, { recursive: true });
|
|
221
|
+
}
|
|
222
|
+
// Add log configuration
|
|
223
|
+
const logConfig = `--log ${path.join(logDir, `${worker.id}.log`)}`;
|
|
224
|
+
const errorLogConfig = `--error ${path.join(logDir, `${worker.id}-error.log`)}`;
|
|
225
|
+
// Handle different worker types
|
|
226
|
+
if (worker.config.type === 'npm') {
|
|
227
|
+
// For npm-based workers, we need to find the entry point
|
|
228
|
+
const packageName = worker.name;
|
|
229
|
+
try {
|
|
230
|
+
// Get the package's bin entry point
|
|
231
|
+
const { stdout: binInfo } = await execAsync(`npm bin -g`);
|
|
232
|
+
const binPath = binInfo.trim();
|
|
233
|
+
const executablePath = path.join(binPath, packageName);
|
|
234
|
+
// Check if the executable exists
|
|
235
|
+
if (fs.existsSync(executablePath)) {
|
|
236
|
+
// Start the npm package with PM2
|
|
237
|
+
const startCmd = `${envVars} pm2 start ${executablePath} --name ${worker.id} ${logConfig} ${errorLogConfig}`;
|
|
238
|
+
await execAsync(startCmd);
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
// Try to find the main entry point
|
|
242
|
+
const { stdout: packageInfo } = await execAsync(`npm list -g ${packageName} --json`);
|
|
243
|
+
const packageData = JSON.parse(packageInfo);
|
|
244
|
+
if (packageData.dependencies &&
|
|
245
|
+
packageData.dependencies[packageName]) {
|
|
246
|
+
const packagePath = packageData.dependencies[packageName].path;
|
|
247
|
+
const packageJsonPath = path.join(packagePath, 'package.json');
|
|
248
|
+
if (fs.existsSync(packageJsonPath)) {
|
|
249
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
250
|
+
const mainScript = packageJson.main || 'index.js';
|
|
251
|
+
const scriptPath = path.join(packagePath, mainScript);
|
|
252
|
+
// Start the npm package with PM2
|
|
253
|
+
const startCmd = `cd ${packagePath} && ${envVars} pm2 start ${scriptPath} --name ${worker.id} ${logConfig} ${errorLogConfig}`;
|
|
254
|
+
await execAsync(startCmd);
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
throw new Error(`Could not find package.json for ${packageName}`);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
throw new Error(`Could not find installed package ${packageName}`);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
catch (error) {
|
|
266
|
+
console.error(`Error starting npm worker:`, error);
|
|
267
|
+
throw error;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
// For traditional workers with process configuration
|
|
272
|
+
if (!worker.config.process || !worker.config.process.file) {
|
|
273
|
+
throw new Error(`Worker '${worker.name}' does not have a valid process configuration.`);
|
|
274
|
+
}
|
|
275
|
+
// Start the worker with PM2
|
|
276
|
+
const cwd = worker.config.process.cwd || '.';
|
|
277
|
+
const instances = worker.config.process.instances || 1;
|
|
278
|
+
const watch = worker.config.process.watch ? '--watch' : '';
|
|
279
|
+
const maxMemory = worker.config.process.max_memory_restart
|
|
280
|
+
? `--max-memory-restart ${worker.config.process.max_memory_restart}`
|
|
281
|
+
: '';
|
|
282
|
+
// Prepare the command to start the worker
|
|
283
|
+
let startCmd = '';
|
|
284
|
+
// Ensure we have a valid file path
|
|
285
|
+
if (!worker.config.process.file ||
|
|
286
|
+
worker.config.process.file.trim() === '') {
|
|
287
|
+
throw new Error(`Worker '${worker.name}' has an empty file path.`);
|
|
288
|
+
}
|
|
289
|
+
const filePath = worker.config.process.file;
|
|
290
|
+
const args = worker.config.process.args || '';
|
|
291
|
+
// Check if the file path is relative or absolute
|
|
292
|
+
const absoluteFilePath = path.join(cwd, filePath);
|
|
293
|
+
// Make the file executable if it exists
|
|
294
|
+
if (fs.existsSync(absoluteFilePath)) {
|
|
295
|
+
// First make the file executable, then start it with PM2
|
|
296
|
+
startCmd = `cd ${cwd} && chmod +x "${filePath}" && ${envVars} pm2 start "./${filePath} ${args ? args : ''}" --name ${worker.id} --instances ${instances} ${watch} ${maxMemory} ${logConfig} ${errorLogConfig}`;
|
|
297
|
+
}
|
|
298
|
+
await execAsync(startCmd);
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
// Update worker status
|
|
302
|
+
await this.update(id, {
|
|
303
|
+
status: {
|
|
304
|
+
active: true,
|
|
305
|
+
lastSeen: Date.now(),
|
|
306
|
+
},
|
|
307
|
+
});
|
|
308
|
+
return true;
|
|
309
|
+
}
|
|
310
|
+
catch (error) {
|
|
311
|
+
console.error(`Error starting worker '${worker.name}':`, error);
|
|
312
|
+
// Log detailed error information
|
|
313
|
+
if (error instanceof Error) {
|
|
314
|
+
console.error(`Error message: ${error.message}`);
|
|
315
|
+
console.error(`Stack trace: ${error.stack}`);
|
|
316
|
+
}
|
|
317
|
+
return false;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Stop a worker
|
|
322
|
+
*/
|
|
323
|
+
async stop(id) {
|
|
324
|
+
const worker = await this.get(id);
|
|
325
|
+
if (!worker) {
|
|
326
|
+
throw new Error(`Worker with ID '${id}' not found.`);
|
|
327
|
+
}
|
|
328
|
+
const execAsync = promisify(exec);
|
|
329
|
+
try {
|
|
330
|
+
console.log(`Stopping worker '${worker.name}'...`);
|
|
331
|
+
// Check if worker is running in PM2
|
|
332
|
+
const { stdout } = await execAsync('pm2 list');
|
|
333
|
+
if (stdout.includes(`${worker.id}`)) {
|
|
334
|
+
// Stop the worker with PM2
|
|
335
|
+
await execAsync(`pm2 stop ${worker.id}`);
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
console.log(`Worker '${worker.name}' is not running.`);
|
|
339
|
+
}
|
|
340
|
+
// Update worker status
|
|
341
|
+
await this.update(id, {
|
|
342
|
+
status: {
|
|
343
|
+
active: false,
|
|
344
|
+
lastSeen: worker.status.lastSeen,
|
|
345
|
+
},
|
|
346
|
+
});
|
|
347
|
+
return true;
|
|
348
|
+
}
|
|
349
|
+
catch (error) {
|
|
350
|
+
console.error(`Error stopping worker:`, error);
|
|
351
|
+
return false;
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Check worker health
|
|
356
|
+
*/
|
|
357
|
+
async checkHealth(id) {
|
|
358
|
+
const worker = await this.get(id);
|
|
359
|
+
if (!worker) {
|
|
360
|
+
throw new Error(`Worker with ID '${id}' not found.`);
|
|
361
|
+
}
|
|
362
|
+
// If no health check configured, just ping the endpoint
|
|
363
|
+
const healthCheckEndpoint = worker.config.healthCheck?.endpoint || worker.endpoint;
|
|
364
|
+
const healthCheckTimeout = worker.config.healthCheck?.timeout || 5000;
|
|
365
|
+
try {
|
|
366
|
+
// Perform health check based on protocol
|
|
367
|
+
if (worker.protocol === 'http' || worker.protocol === 'https') {
|
|
368
|
+
const isHealthy = await this.httpHealthCheck(healthCheckEndpoint, worker.protocol, healthCheckTimeout);
|
|
369
|
+
// Update worker status
|
|
370
|
+
await this.update(id, {
|
|
371
|
+
status: {
|
|
372
|
+
active: isHealthy,
|
|
373
|
+
lastSeen: isHealthy ? Date.now() : worker.status.lastSeen,
|
|
374
|
+
},
|
|
375
|
+
});
|
|
376
|
+
return isHealthy;
|
|
377
|
+
}
|
|
378
|
+
// For other protocols, we'll need to implement specific health checks
|
|
379
|
+
// For now, just return false for unsupported protocols
|
|
380
|
+
console.log(`Health check for protocol '${worker.protocol}' not implemented.`);
|
|
381
|
+
return false;
|
|
382
|
+
}
|
|
383
|
+
catch (error) {
|
|
384
|
+
console.error(`Error checking worker health:`, error);
|
|
385
|
+
// Update worker status to inactive
|
|
386
|
+
await this.update(id, {
|
|
387
|
+
status: {
|
|
388
|
+
active: false,
|
|
389
|
+
lastSeen: worker.status.lastSeen,
|
|
390
|
+
},
|
|
391
|
+
});
|
|
392
|
+
return false;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
/**
|
|
396
|
+
* Generate a worker ID
|
|
397
|
+
*/
|
|
398
|
+
generateWorkerId(name) {
|
|
399
|
+
const normalizedName = name.toLowerCase().replace(/[^a-z0-9]/g, '-');
|
|
400
|
+
const timestamp = Date.now().toString(36);
|
|
401
|
+
return `${normalizedName}-${timestamp}`;
|
|
402
|
+
}
|
|
403
|
+
/**
|
|
404
|
+
* Perform HTTP health check
|
|
405
|
+
*/
|
|
406
|
+
httpHealthCheck(endpoint, protocol, timeout) {
|
|
407
|
+
return new Promise(resolve => {
|
|
408
|
+
const client = protocol === 'https' ? https : http;
|
|
409
|
+
const req = client.get(endpoint, res => {
|
|
410
|
+
// Consider 2xx status codes as healthy
|
|
411
|
+
const isHealthy = res.statusCode !== undefined &&
|
|
412
|
+
res.statusCode >= 200 &&
|
|
413
|
+
res.statusCode < 300;
|
|
414
|
+
resolve(isHealthy);
|
|
415
|
+
});
|
|
416
|
+
req.on('error', () => {
|
|
417
|
+
resolve(false);
|
|
418
|
+
});
|
|
419
|
+
req.setTimeout(timeout, () => {
|
|
420
|
+
req.destroy();
|
|
421
|
+
resolve(false);
|
|
422
|
+
});
|
|
423
|
+
});
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
//# sourceMappingURL=workerManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workerManager.js","sourceRoot":"","sources":["../../src/lib/workerManager.ts"],"names":[],"mappings":"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"}
|
package/dist/tonk.js
CHANGED
|
@@ -7,6 +7,7 @@ import { startCommand } from './commands/start.js';
|
|
|
7
7
|
import { killCommand } from './commands/kill.js';
|
|
8
8
|
import { pushCommand } from './commands/push.js';
|
|
9
9
|
import { proxyCommand } from './commands/proxy.js';
|
|
10
|
+
import { workerCommand } from './commands/worker/index.js';
|
|
10
11
|
import { createServer } from '@tonk/server';
|
|
11
12
|
import chalk from 'chalk';
|
|
12
13
|
import envPaths from 'env-paths';
|
|
@@ -31,6 +32,7 @@ program.addCommand(psCommand);
|
|
|
31
32
|
program.addCommand(lsCommand);
|
|
32
33
|
program.addCommand(killCommand);
|
|
33
34
|
program.addCommand(proxyCommand);
|
|
35
|
+
program.addCommand(workerCommand);
|
|
34
36
|
const startServer = async () => {
|
|
35
37
|
try {
|
|
36
38
|
// Create paths for Tonk daemon home
|
package/dist/tonk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tonk.js","sourceRoot":"","sources":["../src/tonk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,qBAAqB;AACrB,OAAO;KACJ,IAAI,CAAC,MAAM,CAAC;KACZ,WAAW,CAAC,4DAA4D,CAAC;KACzE,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAAC;KACnC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,iCAAiC;AACjC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9B,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9B,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"tonk.js","sourceRoot":"","sources":["../src/tonk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,aAAa,EAAC,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,qBAAqB;AACrB,OAAO;KACJ,IAAI,CAAC,MAAM,CAAC;KACZ,WAAW,CAAC,4DAA4D,CAAC;KACzE,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAAC;KACnC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,iCAAiC;AACjC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9B,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9B,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAElC,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;IAC7B,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAC,MAAM,EAAE,EAAE,EAAC,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEjD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAErE,2BAA2B;QAC3B,KAAK,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC,CAAC;QAElE,+DAA+D;QAC/D,MAAM,YAAY,GAAG;YACnB,WAAW;YACX,OAAO,EAAE,UAAU;SACpB,CAAC;QAEF,mBAAmB;QACnB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;QAEhD,6BAA6B;QAC7B,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;gBACtD,yEAAyE;gBACzE,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE,GAAG,CAAC,CAAC;gBACxD,2BAA2B;gBAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,EAAE,KAAK,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC;AAEF,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;IACzD,WAAW,EAAE,CAAC;AAChB,CAAC;KAAM,CAAC;IACN,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker specification for Tonk
|
|
3
|
+
*
|
|
4
|
+
* This file defines the standard format for worker definitions in Tonk.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Worker status information
|
|
8
|
+
*/
|
|
9
|
+
export interface WorkerStatus {
|
|
10
|
+
/** Whether the worker is currently active */
|
|
11
|
+
active: boolean;
|
|
12
|
+
/** Timestamp of when the worker was last seen (null if never) */
|
|
13
|
+
lastSeen: number | null;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Worker health check configuration
|
|
17
|
+
*/
|
|
18
|
+
export interface WorkerHealthCheck {
|
|
19
|
+
/** Endpoint to ping for health check */
|
|
20
|
+
endpoint: string;
|
|
21
|
+
/** Method to use for health check (GET, POST, etc.) */
|
|
22
|
+
method: string;
|
|
23
|
+
/** Interval in milliseconds between health checks */
|
|
24
|
+
interval: number;
|
|
25
|
+
/** Timeout in milliseconds for health check */
|
|
26
|
+
timeout: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Worker definition
|
|
30
|
+
*/
|
|
31
|
+
export interface Worker {
|
|
32
|
+
/** Unique identifier for the worker */
|
|
33
|
+
id: string;
|
|
34
|
+
/** Human-readable name of the worker */
|
|
35
|
+
name: string;
|
|
36
|
+
/** Description of the worker's purpose */
|
|
37
|
+
description: string;
|
|
38
|
+
/** Endpoint URL/path where the worker can be reached */
|
|
39
|
+
endpoint: string;
|
|
40
|
+
/** Protocol used by the worker (http, ws, tcp, etc.) */
|
|
41
|
+
protocol: string;
|
|
42
|
+
/** Current status of the worker */
|
|
43
|
+
status: WorkerStatus;
|
|
44
|
+
/** Environment variables required by the worker */
|
|
45
|
+
env: Record<string, string>;
|
|
46
|
+
/** Additional configuration options for the worker */
|
|
47
|
+
config: {
|
|
48
|
+
/** Optional health check configuration */
|
|
49
|
+
healthCheck?: WorkerHealthCheck;
|
|
50
|
+
/** Optional worker type (e.g., "obsidian", "rag", "custom") */
|
|
51
|
+
type?: string;
|
|
52
|
+
/** Optional worker version */
|
|
53
|
+
version?: string;
|
|
54
|
+
/** Any other configuration options */
|
|
55
|
+
[key: string]: any;
|
|
56
|
+
};
|
|
57
|
+
/** Timestamp of when the worker was created */
|
|
58
|
+
createdAt: number;
|
|
59
|
+
/** Timestamp of when the worker was last updated */
|
|
60
|
+
updatedAt: number;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Worker registration options
|
|
64
|
+
*/
|
|
65
|
+
export interface WorkerRegistrationOptions {
|
|
66
|
+
/** Name of the worker */
|
|
67
|
+
name: string;
|
|
68
|
+
/** Description of the worker */
|
|
69
|
+
description?: string;
|
|
70
|
+
/** Endpoint URL/path of the worker */
|
|
71
|
+
endpoint: string;
|
|
72
|
+
/** Protocol used by the worker */
|
|
73
|
+
protocol?: string;
|
|
74
|
+
/** Environment variables in KEY=VALUE format */
|
|
75
|
+
env?: string[];
|
|
76
|
+
/** Path to configuration file */
|
|
77
|
+
config?: string;
|
|
78
|
+
/** Worker type */
|
|
79
|
+
type?: string;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Worker manager interface
|
|
83
|
+
*/
|
|
84
|
+
export interface WorkerManager {
|
|
85
|
+
/** Register a new worker */
|
|
86
|
+
register(options: WorkerRegistrationOptions): Promise<Worker>;
|
|
87
|
+
/** Get a worker by ID */
|
|
88
|
+
get(id: string): Promise<Worker | null>;
|
|
89
|
+
/** List all registered workers */
|
|
90
|
+
list(): Promise<Worker[]>;
|
|
91
|
+
/** Update a worker */
|
|
92
|
+
update(id: string, updates: Partial<Worker>): Promise<Worker>;
|
|
93
|
+
/** Remove a worker */
|
|
94
|
+
remove(id: string): Promise<boolean>;
|
|
95
|
+
/** Start a worker */
|
|
96
|
+
start(id: string): Promise<boolean>;
|
|
97
|
+
/** Stop a worker */
|
|
98
|
+
stop(id: string): Promise<boolean>;
|
|
99
|
+
/** Check worker health */
|
|
100
|
+
checkHealth(id: string): Promise<boolean>;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=worker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/types/worker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAC;IAChB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,MAAM,EAAE,YAAY,CAAC;IACrB,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,sDAAsD;IACtD,MAAM,EAAE;QACN,0CAA0C;QAC1C,WAAW,CAAC,EAAE,iBAAiB,CAAC;QAChC,+DAA+D;QAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,8BAA8B;QAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,sCAAsC;QACtC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;IACF,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,yBAAyB;IACzB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,kCAAkC;IAClC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1B,sBAAsB;IACtB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,sBAAsB;IACtB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,qBAAqB;IACrB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,oBAAoB;IACpB,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,0BAA0B;IAC1B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/types/worker.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|