dropclaw 1.0.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 (3) hide show
  1. package/README.md +69 -0
  2. package/package.json +17 -0
  3. package/stub.js +15 -0
package/README.md ADDED
@@ -0,0 +1,69 @@
1
+ # dropclaw
2
+
3
+ Permanent encrypted on-chain storage for AI agents. Store files on Monad blockchain with AES-256-GCM encryption.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install dropclaw
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```js
14
+ const { VaultClient } = require('dropclaw');
15
+
16
+ const client = new VaultClient({ gatewayUrl: 'https://dropclaw.cloud' });
17
+
18
+ // Store a file
19
+ const result = await client.store(fileBuffer, {
20
+ paymentHeader: base64PaymentHeader
21
+ });
22
+ // result.skillFile — JSON with tx hashes for reconstruction
23
+ // result.key — hex-encoded AES-256 encryption key (keep safe!)
24
+ // result.fileId — unique file identifier
25
+
26
+ // Retrieve a file
27
+ const original = await client.retrieve(result.skillFile, result.key);
28
+ // original === your file, byte-for-byte identical
29
+
30
+ // Estimate cost
31
+ const pricing = await client.estimateCost(fileBuffer.length);
32
+ ```
33
+
34
+ ## Async Upload Polling
35
+
36
+ Large files are processed asynchronously. The SDK handles polling automatically:
37
+
38
+ ```js
39
+ // store() automatically polls for completion
40
+ const result = await client.store(largeFileBuffer, { paymentHeader });
41
+
42
+ // Or poll manually
43
+ const { jobId } = await someAsyncOperation();
44
+ const completed = await client.waitForCompletion(jobId, {
45
+ pollInterval: 2000, // ms between polls (default: 2000)
46
+ timeout: 300000 // max wait time in ms (default: 300000)
47
+ });
48
+ ```
49
+
50
+ ## API
51
+
52
+ ### `new VaultClient({ gatewayUrl })`
53
+ Create a client connected to a DropClaw gateway.
54
+
55
+ ### `client.store(fileBuffer, options)`
56
+ Compress, encrypt, and upload a file. Returns `{ skillFile, key, fileId }`.
57
+
58
+ ### `client.retrieve(skillFile, key)`
59
+ Download, decrypt, and decompress a file. Returns the original `Buffer`.
60
+
61
+ ### `client.waitForCompletion(jobId, options)`
62
+ Poll for async job completion. Returns the completed job data.
63
+
64
+ ### `client.estimateCost(fileSize)`
65
+ Get pricing estimate for a file size in bytes.
66
+
67
+ ## License
68
+
69
+ Proprietary — see LICENSE for details.
package/package.json ADDED
@@ -0,0 +1,17 @@
1
+ {
2
+ "name": "dropclaw",
3
+ "version": "1.0.0",
4
+ "description": "DropClaw — Permanent Encrypted On-Chain Storage for AI Agents on Monad",
5
+ "main": "stub.js",
6
+ "files": [
7
+ "stub.js",
8
+ "README.md"
9
+ ],
10
+ "keywords": ["dropclaw", "blockchain", "storage", "encryption", "monad", "ai-agents", "x402", "on-chain"],
11
+ "author": "Farnsworth",
12
+ "license": "Proprietary",
13
+ "homepage": "https://dropclaw.cloud",
14
+ "engines": {
15
+ "node": ">=18.0.0"
16
+ }
17
+ }
package/stub.js ADDED
@@ -0,0 +1,15 @@
1
+ /**
2
+ * DropClaw — Permanent Encrypted On-Chain Storage for AI Agents
3
+ *
4
+ * This is the official npm listing for DropClaw.
5
+ * Full SDK access is available via the DropClaw gateway.
6
+ *
7
+ * Website: https://dropclaw.cloud
8
+ * Docs: https://dropclaw.cloud/docs
9
+ */
10
+
11
+ module.exports = {
12
+ name: "dropclaw",
13
+ gateway: "https://dropclaw.cloud",
14
+ description: "Permanent encrypted on-chain storage for AI agents on Monad.",
15
+ };