@cabaltrading/cli 0.2.0 → 0.4.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 +107 -36
- package/bin/cabal-mcp.js +2 -0
- package/dist/index.js +12840 -47
- package/dist/mcp-server.js +11028 -0
- package/package.json +25 -13
- package/dist/commands/hl-setup.d.ts +0 -2
- package/dist/commands/hl-setup.d.ts.map +0 -1
- package/dist/commands/hl-setup.js +0 -225
- package/dist/commands/hl-setup.js.map +0 -1
- package/dist/commands/init.d.ts +0 -8
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -178
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/status.d.ts +0 -2
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -86
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/verify.d.ts +0 -2
- package/dist/commands/verify.d.ts.map +0 -1
- package/dist/commands/verify.js +0 -71
- package/dist/commands/verify.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/api.d.ts +0 -102
- package/dist/lib/api.d.ts.map +0 -1
- package/dist/lib/api.js +0 -74
- package/dist/lib/api.js.map +0 -1
- package/dist/lib/env.d.ts +0 -45
- package/dist/lib/env.d.ts.map +0 -1
- package/dist/lib/env.js +0 -128
- package/dist/lib/env.js.map +0 -1
- package/dist/lib/wallet.d.ts +0 -29
- package/dist/lib/wallet.d.ts.map +0 -1
- package/dist/lib/wallet.js +0 -50
- package/dist/lib/wallet.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cabaltrading/cli",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "CLI for Cabal -
|
|
5
|
-
"keywords": [
|
|
3
|
+
"version": "0.4.0",
|
|
4
|
+
"description": "CLI for Cabal - connect your AI agent and start trading.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"cabal",
|
|
7
|
+
"trading",
|
|
8
|
+
"ai",
|
|
9
|
+
"solana",
|
|
10
|
+
"hyperliquid",
|
|
11
|
+
"cli"
|
|
12
|
+
],
|
|
6
13
|
"homepage": "https://cabal.trading",
|
|
7
|
-
|
|
14
|
+
"repository": {
|
|
15
|
+
"type": "git",
|
|
16
|
+
"url": "git+https://github.com/cabaltrading/cli.git"
|
|
17
|
+
},
|
|
18
|
+
"license": "MIT",
|
|
8
19
|
"publishConfig": {
|
|
9
20
|
"access": "public"
|
|
10
21
|
},
|
|
@@ -12,27 +23,28 @@
|
|
|
12
23
|
"type": "module",
|
|
13
24
|
"main": "dist/index.js",
|
|
14
25
|
"bin": {
|
|
15
|
-
"cabal-cli": "./bin/cabal-cli.js"
|
|
26
|
+
"cabal-cli": "./bin/cabal-cli.js",
|
|
27
|
+
"cabal-mcp": "./bin/cabal-mcp.js"
|
|
16
28
|
},
|
|
17
29
|
"files": [
|
|
18
30
|
"dist",
|
|
19
31
|
"bin"
|
|
20
32
|
],
|
|
21
33
|
"scripts": {
|
|
22
|
-
"build": "
|
|
23
|
-
"dev": "
|
|
24
|
-
"
|
|
34
|
+
"build": "bun build src/index.ts src/mcp-server.ts --outdir dist --target node --format esm --external chalk --external commander --external dotenv --external inquirer --external ora --external @modelcontextprotocol/sdk --external zod",
|
|
35
|
+
"dev": "bun build src/index.ts src/mcp-server.ts --outdir dist --target node --format esm --external chalk --external commander --external dotenv --external inquirer --external ora --external @modelcontextprotocol/sdk --external zod --watch",
|
|
36
|
+
"test": "bun test tests/",
|
|
37
|
+
"test:e2e": "bun test tests/",
|
|
38
|
+
"prepublishOnly": "echo 'dist pre-built in monorepo'"
|
|
25
39
|
},
|
|
26
40
|
"dependencies": {
|
|
27
|
-
"@
|
|
28
|
-
"bs58": "^5.0.0",
|
|
41
|
+
"@modelcontextprotocol/sdk": "^1.12.0",
|
|
29
42
|
"chalk": "^5.3.0",
|
|
30
43
|
"commander": "^12.1.0",
|
|
31
44
|
"dotenv": "^16.4.5",
|
|
32
|
-
"ethers": "^6.13.0",
|
|
33
45
|
"inquirer": "^9.2.0",
|
|
34
46
|
"ora": "^8.0.1",
|
|
35
|
-
"
|
|
47
|
+
"zod": "^4.3.6"
|
|
36
48
|
},
|
|
37
49
|
"devDependencies": {
|
|
38
50
|
"@types/inquirer": "^9.0.7",
|
|
@@ -42,4 +54,4 @@
|
|
|
42
54
|
"engines": {
|
|
43
55
|
"node": ">=18.0.0"
|
|
44
56
|
}
|
|
45
|
-
}
|
|
57
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hl-setup.d.ts","sourceRoot":"","sources":["../../src/commands/hl-setup.ts"],"names":[],"mappings":"AAwCA,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA+NpD"}
|
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import ora from 'ora';
|
|
3
|
-
import inquirer from 'inquirer';
|
|
4
|
-
import { privateKeyToAccount } from 'viem/accounts';
|
|
5
|
-
import { getCredentials, isConfigured } from '../lib/env.js';
|
|
6
|
-
import { confirmHLApproval, getHLBuilderInfo } from '../lib/api.js';
|
|
7
|
-
// Testnet mode: set HL_TESTNET=true to use testnet
|
|
8
|
-
const IS_TESTNET = process.env.HL_TESTNET === 'true';
|
|
9
|
-
const HL_API_URL = IS_TESTNET
|
|
10
|
-
? 'https://api.hyperliquid-testnet.xyz'
|
|
11
|
-
: 'https://api.hyperliquid.xyz';
|
|
12
|
-
const HL_CHAIN_NAME = IS_TESTNET ? 'Testnet' : 'Mainnet';
|
|
13
|
-
// Chain IDs for EIP-712 signing and API payload
|
|
14
|
-
// Mainnet: 42161 (Arbitrum One), Testnet: 421614 (Arbitrum Sepolia)
|
|
15
|
-
const SIGNATURE_CHAIN_ID = IS_TESTNET ? 421614 : 42161;
|
|
16
|
-
const SIGNATURE_CHAIN_ID_HEX = IS_TESTNET ? '0x66eee' : '0xa4b1';
|
|
17
|
-
// Hyperliquid EIP-712 domain
|
|
18
|
-
const HL_DOMAIN = {
|
|
19
|
-
name: 'HyperliquidSignTransaction',
|
|
20
|
-
version: '1',
|
|
21
|
-
chainId: SIGNATURE_CHAIN_ID,
|
|
22
|
-
verifyingContract: '0x0000000000000000000000000000000000000000',
|
|
23
|
-
};
|
|
24
|
-
// Type definitions for approveBuilderFee action
|
|
25
|
-
// Primary type: "HyperliquidTransaction:ApproveBuilderFee"
|
|
26
|
-
const APPROVE_BUILDER_FEE_TYPES = {
|
|
27
|
-
'HyperliquidTransaction:ApproveBuilderFee': [
|
|
28
|
-
{ name: 'hyperliquidChain', type: 'string' },
|
|
29
|
-
{ name: 'maxFeeRate', type: 'string' },
|
|
30
|
-
{ name: 'builder', type: 'address' },
|
|
31
|
-
{ name: 'nonce', type: 'uint64' },
|
|
32
|
-
],
|
|
33
|
-
};
|
|
34
|
-
export async function hlSetupCommand() {
|
|
35
|
-
if (!isConfigured()) {
|
|
36
|
-
console.log(chalk.yellow('No Cabal configuration found.'));
|
|
37
|
-
console.log(chalk.dim('Run `cabal-cli init` to set up your agent.'));
|
|
38
|
-
process.exit(1);
|
|
39
|
-
}
|
|
40
|
-
const credentials = getCredentials();
|
|
41
|
-
if (!credentials.EVM_PRIVATE_KEY || !credentials.EVM_PUBLIC_KEY) {
|
|
42
|
-
console.log(chalk.yellow('No EVM wallet found in .env'));
|
|
43
|
-
console.log(chalk.dim('Run `cabal-cli init` to generate an EVM wallet for Hyperliquid.'));
|
|
44
|
-
process.exit(1);
|
|
45
|
-
}
|
|
46
|
-
if (!credentials.CABAL_API_KEY) {
|
|
47
|
-
console.log(chalk.red('CABAL_API_KEY not found in .env'));
|
|
48
|
-
process.exit(1);
|
|
49
|
-
}
|
|
50
|
-
console.log(chalk.bold('Hyperliquid Builder Fee Setup'));
|
|
51
|
-
if (IS_TESTNET) {
|
|
52
|
-
console.log(chalk.yellow('⚠️ TESTNET MODE'));
|
|
53
|
-
}
|
|
54
|
-
console.log('');
|
|
55
|
-
console.log(chalk.dim('This will approve Cabal to collect builder fees on your trades.'));
|
|
56
|
-
console.log(chalk.dim('Fee: 5 bps (0.05%) on perps, 50 bps (0.5%) on spot sells.'));
|
|
57
|
-
console.log('');
|
|
58
|
-
// Get builder info
|
|
59
|
-
const spinner = ora('Fetching builder info...').start();
|
|
60
|
-
let builderAddress;
|
|
61
|
-
let feeBps;
|
|
62
|
-
try {
|
|
63
|
-
const builderInfo = await getHLBuilderInfo();
|
|
64
|
-
if (!builderInfo.success || !builderInfo.builder) {
|
|
65
|
-
spinner.fail('Failed to fetch builder info');
|
|
66
|
-
process.exit(1);
|
|
67
|
-
}
|
|
68
|
-
builderAddress = builderInfo.builder.builder_address;
|
|
69
|
-
feeBps = builderInfo.builder.fee_bps.perps;
|
|
70
|
-
spinner.succeed(`Builder address: ${chalk.cyan(builderAddress)}`);
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
spinner.fail('Failed to fetch builder info');
|
|
74
|
-
console.error(chalk.red(`Error: ${error instanceof Error ? error.message : 'Unknown error'}`));
|
|
75
|
-
process.exit(1);
|
|
76
|
-
}
|
|
77
|
-
// Check HL account balance
|
|
78
|
-
spinner.start('Checking Hyperliquid account...');
|
|
79
|
-
try {
|
|
80
|
-
const response = await fetch(`${HL_API_URL}/info`, {
|
|
81
|
-
method: 'POST',
|
|
82
|
-
headers: { 'Content-Type': 'application/json' },
|
|
83
|
-
body: JSON.stringify({
|
|
84
|
-
type: 'clearinghouseState',
|
|
85
|
-
user: credentials.EVM_PUBLIC_KEY,
|
|
86
|
-
}),
|
|
87
|
-
});
|
|
88
|
-
const state = (await response.json());
|
|
89
|
-
const accountValue = parseFloat(state.crossMarginSummary?.accountValue || '0');
|
|
90
|
-
if (accountValue < 1) {
|
|
91
|
-
spinner.warn(chalk.yellow(`Account value: $${accountValue.toFixed(2)}`));
|
|
92
|
-
console.log('');
|
|
93
|
-
console.log(chalk.yellow('⚠️ Your Hyperliquid account has low or no balance.'));
|
|
94
|
-
console.log(chalk.dim(' You need USDC on Hyperliquid to trade.'));
|
|
95
|
-
console.log('');
|
|
96
|
-
const bridgeUrl = IS_TESTNET
|
|
97
|
-
? 'https://app.hyperliquid-testnet.xyz'
|
|
98
|
-
: 'https://app.hyperliquid.xyz/bridge';
|
|
99
|
-
console.log(chalk.dim(' Bridge USDC via: ') + chalk.cyan(bridgeUrl));
|
|
100
|
-
console.log('');
|
|
101
|
-
const { proceed } = await inquirer.prompt([
|
|
102
|
-
{
|
|
103
|
-
type: 'confirm',
|
|
104
|
-
name: 'proceed',
|
|
105
|
-
message: 'Continue with builder approval anyway?',
|
|
106
|
-
default: false,
|
|
107
|
-
},
|
|
108
|
-
]);
|
|
109
|
-
if (!proceed) {
|
|
110
|
-
console.log(chalk.dim('Aborted. Fund your account first, then run this again.'));
|
|
111
|
-
process.exit(0);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
spinner.succeed(`Account value: ${chalk.green(`$${accountValue.toFixed(2)}`)}`);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
catch {
|
|
119
|
-
spinner.warn('Could not check account balance (continuing anyway)');
|
|
120
|
-
}
|
|
121
|
-
// Confirm
|
|
122
|
-
const { confirm } = await inquirer.prompt([
|
|
123
|
-
{
|
|
124
|
-
type: 'confirm',
|
|
125
|
-
name: 'confirm',
|
|
126
|
-
message: `Approve Cabal (${builderAddress.slice(0, 10)}...) for ${feeBps} bps builder fee?`,
|
|
127
|
-
default: true,
|
|
128
|
-
},
|
|
129
|
-
]);
|
|
130
|
-
if (!confirm) {
|
|
131
|
-
console.log(chalk.dim('Aborted.'));
|
|
132
|
-
process.exit(0);
|
|
133
|
-
}
|
|
134
|
-
// Sign and submit the approval using EIP-712
|
|
135
|
-
spinner.start('Signing approval transaction (EIP-712)...');
|
|
136
|
-
try {
|
|
137
|
-
// Ensure private key has 0x prefix
|
|
138
|
-
const privateKey = credentials.EVM_PRIVATE_KEY.startsWith('0x')
|
|
139
|
-
? credentials.EVM_PRIVATE_KEY
|
|
140
|
-
: `0x${credentials.EVM_PRIVATE_KEY}`;
|
|
141
|
-
const account = privateKeyToAccount(privateKey);
|
|
142
|
-
const nonce = Date.now();
|
|
143
|
-
// Convert bps to percentage string (50 bps = "0.5%")
|
|
144
|
-
const maxFeeRatePercent = `${feeBps / 100}%`;
|
|
145
|
-
// Sign using EIP-712 typed data
|
|
146
|
-
const signature = await account.signTypedData({
|
|
147
|
-
domain: HL_DOMAIN,
|
|
148
|
-
types: APPROVE_BUILDER_FEE_TYPES,
|
|
149
|
-
primaryType: 'HyperliquidTransaction:ApproveBuilderFee',
|
|
150
|
-
message: {
|
|
151
|
-
hyperliquidChain: HL_CHAIN_NAME,
|
|
152
|
-
maxFeeRate: maxFeeRatePercent,
|
|
153
|
-
builder: builderAddress,
|
|
154
|
-
nonce: BigInt(nonce),
|
|
155
|
-
},
|
|
156
|
-
});
|
|
157
|
-
// Build the action payload (includes signatureChainId for API)
|
|
158
|
-
const action = {
|
|
159
|
-
type: 'approveBuilderFee',
|
|
160
|
-
hyperliquidChain: HL_CHAIN_NAME,
|
|
161
|
-
signatureChainId: SIGNATURE_CHAIN_ID_HEX,
|
|
162
|
-
maxFeeRate: maxFeeRatePercent,
|
|
163
|
-
builder: builderAddress,
|
|
164
|
-
nonce,
|
|
165
|
-
};
|
|
166
|
-
spinner.text = 'Submitting to Hyperliquid...';
|
|
167
|
-
// Parse signature into r, s, v
|
|
168
|
-
const r = signature.slice(0, 66);
|
|
169
|
-
const s = '0x' + signature.slice(66, 130);
|
|
170
|
-
const v = parseInt(signature.slice(130, 132), 16);
|
|
171
|
-
// Submit to Hyperliquid exchange API
|
|
172
|
-
const response = await fetch(`${HL_API_URL}/exchange`, {
|
|
173
|
-
method: 'POST',
|
|
174
|
-
headers: { 'Content-Type': 'application/json' },
|
|
175
|
-
body: JSON.stringify({
|
|
176
|
-
action,
|
|
177
|
-
nonce,
|
|
178
|
-
signature: { r, s, v },
|
|
179
|
-
vaultAddress: null,
|
|
180
|
-
}),
|
|
181
|
-
});
|
|
182
|
-
const result = (await response.json());
|
|
183
|
-
// Check for errors
|
|
184
|
-
if (result.status === 'err' || result.error) {
|
|
185
|
-
throw new Error(result.error || JSON.stringify(result));
|
|
186
|
-
}
|
|
187
|
-
spinner.succeed('Approval submitted to Hyperliquid!');
|
|
188
|
-
}
|
|
189
|
-
catch (error) {
|
|
190
|
-
spinner.fail('Failed to submit approval');
|
|
191
|
-
console.error(chalk.red(`Error: ${error instanceof Error ? error.message : 'Unknown error'}`));
|
|
192
|
-
console.log('');
|
|
193
|
-
console.log(chalk.yellow('Troubleshooting:'));
|
|
194
|
-
console.log(chalk.dim(' 1. Make sure you have some USDC on Hyperliquid'));
|
|
195
|
-
console.log(chalk.dim(' 2. Try approving manually via the Hyperliquid UI'));
|
|
196
|
-
console.log(chalk.dim(' 3. After manual approval, run this command again to confirm with Cabal'));
|
|
197
|
-
process.exit(1);
|
|
198
|
-
}
|
|
199
|
-
// Confirm with Cabal
|
|
200
|
-
spinner.start('Confirming with Cabal...');
|
|
201
|
-
try {
|
|
202
|
-
const response = await confirmHLApproval(credentials.CABAL_API_KEY);
|
|
203
|
-
if (!response.success) {
|
|
204
|
-
spinner.fail('Failed to confirm with Cabal');
|
|
205
|
-
console.log(chalk.red(`Error: ${response.error}`));
|
|
206
|
-
console.log('');
|
|
207
|
-
console.log(chalk.dim('The approval may still be pending on Hyperliquid.'));
|
|
208
|
-
console.log(chalk.dim('Wait a moment and try again: `cabal-cli hl-setup`'));
|
|
209
|
-
process.exit(1);
|
|
210
|
-
}
|
|
211
|
-
spinner.succeed('Builder fee confirmed with Cabal!');
|
|
212
|
-
console.log('');
|
|
213
|
-
console.log(chalk.green.bold('✓ Hyperliquid setup complete!'));
|
|
214
|
-
console.log('');
|
|
215
|
-
console.log(chalk.dim('You can now trade on Hyperliquid through Cabal.'));
|
|
216
|
-
console.log(chalk.dim('Docs: ') + chalk.cyan('https://cabal.trading/trading.md'));
|
|
217
|
-
console.log('');
|
|
218
|
-
}
|
|
219
|
-
catch (error) {
|
|
220
|
-
spinner.fail('Failed to confirm with Cabal');
|
|
221
|
-
console.error(chalk.red(`Error: ${error instanceof Error ? error.message : 'Unknown error'}`));
|
|
222
|
-
process.exit(1);
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
//# sourceMappingURL=hl-setup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hl-setup.js","sourceRoot":"","sources":["../../src/commands/hl-setup.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAOA,UAAU,WAAW;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,OAAO,CAAA;CACb;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgMrE"}
|
package/dist/commands/init.js
DELETED
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import ora from 'ora';
|
|
3
|
-
import inquirer from 'inquirer';
|
|
4
|
-
import { generateSolanaWallet, generateEvmWallet, truncateAddress } from '../lib/wallet.js';
|
|
5
|
-
import { registerAgent } from '../lib/api.js';
|
|
6
|
-
import { saveEnv, isConfigured, isEnvInGitignore, ensureEnvInGitignore } from '../lib/env.js';
|
|
7
|
-
export async function initCommand(options) {
|
|
8
|
-
// Check if already configured
|
|
9
|
-
if (isConfigured()) {
|
|
10
|
-
const { overwrite } = await inquirer.prompt([
|
|
11
|
-
{
|
|
12
|
-
type: 'confirm',
|
|
13
|
-
name: 'overwrite',
|
|
14
|
-
message: chalk.yellow('Cabal is already configured in this directory. Overwrite?'),
|
|
15
|
-
default: false,
|
|
16
|
-
},
|
|
17
|
-
]);
|
|
18
|
-
if (!overwrite) {
|
|
19
|
-
console.log(chalk.dim('Aborted. Run `cabal-cli status` to check your existing config.'));
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
// Get agent name
|
|
24
|
-
let agentName = options.name;
|
|
25
|
-
if (!agentName) {
|
|
26
|
-
const answers = await inquirer.prompt([
|
|
27
|
-
{
|
|
28
|
-
type: 'input',
|
|
29
|
-
name: 'name',
|
|
30
|
-
message: 'Agent name:',
|
|
31
|
-
validate: (input) => {
|
|
32
|
-
if (!input || input.length < 3) {
|
|
33
|
-
return 'Name must be at least 3 characters';
|
|
34
|
-
}
|
|
35
|
-
if (input.length > 32) {
|
|
36
|
-
return 'Name must be at most 32 characters';
|
|
37
|
-
}
|
|
38
|
-
if (!/^[a-zA-Z0-9_]+$/.test(input)) {
|
|
39
|
-
return 'Name can only contain letters, numbers, and underscores';
|
|
40
|
-
}
|
|
41
|
-
return true;
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
]);
|
|
45
|
-
agentName = answers.name;
|
|
46
|
-
}
|
|
47
|
-
// Get referral code
|
|
48
|
-
let referralCode = options.ref;
|
|
49
|
-
if (!referralCode) {
|
|
50
|
-
const answers = await inquirer.prompt([
|
|
51
|
-
{
|
|
52
|
-
type: 'input',
|
|
53
|
-
name: 'referralCode',
|
|
54
|
-
message: 'Referral code (optional, press Enter to skip):',
|
|
55
|
-
},
|
|
56
|
-
]);
|
|
57
|
-
referralCode = answers.referralCode || undefined;
|
|
58
|
-
}
|
|
59
|
-
const includeHl = options.hl !== false;
|
|
60
|
-
console.log('');
|
|
61
|
-
// Generate wallets
|
|
62
|
-
const spinner = ora('Generating Solana wallet...').start();
|
|
63
|
-
const solanaWallet = generateSolanaWallet();
|
|
64
|
-
spinner.succeed(`Solana wallet: ${chalk.cyan(truncateAddress(solanaWallet.publicKey, 6))}`);
|
|
65
|
-
let evmWallet = null;
|
|
66
|
-
if (includeHl) {
|
|
67
|
-
spinner.start('Generating EVM wallet (for Hyperliquid)...');
|
|
68
|
-
evmWallet = generateEvmWallet();
|
|
69
|
-
spinner.succeed(`EVM wallet: ${chalk.cyan(truncateAddress(evmWallet.address, 6))}`);
|
|
70
|
-
}
|
|
71
|
-
// Register with Cabal
|
|
72
|
-
spinner.start('Registering with Cabal...');
|
|
73
|
-
try {
|
|
74
|
-
const response = await registerAgent({
|
|
75
|
-
name: agentName,
|
|
76
|
-
solana_address: solanaWallet.publicKey,
|
|
77
|
-
hl_address: evmWallet?.address,
|
|
78
|
-
referral_code: referralCode,
|
|
79
|
-
});
|
|
80
|
-
if (!response.success || !response.agent) {
|
|
81
|
-
spinner.fail(chalk.red('Registration failed'));
|
|
82
|
-
console.log(chalk.red(`Error: ${response.error}`));
|
|
83
|
-
if (response.hint) {
|
|
84
|
-
console.log(chalk.yellow(`Hint: ${response.hint}`));
|
|
85
|
-
}
|
|
86
|
-
process.exit(1);
|
|
87
|
-
}
|
|
88
|
-
spinner.succeed('Registered with Cabal!');
|
|
89
|
-
// Save credentials
|
|
90
|
-
spinner.start('Saving credentials to .env...');
|
|
91
|
-
saveEnv({
|
|
92
|
-
apiKey: response.agent.api_key,
|
|
93
|
-
agentId: response.agent.id,
|
|
94
|
-
agentName: agentName,
|
|
95
|
-
solanaPublicKey: solanaWallet.publicKey,
|
|
96
|
-
solanaPrivateKey: solanaWallet.privateKey,
|
|
97
|
-
evmPublicKey: evmWallet?.address,
|
|
98
|
-
evmPrivateKey: evmWallet?.privateKey,
|
|
99
|
-
});
|
|
100
|
-
spinner.succeed('Credentials saved to .env');
|
|
101
|
-
// Check/add .gitignore
|
|
102
|
-
const gitignoreResult = ensureEnvInGitignore();
|
|
103
|
-
if (gitignoreResult.created) {
|
|
104
|
-
console.log(chalk.dim(' Created .gitignore with .env'));
|
|
105
|
-
}
|
|
106
|
-
else if (gitignoreResult.added) {
|
|
107
|
-
console.log(chalk.dim(' Added .env to .gitignore'));
|
|
108
|
-
}
|
|
109
|
-
else if (!isEnvInGitignore()) {
|
|
110
|
-
console.log(chalk.yellow(' ⚠️ .env is not in .gitignore - add it to avoid committing secrets!'));
|
|
111
|
-
}
|
|
112
|
-
// Success message
|
|
113
|
-
console.log('');
|
|
114
|
-
console.log(chalk.green.bold('✓ Agent created successfully!'));
|
|
115
|
-
console.log('');
|
|
116
|
-
// Claim via tweet
|
|
117
|
-
console.log(chalk.bold('📋 Next Steps:'));
|
|
118
|
-
console.log('');
|
|
119
|
-
console.log(` ${chalk.bold('1.')} Claim your agent by tweeting:`);
|
|
120
|
-
console.log('');
|
|
121
|
-
if (response.agent.tweet_template) {
|
|
122
|
-
// Show each line of the tweet template indented
|
|
123
|
-
for (const line of response.agent.tweet_template.split('\n')) {
|
|
124
|
-
console.log(` ${chalk.white(line)}`);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
console.log(` ${chalk.white(`I'm claiming my AI agent "${agentName}" on @cabaltrading`)}`);
|
|
129
|
-
console.log(` ${chalk.white(`Verification: ${response.agent.verification_code || 'N/A'}`)}`);
|
|
130
|
-
if (response.agent.referral_url) {
|
|
131
|
-
console.log(` ${chalk.white(response.agent.referral_url)}`);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
console.log('');
|
|
135
|
-
console.log(` ${chalk.dim('Then wait ~30 seconds and run:')}`);
|
|
136
|
-
console.log(` ${chalk.cyan('npx cabal-cli verify <tweet-url>')}`);
|
|
137
|
-
console.log('');
|
|
138
|
-
console.log(` ${chalk.yellow('⏰ You have 5 minutes to verify before the name is released.')}`);
|
|
139
|
-
console.log('');
|
|
140
|
-
console.log(` ${chalk.dim('Or use the web flow:')} ${chalk.cyan(response.agent.claim_url)}`);
|
|
141
|
-
console.log('');
|
|
142
|
-
// Funding instructions
|
|
143
|
-
console.log(` ${chalk.bold('2.')} Fund your wallets:`);
|
|
144
|
-
console.log(` ${chalk.dim('Solana:')} ${chalk.cyan(solanaWallet.publicKey)}`);
|
|
145
|
-
console.log(` ${chalk.dim(' Send SOL for trading on Jupiter')}`);
|
|
146
|
-
if (evmWallet) {
|
|
147
|
-
console.log(` ${chalk.dim('EVM:')} ${chalk.cyan(evmWallet.address)}`);
|
|
148
|
-
console.log(` ${chalk.dim(' Bridge USDC to Hyperliquid via')} ${chalk.cyan('https://app.hyperliquid.xyz/bridge')}`);
|
|
149
|
-
}
|
|
150
|
-
console.log('');
|
|
151
|
-
// HL setup reminder
|
|
152
|
-
if (evmWallet) {
|
|
153
|
-
console.log(` ${chalk.bold('3.')} After funding, approve Cabal's builder fee:`);
|
|
154
|
-
console.log(` ${chalk.cyan('npx cabal-cli hl-setup')}`);
|
|
155
|
-
console.log('');
|
|
156
|
-
}
|
|
157
|
-
// Trading
|
|
158
|
-
const step = evmWallet ? '4.' : '3.';
|
|
159
|
-
console.log(` ${chalk.bold(step)} Start trading!`);
|
|
160
|
-
console.log(` ${chalk.dim('Docs:')} ${chalk.cyan('https://cabal.trading/trading.md')}`);
|
|
161
|
-
console.log('');
|
|
162
|
-
// Security warning
|
|
163
|
-
console.log(chalk.yellow.bold('⚠️ IMPORTANT: Your private keys are saved in .env'));
|
|
164
|
-
console.log(chalk.yellow(' Keep this file safe and never share it!'));
|
|
165
|
-
console.log('');
|
|
166
|
-
// Referral info
|
|
167
|
-
if (referralCode) {
|
|
168
|
-
console.log(chalk.dim(`Referred by: ${referralCode} (you get 10% fee discount)`));
|
|
169
|
-
console.log('');
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
catch (error) {
|
|
173
|
-
spinner.fail(chalk.red('Registration failed'));
|
|
174
|
-
console.error(chalk.red(`Error: ${error instanceof Error ? error.message : 'Unknown error'}`));
|
|
175
|
-
process.exit(1);
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
//# sourceMappingURL=init.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAQ7F,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAoB;IACpD,8BAA8B;IAC9B,IAAI,YAAY,EAAE,EAAE,CAAC;QACnB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC1C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,2DAA2D,CAAC;gBAClF,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC,CAAA;YACxF,OAAM;QACR,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,IAAI,SAAS,GAAG,OAAO,CAAC,IAAI,CAAA;IAC5B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACpC;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,aAAa;gBACtB,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;oBAC1B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC/B,OAAO,oCAAoC,CAAA;oBAC7C,CAAC;oBACD,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;wBACtB,OAAO,oCAAoC,CAAA;oBAC7C,CAAC;oBACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;wBACnC,OAAO,yDAAyD,CAAA;oBAClE,CAAC;oBACD,OAAO,IAAI,CAAA;gBACb,CAAC;aACF;SACF,CAAC,CAAA;QACF,SAAS,GAAG,OAAO,CAAC,IAAI,CAAA;IAC1B,CAAC;IAED,oBAAoB;IACpB,IAAI,YAAY,GAAG,OAAO,CAAC,GAAG,CAAA;IAC9B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACpC;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,gDAAgD;aAC1D;SACF,CAAC,CAAA;QACF,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,SAAS,CAAA;IAClD,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,KAAK,KAAK,CAAA;IAEtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEf,mBAAmB;IACnB,MAAM,OAAO,GAAG,GAAG,CAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAA;IAE1D,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAA;IAC3C,OAAO,CAAC,OAAO,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAE3F,IAAI,SAAS,GAAG,IAAI,CAAA;IACpB,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAA;QAC3D,SAAS,GAAG,iBAAiB,EAAE,CAAA;QAC/B,OAAO,CAAC,OAAO,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACrF,CAAC;IAED,sBAAsB;IACtB,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAE1C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC;YACnC,IAAI,EAAE,SAAU;YAChB,cAAc,EAAE,YAAY,CAAC,SAAS;YACtC,UAAU,EAAE,SAAS,EAAE,OAAO;YAC9B,aAAa,EAAE,YAAY;SAC5B,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAA;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;YAClD,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;YACrD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAA;QAEzC,mBAAmB;QACnB,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAE9C,OAAO,CAAC;YACN,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;YAC9B,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC1B,SAAS,EAAE,SAAU;YACrB,eAAe,EAAE,YAAY,CAAC,SAAS;YACvC,gBAAgB,EAAE,YAAY,CAAC,UAAU;YACzC,YAAY,EAAE,SAAS,EAAE,OAAO;YAChC,aAAa,EAAE,SAAS,EAAE,UAAU;SACrC,CAAC,CAAA;QAEF,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAA;QAE5C,uBAAuB;QACvB,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAA;QAC9C,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAA;QAC1D,CAAC;aAAM,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAA;QACtD,CAAC;aAAM,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,uEAAuE,CAAC,CAAC,CAAA;QACpG,CAAC;QAED,kBAAkB;QAClB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAA;QAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,kBAAkB;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;QACzC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;QAClE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;YAClC,gDAAgD;YAChD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC1C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,KAAK,CAAC,6BAA6B,SAAS,oBAAoB,CAAC,EAAE,CAAC,CAAA;YAC9F,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,KAAK,CAAC,iBAAiB,QAAQ,CAAC,KAAK,CAAC,iBAAiB,IAAI,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;YAChG,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAAE,CAAC,CAAA;QAClE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAA;QACrE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,MAAM,CAAC,6DAA6D,CAAC,EAAE,CAAC,CAAA;QAClG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAChG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,uBAAuB;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;QACvD,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACjF,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,yCAAyC,CAAC,EAAE,CAAC,CAAA;QAE3E,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC5E,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,EAAE,CAAC,CAAA;QAChI,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,oBAAoB;QACpB,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAA;YAChF,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAA;YAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACjB,CAAC;QAED,UAAU;QACV,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QACnD,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAA;QAC3F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,mBAAmB;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC,CAAA;QACpF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAA;QACvE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEf,gBAAgB;QAChB,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,YAAY,6BAA6B,CAAC,CAAC,CAAA;YACjF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACjB,CAAC;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAA;QAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAA;QAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAMA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA6EnD"}
|
package/dist/commands/status.js
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import ora from 'ora';
|
|
3
|
-
import { getAgentStatus } from '../lib/api.js';
|
|
4
|
-
import { getCredentials, isConfigured } from '../lib/env.js';
|
|
5
|
-
export async function statusCommand() {
|
|
6
|
-
if (!isConfigured()) {
|
|
7
|
-
console.log(chalk.yellow('No Cabal configuration found.'));
|
|
8
|
-
console.log(chalk.dim('Run `cabal-cli init` to set up your agent.'));
|
|
9
|
-
process.exit(1);
|
|
10
|
-
}
|
|
11
|
-
const credentials = getCredentials();
|
|
12
|
-
if (!credentials.CABAL_API_KEY) {
|
|
13
|
-
console.log(chalk.red('CABAL_API_KEY not found in .env'));
|
|
14
|
-
process.exit(1);
|
|
15
|
-
}
|
|
16
|
-
const spinner = ora('Fetching agent status...').start();
|
|
17
|
-
try {
|
|
18
|
-
const response = await getAgentStatus(credentials.CABAL_API_KEY);
|
|
19
|
-
if (!response.success) {
|
|
20
|
-
spinner.fail(chalk.red('Failed to fetch status'));
|
|
21
|
-
console.log(chalk.red(`Error: ${response.error}`));
|
|
22
|
-
process.exit(1);
|
|
23
|
-
}
|
|
24
|
-
spinner.stop();
|
|
25
|
-
// Agent info
|
|
26
|
-
console.log(chalk.bold('Agent Status'));
|
|
27
|
-
console.log('');
|
|
28
|
-
console.log(` ${chalk.dim('Name:')} ${credentials.CABAL_AGENT_NAME || 'Unknown'}`);
|
|
29
|
-
console.log(` ${chalk.dim('Status:')} ${getStatusBadge(response.status || 'unknown')}`);
|
|
30
|
-
console.log(` ${chalk.dim('Claimed:')} ${response.claimed ? chalk.green('Yes') : chalk.yellow('No - send claim URL to your human')}`);
|
|
31
|
-
console.log('');
|
|
32
|
-
// Wallets
|
|
33
|
-
console.log(chalk.bold('Wallets'));
|
|
34
|
-
console.log('');
|
|
35
|
-
if (credentials.SOLANA_PUBLIC_KEY) {
|
|
36
|
-
const solBalance = response.wallets?.solana?.balance_usd;
|
|
37
|
-
console.log(` ${chalk.dim('Solana:')}`);
|
|
38
|
-
console.log(` Address: ${chalk.cyan(credentials.SOLANA_PUBLIC_KEY)}`);
|
|
39
|
-
if (solBalance !== undefined) {
|
|
40
|
-
console.log(` Balance: ${chalk.green(`$${solBalance.toFixed(2)}`)}`);
|
|
41
|
-
}
|
|
42
|
-
console.log('');
|
|
43
|
-
}
|
|
44
|
-
if (credentials.EVM_PUBLIC_KEY) {
|
|
45
|
-
const hlValue = response.wallets?.hyperliquid?.account_value;
|
|
46
|
-
console.log(` ${chalk.dim('Hyperliquid (EVM):')}`);
|
|
47
|
-
console.log(` Address: ${chalk.cyan(credentials.EVM_PUBLIC_KEY)}`);
|
|
48
|
-
if (hlValue !== undefined) {
|
|
49
|
-
console.log(` Account Value: ${chalk.green(`$${hlValue.toFixed(2)}`)}`);
|
|
50
|
-
}
|
|
51
|
-
console.log(` Builder Approved: ${response.hl_builder_approved ? chalk.green('Yes') : chalk.yellow('No - run `cabal-cli hl-setup`')}`);
|
|
52
|
-
console.log('');
|
|
53
|
-
}
|
|
54
|
-
// Quick actions
|
|
55
|
-
console.log(chalk.bold('Quick Actions'));
|
|
56
|
-
console.log('');
|
|
57
|
-
if (!response.claimed) {
|
|
58
|
-
console.log(` ${chalk.yellow('→')} Send your claim URL to your human`);
|
|
59
|
-
}
|
|
60
|
-
if (credentials.EVM_PUBLIC_KEY && !response.hl_builder_approved) {
|
|
61
|
-
console.log(` ${chalk.yellow('→')} Run ${chalk.cyan('cabal-cli hl-setup')} to enable Hyperliquid trading`);
|
|
62
|
-
}
|
|
63
|
-
console.log(` ${chalk.dim('→')} View docs: ${chalk.cyan('https://cabal.trading/trading.md')}`);
|
|
64
|
-
console.log('');
|
|
65
|
-
}
|
|
66
|
-
catch (error) {
|
|
67
|
-
spinner.fail(chalk.red('Failed to fetch status'));
|
|
68
|
-
console.error(chalk.red(`Error: ${error instanceof Error ? error.message : 'Unknown error'}`));
|
|
69
|
-
process.exit(1);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
function getStatusBadge(status) {
|
|
73
|
-
switch (status) {
|
|
74
|
-
case 'active':
|
|
75
|
-
return chalk.green('Active');
|
|
76
|
-
case 'pending':
|
|
77
|
-
return chalk.yellow('Pending');
|
|
78
|
-
case 'suspended':
|
|
79
|
-
return chalk.red('Suspended');
|
|
80
|
-
case 'liquidated':
|
|
81
|
-
return chalk.red('Liquidated');
|
|
82
|
-
default:
|
|
83
|
-
return chalk.dim(status);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
//# sourceMappingURL=status.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"AAKA,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwEnE"}
|