Argent
Argent - an actor-based language by Michael Sutton that compiles to SilverScript for multi-contract covenant apps on Kaspa.Argent is an actor-based language and compiler for building stateful, multi-contract applications on Kaspa’s covenant rails, by Michael Sutton. .ag source compiles to plain SilverScript - not macros - so the generated contracts remain auditable.
Where SilverScript is the covenant language itself, Argent is a layer above it: a frontend for structuring a whole application as a set of communicating covenant state machines, hiding low-level mechanics (template hashing, prefix/suffix witnesses, authorization plumbing) that otherwise have to be hand-written per contract.
Note - unrelated to the Ethereum wallet of the same name.
The actor model
- An actor owns persistent covenant state, declared once with a
stateblock of typed fields. Each runtime instance is identified by its covenant ID. - An app is a compile-time domain of actors. One app can have many covenant IDs; one covenant ID belongs to one app.
entrydeclares a callable transition path (a contract method) with typed parameters.becometail-dispatches into the actor’s successor state; everybecomeroute must be allowed by the entry’semitsdeclaration, which restricts the authorized output shape.consumesreads peer actors in the same transaction,observesconnects to existing covenants, andspawnscreates new covenant instances with genesis verification - the pieces for atomic multi-contract composition.selfexposes the actor’s own context (self.value,self.state,self.cov_id) without raw transaction access.
Compilation
The compiler runs three stages: graph classification (actor relationships and family policies), commitment planning (deterministic template forests and route cuts), then lowering to SilverScript (fields, witnesses, hashes, validation code). Application logic stays as explicit require(...) conditions in source; the generated code enforces the mechanical covenant invariants.
Status
Under active development and not release-ready (as of July 2026). Core components exist - compiler, artifacts, a Rust runtime (argent-runtime) for building transactions, routing - but the project is gated on SilverScript’s audit completion and further hardening before production use.
Resources
- Argent GitHub repository - link
- Design doc - link
- Inter-covenant communication (ICC) semantics - link
- argent-playground - end-to-end examples: multi-actor apps, ICC, assets, DEX flows, Rust transaction construction.
- argent-template - minimal starter template.