@moltos/sdk 0.7.3 → 0.10.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 (122) hide show
  1. package/README.md +48 -146
  2. package/dist/cli.d.ts +11 -14
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +504 -540
  5. package/dist/cli.js.map +1 -1
  6. package/dist/index.d.ts +18 -12
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +18 -37
  9. package/dist/index.js.map +1 -1
  10. package/dist/react.d.ts +138 -0
  11. package/dist/react.d.ts.map +1 -0
  12. package/dist/react.js +335 -0
  13. package/dist/react.js.map +1 -0
  14. package/dist/sdk.d.ts +217 -0
  15. package/dist/sdk.d.ts.map +1 -0
  16. package/dist/sdk.js +325 -0
  17. package/dist/sdk.js.map +1 -0
  18. package/dist/types.d.ts +91 -0
  19. package/dist/types.d.ts.map +1 -0
  20. package/dist/types.js +5 -0
  21. package/dist/types.js.map +1 -0
  22. package/package.json +32 -53
  23. package/dist/adapters/langchain.d.ts +0 -84
  24. package/dist/adapters/langchain.d.ts.map +0 -1
  25. package/dist/adapters/langchain.js +0 -145
  26. package/dist/adapters/langchain.js.map +0 -1
  27. package/dist/adapters/openclaw.d.ts +0 -83
  28. package/dist/adapters/openclaw.d.ts.map +0 -1
  29. package/dist/adapters/openclaw.js +0 -207
  30. package/dist/adapters/openclaw.js.map +0 -1
  31. package/dist/clawfs.d.ts +0 -95
  32. package/dist/clawfs.d.ts.map +0 -1
  33. package/dist/clawfs.js +0 -546
  34. package/dist/clawfs.js.map +0 -1
  35. package/dist/commands/agent.d.ts +0 -15
  36. package/dist/commands/agent.d.ts.map +0 -1
  37. package/dist/commands/agent.js +0 -327
  38. package/dist/commands/agent.js.map +0 -1
  39. package/dist/commands/arbitra.d.ts +0 -54
  40. package/dist/commands/arbitra.d.ts.map +0 -1
  41. package/dist/commands/arbitra.js +0 -321
  42. package/dist/commands/arbitra.js.map +0 -1
  43. package/dist/commands/clawid-cmd.d.ts +0 -18
  44. package/dist/commands/clawid-cmd.d.ts.map +0 -1
  45. package/dist/commands/clawid-cmd.js +0 -217
  46. package/dist/commands/clawid-cmd.js.map +0 -1
  47. package/dist/commands/cloud.d.ts +0 -37
  48. package/dist/commands/cloud.d.ts.map +0 -1
  49. package/dist/commands/cloud.js +0 -390
  50. package/dist/commands/cloud.js.map +0 -1
  51. package/dist/commands/complete.d.ts +0 -11
  52. package/dist/commands/complete.d.ts.map +0 -1
  53. package/dist/commands/complete.js +0 -154
  54. package/dist/commands/complete.js.map +0 -1
  55. package/dist/commands/fs.d.ts +0 -5
  56. package/dist/commands/fs.d.ts.map +0 -1
  57. package/dist/commands/fs.js +0 -139
  58. package/dist/commands/fs.js.map +0 -1
  59. package/dist/commands/hire.d.ts +0 -29
  60. package/dist/commands/hire.d.ts.map +0 -1
  61. package/dist/commands/hire.js +0 -411
  62. package/dist/commands/hire.js.map +0 -1
  63. package/dist/commands/init.d.ts +0 -23
  64. package/dist/commands/init.d.ts.map +0 -1
  65. package/dist/commands/init.js +0 -488
  66. package/dist/commands/init.js.map +0 -1
  67. package/dist/commands/marketplace.d.ts +0 -14
  68. package/dist/commands/marketplace.d.ts.map +0 -1
  69. package/dist/commands/marketplace.js +0 -183
  70. package/dist/commands/marketplace.js.map +0 -1
  71. package/dist/commands/register.d.ts +0 -8
  72. package/dist/commands/register.d.ts.map +0 -1
  73. package/dist/commands/register.js +0 -152
  74. package/dist/commands/register.js.map +0 -1
  75. package/dist/commands/status.d.ts +0 -17
  76. package/dist/commands/status.d.ts.map +0 -1
  77. package/dist/commands/status.js +0 -388
  78. package/dist/commands/status.js.map +0 -1
  79. package/dist/commands/tap.d.ts +0 -5
  80. package/dist/commands/tap.d.ts.map +0 -1
  81. package/dist/commands/tap.js +0 -31
  82. package/dist/commands/tap.js.map +0 -1
  83. package/dist/lib/api.d.ts +0 -32
  84. package/dist/lib/api.d.ts.map +0 -1
  85. package/dist/lib/api.js +0 -80
  86. package/dist/lib/api.js.map +0 -1
  87. package/dist/lib/arbitra.d.ts +0 -302
  88. package/dist/lib/arbitra.d.ts.map +0 -1
  89. package/dist/lib/arbitra.js +0 -486
  90. package/dist/lib/arbitra.js.map +0 -1
  91. package/dist/lib/clawfs.d.ts +0 -277
  92. package/dist/lib/clawfs.d.ts.map +0 -1
  93. package/dist/lib/clawfs.js +0 -628
  94. package/dist/lib/clawfs.js.map +0 -1
  95. package/dist/lib/clawid.d.ts +0 -189
  96. package/dist/lib/clawid.d.ts.map +0 -1
  97. package/dist/lib/clawid.js +0 -455
  98. package/dist/lib/clawid.js.map +0 -1
  99. package/dist/lib/config.d.ts +0 -23
  100. package/dist/lib/config.d.ts.map +0 -1
  101. package/dist/lib/config.js +0 -29
  102. package/dist/lib/config.js.map +0 -1
  103. package/dist/lib/forge.d.ts +0 -139
  104. package/dist/lib/forge.d.ts.map +0 -1
  105. package/dist/lib/forge.js +0 -461
  106. package/dist/lib/forge.js.map +0 -1
  107. package/dist/lib/scheduler.d.ts +0 -138
  108. package/dist/lib/scheduler.d.ts.map +0 -1
  109. package/dist/lib/scheduler.js +0 -597
  110. package/dist/lib/scheduler.js.map +0 -1
  111. package/dist/lib/supabase.d.ts +0 -41
  112. package/dist/lib/supabase.d.ts.map +0 -1
  113. package/dist/lib/supabase.js +0 -125
  114. package/dist/lib/supabase.js.map +0 -1
  115. package/dist/lib/tap.d.ts +0 -208
  116. package/dist/lib/tap.d.ts.map +0 -1
  117. package/dist/lib/tap.js +0 -549
  118. package/dist/lib/tap.js.map +0 -1
  119. package/dist/tap.d.ts +0 -66
  120. package/dist/tap.d.ts.map +0 -1
  121. package/dist/tap.js +0 -302
  122. package/dist/tap.js.map +0 -1
@@ -1,139 +0,0 @@
1
- "use strict";
2
- /**
3
- * FS Command - ClawFS file operations with full cryptographic verification
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || (function () {
22
- var ownKeys = function(o) {
23
- ownKeys = Object.getOwnPropertyNames || function (o) {
24
- var ar = [];
25
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
- return ar;
27
- };
28
- return ownKeys(o);
29
- };
30
- return function (mod) {
31
- if (mod && mod.__esModule) return mod;
32
- var result = {};
33
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
- __setModuleDefault(result, mod);
35
- return result;
36
- };
37
- })();
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.fsCommand = fsCommand;
40
- const fs = __importStar(require("fs"));
41
- const path = __importStar(require("path"));
42
- const crypto = __importStar(require("crypto"));
43
- const clawfs_1 = require("../clawfs");
44
- /**
45
- * Load password from secure file
46
- */
47
- function loadPassword() {
48
- try {
49
- const passFile = path.join(process.cwd(), '.moltos', '.keypass');
50
- if (!fs.existsSync(passFile))
51
- return null;
52
- return fs.readFileSync(passFile, 'utf8');
53
- }
54
- catch {
55
- return null;
56
- }
57
- }
58
- /**
59
- * Decrypt private key using password
60
- */
61
- function decryptPrivateKey(encryptedData, password) {
62
- const data = JSON.parse(encryptedData);
63
- const salt = Buffer.from(data.salt, 'base64');
64
- const iv = Buffer.from(data.iv, 'base64');
65
- const authTag = Buffer.from(data.authTag, 'base64');
66
- const encrypted = data.encrypted;
67
- const key = crypto.pbkdf2Sync(password, salt, 100000, 32, 'sha256');
68
- const decipher = crypto.createDecipheriv('aes-256-gcm', key, iv);
69
- decipher.setAuthTag(authTag);
70
- let decrypted = decipher.update(encrypted, 'hex', 'utf8');
71
- decrypted += decipher.final('utf8');
72
- return decrypted;
73
- }
74
- /**
75
- * Load ClawID and decrypt private key
76
- */
77
- function loadClawID() {
78
- try {
79
- const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
80
- const privateKeyPath = path.join(process.cwd(), '.moltos', 'clawid.key');
81
- if (!fs.existsSync(clawIdPath) || !fs.existsSync(privateKeyPath)) {
82
- return null;
83
- }
84
- const clawId = JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
85
- const password = loadPassword();
86
- if (!password) {
87
- console.error('✗ Encryption password not found. Re-run init?');
88
- return null;
89
- }
90
- const encryptedPrivateKey = fs.readFileSync(privateKeyPath, 'utf8');
91
- const privateKey = decryptPrivateKey(encryptedPrivateKey, password);
92
- return { id: clawId.id, privateKey };
93
- }
94
- catch (err) {
95
- console.error('✗ Failed to load ClawID:', err);
96
- return null;
97
- }
98
- }
99
- async function fsCommand(action, options) {
100
- const baseDir = path.join(process.cwd(), 'clawfs_data');
101
- if (!fs.existsSync(baseDir)) {
102
- console.error('✗ ClawFS not initialized. Run "npx @moltos/sdk init" first.');
103
- process.exit(1);
104
- }
105
- const clawId = loadClawID();
106
- if (!clawId) {
107
- console.error('✗ ClawID not found or decryption failed.');
108
- process.exit(1);
109
- }
110
- // Map simple commands to clawFSCommand
111
- switch (action) {
112
- case 'ls':
113
- await (0, clawfs_1.clawFSCommand)('list', {}, clawId.id, clawId.privateKey);
114
- break;
115
- case 'cat':
116
- case 'read':
117
- await (0, clawfs_1.clawFSCommand)('read', { file: options.file || options }, clawId.id, clawId.privateKey);
118
- break;
119
- case 'write':
120
- await (0, clawfs_1.clawFSCommand)('write', options, clawId.id, clawId.privateKey);
121
- break;
122
- case 'snapshot':
123
- await (0, clawfs_1.clawFSCommand)('snapshot', options, clawId.id, clawId.privateKey);
124
- break;
125
- case 'temporal':
126
- await (0, clawfs_1.clawFSCommand)('temporal', options, clawId.id, clawId.privateKey);
127
- break;
128
- case 'evidence':
129
- await (0, clawfs_1.clawFSCommand)('evidence', options, clawId.id, clawId.privateKey);
130
- break;
131
- case 'stats':
132
- await (0, clawfs_1.clawFSCommand)('stats', {}, clawId.id, clawId.privateKey);
133
- break;
134
- default:
135
- console.error(`✗ Unknown fs command: ${action}`);
136
- process.exit(1);
137
- }
138
- }
139
- //# sourceMappingURL=fs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/commands/fs.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,411 +0,0 @@
1
- "use strict";
2
- /**
3
- * Hire Command - Hire an agent through the MoltOS marketplace
4
- *
5
- * Full escrow flow:
6
- * 1. Validate hirer TAP >= 50
7
- * 2. Create job with Stripe payment intent
8
- * 3. Confirm payment ( Stripe link or instructions)
9
- * 4. Poll for agent acceptance
10
- * 5. Track work and confirm completion
11
- * 6. Release payment (97.5% to agent, 2.5% fee)
12
- *
13
- * Usage:
14
- * moltos marketplace hire <clawId> --budget 100 --description "Build API"
15
- * moltos marketplace hire <clawId> --budget 500 --title "Data analysis" --min-tap 1000
16
- */
17
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- var desc = Object.getOwnPropertyDescriptor(m, k);
20
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
- desc = { enumerable: true, get: function() { return m[k]; } };
22
- }
23
- Object.defineProperty(o, k2, desc);
24
- }) : (function(o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- o[k2] = m[k];
27
- }));
28
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
- Object.defineProperty(o, "default", { enumerable: true, value: v });
30
- }) : function(o, v) {
31
- o["default"] = v;
32
- });
33
- var __importStar = (this && this.__importStar) || (function () {
34
- var ownKeys = function(o) {
35
- ownKeys = Object.getOwnPropertyNames || function (o) {
36
- var ar = [];
37
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
- return ar;
39
- };
40
- return ownKeys(o);
41
- };
42
- return function (mod) {
43
- if (mod && mod.__esModule) return mod;
44
- var result = {};
45
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
- __setModuleDefault(result, mod);
47
- return result;
48
- };
49
- })();
50
- Object.defineProperty(exports, "__esModule", { value: true });
51
- exports.hireCommand = hireCommand;
52
- const fs = __importStar(require("fs"));
53
- const path = __importStar(require("path"));
54
- const supabase_1 = require("../lib/supabase");
55
- const readline = __importStar(require("readline"));
56
- const COLORS = {
57
- reset: '\x1b[0m',
58
- green: '\x1b[32m',
59
- yellow: '\x1b[33m',
60
- red: '\x1b[31m',
61
- blue: '\x1b[34m',
62
- cyan: '\x1b[36m',
63
- gray: '\x1b[90m',
64
- magenta: '\x1b[35m',
65
- };
66
- const MIN_HIRER_TAP = 50; // Minimum TAP to hire
67
- function log(message, color = 'reset') {
68
- console.log(`${COLORS[color]}${message}${COLORS.reset}`);
69
- }
70
- function prompt(question) {
71
- const rl = readline.createInterface({
72
- input: process.stdin,
73
- output: process.stdout,
74
- });
75
- return new Promise((resolve) => {
76
- rl.question(question, (answer) => {
77
- rl.close();
78
- resolve(answer);
79
- });
80
- });
81
- }
82
- /**
83
- * Load hirer's ClawID
84
- */
85
- function loadHirerClawID() {
86
- try {
87
- const clawIdPath = path.join(process.cwd(), '.moltos', 'clawid.json');
88
- if (!fs.existsSync(clawIdPath)) {
89
- return null;
90
- }
91
- return JSON.parse(fs.readFileSync(clawIdPath, 'utf8'));
92
- }
93
- catch {
94
- return null;
95
- }
96
- }
97
- /**
98
- * Check hirer has sufficient TAP
99
- */
100
- async function validateHirer(clawId) {
101
- try {
102
- // Try network first
103
- const agentData = await (0, supabase_1.getAgentTAP)(clawId);
104
- if (agentData) {
105
- return {
106
- valid: agentData.tap_score >= MIN_HIRER_TAP,
107
- tap: agentData.tap_score,
108
- tier: agentData.tier,
109
- };
110
- }
111
- }
112
- catch {
113
- // Fall back to local cache
114
- }
115
- // Local cache fallback
116
- const cachePath = path.join(process.cwd(), '.moltos', 'tap-cache.db');
117
- if (fs.existsSync(cachePath)) {
118
- const cache = JSON.parse(fs.readFileSync(cachePath, 'utf8'));
119
- const localRep = cache.localReputation?.[clawId];
120
- if (localRep) {
121
- return {
122
- valid: localRep.score >= MIN_HIRER_TAP,
123
- tap: localRep.score,
124
- tier: localRep.tier,
125
- };
126
- }
127
- }
128
- // Default for new agents
129
- return { valid: false, tap: 1000, tier: 'Novice' };
130
- }
131
- /**
132
- * Create job via API
133
- */
134
- async function createJob(hirerClawId, agentClawId, options) {
135
- const apiUrl = process.env.MOLTOS_API_URL || 'https://api.moltos.org';
136
- const budgetCents = Math.round(parseFloat(options.budget) * 100);
137
- const payload = {
138
- title: options.title || `Job for ${agentClawId.slice(0, 16)}...`,
139
- description: options.description || 'No description provided',
140
- budget: budgetCents,
141
- min_tap: parseInt(options.minTap || '0', 10),
142
- currency: options.currency || 'usd',
143
- };
144
- try {
145
- const response = await fetch(`${apiUrl}/api/jobs`, {
146
- method: 'POST',
147
- headers: {
148
- 'Content-Type': 'application/json',
149
- 'Authorization': `Bearer ${hirerClawId}`,
150
- },
151
- body: JSON.stringify(payload),
152
- });
153
- if (!response.ok) {
154
- const errorData = await response.json();
155
- throw new Error(errorData.error || `HTTP ${response.status}`);
156
- }
157
- const data = await response.json();
158
- return {
159
- job: data.job,
160
- payment: data.payment,
161
- };
162
- }
163
- catch (err) {
164
- const message = err instanceof Error ? err.message : 'Unknown error';
165
- log(`\n❌ Failed to create job: ${message}`, 'red');
166
- if (message.includes('Insufficient TAP')) {
167
- log(` You need at least ${MIN_HIRER_TAP} TAP to hire agents.`, 'yellow');
168
- log(` Complete jobs or receive attestations to increase your score.\n`, 'gray');
169
- }
170
- return null;
171
- }
172
- }
173
- /**
174
- * Simulate job creation when offline
175
- */
176
- async function createOfflineJob(hirerClawId, agentClawId, options) {
177
- const budgetCents = Math.round(parseFloat(options.budget) * 100);
178
- // Create local job record
179
- const job = {
180
- id: `job_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`,
181
- title: options.title || `Job for ${agentClawId.slice(0, 16)}...`,
182
- description: options.description || 'No description provided',
183
- budget: budgetCents,
184
- currency: options.currency || 'usd',
185
- status: 'open',
186
- hirer_claw_id: hirerClawId,
187
- agent_claw_id: null,
188
- min_tap: parseInt(options.minTap || '0', 10),
189
- created_at: new Date().toISOString(),
190
- };
191
- // Save to local jobs file
192
- const jobsPath = path.join(process.cwd(), '.moltos', 'jobs.json');
193
- const jobs = fs.existsSync(jobsPath)
194
- ? JSON.parse(fs.readFileSync(jobsPath, 'utf8'))
195
- : [];
196
- jobs.push(job);
197
- fs.writeFileSync(jobsPath, JSON.stringify(jobs, null, 2));
198
- return {
199
- job,
200
- payment: {
201
- client_secret: 'offline_mode_no_payment_required',
202
- payment_intent_id: `pi_offline_${Date.now()}`,
203
- },
204
- };
205
- }
206
- /**
207
- * Poll for job status updates
208
- */
209
- async function pollJobStatus(jobId, onStatusChange) {
210
- const apiUrl = process.env.MOLTOS_API_URL || 'https://api.moltos.org';
211
- const checkStatus = async () => {
212
- try {
213
- const response = await fetch(`${apiUrl}/api/jobs?status=all`, {
214
- headers: { 'Authorization': `Bearer dummy` },
215
- });
216
- if (!response.ok)
217
- return false;
218
- const data = await response.json();
219
- const job = data.jobs?.find((j) => j.id === jobId);
220
- if (job) {
221
- onStatusChange(job);
222
- return job.status === 'in_progress' || job.status === 'completed';
223
- }
224
- }
225
- catch {
226
- // Network error, will retry
227
- }
228
- return false;
229
- };
230
- // Poll every 10 seconds for 5 minutes
231
- for (let i = 0; i < 30; i++) {
232
- const done = await checkStatus();
233
- if (done)
234
- return;
235
- await new Promise(r => setTimeout(r, 10000));
236
- }
237
- }
238
- /**
239
- * Confirm job completion and release payment
240
- */
241
- async function completeJob(jobId, hirerClawId) {
242
- const apiUrl = process.env.MOLTOS_API_URL || 'https://api.moltos.org';
243
- try {
244
- const response = await fetch(`${apiUrl}/api/jobs/${jobId}/complete`, {
245
- method: 'POST',
246
- headers: {
247
- 'Content-Type': 'application/json',
248
- 'Authorization': `Bearer ${hirerClawId}`,
249
- },
250
- });
251
- if (!response.ok) {
252
- const errorData = await response.json();
253
- throw new Error(errorData.error || `HTTP ${response.status}`);
254
- }
255
- const data = await response.json();
256
- return {
257
- success: true,
258
- payout: data.payment,
259
- };
260
- }
261
- catch (err) {
262
- const message = err instanceof Error ? err.message : 'Unknown error';
263
- log(`\n❌ Failed to complete job: ${message}`, 'red');
264
- return { success: false };
265
- }
266
- }
267
- /**
268
- * Main hire command
269
- */
270
- async function hireCommand(agentClawId, options) {
271
- log('\n🦞 MoltOS Marketplace - Hire Agent\n', 'cyan');
272
- // Validate hirer
273
- const hirer = loadHirerClawID();
274
- if (!hirer) {
275
- log('❌ No ClawID found. Run "moltos init" first.\n', 'red');
276
- process.exit(1);
277
- }
278
- log(`Hirer: ${hirer.name} (${hirer.id.slice(0, 20)}...)`, 'gray');
279
- log(`Agent: ${agentClawId}\n`, 'gray');
280
- // Check TAP score
281
- log('🔐 Validating TAP scores...', 'blue');
282
- const hirerValidation = await validateHirer(hirer.id);
283
- if (!hirerValidation.valid) {
284
- log(`\n❌ Insufficient TAP score: ${(hirerValidation.tap / 100).toFixed(2)}`, 'red');
285
- log(` Required: ${(MIN_HIRER_TAP / 100).toFixed(2)}`, 'yellow');
286
- log(` Complete jobs or receive attestations to increase your score.\n`, 'gray');
287
- process.exit(1);
288
- }
289
- log(`✓ Hirer TAP: ${(hirerValidation.tap / 100).toFixed(2)} (${hirerValidation.tier})`, 'green');
290
- // Validate agent exists
291
- const agentData = await (0, supabase_1.getAgentTAP)(agentClawId);
292
- if (!agentData) {
293
- log(`\n⚠️ Agent ${agentClawId} not found on network.`, 'yellow');
294
- const proceed = await prompt('Continue anyway? (y/N): ');
295
- if (proceed.toLowerCase() !== 'y') {
296
- log('Hiring cancelled.\n');
297
- return;
298
- }
299
- }
300
- else {
301
- log(`✓ Agent TAP: ${(agentData.tap_score / 100).toFixed(2)} (${agentData.tier})\n`, 'green');
302
- }
303
- // Validate budget
304
- const budget = parseFloat(options.budget);
305
- if (isNaN(budget) || budget <= 0) {
306
- log('❌ Invalid budget. Must be a positive number.\n', 'red');
307
- process.exit(1);
308
- }
309
- // Calculate fees
310
- const platformFee = budget * 0.025;
311
- const agentPayout = budget * 0.975;
312
- log('💰 Payment Summary:', 'blue');
313
- log(` Budget: $${budget.toFixed(2)}`, 'gray');
314
- log(` Platform Fee: $${platformFee.toFixed(2)} (2.5%)`, 'gray');
315
- log(` Agent Receives: $${agentPayout.toFixed(2)} (97.5%)\n`, 'green');
316
- // Confirm
317
- if (!options.autoConfirm) {
318
- const confirm = await prompt('Proceed with hiring? (y/N): ');
319
- if (confirm.toLowerCase() !== 'y') {
320
- log('Hiring cancelled.\n');
321
- return;
322
- }
323
- }
324
- // Create job
325
- log('\n📋 Creating job...', 'blue');
326
- let result = await createJob(hirer.id, agentClawId, options);
327
- // Fall back to offline mode if network fails
328
- if (!result) {
329
- log('⚠️ Network unavailable. Creating offline job record...', 'yellow');
330
- result = await createOfflineJob(hirer.id, agentClawId, options);
331
- log('✓ Offline job created\n', 'green');
332
- }
333
- else {
334
- log('✓ Job created on network\n', 'green');
335
- }
336
- const { job, payment } = result;
337
- // Show payment instructions
338
- if (payment.client_secret !== 'offline_mode_no_payment_required') {
339
- log('💳 Payment Required:', 'blue');
340
- log(` Job ID: ${job.id}`, 'gray');
341
- log(` Amount: $${budget.toFixed(2)}`, 'gray');
342
- log(`\n Stripe Payment Intent: ${payment.payment_intent_id}`, 'gray');
343
- log(` Complete payment at: https://moltos.org/pay/${payment.payment_intent_id}\n`, 'cyan');
344
- if (!options.autoConfirm) {
345
- await prompt('Press Enter after completing payment...');
346
- }
347
- }
348
- // Show job details
349
- log('\n📊 Job Details:', 'blue');
350
- log(` ID: ${job.id}`, 'gray');
351
- log(` Title: ${job.title}`, 'gray');
352
- log(` Budget: $${(job.budget / 100).toFixed(2)}`, 'gray');
353
- log(` Status: ${job.status}`, 'gray');
354
- log(` Created: ${new Date(job.created_at).toLocaleString()}\n`, 'gray');
355
- // Poll for agent acceptance (if online)
356
- if (payment.client_secret !== 'offline_mode_no_payment_required') {
357
- log('⏳ Waiting for agent acceptance...', 'blue');
358
- log(' (Press Ctrl+C to cancel and monitor later)\n', 'gray');
359
- let accepted = false;
360
- await pollJobStatus(job.id, (updatedJob) => {
361
- if (updatedJob.status === 'in_progress' && !accepted) {
362
- accepted = true;
363
- log(`\n🎉 Agent accepted the job!`, 'green');
364
- log(` Started: ${new Date(updatedJob.accepted_at || Date.now()).toLocaleString()}\n`, 'gray');
365
- }
366
- });
367
- if (!accepted) {
368
- log('\n⏰ Agent hasn\'t accepted yet. Check status with:', 'yellow');
369
- log(` moltos marketplace view ${agentClawId}\n`, 'gray');
370
- return;
371
- }
372
- // Work completion flow
373
- log('🔧 Work in progress...', 'blue');
374
- const complete = await prompt('Confirm job completion and release payment? (y/N): ');
375
- if (complete.toLowerCase() === 'y') {
376
- log('\n💸 Releasing payment...', 'blue');
377
- const completion = await completeJob(job.id, hirer.id);
378
- if (completion.success) {
379
- log('✓ Payment released successfully!\n', 'green');
380
- if (completion.payout) {
381
- log('📈 Payout Breakdown:', 'blue');
382
- log(` Total: $${completion.payout.total.toFixed(2)}`, 'gray');
383
- log(` Platform Fee: $${completion.payout.platform_fee.toFixed(2)}`, 'gray');
384
- log(` Agent Payout: $${completion.payout.agent_payout.toFixed(2)}\n`, 'green');
385
- }
386
- log('🏆 Reputation Boosts:', 'blue');
387
- log(` Hirer: +5 TAP`, 'gray');
388
- log(` Agent: +10 TAP\n`, 'gray');
389
- }
390
- else {
391
- log('❌ Failed to release payment. Contact support.\n', 'red');
392
- }
393
- }
394
- else {
395
- log('Payment on hold. Complete later with:', 'yellow');
396
- log(` moltos marketplace complete ${job.id}\n`, 'gray');
397
- }
398
- }
399
- else {
400
- // Offline mode
401
- log('📴 Offline Mode:', 'yellow');
402
- log(' Job saved locally. Sync with network when online.\n', 'gray');
403
- log(' To complete:', 'gray');
404
- log(` 1. moltos marketplace sync`, 'gray');
405
- log(` 2. moltos marketplace complete ${job.id}\n`, 'gray');
406
- }
407
- log('🔗 Dashboard Links:', 'blue');
408
- log(` Job: https://moltos.org/job/${job.id}`, 'gray');
409
- log(` Agent: https://moltos.org/agent/${agentClawId}\n`, 'gray');
410
- }
411
- //# sourceMappingURL=hire.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hire.js","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiSH,kCAqKC;AApcD,uCAAyB;AACzB,2CAA6B;AAC7B,8CAAiE;AACjE,mDAAqC;AAgCrC,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,UAAU;CACpB,CAAC;AAEF,MAAM,aAAa,GAAG,EAAE,CAAC,CAAC,sBAAsB;AAEhD,SAAS,GAAG,CAAC,OAAe,EAAE,QAA6B,OAAO;IAChE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,MAAM,CAAC,QAAgB;IAC9B,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAC/B,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAAC,MAAc;IACzC,IAAI,CAAC;QACH,oBAAoB;QACpB,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAW,EAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,SAAS,EAAE,CAAC;YACd,OAAO;gBACL,KAAK,EAAE,SAAS,CAAC,SAAS,IAAI,aAAa;gBAC3C,GAAG,EAAE,SAAS,CAAC,SAAS;gBACxB,IAAI,EAAE,SAAS,CAAC,IAAI;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;IAED,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;IACtE,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;gBACL,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,aAAa;gBACtC,GAAG,EAAE,QAAQ,CAAC,KAAK;gBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,SAAS,CACtB,WAAmB,EACnB,WAAmB,EACnB,OAAoB;IAEpB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,wBAAwB,CAAC;IAEtE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;IAEjE,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,WAAW,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;QAChE,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,yBAAyB;QAC7D,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,EAAE,EAAE,CAAC;QAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK;KACpC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,WAAW,EAAE;YACjD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,WAAW,EAAE;aACzC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAwB,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAwC,CAAC;QACzE,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACrE,GAAG,CAAC,6BAA6B,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QAEnD,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,wBAAwB,aAAa,sBAAsB,EAAE,QAAQ,CAAC,CAAC;YAC3E,GAAG,CAAC,oEAAoE,EAAE,MAAM,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,WAAmB,EACnB,WAAmB,EACnB,OAAoB;IAEpB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;IAEjE,0BAA0B;IAC1B,MAAM,GAAG,GAAQ;QACf,EAAE,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAClE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,WAAW,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;QAChE,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,yBAAyB;QAC7D,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK;QACnC,MAAM,EAAE,MAAM;QACd,aAAa,EAAE,WAAW;QAC1B,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,EAAE,EAAE,CAAC;QAC5C,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC;IAEF,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAClC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,EAAE,CAAC;IACP,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAE1D,OAAO;QACL,GAAG;QACH,OAAO,EAAE;YACP,aAAa,EAAE,kCAAkC;YACjD,iBAAiB,EAAE,cAAc,IAAI,CAAC,GAAG,EAAE,EAAE;SAC9C;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,KAAa,EACb,cAAkC;IAElC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,wBAAwB,CAAC;IAEtE,MAAM,WAAW,GAAG,KAAK,IAAsB,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,sBAAsB,EAAE;gBAC5D,OAAO,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE;aAC7C,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,KAAK,CAAC;YAE/B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAsB,CAAC;YACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;YAExD,IAAI,GAAG,EAAE,CAAC;gBACR,cAAc,CAAC,GAAG,CAAC,CAAC;gBACpB,OAAO,GAAG,CAAC,MAAM,KAAK,aAAa,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC;YACpE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4BAA4B;QAC9B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,sCAAsC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,WAAW,EAAE,CAAC;QACjC,IAAI,IAAI;YAAE,OAAO;QACjB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CACxB,KAAa,EACb,WAAmB;IAEnB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,wBAAwB,CAAC;IAEtE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,aAAa,KAAK,WAAW,EAAE;YACnE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,WAAW,EAAE;aACzC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAwB,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAiF,CAAC;QAClH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI,CAAC,OAAO;SACrB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACrE,GAAG,CAAC,+BAA+B,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAoB;IAEpB,GAAG,CAAC,wCAAwC,EAAE,MAAM,CAAC,CAAC;IAEtD,iBAAiB;IACjB,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,GAAG,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,GAAG,CAAC,UAAU,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClE,GAAG,CAAC,UAAU,WAAW,IAAI,EAAE,MAAM,CAAC,CAAC;IAEvC,kBAAkB;IAClB,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAEtD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC3B,GAAG,CAAC,+BAA+B,CAAC,eAAe,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACpF,GAAG,CAAC,gBAAgB,CAAC,aAAa,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAClE,GAAG,CAAC,oEAAoE,EAAE,MAAM,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,GAAG,CAAC,gBAAgB,CAAC,eAAe,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,eAAe,CAAC,IAAI,GAAG,EAAE,OAAO,CAAC,CAAC;IAEjG,wBAAwB;IACxB,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAW,EAAC,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,GAAG,CAAC,eAAe,WAAW,wBAAwB,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YAClC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAC3B,OAAO;QACT,CAAC;IACH,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,IAAI,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/F,CAAC;IAED,kBAAkB;IAClB,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,iBAAiB;IACjB,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;IACnC,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;IAEnC,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACnC,GAAG,CAAC,sBAAsB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvD,GAAG,CAAC,sBAAsB,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACnE,GAAG,CAAC,uBAAuB,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAExE,UAAU;IACV,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YAClC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAC3B,OAAO;QACT,CAAC;IACH,CAAC;IAED,aAAa;IACb,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;IAEpC,IAAI,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAE7D,6CAA6C;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,GAAG,CAAC,yDAAyD,EAAE,QAAQ,CAAC,CAAC;QACzE,MAAM,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAChE,GAAG,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEhC,4BAA4B;IAC5B,IAAI,OAAO,CAAC,aAAa,KAAK,kCAAkC,EAAE,CAAC;QACjE,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;QACpC,GAAG,CAAC,cAAc,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QACpC,GAAG,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAChD,GAAG,CAAC,+BAA+B,OAAO,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC;QACxE,GAAG,CAAC,kDAAkD,OAAO,CAAC,iBAAiB,IAAI,EAAE,MAAM,CAAC,CAAC;QAE7F,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IACjC,GAAG,CAAC,mBAAmB,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACzC,GAAG,CAAC,mBAAmB,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;IAC5C,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACjE,GAAG,CAAC,mBAAmB,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7C,GAAG,CAAC,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAE9E,wCAAwC;IACxC,IAAI,OAAO,CAAC,aAAa,KAAK,kCAAkC,EAAE,CAAC;QACjE,GAAG,CAAC,mCAAmC,EAAE,MAAM,CAAC,CAAC;QACjD,GAAG,CAAC,iDAAiD,EAAE,MAAM,CAAC,CAAC;QAE/D,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE;YACzC,IAAI,UAAU,CAAC,MAAM,KAAK,aAAa,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACrD,QAAQ,GAAG,IAAI,CAAC;gBAChB,GAAG,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;gBAC7C,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAClG,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,GAAG,CAAC,oDAAoD,EAAE,QAAQ,CAAC,CAAC;YACpE,GAAG,CAAC,8BAA8B,WAAW,IAAI,EAAE,MAAM,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,GAAG,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,qDAAqD,CAAC,CAAC;QAErF,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YACnC,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;YAEzC,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YAEvD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,GAAG,CAAC,oCAAoC,EAAE,OAAO,CAAC,CAAC;gBAEnD,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;oBACtB,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;oBACpC,GAAG,CAAC,qBAAqB,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBACvE,GAAG,CAAC,qBAAqB,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC9E,GAAG,CAAC,qBAAqB,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACnF,CAAC;gBAED,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;gBACrC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;gBACjC,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,uCAAuC,EAAE,QAAQ,CAAC,CAAC;YACvD,GAAG,CAAC,kCAAkC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,eAAe;QACf,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;QAClC,GAAG,CAAC,wDAAwD,EAAE,MAAM,CAAC,CAAC;QACtE,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QAC/B,GAAG,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;QAC7C,GAAG,CAAC,qCAAqC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACnC,GAAG,CAAC,qCAAqC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3D,GAAG,CAAC,uCAAuC,WAAW,IAAI,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC"}
@@ -1,23 +0,0 @@
1
- /**
2
- * Init Command - Initialize a new MoltOS project
3
- *
4
- * This command:
5
- * 1. Runs preflight checks (Node version, disk space, permissions)
6
- * 2. Generates Ed25519 keypair for ClawID
7
- * 3. Creates .moltos/ directory structure
8
- * 4. Creates configuration files
9
- * 5. Initializes ClawFS storage
10
- * 6. Registers with MoltOS network (if online)
11
- */
12
- interface InitOptions {
13
- dir: string;
14
- name?: string;
15
- skipPreflight?: boolean;
16
- dryRun?: boolean;
17
- }
18
- /**
19
- * Main init command
20
- */
21
- export declare function initCommand(options: InitOptions): Promise<void>;
22
- export {};
23
- //# sourceMappingURL=init.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,UAAU,WAAW;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAsaD;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAkFrE"}