@skillzmarket/sdk 0.1.3 → 0.1.4
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 +27 -11
- package/dist/bin/init.d.ts +1 -1
- package/dist/bin/init.d.ts.map +1 -1
- package/dist/bin/init.js +2 -0
- package/dist/bin/init.js.map +1 -1
- package/dist/creator/index.d.ts +1 -0
- package/dist/creator/index.d.ts.map +1 -1
- package/dist/creator/index.js +2 -0
- package/dist/creator/index.js.map +1 -1
- package/dist/creator/init.d.ts.map +1 -1
- package/dist/creator/init.js +64 -90
- package/dist/creator/init.js.map +1 -1
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -34,7 +34,7 @@ npx @skillzmarket/sdk init
|
|
|
34
34
|
|
|
35
35
|
This will:
|
|
36
36
|
1. Guide you through getting an API key from the dashboard
|
|
37
|
-
2.
|
|
37
|
+
2. Set up your wallet (use existing or generate a new one)
|
|
38
38
|
3. Save configuration to `.env`
|
|
39
39
|
|
|
40
40
|
Then create your skills:
|
|
@@ -178,7 +178,7 @@ npx @skillzmarket/sdk init
|
|
|
178
178
|
|
|
179
179
|
This guides you through:
|
|
180
180
|
- Getting an API key from [skillz.market/dashboard](https://skillz.market/dashboard)
|
|
181
|
-
-
|
|
181
|
+
- Setting up your wallet (enter existing address or generate a new one)
|
|
182
182
|
- Saving to `.env`
|
|
183
183
|
|
|
184
184
|
#### 2. Manual Setup
|
|
@@ -251,17 +251,27 @@ serve({ summarize, translate }, {
|
|
|
251
251
|
|
|
252
252
|
Interactive CLI setup that guides you through configuration:
|
|
253
253
|
|
|
254
|
+
```bash
|
|
255
|
+
npx @skillzmarket/sdk init
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
The wizard will:
|
|
259
|
+
|
|
260
|
+
1. **API Key Setup**: Guide you to get an API key from the dashboard
|
|
261
|
+
2. **Wallet Setup**: Ask if you have an existing wallet
|
|
262
|
+
- **Yes**: Enter your wallet address (0x...)
|
|
263
|
+
- **No**: Option to generate a new wallet
|
|
264
|
+
- Generates a secure private key and address
|
|
265
|
+
- Displays the private key with a security warning
|
|
266
|
+
- Saves both `SKILLZ_WALLET_ADDRESS` and `SKILLZ_WALLET_KEY` to `.env`
|
|
267
|
+
3. **Save Configuration**: Write to `.env` file or show shell export commands
|
|
268
|
+
|
|
269
|
+
You can also call it programmatically:
|
|
270
|
+
|
|
254
271
|
```typescript
|
|
255
272
|
import { init } from '@skillzmarket/sdk/creator';
|
|
256
273
|
|
|
257
274
|
await init();
|
|
258
|
-
// Prompts for API key, wallet address, saves to .env
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
Or run directly:
|
|
262
|
-
|
|
263
|
-
```bash
|
|
264
|
-
npx @skillzmarket/sdk init
|
|
265
275
|
```
|
|
266
276
|
|
|
267
277
|
#### checkConfig()
|
|
@@ -349,9 +359,9 @@ Benefits over wallet signing on every start:
|
|
|
349
359
|
|----------|-------------|----------|
|
|
350
360
|
| `SKILLZ_API_KEY` | API key for registration | Yes (creator) |
|
|
351
361
|
| `SKILLZ_WALLET_ADDRESS` | Wallet address for receiving payments | Yes (creator) |
|
|
352
|
-
| `SKILLZ_WALLET_KEY` | Private key (
|
|
362
|
+
| `SKILLZ_WALLET_KEY` | Private key (saved when wallet is generated via `init`) | No* |
|
|
353
363
|
|
|
354
|
-
*`SKILLZ_WALLET_KEY` is
|
|
364
|
+
*`SKILLZ_WALLET_KEY` is automatically saved when you generate a new wallet via `npx @skillzmarket/sdk init`. For serving skills, only the address is needed. The private key is useful for consumers making payments or if you need to access the generated wallet elsewhere.
|
|
355
365
|
|
|
356
366
|
## Security Considerations
|
|
357
367
|
|
|
@@ -365,6 +375,12 @@ With API key authentication, your skill server only needs a wallet **address** (
|
|
|
365
375
|
- Creating your account (one-time signature in dashboard)
|
|
366
376
|
- Making payments as a consumer
|
|
367
377
|
|
|
378
|
+
**If you generate a wallet via `init`:**
|
|
379
|
+
- The private key is displayed once and saved to `.env`
|
|
380
|
+
- Store it securely (password manager, hardware wallet backup)
|
|
381
|
+
- Never commit `.env` to source control
|
|
382
|
+
- You cannot retrieve the private key later if lost
|
|
383
|
+
|
|
368
384
|
### API Key Security
|
|
369
385
|
|
|
370
386
|
- Store API keys securely (environment variables, secrets manager)
|
package/dist/bin/init.d.ts
CHANGED
package/dist/bin/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/bin/init.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/bin/init.ts"],"names":[],"mappings":";AAGA,OAAO,eAAe,CAAC"}
|
package/dist/bin/init.js
CHANGED
package/dist/bin/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/bin/init.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/bin/init.ts"],"names":[],"mappings":";AAEA,4CAA4C;AAC5C,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/creator/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,CAAC;AAEvB;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC7D,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG3D,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC7G,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/creator/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAgB7D,yCAAyC;AACzC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/creator/index.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,OAAO,eAAe,CAAC;AAEvB;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAgB7D,yCAAyC;AACzC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/creator/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/creator/init.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;GAWG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAqL1C;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAwBA"}
|
package/dist/creator/init.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as fs from 'fs';
|
|
2
2
|
import * as path from 'path';
|
|
3
3
|
import * as readline from 'readline';
|
|
4
|
+
import pc from 'picocolors';
|
|
4
5
|
import { generatePrivateKey, privateKeyToAccount } from 'viem/accounts';
|
|
5
6
|
const DASHBOARD_URL = 'https://skillz.market/dashboard';
|
|
6
7
|
/**
|
|
@@ -28,20 +29,20 @@ export async function init() {
|
|
|
28
29
|
});
|
|
29
30
|
};
|
|
30
31
|
console.log('');
|
|
31
|
-
console.log('='.repeat(60));
|
|
32
|
-
console.log(' Skillz Market SDK - Setup');
|
|
33
|
-
console.log('='.repeat(60));
|
|
32
|
+
console.log(pc.dim('='.repeat(60)));
|
|
33
|
+
console.log(pc.bold(' Skillz Market SDK - Setup'));
|
|
34
|
+
console.log(pc.dim('='.repeat(60)));
|
|
34
35
|
console.log('');
|
|
35
36
|
// Check for existing API key
|
|
36
37
|
const existingKey = process.env.SKILLZ_API_KEY;
|
|
37
38
|
if (existingKey) {
|
|
38
|
-
console.log('✓ Found existing API key in environment: SKILLZ_API_KEY');
|
|
39
|
-
console.log(` Key prefix: ${existingKey.slice(0, 11)}...`);
|
|
39
|
+
console.log(pc.green('✓') + ' Found existing API key in environment: ' + pc.cyan('SKILLZ_API_KEY'));
|
|
40
|
+
console.log(pc.dim(` Key prefix: ${existingKey.slice(0, 11)}...`));
|
|
40
41
|
console.log('');
|
|
41
42
|
const overwrite = await question('Do you want to set up a new key? (y/N): ');
|
|
42
43
|
if (overwrite.toLowerCase() !== 'y') {
|
|
43
44
|
console.log('');
|
|
44
|
-
console.log('Setup complete! Your existing API key will be used.');
|
|
45
|
+
console.log(pc.green('Setup complete!') + ' Your existing API key will be used.');
|
|
45
46
|
rl.close();
|
|
46
47
|
return;
|
|
47
48
|
}
|
|
@@ -50,26 +51,26 @@ export async function init() {
|
|
|
50
51
|
// Instructions for getting an API key
|
|
51
52
|
console.log('To register skills, you need an API key from Skillz Market.');
|
|
52
53
|
console.log('');
|
|
53
|
-
console.log('Steps to get your API key:');
|
|
54
|
+
console.log(pc.bold('Steps to get your API key:'));
|
|
54
55
|
console.log('');
|
|
55
|
-
console.log(' 1. Go to: ' + DASHBOARD_URL);
|
|
56
|
-
console.log(' 2. Connect your wallet');
|
|
57
|
-
console.log(' 3. Sign to authenticate (one-time)');
|
|
58
|
-
console.log(' 4. Find the "API Keys" section');
|
|
59
|
-
console.log(' 5. Click "Create Key" and copy the key');
|
|
56
|
+
console.log(pc.dim(' 1.') + ' Go to: ' + pc.cyan(DASHBOARD_URL));
|
|
57
|
+
console.log(pc.dim(' 2.') + ' Connect your wallet');
|
|
58
|
+
console.log(pc.dim(' 3.') + ' Sign to authenticate (one-time)');
|
|
59
|
+
console.log(pc.dim(' 4.') + ' Find the "API Keys" section');
|
|
60
|
+
console.log(pc.dim(' 5.') + ' Click "Create Key" and copy the key');
|
|
60
61
|
console.log('');
|
|
61
62
|
// Wait for user to get the key
|
|
62
63
|
const apiKey = await question('Paste your API key here (sk_...): ');
|
|
63
64
|
if (!apiKey) {
|
|
64
65
|
console.log('');
|
|
65
|
-
console.log('No API key provided. Setup cancelled.');
|
|
66
|
+
console.log(pc.red('No API key provided. Setup cancelled.'));
|
|
66
67
|
rl.close();
|
|
67
68
|
return;
|
|
68
69
|
}
|
|
69
70
|
if (!apiKey.startsWith('sk_')) {
|
|
70
71
|
console.log('');
|
|
71
|
-
console.log('⚠️ Warning: API keys should start with "sk_"');
|
|
72
|
-
console.log(' The key you entered might be invalid.');
|
|
72
|
+
console.log(pc.yellow('⚠️ Warning:') + ' API keys should start with "sk_"');
|
|
73
|
+
console.log(pc.dim(' The key you entered might be invalid.'));
|
|
73
74
|
console.log('');
|
|
74
75
|
}
|
|
75
76
|
// Ask about wallet setup
|
|
@@ -82,13 +83,13 @@ export async function init() {
|
|
|
82
83
|
const inputAddress = await question('Enter your wallet address (0x...): ');
|
|
83
84
|
if (!inputAddress) {
|
|
84
85
|
console.log('');
|
|
85
|
-
console.log('No wallet address provided. Setup cancelled.');
|
|
86
|
+
console.log(pc.red('No wallet address provided. Setup cancelled.'));
|
|
86
87
|
rl.close();
|
|
87
88
|
return;
|
|
88
89
|
}
|
|
89
90
|
if (!inputAddress.startsWith('0x') || inputAddress.length !== 42) {
|
|
90
91
|
console.log('');
|
|
91
|
-
console.log('⚠️ Warning: Wallet address should be 42 characters starting with "0x"');
|
|
92
|
+
console.log(pc.yellow('⚠️ Warning:') + ' Wallet address should be 42 characters starting with "0x"');
|
|
92
93
|
console.log('');
|
|
93
94
|
}
|
|
94
95
|
walletAddress = inputAddress;
|
|
@@ -99,8 +100,8 @@ export async function init() {
|
|
|
99
100
|
const generateWallet = await question('Would you like to generate a new wallet? (y/N): ');
|
|
100
101
|
if (generateWallet.toLowerCase() !== 'y') {
|
|
101
102
|
console.log('');
|
|
102
|
-
console.log('You need a wallet to receive payments for your skills.');
|
|
103
|
-
console.log('Run this setup again when you have a wallet ready.');
|
|
103
|
+
console.log(pc.dim('You need a wallet to receive payments for your skills.'));
|
|
104
|
+
console.log(pc.dim('Run this setup again when you have a wallet ready.'));
|
|
104
105
|
rl.close();
|
|
105
106
|
return;
|
|
106
107
|
}
|
|
@@ -109,90 +110,63 @@ export async function init() {
|
|
|
109
110
|
const account = privateKeyToAccount(generatedPrivateKey);
|
|
110
111
|
walletAddress = account.address;
|
|
111
112
|
console.log('');
|
|
112
|
-
console.log('╔════════════════════════════════════════════════════════════════╗');
|
|
113
|
-
console.log('║ ⚠️ IMPORTANT: SAVE YOUR PRIVATE KEY NOW!
|
|
114
|
-
console.log('║ ║');
|
|
115
|
-
console.log('║ You will NOT be able to retrieve it later.
|
|
116
|
-
console.log('║ Store it securely (password manager, hardware wallet).
|
|
117
|
-
console.log('╚════════════════════════════════════════════════════════════════╝');
|
|
113
|
+
console.log(pc.yellow('╔════════════════════════════════════════════════════════════════╗'));
|
|
114
|
+
console.log(pc.yellow('║') + pc.bold(pc.red(' ⚠️ IMPORTANT: SAVE YOUR PRIVATE KEY NOW! ')) + pc.yellow(' ║'));
|
|
115
|
+
console.log(pc.yellow('║ ║'));
|
|
116
|
+
console.log(pc.yellow('║') + ' You will ' + pc.bold('NOT') + ' be able to retrieve it later. ' + pc.yellow(' ║'));
|
|
117
|
+
console.log(pc.yellow('║') + ' Store it securely (password manager, hardware wallet). ' + pc.yellow(' ║'));
|
|
118
|
+
console.log(pc.yellow('╚════════════════════════════════════════════════════════════════╝'));
|
|
118
119
|
console.log('');
|
|
119
|
-
console.log(
|
|
120
|
-
console.log(
|
|
120
|
+
console.log(' Private Key: ' + pc.magenta(generatedPrivateKey));
|
|
121
|
+
console.log(' Wallet Address: ' + pc.cyan(walletAddress));
|
|
121
122
|
console.log('');
|
|
122
123
|
await question('Press Enter once you have saved your private key...');
|
|
123
124
|
}
|
|
124
|
-
//
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
if (fs.existsSync(envPath)) {
|
|
140
|
-
envContent = fs.readFileSync(envPath, 'utf-8');
|
|
141
|
-
// Remove existing SKILLZ_ variables
|
|
142
|
-
envContent = envContent
|
|
143
|
-
.split('\n')
|
|
144
|
-
.filter((line) => !line.startsWith('SKILLZ_API_KEY=') &&
|
|
145
|
-
!line.startsWith('SKILLZ_WALLET_ADDRESS=') &&
|
|
146
|
-
!line.startsWith('SKILLZ_WALLET_KEY='))
|
|
147
|
-
.join('\n');
|
|
148
|
-
if (envContent && !envContent.endsWith('\n')) {
|
|
149
|
-
envContent += '\n';
|
|
150
|
-
}
|
|
125
|
+
// Write directly to .env
|
|
126
|
+
const envPath = path.resolve(process.cwd(), '.env');
|
|
127
|
+
let envContent = '';
|
|
128
|
+
// Read existing .env if it exists
|
|
129
|
+
if (fs.existsSync(envPath)) {
|
|
130
|
+
envContent = fs.readFileSync(envPath, 'utf-8');
|
|
131
|
+
// Remove existing SKILLZ_ variables
|
|
132
|
+
envContent = envContent
|
|
133
|
+
.split('\n')
|
|
134
|
+
.filter((line) => !line.startsWith('SKILLZ_API_KEY=') &&
|
|
135
|
+
!line.startsWith('SKILLZ_WALLET_ADDRESS=') &&
|
|
136
|
+
!line.startsWith('SKILLZ_WALLET_KEY='))
|
|
137
|
+
.join('\n');
|
|
138
|
+
if (envContent && !envContent.endsWith('\n')) {
|
|
139
|
+
envContent += '\n';
|
|
151
140
|
}
|
|
152
|
-
// Add new variables
|
|
153
|
-
envContent += `\n# Skillz Market SDK Configuration\n`;
|
|
154
|
-
envContent += `SKILLZ_API_KEY=${apiKey}\n`;
|
|
155
|
-
envContent += `SKILLZ_WALLET_ADDRESS=${walletAddress}\n`;
|
|
156
|
-
if (generatedPrivateKey) {
|
|
157
|
-
envContent += `SKILLZ_WALLET_KEY=${generatedPrivateKey}\n`;
|
|
158
|
-
}
|
|
159
|
-
fs.writeFileSync(envPath, envContent);
|
|
160
|
-
console.log('✓ Configuration saved to .env');
|
|
161
|
-
console.log('');
|
|
162
|
-
console.log('Make sure .env is in your .gitignore!');
|
|
163
141
|
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
console.log(` export SKILLZ_WALLET_KEY="${generatedPrivateKey}"`);
|
|
171
|
-
}
|
|
172
|
-
console.log('');
|
|
173
|
-
console.log('Or add to your shell profile (~/.bashrc, ~/.zshrc, etc.)');
|
|
174
|
-
}
|
|
175
|
-
else {
|
|
176
|
-
console.log('Setup cancelled.');
|
|
177
|
-
rl.close();
|
|
178
|
-
return;
|
|
142
|
+
// Add new variables
|
|
143
|
+
envContent += `\n# Skillz Market SDK Configuration\n`;
|
|
144
|
+
envContent += `SKILLZ_API_KEY=${apiKey}\n`;
|
|
145
|
+
envContent += `SKILLZ_WALLET_ADDRESS=${walletAddress}\n`;
|
|
146
|
+
if (generatedPrivateKey) {
|
|
147
|
+
envContent += `SKILLZ_WALLET_KEY=${generatedPrivateKey}\n`;
|
|
179
148
|
}
|
|
149
|
+
fs.writeFileSync(envPath, envContent);
|
|
150
|
+
console.log('');
|
|
151
|
+
console.log(pc.green('✓') + ' Configuration saved to ' + pc.cyan('.env'));
|
|
152
|
+
console.log('');
|
|
153
|
+
console.log(pc.yellow('Make sure .env is in your .gitignore!'));
|
|
180
154
|
console.log('');
|
|
181
|
-
console.log('='.repeat(60));
|
|
182
|
-
console.log(' Setup Complete!');
|
|
183
|
-
console.log('='.repeat(60));
|
|
155
|
+
console.log(pc.dim('='.repeat(60)));
|
|
156
|
+
console.log(pc.bold(pc.green(' Setup Complete!')));
|
|
157
|
+
console.log(pc.dim('='.repeat(60)));
|
|
184
158
|
console.log('');
|
|
185
159
|
console.log('You can now use the SDK:');
|
|
186
160
|
console.log('');
|
|
187
|
-
console.log(' import { skill, serve } from "@skillzmarket/sdk/creator";');
|
|
161
|
+
console.log(pc.dim(' import { skill, serve } from "@skillzmarket/sdk/creator";'));
|
|
188
162
|
console.log('');
|
|
189
|
-
console.log(' const mySkill = skill({ price: "$0.001" }, async (input) => {');
|
|
190
|
-
console.log(' return { result: "Hello!" };');
|
|
191
|
-
console.log(' });');
|
|
163
|
+
console.log(pc.dim(' const mySkill = skill({ price: "$0.001" }, async (input) => {'));
|
|
164
|
+
console.log(pc.dim(' return { result: "Hello!" };'));
|
|
165
|
+
console.log(pc.dim(' });'));
|
|
192
166
|
console.log('');
|
|
193
|
-
console.log(' serve({ mySkill }, {');
|
|
194
|
-
console.log(' register: { endpoint: "https://your-server.com", enabled: true }');
|
|
195
|
-
console.log(' });');
|
|
167
|
+
console.log(pc.dim(' serve({ mySkill }, {'));
|
|
168
|
+
console.log(pc.dim(' register: { endpoint: "https://your-server.com", enabled: true }'));
|
|
169
|
+
console.log(pc.dim(' });'));
|
|
196
170
|
console.log('');
|
|
197
171
|
rl.close();
|
|
198
172
|
}
|
package/dist/creator/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/creator/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,aAAa,GAAG,iCAAiC,CAAC;AAExD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAmB,EAAE;QACnD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;gBAC7B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/creator/init.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skillzmarket/sdk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "SDK for discovering and calling paid AI skills with automatic x402 payments",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -61,12 +61,14 @@
|
|
|
61
61
|
"node": ">=18.0.0"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
+
"dotenv": "^16.0.0",
|
|
64
65
|
"@hono/node-server": "^1.19.9",
|
|
65
66
|
"@x402/core": "^2.2.0",
|
|
66
67
|
"@x402/evm": "^2.2.0",
|
|
67
68
|
"@x402/fetch": "^2.2.0",
|
|
68
69
|
"@x402/hono": "^2.2.0",
|
|
69
70
|
"hono": "^4.0.0",
|
|
71
|
+
"picocolors": "^1.1.1",
|
|
70
72
|
"user": "^0.0.0",
|
|
71
73
|
"viem": "^2.0.0"
|
|
72
74
|
},
|