用途:运行 Cartridge Controller CLI(controller-cli),创建带作用域、需人工批准的会话,并通过该会话执行 Starknet 交易。适用于以显式网络和最小权限策略操作 Cartridge Controller 会话,以及运行 controller 或 controller_safe.py 执行人工批准的 Starknet 交易。不适用于不依赖 Cartridge Controller 的通用 Starknet 脚本,也不适用于合约编写、测试、部署或安全审计。
主要能力:生成密钥对、查看会话状态、注册会话、执行单笔或多笔调用、只读调用、查询交易状态、按用户名或地址查找。
使用方式:安装命令为 curl -fsSL https://raw.githubusercontent.com/cartridge-gg/controller-cli/main/install.sh | bash,随后 export PATH="$PATH:$HOME/.local/bin" 并 controller --version。推荐使用包装脚本 python3 scripts/controller_safe.py status 等。流程为 controller generate --json、controller status --json、controller register(需人工浏览器批准,可用 --preset 或 --file policy.json)、controller execute、controller call、controller transaction、controller lookup。
限制与规则:始终传 --json 并按 JSON 处理输出;必须显式指定 --chain-id SN_MAIN|SN_SEPOLIA 或 --rpc-url;register 需人工浏览器授权,不可自动化或绕过;仅用最小权限策略,未明确要求不得添加代币转账权限;交易链接仅用 Voyager。默认使用 paymaster,不可用时交易失败,无静默回退;自付需 --no-paymaster。u256 金额拆为 low、high,多数情况 high=0x0。错误为 JSON,需按 error_code 分支并遵循 recovery_hint。地址须为 0x 前缀十六进制。