@moltos/sdk 0.5.2 → 0.7.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 +177 -0
- package/dist/adapters/langchain.d.ts +84 -0
- package/dist/adapters/langchain.d.ts.map +1 -0
- package/dist/adapters/langchain.js +145 -0
- package/dist/adapters/langchain.js.map +1 -0
- package/dist/adapters/openclaw.d.ts +83 -0
- package/dist/adapters/openclaw.d.ts.map +1 -0
- package/dist/adapters/openclaw.js +207 -0
- package/dist/adapters/openclaw.js.map +1 -0
- package/dist/clawfs.d.ts +95 -0
- package/dist/clawfs.d.ts.map +1 -0
- package/dist/clawfs.js +546 -0
- package/dist/clawfs.js.map +1 -0
- package/dist/cli.d.ts +21 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +180 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/agent.d.ts +15 -0
- package/dist/commands/agent.d.ts.map +1 -0
- package/dist/commands/agent.js +327 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/cloud.d.ts +37 -0
- package/dist/commands/cloud.d.ts.map +1 -0
- package/dist/commands/cloud.js +390 -0
- package/dist/commands/cloud.js.map +1 -0
- package/dist/commands/fs.d.ts +5 -0
- package/dist/commands/fs.d.ts.map +1 -0
- package/dist/commands/fs.js +139 -0
- package/dist/commands/fs.js.map +1 -0
- package/dist/commands/init.d.ts +23 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +488 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/marketplace.d.ts +12 -0
- package/dist/commands/marketplace.d.ts.map +1 -0
- package/dist/commands/marketplace.js +173 -0
- package/dist/commands/marketplace.js.map +1 -0
- package/dist/commands/register.d.ts +8 -0
- package/dist/commands/register.d.ts.map +1 -0
- package/dist/commands/register.js +152 -0
- package/dist/commands/register.js.map +1 -0
- package/dist/commands/status.d.ts +17 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +388 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/tap.d.ts +5 -0
- package/dist/commands/tap.d.ts.map +1 -0
- package/dist/commands/tap.js +31 -0
- package/dist/commands/tap.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/lib/supabase.d.ts +41 -0
- package/dist/lib/supabase.d.ts.map +1 -0
- package/dist/lib/supabase.js +125 -0
- package/dist/lib/supabase.js.map +1 -0
- package/dist/tap.d.ts +66 -0
- package/dist/tap.d.ts.map +1 -0
- package/dist/tap.js +302 -0
- package/dist/tap.js.map +1 -0
- package/package.json +38 -11
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* MoltOS Cloud Deployment Command
|
|
5
|
+
*
|
|
6
|
+
* One-command production deployment:
|
|
7
|
+
* claw cloud deploy trading
|
|
8
|
+
* claw cloud deploy --provider fly.io
|
|
9
|
+
* claw cloud deploy --provider railway
|
|
10
|
+
*
|
|
11
|
+
* Features:
|
|
12
|
+
* - Automatic ClawFS volume provisioning
|
|
13
|
+
* - Firecracker microVM configuration
|
|
14
|
+
* - Reputation-weighted resource allocation
|
|
15
|
+
* - Prometheus observability auto-exposed
|
|
16
|
+
* - Rollback via ClawFS snapshots
|
|
17
|
+
*/
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.deployCommand = deployCommand;
|
|
23
|
+
const child_process_1 = require("child_process");
|
|
24
|
+
const fs_1 = __importDefault(require("fs"));
|
|
25
|
+
const path_1 = __importDefault(require("path"));
|
|
26
|
+
/**
|
|
27
|
+
* Main deployment command
|
|
28
|
+
*/
|
|
29
|
+
async function deployCommand(swarmType = 'default', options) {
|
|
30
|
+
console.log('🦞 MoltOS Cloud Deployment\n');
|
|
31
|
+
console.log(`Swarm Type: ${swarmType}`);
|
|
32
|
+
console.log(`Provider: ${options.provider || 'auto-detect'}\n`);
|
|
33
|
+
// Load local agent config
|
|
34
|
+
const moltosDir = path_1.default.join(process.cwd(), '.moltos');
|
|
35
|
+
if (!fs_1.default.existsSync(moltosDir)) {
|
|
36
|
+
console.error('❌ No .moltos directory found. Run "moltos init" first.');
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
// Load ClawID and registry
|
|
40
|
+
const clawIdPath = path_1.default.join(moltosDir, 'clawid.json');
|
|
41
|
+
const registryPath = path_1.default.join(moltosDir, 'registry.json');
|
|
42
|
+
if (!fs_1.default.existsSync(clawIdPath)) {
|
|
43
|
+
console.error('❌ No ClawID found. Run "moltos init" first.');
|
|
44
|
+
process.exit(1);
|
|
45
|
+
}
|
|
46
|
+
const clawId = JSON.parse(fs_1.default.readFileSync(clawIdPath, 'utf8'));
|
|
47
|
+
const registry = fs_1.default.existsSync(registryPath)
|
|
48
|
+
? JSON.parse(fs_1.default.readFileSync(registryPath, 'utf8'))
|
|
49
|
+
: null;
|
|
50
|
+
console.log(`Agent: ${registry?.name || 'Unknown'}`);
|
|
51
|
+
console.log(`ClawID: ${clawId.id}`);
|
|
52
|
+
console.log(`TAP Score: ${registry?.tap_score || 'N/A'} (${registry?.tier || 'Unknown'})\n`);
|
|
53
|
+
// Determine provider
|
|
54
|
+
const provider = options.provider || await detectProvider();
|
|
55
|
+
console.log(`Selected Provider: ${provider}\n`);
|
|
56
|
+
// Build deployment configuration
|
|
57
|
+
const config = await buildDeployConfig(swarmType, clawId.id, registry, options);
|
|
58
|
+
console.log('📋 Deployment Configuration:');
|
|
59
|
+
console.log(` Name: ${config.name}`);
|
|
60
|
+
console.log(` Region: ${config.region}`);
|
|
61
|
+
console.log(` Resources: ${config.resources.cpu} vCPU, ${config.resources.memory} RAM`);
|
|
62
|
+
console.log(` Scaling: ${config.scaling.min}-${config.scaling.max} instances`);
|
|
63
|
+
console.log(` Features: ${Object.entries(config.features)
|
|
64
|
+
.filter(([, v]) => v)
|
|
65
|
+
.map(([k]) => k)
|
|
66
|
+
.join(', ') || 'none'}`);
|
|
67
|
+
console.log();
|
|
68
|
+
if (options.dryRun) {
|
|
69
|
+
console.log('🔍 DRY RUN — No changes will be made\n');
|
|
70
|
+
await generateConfigs(config, provider, true);
|
|
71
|
+
console.log('✅ Configuration files generated (dry run)');
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
// Confirm deployment
|
|
75
|
+
console.log('⚠️ This will deploy to production infrastructure.');
|
|
76
|
+
console.log(' Press Ctrl+C to cancel, or wait 3 seconds to continue...\n');
|
|
77
|
+
await new Promise(resolve => setTimeout(resolve, 3000));
|
|
78
|
+
// Execute deployment
|
|
79
|
+
try {
|
|
80
|
+
console.log('🚀 Starting deployment...\n');
|
|
81
|
+
// Generate provider-specific configs
|
|
82
|
+
const configs = await generateConfigs(config, provider, false);
|
|
83
|
+
console.log('✓ Configuration generated');
|
|
84
|
+
// Provision ClawFS volumes if enabled
|
|
85
|
+
if (config.features.clawfs) {
|
|
86
|
+
await provisionClawFSVolumes(config.name, clawId.id);
|
|
87
|
+
console.log('✓ ClawFS volumes provisioned');
|
|
88
|
+
}
|
|
89
|
+
// Deploy to provider
|
|
90
|
+
switch (provider) {
|
|
91
|
+
case 'fly.io':
|
|
92
|
+
await deployToFly(configs);
|
|
93
|
+
break;
|
|
94
|
+
case 'railway':
|
|
95
|
+
await deployToRailway(configs);
|
|
96
|
+
break;
|
|
97
|
+
case 'docker':
|
|
98
|
+
await deployToDocker(configs);
|
|
99
|
+
break;
|
|
100
|
+
case 'kubernetes':
|
|
101
|
+
await deployToKubernetes(configs);
|
|
102
|
+
break;
|
|
103
|
+
}
|
|
104
|
+
console.log('\n' + '='.repeat(60));
|
|
105
|
+
console.log('✅ DEPLOYMENT SUCCESSFUL');
|
|
106
|
+
console.log('='.repeat(60));
|
|
107
|
+
console.log(`Swarm: ${config.name}`);
|
|
108
|
+
console.log(`URL: https://${config.name}.fly.dev`);
|
|
109
|
+
console.log(`Dashboard: https://moltos.org/swarm/${config.name}`);
|
|
110
|
+
console.log('='.repeat(60));
|
|
111
|
+
console.log();
|
|
112
|
+
console.log('📚 Next Steps:');
|
|
113
|
+
console.log(' View logs: claw cloud logs');
|
|
114
|
+
console.log(' Scale: claw cloud scale --instances 5');
|
|
115
|
+
console.log(' Rollback: claw cloud rollback');
|
|
116
|
+
console.log(' Destroy: claw cloud destroy');
|
|
117
|
+
console.log();
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
console.error('\n❌ Deployment failed:', error instanceof Error ? error.message : error);
|
|
121
|
+
process.exit(1);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Auto-detect best provider based on environment
|
|
126
|
+
*/
|
|
127
|
+
async function detectProvider() {
|
|
128
|
+
// Check for Fly.io CLI
|
|
129
|
+
try {
|
|
130
|
+
(0, child_process_1.execSync)('fly version', { stdio: 'ignore' });
|
|
131
|
+
return 'fly.io';
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
// Not Fly
|
|
135
|
+
}
|
|
136
|
+
// Check for Railway CLI
|
|
137
|
+
try {
|
|
138
|
+
(0, child_process_1.execSync)('railway --version', { stdio: 'ignore' });
|
|
139
|
+
return 'railway';
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
// Not Railway
|
|
143
|
+
}
|
|
144
|
+
// Check for kubectl
|
|
145
|
+
try {
|
|
146
|
+
(0, child_process_1.execSync)('kubectl version --client', { stdio: 'ignore' });
|
|
147
|
+
return 'kubernetes';
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
// Not K8s
|
|
151
|
+
}
|
|
152
|
+
// Default to Docker (always available)
|
|
153
|
+
return 'docker';
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Build deployment configuration
|
|
157
|
+
*/
|
|
158
|
+
async function buildDeployConfig(swarmType, clawId, registry, options) {
|
|
159
|
+
// TAP-based resource allocation
|
|
160
|
+
const tapScore = registry?.tap_score || 1000;
|
|
161
|
+
// Formula: vCPU = min(8, max(1, floor(TAP / 25)))
|
|
162
|
+
const tapCpu = Math.min(8, Math.max(1, Math.floor(tapScore / 25)));
|
|
163
|
+
// Formula: RAM = 256 MiB base + (TAP × 6 MiB)
|
|
164
|
+
const tapMemory = 256 + (tapScore * 6);
|
|
165
|
+
return {
|
|
166
|
+
name: options.name || `${swarmType}-swarm-${clawId.slice(0, 8)}`,
|
|
167
|
+
provider: options.provider || 'docker',
|
|
168
|
+
region: options.region || 'iad', // US East default
|
|
169
|
+
resources: {
|
|
170
|
+
cpu: options.cpu || tapCpu,
|
|
171
|
+
memory: options.memory || `${tapMemory}Mi`,
|
|
172
|
+
},
|
|
173
|
+
scaling: {
|
|
174
|
+
min: options.minInstances || 1,
|
|
175
|
+
max: options.maxInstances || Math.min(10, Math.floor(tapScore / 500) + 1),
|
|
176
|
+
},
|
|
177
|
+
features: {
|
|
178
|
+
clawfs: options.withClawFS !== false, // Default true
|
|
179
|
+
metrics: options.withMetrics !== false, // Default true
|
|
180
|
+
clawforge: options.withClawForge === true, // Default false
|
|
181
|
+
},
|
|
182
|
+
env: parseEnvOptions(options.env),
|
|
183
|
+
image: 'moltos/clawvm:latest',
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
function parseEnvOptions(env) {
|
|
187
|
+
if (!env)
|
|
188
|
+
return {};
|
|
189
|
+
return env.reduce((acc, e) => {
|
|
190
|
+
const [key, value] = e.split('=');
|
|
191
|
+
if (key && value)
|
|
192
|
+
acc[key] = value;
|
|
193
|
+
return acc;
|
|
194
|
+
}, {});
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Generate provider-specific configuration files
|
|
198
|
+
*/
|
|
199
|
+
async function generateConfigs(config, provider, dryRun) {
|
|
200
|
+
const configs = {};
|
|
201
|
+
if (provider === 'fly.io') {
|
|
202
|
+
configs.flyToml = generateFlyToml(config);
|
|
203
|
+
if (!dryRun) {
|
|
204
|
+
fs_1.default.writeFileSync('fly.toml', configs.flyToml);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
if (provider === 'docker' || provider === 'kubernetes') {
|
|
208
|
+
configs.dockerfile = generateDockerfile(config);
|
|
209
|
+
if (!dryRun) {
|
|
210
|
+
fs_1.default.writeFileSync('Dockerfile', configs.dockerfile);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
if (provider === 'kubernetes') {
|
|
214
|
+
configs.k8sYaml = generateK8sYaml(config);
|
|
215
|
+
if (!dryRun) {
|
|
216
|
+
fs_1.default.writeFileSync('k8s-deployment.yaml', configs.k8sYaml);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
return configs;
|
|
220
|
+
}
|
|
221
|
+
function generateFlyToml(config) {
|
|
222
|
+
return `# Auto-generated by MoltOS CLI
|
|
223
|
+
app = "${config.name}"
|
|
224
|
+
primary_region = "${config.region}"
|
|
225
|
+
|
|
226
|
+
[build]
|
|
227
|
+
image = "${config.image}"
|
|
228
|
+
|
|
229
|
+
[env]
|
|
230
|
+
CLAWFS_ENABLED = "${config.features.clawfs}"
|
|
231
|
+
METRICS_ENABLED = "${config.features.metrics}"
|
|
232
|
+
CLAWFORGE_ENABLED = "${config.features.clawforge}"
|
|
233
|
+
${Object.entries(config.env).map(([k, v]) => ` ${k} = "${v}"`).join('\n')}
|
|
234
|
+
|
|
235
|
+
[[mounts]]
|
|
236
|
+
source = "clawfs_data"
|
|
237
|
+
destination = "/data"
|
|
238
|
+
|
|
239
|
+
[http_service]
|
|
240
|
+
internal_port = 8080
|
|
241
|
+
force_https = true
|
|
242
|
+
auto_stop_machines = false
|
|
243
|
+
auto_start_machines = true
|
|
244
|
+
min_machines_running = ${config.scaling.min}
|
|
245
|
+
processes = ["app"]
|
|
246
|
+
|
|
247
|
+
[[metrics]]
|
|
248
|
+
port = 9090
|
|
249
|
+
path = "/metrics"
|
|
250
|
+
|
|
251
|
+
[[vm]]
|
|
252
|
+
cpu_kind = "shared"
|
|
253
|
+
cpus = ${config.resources.cpu}
|
|
254
|
+
memory = "${config.resources.memory}"
|
|
255
|
+
`;
|
|
256
|
+
}
|
|
257
|
+
function generateDockerfile(config) {
|
|
258
|
+
return `# Auto-generated by MoltOS CLI
|
|
259
|
+
FROM moltos/clawvm:latest
|
|
260
|
+
|
|
261
|
+
ENV CLAWFS_ENABLED=${config.features.clawfs}
|
|
262
|
+
ENV METRICS_ENABLED=${config.features.metrics}
|
|
263
|
+
ENV CLAWFORGE_ENABLED=${config.features.clawforge}
|
|
264
|
+
${Object.entries(config.env).map(([k, v]) => `ENV ${k}=${v}`).join('\n')}
|
|
265
|
+
|
|
266
|
+
EXPOSE 8080 9090
|
|
267
|
+
|
|
268
|
+
CMD ["clawvm", "start"]
|
|
269
|
+
`;
|
|
270
|
+
}
|
|
271
|
+
function generateK8sYaml(config) {
|
|
272
|
+
return `# Auto-generated by MoltOS CLI
|
|
273
|
+
apiVersion: apps/v1
|
|
274
|
+
kind: Deployment
|
|
275
|
+
metadata:
|
|
276
|
+
name: ${config.name}
|
|
277
|
+
spec:
|
|
278
|
+
replicas: ${config.scaling.min}
|
|
279
|
+
selector:
|
|
280
|
+
matchLabels:
|
|
281
|
+
app: ${config.name}
|
|
282
|
+
template:
|
|
283
|
+
metadata:
|
|
284
|
+
labels:
|
|
285
|
+
app: ${config.name}
|
|
286
|
+
spec:
|
|
287
|
+
containers:
|
|
288
|
+
- name: clawvm
|
|
289
|
+
image: ${config.image}
|
|
290
|
+
resources:
|
|
291
|
+
limits:
|
|
292
|
+
cpu: "${config.resources.cpu}"
|
|
293
|
+
memory: "${config.resources.memory}"
|
|
294
|
+
env:
|
|
295
|
+
- name: CLAWFS_ENABLED
|
|
296
|
+
value: "${config.features.clawfs}"
|
|
297
|
+
- name: METRICS_ENABLED
|
|
298
|
+
value: "${config.features.metrics}"
|
|
299
|
+
volumeMounts:
|
|
300
|
+
- name: clawfs-data
|
|
301
|
+
mountPath: /data
|
|
302
|
+
volumes:
|
|
303
|
+
- name: clawfs-data
|
|
304
|
+
persistentVolumeClaim:
|
|
305
|
+
claimName: ${config.name}-clawfs
|
|
306
|
+
---
|
|
307
|
+
apiVersion: v1
|
|
308
|
+
kind: Service
|
|
309
|
+
metadata:
|
|
310
|
+
name: ${config.name}
|
|
311
|
+
spec:
|
|
312
|
+
selector:
|
|
313
|
+
app: ${config.name}
|
|
314
|
+
ports:
|
|
315
|
+
- port: 8080
|
|
316
|
+
targetPort: 8080
|
|
317
|
+
`;
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Provision ClawFS volumes
|
|
321
|
+
*/
|
|
322
|
+
async function provisionClawFSVolumes(name, clawId) {
|
|
323
|
+
// In production, this would:
|
|
324
|
+
// 1. Create volume in cloud provider
|
|
325
|
+
// 2. Mount ClawFS with proper permissions
|
|
326
|
+
// 3. Initialize Merkle tree
|
|
327
|
+
// 4. Register volume in ClawRegistry
|
|
328
|
+
console.log(` → Provisioning ClawFS volume for ${name}...`);
|
|
329
|
+
// Simulate provisioning
|
|
330
|
+
await new Promise(resolve => setTimeout(resolve, 500));
|
|
331
|
+
console.log(` ✓ Volume ${name}-clawfs created`);
|
|
332
|
+
console.log(` ✓ Mounted at /data with ClawID ${clawId.slice(0, 16)}...`);
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* Deploy to Fly.io
|
|
336
|
+
*/
|
|
337
|
+
async function deployToFly(configs) {
|
|
338
|
+
console.log(' → Deploying to Fly.io...');
|
|
339
|
+
try {
|
|
340
|
+
// Launch app if not exists
|
|
341
|
+
(0, child_process_1.execSync)('fly launch --now --name $(grep "^app" fly.toml | cut -d= -f2 | tr -d \\" ) 2>/dev/null || true', {
|
|
342
|
+
stdio: 'pipe',
|
|
343
|
+
});
|
|
344
|
+
// Deploy
|
|
345
|
+
(0, child_process_1.execSync)('fly deploy', { stdio: 'inherit' });
|
|
346
|
+
console.log(' ✓ Fly.io deployment complete');
|
|
347
|
+
}
|
|
348
|
+
catch (error) {
|
|
349
|
+
throw new Error(`Fly.io deployment failed: ${error}`);
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Deploy to Railway
|
|
354
|
+
*/
|
|
355
|
+
async function deployToRailway(configs) {
|
|
356
|
+
console.log(' → Deploying to Railway...');
|
|
357
|
+
console.log(' ⚠️ Railway deployment requires GitHub integration');
|
|
358
|
+
console.log(' Push to GitHub and connect repo at https://railway.app');
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Deploy to Docker
|
|
362
|
+
*/
|
|
363
|
+
async function deployToDocker(configs) {
|
|
364
|
+
console.log(' → Building Docker image...');
|
|
365
|
+
try {
|
|
366
|
+
(0, child_process_1.execSync)('docker build -t moltos-swarm .', { stdio: 'inherit' });
|
|
367
|
+
(0, child_process_1.execSync)('docker run -d -p 8080:8080 -p 9090:9090 --name moltos-swarm moltos-swarm', {
|
|
368
|
+
stdio: 'inherit',
|
|
369
|
+
});
|
|
370
|
+
console.log(' ✓ Docker deployment complete');
|
|
371
|
+
console.log(' → Container running at http://localhost:8080');
|
|
372
|
+
}
|
|
373
|
+
catch (error) {
|
|
374
|
+
throw new Error(`Docker deployment failed: ${error}`);
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
/**
|
|
378
|
+
* Deploy to Kubernetes
|
|
379
|
+
*/
|
|
380
|
+
async function deployToKubernetes(configs) {
|
|
381
|
+
console.log(' → Deploying to Kubernetes...');
|
|
382
|
+
try {
|
|
383
|
+
(0, child_process_1.execSync)('kubectl apply -f k8s-deployment.yaml', { stdio: 'inherit' });
|
|
384
|
+
console.log(' ✓ Kubernetes deployment complete');
|
|
385
|
+
}
|
|
386
|
+
catch (error) {
|
|
387
|
+
throw new Error(`Kubernetes deployment failed: ${error}`);
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
//# sourceMappingURL=cloud.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloud.js","sourceRoot":"","sources":["../../src/commands/cloud.ts"],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;GAcG;;;;;AA8DH,sCAiHC;AA7KD,iDAAyC;AACzC,4CAAoB;AACpB,gDAAwB;AAuDxB;;GAEG;AACI,KAAK,UAAU,aAAa,CACjC,YAAoB,SAAS,EAC7B,OAAsB;IAEtB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,QAAQ,IAAI,aAAa,IAAI,CAAC,CAAC;IAEhE,0BAA0B;IAC1B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;IACtD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,2BAA2B;IAC3B,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACvD,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAE3D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC,CAAC,IAAI,CAAC;IAET,OAAO,CAAC,GAAG,CAAC,UAAU,QAAQ,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,cAAc,QAAQ,EAAE,SAAS,IAAI,KAAK,KAAK,QAAQ,EAAE,IAAI,IAAI,SAAS,KAAK,CAAC,CAAC;IAE7F,qBAAqB;IACrB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,cAAc,EAAE,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,sBAAsB,QAAQ,IAAI,CAAC,CAAC;IAEhD,iCAAiC;IACjC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEhF,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,SAAS,CAAC,GAAG,UAAU,MAAM,CAAC,SAAS,CAAC,MAAM,MAAM,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;SACvD,MAAM,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SACnB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;IAC3B,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,MAAM,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;IAE7E,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAExD,qBAAqB;IACrB,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAE3C,qCAAqC;QACrC,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QAEzC,sCAAsC;QACtC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,sBAAsB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC9C,CAAC;QAED,qBAAqB;QACrB,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,SAAS;gBACZ,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;gBAC9B,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAClC,MAAM;QACV,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,uCAAuC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEhB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc;IAC3B,uBAAuB;IACvB,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,UAAU;IACZ,CAAC;IAED,wBAAwB;IACxB,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnD,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,cAAc;IAChB,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1D,OAAO,YAAY,CAAC;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,UAAU;IACZ,CAAC;IAED,uCAAuC;IACvC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAC9B,SAAiB,EACjB,MAAc,EACd,QAAa,EACb,OAAsB;IAEtB,gCAAgC;IAChC,MAAM,QAAQ,GAAG,QAAQ,EAAE,SAAS,IAAI,IAAI,CAAC;IAE7C,kDAAkD;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACnE,8CAA8C;IAC9C,MAAM,SAAS,GAAG,GAAG,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IAEvC,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,GAAG,SAAS,UAAU,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAChE,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,QAAQ;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK,EAAE,kBAAkB;QACnD,SAAS,EAAE;YACT,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,MAAM;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,GAAG,SAAS,IAAI;SAC3C;QACD,OAAO,EAAE;YACP,GAAG,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC;YAC9B,GAAG,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;SAC1E;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,eAAe;YACrD,OAAO,EAAE,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,eAAe;YACvD,SAAS,EAAE,OAAO,CAAC,aAAa,KAAK,IAAI,EAAE,gBAAgB;SAC5D;QACD,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC;QACjC,KAAK,EAAE,sBAAsB;KAC9B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAAc;IACrC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAEpB,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAC3B,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,GAAG,IAAI,KAAK;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAA4B,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAC5B,MAAoB,EACpB,QAAgB,EAChB,MAAe;IAEf,MAAM,OAAO,GAAgE,EAAE,CAAC;IAEhF,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,CAAC,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QACvD,OAAO,CAAC,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC9B,OAAO,CAAC,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,YAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,MAAoB;IAC3C,OAAO;SACA,MAAM,CAAC,IAAI;oBACA,MAAM,CAAC,MAAM;;;aAGpB,MAAM,CAAC,KAAK;;;sBAGH,MAAM,CAAC,QAAQ,CAAC,MAAM;uBACrB,MAAM,CAAC,QAAQ,CAAC,OAAO;yBACrB,MAAM,CAAC,QAAQ,CAAC,SAAS;EAChD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;;;2BAW/C,MAAM,CAAC,OAAO,CAAC,GAAG;;;;;;;;;WASlC,MAAM,CAAC,SAAS,CAAC,GAAG;cACjB,MAAM,CAAC,SAAS,CAAC,MAAM;CACpC,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAoB;IAC9C,OAAO;;;qBAGY,MAAM,CAAC,QAAQ,CAAC,MAAM;sBACrB,MAAM,CAAC,QAAQ,CAAC,OAAO;wBACrB,MAAM,CAAC,QAAQ,CAAC,SAAS;EAC/C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;CAKvE,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CAAC,MAAoB;IAC3C,OAAO;;;;UAIC,MAAM,CAAC,IAAI;;cAEP,MAAM,CAAC,OAAO,CAAC,GAAG;;;aAGnB,MAAM,CAAC,IAAI;;;;eAIT,MAAM,CAAC,IAAI;;;;iBAIT,MAAM,CAAC,KAAK;;;oBAGT,MAAM,CAAC,SAAS,CAAC,GAAG;uBACjB,MAAM,CAAC,SAAS,CAAC,MAAM;;;oBAG1B,MAAM,CAAC,QAAQ,CAAC,MAAM;;oBAEtB,MAAM,CAAC,QAAQ,CAAC,OAAO;;;;;;;uBAOpB,MAAM,CAAC,IAAI;;;;;UAKxB,MAAM,CAAC,IAAI;;;WAGV,MAAM,CAAC,IAAI;;;;CAIrB,CAAC;AACF,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,sBAAsB,CAAC,IAAY,EAAE,MAAc;IAChE,6BAA6B;IAC7B,qCAAqC;IACrC,0CAA0C;IAC1C,4BAA4B;IAC5B,qCAAqC;IAErC,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,KAAK,CAAC,CAAC;IAE7D,wBAAwB;IACxB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAEvD,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,iBAAiB,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,oCAAoC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CAAC,OAAY;IACrC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE1C,IAAI,CAAC;QACH,2BAA2B;QAC3B,IAAA,wBAAQ,EAAC,gGAAgG,EAAE;YACzG,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QAEH,SAAS;QACT,IAAA,wBAAQ,EAAC,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAE7C,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,OAAY;IACzC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;AAC7E,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAAC,OAAY;IACxC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACjE,IAAA,wBAAQ,EAAC,0EAA0E,EAAE;YACnF,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAAC,OAAY;IAC5C,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAE9C,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,sCAAsC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FS Command - ClawFS file operations with full cryptographic verification
|
|
3
|
+
*/
|
|
4
|
+
export declare function fsCommand(action: 'ls' | 'cat' | 'write' | 'read' | 'snapshot' | 'temporal' | 'evidence' | 'stats', options: any): Promise<void>;
|
|
5
|
+
//# sourceMappingURL=fs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/commands/fs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsEH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,EACxF,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,IAAI,CAAC,CAiDf"}
|
|
@@ -0,0 +1,139 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/commands/fs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|