Contributing
VirtEngine is written in Go and licensed Apache 2.0. Contributions are welcome — whether that means providing feedback, testing existing and new features, or hacking on the source.
Before you start
Section titled “Before you start”- Read
CONTRIBUTING.mdin the repository — it is the authoritative guide to becoming a contributor. - Set up the development environment
and make sure
make virtenginebuilds cleanly for you. - The repository ships active development from
main; release automation and version helpers exist for tagged releases.
Licensing and patents
Section titled “Licensing and patents”Good first contribution surfaces
Section titled “Good first contribution surfaces”| Area | Why it’s approachable |
|---|---|
Module tests (x/<module>/**_test.go) | Well-established patterns; high review confidence |
Documentation (docs/, _docs/) | The repo maintains extensive in-tree docs with standards (docs/AGENTS_STANDARDS.md) |
Economics simulations (pkg/economics/) | Self-contained, thoroughly unit-tested framework |
| CLI spec validation | Spec formats are versioned and documented (docs/hpc-cli-specs.md) |
| SDK / portal workspaces | Standard pnpm TypeScript projects |
Quality expectations
Section titled “Quality expectations”- Tests accompany behavior changes; the repository runs a quality gate on
pushes to
main(see the badge in the README). - Keep changes deterministic — this is consensus code; nondeterminism across platforms is a chain-halting bug class.
- Sensitive areas (settlement, escrow, VEID, encryption) receive correspondingly deeper review; expect it and write for it.
Related projects
Section titled “Related projects”- Bosun — the AI agent orchestrator used in VirtEngine development.
- The protocol’s lineage includes source derived from the Akash Network marketplace; understanding upstream Cosmos SDK and CometBFT conventions will make your contributions land faster.