Introduction
Cowboy is a Layer 1 blockchain designed from the ground up for autonomous agents and verifiable off-chain computation. This document provides a high-level overview of the system architecture.Note: API names in diagrams and examples reflect the realpvm_hostandcowboy_sdksurface. See the SDK Overview and CIP specifications for authoritative behavior.
System Architecture

Core Components
1. Actor VM (Python Runtime)
Purpose: Execute actor (smart contract) code deterministically Key Features:- Python bytecode interpreter (no JIT)
- Deterministic execution (no system calls, software FPU)
- Dual-metered gas (Cycles for compute, Cells for data)
- Sandboxed environment (no I/O, no network)
cowboy_sdk) sits on top of pvm_host, providing an @actor decorator, CBOR auto-serialization, and a continuation FSM for async runner calls.
See: Actor VM Overview · SDK Overview
2. Consensus Layer (Simplex BFT)
Purpose: Achieve agreement on block ordering and finality Key Features:- Byzantine Fault Tolerant (BFT)
- Deterministic finality (no reorgs)
- Leader-based block proposal
- Quorum certificates (QC) for votes
- Safety: No forks (deterministic finality)
- Liveness: Progress guaranteed with 2/3+ honest validators
3. Dual-Metered Gas System
Purpose: Fair resource pricing for compute and data Architecture:- Each resource has its own basefee
- Basefees adjust independently (dual EIP-1559)
- Prevents cross-subsidization
4. Timer Scheduler (CIP-1)
Purpose: Native timer scheduling with autonomous execution Architecture:- Actor schedules a timer (conceptual API; CIP-1 requires specifying a Gas Bidding Agent)
- Timer stored in calendar queue
- At trigger block:
- Query GBA for bid
- Add to priority queue
- Execute highest bids first (within budget)
5. Off-Chain Compute (CIP-2)
Purpose: Verifiable execution of AI models, API calls, heavy computation Architecture:@runner.continuation function in the SDK. The code before await runner.*(...) submits the job; the code after the await runs later when the result arrives.
See: Off-Chain Compute
6. Encrypted Distributed Storage (CBFS)
Purpose: Store data too large for on-chain persistence — models, datasets, media, logs — with end-to-end encryption and redundancy. Architecture:- Client-side encryption — storage nodes never see plaintext
- Reed-Solomon erasure coding —
Kdata +Mparity shards, recover from anyK - Delegated auth — owner signs short-lived capability tokens; no chain write on every data-plane call
- Self-healing — background repair detects dead nodes and re-shards
- FUSE mount — volumes appear as normal filesystems to actors and runners
The Actor VM still forbids ordinary file I/O during deterministic execution. CBFS access is mediated by protocol/runtime APIs and delegated capability tokens; runner-side jobs may use mounted volumes, while actor state remains the consensus key-value store.
Transaction Lifecycle
State Organization
σ' = STF(σ, B) where B is block
Network Layer
P2P Network:- Gossip protocol for transaction propagation
- Block proposal distribution
- Vote (QC) aggregation
- State synchronization
- Validator: Participates in consensus, proposes/validates blocks
- Full Node: Stores full state, serves queries
- Light Client: Only block headers, verifies proofs
- Runner: Executes off-chain tasks (not part of consensus)
Storage Layer
Components:-
State Storage:
- Merkleized key-value store
- Key: account/actor address + storage key
- Value: serialized data
- Root hash in block header
-
Block Storage:
- Sequential blocks
- Headers + transactions
- Indexed by height and hash
-
Transaction Log:
- All transactions (historical)
- Receipts with events
- Queryable by hash, block, address
-
Archive Node (optional):
- Full historical state
- Every block’s complete state
- For queries like “balance at block X”
Security Model
Threat Model:- Byzantine validators (up to 1/3)
- Malicious actors (smart contracts)
- DoS attacks (computational, storage)
- Network attacks (eclipse, Sybil)
-
Consensus Security:
- BFT tolerance (2/3+ honest required)
-
VM Security:
- Sandboxed execution (no I/O)
- Resource limits (cycles, cells, memory)
- Deterministic execution (no non-determinism)
-
Gas Economics:
- Dual-metered prevents abuse
- Basefee burn (anti-spam)
- Priority market (fair access)
-
Off-Chain Security:
- VRF-based selection (no coordinator)
- Configurable verification requirements (per CIP-2)
- Economic incentives (per application design)
Performance and Governance
Performance metrics, governance processes, and network parameters are implementation-dependent and subject to change. Refer to authoritative releases and CIPs for normative updates when available.Next Steps
Actor VM Deep Dive
How the PVM achieves deterministic Python execution
Fee Model
Dual-metered gas and EIP-1559 basefees
Scheduler
Native timer system (CIP-1)
Off-Chain Compute
Verifiable runner network (CIP-2)
State Storage
QMDB state store + Merkle proofs (CIP-4)
SDK Overview
The
cowboy_sdk Python library (CIP-6)
