@moltos/sdk 0.7.2 ā 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.
- package/README.md +48 -146
- package/dist/cli.d.ts +11 -14
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +504 -487
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +18 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -37
- package/dist/index.js.map +1 -1
- package/dist/react.d.ts +138 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +335 -0
- package/dist/react.js.map +1 -0
- package/dist/sdk.d.ts +217 -0
- package/dist/sdk.d.ts.map +1 -0
- package/dist/sdk.js +325 -0
- package/dist/sdk.js.map +1 -0
- package/dist/types.d.ts +91 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +32 -53
- package/dist/adapters/langchain.d.ts +0 -84
- package/dist/adapters/langchain.d.ts.map +0 -1
- package/dist/adapters/langchain.js +0 -145
- package/dist/adapters/langchain.js.map +0 -1
- package/dist/adapters/openclaw.d.ts +0 -83
- package/dist/adapters/openclaw.d.ts.map +0 -1
- package/dist/adapters/openclaw.js +0 -207
- package/dist/adapters/openclaw.js.map +0 -1
- package/dist/clawfs.d.ts +0 -95
- package/dist/clawfs.d.ts.map +0 -1
- package/dist/clawfs.js +0 -546
- package/dist/clawfs.js.map +0 -1
- package/dist/commands/agent.d.ts +0 -15
- package/dist/commands/agent.d.ts.map +0 -1
- package/dist/commands/agent.js +0 -327
- package/dist/commands/agent.js.map +0 -1
- package/dist/commands/cloud.d.ts +0 -37
- package/dist/commands/cloud.d.ts.map +0 -1
- package/dist/commands/cloud.js +0 -390
- package/dist/commands/cloud.js.map +0 -1
- package/dist/commands/complete.d.ts +0 -11
- package/dist/commands/complete.d.ts.map +0 -1
- package/dist/commands/complete.js +0 -154
- package/dist/commands/complete.js.map +0 -1
- package/dist/commands/fs.d.ts +0 -5
- package/dist/commands/fs.d.ts.map +0 -1
- package/dist/commands/fs.js +0 -139
- package/dist/commands/fs.js.map +0 -1
- package/dist/commands/hire.d.ts +0 -29
- package/dist/commands/hire.d.ts.map +0 -1
- package/dist/commands/hire.js +0 -411
- package/dist/commands/hire.js.map +0 -1
- package/dist/commands/init.d.ts +0 -23
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -488
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/marketplace.d.ts +0 -14
- package/dist/commands/marketplace.d.ts.map +0 -1
- package/dist/commands/marketplace.js +0 -183
- package/dist/commands/marketplace.js.map +0 -1
- package/dist/commands/register.d.ts +0 -8
- package/dist/commands/register.d.ts.map +0 -1
- package/dist/commands/register.js +0 -152
- package/dist/commands/register.js.map +0 -1
- package/dist/commands/status.d.ts +0 -17
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -388
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/tap.d.ts +0 -5
- package/dist/commands/tap.d.ts.map +0 -1
- package/dist/commands/tap.js +0 -31
- package/dist/commands/tap.js.map +0 -1
- package/dist/lib/api.d.ts +0 -32
- package/dist/lib/api.d.ts.map +0 -1
- package/dist/lib/api.js +0 -80
- package/dist/lib/api.js.map +0 -1
- package/dist/lib/arbitra.d.ts +0 -302
- package/dist/lib/arbitra.d.ts.map +0 -1
- package/dist/lib/arbitra.js +0 -486
- package/dist/lib/arbitra.js.map +0 -1
- package/dist/lib/clawfs.d.ts +0 -277
- package/dist/lib/clawfs.d.ts.map +0 -1
- package/dist/lib/clawfs.js +0 -628
- package/dist/lib/clawfs.js.map +0 -1
- package/dist/lib/clawid.d.ts +0 -189
- package/dist/lib/clawid.d.ts.map +0 -1
- package/dist/lib/clawid.js +0 -455
- package/dist/lib/clawid.js.map +0 -1
- package/dist/lib/config.d.ts +0 -23
- package/dist/lib/config.d.ts.map +0 -1
- package/dist/lib/config.js +0 -29
- package/dist/lib/config.js.map +0 -1
- package/dist/lib/forge.d.ts +0 -139
- package/dist/lib/forge.d.ts.map +0 -1
- package/dist/lib/forge.js +0 -461
- package/dist/lib/forge.js.map +0 -1
- package/dist/lib/scheduler.d.ts +0 -138
- package/dist/lib/scheduler.d.ts.map +0 -1
- package/dist/lib/scheduler.js +0 -597
- package/dist/lib/scheduler.js.map +0 -1
- package/dist/lib/supabase.d.ts +0 -41
- package/dist/lib/supabase.d.ts.map +0 -1
- package/dist/lib/supabase.js +0 -125
- package/dist/lib/supabase.js.map +0 -1
- package/dist/lib/tap.d.ts +0 -208
- package/dist/lib/tap.d.ts.map +0 -1
- package/dist/lib/tap.js +0 -549
- package/dist/lib/tap.js.map +0 -1
- package/dist/tap.d.ts +0 -66
- package/dist/tap.d.ts.map +0 -1
- package/dist/tap.js +0 -302
- package/dist/tap.js.map +0 -1
package/dist/commands/init.js
DELETED
|
@@ -1,488 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Init Command - Initialize a new MoltOS project
|
|
4
|
-
*
|
|
5
|
-
* This command:
|
|
6
|
-
* 1. Runs preflight checks (Node version, disk space, permissions)
|
|
7
|
-
* 2. Generates Ed25519 keypair for ClawID
|
|
8
|
-
* 3. Creates .moltos/ directory structure
|
|
9
|
-
* 4. Creates configuration files
|
|
10
|
-
* 5. Initializes ClawFS storage
|
|
11
|
-
* 6. Registers with MoltOS network (if online)
|
|
12
|
-
*/
|
|
13
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
-
}
|
|
19
|
-
Object.defineProperty(o, k2, desc);
|
|
20
|
-
}) : (function(o, m, k, k2) {
|
|
21
|
-
if (k2 === undefined) k2 = k;
|
|
22
|
-
o[k2] = m[k];
|
|
23
|
-
}));
|
|
24
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
-
}) : function(o, v) {
|
|
27
|
-
o["default"] = v;
|
|
28
|
-
});
|
|
29
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
30
|
-
var ownKeys = function(o) {
|
|
31
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
32
|
-
var ar = [];
|
|
33
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
34
|
-
return ar;
|
|
35
|
-
};
|
|
36
|
-
return ownKeys(o);
|
|
37
|
-
};
|
|
38
|
-
return function (mod) {
|
|
39
|
-
if (mod && mod.__esModule) return mod;
|
|
40
|
-
var result = {};
|
|
41
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
42
|
-
__setModuleDefault(result, mod);
|
|
43
|
-
return result;
|
|
44
|
-
};
|
|
45
|
-
})();
|
|
46
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
47
|
-
exports.initCommand = initCommand;
|
|
48
|
-
const fs = __importStar(require("fs"));
|
|
49
|
-
const path = __importStar(require("path"));
|
|
50
|
-
const crypto = __importStar(require("crypto"));
|
|
51
|
-
const child_process_1 = require("child_process");
|
|
52
|
-
const COLORS = {
|
|
53
|
-
reset: '\x1b[0m',
|
|
54
|
-
green: '\x1b[32m',
|
|
55
|
-
yellow: '\x1b[33m',
|
|
56
|
-
red: '\x1b[31m',
|
|
57
|
-
blue: '\x1b[34m',
|
|
58
|
-
cyan: '\x1b[36m',
|
|
59
|
-
gray: '\x1b[90m',
|
|
60
|
-
};
|
|
61
|
-
function log(message, color = 'reset') {
|
|
62
|
-
console.log(`${COLORS[color]}${message}${COLORS.reset}`);
|
|
63
|
-
}
|
|
64
|
-
function success(message) {
|
|
65
|
-
log(`ā ${message}`, 'green');
|
|
66
|
-
}
|
|
67
|
-
function warning(message) {
|
|
68
|
-
log(`ā ${message}`, 'yellow');
|
|
69
|
-
}
|
|
70
|
-
function error(message) {
|
|
71
|
-
log(`ā ${message}`, 'red');
|
|
72
|
-
}
|
|
73
|
-
function info(message) {
|
|
74
|
-
log(`ā ${message}`, 'cyan');
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Run preflight checks to verify system readiness
|
|
78
|
-
*/
|
|
79
|
-
async function runPreflight(targetDir) {
|
|
80
|
-
const result = {
|
|
81
|
-
passed: true,
|
|
82
|
-
nodeVersion: process.version,
|
|
83
|
-
diskSpace: 0,
|
|
84
|
-
hasWritePermission: false,
|
|
85
|
-
isOnline: false,
|
|
86
|
-
errors: [],
|
|
87
|
-
warnings: [],
|
|
88
|
-
};
|
|
89
|
-
log('\nš Running preflight checks...\n', 'blue');
|
|
90
|
-
// Check Node.js version
|
|
91
|
-
const nodeVersion = process.version;
|
|
92
|
-
const majorVersion = parseInt(nodeVersion.slice(1).split('.')[0]);
|
|
93
|
-
if (majorVersion < 18) {
|
|
94
|
-
result.errors.push(`Node.js ${nodeVersion} is too old. Requires v18+`);
|
|
95
|
-
result.passed = false;
|
|
96
|
-
error(`Node.js ${nodeVersion} (requires v18+)`);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
success(`Node.js ${nodeVersion}`);
|
|
100
|
-
}
|
|
101
|
-
// Check Git
|
|
102
|
-
try {
|
|
103
|
-
const gitVersion = (0, child_process_1.execSync)('git --version', { encoding: 'utf8' }).trim();
|
|
104
|
-
result.gitVersion = gitVersion;
|
|
105
|
-
success(gitVersion);
|
|
106
|
-
}
|
|
107
|
-
catch {
|
|
108
|
-
warning('Git not found (optional, used for some features)');
|
|
109
|
-
result.warnings.push('Git not installed');
|
|
110
|
-
}
|
|
111
|
-
// Check disk space (rough estimate)
|
|
112
|
-
try {
|
|
113
|
-
const stats = fs.statSync(targetDir);
|
|
114
|
-
// This is a rough approximation - in real implementation, use proper disk checking
|
|
115
|
-
result.diskSpace = 100; // Assume plenty of space for now
|
|
116
|
-
success('Disk space: ~100+ GB available');
|
|
117
|
-
}
|
|
118
|
-
catch {
|
|
119
|
-
// Directory doesn't exist yet, that's fine
|
|
120
|
-
result.diskSpace = 100;
|
|
121
|
-
success('Disk space: ~100+ GB available');
|
|
122
|
-
}
|
|
123
|
-
// Check write permissions
|
|
124
|
-
try {
|
|
125
|
-
const testFile = path.join(targetDir, '.moltos_write_test');
|
|
126
|
-
fs.mkdirSync(targetDir, { recursive: true });
|
|
127
|
-
fs.writeFileSync(testFile, 'test');
|
|
128
|
-
fs.unlinkSync(testFile);
|
|
129
|
-
result.hasWritePermission = true;
|
|
130
|
-
success('Filesystem permissions OK');
|
|
131
|
-
}
|
|
132
|
-
catch (err) {
|
|
133
|
-
result.errors.push(`No write permission to ${targetDir}`);
|
|
134
|
-
result.passed = false;
|
|
135
|
-
error(`No write permission to ${targetDir}`);
|
|
136
|
-
}
|
|
137
|
-
// Check network
|
|
138
|
-
try {
|
|
139
|
-
// Simple DNS lookup to check connectivity
|
|
140
|
-
await new Promise((resolve, reject) => {
|
|
141
|
-
const dns = require('dns');
|
|
142
|
-
dns.lookup('moltos.org', (err) => {
|
|
143
|
-
if (err)
|
|
144
|
-
reject(err);
|
|
145
|
-
else
|
|
146
|
-
resolve(true);
|
|
147
|
-
});
|
|
148
|
-
});
|
|
149
|
-
result.isOnline = true;
|
|
150
|
-
success('Network connectivity confirmed');
|
|
151
|
-
}
|
|
152
|
-
catch {
|
|
153
|
-
result.isOnline = false;
|
|
154
|
-
warning('No internet connection (offline mode)');
|
|
155
|
-
}
|
|
156
|
-
if (result.passed) {
|
|
157
|
-
log('\nā All preflight checks passed!\n', 'green');
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
log('\nā Preflight checks failed. Please fix the issues above.\n', 'red');
|
|
161
|
-
}
|
|
162
|
-
return result;
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Encrypt private key using password-derived key
|
|
166
|
-
* Uses PBKDF2 for key derivation and AES-256-GCM for encryption
|
|
167
|
-
*/
|
|
168
|
-
function encryptPrivateKey(privateKey, password) {
|
|
169
|
-
// Generate random salt
|
|
170
|
-
const salt = crypto.randomBytes(32);
|
|
171
|
-
// Derive encryption key using PBKDF2
|
|
172
|
-
const key = crypto.pbkdf2Sync(password, salt, 100000, 32, 'sha256');
|
|
173
|
-
// Generate random IV
|
|
174
|
-
const iv = crypto.randomBytes(16);
|
|
175
|
-
// Encrypt using AES-256-GCM
|
|
176
|
-
const cipher = crypto.createCipheriv('aes-256-gcm', key, iv);
|
|
177
|
-
let encrypted = cipher.update(privateKey, 'utf8', 'hex');
|
|
178
|
-
encrypted += cipher.final('hex');
|
|
179
|
-
// Get authentication tag
|
|
180
|
-
const authTag = cipher.getAuthTag();
|
|
181
|
-
// Return encrypted data with salt, iv, and authTag
|
|
182
|
-
return JSON.stringify({
|
|
183
|
-
version: 1,
|
|
184
|
-
salt: salt.toString('base64'),
|
|
185
|
-
iv: iv.toString('base64'),
|
|
186
|
-
authTag: authTag.toString('base64'),
|
|
187
|
-
encrypted: encrypted,
|
|
188
|
-
});
|
|
189
|
-
}
|
|
190
|
-
/**
|
|
191
|
-
* Decrypt private key using password
|
|
192
|
-
*/
|
|
193
|
-
function decryptPrivateKey(encryptedData, password) {
|
|
194
|
-
const data = JSON.parse(encryptedData);
|
|
195
|
-
const salt = Buffer.from(data.salt, 'base64');
|
|
196
|
-
const iv = Buffer.from(data.iv, 'base64');
|
|
197
|
-
const authTag = Buffer.from(data.authTag, 'base64');
|
|
198
|
-
const encrypted = data.encrypted;
|
|
199
|
-
// Derive key using PBKDF2
|
|
200
|
-
const key = crypto.pbkdf2Sync(password, salt, 100000, 32, 'sha256');
|
|
201
|
-
// Decrypt using AES-256-GCM
|
|
202
|
-
const decipher = crypto.createDecipheriv('aes-256-gcm', key, iv);
|
|
203
|
-
decipher.setAuthTag(authTag);
|
|
204
|
-
let decrypted = decipher.update(encrypted, 'hex', 'utf8');
|
|
205
|
-
decrypted += decipher.final('utf8');
|
|
206
|
-
return decrypted;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Prompt for password (if running in interactive terminal)
|
|
210
|
-
*/
|
|
211
|
-
function promptForPassword() {
|
|
212
|
-
// For now, generate a random password and warn user
|
|
213
|
-
// In production, this should use readline or a proper prompt library
|
|
214
|
-
const randomPassword = crypto.randomBytes(32).toString('hex');
|
|
215
|
-
warning('Generated random encryption password (stored in .moltos/.keypass)');
|
|
216
|
-
warning('ā ļø IMPORTANT: Back up this file securely!');
|
|
217
|
-
return randomPassword;
|
|
218
|
-
}
|
|
219
|
-
/**
|
|
220
|
-
* Generate Ed25519 keypair for ClawID with password encryption
|
|
221
|
-
*/
|
|
222
|
-
function generateClawID(name, password) {
|
|
223
|
-
// Generate Ed25519 keypair using Node.js crypto
|
|
224
|
-
const { publicKey, privateKey } = crypto.generateKeyPairSync('ed25519', {
|
|
225
|
-
publicKeyEncoding: { type: 'spki', format: 'pem' },
|
|
226
|
-
privateKeyEncoding: { type: 'pkcs8', format: 'pem' },
|
|
227
|
-
});
|
|
228
|
-
// Generate a unique ID based on public key fingerprint
|
|
229
|
-
const publicKeyBuffer = Buffer.from(publicKey);
|
|
230
|
-
const fingerprint = crypto.createHash('sha256').update(publicKeyBuffer).digest('hex').slice(0, 16);
|
|
231
|
-
const id = `claw_${fingerprint}`;
|
|
232
|
-
// Encrypt private key
|
|
233
|
-
const encryptedPrivateKey = encryptPrivateKey(privateKey, password);
|
|
234
|
-
return {
|
|
235
|
-
id,
|
|
236
|
-
name,
|
|
237
|
-
publicKey,
|
|
238
|
-
privateKeyEncrypted: encryptedPrivateKey,
|
|
239
|
-
createdAt: new Date().toISOString(),
|
|
240
|
-
};
|
|
241
|
-
}
|
|
242
|
-
/**
|
|
243
|
-
* Create the .moltos directory structure
|
|
244
|
-
*/
|
|
245
|
-
function createDirectoryStructure(baseDir, dryRun) {
|
|
246
|
-
const dirs = [
|
|
247
|
-
'.moltos',
|
|
248
|
-
'.moltos/agents',
|
|
249
|
-
'.moltos/cache',
|
|
250
|
-
'clawfs_data',
|
|
251
|
-
'clawfs_data/blobs',
|
|
252
|
-
'clawfs_data/meta',
|
|
253
|
-
'moltos-swarm',
|
|
254
|
-
];
|
|
255
|
-
const created = [];
|
|
256
|
-
for (const dir of dirs) {
|
|
257
|
-
const fullPath = path.join(baseDir, dir);
|
|
258
|
-
if (dryRun) {
|
|
259
|
-
info(`Would create: ${dir}/`);
|
|
260
|
-
}
|
|
261
|
-
else {
|
|
262
|
-
fs.mkdirSync(fullPath, { recursive: true });
|
|
263
|
-
created.push(fullPath);
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
return created;
|
|
267
|
-
}
|
|
268
|
-
/**
|
|
269
|
-
* Create configuration files
|
|
270
|
-
*/
|
|
271
|
-
function createConfigFiles(baseDir, clawID, dryRun) {
|
|
272
|
-
const files = [
|
|
273
|
-
{
|
|
274
|
-
path: '.moltos/config.yaml',
|
|
275
|
-
content: `# MoltOS Configuration
|
|
276
|
-
# Generated: ${clawID.createdAt}
|
|
277
|
-
|
|
278
|
-
agent:
|
|
279
|
-
name: "${clawID.name}"
|
|
280
|
-
clawId: "${clawID.id}"
|
|
281
|
-
version: "0.5.2"
|
|
282
|
-
|
|
283
|
-
network:
|
|
284
|
-
registry: "https://registry.moltos.org"
|
|
285
|
-
tapEndpoint: "https://tap.moltos.org"
|
|
286
|
-
offlineMode: false
|
|
287
|
-
|
|
288
|
-
storage:
|
|
289
|
-
type: "local"
|
|
290
|
-
path: "./clawfs_data"
|
|
291
|
-
maxSize: "10GB"
|
|
292
|
-
|
|
293
|
-
primitives:
|
|
294
|
-
- tap
|
|
295
|
-
- clawid
|
|
296
|
-
- clawfs
|
|
297
|
-
- clawbus
|
|
298
|
-
|
|
299
|
-
# Auto-generated - do not edit manually
|
|
300
|
-
`,
|
|
301
|
-
},
|
|
302
|
-
{
|
|
303
|
-
path: '.moltos/clawid.json',
|
|
304
|
-
content: JSON.stringify({
|
|
305
|
-
id: clawID.id,
|
|
306
|
-
name: clawID.name,
|
|
307
|
-
publicKey: clawID.publicKey,
|
|
308
|
-
createdAt: clawID.createdAt,
|
|
309
|
-
// Private key stored separately for security
|
|
310
|
-
}, null, 2),
|
|
311
|
-
},
|
|
312
|
-
{
|
|
313
|
-
path: '.gitignore',
|
|
314
|
-
content: `# MoltOS - Ignore sensitive files
|
|
315
|
-
.moltos/clawid.key
|
|
316
|
-
.moltos/*.key
|
|
317
|
-
clawfs_data/
|
|
318
|
-
.moltos/cache/
|
|
319
|
-
*.log
|
|
320
|
-
.env
|
|
321
|
-
.env.local
|
|
322
|
-
`,
|
|
323
|
-
},
|
|
324
|
-
{
|
|
325
|
-
path: 'moltos-swarm/genesis.yaml',
|
|
326
|
-
content: `# Genesis Agent Configuration
|
|
327
|
-
# This is your first agent - customize it to your needs
|
|
328
|
-
|
|
329
|
-
agent:
|
|
330
|
-
name: "${clawID.name}"
|
|
331
|
-
type: "genesis"
|
|
332
|
-
clawId: "${clawID.id}"
|
|
333
|
-
|
|
334
|
-
skills:
|
|
335
|
-
- name: "memory"
|
|
336
|
-
enabled: true
|
|
337
|
-
- name: "filesystem"
|
|
338
|
-
enabled: true
|
|
339
|
-
- name: "messaging"
|
|
340
|
-
enabled: true
|
|
341
|
-
|
|
342
|
-
# Tap attestation settings
|
|
343
|
-
tap:
|
|
344
|
-
autoAttest: true
|
|
345
|
-
reputationThreshold: 100
|
|
346
|
-
|
|
347
|
-
# ClawFS persistence
|
|
348
|
-
persistence:
|
|
349
|
-
enabled: true
|
|
350
|
-
snapshotInterval: "1h"
|
|
351
|
-
retention: "30d"
|
|
352
|
-
`,
|
|
353
|
-
},
|
|
354
|
-
{
|
|
355
|
-
path: '.moltos/clawid.key',
|
|
356
|
-
content: clawID.privateKeyEncrypted,
|
|
357
|
-
},
|
|
358
|
-
];
|
|
359
|
-
const created = [];
|
|
360
|
-
for (const file of files) {
|
|
361
|
-
const fullPath = path.join(baseDir, file.path);
|
|
362
|
-
if (dryRun) {
|
|
363
|
-
info(`Would create: ${file.path}`);
|
|
364
|
-
}
|
|
365
|
-
else {
|
|
366
|
-
fs.writeFileSync(fullPath, file.content, 'utf8');
|
|
367
|
-
// Make key file readable only by owner
|
|
368
|
-
if (file.path.endsWith('.key')) {
|
|
369
|
-
fs.chmodSync(fullPath, 0o600);
|
|
370
|
-
}
|
|
371
|
-
created.push(fullPath);
|
|
372
|
-
}
|
|
373
|
-
}
|
|
374
|
-
return created;
|
|
375
|
-
}
|
|
376
|
-
/**
|
|
377
|
-
* Initialize ClawFS with proper Merkle tree structure
|
|
378
|
-
*/
|
|
379
|
-
async function initializeClawFS(baseDir, clawId, privateKey, dryRun) {
|
|
380
|
-
if (dryRun) {
|
|
381
|
-
info('Would initialize ClawFS Merkle tree');
|
|
382
|
-
return;
|
|
383
|
-
}
|
|
384
|
-
// Import and initialize ClawFS
|
|
385
|
-
const { ClawFS } = await Promise.resolve().then(() => __importStar(require('../clawfs')));
|
|
386
|
-
const clawfs = new ClawFS(baseDir, clawId, privateKey);
|
|
387
|
-
// Create initial snapshot
|
|
388
|
-
const result = clawfs.snapshot('Initial ClawFS creation');
|
|
389
|
-
success(`ClawFS initialized (Blake3 Merkle tree)`);
|
|
390
|
-
success(`Initial snapshot: ${result.snapshotId.slice(0, 16)}...`);
|
|
391
|
-
}
|
|
392
|
-
/**
|
|
393
|
-
* Register with MoltOS network
|
|
394
|
-
*/
|
|
395
|
-
async function registerWithNetwork(clawID, isOnline, dryRun) {
|
|
396
|
-
if (dryRun) {
|
|
397
|
-
info('Would register with MoltOS network');
|
|
398
|
-
return;
|
|
399
|
-
}
|
|
400
|
-
if (!isOnline) {
|
|
401
|
-
warning('Offline mode - skipping network registration');
|
|
402
|
-
warning('Run "moltos agent register" when online');
|
|
403
|
-
return;
|
|
404
|
-
}
|
|
405
|
-
// In production, this would make an API call to register the agent
|
|
406
|
-
// For now, simulate the registration
|
|
407
|
-
log('\nš Registering on MoltOS network...', 'blue');
|
|
408
|
-
// Simulate network delay
|
|
409
|
-
await new Promise(r => setTimeout(r, 500));
|
|
410
|
-
success('Connected to ClawRegistry');
|
|
411
|
-
success('TAP reputation initialized (score: 100)');
|
|
412
|
-
}
|
|
413
|
-
/**
|
|
414
|
-
* Main init command
|
|
415
|
-
*/
|
|
416
|
-
async function initCommand(options) {
|
|
417
|
-
const startTime = Date.now();
|
|
418
|
-
const targetDir = path.resolve(options.dir);
|
|
419
|
-
const agentName = options.name || path.basename(targetDir);
|
|
420
|
-
log(`\n${COLORS.cyan}š¦ MoltOS Init${COLORS.reset}`, 'cyan');
|
|
421
|
-
log(` Initializing "${agentName}" in ${targetDir}\n`, 'gray');
|
|
422
|
-
// Preflight checks
|
|
423
|
-
if (!options.skipPreflight) {
|
|
424
|
-
const preflight = await runPreflight(targetDir);
|
|
425
|
-
if (!preflight.passed) {
|
|
426
|
-
process.exit(1);
|
|
427
|
-
}
|
|
428
|
-
}
|
|
429
|
-
if (options.dryRun) {
|
|
430
|
-
log('\nš Dry run mode - no changes will be made\n', 'yellow');
|
|
431
|
-
}
|
|
432
|
-
// Create directory structure
|
|
433
|
-
log('\nš Creating directory structure...\n', 'blue');
|
|
434
|
-
createDirectoryStructure(targetDir, options.dryRun || false);
|
|
435
|
-
if (!options.dryRun)
|
|
436
|
-
success('Directory structure created');
|
|
437
|
-
// Generate or get password for key encryption
|
|
438
|
-
log('\nš Setting up key encryption...\n', 'blue');
|
|
439
|
-
const password = promptForPassword();
|
|
440
|
-
// Generate ClawID
|
|
441
|
-
log('\nš Generating ClawID...\n', 'blue');
|
|
442
|
-
const clawID = generateClawID(agentName, password);
|
|
443
|
-
if (!options.dryRun) {
|
|
444
|
-
success(`Keypair generated (Ed25519)`);
|
|
445
|
-
success(`ClawID: ${clawID.id}`);
|
|
446
|
-
// Save password file with restricted permissions
|
|
447
|
-
const passFile = path.join(targetDir, '.moltos', '.keypass');
|
|
448
|
-
fs.writeFileSync(passFile, password, 'utf8');
|
|
449
|
-
fs.chmodSync(passFile, 0o600);
|
|
450
|
-
warning('Password saved to .moltos/.keypass (restrictive permissions)');
|
|
451
|
-
}
|
|
452
|
-
// Create config files
|
|
453
|
-
log('\nāļø Creating configuration files...\n', 'blue');
|
|
454
|
-
createConfigFiles(targetDir, clawID, options.dryRun || false);
|
|
455
|
-
if (!options.dryRun) {
|
|
456
|
-
success('Config: .moltos/config.yaml');
|
|
457
|
-
success('Identity: .moltos/clawid.json');
|
|
458
|
-
success('Agent: moltos-swarm/genesis.yaml');
|
|
459
|
-
success('Gitignore: .gitignore');
|
|
460
|
-
}
|
|
461
|
-
// Initialize ClawFS
|
|
462
|
-
log('\nš¾ Initializing ClawFS...\n', 'blue');
|
|
463
|
-
const privateKeyPem = decryptPrivateKey(clawID.privateKeyEncrypted, password);
|
|
464
|
-
await initializeClawFS(targetDir, clawID.id, privateKeyPem, options.dryRun || false);
|
|
465
|
-
if (!options.dryRun) {
|
|
466
|
-
success('Local storage: ./clawfs_data');
|
|
467
|
-
}
|
|
468
|
-
// Register with network
|
|
469
|
-
const preflight = await runPreflight(targetDir);
|
|
470
|
-
await registerWithNetwork(clawID, preflight.isOnline, options.dryRun || false);
|
|
471
|
-
// Done
|
|
472
|
-
const duration = ((Date.now() - startTime) / 1000).toFixed(1);
|
|
473
|
-
if (options.dryRun) {
|
|
474
|
-
log(`\nā
Dry run complete (${duration}s)\n`, 'green');
|
|
475
|
-
log('Run without --dry-run to actually install:\n', 'yellow');
|
|
476
|
-
log(` npx @moltos/sdk init${targetDir !== process.cwd() ? ` -d ${options.dir}` : ''}\n`);
|
|
477
|
-
}
|
|
478
|
-
else {
|
|
479
|
-
log(`\n${COLORS.green}ā
Installation complete! (${duration}s)${COLORS.reset}\n`);
|
|
480
|
-
log(`${COLORS.cyan}š¦ Your agent "${agentName}" is now part of the MoltOS network.${COLORS.reset}\n`);
|
|
481
|
-
log('Next steps:\n', 'blue');
|
|
482
|
-
log(' 1. Your agent can read/write to ./clawfs_data', 'gray');
|
|
483
|
-
log(' 2. Start your agent: moltos agent start', 'gray');
|
|
484
|
-
log(' 3. View dashboard: https://moltos.org/dashboard', 'gray');
|
|
485
|
-
log(' 4. Hire agents: https://moltos.org/discover\n', 'gray');
|
|
486
|
-
}
|
|
487
|
-
}
|
|
488
|
-
//# sourceMappingURL=init.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Marketplace Command - Query and hire agents from the MoltOS network
|
|
3
|
-
*
|
|
4
|
-
* Commands:
|
|
5
|
-
* list - Show available agents with TAP scores
|
|
6
|
-
* view - Get detailed agent profile
|
|
7
|
-
* hire - Hire an agent with Stripe escrow
|
|
8
|
-
* complete - Confirm job completion and release payment
|
|
9
|
-
*/
|
|
10
|
-
/**
|
|
11
|
-
* Main marketplace command handler
|
|
12
|
-
*/
|
|
13
|
-
export declare function marketplaceCommand(action: 'list' | 'view' | 'hire' | 'complete', options: any): Promise<void>;
|
|
14
|
-
//# sourceMappingURL=marketplace.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../src/commands/marketplace.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA6MH;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,EAC7C,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,IAAI,CAAC,CAef"}
|