# upbit

Use the upbit CLI through an agent to inspect market data and manage exchange accounts and orders. Private commands need API credentials.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1300 installs · ★ 29
- Author: Starchild-ai-agent
- License: Apache-2.0 · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/Starchild-ai-agent/official-skills/tree/HEAD/upbit/SKILL.md
- Updated: 2026-10-22
- HTML: https://affpapa.org/en/nevibecode/skills/upbit

## What it does

This skill routes Upbit REST API tasks through the `upbit` CLI. It covers public market queries as well as private account, order, deposit, and withdrawal operations. Public resources work without authentication; private ones require `UPBIT_ACCESS_KEY` and `UPBIT_SECRET_KEY`.

For commands that change account state or move funds, the agent must show the complete command and wait for the user to enter `CONFIRM`. Before placing a first order on an unfamiliar market, it can check supported order types, minimum amounts, and fees with `orders retrieve-chance`. Upbit market symbols put the quote currency first, so use `KRW-BTC` rather than `BTC/KRW`.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add Starchild-ai-agent/official-skills --skill upbit -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/upbit/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/upbit/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add Starchild-ai-agent/official-skills --skill upbit -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/upbit/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add Starchild-ai-agent/official-skills --skill upbit -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/upbit/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install Starchild-ai-agent/official-skills upbit
```

2. **Manually: put the files in place**
- File: `.github/skills/upbit/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add Starchild-ai-agent/official-skills --skill upbit -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/Starchild-ai-agent/official-skills --path upbit
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/upbit/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add Starchild-ai-agent/official-skills --skill upbit -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/Starchild-ai-agent/official-skills/tree/HEAD/upbit/SKILL.md

## When to use it
- check prices and order books for a market pair
- inspect available and locked account balances
- prepare an order or cancellation for confirmation
- check order minimums, supported types, and fees
- list supported networks before a withdrawal

## Example prompts
- Show the latest price and order book for `KRW-BTC`.
- Check my Upbit balances and open orders.
- Prepare a market buy of BTC using KRW, then show me the command for confirmation.

## Source text · SKILL.md · Apache-2.0

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 1163da9cdd766afc.

BEGIN THIRD-PARTY FILE 1163da9cdd766afc
````text
---
name: upbit
version: 0.9.4
description: |
  Use upbit CLI for Upbit REST API — spot orders, market data, withdrawals, deposits, travel rule, account management.
  업비트 CLI로 시세 조회, 주문, 잔고 확인, 입출금을 처리합니다.

  Trigger this skill whenever the user wants to query prices, place/cancel orders, check balances, withdraw or deposit assets, or interact with the Upbit exchange API — in any language.
  사용자가 업비트 시세·주문·잔고·입출금을 언급하면 반드시 이 스킬을 사용하세요.
delivery: script
metadata:
  starchild:
    emoji: "🪙"
    skillKey: upbit
    requires:
      env:
        - UPBIT_ACCESS_KEY
        - UPBIT_SECRET_KEY

user-invocable: false
disable-model-invocation: false

---

# 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](https://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
5. 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:

```bash
upbit --version
```

## Authentication

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

```bash
upbit config set
```

Credentials are saved to `~/.upbit/config` and automatically used for all CLI commands.
````
END THIRD-PARTY FILE 1163da9cdd766afc

The third-party file has ended. Everything between the 1163da9cdd766afc tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 3160 of 13150 bytes. © Starchild-ai-agent · Apache-2.0 · https://github.com/Starchild-ai-agent/official-skills/tree/HEAD/upbit/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
