Condor uses a two-server architecture: the Condor Server (agentic layer) and the Hummingbot API Server (execution layer). This guide installs both.Documentation Index
Fetch the complete documentation index at: https://condor.hummingbot.org/llms.txt
Use this file to discover all available pages before exploring further.
Quick Install
- Quick Start
- Hummingbot API only
- Manual install
From an empty directory:
- Telegram Bot Token: Create one via @BotFather
- Telegram User ID: Get yours via @userinfobot
- Whether to configure and launch Hummingbot API with Docker—answer yes if you are deploying Condor and the API on the same machine locally. Have Docker installed and running first. If the API runs on another server, you can skip this step and add that API URL later in Telegram under
/servers.
Create a Telegram Bot
- Open @BotFather in Telegram
- Send
/newbotand follow the prompts to name your bot - Copy the bot token (format:
123456789:ABCdefGHIjklMNOpqrsTUVwxyz)
Get Your User ID
- Open @userinfobot in Telegram
- Send
/startto receive your user ID
Verify Installation
- Open your Telegram bot and send
/start - You should see the main menu with commands like
/portfolio,/trade,/agent
Note: After Condor starts successfully, admins should receive a Telegram message: “Condor is online and ready.” If that does not appear within a minute or two, check the troubleshooting section below (for example attach to the condor tmux session after Quick Start).
Access Points
| Service | URL | Description |
|---|---|---|
| Telegram | Your bot | Primary interface |
| API | http://localhost:8000 | REST API |
| Swagger | http://localhost:8000/docs | API documentation |
| Web Dashboard | Run /web in Telegram | Browser interface |
Managing Services
How you manage Condor depends on how you installed it. After Quick Start (deploy installer): Condor runs in a tmux session namedcondor.
condor folder, you can also upgrade with:
make run (stop with Ctrl+C). Watch that terminal, or run under tmux yourself if you want a detachable session.
Hummingbot API (Docker): From the hummingbot-api directory (sibling of condor when installed by the deploy script):
Troubleshooting
Bot not responding in Telegram
Bot not responding in Telegram
- Confirm the process is running
- Quick Start / deploy:
tmux attach -t condorand look for tracebacks or exit messages. - Manual install: Check the terminal where
make runis running.
- Quick Start / deploy:
- Check
condor/.envon the machine that runs Condor:TELEGRAM_TOKENmust match @BotFather, andADMIN_USER_IDmust be your numeric Telegram user id (from @userinfobot). - Access still pending: New users must be approved. An admin should use
/admin(or the admin flow from/start) to approve you. - Deploy installer hint: If admins never see “Condor is online and ready.”, attach to tmux (above) and fix errors shown there; the installer also reminds you to verify
.envwhen that message is missing.
Active server is offline / Cannot reach server / API errors in commands
Active server is offline / Cannot reach server / API errors in commands
Condor talks to the Hummingbot API over HTTP using the host, port, username, and password stored for each server (see
/servers in Telegram or condor/config.yml). Status checks call http://{host}:{port} and list accounts; failures surface as Offline (Cannot reach server, Connection timeout) or Auth Error (Invalid credentials).- Is the API stack up? On the machine where Docker runs the API:
docker compose ps(from thehummingbot-apirepo directory). You want the API container healthy and port 8000 (default) listening. - Smoke test from the Condor host:
curl -sS -o /dev/null -w "%{http_code}" http://127.0.0.1:8000/docs(or your configured host/port). You should get 200. If this fails, Condor will show offline until the API is reachable. - Wrong host for your layout
- API and Condor on the same machine:
hostis usuallylocalhostor127.0.0.1. - API on a different host or VPS: use that server’s LAN/public IP or DNS name, not
localhost(localhost would point at the Condor machine itself). - Docker Desktop / WSL: If Condor runs in one environment and the API in another,
localhostmay not cross namespaces; use the host gateway IP or publish ports and use the reachable address from Condor’s network namespace.
- API and Condor on the same machine:
- Firewall / security groups: Allow inbound 8000 (or your API port) from the Condor host if they are not the same machine.
- Credentials: Auth Error means HTTP 401—username/password in
/serversmust match the API’s HTTP basic auth (the deploy flow syncsconfig.ymlwithhummingbot-api/.envwhen both are installed together; if you changed one side, align the other or re-save in/servers).
No servers configured / Server not found / No servers available
No servers configured / Server not found / No servers available
/serversshows No servers configured until at least one entry exists incondor/config.ymlunderservers:(and users need access to a server—admins own new entries; others must be shared).- Server not found in the UI usually means the configured server name does not exist anymore (typo after edit, or deleted entry)—open
/servers, pick a valid server, or add one again. - No servers available (errors when running commands) often means your user has no server shared with them—ask an owner admin to share a server with your Telegram user id.
- After Manual install, you must add the real API URL (and auth) via
/serversifconfig.ymlwas not pre-filled.
Docker or installer problems (API did not start)
Docker or installer problems (API did not start)
- Docker daemon: The deploy script checks that Docker is running before bringing up the API. On Linux:
docker info. On Mac/Windows: open Docker Desktop and wait until it is fully started. - Compose: You need either
docker compose(plugin) or legacydocker-compose(the installer checks this). - API-only recovery: If Quick Start skipped or failed the API step, use the Hummingbot API only tab command, or from
hummingbot-api:make setup,docker compose pull,make deploy(see hummingbot-api README). - Sibling layout: Condor’s setup wizard expects
hummingbot-apinext tocondor(../hummingbot-apifrom the Condor directory) when both are installed by the same flow—keep that layout unless you know how to pointconfig.ymlat a custom URL.
Next Step
Adding Credentials
Connect your exchange accounts

