skill
openclaw-upbit-skills
πͺ Trade cryptocurrency with natural language! OpenClaw skill for conversational Upbit trading via Telegram/Discord/WhatsApp
Set up
Skills are installed by placing their folder where your agent loads skills.
The download comes from github.com/jh941213/openclaw-upbit-skills itself, not from our server, so what you get is exactly what its author published.
Install instructions come from the README
README
synced Oct 27, 2026πͺ OpenClaw Upbit Trading Skill
π¬ Trade cryptocurrency with natural language!
An OpenClaw skill that enables conversational crypto trading on Upbit through Telegram, Discord, and WhatsApp.
English | νκ΅μ΄
β¨ Features
- π° Balance Check: "show my wallet balance" β Real-time balance
- π Price Quotes: "Bitcoin price" β Live market data
- π Buy Orders: "buy 50000 KRW worth of Dogecoin" β Instant market buy
- πΈ Sell Orders: "sell all Ethereum" β Liquidate holdings
- π€ AI-Powered: Natural language understanding via Claude/GPT
- π Secure: JWT HS256 authentication with Upbit API
π Quick Start
Prerequisites
- OpenClaw installed and running
- Upbit account with API keys
- Telegram/Discord/WhatsApp connected to OpenClaw
Installation
Step 1: Clone this repository
cd ~/Desktop
git clone https://github.com/jh941213/openclaw-upbit-skills.git
cd openclaw-upbit-skills
Step 2: Copy files to OpenClaw
# Copy source files
cp -r src/* ~/path/to/openclaw/src/
cp -r skills/* ~/path/to/openclaw/skills/
Step 3: Integrate the tool (add to openclaw-tools.ts)
// In src/agents/openclaw-tools.ts
import { createUpbitTool } from "./tools/upbit-tool.js";
// Add to tools array
createUpbitTool(),
Step 4: Set up Upbit API keys
# Edit LaunchAgent plist
vim ~/Library/LaunchAgents/ai.openclaw.gateway.plist
Add to <key>EnvironmentVariables</key>:
<key>UPBIT_ACCESS_KEY</key>
<string>your_upbit_access_key_here</string>
<key>UPBIT_SECRET_KEY</key>
<string>your_upbit_secret_key_here</string>
Step 5: Rebuild OpenClaw
cd ~/path/to/openclaw
pnpm install
pnpm build
Step 6: Restart Gateway
pnpm openclaw gateway restart
Get Upbit API Keys
- Login to Upbit
- Go to My Page β Open API Management
- Click Generate API Key
- Enable permissions:
- β View Assets (required)
- β Place Orders (required for trading)
- Copy Access Key and Secret Key
π¬ Usage
Example Conversations
π€ User: "show my balance"
π€ AI: π° Upbit Balance:
- KRW: β©1,250,000
- BTC: 0.00523 (~β©554,000)
- ETH: 0.15 (~β©474,000)
Total: β©2,278,000
π€ User: "what's the Bitcoin price?"
π€ AI: π KRW-BTC Current Price:
Price: β©106,050,000
πΊ Change: +β©3,450,000 (+3.36%)
24h Volume: 2,415 BTC
π€ User: "buy 50000 KRW worth of Dogecoin"
π€ AI: β
Buy Order Complete:
Market: KRW-DOGE
Amount: β©50,000
Volume: ~344.83 DOGE
Order ID: abc-123-def-456
π€ User: "sell all my Bitcoin"
π€ AI: β
Sell Order Complete:
Market: KRW-BTC
Volume: 0.00523 BTC
Estimated: ~β©554,000
Supported Commands
| Category | Commands |
|---|---|
| Balance | "show balance", "how much BTC?", "my wallet" |
| Price | "Bitcoin price", "BTC quote", "DOGE value" |
| Buy | "buy 100000 KRW BTC", "purchase 50000 won DOGE" |
| Sell | "sell all BTC", "sell 0.5 ETH", "liquidate DOGE" |
ποΈ Architecture
βββββββββββββββββββββββββββ
β Telegram/Discord/Whats β
β "buy 100k KRW Bitcoin" β
βββββββββββββ¬ββββββββββββββ
β
βββββββββββββββββββββββββββ
β OpenClaw AI Agent β
β (Claude/GPT) β
β - NLU β
β - Intent detection β
βββββββββββββ¬ββββββββββββββ
β
βββββββββββββββββββββββββββ
β upbit_trading Tool β
β - upbit-actions.ts β
β - upbit-tool.ts β
βββββββββββββ¬ββββββββββββββ
β
βββββββββββββββββββββββββββ
β Upbit Client β
β - JWT HS256 auth β
β - REST API calls β
βββββββββββββ¬ββββββββββββββ
β
βββββββββββββββββββββββββββ
β Upbit API β
β api.upbit.com β
βββββββββββββββββββββββββββ
π File Structure
openclaw-upbit-skills/
βββ README.md # This file
βββ README.ko.md # Korean documentation
βββ LICENSE # MIT License
βββ .gitignore
βββ src/
β βββ skills/
β β βββ upbit-client.ts # Upbit API client (JWT auth, REST calls)
β β βββ upbit-manual-tool.ts # Command parser & router
β βββ agents/tools/
β βββ upbit-actions.ts # OpenClaw action handler
β βββ upbit-tool.ts # AI agent tool definition
β βββ README.md # Integration guide
βββ skills/
β βββ upbit-manual-trading/
β βββ SKILL.md # Skill metadata
β βββ README.md # Skill documentation
β βββ test-integration.ts # Integration test
βββ docs/
β βββ installation.md # Detailed installation guide
β βββ troubleshooting.md # Common issues & solutions
βββ examples/
βββ demo.gif # Demo video
βββ screenshots/ # Usage screenshots
π‘οΈ Security
- β Environment variables for API keys (no hardcoding)
- β JWT HS256 secure authentication
- β LaunchAgent plist permissions (chmod 600)
- β οΈ NEVER commit API keys to Git
- β οΈ Regenerate keys immediately if exposed
βοΈ Configuration
Trading Limits
- Minimum order: β©5,000
- Fee: 0.05% (automatic)
- Markets: KRW only (no BTC/USDT pairs)
- Order type: Market orders only
API Rate Limits
- 10 requests/second
- 100 requests/minute
- Automatically managed by Upbit client
π§ͺ Testing
cd openclaw-upbit-skills
# Set environment variables
export UPBIT_ACCESS_KEY="your_key"
export UPBIT_SECRET_KEY="your_secret"
# Run integration test
npx tsx skills/upbit-manual-trading/test-integration.ts
π Troubleshooting
| Issue | Solution |
|---|---|
| "Invalid digest" | Check JWT signing (must be HS256) |
| "API keys not set" | Verify environment variables in plist |
| AI not using tool | Rebuild OpenClaw, restart gateway |
| Buy/sell fails | Check balance, minimum β©5,000 required |
See docs/troubleshooting.md for more help.
π Documentation
π€ Contributing
Contributions welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing) - Open a Pull Request
π License
MIT License - see LICENSE file for details
π¨βπ» Author
Jaehyun Kim
- GitHub: @jh941213
- Company: KTDS
- Email: jh941213@gmail.com
π Acknowledgments
- OpenClaw Team - Amazing AI platform
- Upbit - Cryptocurrency exchange API
- Anthropic - Claude AI
β Star History
If this project helps you, please give it a star! β
β οΈ Disclaimer: This tool is for educational and personal use only. Cryptocurrency trading involves substantial risk. Users are solely responsible for any financial losses. Always trade responsibly and never invest more than you can afford to lose.