id = "starkli"
name = "Starkli"
homepage = "https://book.starkli.rs"
description = "Starkli is a command line tool for interacting with Starknet, powered by starknet-rs."
executables = ["starkli"]
[dotfiles]
paths = ["[configHome]/starkli/profiles.toml"]
exclude = []
secret = []
side_effect = false
[[dotfiles.secret_paths]]
file = "[configHome]/starkli/profiles.toml"
match = { key_path = ["*.networks.*.provider.headers.*.value"] }
[commands]
format = 1
label = "Starkli"
description = "Read-only contract calls and chain queries against a Starknet node. Transactions, declarations and account management are left out."
quality = "ai-draft"
base = "fig:starkli"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/starkli.ts"
license = "MIT"
[[commands.subcommand]]
path = ["call"]
label = "Call a contract function"
description = "Call a contract function without sending a transaction."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/starkli.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "address"
label = "Contract address"
type = "string"
position = 0
description = "Contract address."
sources = ["fig"]
[[commands.subcommand.field]]
id = "selector"
label = "Function name"
type = "string"
position = 1
description = "Name of the function being called."
sources = ["fig"]
[[commands.subcommand.field]]
id = "calldata"
label = "Calldata"
type = "string"
position = 2
description = "Raw function call arguments."
multiple = true
sources = ["fig"]
[[commands.subcommand.field]]
id = "rpc"
label = "RPC endpoint"
type = "url"
option = ["--rpc"]
description = "Starknet JSON-RPC endpoint."
sources = ["fig"]
[[commands.subcommand.field]]
id = "network"
label = "Network"
type = "string"
option = ["--network"]
description = "Starknet network."
suggestions = [{ value = "mainnet", label = "mainnet" }, { value = "goerli-1", label = "goerli-1" }, { value = "goerli-2", label = "goerli-2" }, { value = "integration", label = "integration" }]
sources = ["fig"]
[[commands.subcommand.field]]
id = "log_traffic"
label = "Log traffic"
type = "boolean"
option = ["--log-traffic"]
description = "Log raw request/response traffic."
sources = ["fig"]
[[commands.subcommand.task]]
id = "call"
label = "Call"
fields = ["address", "selector", "calldata", "rpc", "network"]
required = ["address", "selector"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["address", "selector", "calldata", "rpc", "network"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["log_traffic"]
[[commands.subcommand]]
path = ["block-number"]
label = "Latest block number"
description = "Get the latest block number."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/starkli.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "rpc"
label = "RPC endpoint"
type = "url"
option = ["--rpc"]
description = "Starknet JSON-RPC endpoint."
sources = ["fig"]
[[commands.subcommand.task]]
id = "number"
label = "Block number"
fields = ["rpc"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["rpc"]