Skip to content
This repository was archived by the owner on Jul 13, 2026. It is now read-only.
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
136 changes: 53 additions & 83 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,79 +77,74 @@ bitbank paper create-order --pair=btc_jpy --side=buy --type=market --amount=0.00

カテゴリは分析系・取引系(paper-trade)・ユーティリティ・Recipe。詳細は [Agent Skills](#agent-skills) を参照。

## Plugin としてインストールする
## クイックスタート

npm から CLI 本体をグローバルインストールします(Node.js 22 以上 → [前提条件](#前提条件))。

```bash
npm i -g bitbank-lab-cli

Plugin が登録するのは **Skills(モデルへの指示書)だけ**で、実処理を担う CLI 本体は含まれません。**どの導線でも `npm i -g bitbank-lab-cli` が別途必須**です([前提条件](#前提条件) 参照。plugin cache 同梱の `bin/bitbank` は依存を含まず直接実行できません)。
# 動作確認
bitbank ticker btc_jpy
bitbank candles btc_jpy --type=1day --format=table
```

Plugin 登録が必要なのは「**リポジトリを開いていない場所でも Skill を使いたい**」場合だけです。Claude Code / Cursor でこのリポジトリを clone して開く使い方なら、Skill は自動で有効になるため登録不要です([想定する使い方](#想定する使い方) 参照)。
- install なしで試す: `npx -y bitbank-lab-cli ticker btc_jpy`
- アンインストール: `npm uninstall -g bitbank-lab-cli`

> 注: `/plugin install` はローカル版 Claude Code CLI(ターミナル)用の slash command です。Web 版([claude.ai/code](https://claude.ai/code))はコンテナが一時的で `bitbank` CLI を PATH へ永続化できないため動作しません
以降の README 内コマンド例は `bitbank` が PATH に通っている前提です。skills の改造やコントリビュートにはクローン手順(`./install.sh`)を使います([開発](#開発) 参照)

### Claude Code
## Plugin としてインストールする

slash command は **1 行ずつ送信**してください(一気に貼り付けると 1 つのコマンドとして解釈されて失敗します)。
Skill(自然言語操作の指示書)は、必要に応じて plugin で追加します。plugin に含まれるのは **Skills だけ**で、実処理を担う CLI 本体は含まれません。**どの導線でも [クイックスタート](#クイックスタート) の `npm i -g bitbank-lab-cli` が別途必須**です(plugin cache 同梱の `bin/bitbank` は依存を含まず直接実行できません)。

1. マーケットプレイスを登録:
Plugin 登録が必要なのは「**リポジトリを開いていない場所でも Skill を使いたい**」場合だけです。Claude Code / Cursor でこのリポジトリを clone して開くなら、Skill は自動で有効になるため登録不要です([想定する使い方](#想定する使い方) 参照)。

```
/plugin marketplace add bitbankinc/bitbank-lab-cli
```
> 注: `/plugin install` はローカル版 Claude Code CLI(ターミナル)用の slash command です。Web 版([claude.ai/code](https://claude.ai/code))はコンテナが一時的なため動作しません。

2. plugin をインストール:
### Claude Code

```
/plugin install bitbank-lab-cli@bitbank-lab-cli
```
slash command を **1 行ずつ**送信します(一気に貼り付けると失敗します)。

3. インストール直後は、今開いている Claude Code に skill がまだ読み込まれていません。`/reload-plugins` を実行するか、Claude Code を再起動してください(次回以降の起動では自動ロードされるため、この操作は初回のみです)。
```text
/plugin marketplace add bitbankinc/bitbank-lab-cli
```

### Cursor
```text
/plugin install bitbank-lab-cli@bitbank-lab-cli
```

導入経路は 2 つあります
インストール直後は skill が未ロードのため、`/reload-plugins` の実行か Claude Code の再起動で反映してください(初回のみ)

**A. リポジトリを開くだけ(plugin 不要)** — Cursor は `.claude/skills/` を互換で読むため、このリポジトリを clone して開けば Skill がそのまま有効になります([想定する使い方](#想定する使い方) 参照)。
### Cursor

**B. Plugin として登録(リポジトリを開いていない場所でも使う)** — Cursor の Plugins(Customize)画面で「Search or Paste Link」に GitHub URL を貼って Import します:
Plugins(Customize)画面の「Search or Paste Link」に GitHub URL を貼って Import します。`skills/` 配下の Skill 一式が user scope(全プロジェクト共通)で登録されます。

```
```text
https://github.com/bitbankinc/bitbank-lab-cli
```

Import すると `.cursor-plugin/plugin.json` が読まれ、`skills/` 配下の Skill 一式が user scope(全プロジェクト共通)で登録されます。

> **Claude Code と plugin の状態を共有します**(実機確認ベース): Cursor は plugin の実体・登録情報を Claude Code と同じ `~/.claude/plugins/` 配下(`cache/` / `installed_plugins.json` 等)で管理します。そのため **Claude Code 側で `/plugin install` 済みだと、Cursor では追加操作なしで有効になっている**ことがあります(Plugins 一覧に `Imported` と表示)。
>
> **更新は自動ではありません**: plugin はバージョン固定キャッシュ(git commit 固定)で保存されるため、リポジトリ側が更新されても自動では追従しません。新しい Skill を取り込むには Plugins 画面から update または再 import してください。
- plugin の実体は Claude Code と同じ `~/.claude/plugins/` 配下で共有されます。Claude Code 側で `/plugin install` 済みなら、追加操作なしで有効になっていることがあります(一覧に `Imported` と表示)
- plugin は git commit 固定でキャッシュされ、自動更新されません。新しい Skill を取り込むには Plugins 画面から update または再 import してください

### Codex CLI

導入は「marketplace 追加 → plugin 名の確認 → add」の 3 ステップです(`codex plugin install <owner>/<repo>` というサブコマンドは存在しません)。

```bash
# 1. marketplace を追加
codex plugin marketplace add bitbankinc/bitbank-lab-cli

# 2. 登録された plugin 名を確認する(重要)
codex plugin list

# 3. list に表示された <plugin>@<marketplace> をそのまま指定して add
codex plugin add <plugin>@<marketplace>
codex plugin list # 登録された plugin 名を確認
codex plugin add <plugin>@<marketplace> # list の表示名をそのまま指定
```

- `<plugin>@<marketplace>` の名前は決め打ちせず、**`codex plugin list` に表示されたものをそのまま使ってください**(環境や manifest により変わります)。
- 実行中、Codex が `~/.codex` 配下への書き込みの承認プロンプトを出すことがあります。**Yes** で進めてください。
- **macOS**: 内部で `git clone` を実行するため Xcode Command Line Tools が必要です([前提条件](#前提条件) 参照)。
- CLI 本体(`npm i -g bitbank-lab-cli`)は別途必要です([前提条件](#前提条件) 参照)。
- `<plugin>@<marketplace>` は決め打ちせず、**`codex plugin list` の表示をそのまま使ってください**(`codex plugin install <owner>/<repo>` というサブコマンドはありません)
- 実行中に `~/.codex` への書き込み承認を求められたら **Yes** で進めます。macOS は Xcode Command Line Tools が必要です([前提条件](#前提条件) 参照)

### Antigravity CLI(旧 Gemini CLI)

```bash
agy plugin install https://github.com/bitbankinc/bitbank-lab-cli
```

Plugin install で skills が登録され、`bitbank` CLI(`npm i -g bitbank-lab-cli` で別途インストール)と組み合わせて使えます。自動 install したくない場合は [Codex CLI / Antigravity CLI で使う](#codex-cli--antigravity-cli-で使う) の手動コピー手順も使えます。

> 旧 Gemini CLI は 2026-06-18 に個人向け提供が終了し、Antigravity CLI(`agy`)へ移行しました(旧環境からは `agy plugin import gemini` で移行可能)。本リポジトリは `plugin.json` と旧 `gemini-extension.json` を両置きしており、新旧どちらの CLI からも install できます。
旧 Gemini CLI 環境からは `agy plugin import gemini` で移行できます(本リポジトリは新旧両方の manifest を同梱)。自動 install したくない場合は [Codex CLI / Antigravity CLI で使う](#codex-cli--antigravity-cli-で使う) の手動コピー手順も使えます。

> 注: 各エージェントの plugin install コマンドは仕様変更が多いため、動かない場合は公式ドキュメントを確認してください。

Expand All @@ -163,50 +158,11 @@ Plugin install で skills が登録され、`bitbank` CLI(`npm i -g bitbank-la

Skills は利用者が自由に追加・編集していく前提なので、リポジトリごと手元に置きます。

## クイックスタート

npm から `bitbank` コマンドをグローバルインストールするのがいちばん簡単です。環境要件は [前提条件](#前提条件) を参照(Node.js 22 以上)。

```bash
npm i -g bitbank-lab-cli

# 動作確認
bitbank ticker btc_jpy
bitbank candles btc_jpy --type=1day --format=table
```

試し叩きだけなら `npx -y bitbank-lab-cli ticker btc_jpy` で install なしに実行できます。アンインストールは `npm uninstall -g bitbank-lab-cli`。

skills を改造したい場合や開発に参加したい場合は、リポジトリをクローンして `./install.sh` を叩く手順も使えます(内部で `npm ci` と `npm link` を実行)。

```bash
git clone https://github.com/bitbankinc/bitbank-lab-cli.git
cd bitbank-lab-cli
./install.sh
```

`install.sh` を使わず手元で都度実行する場合は、以下のフォールバック手順でも同じことができます。**以降の README 内コマンド例はすべて `bitbank` コマンドが PATH に通っている前提で記載しています**。フォールバック環境では `bitbank` を `npx tsx cli/index.ts` に、Private API は `npx tsx --env-file=.env cli/index.ts` に読み替えてください。

```bash
npm ci
npx tsx cli/index.ts ticker btc_jpy
# Private API(.env を tsx に直接読ませる)
npx tsx --env-file=.env cli/index.ts assets
```

毎回 `npx tsx ...` を打つのが手間なら、`npm run` の短縮 alias も使えます(`--` 以降が CLI 引数)。

```bash
npm run cli -- ticker btc_jpy
# Private API(.env を読み込む版)
npm run cli:env -- assets
```

## セットアップ

### 1. インストール

[クイックスタート](#クイックスタート) を参照(CLI を使うだけなら `npm i -g bitbank-lab-cli`、skills を改造する場合はクローンして `./install.sh`)。
[クイックスタート](#クイックスタート) を参照(CLI を使うだけなら `npm i -g bitbank-lab-cli`、skills を改造する場合は [開発](#開発) のクローン手順)。

### 2. API キーを設定する(Private API / Trade 用)

Expand Down Expand Up @@ -434,8 +390,8 @@ private / trade の 403 は本物の権限失敗として `AUTH`(2) のまま。

CLI がグローバルインストールされていない、または `npm i -g` 後に PATH へ
反映されていない可能性。`npm i -g bitbank-lab-cli` でインストールするか、
クローン済み環境では [クイックスタート](#クイックスタート) のフォールバック
手順(`npx tsx cli/index.ts ...`)で代替できます。
クローン済み環境では [開発](#開発) のフォールバック手順
(`npx tsx cli/index.ts ...`)で代替できます。

### `BITBANK API credentials are not configured` 系のエラー

Expand Down Expand Up @@ -751,6 +707,20 @@ APIキーおよび取引に必要なパスワード等は利用者自身の責

## 開発

### クローンして実行する

skills の改造やコントリビュートは、クローンして `./install.sh` を実行するのが基本です(内部で `npm ci` と `npm link` を実行し、`bitbank` コマンドが PATH に入ります)。

```bash
git clone https://github.com/bitbankinc/bitbank-lab-cli.git
cd bitbank-lab-cli
./install.sh
```

`npm link` せずに都度実行したい場合は、`bitbank` を `npx tsx cli/index.ts` に読み替えます(Private API は `npx tsx --env-file=.env cli/index.ts`)。短縮 alias として `npm run cli -- <args>` / `npm run cli:env -- <args>` も使えます(`--` 以降が CLI 引数)。

### テスト・lint

```bash
npm test # テスト実行(E2E はスキップ)
npm run test:watch # ウォッチモード(変更を監視して再実行)
Expand Down