Practical overview
When it fits
Use it when building Rust-based CosmWasm contract tests or scripts and when you want typed interfaces that can be reused across integration work and supported environments.
Who it is for
- Rust developers working with CosmWasm contracts.
- Teams building repeatable contract tests, deployment scripts or integrations across multiple contracts.
Documented uses
- Generate compile-time-checked interfaces for contract messages.
- Upload, instantiate, execute and query contracts through a Rust interface.
- Reuse contract workflows across cw-multi-test and test or mainnet deployment contexts.
- Generate direct helper methods for execute and query message variants.
Requirements & limits
- The tool is Rust-based and targets CosmWasm contract workflows.
- Installation requires external tools; consult the project installation guide for prerequisites.
- The README says versions 0.25.0 and later are compatible with CosmWasm 2.x.
- The repository metadata lists GPL-3.0, while the README describes LGPL-3.0 for current versions and GPL-3.0 through v0.25.0; verify the license for the version selected.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Create and use a typed CosmWasm contract interface in a mock test
Define a typed interface for a contract, upload and instantiate it on a cw-multi-test mock, then query a balance.
Before you start
- A Rust CosmWasm contract with its instantiate, execute, query, and migrate message types.
- cw-orchestrator and the dependencies needed for its use.
- A contract wrapper implementing the Uploadable trait.
Steps
Pass the contract message types to the
cw_orch::interfacemacro, in the order Instantiate, Execute, Query, Migrate, and define a struct for the contract.Implement
Uploadablefor the interface using aContractWrapperthat references the contract’s execute, instantiate, query, and migrate functions.Create a sender address and a
Mockchain, then construct the contract interface with a name and that chain.Upload the contract, instantiate it with an initialization message, query the sender’s balance, and assert the returned balance.
Expected outcome
A mock-chain test exercises contract upload, instantiation, and a typed balance query.
Guide limitations
- The example uses a CW20 contract and cw-multi-test mock; it does not document deployment to a live network.
- The repository notes that versions 0.25.0 and later are compatible with CosmWasm 2.x; migration guidance is separate.
- The repository states that the software is provided as-is without guarantees.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 9 October 2026
- Original website title
- AbstractSDK/cw-orchestrator · Official homepage title · retained in its source language

