Remote OpenClaw
Menu
SkillsMCPPluginsMarketplaceGuideAgentsAdvertise
Remote OpenClaw
SkillsMCPPluginsMarketplaceGuideAgentsAdvertise
Skills/starchild-ai-agent/official-skills/upbit

upbit

starchild-ai-agent/official-skills
609 installs18 stars

Installation

npx skills add https://github.com/starchild-ai-agent/official-skills --skill upbit

Summary

|

SKILL.md

Upbit Skill

Use the upbit CLI binary for all Upbit REST API interactions.

⚠️ Onboarding — when credentials are missing

When UPBIT_ACCESS_KEY / UPBIT_SECRET_KEY are not set, or an authenticated command returns 401:

In a single turn, do ALL of the following in this exact order:

  1. Call bash("curl -s https://api.ipify.org") to get the outbound IP.
  2. Write the setup instructions below in your reply text (substitute <ip> with the real IP from step 1):

---

Step 1 — Allowlist this IP on Upbit

Upbit only accepts API calls from IP addresses you explicitly allow. Add this IP:

<ip>

Step 2 — Create an API key

  1. Log in to upbit.com → profile → API 관리 (API Management)
  2. Click API 키 발급 (Issue API Key)
  3. When prompted for an IP, paste <ip>
  4. Enable scopes:
  • 자산조회 (View assets) — always required
  • 주문조회 (View orders) — required
  • 주문생성 (Place orders) — required to trade
  • 출금 (Withdraw) — only if you want withdrawal support
  1. Complete 2FA + email verification, then copy your Access Key and Secret Key

Step 3 — Enter your keys

Enter your Access Key and Secret Key in the secure input card below.

---

Language Behavior

Detect the user's language and respond accordingly:

  • Korean user: respond in Korean, use Korean terminology from references/glossary.md (e.g., 주문, 매수, 잔고, 체결, 호가)
  • English user: respond in English, use English terminology from the same glossary
  • Mixed/ambiguous: follow the language of the most recent message

When explaining API fields or command output, always translate field names into the user's language using the glossary. For example, if the user asks in Korean, explain bid as "매수", ask as "매도", balance as "보유 잔고".

Load references/glossary.md when translating terminology or explaining response fields.

Setup

If upbit is not installed or credentials are not configured, load references/setup.md and follow the steps there.

Check if upbit is available:

upbit --version

Authentication

Private endpoints require credentials. Configure via the CLI (recommended):

upbit config set

Credentials are saved to ~/.upbit/config and automatically used for all CLI commands.

Alternatively, set via environment variables:

export UPBIT_ACCESS_KEY=<your-access-key>
export UPBIT_SECRET_KEY=<your-secret-key>

Or pass inline per command:

upbit <resource> <command> --access-key <key> --secret-key <secret>

Private (require auth): accounts, api-keys, orders, withdraws, deposits, travel-rule, wallet-status Public (no auth): tickers, orderbooks, trades, candles, trading-pairs

Safety Rule — Write Operations

Before executing any write operation, show the full command and ask the user to type CONFIRM.

Write operations:

  • orders create, orders cancel, orders cancel-and-new, orders cancel-by-uuids, orders cancel-open
  • withdraws create-withdrawal, withdraws create-krw-withdrawal, withdraws cancel-withdrawal
  • deposits deposit-krw, deposits create-coin-address
  • travel-rule verify-deposit-by-txid, travel-rule verify-deposit-by-uuid

orders test-create is a dry-run — no CONFIRM needed.

Upbit Domain Concepts

Market Pair Format

  • Field name: market
  • Format: {QUOTE}-{BASE} — quote currency first, base asset second
  • Delimiter: hyphen (-), not slash (/)
  • Always uppercase
  • Quote currencies: KRW, BTC, USDT
  • Not {BASE}-{QUOTE} or {BASE}/{QUOTE} — Upbit reverses the conventional order used by most exchanges
MarketMeaning
KRW-BTCBTC priced in KRW; Upbit uses KRW-BTC, not BTC/KRW or BTC-KRW
KRW-ETHETH priced in KRW
KRW-XRPXRP priced in KRW
BTC-ETHETH priced in BTC
USDT-XRPXRP priced in USDT

Account Balance Fields

Each entry from accounts list:

FieldDescription
currencyAsset code (e.g., KRW, BTC, ETH)
balanceAvailable balance (not in any open order)
lockedBalance currently locked in open orders or withdrawals
avg_buy_priceAverage purchase price (decimal string)
unit_currencyCurrency avg_buy_price is denominated in (e.g., KRW, BTC)

Total holdings = balance + locked

Order Types (ord_type)

ord_typeDescriptionRequiredMust NOT set
limitLimit order at specified priceprice, volume—
priceMarket buy — spend a fixed quote amountpricevolume
marketMarket sell — sell a fixed base amountvolumeprice
bestBest available price (see rules below)see belowsee below

best order rules:

  • time_in_force must be ioc or fok (NOT post_only)
  • If side=bid (buy): requires price, must omit volume
  • If side=ask (sell): requires volume, must omit price

post_only + smp_type conflict: these two are mutually exclusive — do not set both.

Side Values

sideMeaning
bidBuy
askSell

Order States

StateMeaning
waitPending execution
watchPending reservation (stop order)
doneFully executed
cancelCancelled

Order Fee Fields

FieldDescription
reserved_feeTotal fee reserved when order was placed
paid_feeFee already charged (for partial fills)
remaining_feereserved_fee - paid_fee
lockedAmount locked for this order (quote currency for buys, base asset for sells)

First-Time Order Placement

Before placing an order on an unfamiliar market, run orders retrieve-chance to confirm:

  • Minimum order amount (bid.min_total, ask.min_total)
  • Supported order types (bid_types, ask_types)
  • Fee rates (bid_fee, ask_fee, maker_bid_fee, maker_ask_fee)
upbit orders retrieve-chance --market "KRW-BTC"

Withdrawal — Multi-Chain Assets

For assets available on multiple networks (e.g., USDT), net_type is required to specify the blockchain. Use withdraws list-coin-addresses to see supported networks and addresses before withdrawing:

upbit withdraws list-coin-addresses --currency "USDT"

Withdrawal — Secondary Address

Some assets require a secondary address (Destination Tag, Memo, etc.) in addition to the main address. Always check the registered address via withdraws list-coin-addresses to see if secondary_address is present before sending.

Withdrawal — Address Not Registered (withdraw_address_not_registered)

When withdraws create-withdrawal returns a 400 error with name: withdraw_address_not_registered, the address has not been registered in the Upbit Open API withdrawal allowlist.

To register a withdrawal address, visit the allowlist management page for your environment:

EnvironmentURL
KRhttps://www.upbit.com/mypage/open_api_management/withdraw_access_register
SGhttps://sg.upbit.com/mypage/open_api_management/withdraw_access_register
IDhttps://id.upbit.com/mypage/open_api_management/withdraw_access_register
THhttps://th.upbit.com/mypage/open_api_management/withdraw_access_register

After registering, run withdraws list-coin-addresses to confirm the address appears before retrying.

Deposit / Withdraw States

StateMeaning
PROCESSINGIn progress
ACCEPTEDCompleted
CANCELLEDCancelled
REJECTEDRejected
TRAVEL_RULE_SUSPECTEDAwaiting Travel Rule verification
REFUNDINGRefund in progress
REFUNDEDRefund completed

When a deposit is in TRAVEL_RULE_SUSPECTED state, use travel-rule commands to verify.

Wallet Status

wallet-status list returns per-asset network status:

wallet_stateMeaning
workingBoth deposits and withdrawals available
withdraw_onlyDeposits suspended
deposit_onlyWithdrawals suspended
pausedBoth suspended
unsupportedNot supported

Candle Units & Limits

  • Minute candles: supported units are 1, 3, 5, 10, 15, 30, 60, 240 only
  • Second candles: data retention is 3 months maximum (older queries return empty array)
  • count: default 1, max 200 per request

Trade Pagination

  • count: max 500 per request
  • cursor: pass sequential_id from last result to page forward
  • days_ago: integer 1–7 (UTC-based day offset)

Ticker Key Fields

FieldDescription
trade_priceCurrent (last) price
acc_trade_price_24h24-hour accumulated trade value
acc_trade_volume_24h24-hour accumulated trade volume
changeRISE, EVEN, or FALL vs. previous day close
signed_change_priceSigned absolute change (negative if falling)
highest_52_week_price / lowest_52_week_price52-week range

Price Direction Enum (change, ask_bid)

change valueMeaning
RISEPrice higher than previous close
EVENSame as previous close
FALLPrice lower than previous close
ask_bid valueMeaning
ASKTrade initiated by a sell order
BIDTrade initiated by a buy order

Units & Formats

ValueUnitFormat
volumeBase asset quantityDecimal string (e.g., "0.01")
price (limit)Per-unit price in quote currencyDecimal string (e.g., "140000000")
price (market buy)Total quote amount to spendDecimal string (e.g., "10000")
Fee fieldsQuote currency amountDecimal string
timestampMilliseconds since epochInteger
created_at / done_atISO 8601 with KST offsetString (e.g., 2024-01-01T09:00:00+09:00)
trade_dateUTC dateString yyyyMMdd
trade_timeUTC timeString HHmmss (24-hour)
Fee ratesDecimal (0.05% = "0.0005")Decimal string

Day boundaries (opening_price, acc_trade_price, etc.) are based on UTC 00:00, not KST.

Command Reference

When you need detailed flag information for a resource, read the corresponding reference file.

ResourceSubcommandsReference
orderscreate, test-create, retrieve, list-open, list-closed, list-by-uuids, cancel, cancel-and-new, cancel-by-uuids, cancel-open, retrieve-chancereferences/orders.md
tickerslist-by-quote-currencies, list-by-trading-pairsreferences/tickers.md
candleslist-minutes, list-days, list-weeks, list-months, list-years, list-secondsreferences/candles.md
orderbookslist, list-instrumentsreferences/orderbooks.md
tradeslistreferences/trades.md
trading-pairslistreferences/trading-pairs.md
withdrawsretrieve, list, cancel-withdrawal, create-withdrawal, create-krw-withdrawal, list-coin-addresses, retrieve-chancereferences/withdraws.md
depositsretrieve, list, create-coin-address, deposit-krw, list-coin-addresses, retrieve-chance, retrieve-coin-addressreferences/deposits.md
travel-rulelist-vasps, verify-deposit-by-txid, verify-deposit-by-uuidreferences/travel-rule.md
accounts / api-keys / wallet-statuslistreferences/account.md
Output & Filtering--format, --transform, GJSON, debug, auto-pagingreferences/output.md
Korean ↔ English GlossaryTerm translations, field name Korean ↔ English mappingreferences/glossary.md
CLI Setup & CredentialsInstallation, environment selection, API key setup, config setreferences/setup.md

For flags not listed in reference files, run: upbit <resource> <command> --help

Environment

upbit accounts list                   # kr (default)
upbit accounts list --environment sg  # sg | id | th
upbit accounts list --base-url <url>  # custom base URL

Featured

QwikClaw — one-click deploy OpenClaw logoQwikClaw — one-click deploy OpenClaw

Your own always-on OpenClaw agent, live in 60 seconds. No server, no setup — pick a model, connect Telegram, done.

Deploy your agent →
SetupClaw: done-for-you OpenClaw for founders & exec teams logoSetupClaw: done-for-you OpenClaw for founders & exec teams

White-glove OpenClaw for founders and exec teams (4–50+ employees): we install, harden, integrate your tools, and maintain it — secured from day one.

Get it set up for you →
MoltAwards - Agent internet for government contracts + jobs. logoMoltAwards - Agent internet for government contracts + jobs.

MoltAwards is an agent-native social layer for matchawards.com.

Learn more →
CLN.Work — Stop prompting, start hiring AI employees logoCLN.Work — Stop prompting, start hiring AI employees

Turn your Claude agents into a real team — onboard them, assign tasks, and manage them like staff.

Hire AI employees →
Deploy your own AI agent logoDeploy your own AI agent

Launch OpenClaw or Hermes on Hostinger in about 60 seconds, keep your agent live 24/7, earn 20%-40% on your next referral up to $25-$45, and give your friend 20% off.

Launch on Hostinger →
Build the next $50K/mo OpenClaw wrapper logoBuild the next $50K/mo OpenClaw wrapper

Founders are earning with OpenClaw wrappers. Get the whole stack — auth, billing, deploy — and ship today, not in 3 months.

See the kit →

Categories

External DownloadsCommand ExecutionPrompt Injection
View on GitHub

Recommended skills

Browse all →

find-skills

vercel-labs/skills

2.3M installsInstall

frontend-design

anthropics/skills

605K installsInstall

vercel-react-best-practices

vercel-labs/agent-skills

512K installsInstall

agent-browser

vercel-labs/agent-browser

495K installsInstall

web-design-guidelines

vercel-labs/agent-skills

425K installsInstall

microsoft-foundry

microsoft/azure-skills

422K installsInstall

Browse

Skills by category

Frontend250Git198Data154Testing120Design105Docs103Security96Automation87Backend76Devops37Productivity29Mcp23

Advertise on Remote OpenClaw

Get your AI tool in front of 67,000+ AI enthusiasts a month

See placements & pricing →

Remote OpenClaw

AI agent skills directory, marketplace, and workflow hub for OpenClaw, Hermes Agent, Claude Code, Codex, and MCP-powered operator stacks.

Explore

  • Home
  • Skills Directory
  • Claude Code Skills
  • Codex Skills
  • Marketplace
  • Hermes Ecosystem
  • Agents
  • Guide
  • Learn
  • Blog

More

  • Playbook
  • Free Tools
  • Shipping
  • Contact
  • Terms
  • Privacy
© 2026 Remote OpenClaw