Skip to main content

Vision

The Cowboy CLI (cowboy) is the primary tool for developers building on the Cowboy blockchain. It handles project scaffolding, wallet management, actor development, token operations, data feeds, and deployment — all from a single binary. Design principles:
  • Zero-config startcowboy init dev creates project config and a devnet wallet in one command.
  • Convention over configuration — Keys live in .cowboy/, actors live in actors/, and the CLI finds them automatically.
  • Explicit over magic — Every command shows what it does. No hidden state, no surprise network calls.
  • Network-aware — Commands target local or dev. The network choice affects defaults (RPC URL, faucet, chain ID).

Command Overview

All commands that need a private key or RPC URL use auto-discovery.

Project Structure

After cowboy init dev, the project has CLI configuration. Actor files are created separately with cowboy actor new <name>:

Key conventions

  • .cowboy/keys/<network> — Per-environment secp256k1 private key (PEM). Never overwritten by re-running cowboy init.
  • .cowboy/config.json{ "active": "<network>", "environments": { ... } }. Each environment stores rpc_url, key_file, optional watchtower_registry and optional identity.
  • actors/ — Each subdirectory is one actor. Created on demand by cowboy actor new <name>; not part of cowboy init.

Networks

Zero-Config Workflow

After running cowboy init dev and scaffolding an actor, commands use the discovered key and RPC URL:
Explicit --private-key and --rpc-url flags still work and take priority. See individual spec files for detailed behavior: