Icp-cli announcements and feedback discussion

icp-cli v0.1.0-beta.5 Released

We’re excited to announce the release of icp-cli v0.1.0-beta.5 with several important improvements for ICP developers.

Highlights since beta.3

Windows Support
icp-cli now runs natively on Windows, expanding our platform coverage to macOS, Linux, and Windows.

See it in action: icp-cli setup and demo (Windows) - asciinema.org

Windows limitations:

  • Local networks require Docker Desktop
  • Motoko canisters require WSL — the Motoko compiler doesn’t run natively on Windows. Install icp-cli inside WSL and follow the macOS/Linux instructions instead.
  • Rust canisters work natively on Windows without WSL

Large WASM Support
You can now install canisters with WASM modules larger than 2MB. The CLI handles chunked uploads automatically.

Improved Argument Handling

  • icp canister call and icp canister install now accept arguments from files (Candid or hex format)
  • Hex-encoded arguments are supported directly
  • Configure install_args in icp.yaml to point to argument files

Safety Controls for Controller Changes
The CLI now warns and prompts for confirmation when removing yourself from a canister’s controllers, helping prevent accidental lockouts. Use -f/--force to skip prompts in scripts.

Token & Cycles Improvements

  • New human-friendly amount formats: 1_000, 1k, 1.5m, 1_234.5b, 4T
  • icp token transfer now accepts AccountIdentifier hex strings for ICP ledger transfers
  • New icp identity account-id command to display ledger account identifiers
  • New icp cycles transfer command (replaces icp token cycles transfer)

Network Naming Changes (Breaking)

  • The implicit “mainnet” network is now called “ic”
  • The --mainnet and --ic flags have been removed, use -n ic or -e ic instead
  • You can now override the implicit local network and environment

Other Improvements

  • icp canister metadata <canister> <section> fetches metadata from canisters
  • icp canister status now shows the canister name
  • IC network options (ii, nns, subnets, artificial-delay-ms) can be configured in the manifest
  • Docker networks now bind to 127.0.0.1 for better security

Documentation

Check out the documentation: icp-cli Documentation | ICP CLI

Full Changelog

See the complete changelog and download binaries:

Feedback

We’d love to hear your feedback! Please report issues or suggestions at https://github.com/dfinity/icp-cli/issues