Open Audio Protocol Development
The Open Audio Protocol (OAP) is the global music database: a decentralized protocol for storage, streaming, and programmable distribution of music. This skill helps you build on the protocol layer directly.
If the user wants to build a music app using ready-made REST APIs and SDKs, point them to the audius-api skill instead — Audius is an application layer built on OAP that provides a faster path for frontend/app development.
When to use OAP directly vs Audius
| Goal |
Use |
| Music player, app, frontend (fast path) |
Audius API + SDK → see audius-api skill |
| Self-hosted indexer and API (no Audius dependency) |
go-openaudio (this skill) |
| Run a validator node |
go-openaudio (this skill) |
| Protocol integration, custom distribution |
go-openaudio SDK + ddex-proto (this skill) |
| Artist coins, reward pools |
Solana programs + OAP docs (this skill) |
Architecture
OAP runs as a single Docker container (openaudio/go-openaudio) combining:
- Core: CometBFT-based consensus and sync
- Mediorum: Content storage (audio files, metadata)
- ETH Bridge: Ethereum L1 registry sync (staking, node registration)
Wire Protocol
OAP extends DDEX with cryptographic primitives for permissionless operation. Implemented in protobuf via ddex-proto. Three message types:
- ERN (Electronic Release Notification): Parties, resources, releases, deals
- MEAD (Media Enrichment and Description): Mood, genre, lyrics
- PIE (Party Identification and Enrichment): Biographical data, social links
Key Components
| Component |
Purpose |
Ports |
| Core |
Consensus, blocks, transactions |
26656 (P2P), 26657 (RPC), 26659 (API) |
| Mediorum |
Blob storage, transcoding |
1991 |
| ETH Bridge |
Ethereum registry sync |
— |
| API |
gRPC/Connect services |
50051 |
| Console |
Web UI (blocks, nodes, uptime) |
/console/ |
Quickstart
docker run --rm -it \
-p 80:80 -p 443:443 -p 26656:26656 \
-e OPENAUDIO_TLS_SELF_SIGNED=true \
-e OPENAUDIO_STORAGE_ENABLED=false \
openaudio/go-openaudio:stable
Then visit https://localhost/console/overview.
For detailed setup instructions
Read the reference files in this skill:
references/validator-setup.md — Full validator and RPC node setup, including hardware specs, keypair generation, Docker Compose config, blob storage providers, and on-chain registration
references/local-dev.md — Local devnet setup, development workflow, build commands, and example programs
references/protocol-concepts.md — Staking, governance, artist coins, media storage, moderation, and $AUDIO token details
Key Links
Important
- Minimum validator bond: 200,000 $AUDIO
- Health check:
GET /health-check returns JSON with live, ready, core, and storage status
- The Go SDK lives in
pkg/sdk/ within go-openaudio (sdk.go, release.go, rewards/, mediorum/)
- For Audius REST API / JavaScript SDK development, use the
audius-api skill instead
1---2name: openaudio3description: Build on the Open Audio Protocol — the decentralized global music database. Use this skill whenever the user mentions Open Audio Protocol, OAP, go-openaudio, running validator nodes, protocol-level music infrastructure, decentralized music storage, DDEX wire protocol, $AUDIO staking, artist coins, mediorum, or self-hosted music indexing. Also use when the user wants to run a devnet, build directly against the protocol without Audius APIs, or integrate with OAP consensus/storage layers.4---56# Open Audio Protocol Development78The Open Audio Protocol (OAP) is the global music database: a decentralized protocol for storage, streaming, and programmable distribution of music. This skill helps you build on the protocol layer directly.910If the user wants to build a music app using ready-made REST APIs and SDKs, point them to the `audius-api` skill instead — Audius is an application layer built on OAP that provides a faster path for frontend/app development.1112## When to use OAP directly vs Audius1314| Goal | Use |15|------|-----|16| Music player, app, frontend (fast path) | Audius API + SDK → see `audius-api` skill |17| Self-hosted indexer and API (no Audius dependency) | go-openaudio (this skill) |18| Run a validator node | go-openaudio (this skill) |19| Protocol integration, custom distribution | go-openaudio SDK + ddex-proto (this skill) |20| Artist coins, reward pools | Solana programs + OAP docs (this skill) |2122## Architecture2324OAP runs as a single Docker container (`openaudio/go-openaudio`) combining:25- **Core**: CometBFT-based consensus and sync26- **Mediorum**: Content storage (audio files, metadata)27- **ETH Bridge**: Ethereum L1 registry sync (staking, node registration)2829### Wire Protocol3031OAP extends DDEX with cryptographic primitives for permissionless operation. Implemented in protobuf via `ddex-proto`. Three message types:32- **ERN** (Electronic Release Notification): Parties, resources, releases, deals33- **MEAD** (Media Enrichment and Description): Mood, genre, lyrics34- **PIE** (Party Identification and Enrichment): Biographical data, social links3536### Key Components3738| Component | Purpose | Ports |39|-----------|---------|-------|40| Core | Consensus, blocks, transactions | 26656 (P2P), 26657 (RPC), 26659 (API) |41| Mediorum | Blob storage, transcoding | 1991 |42| ETH Bridge | Ethereum registry sync | — |43| API | gRPC/Connect services | 50051 |44| Console | Web UI (blocks, nodes, uptime) | /console/ |4546## Quickstart4748```bash49docker run --rm -it \50 -p 80:80 -p 443:443 -p 26656:26656 \51 -e OPENAUDIO_TLS_SELF_SIGNED=true \52 -e OPENAUDIO_STORAGE_ENABLED=false \53 openaudio/go-openaudio:stable54```5556Then visit `https://localhost/console/overview`.5758## For detailed setup instructions5960Read the reference files in this skill:6162- **`references/validator-setup.md`** — Full validator and RPC node setup, including hardware specs, keypair generation, Docker Compose config, blob storage providers, and on-chain registration63- **`references/local-dev.md`** — Local devnet setup, development workflow, build commands, and example programs64- **`references/protocol-concepts.md`** — Staking, governance, artist coins, media storage, moderation, and $AUDIO token details6566## Key Links6768| Resource | URL |69|----------|-----|70| Docs | https://docs.openaudio.org |71| GitHub | https://github.com/OpenAudio/go-openaudio |72| Docker Hub | https://hub.docker.com/r/openaudio/go-openaudio/tags |73| Dashboard (register nodes) | https://dashboard.audius.org/#/nodes |74| Staking | https://staking.openaudio.org |75| Explorer | https://explorer.openaudio.org |76| Wire protocol docs | https://docs.openaudio.org/concepts/wire-protocol |77| Run a Node tutorial | https://docs.openaudio.org/tutorials/run-a-node |7879## Important8081- Minimum validator bond: 200,000 $AUDIO82- Health check: `GET /health-check` returns JSON with `live`, `ready`, core, and storage status83- The Go SDK lives in `pkg/sdk/` within go-openaudio (`sdk.go`, `release.go`, `rewards/`, `mediorum/`)84- For Audius REST API / JavaScript SDK development, use the `audius-api` skill instead