@tokenomist-ai/tokenomist-cli 0.1.0 → 0.1.2
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/LICENSE +1 -1
- package/README.md +37 -29
- package/dist/index.js +144 -78
- package/dist/index.js.map +1 -1
- package/dist/update-check.js +3 -3
- package/dist/update-check.js.map +1 -1
- package/package.json +3 -3
- package/scripts/postinstall.js +6 -19
- package/skills/tokenomist-allocation-breakdown/SKILL.md +8 -8
- package/skills/tokenomist-burn-buyback/SKILL.md +54 -14
- package/skills/tokenomist-emission-report/SKILL.md +41 -13
- package/skills/tokenomist-fundraising-lookup/SKILL.md +44 -17
- package/skills/tokenomist-token-overview/SKILL.md +28 -12
- package/skills/tokenomist-unlock-analysis/SKILL.md +59 -16
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tokenomist-ai/tokenomist-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "CLI tool for the Tokenomist API — query token unlocks, emissions, fundraising, burns, and buybacks from the terminal",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"bin": {
|
|
8
|
-
"
|
|
8
|
+
"tok": "dist/index.js"
|
|
9
9
|
},
|
|
10
10
|
"scripts": {
|
|
11
11
|
"postinstall": "node scripts/postinstall.js",
|
|
@@ -71,6 +71,6 @@
|
|
|
71
71
|
"tsup": "^8.3.5",
|
|
72
72
|
"typescript": "^5.7.2",
|
|
73
73
|
"typescript-eslint": "^8.57.0",
|
|
74
|
-
"vitest": "^2.
|
|
74
|
+
"vitest": "^3.2.4"
|
|
75
75
|
}
|
|
76
76
|
}
|
package/scripts/postinstall.js
CHANGED
|
@@ -48,10 +48,7 @@ export function hasNpx() {
|
|
|
48
48
|
|
|
49
49
|
export function isSkillInstalled() {
|
|
50
50
|
const home = homedir();
|
|
51
|
-
const locations = [
|
|
52
|
-
join(home, ".claude", "skills", "tokenomist-cli"),
|
|
53
|
-
join(home, ".claude", "skills", "tokenomist-ai--tokenomist-cli"),
|
|
54
|
-
];
|
|
51
|
+
const locations = [join(home, ".claude", "skills", "tokenomist-cli")];
|
|
55
52
|
return locations.some((loc) => existsSync(loc));
|
|
56
53
|
}
|
|
57
54
|
|
|
@@ -96,14 +93,10 @@ async function installSkill() {
|
|
|
96
93
|
|
|
97
94
|
log(`Tokenomist skills let AI coding agents (Claude Code, Cursor, etc.) query`);
|
|
98
95
|
log(`token unlocks, emissions, fundraising, burns, and allocations on your behalf.`);
|
|
99
|
-
const answer = await prompt(
|
|
100
|
-
` Install Tokenomist skills for your AI coding agent? [Y/n] `,
|
|
101
|
-
);
|
|
96
|
+
const answer = await prompt(` Install Tokenomist skills for your AI coding agent? [Y/n] `);
|
|
102
97
|
|
|
103
98
|
if (/^n/i.test(answer)) {
|
|
104
|
-
log(
|
|
105
|
-
`Skipped. You can install later with: ${CYAN}npx skills add ${SKILL_REPO}${RESET}`,
|
|
106
|
-
);
|
|
99
|
+
log(`Skipped. You can install later with: ${CYAN}npx skills add ${SKILL_REPO}${RESET}`);
|
|
107
100
|
return;
|
|
108
101
|
}
|
|
109
102
|
|
|
@@ -133,12 +126,8 @@ async function main() {
|
|
|
133
126
|
if (!hasTTY()) {
|
|
134
127
|
log(`${BOLD}Tokenomist CLI installed!${RESET}`);
|
|
135
128
|
log();
|
|
136
|
-
log(
|
|
137
|
-
|
|
138
|
-
);
|
|
139
|
-
log(
|
|
140
|
-
`Tip: Run '${CYAN}tokenomist auth login${RESET}' to authenticate.`,
|
|
141
|
-
);
|
|
129
|
+
log(`Tip: Run '${CYAN}npx skills add ${SKILL_REPO}${RESET}' to install AI coding skills.`);
|
|
130
|
+
log(`Tip: Run '${CYAN}tok auth login${RESET}' to authenticate.`);
|
|
142
131
|
return;
|
|
143
132
|
}
|
|
144
133
|
|
|
@@ -151,9 +140,7 @@ async function main() {
|
|
|
151
140
|
}
|
|
152
141
|
|
|
153
142
|
// Only auto-run when executed as the entry point, not when imported for testing
|
|
154
|
-
const isEntryPoint =
|
|
155
|
-
process.argv[1] &&
|
|
156
|
-
fileURLToPath(import.meta.url) === process.argv[1];
|
|
143
|
+
const isEntryPoint = process.argv[1] && fileURLToPath(import.meta.url) === process.argv[1];
|
|
157
144
|
|
|
158
145
|
if (isEntryPoint) {
|
|
159
146
|
main().catch(() => {
|
|
@@ -7,13 +7,13 @@ metadata:
|
|
|
7
7
|
env:
|
|
8
8
|
- TOKENOMIST_API_KEY
|
|
9
9
|
bins:
|
|
10
|
-
-
|
|
10
|
+
- tok
|
|
11
11
|
primaryEnv: TOKENOMIST_API_KEY
|
|
12
12
|
install:
|
|
13
13
|
- kind: node
|
|
14
14
|
package: "@tokenomist-ai/tokenomist-cli"
|
|
15
|
-
bins: [
|
|
16
|
-
allowed-tools: Bash(
|
|
15
|
+
bins: [tok]
|
|
16
|
+
allowed-tools: Bash(tok:*)
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Skill: Allocation Breakdown
|
|
@@ -27,13 +27,13 @@ When you need to understand a token's supply distribution across allocations (te
|
|
|
27
27
|
## Command
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
|
-
|
|
30
|
+
tok allocation detail <tokenId> --output json
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
## Example
|
|
34
34
|
|
|
35
35
|
```bash
|
|
36
|
-
|
|
36
|
+
tok allocation detail solana --output json
|
|
37
37
|
```
|
|
38
38
|
|
|
39
39
|
## Key output fields
|
|
@@ -57,11 +57,11 @@ tokenomist allocation solana --output json
|
|
|
57
57
|
|
|
58
58
|
## Analysis workflow
|
|
59
59
|
|
|
60
|
-
1. Get allocation: `
|
|
60
|
+
1. Get allocation: `tok allocation detail <id> --output json`
|
|
61
61
|
2. Check `totalLockedAmount` vs `totalUnlockedAmount` for overall supply status
|
|
62
62
|
3. Look at individual allocations — high locked amounts in "Investor" or "Team" allocations signal future sell pressure
|
|
63
63
|
4. Compare `standardAllocationName` across different tokens for apples-to-apples comparison
|
|
64
|
-
5. Cross-reference with `
|
|
64
|
+
5. Cross-reference with `tok unlock upcoming` to see when locked tokens will release
|
|
65
65
|
|
|
66
66
|
## Domain Context
|
|
67
67
|
|
|
@@ -72,5 +72,5 @@ tokenomist allocation solana --output json
|
|
|
72
72
|
## Workflow
|
|
73
73
|
|
|
74
74
|
- Use allocation data as context for unlock analysis — understanding allocations helps interpret **who** is receiving unlocked tokens and why it matters.
|
|
75
|
-
- Chain with `
|
|
75
|
+
- Chain with `tok fundraising detail <id>` to see investor-specific allocation details and funding round information.
|
|
76
76
|
- Compare `allocationLockedAmount` vs `allocationUnlockedAmount` per allocation to identify which groups still have significant locked positions.
|
|
@@ -7,13 +7,13 @@ metadata:
|
|
|
7
7
|
env:
|
|
8
8
|
- TOKENOMIST_API_KEY
|
|
9
9
|
bins:
|
|
10
|
-
-
|
|
10
|
+
- tok
|
|
11
11
|
primaryEnv: TOKENOMIST_API_KEY
|
|
12
12
|
install:
|
|
13
13
|
- kind: node
|
|
14
14
|
package: "@tokenomist-ai/tokenomist-cli"
|
|
15
|
-
bins: [
|
|
16
|
-
allowed-tools: Bash(
|
|
15
|
+
bins: [tok]
|
|
16
|
+
allowed-tools: Bash(tok:*)
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Skill: Burn & Buyback
|
|
@@ -30,26 +30,66 @@ When you need to analyze deflationary mechanisms — how many tokens have been p
|
|
|
30
30
|
|
|
31
31
|
List all tokens with burns:
|
|
32
32
|
```bash
|
|
33
|
-
|
|
33
|
+
tok burn list --output json
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Options:
|
|
37
|
+
| Option | Description |
|
|
38
|
+
|--------|-------------|
|
|
39
|
+
| `--token-id <ids>` | Filter by token IDs (comma-separated) |
|
|
40
|
+
| `--page <number>` | Page number |
|
|
41
|
+
| `--page-size <number>` | Items per page |
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
tok burn list --token-id aptos,stellar --output json
|
|
34
45
|
```
|
|
35
46
|
|
|
36
47
|
Get burn events for a specific token:
|
|
37
48
|
```bash
|
|
38
|
-
|
|
39
|
-
|
|
49
|
+
tok burn detail <tokenId> --output json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Options:
|
|
53
|
+
| Option | Description |
|
|
54
|
+
|--------|-------------|
|
|
55
|
+
| `--start <date>` | Start date (YYYY-MM-DD) |
|
|
56
|
+
| `--end <date>` | End date (YYYY-MM-DD) |
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
tok burn detail aptos --start 2024-01-01 --end 2024-12-31 --output json
|
|
40
60
|
```
|
|
41
61
|
|
|
42
62
|
### Buybacks
|
|
43
63
|
|
|
44
64
|
List all tokens with buybacks:
|
|
45
65
|
```bash
|
|
46
|
-
|
|
66
|
+
tok buyback list --output json
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Options:
|
|
70
|
+
| Option | Description |
|
|
71
|
+
|--------|-------------|
|
|
72
|
+
| `--token-id <ids>` | Filter by token IDs (comma-separated) |
|
|
73
|
+
| `--page <number>` | Page number |
|
|
74
|
+
| `--page-size <number>` | Items per page |
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
tok buyback list --token-id aave --output json
|
|
47
78
|
```
|
|
48
79
|
|
|
49
80
|
Get buyback events for a specific token:
|
|
50
81
|
```bash
|
|
51
|
-
|
|
52
|
-
|
|
82
|
+
tok buyback detail <tokenId> --output json
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Options:
|
|
86
|
+
| Option | Description |
|
|
87
|
+
|--------|-------------|
|
|
88
|
+
| `--start <date>` | Start date (YYYY-MM-DD) |
|
|
89
|
+
| `--end <date>` | End date (YYYY-MM-DD) |
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
tok buyback detail aave --start 2024-01-01 --end 2024-12-31 --output json
|
|
53
93
|
```
|
|
54
94
|
|
|
55
95
|
## Key output fields
|
|
@@ -74,10 +114,10 @@ tokenomist buyback detail <tokenSlug> --start 2024-01-01 --end 2024-12-31 --outp
|
|
|
74
114
|
|
|
75
115
|
## Analysis workflow
|
|
76
116
|
|
|
77
|
-
1. List tokens with burns: `
|
|
117
|
+
1. List tokens with burns: `tok burn list --output json`
|
|
78
118
|
2. Compare `totalBurnAmount` across tokens to find most deflationary projects
|
|
79
|
-
3. Drill into a token: `
|
|
80
|
-
4. Cross-reference with emissions from `
|
|
119
|
+
3. Drill into a token: `tok burn detail <id> --output json`
|
|
120
|
+
4. Cross-reference with emissions from `tok emission weekly <id>` to calculate net inflation
|
|
81
121
|
|
|
82
122
|
## Domain Context
|
|
83
123
|
|
|
@@ -87,6 +127,6 @@ tokenomist buyback detail <tokenSlug> --start 2024-01-01 --end 2024-12-31 --outp
|
|
|
87
127
|
|
|
88
128
|
## Workflow
|
|
89
129
|
|
|
90
|
-
- Cross-reference with `
|
|
91
|
-
- Use `
|
|
130
|
+
- Cross-reference with `tok emission weekly <id>` to calculate net inflation: if burns exceed emissions, the token is net deflationary.
|
|
131
|
+
- Use `tok token list --output json` to check `hasBurn`/`hasBuyback` fields before querying detail commands (these fields are only visible in JSON output, not table mode).
|
|
92
132
|
- Compare `totalBurnAmount` across tokens to find the most deflationary projects.
|
|
@@ -7,13 +7,13 @@ metadata:
|
|
|
7
7
|
env:
|
|
8
8
|
- TOKENOMIST_API_KEY
|
|
9
9
|
bins:
|
|
10
|
-
-
|
|
10
|
+
- tok
|
|
11
11
|
primaryEnv: TOKENOMIST_API_KEY
|
|
12
12
|
install:
|
|
13
13
|
- kind: node
|
|
14
14
|
package: "@tokenomist-ai/tokenomist-cli"
|
|
15
|
-
bins: [
|
|
16
|
-
allowed-tools: Bash(
|
|
15
|
+
bins: [tok]
|
|
16
|
+
allowed-tools: Bash(tok:*)
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Skill: Emission Report
|
|
@@ -28,14 +28,42 @@ When you need to analyze token inflation over time, compare emission rates acros
|
|
|
28
28
|
|
|
29
29
|
### Daily emission
|
|
30
30
|
```bash
|
|
31
|
-
|
|
32
|
-
tokenomist emission daily arbitrum --start 2024-08-01 --end 2024-08-31 --output json
|
|
31
|
+
tok emission daily <tokenId> --output json
|
|
33
32
|
```
|
|
34
33
|
|
|
34
|
+
Options:
|
|
35
|
+
| Option | Description |
|
|
36
|
+
|--------|-------------|
|
|
37
|
+
| `--start <date>` | Start date (YYYY-MM-DD) |
|
|
38
|
+
| `--end <date>` | End date (YYYY-MM-DD) |
|
|
39
|
+
| `--standard-allocation <names>` | Filter by allocation (comma-separated) |
|
|
40
|
+
| `--page <number>` | Page number |
|
|
41
|
+
| `--page-size <number>` | Items per page |
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
tok emission daily arbitrum --start 2024-08-01 --end 2024-08-31 --output json
|
|
45
|
+
tok emission daily arbitrum --standard-allocation "privateInvestors" --output json
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Available `--standard-allocation` values: `community`, `founderTeam`, `privateInvestors`, `publicInvestors`, `others`, `reserve` (comma-separated for multiple).
|
|
49
|
+
|
|
35
50
|
### Weekly emission
|
|
36
51
|
```bash
|
|
37
|
-
|
|
38
|
-
|
|
52
|
+
tok emission weekly <tokenId> --output json
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Options:
|
|
56
|
+
| Option | Description |
|
|
57
|
+
|--------|-------------|
|
|
58
|
+
| `--start <date>` | Start date (YYYY-MM-DD) |
|
|
59
|
+
| `--end <date>` | End date (YYYY-MM-DD) |
|
|
60
|
+
| `--standard-allocation <names>` | Filter by allocation (comma-separated) |
|
|
61
|
+
| `--page <number>` | Page number |
|
|
62
|
+
| `--page-size <number>` | Items per page |
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
tok emission weekly arbitrum --start 2024-01-01 --end 2024-06-30 --output json
|
|
66
|
+
tok emission weekly arbitrum --standard-allocation "founderTeam" --output json
|
|
39
67
|
```
|
|
40
68
|
|
|
41
69
|
## Key output fields
|
|
@@ -52,19 +80,19 @@ tokenomist emission weekly arbitrum --start 2024-01-01 --end 2024-06-30 --output
|
|
|
52
80
|
|
|
53
81
|
## Analysis workflow
|
|
54
82
|
|
|
55
|
-
1. Get weekly emissions to see the trend: `
|
|
83
|
+
1. Get weekly emissions to see the trend: `tok emission weekly <id> --output json`
|
|
56
84
|
2. Look at `unlockAmount` over time to spot acceleration or deceleration
|
|
57
85
|
3. Check `allocations` to see if emissions are going to investors (sell pressure) vs community/ecosystem (growth)
|
|
58
|
-
4. Compare `unlockValue` against market cap from `
|
|
86
|
+
4. Compare `unlockValue` against market cap from `tok token list` to assess dilution
|
|
59
87
|
|
|
60
88
|
## Domain Context
|
|
61
89
|
|
|
62
90
|
- Emission data shows **scheduled** releases per allocation. Actual on-chain supply may differ due to relocks, delays, or early releases.
|
|
63
|
-
- Compare `unlockValue` against market cap (from `
|
|
91
|
+
- Compare `unlockValue` against market cap (from `tok token list`) to assess dilution impact.
|
|
64
92
|
- Emissions going to "Investor" or "Team" allocations typically represent higher sell pressure than "Community" or "Ecosystem" allocations.
|
|
65
93
|
|
|
66
94
|
## Workflow
|
|
67
95
|
|
|
68
|
-
- Combine with `
|
|
69
|
-
- Chain with `
|
|
70
|
-
- Use `
|
|
96
|
+
- Combine with `tok unlock events <id>` to distinguish between cliff unlocks (large one-time events) and continuous emissions (steady daily/weekly releases).
|
|
97
|
+
- Chain with `tok burn detail <id>` to calculate net inflation: emissions minus burns = net new supply.
|
|
98
|
+
- Use `tok allocation detail <id>` to see the full allocation picture and understand where emissions are going.
|
|
@@ -7,13 +7,13 @@ metadata:
|
|
|
7
7
|
env:
|
|
8
8
|
- TOKENOMIST_API_KEY
|
|
9
9
|
bins:
|
|
10
|
-
-
|
|
10
|
+
- tok
|
|
11
11
|
primaryEnv: TOKENOMIST_API_KEY
|
|
12
12
|
install:
|
|
13
13
|
- kind: node
|
|
14
14
|
package: "@tokenomist-ai/tokenomist-cli"
|
|
15
|
-
bins: [
|
|
16
|
-
allowed-tools: Bash(
|
|
15
|
+
bins: [tok]
|
|
16
|
+
allowed-tools: Bash(tok:*)
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Skill: Fundraising Lookup
|
|
@@ -28,29 +28,56 @@ When you need to find out who invested in a token, what valuation rounds were ra
|
|
|
28
28
|
|
|
29
29
|
### Get fundraising data for a token
|
|
30
30
|
```bash
|
|
31
|
-
|
|
32
|
-
tokenomist fundraising uniswap --output json
|
|
31
|
+
tok fundraising detail <tokenId> --output json
|
|
33
32
|
```
|
|
34
33
|
|
|
35
|
-
|
|
34
|
+
Options:
|
|
35
|
+
| Option | Description |
|
|
36
|
+
|--------|-------------|
|
|
37
|
+
| `--funding-date-min <date>` | Min funding date (YYYY-MM-DD) |
|
|
38
|
+
| `--funding-date-max <date>` | Max funding date (YYYY-MM-DD) |
|
|
39
|
+
| `--raised-amount-min <value>` | Min raised amount |
|
|
40
|
+
| `--raised-amount-max <value>` | Max raised amount |
|
|
41
|
+
|
|
36
42
|
```bash
|
|
37
|
-
|
|
43
|
+
tok fundraising detail uniswap --output json
|
|
44
|
+
tok fundraising detail uniswap --funding-date-min 2020-01-01 --funding-date-max 2024-12-31 --raised-amount-min 1000000 --output json
|
|
38
45
|
```
|
|
39
46
|
|
|
40
47
|
### List all investors
|
|
41
48
|
```bash
|
|
42
|
-
|
|
49
|
+
tok investor list --output json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Options:
|
|
53
|
+
| Option | Description |
|
|
54
|
+
|--------|-------------|
|
|
55
|
+
| `--start-latest-funding-date <date>` | Start date filter for latest funding (YYYY-MM-DD) |
|
|
56
|
+
| `--end-latest-funding-date <date>` | End date filter for latest funding (YYYY-MM-DD) |
|
|
57
|
+
| `--page <number>` | Page number |
|
|
58
|
+
| `--page-size <number>` | Items per page |
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
tok investor list --start-latest-funding-date 2023-01-01 --end-latest-funding-date 2024-01-01 --output json
|
|
43
62
|
```
|
|
44
63
|
|
|
45
64
|
### Get investor detail with portfolio
|
|
46
65
|
```bash
|
|
47
|
-
|
|
48
|
-
tokenomist investor detail <investorId> --is-lead-investor --output json
|
|
66
|
+
tok investor detail <investorId> --output json
|
|
49
67
|
```
|
|
50
68
|
|
|
51
|
-
|
|
69
|
+
Options:
|
|
70
|
+
| Option | Description |
|
|
71
|
+
|--------|-------------|
|
|
72
|
+
| `--is-lead-investor` | Filter to rounds where investor was lead |
|
|
73
|
+
| `--funding-date-min <date>` | Min funding date (YYYY-MM-DD) |
|
|
74
|
+
| `--funding-date-max <date>` | Max funding date (YYYY-MM-DD) |
|
|
75
|
+
| `--raised-amount-min <value>` | Min raised amount |
|
|
76
|
+
| `--raised-amount-max <value>` | Max raised amount |
|
|
77
|
+
|
|
52
78
|
```bash
|
|
53
|
-
|
|
79
|
+
tok investor detail andreessen-horowitz --is-lead-investor --output json
|
|
80
|
+
tok investor detail andreessen-horowitz --funding-date-min 2023-01-01 --raised-amount-min 5000000 --output json
|
|
54
81
|
```
|
|
55
82
|
|
|
56
83
|
## Key output fields
|
|
@@ -71,10 +98,10 @@ tokenomist investor detail <investorId> --funding-date-min 2023-01-01 --raised-a
|
|
|
71
98
|
|
|
72
99
|
## Analysis workflow
|
|
73
100
|
|
|
74
|
-
1. Look up a token: `
|
|
101
|
+
1. Look up a token: `tok fundraising detail <id> --output json`
|
|
75
102
|
2. Compare `pricePerToken` across rounds to see valuation progression
|
|
76
103
|
3. Check `investorReleasedPercentage` — high % means most investor tokens are already unlocked (less future sell pressure)
|
|
77
|
-
4. Look at individual investors: `
|
|
104
|
+
4. Look at individual investors: `tok investor detail <id> --output json` to see their full portfolio
|
|
78
105
|
|
|
79
106
|
## Domain Context
|
|
80
107
|
|
|
@@ -84,6 +111,6 @@ tokenomist investor detail <investorId> --funding-date-min 2023-01-01 --raised-a
|
|
|
84
111
|
|
|
85
112
|
## Workflow
|
|
86
113
|
|
|
87
|
-
- Chain with `
|
|
88
|
-
- Cross-reference `pricePerToken` with current market data from `
|
|
89
|
-
- Use `
|
|
114
|
+
- Chain with `tok investor detail <investorId>` to see an investor's full portfolio across multiple tokens.
|
|
115
|
+
- Cross-reference `pricePerToken` with current market data from `tok token list` to calculate investor ROI.
|
|
116
|
+
- Use `tok unlock events <id>` to see when remaining investor allocations will unlock.
|
|
@@ -7,13 +7,13 @@ metadata:
|
|
|
7
7
|
env:
|
|
8
8
|
- TOKENOMIST_API_KEY
|
|
9
9
|
bins:
|
|
10
|
-
-
|
|
10
|
+
- tok
|
|
11
11
|
primaryEnv: TOKENOMIST_API_KEY
|
|
12
12
|
install:
|
|
13
13
|
- kind: node
|
|
14
14
|
package: "@tokenomist-ai/tokenomist-cli"
|
|
15
|
-
bins: [
|
|
16
|
-
allowed-tools: Bash(
|
|
15
|
+
bins: [tok]
|
|
16
|
+
allowed-tools: Bash(tok:*)
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Skill: Token Overview
|
|
@@ -24,17 +24,28 @@ Get a summary list of all tracked tokens with market data and supply info.
|
|
|
24
24
|
|
|
25
25
|
When you need to browse all available tokens, compare market caps, or find which tokens have fundraising/burn/buyback data.
|
|
26
26
|
|
|
27
|
-
##
|
|
27
|
+
## Commands
|
|
28
28
|
|
|
29
|
+
### List all tokens
|
|
29
30
|
```bash
|
|
30
|
-
|
|
31
|
+
tok token list --output json
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Options:
|
|
35
|
+
| Option | Description |
|
|
36
|
+
|--------|-------------|
|
|
37
|
+
| `--token-id <ids>` | Filter by token IDs (comma-separated) |
|
|
38
|
+
|
|
39
|
+
### Search tokens
|
|
40
|
+
```bash
|
|
41
|
+
tok token search <query> --output json
|
|
31
42
|
```
|
|
32
43
|
|
|
33
44
|
## Output fields
|
|
34
45
|
|
|
35
46
|
| Field | Description |
|
|
36
47
|
|-------|-------------|
|
|
37
|
-
| `id` | Token
|
|
48
|
+
| `id` | Token ID (use in other commands) |
|
|
38
49
|
| `name` | Token name |
|
|
39
50
|
| `symbol` | Ticker symbol |
|
|
40
51
|
| `marketCap` | Current market cap (USD), null if unavailable |
|
|
@@ -50,29 +61,34 @@ tokenomist token list --output json
|
|
|
50
61
|
|
|
51
62
|
List all tokens as a table:
|
|
52
63
|
```bash
|
|
53
|
-
|
|
64
|
+
tok token list
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Filter by specific tokens:
|
|
68
|
+
```bash
|
|
69
|
+
tok token list --token-id solana,aptos --output json
|
|
54
70
|
```
|
|
55
71
|
|
|
56
|
-
|
|
72
|
+
Search by name or symbol:
|
|
57
73
|
```bash
|
|
58
|
-
|
|
74
|
+
tok token search bitcoin --output json
|
|
59
75
|
```
|
|
60
76
|
|
|
61
77
|
Export to CSV:
|
|
62
78
|
```bash
|
|
63
|
-
|
|
79
|
+
tok token list --output csv > tokens.csv
|
|
64
80
|
```
|
|
65
81
|
|
|
66
82
|
## Domain Context
|
|
67
83
|
|
|
68
|
-
- Token
|
|
84
|
+
- Token IDs (the `id` field) are the primary identifier used across all commands. Use `token list` to discover them.
|
|
69
85
|
- `circulatingSupply` and `unlockedAmount` are different concepts — unlocked tokens may not be circulating (they could be held by the team, locked in DeFi protocols, or otherwise not trading on exchanges).
|
|
70
86
|
- Fields like `hasStandardAllocation`, `hasFundraising`, `hasBurn`, `hasBuyback` indicate which data types are available. Check these before querying detail commands to avoid empty results.
|
|
71
87
|
|
|
72
88
|
## Workflow
|
|
73
89
|
|
|
74
90
|
- **Start here** to find token slugs before using other commands.
|
|
75
|
-
- Use the
|
|
91
|
+
- Use the ID in: `tok unlock events <id>`, `tok emission daily <id>`, `tok allocation detail <id>`, etc.
|
|
76
92
|
- Check `has*` boolean fields (visible in `--output json`) to know which data types exist for a token before querying.
|
|
77
93
|
|
|
78
94
|
## Output Size
|
|
@@ -7,13 +7,13 @@ metadata:
|
|
|
7
7
|
env:
|
|
8
8
|
- TOKENOMIST_API_KEY
|
|
9
9
|
bins:
|
|
10
|
-
-
|
|
10
|
+
- tok
|
|
11
11
|
primaryEnv: TOKENOMIST_API_KEY
|
|
12
12
|
install:
|
|
13
13
|
- kind: node
|
|
14
14
|
package: "@tokenomist-ai/tokenomist-cli"
|
|
15
|
-
bins: [
|
|
16
|
-
allowed-tools: Bash(
|
|
15
|
+
bins: [tok]
|
|
16
|
+
allowed-tools: Bash(tok:*)
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Skill: Unlock Analysis
|
|
@@ -28,24 +28,67 @@ When you need to check upcoming token unlocks, assess unlock impact on market ca
|
|
|
28
28
|
|
|
29
29
|
### List all unlock events (grouped by token)
|
|
30
30
|
```bash
|
|
31
|
-
|
|
31
|
+
tok unlock list --output json
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
Options:
|
|
35
|
+
| Option | Description |
|
|
36
|
+
|--------|-------------|
|
|
37
|
+
| `--min-market-cap <value>` | Minimum market cap |
|
|
38
|
+
| `--min-released-percentage <value>` | Minimum released percentage |
|
|
39
|
+
| `--min-unlock-date <date>` | Min unlock date (YYYY-MM-DD) |
|
|
40
|
+
| `--max-unlock-date <date>` | Max unlock date (YYYY-MM-DD) |
|
|
41
|
+
| `--min-total-unlock-amount <value>` | Minimum total unlock amount |
|
|
42
|
+
| `--min-value-to-market-cap <value>` | Min value-to-market-cap ratio |
|
|
43
|
+
| `--standard-allocation <names>` | Filter by allocation (comma-separated) |
|
|
44
|
+
| `--page <number>` | Page number |
|
|
45
|
+
| `--page-size <number>` | Items per page |
|
|
46
|
+
|
|
35
47
|
```bash
|
|
36
|
-
|
|
37
|
-
|
|
48
|
+
tok unlock list --min-market-cap 1000000 --min-unlock-date 2025-01-01 --max-unlock-date 2025-12-31
|
|
49
|
+
tok unlock list --min-value-to-market-cap 0.01 --standard-allocation "privateInvestors,founderTeam"
|
|
38
50
|
```
|
|
39
51
|
|
|
52
|
+
Available `--standard-allocation` values: `community`, `founderTeam`, `privateInvestors`, `publicInvestors`, `others`, `reserve` (comma-separated for multiple).
|
|
53
|
+
|
|
40
54
|
### Get upcoming unlocks (next event per token)
|
|
41
55
|
```bash
|
|
42
|
-
|
|
56
|
+
tok unlock upcoming --output json
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Options:
|
|
60
|
+
| Option | Description |
|
|
61
|
+
|--------|-------------|
|
|
62
|
+
| `--start <date>` | Start date (YYYY-MM-DD) |
|
|
63
|
+
| `--end <date>` | End date (YYYY-MM-DD) |
|
|
64
|
+
| `--standard-allocation <names>` | Filter by allocation (comma-separated) |
|
|
65
|
+
| `--min-market-cap <value>` | Minimum market cap |
|
|
66
|
+
| `--min-released-percentage <value>` | Minimum released percentage |
|
|
67
|
+
| `--min-total-unlock-amount <value>` | Minimum total unlock amount |
|
|
68
|
+
| `--min-value-to-market-cap <value>` | Min value-to-market-cap ratio |
|
|
69
|
+
| `--page <number>` | Page number |
|
|
70
|
+
| `--page-size <number>` | Items per page |
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
tok unlock upcoming --min-market-cap 5000000 --min-value-to-market-cap 0.01 --output json
|
|
43
74
|
```
|
|
44
75
|
|
|
45
76
|
### Get unlock events for a specific token
|
|
46
77
|
```bash
|
|
47
|
-
|
|
48
|
-
|
|
78
|
+
tok unlock events <tokenId> --output json
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Options:
|
|
82
|
+
| Option | Description |
|
|
83
|
+
|--------|-------------|
|
|
84
|
+
| `--start <date>` | Start date (YYYY-MM-DD) |
|
|
85
|
+
| `--end <date>` | End date (YYYY-MM-DD) |
|
|
86
|
+
| `--standard-allocation <names>` | Filter by allocation (comma-separated) |
|
|
87
|
+
| `--page <number>` | Page number |
|
|
88
|
+
| `--page-size <number>` | Items per page |
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
tok unlock events solana --start 2025-01-01 --end 2025-12-31 --output json
|
|
49
92
|
```
|
|
50
93
|
|
|
51
94
|
## Key output fields
|
|
@@ -64,9 +107,9 @@ tokenomist unlock events solana --start 2024-01-01 --end 2024-12-31 --output jso
|
|
|
64
107
|
|
|
65
108
|
## Analysis workflow
|
|
66
109
|
|
|
67
|
-
1. Run `
|
|
110
|
+
1. Run `tok unlock upcoming --output json` to find tokens with large upcoming unlocks
|
|
68
111
|
2. Filter by `valueToMarketCap` to identify potentially market-moving events
|
|
69
|
-
3. Drill into specific tokens with `
|
|
112
|
+
3. Drill into specific tokens with `tok unlock events <id> --output json`
|
|
70
113
|
4. Check allocation breakdown to understand who is receiving tokens (investors, team, community, etc.)
|
|
71
114
|
|
|
72
115
|
## Domain Context
|
|
@@ -77,10 +120,10 @@ tokenomist unlock events solana --start 2024-01-01 --end 2024-12-31 --output jso
|
|
|
77
120
|
|
|
78
121
|
## Workflow
|
|
79
122
|
|
|
80
|
-
- Use `
|
|
81
|
-
- Chain with `
|
|
82
|
-
- Cross-reference with `
|
|
83
|
-
- Use `
|
|
123
|
+
- Use `tok token list --output json` first to find the token ID if you don't know it.
|
|
124
|
+
- Chain with `tok emission daily <id>` for a complete unlock + emission picture.
|
|
125
|
+
- Cross-reference with `tok allocation detail <id>` to understand which groups (team, investors, community) are unlocking.
|
|
126
|
+
- Use `tok fundraising detail <id>` to see what price investors paid — compare with current price to assess sell pressure.
|
|
84
127
|
|
|
85
128
|
## Output Size
|
|
86
129
|
|