@clawmarket.cc/marketcc 0.1.5 → 0.1.7
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/dist/commands/browse.d.ts +4 -0
- package/dist/commands/browse.js +36 -0
- package/dist/commands/browse.js.map +1 -0
- package/dist/commands/buy.d.ts +3 -0
- package/dist/commands/buy.js +69 -0
- package/dist/commands/buy.js.map +1 -0
- package/dist/commands/delete.js +8 -6
- package/dist/commands/delete.js.map +1 -1
- package/dist/commands/download.d.ts +3 -0
- package/dist/commands/{get.js → download.js} +12 -20
- package/dist/commands/download.js.map +1 -0
- package/dist/commands/info.js +1 -1
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/init.js +2 -2
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/my-bots.d.ts +1 -0
- package/dist/commands/my-bots.js +31 -0
- package/dist/commands/my-bots.js.map +1 -0
- package/dist/commands/stats.js +11 -4
- package/dist/commands/stats.js.map +1 -1
- package/dist/commands/wallet.d.ts +1 -2
- package/dist/commands/wallet.js +20 -17
- package/dist/commands/wallet.js.map +1 -1
- package/dist/index.js +58 -23
- package/dist/index.js.map +1 -1
- package/dist/lib/api.d.ts +3 -1
- package/dist/lib/api.js +7 -0
- package/dist/lib/api.js.map +1 -1
- package/dist/types/index.d.ts +11 -0
- package/package.json +1 -1
- package/postinstall.js +1 -1
- package/dist/commands/get.d.ts +0 -4
- package/dist/commands/get.js.map +0 -1
- package/dist/commands/list.d.ts +0 -5
- package/dist/commands/list.js +0 -46
- package/dist/commands/list.js.map +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { createClient } from '../lib/api.js';
|
|
4
|
+
export async function browseCommand(opts) {
|
|
5
|
+
const spinner = ora('Fetching marketplace...').start();
|
|
6
|
+
const client = await createClient();
|
|
7
|
+
const data = await client.listMarketplace({
|
|
8
|
+
category: opts.category,
|
|
9
|
+
search: opts.search,
|
|
10
|
+
});
|
|
11
|
+
spinner.stop();
|
|
12
|
+
if (data.bots.length === 0) {
|
|
13
|
+
console.log("Marketplace is empty. Be the first to upload!");
|
|
14
|
+
console.log(`Run: ${chalk.cyan('marketcc upload ./your-bot')}`);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
console.log(chalk.bold(`\nClawMarket \u{1F99E} (${data.total} bots)\n`));
|
|
18
|
+
// Table header
|
|
19
|
+
const nameW = 17;
|
|
20
|
+
const authorW = 12;
|
|
21
|
+
const priceW = 7;
|
|
22
|
+
const slugW = 9;
|
|
23
|
+
const hr = `\u250C${'─'.repeat(nameW)}\u252C${'─'.repeat(authorW)}\u252C${'─'.repeat(priceW)}\u252C${'─'.repeat(slugW)}\u2510`;
|
|
24
|
+
const sep = `\u251C${'─'.repeat(nameW)}\u253C${'─'.repeat(authorW)}\u253C${'─'.repeat(priceW)}\u253C${'─'.repeat(slugW)}\u2524`;
|
|
25
|
+
const bot_line = `\u2514${'─'.repeat(nameW)}\u2534${'─'.repeat(authorW)}\u2534${'─'.repeat(priceW)}\u2534${'─'.repeat(slugW)}\u2518`;
|
|
26
|
+
const pad = (s, w) => s.length >= w ? s.slice(0, w - 1) + '\u2026' : s + ' '.repeat(w - s.length);
|
|
27
|
+
console.log(hr);
|
|
28
|
+
console.log(`\u2502${chalk.bold(pad(' Name', nameW))}\u2502${chalk.bold(pad(' Author', authorW))}\u2502${chalk.bold(pad(' Price', priceW))}\u2502${chalk.bold(pad(' Slug', slugW))}\u2502`);
|
|
29
|
+
console.log(sep);
|
|
30
|
+
for (const bot of data.bots) {
|
|
31
|
+
console.log(`\u2502${pad(' ' + bot.name, nameW)}\u2502${pad(' ' + (bot.provider_address.slice(0, 9) + '…'), authorW)}\u2502${pad(' ' + String(bot.price_usd), priceW)}\u2502${pad(' ' + bot.slug, slugW)}\u2502`);
|
|
32
|
+
}
|
|
33
|
+
console.log(bot_line);
|
|
34
|
+
console.log(`\nRun ${chalk.cyan('marketcc info <slug>')} for details`);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=browse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browse.js","sourceRoot":"","sources":["../../src/commands/browse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAGnC;IACC,MAAM,OAAO,GAAG,GAAG,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;IACvD,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IACpC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;QACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,EAAE,CAAC;IAEf,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;QAChE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC;IAEzE,eAAe;IACf,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,CAAC,CAAC;IACjB,MAAM,KAAK,GAAG,CAAC,CAAC;IAEhB,MAAM,EAAE,GAAG,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC/H,MAAM,GAAG,GAAG,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IAChI,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IAErI,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IAElH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5L,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CACT,SAAS,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,OAAO,CAAC,SAAS,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CACrM,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import prompts from 'prompts';
|
|
4
|
+
import { createAuthenticatedClient, ApiClientError } from '../lib/api.js';
|
|
5
|
+
export async function buyCommand(slug, opts) {
|
|
6
|
+
const spinner = ora('Fetching bot info...').start();
|
|
7
|
+
const client = await createAuthenticatedClient();
|
|
8
|
+
let bot;
|
|
9
|
+
try {
|
|
10
|
+
bot = await client.getBotInfo(slug);
|
|
11
|
+
}
|
|
12
|
+
catch (e) {
|
|
13
|
+
spinner.stop();
|
|
14
|
+
if (e instanceof ApiClientError && e.statusCode === 404) {
|
|
15
|
+
console.log(`Bot '${slug}' not found. Run ${chalk.cyan('marketcc browse')} to see available bots.`);
|
|
16
|
+
process.exit(1);
|
|
17
|
+
}
|
|
18
|
+
throw e;
|
|
19
|
+
}
|
|
20
|
+
// Check if already owned
|
|
21
|
+
try {
|
|
22
|
+
const ownership = await client.checkOwnership(slug);
|
|
23
|
+
if (ownership.owned) {
|
|
24
|
+
spinner.stop();
|
|
25
|
+
console.log(`You already own this bot. Run: ${chalk.cyan(`marketcc download ${slug}`)}`);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
catch (e) {
|
|
30
|
+
// If ownership check fails, proceed with purchase attempt
|
|
31
|
+
if (e instanceof ApiClientError && e.statusCode !== 404) {
|
|
32
|
+
spinner.stop();
|
|
33
|
+
throw e;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
spinner.stop();
|
|
37
|
+
console.log(`\n Bot: ${chalk.bold(bot.name)}`);
|
|
38
|
+
console.log(` Author: ${bot.provider_address}`);
|
|
39
|
+
console.log(` Price: ${bot.price_usd} SOL\n`);
|
|
40
|
+
if (!opts.yes) {
|
|
41
|
+
const { confirm } = await prompts({
|
|
42
|
+
type: 'confirm',
|
|
43
|
+
name: 'confirm',
|
|
44
|
+
message: `Purchase "${bot.name}" for ${bot.price_usd} SOL?`,
|
|
45
|
+
initial: false,
|
|
46
|
+
});
|
|
47
|
+
if (!confirm) {
|
|
48
|
+
console.log('Cancelled.');
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const buySpinner = ora('Processing purchase...').start();
|
|
53
|
+
try {
|
|
54
|
+
await client.buyBot(slug);
|
|
55
|
+
buySpinner.succeed('Purchase complete!');
|
|
56
|
+
console.log(`Run ${chalk.cyan(`marketcc download ${slug}`)} to get the files.`);
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
59
|
+
buySpinner.stop();
|
|
60
|
+
if (e instanceof ApiClientError) {
|
|
61
|
+
if (e.errorCode === 'INSUFFICIENT_BALANCE' || e.message.toLowerCase().includes('insufficient')) {
|
|
62
|
+
console.error(chalk.red(`Insufficient SOL balance. Need ${bot.price_usd} SOL.`));
|
|
63
|
+
process.exit(1);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
throw e;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=buy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buy.js","sourceRoot":"","sources":["../../src/commands/buy.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/delete.js
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import ora from 'ora';
|
|
3
|
-
import
|
|
4
|
-
import { stdin, stdout } from 'node:process';
|
|
3
|
+
import prompts from 'prompts';
|
|
5
4
|
import { createAuthenticatedClient } from '../lib/api.js';
|
|
6
5
|
export async function deleteCommand(botId, opts) {
|
|
7
6
|
if (!opts.yes) {
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
const { confirm } = await prompts({
|
|
8
|
+
type: 'confirm',
|
|
9
|
+
name: 'confirm',
|
|
10
|
+
message: `Delete "${botId}"? This cannot be undone.`,
|
|
11
|
+
initial: false,
|
|
12
|
+
});
|
|
13
|
+
if (!confirm) {
|
|
12
14
|
console.log('Cancelled.');
|
|
13
15
|
return;
|
|
14
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAa,EACb,IAAuB;IAEvB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC;YAChC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,WAAW,KAAK,2BAA2B;YACpD,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/C,MAAM,MAAM,GAAG,MAAM,yBAAyB,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC7C,OAAO,CAAC,IAAI,EAAE,CAAC;IAEf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -5,33 +5,25 @@ import { existsSync } from 'node:fs';
|
|
|
5
5
|
import { Readable } from 'node:stream';
|
|
6
6
|
import { pipeline } from 'node:stream/promises';
|
|
7
7
|
import * as tar from 'tar';
|
|
8
|
-
import {
|
|
9
|
-
export async function
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
process.exit(1);
|
|
13
|
-
}
|
|
14
|
-
const spinner = ora('Verifying access token...').start();
|
|
15
|
-
const client = await createClient();
|
|
8
|
+
import { createAuthenticatedClient, ApiClientError } from '../lib/api.js';
|
|
9
|
+
export async function downloadCommand(slug, opts) {
|
|
10
|
+
const spinner = ora('Checking ownership...').start();
|
|
11
|
+
const client = await createAuthenticatedClient();
|
|
16
12
|
let configUrl;
|
|
17
13
|
try {
|
|
18
|
-
const
|
|
19
|
-
if (!
|
|
20
|
-
spinner.stop();
|
|
21
|
-
console.error(chalk.red(`Token invalid: ${result.error || 'unknown error'}`));
|
|
22
|
-
process.exit(1);
|
|
23
|
-
}
|
|
24
|
-
if (!result.config_url) {
|
|
14
|
+
const ownership = await client.checkOwnership(slug);
|
|
15
|
+
if (!ownership.owned || !ownership.config_url) {
|
|
25
16
|
spinner.stop();
|
|
26
|
-
console.
|
|
17
|
+
console.log(`You don't own this bot.`);
|
|
18
|
+
console.log(`Run: ${chalk.cyan(`marketcc buy ${slug}`)}`);
|
|
27
19
|
process.exit(1);
|
|
28
20
|
}
|
|
29
|
-
configUrl =
|
|
21
|
+
configUrl = ownership.config_url;
|
|
30
22
|
}
|
|
31
23
|
catch (e) {
|
|
32
24
|
spinner.stop();
|
|
33
|
-
if (e instanceof ApiClientError) {
|
|
34
|
-
console.
|
|
25
|
+
if (e instanceof ApiClientError && e.statusCode === 404) {
|
|
26
|
+
console.log(`Bot '${slug}' not found. Run ${chalk.cyan('marketcc browse')} to see available bots.`);
|
|
35
27
|
process.exit(1);
|
|
36
28
|
}
|
|
37
29
|
throw e;
|
|
@@ -55,4 +47,4 @@ export async function getCommand(slug, opts) {
|
|
|
55
47
|
spinner.stop();
|
|
56
48
|
console.log(chalk.green(`Bot downloaded to ${outDir}/`));
|
|
57
49
|
}
|
|
58
|
-
//# sourceMappingURL=
|
|
50
|
+
//# sourceMappingURL=download.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download.js","sourceRoot":"","sources":["../../src/commands/download.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/info.js
CHANGED
|
@@ -28,7 +28,7 @@ export async function infoCommand(slug) {
|
|
|
28
28
|
catch (e) {
|
|
29
29
|
spinner.stop();
|
|
30
30
|
if (e instanceof ApiClientError && e.statusCode === 404) {
|
|
31
|
-
console.
|
|
31
|
+
console.log(`Bot '${slug}' not found. Run ${chalk.cyan('marketcc browse')} to see available bots.`);
|
|
32
32
|
process.exit(1);
|
|
33
33
|
}
|
|
34
34
|
throw e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;QACvD,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,CAAC,YAAY,cAAc,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;YACxD,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;QACvD,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,CAAC,YAAY,cAAc,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,oBAAoB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;YACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC"}
|
package/dist/commands/init.js
CHANGED
|
@@ -78,8 +78,8 @@ export async function initCommand(opts) {
|
|
|
78
78
|
console.log('');
|
|
79
79
|
console.log(chalk.bold("What's next?"));
|
|
80
80
|
console.log(` ${chalk.cyan('$')} marketcc upload ./my-bot ${chalk.dim('Upload your first bot')}`);
|
|
81
|
-
console.log(` ${chalk.cyan('$')} marketcc
|
|
82
|
-
console.log(` ${chalk.cyan('$')} marketcc wallet set <addr> ${chalk.dim('
|
|
81
|
+
console.log(` ${chalk.cyan('$')} marketcc browse ${chalk.dim('Browse the marketplace')}`);
|
|
82
|
+
console.log(` ${chalk.cyan('$')} marketcc wallet set <addr> ${chalk.dim('Set payout address')}`);
|
|
83
83
|
console.log('');
|
|
84
84
|
}
|
|
85
85
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function myBotsCommand(): Promise<void>;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { createAuthenticatedClient } from '../lib/api.js';
|
|
4
|
+
export async function myBotsCommand() {
|
|
5
|
+
const spinner = ora('Fetching your bots...').start();
|
|
6
|
+
const client = await createAuthenticatedClient();
|
|
7
|
+
const data = await client.listMyBots();
|
|
8
|
+
spinner.stop();
|
|
9
|
+
if (data.bots.length === 0) {
|
|
10
|
+
console.log("You haven't uploaded any bots yet.");
|
|
11
|
+
console.log(`Run: ${chalk.cyan('marketcc upload ./your-bot')}`);
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
console.log(chalk.bold(`\nYour Bots (${data.bots.length})\n`));
|
|
15
|
+
const nameW = 17;
|
|
16
|
+
const slugW = 8;
|
|
17
|
+
const priceW = 7;
|
|
18
|
+
const salesW = 12;
|
|
19
|
+
const hr = `\u250C${'─'.repeat(nameW)}\u252C${'─'.repeat(slugW)}\u252C${'─'.repeat(priceW)}\u252C${'─'.repeat(salesW)}\u2510`;
|
|
20
|
+
const sep = `\u251C${'─'.repeat(nameW)}\u253C${'─'.repeat(slugW)}\u253C${'─'.repeat(priceW)}\u253C${'─'.repeat(salesW)}\u2524`;
|
|
21
|
+
const bot_line = `\u2514${'─'.repeat(nameW)}\u2534${'─'.repeat(slugW)}\u2534${'─'.repeat(priceW)}\u2534${'─'.repeat(salesW)}\u2518`;
|
|
22
|
+
const pad = (s, w) => s.length >= w ? s.slice(0, w - 1) + '\u2026' : s + ' '.repeat(w - s.length);
|
|
23
|
+
console.log(hr);
|
|
24
|
+
console.log(`\u2502${chalk.bold(pad(' Name', nameW))}\u2502${chalk.bold(pad(' Slug', slugW))}\u2502${chalk.bold(pad(' Price', priceW))}\u2502${chalk.bold(pad(' Sales', salesW))}\u2502`);
|
|
25
|
+
console.log(sep);
|
|
26
|
+
for (const bot of data.bots) {
|
|
27
|
+
console.log(`\u2502${pad(' ' + bot.name, nameW)}\u2502${pad(' ' + bot.slug, slugW)}\u2502${pad(' ' + String(bot.price_usd), priceW)}\u2502${pad(' ' + String(bot.total_buyers), salesW)}\u2502`);
|
|
28
|
+
}
|
|
29
|
+
console.log(bot_line);
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=my-bots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"my-bots.js","sourceRoot":"","sources":["../../src/commands/my-bots.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/stats.js
CHANGED
|
@@ -6,18 +6,25 @@ export async function statsCommand() {
|
|
|
6
6
|
const client = await createAuthenticatedClient();
|
|
7
7
|
const data = await client.getStats();
|
|
8
8
|
spinner.stop();
|
|
9
|
+
const revenue = data.total_revenue_usd ?? 0;
|
|
10
|
+
const buyers = data.total_buyers ?? 0;
|
|
11
|
+
if (buyers === 0 && revenue === 0 && (!data.bots || data.bots.length === 0)) {
|
|
12
|
+
console.log('No sales yet. Once someone buys your bot, stats appear here.');
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
9
15
|
console.log(chalk.bold('Provider Stats'));
|
|
10
|
-
console.log(` Total revenue: $${
|
|
11
|
-
console.log(` Total buyers: ${
|
|
16
|
+
console.log(` Total revenue: $${revenue.toFixed(2)}`);
|
|
17
|
+
console.log(` Total buyers: ${buyers}`);
|
|
12
18
|
console.log(` Payout addr: ${data.payout_address}`);
|
|
13
|
-
if (data.bots.length > 0) {
|
|
19
|
+
if (data.bots && data.bots.length > 0) {
|
|
14
20
|
console.log(chalk.bold('\nPer-bot breakdown:\n'));
|
|
15
21
|
for (const bot of data.bots) {
|
|
22
|
+
const botRevenue = bot.revenue_usd ?? 0;
|
|
16
23
|
const status = bot.status === 'ACTIVE'
|
|
17
24
|
? chalk.green(bot.status)
|
|
18
25
|
: chalk.dim(bot.status);
|
|
19
26
|
console.log(` ${chalk.bold(bot.name)} (${bot.slug})`);
|
|
20
|
-
console.log(` Revenue: $${
|
|
27
|
+
console.log(` Revenue: $${botRevenue.toFixed(2)} Buyers: ${bot.buyer_count ?? 0} Status: ${status}`);
|
|
21
28
|
}
|
|
22
29
|
}
|
|
23
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/commands/stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,OAAO,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,yBAAyB,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,OAAO,CAAC,IAAI,EAAE,CAAC;IAEf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/commands/stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,OAAO,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,yBAAyB,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,OAAO,CAAC,IAAI,EAAE,CAAC;IAEf,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAEtC,IAAI,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;QAC5E,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IAEvD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;YACxC,MAAM,MAAM,GACV,GAAG,CAAC,MAAM,KAAK,QAAQ;gBACrB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBACzB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CACT,iBAAiB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,WAAW,IAAI,CAAC,aAAa,MAAM,EAAE,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export declare function walletCommand(): Promise<void>;
|
|
2
|
-
export declare function walletSetCommand(address: string): Promise<void>;
|
|
1
|
+
export declare function walletCommand(address?: string): Promise<void>;
|
package/dist/commands/wallet.js
CHANGED
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { createAuthenticatedClient } from '../lib/api.js';
|
|
3
3
|
import ora from 'ora';
|
|
4
|
-
export async function walletCommand() {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
4
|
+
export async function walletCommand(address) {
|
|
5
|
+
if (address) {
|
|
6
|
+
// Set mode
|
|
7
|
+
if (!/^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(address)) {
|
|
8
|
+
console.error(chalk.red('Invalid Solana wallet address. Please check and try again.'));
|
|
9
|
+
process.exit(1);
|
|
10
|
+
}
|
|
11
|
+
const spinner = ora('Updating payout address...').start();
|
|
12
|
+
const client = await createAuthenticatedClient();
|
|
13
|
+
const result = await client.setPayoutAddress(address);
|
|
14
|
+
spinner.stop();
|
|
15
|
+
console.log(chalk.green(`Payout wallet updated to ${result.payout_address}`));
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
// View mode
|
|
19
|
+
const spinner = ora('Fetching wallet info...').start();
|
|
20
|
+
const client = await createAuthenticatedClient();
|
|
21
|
+
const data = await client.listMyBots();
|
|
22
|
+
spinner.stop();
|
|
23
|
+
console.log(`\nPayout wallet: ${data.payout_address}`);
|
|
15
24
|
}
|
|
16
|
-
const spinner = ora('Updating payout address...').start();
|
|
17
|
-
const client = await createAuthenticatedClient();
|
|
18
|
-
const result = await client.setPayoutAddress(address);
|
|
19
|
-
spinner.stop();
|
|
20
|
-
console.log(chalk.green('Payout address updated.'));
|
|
21
|
-
console.log(` Address: ${result.payout_address}`);
|
|
22
25
|
}
|
|
23
26
|
//# sourceMappingURL=wallet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/commands/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,CAAC,KAAK,UAAU,aAAa;
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/commands/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAgB;IAClD,IAAI,OAAO,EAAE,CAAC;QACZ,WAAW;QACX,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC,CAAC;YACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,yBAAyB,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4BAA4B,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;SAAM,CAAC;QACN,YAAY;QACZ,MAAM,OAAO,GAAG,GAAG,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,yBAAyB,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,14 +5,16 @@ import { initCommand } from './commands/init.js';
|
|
|
5
5
|
import { loginCommand } from './commands/login.js';
|
|
6
6
|
import { logoutCommand } from './commands/logout.js';
|
|
7
7
|
import { whoamiCommand } from './commands/whoami.js';
|
|
8
|
-
import { walletCommand
|
|
8
|
+
import { walletCommand } from './commands/wallet.js';
|
|
9
9
|
import { uploadCommand } from './commands/upload.js';
|
|
10
|
-
import {
|
|
10
|
+
import { browseCommand } from './commands/browse.js';
|
|
11
|
+
import { myBotsCommand } from './commands/my-bots.js';
|
|
12
|
+
import { buyCommand } from './commands/buy.js';
|
|
13
|
+
import { downloadCommand } from './commands/download.js';
|
|
11
14
|
import { updateBotCommand } from './commands/update.js';
|
|
12
15
|
import { upgradeCommand } from './commands/upgrade.js';
|
|
13
16
|
import { deleteCommand } from './commands/delete.js';
|
|
14
17
|
import { infoCommand } from './commands/info.js';
|
|
15
|
-
import { getCommand } from './commands/get.js';
|
|
16
18
|
import { statsCommand } from './commands/stats.js';
|
|
17
19
|
import { ApiClientError } from './lib/api.js';
|
|
18
20
|
import { existsSync, writeFileSync, mkdirSync } from 'node:fs';
|
|
@@ -47,7 +49,7 @@ function showWelcome() {
|
|
|
47
49
|
console.log('');
|
|
48
50
|
console.log(` ${C}Get started:${X}`);
|
|
49
51
|
console.log(` ${W}$ marketcc init${X} ${D}Set up configuration${X}`);
|
|
50
|
-
console.log(` ${W}$ marketcc
|
|
52
|
+
console.log(` ${W}$ marketcc browse${X} ${D}Browse the marketplace${X}`);
|
|
51
53
|
console.log(` ${W}$ marketcc upload ./my-bot${X} ${D}Publish your first bot${X}`);
|
|
52
54
|
console.log('');
|
|
53
55
|
console.log(` ${D}Docs: https://clawmarket.cc${X}`);
|
|
@@ -65,7 +67,33 @@ const program = new Command();
|
|
|
65
67
|
program
|
|
66
68
|
.name('marketcc')
|
|
67
69
|
.description('CLI for ClawMarket — upload, manage, and download OpenClaw bots')
|
|
68
|
-
.version('0.1.
|
|
70
|
+
.version('0.1.7')
|
|
71
|
+
.action(() => {
|
|
72
|
+
// Base command (no args) — show crab + quick-start
|
|
73
|
+
const R = '\x1b[31m';
|
|
74
|
+
const O = '\x1b[38;5;208m';
|
|
75
|
+
const Y = '\x1b[33m';
|
|
76
|
+
const D = '\x1b[2m';
|
|
77
|
+
const B = '\x1b[1m';
|
|
78
|
+
const X = '\x1b[0m';
|
|
79
|
+
console.log('');
|
|
80
|
+
console.log(`${R} ___ ___`);
|
|
81
|
+
console.log(`${R} / \\ / \\`);
|
|
82
|
+
console.log(`${R} | ${Y}o${R} | | ${Y}o${R} |`);
|
|
83
|
+
console.log(`${R} \\___/_____\\___/`);
|
|
84
|
+
console.log(`${R} / ${O}\\^/${R} \\`);
|
|
85
|
+
console.log(`${R} ____/ ${O}( )${R} \\____`);
|
|
86
|
+
console.log(`${R} / ${O}/\\ \\_/ /\\${R} \\`);
|
|
87
|
+
console.log(`${R} ${O}~~${R}/ ${O}~~ ~~${R} \\${O}~~`);
|
|
88
|
+
console.log(`${O} ~~ ~~${X}`);
|
|
89
|
+
console.log('');
|
|
90
|
+
console.log(` ${B}${O}ClawMarket \u{1F99E}${X}`);
|
|
91
|
+
console.log('');
|
|
92
|
+
console.log(` Sell: ${D}marketcc upload ./my-bot${X}`);
|
|
93
|
+
console.log(` Buy: ${D}marketcc browse${X}`);
|
|
94
|
+
console.log(` Help: ${D}marketcc --help${X}`);
|
|
95
|
+
console.log('');
|
|
96
|
+
});
|
|
69
97
|
program
|
|
70
98
|
.command('init')
|
|
71
99
|
.description('Initialize marketcc configuration')
|
|
@@ -84,31 +112,44 @@ program
|
|
|
84
112
|
.command('whoami')
|
|
85
113
|
.description('Show current provider info')
|
|
86
114
|
.action(wrap(whoamiCommand));
|
|
87
|
-
const
|
|
115
|
+
const walletCmd = program
|
|
88
116
|
.command('wallet')
|
|
89
117
|
.description('View or set payout wallet address')
|
|
90
118
|
.action(wrap(walletCommand));
|
|
91
|
-
|
|
119
|
+
walletCmd
|
|
92
120
|
.command('set <address>')
|
|
93
121
|
.description('Set payout wallet address')
|
|
94
|
-
.action(wrap(
|
|
122
|
+
.action(wrap(walletCommand));
|
|
95
123
|
program
|
|
96
|
-
.command('upload
|
|
97
|
-
.description('Upload a bot from a local directory')
|
|
98
|
-
.action(wrap(uploadCommand));
|
|
124
|
+
.command('upload [dir]')
|
|
125
|
+
.description('Upload a bot from a local directory (defaults to current directory)')
|
|
126
|
+
.action(wrap((dir) => uploadCommand(dir || '.')));
|
|
99
127
|
program
|
|
100
|
-
.command('
|
|
101
|
-
.description('
|
|
102
|
-
.option('--mine', 'Show only your bots')
|
|
128
|
+
.command('browse')
|
|
129
|
+
.description('Browse bots on the marketplace')
|
|
103
130
|
.option('--category <category>', 'Filter by category')
|
|
104
131
|
.option('--search <query>', 'Search bots')
|
|
105
|
-
.action(wrap(
|
|
132
|
+
.action(wrap(browseCommand));
|
|
133
|
+
program
|
|
134
|
+
.command('my-bots')
|
|
135
|
+
.description('List your uploaded bots')
|
|
136
|
+
.action(wrap(myBotsCommand));
|
|
137
|
+
program
|
|
138
|
+
.command('buy <slug>')
|
|
139
|
+
.description('Purchase a bot')
|
|
140
|
+
.option('-y, --yes', 'Skip confirmation')
|
|
141
|
+
.action(wrap(buyCommand));
|
|
142
|
+
program
|
|
143
|
+
.command('download <slug>')
|
|
144
|
+
.description('Download a purchased bot')
|
|
145
|
+
.option('-o, --output <dir>', 'Output directory')
|
|
146
|
+
.action(wrap(downloadCommand));
|
|
106
147
|
program
|
|
107
|
-
.command('
|
|
148
|
+
.command('update <bot-id> <dir>')
|
|
108
149
|
.description('Update an existing bot')
|
|
109
150
|
.action(wrap(updateBotCommand));
|
|
110
151
|
program
|
|
111
|
-
.command('
|
|
152
|
+
.command('upgrade')
|
|
112
153
|
.description('Update marketcc to the latest version')
|
|
113
154
|
.action(wrap(upgradeCommand));
|
|
114
155
|
program
|
|
@@ -120,12 +161,6 @@ program
|
|
|
120
161
|
.command('info <slug>')
|
|
121
162
|
.description('Show details about a bot on the marketplace')
|
|
122
163
|
.action(wrap(infoCommand));
|
|
123
|
-
program
|
|
124
|
-
.command('get <slug>')
|
|
125
|
-
.description('Download a purchased bot')
|
|
126
|
-
.requiredOption('--key <token>', 'Access token')
|
|
127
|
-
.option('-o, --output <dir>', 'Output directory')
|
|
128
|
-
.action(wrap(getCommand));
|
|
129
164
|
program
|
|
130
165
|
.command('stats')
|
|
131
166
|
.description('Show provider revenue stats')
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/api.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ProviderBotsResponse, UploadResponse, UpdateResponse, DeleteResponse, MarketplaceListResponse, MarketplaceBotDetail, ProviderStats, VerifyTokenResponse, PayoutResponse, RegisterResponse } from '../types/index.js';
|
|
1
|
+
import type { ProviderBotsResponse, UploadResponse, UpdateResponse, DeleteResponse, MarketplaceListResponse, MarketplaceBotDetail, ProviderStats, VerifyTokenResponse, PayoutResponse, RegisterResponse, BuyResponse, OwnershipResponse } from '../types/index.js';
|
|
2
2
|
export declare class ApiClientError extends Error {
|
|
3
3
|
statusCode: number;
|
|
4
4
|
errorCode: string;
|
|
@@ -23,6 +23,8 @@ export declare class ApiClient {
|
|
|
23
23
|
offset?: number;
|
|
24
24
|
}): Promise<MarketplaceListResponse>;
|
|
25
25
|
getBotInfo(slug: string): Promise<MarketplaceBotDetail>;
|
|
26
|
+
buyBot(slug: string): Promise<BuyResponse>;
|
|
27
|
+
checkOwnership(slug: string): Promise<OwnershipResponse>;
|
|
26
28
|
verifyToken(token: string): Promise<VerifyTokenResponse>;
|
|
27
29
|
}
|
|
28
30
|
export declare function createClient(): Promise<ApiClient>;
|
package/dist/lib/api.js
CHANGED
|
@@ -91,6 +91,13 @@ export class ApiClient {
|
|
|
91
91
|
async getBotInfo(slug) {
|
|
92
92
|
return this.request('GET', `/api/v1/marketplace/bots/${slug}`, undefined, false);
|
|
93
93
|
}
|
|
94
|
+
// Purchase & ownership
|
|
95
|
+
async buyBot(slug) {
|
|
96
|
+
return this.request('POST', `/api/v1/marketplace/bots/${slug}/purchase`);
|
|
97
|
+
}
|
|
98
|
+
async checkOwnership(slug) {
|
|
99
|
+
return this.request('GET', `/api/v1/marketplace/bots/${slug}/ownership`);
|
|
100
|
+
}
|
|
94
101
|
// Access token verification
|
|
95
102
|
async verifyToken(token) {
|
|
96
103
|
return this.request('GET', `/api/v1/verify/${token}`, undefined, false);
|
package/dist/lib/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -111,6 +111,17 @@ export interface PayoutResponse {
|
|
|
111
111
|
message: string;
|
|
112
112
|
payout_address: string;
|
|
113
113
|
}
|
|
114
|
+
export interface BuyResponse {
|
|
115
|
+
message: string;
|
|
116
|
+
bot_id: string;
|
|
117
|
+
bot_slug: string;
|
|
118
|
+
config_url: string;
|
|
119
|
+
}
|
|
120
|
+
export interface OwnershipResponse {
|
|
121
|
+
owned: boolean;
|
|
122
|
+
bot_id?: string;
|
|
123
|
+
config_url?: string;
|
|
124
|
+
}
|
|
114
125
|
export interface ApiError {
|
|
115
126
|
error: string;
|
|
116
127
|
message?: string;
|
package/package.json
CHANGED
package/postinstall.js
CHANGED
|
@@ -29,7 +29,7 @@ console.log(` ${DIM}The marketplace for OpenClaw bots${RESET}`);
|
|
|
29
29
|
console.log('');
|
|
30
30
|
console.log(` ${CYAN}Get started:${RESET}`);
|
|
31
31
|
console.log(` ${WHITE}$ marketcc init${RESET} ${DIM}Set up configuration${RESET}`);
|
|
32
|
-
console.log(` ${WHITE}$ marketcc
|
|
32
|
+
console.log(` ${WHITE}$ marketcc browse${RESET} ${DIM}Browse the marketplace${RESET}`);
|
|
33
33
|
console.log(` ${WHITE}$ marketcc upload ./my-bot${RESET} ${DIM}Publish your first bot${RESET}`);
|
|
34
34
|
console.log('');
|
|
35
35
|
console.log(` ${DIM}Docs: https://clawmarket.cc${RESET}`);
|
package/dist/commands/get.d.ts
DELETED
package/dist/commands/get.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/commands/get.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/list.d.ts
DELETED
package/dist/commands/list.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import ora from 'ora';
|
|
3
|
-
import { createClient, createAuthenticatedClient } from '../lib/api.js';
|
|
4
|
-
export async function listCommand(opts) {
|
|
5
|
-
if (opts.mine) {
|
|
6
|
-
const spinner = ora('Fetching your bots...').start();
|
|
7
|
-
const client = await createAuthenticatedClient();
|
|
8
|
-
const data = await client.listMyBots();
|
|
9
|
-
spinner.stop();
|
|
10
|
-
if (data.bots.length === 0) {
|
|
11
|
-
console.log('No bots found. Upload one with: marketcc upload <dir>');
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
console.log(chalk.bold(`Your bots (${data.bots.length}):\n`));
|
|
15
|
-
for (const bot of data.bots) {
|
|
16
|
-
const status = bot.status === 'ACTIVE'
|
|
17
|
-
? chalk.green(bot.status)
|
|
18
|
-
: chalk.dim(bot.status);
|
|
19
|
-
console.log(` ${chalk.bold(bot.name)} (${bot.slug})`);
|
|
20
|
-
console.log(` ID: ${bot.id} Status: ${status} Price: $${bot.price_usd}`);
|
|
21
|
-
console.log(` Buyers: ${bot.total_buyers}`);
|
|
22
|
-
console.log('');
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
const spinner = ora('Fetching marketplace...').start();
|
|
27
|
-
const client = await createClient();
|
|
28
|
-
const data = await client.listMarketplace({
|
|
29
|
-
category: opts.category,
|
|
30
|
-
search: opts.search,
|
|
31
|
-
});
|
|
32
|
-
spinner.stop();
|
|
33
|
-
if (data.bots.length === 0) {
|
|
34
|
-
console.log('No bots found on the marketplace.');
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
console.log(chalk.bold(`Marketplace (${data.total} bots, showing ${data.bots.length}):\n`));
|
|
38
|
-
for (const bot of data.bots) {
|
|
39
|
-
console.log(` ${chalk.bold(bot.name)} (${bot.slug})`);
|
|
40
|
-
console.log(` $${bot.price_usd} ${bot.category || ''} ${bot.buyer_count} buyers`);
|
|
41
|
-
console.log(` ${chalk.dim(bot.description)}`);
|
|
42
|
-
console.log('');
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=list.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAIjC;IACC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,yBAAyB,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC;QAC9D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,MAAM,GACV,GAAG,CAAC,MAAM,KAAK,QAAQ;gBACrB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBACzB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,EAAE,aAAa,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;YAC9E,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,GAAG,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;YACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,KAAK,kBAAkB,IAAI,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAC/E,CAAC;QACF,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CACT,QAAQ,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,QAAQ,IAAI,EAAE,KAAK,GAAG,CAAC,WAAW,SAAS,CAC1E,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC"}
|