openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > DeepBook CLI. Watch, Make & Take the Sui Market

Operate the deepbook CLI for DeepBook reads (REST/SSE), global ~/.deepbook config/account management, on-chain spot trading, top-level swap execution, balance-manager ops, and margin trading.

数据与表格

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v0.0.1

统计:⭐ 1 · 1.3k · 1 current installs · 1 all-time installs

1

安装量(当前) 1

🛡 VirusTotal :良性 · OpenClaw :良性

Package:astinz/deepbook-cli

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :良性

OpenClaw 评估

The skill is an instruction-only helper for a CLI that matches its stated purpose (market reads, account/config management, and on‑chain trading); it is internally consistent but has moderate operational risk because it tells the agent to install/run an unsigned npm package and to handle private keys without declaring credentials.

目的

The name/description describe a CLI for market data and on‑chain trading; the SKILL.md contains only CLI usage, config locations (~/.deepbook), and commands for spot/swap/margin/manager operations — all directly related to the stated purpose. There are no unrelated credential or service demands in metadata.

说明范围

Instructions focus on using the deepbook CLI and its config under ~/.deepbook. They explicitly instruct installing the npm package and performing state-changing commands (buy/sell/deposit/withdraw/import-key). The skill references private-key and apiKey handling (import-key, --private-key, --stdin) — appropriate for a trading CLI but sensitive; SKILL.md does advise not to print private keys and to prefer --dry-run as a safety default.

安装机制

No formal install spec in the registry; the runtime instructions tell the agent to run 'npm install -g deepbook-cli'. Installing a global npm package is a normal way to obtain a CLI but carries moderate risk because the package source/homepage is not provided in the skill metadata. There's no pinned version or verification step shown.

证书

The skill requests no env vars or credentials in the metadata, but the CLI workflow requires handling private keys and API keys (via flags or stdin). That is proportionate to a trading CLI, but the skill does not declare a primary credential or required config paths beyond ~/.deepbook, so users should be aware secrets will be entered/managed by the CLI rather than provided via declared env vars.

持久

always is false and the skill is instruction-only (no persistent background hooks). It writes/reads user config at ~/.deepbook and may install a global npm package (which modifies system state). Nothing indicates the skill will modify other skills or system-wide agent settings.

综合结论

This skill is coherent for using a trading CLI, but exercise caution before installing or running it: 1) 'npm install -g deepbook-cli' will install a package from the public npm registry — verify the package name, publisher, and source code (or prefer a pinned version) before installing globally. 2) The CLI will ask to import or use private keys and API keys; never paste sensitive keys into an untrusted environment. Use --dry-run and test on t…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「DeepBook CLI. Watch, Make & Take the Sui Market」。简介:Operate the deepbook CLI for DeepBook reads (REST/SSE), global ~/.deepbook conf…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/astinz/deepbook-cli/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: deepbook-cli
description: Operate the deepbook CLI for DeepBook reads (REST/SSE), global ~/.deepbook config/account management, on-chain spot trading, top-level swap execution, balance-manager ops, and margin trading.
---

# DeepBook CLI Skill

Use this skill when the user wants to use `deepbook` end to end: market data, wallet/config setup, and on-chain execution (spot, swap, manager, margin).

# Installation

Check if `deepbook` is installed:

```bash
deepbook --version
```

If not, install it:

```bash
npm install -g deepbook-cli
```

## Setup

1. Work from the `deepbook-cli` project directory.
2. Ensure `~/.deepbook/config.json` exists (auto-created on first run).
3. Configure global defaults in `~/.deepbook` (works from any path).
4. Optional one-off overrides can still be provided via global flags.

`mainnet`/`testnet` are aliases used consistently for both provider-side reads/streams and on-chain RPC.

## Global flags

- `--json`
- `--provider <name>`
- `--base-url <url>`
- `--stream-base-url <url>`
- `--network <mainnet|testnet>`
- `--rpc-url <url>`
- `--private-key <suiprivkey>`
- `--address <address>`
- `--manager <id>`
- `--trade-cap <id>`

## Available commands

- Top-level:
  - `deepbook providers`
  - `deepbook pools`
  - `deepbook orderbook <pool>` (alias: `deepbook book <pool>`)
  - `deepbook trades <pool>`
  - `deepbook ohlcv <pool>`
  - `deepbook stream ...`
  - `deepbook spot ...`
  - `deepbook swap ...`
  - `deepbook margin ...`
  - `deepbook manager ...`
  - `deepbook config ...`
  - `deepbook account ...`

- `deepbook config`:
  - `show`
  - `set-network <network>`
  - `set-provider <provider>`
  - `set-rpc-url <network> <url>`
  - `set-address <address>`
  - `set-trade-cap <id>`
  - `set-read-key [apiKey]`
  - `set-stream-key <pool> [apiKey]`
  - `set-provider-base-url <network> <url>`
  - `set-provider-stream-base-url <network> <url>`
  - `import-key [privateKey]`

- `deepbook account`:
  - `details`
  - `list`
  - `balance`
  - `import <alias> [privateKey]`
  - `use <alias>`

- `deepbook stream`:
  - `trades <pool>`

- `deepbook spot`:
  - `pools`
  - `buy <pool>`
  - `sell <pool>`
  - `limit <pool>`

- `deepbook swap`:
  - `base-for-quote <pool>`
  - `quote-for-base <pool>`

- `deepbook margin`:
  - `pools`
  - `managers`
  - `deposit <pool>`
  - `market <pool>`
  - `limit <pool>`
  - `position <pool>`
  - `close <pool>`

- `deepbook manager`:
  - `ls`
  - `create`
  - `deposit`
  - `withdraw`
  - `balance`

## Command cheat sheet (required args/options)

- `deepbook providers`
- `deepbook pools`
- `deepbook orderbook <pool>`
- `deepbook trades <pool>`
- `deepbook ohlcv <pool>`
- `deepbook stream trades <pool>`
- `deepbook spot pools`
- `deepbook spot buy <pool> --quantity <value> [--price <value>] [--manager <id>]`
- `deepbook spot sell <pool> --quantity <value> [--price <value>] [--manager <id>]`
- `deepbook spot limit <pool> --side <buy|sell> --price <value> --quantity <value> [--manager <id>]`
- `deepbook spot limit <pool> --cancel <id> [--manager <id>]`

- `deepbook config show`
- `deepbook config set-network <mainnet|testnet>`
- `deepbook config set-provider <surflux>`
- `deepbook config set-rpc-url <mainnet|testnet> <url>`
- `deepbook config set-address <address>`
- `deepbook config set-trade-cap <objectId>`
- `deepbook config set-read-key [apiKey]` (or `--stdin`)
- `deepbook config set-stream-key <pool> [apiKey]` (or `--stdin`)
- `deepbook config set-provider-base-url <mainnet|testnet> <url>`
- `deepbook config set-provider-stream-base-url <mainnet|testnet> <url>`
- `deepbook config import-key [privateKey]` (or `--stdin`, optional `--alias`)

- `deepbook account details`
- `deepbook account list`
- `deepbook account balance [--coin <SUI|USDC|DEEP|coinType>]`
- `deepbook account import <alias> [privateKey]` (or `--stdin`)
- `deepbook account use <alias>`


- `deepbook swap base-for-quote <pool> --amount <value>`
- `deepbook swap quote-for-base <pool> --amount <value>`

- `deepbook margin pools`
- `deepbook margin managers`
- `deepbook margin deposit <pool> --coin <BASE|QUOTE|DEEP|coinKey> --amount <value> [--margin-manager <id>]`
- `deepbook margin market <pool> --side <buy|sell> --quantity <value> [--margin-manager <id>]`
- `deepbook margin limit <pool> --side <buy|sell> --price <value> --quantity <value> [--margin-manager <id>]`
- `deepbook margin position <pool> [--margin-manager <id>]`
- `deepbook margin close <pool> [--margin-manager <id>]` + either:
  - `--full`
  - OR `--side <buy|sell> --quantity <value>`

- `deepbook manager ls`
- `deepbook manager create`
- `deepbook manager deposit --coin <key> --amount <value> [--manager <id>]`
- `deepbook manager withdraw --coin <key> --amount <value> [--manager <id>]`
- `deepbook manager balance --coin <key> [--manager <id>]`

## Key margin close flags

- `deepbook margin close <pool> --full --withdraw`
- `deepbook margin close <pool> --full --non-reduce-only`
- `deepbook margin close <pool> --side <buy|sell> --quantity <q> --reduce-only --no-repay`

## Swap vs spot market buy

- Swap (`deepbook swap quote-for-base`) is a direct pool swap with exact-input semantics.
- Spot market buy (`deepbook spot buy <pool> --quantity ...`) is an orderbook market order and uses a balance manager.
- CLI output now includes `execution.kind` and `execution.type/direction` so the mode is explicit.

## Safety defaults

- Prefer `--dry-run` first for all state-changing commands.
- Validate pool key and manager object ID before placing/canceling orders.
- SUI-involved deposit/collateral paths split from gas coin inside the transaction automatically.
- Never print or log private keys.
- Margin manager type safety:
  - Margin managers are generic typed objects: `MarginManager<Base, Quote>`.
  - The margin manager type must match the exact pool pair being traded.
  - Example: `MarginManager<DEEP,USDC>` works with `DEEP_USDC`, not `DEEP_SUI`.
- Margin manager resolution behavior:
  - If `--margin-manager` is omitted, CLI auto-selects a compatible manager for that pool, or creates one in-transaction if none exists.
  - If `--margin-manager` is provided, CLI treats it as explicit and strict: it must match signer + pool; no fallback or auto-create is performed.
- Internal margin fee buffer behavior:
  - Margin market/limit orders auto-deposit a fee buffer before placing the order.
  - With `--no-pay-with-deep`, buffer is deposited in trade asset collateral (base for sell, quote for buy).
  - Without `--no-pay-with-deep`, buffer is deposited as DEEP into the margin manager.
- Full-close quantity normalization:
  - `deepbook margin close <pool> --full` now auto-normalizes inferred quantity to pool lot-size/min-size.
  - If reduce-only full close cannot satisfy lot-size exactly, CLI auto-switches to non-reduce-only and rounds up, then repays debt in the same transaction.
  - If user explicitly passes `--reduce-only`, CLI keeps reduce-only semantics and errors when full close cannot be represented as a valid lot-size quantity.

## End-to-end spot trading flow (fund -> buy -> withdraw)

Use this when executing a real spot trade through a balance manager.

1. Discover balance managers:
   - `deepbook manager ls`
2. If none exist, create one:
   - `deepbook manager create`
3. Deposit quote coin to manager (for `DEEP_SUI` buy, fund `SUI`):
   - `deepbook manager deposit --coin SUI --amount 1 --manager <id>`
4. Optional balance check:
   - `deepbook manager balance --coin SUI --manager <id>`
5. Simulate buy first:
   - `deepbook spot buy DEEP_SUI --quantity 38 --manager <id> --no-pay-with-deep --dry-run`
6. Execute live buy:
   - `deepbook spot buy DEEP_SUI --quantity 38 --manager <id> --no-pay-with-deep`
7. Withdraw purchased asset to signer address (or explicit recipient):
   - `deepbook manager withdraw --coin DEEP --amount 38 --manager <id>`
   - optional recipient: `--recipient <address>`
8. Verify manager balance:
   - `deepbook manager balance --coin DEEP --manager <id>`

## Spot trade troubleshooting

- `MoveAbort ... balance_manager::withdraw_with_proof code=3` means manager available balance is too low.
- This includes fees/reserved amounts, not just raw deposited balance.
- For spot buys, ensure quote coin is funded in manager (for `DEEP_SUI`, quote is `SUI`).
- If fees are attempted in DEEP and manager lacks DEEP, either deposit DEEP or pass `--no-pay-with-deep`.
- When manager is omitted, CLI resolves dynamically:
  - one manager found -> uses it
  - none found -> error
  - multiple found -> require `--manager <id>`


## Typical workflow

1. Inspect pools/orderbook (`deepbook spot pools`, `deepbook margin pools`, `deepbook orderbook ...`).
2. Confirm manager ID (`deepbook manager ls`).
3. Simulate order (`deepbook spot buy ... --dry-run`).
4. Execute live order (same command without `--dry-run`).
5. Monitor with `deepbook orderbook --watch` and `deepbook stream trades ...`.