Biznet GIO CLI
/install biznetgio
Biznet Gio Cloud Management - Agent Skill Guide
Skill Metadata
| Field | Value |
|---|---|
| Name | Biznet Gio Cloud Management |
| Description | Manage Biznet Gio cloud infrastructure (servers, VMs, storage, IPs) via CLI and MCP |
| Homepage | https://github.com/BiznetGIO/biznetgio-cli |
| npm (CLI) | @biznetgio/cli |
| npm (MCP) | @biznetgio/mcp |
| API Docs | https://api.portal.biznetgio.com/v1/openapi.json |
| License | MIT |
| Primary Credential | BIZNETGIO_API_KEY |
Required Environment Variables
| Variable | Required | Description |
|---|---|---|
BIZNETGIO_API_KEY |
Yes | API token from Biznet Gio Portal. Sent as x-token header on every request. Do not hardcode — always use env var. |
BIZNETGIO_BASE_URL |
No | Override API base URL. Defaults to https://api.portal.biznetgio.com/v1. Useful for staging/dev environments. |
Required Binaries
| Binary | Version | Required | Description |
|---|---|---|---|
node |
>= 18 | Yes | Node.js runtime for the CLI and MCP server. |
npx |
(bundled with node) | Yes | Fetches and runs @biznetgio/cli from the npm registry without global installation. |
Runtime Note
This skill executes the npm package @biznetgio/cli via npx, which downloads and runs code from the npm registry. The package is published under the @biznetgio npm scope by Biznet Gio. Source code is available at github.com/BiznetGIO/biznetgio-cli. If you require stronger guarantees, you can:
- Pre-install with
npm install -g @biznetgio/cliand verify the package before use - Use the pre-built standalone binaries from the GitHub releases
- Pin to a specific version:
npx @biznetgio/[email protected]instead of@latest - Run in a sandboxed environment
You are an agent that can manage Biznet Gio cloud infrastructure using the CLI tool @biznetgio/cli and/or MCP server @biznetgio/mcp.
Important Instructions
- Always use
npxto run the CLI. No installation required. - Read-only commands run without confirmation. Commands like
list,detail,products,product-os,product-ip,state,info,usage,regions,openvpn,vm-details,url,credential list,bucket list,object list,keypair list,snapshot list,disk list, and other read-only queries can be executed directly without asking for user approval. - Confirm before create, update, or delete actions. Before running any command that creates, modifies, or deletes a resource, show the user the full command with all values and ask for confirmation. The user may want to revise parameter values before execution.
- For destructive actions (delete, rebuild, state changes), double confirm. Clearly warn the user about the impact and ask explicitly: "Are you sure?"
- For create operations, list all parameters and let the user review and adjust before executing. Show product options, OS choices, and pricing when available.
How to Run
# With API key inline
BIZNETGIO_API_KEY=\x3CYOUR_KEY> npx @biznetgio/cli@latest \x3Cservice> \x3Caction> [arguments] [options]
# Or export the key first
export BIZNETGIO_API_KEY=\x3CYOUR_KEY>
npx @biznetgio/cli@latest \x3Cservice> \x3Caction> [arguments] [options]
# Or pass API key as flag
npx @biznetgio/cli@latest \x3Cservice> \x3Caction> --api-key \x3CYOUR_KEY> [arguments] [options]
- API Key: environment variable
BIZNETGIO_API_KEY(sent asx-tokenheader), or--api-keyflag - Base URL:
https://api.portal.biznetgio.com/v1(override withBIZNETGIO_BASE_URLenv) - Output format: default
table, use--output jsonfor JSON output
Available Services
| Service | CLI Command | MCP Tool Prefix | Description |
|---|---|---|---|
| NEO Metal | metal |
metal_* |
Bare metal servers |
| Elastic Storage | elastic-storage |
elastic_storage_* |
Storage for bare metal |
| Additional IP | additional-ip |
additional_ip_* |
Additional IPs for bare metal |
| NEO Lite | neolite |
neolite_* |
Virtual machines (lightweight) |
| NEO Lite Pro | neolite-pro |
neolite_pro_* |
Virtual machines (pro-tier) |
| Object Storage | object-storage |
object_storage_* |
S3-compatible object storage |
General Pattern
npx @biznetgio/cli@latest \x3Cservice> \x3Caction> [arguments] [options]
npx @biznetgio/cli@latest \x3Cservice> \x3Csubgroup> \x3Caction> [arguments] [options]
Global options: --api-key \x3Ckey>, --output table|json
Output Behavior
- Default: table — List data is displayed as formatted tables. Nested objects (billing, specs, options) are automatically flattened. Billing is summarized as
price/mo. --output json— Raw JSON from the API.datafield.- Primitive responses (e.g. delete, update-label) return plain text like
successortrue. - Empty lists show
No data found.
Valid Enum Values
- Billing cycle (
--cycle):m(monthly),q(quarterly),s(semi-annual),a(annual),b(biennial),t(triennial),p4,p5 - Metal states:
on,off,reset - VM states (neolite/neolite-pro):
stop,suspend,resume,shutdown,start,reset - Object ACL:
private,public-read,public-read-write,authenticated-read,log-delivery-write - Console password: must match
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$(min 8 chars, uppercase + lowercase + digit, alphanumeric only — no special characters) - Label: max 16 characters
Workflow & Best Practices
Before Creating Resources
-
List products first to get valid
product_idvalues:npx @biznetgio/cli@latest metal products npx @biznetgio/cli@latest neolite products npx @biznetgio/cli@latest object-storage products -
Check available OS for a product:
npx @biznetgio/cli@latest metal product-os \x3Cproduct_id> npx @biznetgio/cli@latest neolite product-os \x3Cproduct_id> -
Check available keypairs (or create one first):
npx @biznetgio/cli@latest neolite keypair list npx @biznetgio/cli@latest neolite keypair create --name "my-key" -
Check IP availability (neolite):
npx @biznetgio/cli@latest neolite product-ip \x3Cproduct_id>
Creating Resources
# Create a bare metal server
npx @biznetgio/cli@latest metal create \
--product-id \x3Cid> --cycle m --keypair-id \x3Cid> \
--label "my-server" --public-ip 1 --select-os "ubuntu-22.04"
# Create a NEO Lite instance
npx @biznetgio/cli@latest neolite create \
--product-id \x3Cid> --cycle m --select-os "Ubuntu-20.04" \
--keypair-id \x3Cid> --ssh-and-console-user myuser \
--console-password TestPass123
# Create a NEO Lite Pro instance
npx @biznetgio/cli@latest neolite-pro create \
--product-id \x3Cid> --cycle m --select-os "Ubuntu-20.04" \
--keypair-id \x3Cid> --ssh-and-console-user myuser \
--console-password TestPass123
# Create object storage (label max 16 chars)
npx @biznetgio/cli@latest object-storage create \
--product-id \x3Cid> --cycle m --label "my-storage"
# Create elastic storage (requires metal_account_id)
npx @biznetgio/cli@latest elastic-storage create \
--product-id \x3Cid> --cycle m --storage-name "data-vol" \
--metal-account-id \x3Cid>
# Create additional IP
npx @biznetgio/cli@latest additional-ip create --product-id \x3Cid> --cycle m
Deleting Resources
npx @biznetgio/cli@latest metal delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite-pro delete \x3Caccount_id>
npx @biznetgio/cli@latest elastic-storage delete \x3Caccount_id>
npx @biznetgio/cli@latest additional-ip delete \x3Caccount_id>
npx @biznetgio/cli@latest object-storage delete \x3Caccount_id>
npx @biznetgio/cli@latest object-storage bucket delete \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage object delete \x3Caccount_id> \x3Cbucket_name> \x3Cpath>
npx @biznetgio/cli@latest neolite snapshot delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite disk delete \x3Caccount_id>
npx @biznetgio/cli@latest \x3Cservice> keypair delete \x3Ckeypair_id>
Managing Server State
# NEO Metal: on / off / reset
npx @biznetgio/cli@latest metal set-state \x3Caccount_id> on
npx @biznetgio/cli@latest metal set-state \x3Caccount_id> off
# NEO Lite / Pro: start / stop / shutdown / suspend / resume / reset
npx @biznetgio/cli@latest neolite set-state \x3Caccount_id> start
npx @biznetgio/cli@latest neolite set-state \x3Caccount_id> stop
npx @biznetgio/cli@latest neolite-pro set-state \x3Caccount_id> shutdown
Object Storage Operations
# Credential management
npx @biznetgio/cli@latest object-storage credential list \x3Caccount_id>
npx @biznetgio/cli@latest object-storage credential create \x3Caccount_id>
npx @biznetgio/cli@latest object-storage credential update \x3Caccount_id> \x3Caccess_key> --active
npx @biznetgio/cli@latest object-storage credential delete \x3Caccount_id> \x3Caccess_key>
# Bucket operations
npx @biznetgio/cli@latest object-storage bucket list \x3Caccount_id>
npx @biznetgio/cli@latest object-storage bucket create \x3Caccount_id> --name my-bucket
npx @biznetgio/cli@latest object-storage bucket info \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage bucket usage \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage bucket set-acl \x3Caccount_id> \x3Cbucket_name> --acl public-read
npx @biznetgio/cli@latest object-storage bucket delete \x3Caccount_id> \x3Cbucket_name>
# Object operations
npx @biznetgio/cli@latest object-storage object list \x3Caccount_id> \x3Cbucket_name>
npx @biznetgio/cli@latest object-storage object list \x3Caccount_id> \x3Cbucket_name> \x3Cdirectory>
npx @biznetgio/cli@latest object-storage object info \x3Caccount_id> \x3Cbucket_name> \x3Cpath>
npx @biznetgio/cli@latest object-storage object download \x3Caccount_id> \x3Cbucket_name> \x3Cobject_name>
npx @biznetgio/cli@latest object-storage object url \x3Caccount_id> \x3Cbucket_name> \x3Cobject_name> --expiry 3600
npx @biznetgio/cli@latest object-storage object copy \x3Caccount_id> \x3Cbucket_name> \x3Cto_bucket> \x3Cobject_name>
npx @biznetgio/cli@latest object-storage object move \x3Caccount_id> \x3Cbucket_name> \x3Cto_bucket> \x3Cobject_name>
npx @biznetgio/cli@latest object-storage object mkdir \x3Caccount_id> \x3Cbucket_name> \x3Cdirectory>
npx @biznetgio/cli@latest object-storage object set-acl \x3Caccount_id> \x3Cbucket_name> \x3Cpath> --acl private
npx @biznetgio/cli@latest object-storage object delete \x3Caccount_id> \x3Cbucket_name> \x3Cpath>
Snapshot & Disk Management (NEO Lite / Pro)
# Snapshots
npx @biznetgio/cli@latest neolite snapshot create \x3Caccount_id> --cycle m
npx @biznetgio/cli@latest neolite snapshot list
npx @biznetgio/cli@latest neolite snapshot detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite snapshot restore \x3Caccount_id>
npx @biznetgio/cli@latest neolite snapshot create-instance \x3Csnapshot_account_id> \
--product-id \x3Cid> --cycle m --keypair-id \x3Cid> --name "from-snap" \
--ssh-and-console-user myuser --console-password TestPass123
npx @biznetgio/cli@latest neolite snapshot delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite snapshot products
npx @biznetgio/cli@latest neolite snapshot product \x3Cproduct_id>
# Additional disks
npx @biznetgio/cli@latest neolite disk create \
--product-id \x3Cid> --cycle m --neolite-account-id \x3Cid>
npx @biznetgio/cli@latest neolite disk list
npx @biznetgio/cli@latest neolite disk detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite disk upgrade \x3Caccount_id> --additional-size 20
npx @biznetgio/cli@latest neolite disk delete \x3Caccount_id>
npx @biznetgio/cli@latest neolite disk products
npx @biznetgio/cli@latest neolite disk product \x3Cproduct_id>
Keypair Management
# Available for: metal, neolite, neolite-pro
npx @biznetgio/cli@latest \x3Cservice> keypair list
npx @biznetgio/cli@latest \x3Cservice> keypair create --name "my-key"
npx @biznetgio/cli@latest \x3Cservice> keypair import --name "my-key" --public-key "ssh-rsa AAAA..."
npx @biznetgio/cli@latest \x3Cservice> keypair delete \x3Ckeypair_id>
Upgrade & Scaling
# Upgrade neolite/neolite-pro storage
npx @biznetgio/cli@latest neolite upgrade-storage \x3Caccount_id> --disk-size 50
npx @biznetgio/cli@latest neolite-pro upgrade-storage \x3Caccount_id> --disk-size 100
# Change package (upgrade plan) — check options first
npx @biznetgio/cli@latest neolite change-package-options \x3Caccount_id>
npx @biznetgio/cli@latest neolite change-package \x3Caccount_id> --new-product-id \x3Cid>
# Upgrade elastic storage
npx @biznetgio/cli@latest elastic-storage upgrade \x3Caccount_id> --size 100
# Change elastic storage package
npx @biznetgio/cli@latest elastic-storage change-package \x3Caccount_id> --new-product-id \x3Cid>
# Upgrade object storage quota
npx @biznetgio/cli@latest object-storage upgrade-quota \x3Caccount_id> --add-quota 50
# Migrate neolite to pro — check options first
npx @biznetgio/cli@latest neolite migrate-to-pro-products \x3Caccount_id>
npx @biznetgio/cli@latest neolite migrate-to-pro \x3Caccount_id> --neolitepro-product-id \x3Cid>
Rebuild / Reinstall OS
# Check available OS for rebuild
npx @biznetgio/cli@latest metal rebuild-os \x3Caccount_id>
# Rebuild
npx @biznetgio/cli@latest metal rebuild \x3Caccount_id> --os "ubuntu-22.04"
npx @biznetgio/cli@latest neolite rebuild \x3Caccount_id> --select-os "Ubuntu-20.04"
npx @biznetgio/cli@latest neolite-pro rebuild \x3Caccount_id> --select-os "Ubuntu-20.04"
Update & Rename
# Update metal label (max 16 chars)
npx @biznetgio/cli@latest metal update-label \x3Caccount_id> --label "new-label"
# Rename neolite/neolite-pro VM
npx @biznetgio/cli@latest neolite rename \x3Caccount_id> --name "new-name"
npx @biznetgio/cli@latest neolite-pro rename \x3Caccount_id> --name "new-name"
# Change keypair
npx @biznetgio/cli@latest neolite change-keypair \x3Caccount_id> --keypair-id \x3Cid>
npx @biznetgio/cli@latest neolite-pro change-keypair \x3Caccount_id> --keypair-id \x3Cid>
Additional IP Assignment
# List and create IPs
npx @biznetgio/cli@latest additional-ip list
npx @biznetgio/cli@latest additional-ip regions
npx @biznetgio/cli@latest additional-ip create --product-id \x3Cid> --cycle m
# Assign IP to bare metal
npx @biznetgio/cli@latest additional-ip assign \x3Cip_account_id> --metal-account-id \x3Cmetal_id>
npx @biznetgio/cli@latest additional-ip assigns \x3Cip_account_id>
npx @biznetgio/cli@latest additional-ip assignments \x3Cmetal_account_id>
npx @biznetgio/cli@latest additional-ip assign-detail \x3Cip_account_id> \x3Cmetal_account_id>
# Unassign
npx @biznetgio/cli@latest additional-ip unassign \x3Cip_account_id> \x3Cmetal_account_id>
Detail & Info Commands
# Account details
npx @biznetgio/cli@latest metal detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite detail \x3Caccount_id>
npx @biznetgio/cli@latest neolite-pro detail \x3Caccount_id>
npx @biznetgio/cli@latest elastic-storage detail \x3Caccount_id>
npx @biznetgio/cli@latest additional-ip detail \x3Caccount_id>
npx @biznetgio/cli@latest object-storage detail \x3Caccount_id>
# VM details
npx @biznetgio/cli@latest neolite vm-details \x3Caccount_id>
npx @biznetgio/cli@latest neolite-pro vm-details \x3Caccount_id>
# Server state
npx @biznetgio/cli@latest metal state \x3Caccount_id>
# OpenVPN config
npx @biznetgio/cli@latest metal openvpn
Destructive Actions - Use With Caution!
The following commands are destructive and cannot be undone. ALWAYS confirm with the user before running:
- All
deletecommands (server, VM, storage, IP, bucket, object, snapshot, disk, keypair) rebuildcommands (reinstalls OS, wipes data)set-state off/shutdown/reset(may cause downtime)
MCP Server Tools Reference
When using the MCP server, all endpoints are exposed as tools with naming convention \x3Cservice>_\x3Caction>. Examples:
| CLI Command | MCP Tool |
|---|---|
metal list |
metal_list |
metal detail 123 |
metal_detail {account_id: 123} |
metal set-state 123 on |
metal_set_state {account_id: 123, state: "on"} |
neolite create ... |
neolite_create {product_id, cycle, ...} |
object-storage bucket list 123 |
object_storage_bucket_list {account_id: 123} |
neolite snapshot list |
neolite_snapshot_list {} |
neolite disk create ... |
neolite_disk_create {product_id, cycle, ...} |
object-storage delete 123 |
object_storage_delete {account_id: 123} |
Total: 131 tools available in the MCP server.
MCP server configuration for Claude Desktop / Claude Code:
{
"mcpServers": {
"biznetgio": {
"command": "npx",
"args": ["-y", "@biznetgio/mcp@latest"],
"env": {
"BIZNETGIO_API_KEY": "your_api_key_here"
}
}
}
}
Troubleshooting
| Error | Solution |
|---|---|
API key not set |
Set export BIZNETGIO_API_KEY=xxx or use --api-key flag |
API Error 401 |
API key is invalid or expired |
API Error 404 |
Resource not found, check the account_id |
API Error 422 |
Validation error — check password regex, label max 16 chars, required fields |
API Error 500 |
Server error — retry or check if the resource exists |
No data found. |
The list is empty, no resources of this type exist yet |
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install biznetgio - 安装完成后,直接呼叫该 Skill 的名称或使用
/biznetgio触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Biznet GIO CLI 是什么?
Manage Biznet Gio cloud infrastructure (servers, VMs, storage, IPs) via CLI and MCP server. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 119 次。
如何安装 Biznet GIO CLI?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install biznetgio」即可一键安装,无需额外配置。
Biznet GIO CLI 是免费的吗?
是的,Biznet GIO CLI 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Biznet GIO CLI 支持哪些平台?
Biznet GIO CLI 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Biznet GIO CLI?
由 Biznet Gio(@biznetgio)开发并维护,当前版本 v1.0.4。