CLI reference
AlgoKit is your one-stop shop to develop applications on the Algorand blockchain.
If you are getting started, please see the quick start tutorial.
algokit [OPTIONS] COMMAND [ARGS]...
Options¶
--version¶
Show the version and exit.
-v, --verbose¶
Enable logging of DEBUG messages to the console.
--color, --no-color¶
Force enable or disable of console output styling.
--skip-version-check¶
Skip version checking and prompting.
bootstrap¶
Expedited initial setup for any developer by installing and configuring dependencies and other key development environment setup activities.
algokit bootstrap [OPTIONS] COMMAND [ARGS]...
Options¶
--force¶
Continue even if minimum AlgoKit version is not met
all¶
Runs all bootstrap sub-commands in the current directory and immediate sub directories.
algokit bootstrap all [OPTIONS]
Options¶
--interactive, --non-interactive, --ci¶
Enable/disable interactive prompts. If the CI environment variable is set, defaults to non-interactive
env¶
Copies .env.template file to .env in the current working directory and prompts for any unspecified values.
algokit bootstrap env [OPTIONS]
Options¶
--interactive, --non-interactive, --ci¶
Enable/disable interactive prompts. If the CI environment variable is set, defaults to non-interactive
npm¶
Runs npm install in the current working directory to install Node.js dependencies.
algokit bootstrap npm [OPTIONS]
poetry¶
Installs Python Poetry (if not present) and runs poetry install in the current working directory to install Python dependencies.
algokit bootstrap poetry [OPTIONS]
completions¶
Install and Uninstall AlgoKit shell integrations.
algokit completions [OPTIONS] COMMAND [ARGS]...
install¶
Install shell completions, this command will attempt to update the interactive profile script for the current shell to support algokit completions. To specify a specific shell use --shell.
algokit completions install [OPTIONS]
Options¶
--shell ¶
Specify shell to install algokit completions for.
-
Options
bash | zsh
uninstall¶
Uninstall shell completions, this command will attempt to update the interactive profile script for the current shell to remove any algokit completions that have been added. To specify a specific shell use --shell.
algokit completions uninstall [OPTIONS]
Options¶
--shell ¶
Specify shell to install algokit completions for.
-
Options
bash | zsh
config¶
Configure settings used by AlgoKit
algokit config [OPTIONS] COMMAND [ARGS]...
version-prompt¶
Controls whether AlgoKit checks and prompts for new versions. Set to [disable] to prevent AlgoKit performing this check permanently, or [enable] to resume checking. If no argument is provided then outputs current setting.
Also see --skip-version-check which can be used to disable check for a single command.
algokit config version-prompt [OPTIONS] [[enable|disable]]
Arguments¶
ENABLE¶
Optional argument
deploy¶
Deploy smart contracts from AlgoKit compliant repository.
algokit deploy [OPTIONS] [ENVIRONMENT_NAME]
Options¶
-C, --command ¶
Custom deploy command. If not provided, will load the deploy command from .algokit.toml file.
--interactive, --non-interactive, --ci¶
Enable/disable interactive prompts. If the CI environment variable is set, defaults to non-interactive
-P, --path ¶
Specify the project directory. If not provided, current working directory will be used.
--deployer ¶
(Optional) Alias of the deployer account. Otherwise, will prompt the deployer mnemonic if specified in .algokit.toml file.
--dispenser ¶
(Optional) Alias of the dispenser account. Otherwise, will prompt the dispenser mnemonic if specified in .algokit.toml file.
Arguments¶
ENVIRONMENT_NAME¶
Optional argument
dispenser¶
Interact with the AlgoKit TestNet Dispenser.
algokit dispenser [OPTIONS] COMMAND [ARGS]...
fund¶
Fund your wallet address with TestNet ALGOs.
algokit dispenser fund [OPTIONS]
Options¶
-r, --receiver ¶
Required Address or alias of the receiver to fund with TestNet ALGOs.
-a, --amount ¶
Required Amount to fund. Defaults to microAlgos.
--whole-units¶
Use whole units (Algos) instead of smallest divisible units (microAlgos). Disabled by default.
limit¶
Get information about current fund limit on your account. Resets daily.
algokit dispenser limit [OPTIONS]
Options¶
--whole-units¶
Use whole units (Algos) instead of smallest divisible units (microAlgos). Disabled by default.
login¶
Login to your Dispenser API account.
algokit dispenser login [OPTIONS]
Options¶
--ci¶
Generate an access token for CI. Issued for 30 days.
-o, --output ¶
Choose the output method for the access token. Defaults to stdout. Only applicable when --ci flag is set.
-
Options
stdout | file
-f, --file ¶
Output filename where you want to store the generated access token.Defaults to algokit_ci_token.txt. Only applicable when --ci flag is set and --output mode is file.
logout¶
Logout of your Dispenser API account.
algokit dispenser logout [OPTIONS]
refund¶
Refund ALGOs back to the dispenser wallet address.
algokit dispenser refund [OPTIONS]
Options¶
-t, --txID ¶
Required Transaction ID of your refund operation.
doctor¶
Diagnose potential environment issues that may affect AlgoKit.
Will search the system for AlgoKit dependencies and show their versions, as well as identifying any potential issues.
algokit doctor [OPTIONS]
Options¶
-c, --copy-to-clipboard¶
Copy the contents of the doctor message (in Markdown format) in your clipboard.
explore¶
Explore the specified network in the browser using Dappflow.
algokit explore [OPTIONS] [[localnet|testnet|mainnet]]
Arguments¶
NETWORK¶
Optional argument
generate¶
Generate code for an Algorand project.
algokit generate [OPTIONS] COMMAND [ARGS]...
client¶
Create a typed ApplicationClient from an ARC-32 application.json
Supply the path to an application specification file or a directory to recursively search for "application.json" files
algokit generate client [OPTIONS] APP_SPEC_PATH_OR_DIR
Options¶
-o, --output ¶
Path to the output file. The following tokens can be used to substitute into the output path: {contract_name}, {app_spec_dir}
-l, --language ¶
Programming language of the generated client code
-
Options
python | typescript
Arguments¶
APP_SPEC_PATH_OR_DIR¶
Required argument
goal¶
Run the Algorand goal CLI against the AlgoKit LocalNet.
Look at https://developer.algorand.org/docs/clis/goal/goal/ for more information.
algokit goal [OPTIONS] [GOAL_ARGS]...
Options¶
--console¶
Open a Bash console so you can execute multiple goal commands and/or interact with a filesystem.
Arguments¶
GOAL_ARGS¶
Optional argument(s)
init¶
Initializes a new project from a template, including prompting for template specific questions to be used in template rendering.
Templates can be default templates shipped with AlgoKit, or custom templates in public Git repositories.
Includes ability to initialise Git repository, run algokit bootstrap and automatically open Visual Studio Code.
This should be run in the parent directory that you want the project folder created in.
By default, the --workspace flag creates projects within a workspace structure or integrates them into an existing one, promoting organized management of multiple projects. Alternatively, to disable this behavior use the --no-workspace flag, which ensures the new project is created in a standalone target directory. This is suitable for isolated projects or when workspace integration is unnecessary.
algokit init [OPTIONS]
Options¶
-n, --name ¶
Name of the project / directory / repository to create.
-t, --template ¶
Name of an official template to use. To choose interactively, run this command with no arguments.
-
Options
tealscript | puya | react | fullstack | beaker | base | playground
--template-url ¶
URL to a git repo with a custom project template.
--template-url-ref ¶
Specific tag, branch or commit to use on git repo specified with --template-url. Defaults to latest.
--UNSAFE-SECURITY-accept-template-url¶
Accept the specified template URL, acknowledging the security implications of arbitrary code execution trusting an unofficial template.
--git, --no-git¶
Initialise git repository in directory after creation.
--defaults¶
Automatically choose default answers without asking when creating this template.
--bootstrap, --no-bootstrap¶
Whether to run algokit bootstrap to install and configure the new project's dependencies locally.
--ide, --no-ide¶
Whether to open an IDE for you if the IDE and IDE config are detected. Supported IDEs: VS Code.
--workspace, --no-workspace¶
Whether to prefer structuring standalone projects as part of a workspace.
-a, --answer ¶
Answers key/value pairs to pass to the template.
localnet¶
Manage the AlgoKit LocalNet.
algokit localnet [OPTIONS] COMMAND [ARGS]...
console¶
Run the Algorand goal CLI against the AlgoKit LocalNet via a Bash console so you can execute multiple goal commands and/or interact with a filesystem.
algokit localnet console [OPTIONS]
explore¶
Explore the AlgoKit LocalNet using Dappflow
algokit localnet explore [OPTIONS]
logs¶
See the output of the Docker containers
algokit localnet logs [OPTIONS]
Options¶
--follow, -f¶
Follow log output.
--tail ¶
Number of lines to show from the end of the logs for each container.
-
Default
all
reset¶
Reset the AlgoKit LocalNet.
algokit localnet reset [OPTIONS]
Options¶
--update, --no-update¶
Enable or disable updating to the latest available LocalNet version, default: don't update
start¶
Start the AlgoKit LocalNet.
algokit localnet start [OPTIONS]
Options¶
-n, --name ¶
Specify a name for a custom LocalNet instance. AlgoKit will not manage the configuration of named LocalNet instances, allowing developers to configure it in any way they need.
status¶
Check the status of the AlgoKit LocalNet.
algokit localnet status [OPTIONS]
stop¶
Stop the AlgoKit LocalNet.
algokit localnet stop [OPTIONS]
task¶
Collection of useful tasks to help you develop on Algorand.
algokit task [OPTIONS] COMMAND [ARGS]...
analyze¶
Analyze TEAL programs for common vulnerabilities using Tealer. This task uses a third party tool to suggest improvements for your TEAL programs, but remember to always test your smart contracts code, follow modern software engineering practices and use the guidelines for smart contract development. This should not be used as a substitute for an actual audit. For full list of available detectors, please refer to https://github.com/crytic/tealer?tab=readme-ov-file#detectors
algokit task analyze [OPTIONS] INPUT_PATHS...
Options¶
-r, --recursive¶
Recursively search for all TEAL files within the provided directory.
--force¶
Force verification without the disclaimer confirmation prompt.
--diff¶
Exit with a non-zero code if differences are found between current and last reports. Reports are generated each run, but with this flag execution fails if the current report doesn't match the last report. Reports are stored in the .algokit/static-analysis/snapshots folder by default. Use --output for a custom path.
-o, --output ¶
Directory path where to store the results of the static analysis. Defaults to .algokit/static-analysis/snapshots.
-e, --exclude ¶
Exclude specific vulnerabilities from the analysis. Supports multiple exclusions in a single run.
Arguments¶
INPUT_PATHS¶
Required argument(s)
ipfs¶
Upload files to IPFS using Pinata provider.
algokit task ipfs [OPTIONS] COMMAND [ARGS]...
login¶
Login to Pinata ipfs provider. You will be prompted for your JWT.
algokit task ipfs login [OPTIONS]
logout¶
Logout of Pinata ipfs provider.
algokit task ipfs logout [OPTIONS]
upload¶
Upload a file to Pinata ipfs provider. Please note, max file size is 100MB.
algokit task ipfs upload [OPTIONS]
Options¶
-f, --file ¶
Required Path to the file to upload.
-n, --name ¶
Human readable name for this upload, for use in file listings.
mint¶
Mint new fungible or non-fungible assets on Algorand.
algokit task mint [OPTIONS]
Options¶
--creator ¶
Required Address or alias of the asset creator.
-n, --name ¶
Required Asset name.
-u, --unit ¶
Required Unit name of the asset.
-t, --total ¶
Total supply of the asset. Defaults to 1.
-d, --decimals ¶
Number of decimals. Defaults to 0.
-i, --image ¶
Required Path to the asset image file to be uploaded to IPFS.
-m, --metadata ¶
Path to the ARC19 compliant asset metadata file to be uploaded to IPFS. If not provided, a default metadata object will be generated automatically based on asset-name, decimals and image. For more details refer to https://arc.algorand.foundation/ARCs/arc-0003#json-metadata-file-schema.
--mutable, --immutable¶
Whether the asset should be mutable or immutable. Refers to ARC19 by default.
--nft, --ft¶
Whether the asset should be validated as NFT or FT. Refers to NFT by default and validates canonical definitions of pure or fractional NFTs as per ARC3 standard.
-n, --network ¶
Network to use. Refers to localnet by default.
-
Options
localnet | testnet | mainnet
nfd-lookup¶
Perform a lookup via NFD domain or address, returning the associated address or domain respectively.
algokit task nfd-lookup [OPTIONS] VALUE
Options¶
-o, --output
Output format for NFD API response. Defaults to address|domain resolved.
-
Options
full | tiny | address
Arguments¶
VALUE¶
Required argument
opt-in¶
Opt-in to an asset(s). This is required before you can receive an asset. Use -n to specify localnet, testnet, or mainnet. To supply multiple asset IDs, separate them with a whitespace.
algokit task opt-in [OPTIONS] ASSET_IDS...
Options¶
-a, --account ¶
Required Address or alias of the signer account.
-n, --network ¶
Network to use. Refers to localnet by default.
-
Options
localnet | testnet | mainnet
Arguments¶
ASSET_IDS¶
Required argument(s)
opt-out¶
opt-out of an asset(s). You can only opt out of an asset with a zero balance. Use -n to specify localnet, testnet, or mainnet. To supply multiple asset IDs, separate them with a whitespace.
algokit task opt-out [OPTIONS] [ASSET_IDS]...
Options¶
-a, --account ¶
Required Address or alias of the signer account.
--all¶
Opt-out of all assets with zero balance.
-n, --network ¶
Network to use. Refers to localnet by default.
-
Options
localnet | testnet | mainnet
Arguments¶
ASSET_IDS¶
Optional argument(s)
send¶
Send a signed transaction to the given network.
algokit task send [OPTIONS]
Options¶
-f, --file ¶
Single or multiple message pack encoded signed transactions from binary file to send. Option is mutually exclusive with transaction.
-t, --transaction ¶
Base64 encoded signed transaction to send. Option is mutually exclusive with file.
-n, --network ¶
Network to use. Refers to localnet by default.
-
Options
localnet | testnet | mainnet
sign¶
Sign goal clerk compatible Algorand transaction(s).
algokit task sign [OPTIONS]
Options¶
-a, --account ¶
Required Address or alias of the signer account.
-f, --file ¶
Single or multiple message pack encoded transactions from binary file to sign. Option is mutually exclusive with transaction.
-t, --transaction ¶
Single base64 encoded transaction object to sign. Option is mutually exclusive with file.
-o, --output
The output file path to store signed transaction(s).
--force¶
Force signing without confirmation.
transfer¶
Transfer algos or assets from one account to another.
algokit task transfer [OPTIONS]
Options¶
-s, --sender ¶
Required Address or alias of the sender account.
-r, --receiver ¶
Required Address or alias to an account that will receive the asset(s).
--asset, --id ¶
Asset ID to transfer. Defaults to 0 (Algo).
-a, --amount ¶
Required Amount to transfer.
--whole-units¶
Use whole units (Algos | ASAs) instead of smallest divisible units (for example, microAlgos). Disabled by default.
-n, --network ¶
Network to use. Refers to localnet by default.
-
Options
localnet | testnet | mainnet
vanity-address¶
Generate a vanity Algorand address. Your KEYWORD can only include letters A - Z and numbers 2 - 7. Keeping your KEYWORD under 5 characters will usually result in faster generation. Note: The longer the KEYWORD, the longer it may take to generate a matching address. Please be patient if you choose a long keyword.
algokit task vanity-address [OPTIONS] KEYWORD
Options¶
-m, --match ¶
Location where the keyword will be included. Default is start.
-
Options
start | anywhere | end
-o, --output
How the output will be presented.
-
Options
stdout | alias | file
-a, --alias ¶
Alias for the address. Required if output is "alias".
--file-path ¶
File path where to dump the output. Required if output is "file".
-f, --force¶
Allow overwriting an aliases without confirmation, if output option is 'alias'.
Arguments¶
KEYWORD¶
Required argument
wallet¶
Create short aliases for your addresses and accounts on AlgoKit CLI.
algokit task wallet [OPTIONS] COMMAND [ARGS]...
add¶
Add an address or account to be stored against a named alias (at most 50 aliases).
algokit task wallet add [OPTIONS] ALIAS_NAME
Options¶
-a, --address ¶
Required The address of the account.
-m, --mnemonic¶
If specified then prompt the user for a mnemonic phrase interactively using masked input.
-f, --force¶
Allow overwriting an existing alias.
Arguments¶
ALIAS_NAME¶
Required argument
get¶
Get an address or account stored against a named alias.
algokit task wallet get [OPTIONS] ALIAS
Arguments¶
ALIAS¶
Required argument
list¶
List all addresses and accounts stored against a named alias.
algokit task wallet list [OPTIONS]
remove¶
Remove an address or account stored against a named alias.
algokit task wallet remove [OPTIONS] ALIAS
Options¶
-f, --force¶
Allow removing an alias without confirmation.
Arguments¶
ALIAS¶
Required argument
reset¶
Remove all aliases.
algokit task wallet reset [OPTIONS]
Options¶
-f, --force¶
Allow removing all aliases without confirmation.