@hummingbot/skills 1.0.0 → 1.0.6
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 +15 -14
- package/package.json +5 -1
- package/skills/candles-feed/SKILL.md +3 -2
- package/skills/candles-feed/scripts/calculate_indicator.sh +2 -0
- package/skills/candles-feed/scripts/get_candles.sh +2 -0
- package/skills/candles-feed/scripts/get_funding_rate.sh +2 -0
- package/skills/candles-feed/scripts/get_price.sh +2 -0
- package/skills/candles-feed/scripts/list_candle_connectors.sh +2 -0
- package/skills/executor-creator/SKILL.md +49 -7
- package/skills/executor-creator/scripts/clear_position.sh +2 -0
- package/skills/executor-creator/scripts/create_executor.sh +11 -2
- package/skills/executor-creator/scripts/get_executor.sh +2 -0
- package/skills/executor-creator/scripts/get_executor_schema.sh +2 -0
- package/skills/executor-creator/scripts/get_executors_summary.sh +2 -0
- package/skills/executor-creator/scripts/get_position.sh +2 -0
- package/skills/executor-creator/scripts/get_positions.sh +2 -0
- package/skills/executor-creator/scripts/list_executor_types.sh +2 -0
- package/skills/executor-creator/scripts/list_executors.sh +2 -0
- package/skills/executor-creator/scripts/setup_executor.sh +23 -7
- package/skills/executor-creator/scripts/stop_executor.sh +2 -0
- package/skills/hummingbot-api-setup/SKILL.md +51 -259
- package/skills/hummingbot-api-setup/scripts/health_check.sh +2 -0
- package/skills/hummingbot-api-setup/{references/original_setup.sh → scripts/setup.sh} +76 -54
- package/skills/keys-manager/SKILL.md +3 -2
- package/skills/keys-manager/scripts/add_credentials.sh +2 -0
- package/skills/keys-manager/scripts/get_connector_config.sh +2 -0
- package/skills/keys-manager/scripts/list_account_credentials.sh +2 -0
- package/skills/keys-manager/scripts/list_connectors.sh +2 -0
- package/skills/keys-manager/scripts/remove_credentials.sh +2 -0
- package/skills/keys-manager/scripts/setup_connector.sh +2 -0
- package/skills/portfolio/SKILL.md +181 -0
- package/skills/portfolio/scripts/get_distribution.sh +52 -0
- package/skills/portfolio/scripts/get_history.sh +75 -0
- package/skills/portfolio/scripts/get_overview.sh +96 -0
- package/skills/portfolio/scripts/get_state.sh +96 -0
- package/skills/hummingbot-api-setup/scripts/check_prerequisites.sh +0 -92
- package/skills/hummingbot-api-setup/scripts/deploy_full_stack.sh +0 -151
- package/skills/hummingbot-api-setup/scripts/step1_detect_system.sh +0 -88
- package/skills/hummingbot-api-setup/scripts/step2_check_dependencies.sh +0 -81
- package/skills.json +0 -137
|
@@ -1,308 +1,100 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hummingbot-api-setup
|
|
3
3
|
description: Deploy Hummingbot infrastructure including API server, Condor Telegram bot, PostgreSQL, and Gateway for DEX trading. Use this skill when the user wants to install, deploy, or set up Hummingbot.
|
|
4
|
-
|
|
4
|
+
metadata:
|
|
5
|
+
author: david-hummingbot
|
|
5
6
|
---
|
|
6
7
|
|
|
7
|
-
#
|
|
8
|
+
# hummingbot-api-setup
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
Deploy Hummingbot infrastructure using the official installer from [hummingbot/deploy](https://github.com/hummingbot/deploy).
|
|
10
11
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
The Hummingbot stack consists of:
|
|
14
|
-
|
|
15
|
-
| Component | Description |
|
|
16
|
-
|-----------|-------------|
|
|
17
|
-
| **Condor** | Telegram bot interface for trading |
|
|
18
|
-
| **Hummingbot API** | REST API server for bot management |
|
|
19
|
-
| **PostgreSQL** | Database for configurations and history |
|
|
20
|
-
| **EMQX** | MQTT broker for real-time communication |
|
|
21
|
-
| **Gateway** | (Optional) DEX trading on Solana, Ethereum |
|
|
22
|
-
|
|
23
|
-
## Progressive Installation Steps
|
|
24
|
-
|
|
25
|
-
Use these scripts to guide users through installation one step at a time:
|
|
26
|
-
|
|
27
|
-
### Step 1: Check System Requirements
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
./scripts/step1_detect_system.sh
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
Detects:
|
|
34
|
-
- Operating system (Linux, macOS)
|
|
35
|
-
- Architecture (amd64, arm64)
|
|
36
|
-
- Available disk space (needs 2GB+)
|
|
37
|
-
|
|
38
|
-
### Step 2: Check Dependencies
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
./scripts/step2_check_dependencies.sh
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
Checks for:
|
|
45
|
-
- git
|
|
46
|
-
- curl
|
|
47
|
-
- docker
|
|
48
|
-
- docker-compose (plugin or standalone)
|
|
49
|
-
- make
|
|
50
|
-
|
|
51
|
-
### Step 3: Install Missing Dependencies
|
|
12
|
+
## Quick Start
|
|
52
13
|
|
|
53
14
|
```bash
|
|
54
|
-
|
|
55
|
-
./scripts/
|
|
56
|
-
./scripts/step3_install_dependency.sh --dep git
|
|
57
|
-
./scripts/step3_install_dependency.sh --dep make
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Installs individual dependencies based on detected package manager.
|
|
61
|
-
|
|
62
|
-
### Step 4: Check Docker Status
|
|
63
|
-
|
|
64
|
-
```bash
|
|
65
|
-
./scripts/step4_check_docker.sh
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
Verifies:
|
|
69
|
-
- Docker daemon is running
|
|
70
|
-
- Docker Compose is available
|
|
71
|
-
- User has permissions
|
|
15
|
+
# Fresh install (Condor + API)
|
|
16
|
+
./scripts/setup.sh
|
|
72
17
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
# Clone Condor (Telegram bot)
|
|
77
|
-
./scripts/step5_clone_repo.sh --repo condor
|
|
78
|
-
|
|
79
|
-
# Clone Hummingbot API
|
|
80
|
-
./scripts/step5_clone_repo.sh --repo api
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
### Step 6: Setup Components
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
# Setup Condor environment
|
|
87
|
-
./scripts/step6_setup_component.sh --component condor
|
|
88
|
-
|
|
89
|
-
# Setup Hummingbot API
|
|
90
|
-
./scripts/step6_setup_component.sh --component api
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Step 7: Deploy Services
|
|
94
|
-
|
|
95
|
-
```bash
|
|
96
|
-
# Deploy Condor
|
|
97
|
-
./scripts/step7_deploy_component.sh --component condor
|
|
98
|
-
|
|
99
|
-
# Deploy Hummingbot API
|
|
100
|
-
./scripts/step7_deploy_component.sh --component api
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
### Step 8: Verify Installation
|
|
104
|
-
|
|
105
|
-
```bash
|
|
106
|
-
./scripts/step8_verify_installation.sh
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
Checks all services are running and healthy.
|
|
110
|
-
|
|
111
|
-
## Quick Installation
|
|
112
|
-
|
|
113
|
-
For users who want to run everything at once:
|
|
114
|
-
|
|
115
|
-
```bash
|
|
116
|
-
# Full installation (Condor + API)
|
|
117
|
-
./scripts/deploy_full_stack.sh
|
|
118
|
-
|
|
119
|
-
# API only installation
|
|
120
|
-
./scripts/deploy_full_stack.sh --api-only
|
|
18
|
+
# Install API only
|
|
19
|
+
./scripts/setup.sh --api
|
|
121
20
|
|
|
122
21
|
# Upgrade existing installation
|
|
123
|
-
./scripts/
|
|
22
|
+
./scripts/setup.sh --upgrade
|
|
124
23
|
```
|
|
125
24
|
|
|
126
|
-
##
|
|
25
|
+
## What Gets Installed
|
|
127
26
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
Tell the user:
|
|
137
|
-
- Their detected OS and architecture
|
|
138
|
-
- Whether they have enough disk space
|
|
139
|
-
- What will be installed
|
|
140
|
-
|
|
141
|
-
### 2. Dependency Check
|
|
142
|
-
|
|
143
|
-
```bash
|
|
144
|
-
./scripts/step2_check_dependencies.sh
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
If dependencies are missing:
|
|
148
|
-
- List what's missing
|
|
149
|
-
- Explain each dependency's purpose
|
|
150
|
-
- Offer to install them
|
|
151
|
-
|
|
152
|
-
### 3. Install Each Missing Dependency
|
|
153
|
-
|
|
154
|
-
For each missing dependency:
|
|
155
|
-
```bash
|
|
156
|
-
./scripts/step3_install_dependency.sh --dep <name>
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
Explain:
|
|
160
|
-
- What's being installed
|
|
161
|
-
- Any permissions needed (sudo)
|
|
162
|
-
- Progress and completion
|
|
163
|
-
|
|
164
|
-
### 4. Verify Docker
|
|
165
|
-
|
|
166
|
-
```bash
|
|
167
|
-
./scripts/step4_check_docker.sh
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
If Docker isn't running:
|
|
171
|
-
- Explain how to start it
|
|
172
|
-
- On macOS: "Open Docker Desktop"
|
|
173
|
-
- On Linux: `sudo systemctl start docker`
|
|
174
|
-
|
|
175
|
-
### 5. Choose Components
|
|
176
|
-
|
|
177
|
-
Ask the user:
|
|
178
|
-
- "Do you want Condor (Telegram bot interface)?" → Most users: Yes
|
|
179
|
-
- "Do you want Hummingbot API?" → Required for trading bots
|
|
180
|
-
|
|
181
|
-
### 6. Clone and Setup
|
|
182
|
-
|
|
183
|
-
For each chosen component:
|
|
184
|
-
```bash
|
|
185
|
-
./scripts/step5_clone_repo.sh --repo <component>
|
|
186
|
-
./scripts/step6_setup_component.sh --component <component>
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
Explain:
|
|
190
|
-
- What's being downloaded
|
|
191
|
-
- Configuration being created
|
|
192
|
-
- Any prompts they need to answer
|
|
27
|
+
| Component | Description |
|
|
28
|
+
|-----------|-------------|
|
|
29
|
+
| **Condor** | Telegram bot interface for trading |
|
|
30
|
+
| **Hummingbot API** | REST API server for bot management |
|
|
31
|
+
| **PostgreSQL** | Database for configurations and history |
|
|
32
|
+
| **EMQX** | MQTT broker for real-time communication |
|
|
193
33
|
|
|
194
|
-
|
|
34
|
+
## Installation Options
|
|
195
35
|
|
|
196
36
|
```bash
|
|
197
|
-
./scripts/
|
|
198
|
-
```
|
|
37
|
+
./scripts/setup.sh [OPTIONS]
|
|
199
38
|
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
```bash
|
|
205
|
-
./scripts/step8_verify_installation.sh
|
|
39
|
+
Options:
|
|
40
|
+
--upgrade Upgrade existing installation
|
|
41
|
+
--api Install only Hummingbot API (standalone)
|
|
42
|
+
-h, --help Show help message
|
|
206
43
|
```
|
|
207
44
|
|
|
208
|
-
|
|
209
|
-
- Services running and their URLs
|
|
210
|
-
- How to access Condor via Telegram
|
|
211
|
-
- How to view logs
|
|
212
|
-
- How to upgrade in the future
|
|
45
|
+
## After Installation
|
|
213
46
|
|
|
214
|
-
|
|
47
|
+
### Hummingbot API
|
|
48
|
+
- **URL:** http://localhost:8000
|
|
49
|
+
- **Docs:** http://localhost:8000/docs
|
|
50
|
+
- **Default credentials:** admin/admin
|
|
215
51
|
|
|
216
52
|
### Condor (Telegram Bot)
|
|
217
|
-
|
|
218
|
-
Repository: https://github.com/hummingbot/condor.git
|
|
219
|
-
|
|
220
|
-
After installation:
|
|
221
53
|
1. Open Telegram
|
|
222
54
|
2. Search for your bot (configured during setup)
|
|
223
55
|
3. Use `/config` to add API servers
|
|
224
56
|
4. Use `/start` to begin trading
|
|
225
57
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
Repository: https://github.com/hummingbot/hummingbot-api.git
|
|
229
|
-
|
|
230
|
-
After installation:
|
|
231
|
-
- API URL: http://localhost:8000
|
|
232
|
-
- Docs: http://localhost:8000/docs
|
|
233
|
-
- Default credentials: admin/admin
|
|
234
|
-
|
|
235
|
-
### Gateway (Optional)
|
|
58
|
+
## Health Check
|
|
236
59
|
|
|
237
|
-
|
|
60
|
+
Verify installation is running:
|
|
238
61
|
|
|
239
62
|
```bash
|
|
240
|
-
./scripts/
|
|
63
|
+
./scripts/health_check.sh
|
|
241
64
|
```
|
|
242
65
|
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
-
|
|
246
|
-
-
|
|
66
|
+
## System Requirements
|
|
67
|
+
|
|
68
|
+
- **OS:** Linux or macOS
|
|
69
|
+
- **Docker:** Required (script will guide installation)
|
|
70
|
+
- **Disk Space:** 2GB minimum
|
|
71
|
+
- **Dependencies:** git, curl, make (auto-installed)
|
|
247
72
|
|
|
248
73
|
## Troubleshooting
|
|
249
74
|
|
|
250
|
-
### Docker
|
|
75
|
+
### Docker not running
|
|
251
76
|
|
|
252
|
-
**
|
|
77
|
+
**macOS:**
|
|
253
78
|
```bash
|
|
254
79
|
open -a Docker
|
|
255
|
-
# Wait for Docker Desktop to start
|
|
256
80
|
```
|
|
257
81
|
|
|
258
|
-
**
|
|
82
|
+
**Linux:**
|
|
259
83
|
```bash
|
|
260
84
|
sudo systemctl start docker
|
|
261
|
-
sudo systemctl enable docker
|
|
262
|
-
```
|
|
263
|
-
|
|
264
|
-
**Permission denied:**
|
|
265
|
-
```bash
|
|
266
|
-
sudo usermod -aG docker $USER
|
|
267
|
-
# Log out and back in
|
|
268
85
|
```
|
|
269
86
|
|
|
270
|
-
###
|
|
271
|
-
|
|
272
|
-
**Clone failed:**
|
|
273
|
-
- Check internet connection
|
|
274
|
-
- Try: `git clone --depth 1 <repo>`
|
|
275
|
-
|
|
276
|
-
**Make setup failed:**
|
|
277
|
-
- Check for error messages
|
|
278
|
-
- Ensure all dependencies installed
|
|
279
|
-
- Try running manually: `cd <dir> && make setup`
|
|
280
|
-
|
|
281
|
-
**Deploy failed:**
|
|
282
|
-
- Check Docker is running
|
|
283
|
-
- Check disk space
|
|
284
|
-
- View logs: `docker compose logs`
|
|
87
|
+
### Port conflicts
|
|
285
88
|
|
|
286
|
-
|
|
89
|
+
| Port | Service | Check |
|
|
90
|
+
|------|---------|-------|
|
|
91
|
+
| 8000 | API | `lsof -i :8000` |
|
|
92
|
+
| 5432 | PostgreSQL | `lsof -i :5432` |
|
|
93
|
+
| 1883 | EMQX | `lsof -i :1883` |
|
|
287
94
|
|
|
288
|
-
|
|
289
|
-
|------|---------|----------|
|
|
290
|
-
| 8000 | API | `lsof -i :8000` then stop conflicting process |
|
|
291
|
-
| 5432 | PostgreSQL | Stop local PostgreSQL |
|
|
292
|
-
| 1883 | EMQX | Stop local MQTT broker |
|
|
95
|
+
### View logs
|
|
293
96
|
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
| `INSTALL_DIR` | `$HOME` | Installation directory |
|
|
299
|
-
| `API_REPO` | github.com/hummingbot/hummingbot-api | API repository URL |
|
|
300
|
-
| `CONDOR_REPO` | github.com/hummingbot/condor | Condor repository URL |
|
|
301
|
-
|
|
302
|
-
## Reference
|
|
303
|
-
|
|
304
|
-
The original setup script is available at:
|
|
305
|
-
- `references/original_setup.sh`
|
|
306
|
-
- Source: https://github.com/hummingbot/deploy/blob/main/setup.sh
|
|
307
|
-
|
|
308
|
-
This skill breaks down that monolithic script into modular steps for better agent guidance.
|
|
97
|
+
```bash
|
|
98
|
+
cd ~/hummingbot-api && docker compose logs -f
|
|
99
|
+
cd ~/condor && docker compose logs -f
|
|
100
|
+
```
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
# Health check for all Hummingbot services
|
|
3
3
|
# Usage: ./health_check.sh [--api-url URL] [--api-user USERNAME] [--api-pass PASSWORD]
|
|
4
4
|
|
|
5
|
+
# Load .env if present (check current dir, ~/.hummingbot/, ~/)
|
|
6
|
+
for f in .env ~/.hummingbot/.env ~/.env; do [ -f "$f" ] && source "$f" && break; done
|
|
5
7
|
API_URL="${API_URL:-http://localhost:8000}"
|
|
6
8
|
API_USER="${API_USER:-admin}"
|
|
7
9
|
API_PASS="${API_PASS:-admin}"
|