Skip to content
Merged
Show file tree
Hide file tree
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
99 changes: 0 additions & 99 deletions CHANGELOG.md

This file was deleted.

22 changes: 17 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,18 +78,30 @@ fireblocks help-index
Interactive setup that stores your API key ID and RSA secret in `~/.config/fireblocks/config.json`. For agents and CI, use env vars or flags instead (see [Authentication](#authentication)).

```bash
fireblocks configure # interactive
fireblocks configure --profile sandbox # named profile for multi-env setups
fireblocks configure # set up the default profile
fireblocks configure --profile profile-name # named profile for multi-env setups
fireblocks configure --set-default=profile-name # switch the default profile without re-entering credentials
```

### `fireblocks whoami` — Verify credentials
When configuring a second profile you are asked whether to make it the default. The config always stores the `baseUrl` explicitly so the file is self-describing.

Calls `GET /v1/users/me` and returns the masked API key, base URL, and verification status. Use this as a smoke test before running anything else.
### `fireblocks whoami` — Show current profile

Prints the default profile name, masked API key, and base URL from the local config file. No API call is made.

```bash
fireblocks whoami
```

Example output:
```json
{
"defaultProfile": "default",
"apiKey": "d9cb...cba8",
"baseUrl": "https://api.fireblocks.io"
}
```

### `fireblocks <namespace> <action>` — API operations

Commands are generated from the Fireblocks OpenAPI spec. OpenAPI path parameters become required flags (kebab-case); query parameters become optional flags. Write ops take the body as `--data '<json>'`.
Expand Down Expand Up @@ -178,7 +190,7 @@ Errors are structured JSON on stderr:

## AI agents

The CLI is designed to be driven by coding agents (Claude Code, Cursor, Devin). Install the CLI, then drop [`SKILL.md`](./.claude/skills/fireblocks-cli/SKILL.md) into your agent's skills directory. Agents will:
The CLI is designed to be driven by coding agents (Claude Code, Cursor, Devin). Install the CLI, then drop [`SKILL.md`](.claude/skills/fireblocks-cli/SKILL.md) into your agent's skills directory. Agents will:

- Discover operations via `help-index`
- Compose workflows by piping JSON between commands
Expand Down
114 changes: 55 additions & 59 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@fireblocks/fireblocks-cli",
"description": "Agent-first CLI for Fireblocks infrastructure. Execute any Fireblocks API operation from the command line.",
"version": "1.0.5",
"version": "0.1.0",
"author": "Fireblocks",
"repository": {
"type": "git",
Expand Down Expand Up @@ -40,11 +40,7 @@
"./dist",
"./oclif.manifest.json"
],
"keywords": [
"oclif",
"fireblocks",
"cli"
],
"keywords": ["oclif", "fireblocks", "cli"],
"license": "MIT",
"main": "dist/index.js",
"type": "module",
Expand All @@ -58,156 +54,156 @@
"topicSeparator": " ",
"topics": {
"vaults": {
"description": "Vaults operations"
"description": "Vaults operations"
},
"embedded-wallets": {
"description": "Embedded Wallets operations"
"description": "Embedded Wallets operations"
},
"workspace": {
"description": "Workspace operations"
"description": "Workspace operations"
},
"exchange-accounts": {
"description": "Exchange accounts operations"
"description": "Exchange accounts operations"
},
"fiat-accounts": {
"description": "Fiat accounts operations"
"description": "Fiat accounts operations"
},
"connected-accounts": {
"description": "Connected Accounts operations (Beta)"
"description": "Connected Accounts operations (Beta)"
},
"network-connections": {
"description": "Network connections operations"
"description": "Network connections operations"
},
"internal-wallets": {
"description": "Internal wallets operations"
"description": "Internal wallets operations"
},
"key-link": {
"description": "Key Link operations (Beta)"
"description": "Key Link operations (Beta)"
},
"keys": {
"description": "Keys operations (Beta)"
"description": "Keys operations (Beta)"
},
"external-wallets": {
"description": "External wallets operations"
"description": "External wallets operations"
},
"contracts": {
"description": "Contracts operations"
"description": "Contracts operations"
},
"blockchains-assets": {
"description": "Blockchains & assets operations"
"description": "Blockchains & assets operations"
},
"transactions": {
"description": "Transactions operations"
"description": "Transactions operations"
},
"payments-payout": {
"description": "Payments - Payout operations"
"description": "Payments - Payout operations"
},
"payments-flows": {
"description": "Payments - Flows operations"
"description": "Payments - Flows operations"
},
"gas-stations": {
"description": "Gas stations operations"
"description": "Gas stations operations"
},
"user-groups": {
"description": "User groups operations (Beta)"
"description": "User groups operations (Beta)"
},
"users": {
"description": "Users operations"
"description": "Users operations"
},
"audit-logs": {
"description": "Audit Logs operations"
"description": "Audit Logs operations"
},
"off-exchanges": {
"description": "Off exchanges operations"
"description": "Off exchanges operations"
},
"webhooks": {
"description": "Webhooks operations"
"description": "Webhooks operations"
},
"webhooks-v2": {
"description": "Webhooks V2 operations"
"description": "Webhooks V2 operations"
},
"contract-templates": {
"description": "Contract Templates operations"
"description": "Contract Templates operations"
},
"deployed-contracts": {
"description": "Deployed Contracts operations"
"description": "Deployed Contracts operations"
},
"tokenization": {
"description": "Tokenization operations"
"description": "Tokenization operations"
},
"contract-interactions": {
"description": "Contract Interactions operations"
"description": "Contract Interactions operations"
},
"onchain-data": {
"description": "Onchain Data operations"
"description": "Onchain Data operations"
},
"staking": {
"description": "Staking operations"
"description": "Staking operations"
},
"earn": {
"description": "Earn operations (Beta)"
"description": "Earn operations (Beta)"
},
"trading": {
"description": "Trading operations (Beta)"
"description": "Trading operations (Beta)"
},
"admin-quorum": {
"description": "Admin Quorum operations"
"description": "Admin Quorum operations"
},
"nfts": {
"description": "NFTs operations"
"description": "NFTs operations"
},
"web3-connections": {
"description": "Web3 connections operations"
"description": "Web3 connections operations"
},
"compliance": {
"description": "Compliance operations"
"description": "Compliance operations"
},
"travel-rule": {
"description": "Travel Rule operations"
"description": "Travel Rule operations"
},
"compliance-screening-configuration": {
"description": "Compliance Screening Configuration operations"
"description": "Compliance Screening Configuration operations"
},
"trlink": {
"description": "TRLink operations"
"description": "TRLink operations"
},
"ota": {
"description": "OTA operations (Beta)"
"description": "OTA operations (Beta)"
},
"workspace-status": {
"description": "Workspace Status operations (Beta)"
"description": "Workspace Status operations (Beta)"
},
"policy-editor": {
"description": "Policy Editor operations (Beta)"
"description": "Policy Editor operations (Beta)"
},
"policy-editor-v2": {
"description": "Policy Editor V2 operations (Beta)"
"description": "Policy Editor V2 operations (Beta)"
},
"console-user": {
"description": "Console User operations"
"description": "Console User operations"
},
"api-user": {
"description": "Api User operations"
"description": "Api User operations"
},
"reset-device": {
"description": "Reset device operations"
"description": "Reset device operations"
},
"whitelist-ip-addresses": {
"description": "whitelist ip addresses operations"
"description": "whitelist ip addresses operations"
},
"smart-transfer": {
"description": "Smart Transfer operations"
"description": "Smart Transfer operations"
},
"tags": {
"description": "Tags operations"
"description": "Tags operations"
},
"cosigners": {
"description": "Cosigners operations (Beta)"
"description": "Cosigners operations (Beta)"
},
"utxo-management": {
"description": "UTXO Management operations (Beta)"
"description": "UTXO Management operations (Beta)"
}
},
},
"plugins": [
"@oclif/plugin-help",
"@oclif/plugin-autocomplete"
Expand All @@ -225,7 +221,7 @@
"win32-x64"
],
"macos": {
"identifier": "com.fireblocks.mycli"
"identifier": "com.fireblocks.mycli"
}
},
"scripts": {
Expand All @@ -236,6 +232,6 @@
"pack:mac": "oclif pack macos",
"pack:win": "oclif pack win --targets win32-x64",
"pack:deb": "oclif pack deb"
},
},
"types": "dist/index.d.ts"
}
Loading
Loading