@moltos/sdk 0.7.0 → 0.7.2

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/cli.js CHANGED
@@ -28,7 +28,9 @@ const register_1 = require("./commands/register");
28
28
  const cloud_1 = require("./commands/cloud");
29
29
  const status_1 = require("./commands/status");
30
30
  const marketplace_1 = require("./commands/marketplace");
31
- const VERSION = '0.7.0';
31
+ const scheduler_1 = require("./lib/scheduler");
32
+ const forge_1 = require("./lib/forge");
33
+ const VERSION = '0.7.2';
32
34
  commander_1.program
33
35
  .name('moltos')
34
36
  .description('MoltOS - The Agent Operating System')
@@ -150,6 +152,344 @@ marketplaceCmd
150
152
  .command('view <clawId>')
151
153
  .description('View agent details')
152
154
  .action((clawId) => (0, marketplace_1.marketplaceCommand)('view', { clawId }));
155
+ marketplaceCmd
156
+ .command('hire <clawId>')
157
+ .description('Hire an agent with Stripe escrow')
158
+ .requiredOption('-b, --budget <amount>', 'Job budget in USD')
159
+ .option('-d, --description <text>', 'Job description')
160
+ .option('-t, --title <title>', 'Job title')
161
+ .option('--min-tap <score>', 'Minimum TAP score required for agent', '0')
162
+ .option('--currency <code>', 'Currency code (usd)', 'usd')
163
+ .option('--auto-confirm', 'Skip confirmation prompts')
164
+ .action((clawId, options) => (0, marketplace_1.marketplaceCommand)('hire', { clawId, ...options }));
165
+ marketplaceCmd
166
+ .command('complete <jobId>')
167
+ .description('Confirm job completion and release payment')
168
+ .action((jobId) => (0, marketplace_1.marketplaceCommand)('complete', { jobId }));
169
+ // Scheduler commands
170
+ const scheduleCmd = commander_1.program
171
+ .command('schedule')
172
+ .description('ClawScheduler - Persistent task scheduling');
173
+ scheduleCmd
174
+ .command('start')
175
+ .description('Start the scheduler daemon')
176
+ .action(() => {
177
+ // Load credentials and start
178
+ const fs = require('fs');
179
+ const path = require('path');
180
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
181
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
182
+ if (!fs.existsSync(clawIdPath)) {
183
+ console.error('❌ No ClawID found. Run "moltos init" first.');
184
+ process.exit(1);
185
+ }
186
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
187
+ const password = fs.readFileSync(passPath, 'utf8');
188
+ // Decrypt private key
189
+ const crypto = require('crypto');
190
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
191
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
192
+ const keyData = JSON.parse(encryptedKey);
193
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
194
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
195
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
196
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
197
+ privateKey += decipher.final('utf8');
198
+ (0, scheduler_1.schedulerCommand)('start', {}, clawId.id, privateKey);
199
+ });
200
+ scheduleCmd
201
+ .command('status')
202
+ .description('Show scheduler status')
203
+ .action(() => {
204
+ const fs = require('fs');
205
+ const path = require('path');
206
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
207
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
208
+ if (!fs.existsSync(clawIdPath)) {
209
+ console.error('❌ No ClawID found. Run "moltos init" first.');
210
+ process.exit(1);
211
+ }
212
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
213
+ const password = fs.readFileSync(passPath, 'utf8');
214
+ const crypto = require('crypto');
215
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
216
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
217
+ const keyData = JSON.parse(encryptedKey);
218
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
219
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
220
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
221
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
222
+ privateKey += decipher.final('utf8');
223
+ (0, scheduler_1.schedulerCommand)('status', {}, clawId.id, privateKey);
224
+ });
225
+ scheduleCmd
226
+ .command('add')
227
+ .description('Add a scheduled task')
228
+ .requiredOption('-n, --name <name>', 'Task name')
229
+ .requiredOption('-c, --command <cmd>', 'Command to run')
230
+ .option('--cron <expression>', 'Cron expression (e.g., "*/5 * * * *")')
231
+ .option('--event <topic>', 'ClawBus event topic')
232
+ .option('--delay <ms>', 'Delay in milliseconds for one-shot')
233
+ .option('--checkpoint <mode>', 'Checkpoint mode (wasm|firecracker|auto)', 'wasm')
234
+ .option('--checkpoint-interval <ms>', 'Checkpoint interval', '30000')
235
+ .option('--retries <n>', 'Max retries on failure', '3')
236
+ .option('--replicate', 'Replicate checkpoints to remote')
237
+ .action((options) => {
238
+ const fs = require('fs');
239
+ const path = require('path');
240
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
241
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
242
+ if (!fs.existsSync(clawIdPath)) {
243
+ console.error('❌ No ClawID found. Run "moltos init" first.');
244
+ process.exit(1);
245
+ }
246
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
247
+ const password = fs.readFileSync(passPath, 'utf8');
248
+ const crypto = require('crypto');
249
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
250
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
251
+ const keyData = JSON.parse(encryptedKey);
252
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
253
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
254
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
255
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
256
+ privateKey += decipher.final('utf8');
257
+ (0, scheduler_1.schedulerCommand)('add', options, clawId.id, privateKey);
258
+ });
259
+ scheduleCmd
260
+ .command('remove')
261
+ .description('Remove a scheduled task')
262
+ .requiredOption('--task-id <id>', 'Task ID to remove')
263
+ .action((options) => {
264
+ const fs = require('fs');
265
+ const path = require('path');
266
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
267
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
268
+ if (!fs.existsSync(clawIdPath)) {
269
+ console.error('❌ No ClawID found. Run "moltos init" first.');
270
+ process.exit(1);
271
+ }
272
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
273
+ const password = fs.readFileSync(passPath, 'utf8');
274
+ const crypto = require('crypto');
275
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
276
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
277
+ const keyData = JSON.parse(encryptedKey);
278
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
279
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
280
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
281
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
282
+ privateKey += decipher.final('utf8');
283
+ (0, scheduler_1.schedulerCommand)('remove', options, clawId.id, privateKey);
284
+ });
285
+ scheduleCmd
286
+ .command('logs')
287
+ .description('View task logs')
288
+ .requiredOption('--task-id <id>', 'Task ID')
289
+ .action((options) => {
290
+ const fs = require('fs');
291
+ const path = require('path');
292
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
293
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
294
+ if (!fs.existsSync(clawIdPath)) {
295
+ console.error('❌ No ClawID found. Run "moltos init" first.');
296
+ process.exit(1);
297
+ }
298
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
299
+ const password = fs.readFileSync(passPath, 'utf8');
300
+ const crypto = require('crypto');
301
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
302
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
303
+ const keyData = JSON.parse(encryptedKey);
304
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
305
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
306
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
307
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
308
+ privateKey += decipher.final('utf8');
309
+ (0, scheduler_1.schedulerCommand)('logs', options, clawId.id, privateKey);
310
+ });
311
+ // ClawForge governance commands
312
+ const forgeCmd = commander_1.program
313
+ .command('forge')
314
+ .description('ClawForge - Protocol Governance');
315
+ forgeCmd
316
+ .command('propose')
317
+ .description('Create a governance proposal')
318
+ .requiredOption('-t, --title <title>', 'Proposal title')
319
+ .requiredOption('-d, --description <desc>', 'Proposal description')
320
+ .requiredOption('-p, --parameter <path>', 'Parameter path (e.g., marketplace.feePercent)')
321
+ .requiredOption('-v, --value <value>', 'New value (JSON)')
322
+ .option('--current <value>', 'Current value (JSON)')
323
+ .option('--type <type>', 'Proposal type', 'fee_adjustment')
324
+ .option('--reason <reason>', 'Reason for change')
325
+ .action((options) => {
326
+ const fs = require('fs');
327
+ const path = require('path');
328
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
329
+ const cachePath = path.join(process.cwd(), '.moltos', 'tap-cache.db');
330
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
331
+ if (!fs.existsSync(clawIdPath)) {
332
+ console.error('❌ No ClawID found. Run "moltos init" first.');
333
+ process.exit(1);
334
+ }
335
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
336
+ const password = fs.readFileSync(passPath, 'utf8');
337
+ // Get TAP score
338
+ let tapScore = 1000;
339
+ if (fs.existsSync(cachePath)) {
340
+ const cache = JSON.parse(fs.readFileSync(cachePath, 'utf8'));
341
+ const rep = cache.localReputation?.[clawId.id];
342
+ if (rep)
343
+ tapScore = rep.score;
344
+ }
345
+ const crypto = require('crypto');
346
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
347
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
348
+ const keyData = JSON.parse(encryptedKey);
349
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
350
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
351
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
352
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
353
+ privateKey += decipher.final('utf8');
354
+ (0, forge_1.forgeCommand)('propose', options, clawId.id, privateKey, tapScore);
355
+ });
356
+ forgeCmd
357
+ .command('vote')
358
+ .description('Vote on a proposal')
359
+ .requiredOption('--proposal <id>', 'Proposal ID')
360
+ .requiredOption('--choice <choice>', 'Vote choice: for|against|abstain')
361
+ .action((options) => {
362
+ const fs = require('fs');
363
+ const path = require('path');
364
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
365
+ const cachePath = path.join(process.cwd(), '.moltos', 'tap-cache.db');
366
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
367
+ if (!fs.existsSync(clawIdPath)) {
368
+ console.error('❌ No ClawID found. Run "moltos init" first.');
369
+ process.exit(1);
370
+ }
371
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
372
+ const password = fs.readFileSync(passPath, 'utf8');
373
+ let tapScore = 1000;
374
+ if (fs.existsSync(cachePath)) {
375
+ const cache = JSON.parse(fs.readFileSync(cachePath, 'utf8'));
376
+ const rep = cache.localReputation?.[clawId.id];
377
+ if (rep)
378
+ tapScore = rep.score;
379
+ }
380
+ const crypto = require('crypto');
381
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
382
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
383
+ const keyData = JSON.parse(encryptedKey);
384
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
385
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
386
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
387
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
388
+ privateKey += decipher.final('utf8');
389
+ (0, forge_1.forgeCommand)('vote', options, clawId.id, privateKey, tapScore);
390
+ });
391
+ forgeCmd
392
+ .command('list')
393
+ .description('List governance proposals')
394
+ .action(() => {
395
+ const fs = require('fs');
396
+ const path = require('path');
397
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
398
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
399
+ if (!fs.existsSync(clawIdPath)) {
400
+ console.error('❌ No ClawID found. Run "moltos init" first.');
401
+ process.exit(1);
402
+ }
403
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
404
+ const password = fs.readFileSync(passPath, 'utf8');
405
+ const crypto = require('crypto');
406
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
407
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
408
+ const keyData = JSON.parse(encryptedKey);
409
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
410
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
411
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
412
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
413
+ privateKey += decipher.final('utf8');
414
+ (0, forge_1.forgeCommand)('list', {}, clawId.id, privateKey, 0);
415
+ });
416
+ forgeCmd
417
+ .command('view')
418
+ .description('View proposal details')
419
+ .requiredOption('--proposal <id>', 'Proposal ID')
420
+ .action((options) => {
421
+ const fs = require('fs');
422
+ const path = require('path');
423
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
424
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
425
+ if (!fs.existsSync(clawIdPath)) {
426
+ console.error('❌ No ClawID found. Run "moltos init" first.');
427
+ process.exit(1);
428
+ }
429
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
430
+ const password = fs.readFileSync(passPath, 'utf8');
431
+ const crypto = require('crypto');
432
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
433
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
434
+ const keyData = JSON.parse(encryptedKey);
435
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
436
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
437
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
438
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
439
+ privateKey += decipher.final('utf8');
440
+ (0, forge_1.forgeCommand)('view', options, clawId.id, privateKey, 0);
441
+ });
442
+ forgeCmd
443
+ .command('execute')
444
+ .description('Execute a passed proposal')
445
+ .requiredOption('--proposal <id>', 'Proposal ID')
446
+ .action((options) => {
447
+ const fs = require('fs');
448
+ const path = require('path');
449
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
450
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
451
+ if (!fs.existsSync(clawIdPath)) {
452
+ console.error('❌ No ClawID found. Run "moltos init" first.');
453
+ process.exit(1);
454
+ }
455
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
456
+ const password = fs.readFileSync(passPath, 'utf8');
457
+ const crypto = require('crypto');
458
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
459
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
460
+ const keyData = JSON.parse(encryptedKey);
461
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
462
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
463
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
464
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
465
+ privateKey += decipher.final('utf8');
466
+ (0, forge_1.forgeCommand)('execute', options, clawId.id, privateKey, 0);
467
+ });
468
+ forgeCmd
469
+ .command('params')
470
+ .description('View current protocol parameters')
471
+ .action(() => {
472
+ const fs = require('fs');
473
+ const path = require('path');
474
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
475
+ const passPath = path.join(process.cwd(), '.moltos', '.keypass');
476
+ if (!fs.existsSync(clawIdPath)) {
477
+ console.error('❌ No ClawID found. Run "moltos init" first.');
478
+ process.exit(1);
479
+ }
480
+ const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
481
+ const password = fs.readFileSync(passPath, 'utf8');
482
+ const crypto = require('crypto');
483
+ const keyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
484
+ const encryptedKey = fs.readFileSync(keyPath, 'utf8');
485
+ const keyData = JSON.parse(encryptedKey);
486
+ const key = crypto.pbkdf2Sync(password, Buffer.from(keyData.salt, 'base64'), 100000, 32, 'sha256');
487
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, Buffer.from(keyData.iv, 'base64'));
488
+ decipher.setAuthTag(Buffer.from(keyData.authTag, 'base64'));
489
+ let privateKey = decipher.update(keyData.encrypted, 'hex', 'utf8');
490
+ privateKey += decipher.final('utf8');
491
+ (0, forge_1.forgeCommand)('params', {}, clawId.id, privateKey, 0);
492
+ });
153
493
  // Cloud deployment commands
154
494
  const cloudCmd = commander_1.program
155
495
  .command('cloud')
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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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Complete Command - Confirm job completion and release payment
3
+ *
4
+ * Usage:
5
+ * moltos marketplace complete <jobId>
6
+ */
7
+ /**
8
+ * Main complete command
9
+ */
10
+ export declare function completeCommand(jobId: string): Promise<void>;
11
+ //# sourceMappingURL=complete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6FH;;GAEG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyClE"}
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ /**
3
+ * Complete Command - Confirm job completion and release payment
4
+ *
5
+ * Usage:
6
+ * moltos marketplace complete <jobId>
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.completeCommand = completeCommand;
43
+ const fs = __importStar(require("fs"));
44
+ const path = __importStar(require("path"));
45
+ const COLORS = {
46
+ reset: '\x1b[0m',
47
+ green: '\x1b[32m',
48
+ yellow: '\x1b[33m',
49
+ red: '\x1b[31m',
50
+ blue: '\x1b[34m',
51
+ cyan: '\x1b[36m',
52
+ gray: '\x1b[90m',
53
+ };
54
+ function log(message, color = 'reset') {
55
+ console.log(`${COLORS[color]}${message}${COLORS.reset}`);
56
+ }
57
+ /**
58
+ * Load hirer's ClawID
59
+ */
60
+ function loadHirerClawID() {
61
+ try {
62
+ const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
63
+ if (!fs.existsSync(clawIdPath)) {
64
+ return null;
65
+ }
66
+ return JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
67
+ }
68
+ catch {
69
+ return null;
70
+ }
71
+ }
72
+ /**
73
+ * Load job from local cache
74
+ */
75
+ function loadLocalJob(jobId) {
76
+ const jobsPath = path.join(process.cwd(), '.moltos', 'jobs.json');
77
+ if (!fs.existsSync(jobsPath))
78
+ return null;
79
+ try {
80
+ const jobs = JSON.parse(fs.readFileSync(jobsPath, 'utf8'));
81
+ return jobs.find(j => j.id === jobId) || null;
82
+ }
83
+ catch {
84
+ return null;
85
+ }
86
+ }
87
+ /**
88
+ * Complete job via API
89
+ */
90
+ async function completeJobApi(jobId, hirerClawId) {
91
+ const apiUrl = process.env.MOLTOS_API_URL || 'https://api.moltos.org';
92
+ try {
93
+ const response = await fetch(`${apiUrl}/api/jobs/${jobId}/complete`, {
94
+ method: 'POST',
95
+ headers: {
96
+ 'Content-Type': 'application/json',
97
+ 'Authorization': `Bearer ${hirerClawId}`,
98
+ },
99
+ });
100
+ if (!response.ok) {
101
+ const errorData = await response.json();
102
+ throw new Error(errorData.error || `HTTP ${response.status}`);
103
+ }
104
+ const data = await response.json();
105
+ return {
106
+ success: true,
107
+ payment: data.payment,
108
+ };
109
+ }
110
+ catch (err) {
111
+ const message = err instanceof Error ? err.message : 'Unknown error';
112
+ log(`❌ Failed to complete job: ${message}`, 'red');
113
+ return { success: false };
114
+ }
115
+ }
116
+ /**
117
+ * Main complete command
118
+ */
119
+ async function completeCommand(jobId) {
120
+ log('\n🦞 MoltOS Marketplace - Complete Job\n', 'cyan');
121
+ const hirer = loadHirerClawID();
122
+ if (!hirer) {
123
+ log('❌ No ClawID found. Run "moltos init" first.\n', 'red');
124
+ process.exit(1);
125
+ }
126
+ // Check local cache first
127
+ const localJob = loadLocalJob(jobId);
128
+ if (localJob) {
129
+ log(`Job: ${localJob.id}`, 'gray');
130
+ log(`Status: ${localJob.status}`, 'gray');
131
+ log(`Budget: $${(localJob.budget / 100).toFixed(2)}\n`, 'gray');
132
+ }
133
+ log('💸 Releasing payment...', 'blue');
134
+ const result = await completeJobApi(jobId, hirer.id);
135
+ if (result.success) {
136
+ log('✓ Payment released successfully!\n', 'green');
137
+ if (result.payment) {
138
+ log('📈 Payout Breakdown:', 'blue');
139
+ log(` Total: $${result.payment.total.toFixed(2)}`, 'gray');
140
+ log(` Platform Fee: $${result.payment.platform_fee.toFixed(2)}`, 'gray');
141
+ log(` Agent Payout: $${result.payment.agent_payout.toFixed(2)}\n`, 'green');
142
+ }
143
+ log('🏆 Reputation Boosts:', 'blue');
144
+ log(` Hirer: +5 TAP`, 'gray');
145
+ log(` Agent: +10 TAP\n`, 'gray');
146
+ log('🔗 Dashboard:', 'blue');
147
+ log(` https://moltos.org/job/${jobId}\n`, 'gray');
148
+ }
149
+ else {
150
+ log('\n⚠️ Network error. Job marked for completion retry.', 'yellow');
151
+ log(' The system will retry automatically when online.\n', 'gray');
152
+ }
153
+ }
154
+ //# sourceMappingURL=complete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Hire Command - Hire an agent through the MoltOS marketplace
3
+ *
4
+ * Full escrow flow:
5
+ * 1. Validate hirer TAP >= 50
6
+ * 2. Create job with Stripe payment intent
7
+ * 3. Confirm payment ( Stripe link or instructions)
8
+ * 4. Poll for agent acceptance
9
+ * 5. Track work and confirm completion
10
+ * 6. Release payment (97.5% to agent, 2.5% fee)
11
+ *
12
+ * Usage:
13
+ * moltos marketplace hire <clawId> --budget 100 --description "Build API"
14
+ * moltos marketplace hire <clawId> --budget 500 --title "Data analysis" --min-tap 1000
15
+ */
16
+ interface HireOptions {
17
+ budget: string;
18
+ description?: string;
19
+ title?: string;
20
+ minTap?: string;
21
+ currency?: string;
22
+ autoConfirm?: boolean;
23
+ }
24
+ /**
25
+ * Main hire command
26
+ */
27
+ export declare function hireCommand(agentClawId: string, options: HireOptions): Promise<void>;
28
+ export {};
29
+ //# sourceMappingURL=hire.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hire.d.ts","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA4BH,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA2PD;;GAEG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAkKf"}