Skip to content

Releases: dfinity/icp-cli

v0.2.6

01 May 17:36
17b458f

Choose a tag to compare

Release Notes

  • feat: icp token/cycles balance now accept --of-principal
  • fix: The local wasm cache has moved from .icp/cache/canisters/ to .icp/cache/wasms/. Existing cached files will be re-downloaded automatically on the next run.
  • feat: Canister manifests now support a plugin sync step type. Plugins are WebAssembly components that run in a sandboxed environment and can drive arbitrary post-deployment logic against the canister being synced. See crates/icp-sync-plugin/DESIGN.md for details.
  • feat: icp sync now accepts --proxy to route sync plugin calls to the target canister through a proxy canister.
  • fix: icp canister call now serializes arguments built via the interactive Candid assist prompt against the method's declared signature, matching the behavior of arguments passed on the command line. Previously, narrower values (e.g. a variant case from a multi-case variant) were encoded with a type table inferred only from the value, which the target canister rejected with errors like "Variant index N larger than length 1".

Install icp-cli 0.2.6

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.6/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.6/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.6

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.5

24 Apr 16:49
d526ef3

Choose a tag to compare

Release Notes

  • feat: icp new --init no longer requires specifying a project name. If non is provided, the containing folder's name is used as the project name
  • fix: icp canister call --json no longer produces blank output.

Install icp-cli 0.2.5

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.5/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.5/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.5

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.4

23 Apr 18:08
a4dc425

Choose a tag to compare

Release Notes

  • feat: icp identity delegation request/sign/use now permit creating and importing identity delegations
  • feat: icp identity import now takes --seed-curve, for seed phrases for non-k256 keys.
  • fix: icp canister settings show now outputs only the canister settings, consistent with the command name
  • fix: Fail early when attempting to create an identity with an already existing name.
  • fix: Find icp.yaml even from within a symlinked folder.

Install icp-cli 0.2.4

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.4/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.4/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.4

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.3

08 Apr 20:44
caeac37

Choose a tag to compare

Release Notes

  • feat: Add --proxy to icp canister subcommands and icp deploy to route management canister calls through a proxy canister
  • feat: Add --args, --args-file, and --args-format flags to icp deploy to pass install arguments at the command line, overriding init_args in the manifest

Install icp-cli 0.2.3

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.3/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.3/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.3

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.2

27 Mar 21:32
e95eeef

Choose a tag to compare

Release Notes

Important: A network launcher more recent than v12.0.0-83c3f95e8c4ce28e02493df83df5f84a166451c0 is
required to use internet identity.

  • feat: Many more commands support --json and --quiet.
  • feat: When a local network is started internet identity is available at id.ai.localhost
  • fix: Network would fail to start if a stale descriptor was present

Install icp-cli 0.2.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.2/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.2/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.2

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.1

17 Mar 20:17
bfbe837

Choose a tag to compare

Release Notes

  • feat: icp-cli will now inform you if a new version is released. This can be disabled with icp settings update-check
  • fix: Duplicate identities no longer cause an error when starting a network
  • feat: Added support for creating canisters on cloud engine subnets. Note that local networks cannot yet create these subnets.
  • feat: Upgrading canisters now stops them before the upgrade and starts them again afterwards
  • feat: icp canister logs supports filtering by timestamp (--since, --until) and log index (--since-index, --until-index)
  • feat: Support log_memory_limit canister setting in icp canister settings update and icp canister settings sync
  • feat: Leaving off the method name parameter in icp canister call prompts you with an interactive list of methods
  • fix: Correct templating of special HTML characters in recipes

Install icp-cli 0.2.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.1/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.1/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.1

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.1-beta.0

12 Mar 14:52
ed62012

Choose a tag to compare

v0.2.1-beta.0 Pre-release
Pre-release

Release Notes

  • feat: Added support for creating canisters on cloud engine subnets. Note that local networks cannot yet create these subnets.
  • feat: Upgrading canisters now stops them before the upgrade and starts them again afterwards
  • feat: icp canister logs supports filtering by timestamp (--since, --until) and log index (--since-index, --until-index)
  • feat: Support log_memory_limit canister setting in icp canister settings update and icp canister settings sync
  • feat: Leaving off the method name parameter in icp canister call prompts you with an interactive list of methods
  • fix: Correct templating of special HTML characters in recipes

Install icp-cli 0.2.1-beta.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.1-beta.0/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.1-beta.0/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.1-beta.0

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.0

04 Mar 19:12
3ae7926

Choose a tag to compare

Release Notes

  • feat: Added 'friendly name' domains for canisters - instead of <frontend principal>.localhost you can access frontend.local.localhost.
  • feat: Added bind key to network gateway config to pick your network interface (previous documentation mentioned a host key, but it did not do anything)
  • feat: check for Candid incompatibility when upgrading a canister
  • feat: Add bitcoind-addr and dogecoind-addr options for managed networks to connect to Bitcoin and Dogecoin nodes
  • feat: Init/call arg files now support raw binary without conversion to hex
  • feat!: Remove argument type inference in init/call args in commands and manifest. Args are always assumed Candid, new parameters allow specifying other formats like hex, and alternate parameters are used to specify loading from a file.
  • feat: Network gateway now supports a domains key
  • feat: icp identity export now takes an --encrypt flag to avoid rendering the key in plaintext
  • feat: Optionally split connected networks' url into api-url and http-gateway-url
  • feat: Allow specifying a version of the network launcher to use
  • feat: Support subaccounts and ICRC-1 IDs in icp token, icp cycles, and icp identity account-id
  • feat!: Recipes are now specified @registry/recipe@version, the version component is required. The latest version is no longer assumed and the version tags will be removed soon.
  • feat: Recipes and prebuilt canisters are now cached locally
  • feat: icp settings autocontainerize true, always use a docker container for all networks
  • feat: icp canister migrate-id - initiate canister ID migration across subnets
  • feat: Install proxy canister when starting managed networks with all identities as controllers (or anonymous + default if more than 10 identities)
    • icp network status displays the proxy canister principal
  • feat: icp network status display more information about networks
  • feat: icp canister logs to display the current canister logs
    • use --follow to continuously poll for new logs. --interval <n> to poll every n seconds
  • feat: Support k, m, b, t suffixes in .yaml files when specifying cycles amounts
  • feat: Support kb, kib, mb, mib, gb, gib suffixes in .yaml files and CLI arguments when specifying memory amounts
  • feat: Add an optional root-key argument to canister commands
  • feat: icp canister call now supports --output <mode> with the following modes:
    • auto (default): Try decoding the response as Candid, then UTF-8, then fall back to hex.
    • candid: Parse as Candid and pretty-print; error if parsing fails.
    • text: Parse as UTF-8 text; error if invalid.
    • hex: Print raw response as hex.
  • chore!: new passwords for identity encryption need to be at least 8 characters long
  • feat: Anonymous usage telemetry — collects command name, arguments, duration, and outcome
    • Enabled by default; opt out with icp settings telemetry false, DO_NOT_TRACK=1, or ICP_TELEMETRY_DISABLED=1
    • Automatically disabled in CI environments (CI env var set)
    • icp settings telemetry to view or change the current setting

Install icp-cli 0.2.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.0/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.0/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.0

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.2.0-beta.0

03 Mar 01:47
9201659

Choose a tag to compare

v0.2.0-beta.0 Pre-release
Pre-release

Release Notes

  • feat: Added bind key to network gateway config to pick your network interface (previous documentation mentioned a host key, but it did not do anything)
  • feat: check for Candid incompatibility when upgrading a canister
  • feat: Add bitcoind-addr and dogecoind-addr options for managed networks to connect to Bitcoin and Dogecoin nodes
  • feat: Init/call arg files now support raw binary without conversion to hex
  • feat!: Remove argument type inference in init/call args in commands and manifest. Args are always assumed Candid, new parameters allow specifying other formats like hex, and alternate parameters are used to specify loading from a file.
  • feat: Network gateway now supports a domains key
  • feat: icp identity export now takes an --encrypt flag to avoid rendering the key in plaintext
  • feat: Optionally split connected networks' url into api-url and http-gateway-url
  • feat: Allow specifying a version of the network launcher to use
  • feat: Support subaccounts and ICRC-1 IDs in icp token, icp cycles, and icp identity account-id
  • feat!: Recipes are now specified @registry/recipe@version, the version component is required. The latest version is no longer assumed and the version tags will be removed soon.
  • feat: Recipes and prebuilt canisters are now cached locally
  • feat: icp settings autocontainerize true, always use a docker container for all networks
  • feat: icp canister migrate-id - initiate canister ID migration across subnets
  • feat: Install proxy canister when starting managed networks with all identities as controllers (or anonymous + default if more than 10 identities)
    • icp network status displays the proxy canister principal
  • feat: icp network status display more information about networks
  • feat: icp canister logs to display the current canister logs
    • use --follow to continuously poll for new logs. --interval <n> to poll every n seconds
  • feat: Support k, m, b, t suffixes in .yaml files when specifying cycles amounts
  • feat: Support kb, kib, mb, mib, gb, gib suffixes in .yaml files and CLI arguments when specifying memory amounts
  • feat: Add an optional root-key argument to canister commands
  • feat: icp canister call now supports --output <mode> with the following modes:
    • auto (default): Try decoding the response as Candid, then UTF-8, then fall back to hex.
    • candid: Parse as Candid and pretty-print; error if parsing fails.
    • text: Parse as UTF-8 text; error if invalid.
    • hex: Print raw response as hex.
  • chore!: new passwords for identity encryption need to be at least 8 characters long
  • feat: Anonymous usage telemetry — collects command name, arguments, duration, and outcome
    • Enabled by default; opt out with icp settings telemetry false, DO_NOT_TRACK=1, or ICP_TELEMETRY_DISABLED=1
    • Automatically disabled in CI environments (CI env var set)
    • icp settings telemetry to view or change the current setting

Install icp-cli 0.2.0-beta.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.2.0-beta.0/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.2.0-beta.0/icp-cli-installer.ps1 | iex"

Download icp-cli 0.2.0-beta.0

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.1.0

03 Feb 18:51
c2c218a

Choose a tag to compare

Release Notes

  • feat: icp canister snapshot - create, delete, restore, list, download, and upload canister snapshots
  • feat: icp canister call now supports --proxy flag to route calls through a proxy canister
    • Use --proxy <CANISTER_ID> to forward the call through a proxy canister's proxy method
    • Use --cycles <AMOUNT> to specify cycles to forward with the proxied call (defaults to 0)

Install icp-cli 0.1.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dfinity/icp-cli/releases/download/v0.1.0/icp-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/dfinity/icp-cli/releases/download/v0.1.0/icp-cli-installer.ps1 | iex"

Download icp-cli 0.1.0

File Platform Checksum
icp-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
icp-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
icp-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
icp-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
icp-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum