MCPcopy Index your code
hub / github.com/akash-network/provider

github.com/akash-network/provider @v0.16.0-a4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.16.0-a4 ↗ · + Follow
3,896 symbols 12,723 edges 392 files 1,125 documented · 29% 59 cross-repo links updated 1d agov0.14.2 · 2026-07-02★ 178
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Akash Provider Daemon

tests

The Akash Provider is a critical component of the Akash Network, responsible for offering compute resources to the decentralized marketplace. It handles the entire lifecycle of resource bidding, deployment management, and workload orchestration on Kubernetes clusters. For a deeper understanding of the code base Ask DeepWiki

This folder contains the Akash Provider Daemon. This piece of software listens to events emitted from the Akash blockchain (code in ../app/app.go) and takes actions on a connected Kubernetes cluster to provision compute capacity based on the bids that the configured provider key wins. The following are the pieces of the daemon:

Development environment

This doc guides through setting up local development environment

Structure

bidengine

The bid engine queries for any existing orders on chain, and based on the on-chain provider configuration, places bids on behalf of the configured provider based on configured selling prices for resources. The daemon listens for changes in the configuration so users can use automation tooling to dynamically change the prices they are charging w/o restarting the daemon. You can see the key management code for provider tx signing in cmd/run.go.

cluster

The cluster package contains the necessary code for interacting with clusters of compute that a provider is offering on the open marketplace to deploy orders on behalf of users creating deployments based on manifests. Right now only kubernetes is supported as a backend, but providers could easily implement other cluster management solutions such as OpenStack, VMWare, OpenShift, etc...

cmd

The cobra command line utility that wraps the rest of the code here and is buildable.

event

Declares the pubsub events that the provider needs to take action on won leases and received manifests.

gateway

Contains hanlder code for the rest server exposed by the provider

manifest

Extension points exported contracts — how you extend this code

GenericInformer (Interface)
GenericInformer is type of SharedIndexInformer which will locate and delegate to other sharedInformers based on type [6 …
pkg/client/informers/externalversions/generic.go
RoleBinding (Interface)
RoleBinding is a builder for creating or updating a Kubernetes RoleBinding. The builder always creates RoleBindings wit [10 …
cluster/kube/builder/rolebinding.go
Provider (Interface)
Provider abstracts TEE-specific attestation report collection. [5 implementers]
sidecar/attestation/tee/tee.go
Cluster (Interface)
Cluster is the interface that wraps Reserve and Unreserve methods [5 implementers]
cluster/service.go
CertIssuer (Interface)
(no doc) [13 implementers]
tools/certissuer/lego.go
Waitable (Interface)
(no doc) [6 implementers]
operator/waiter/waiter.go
ReadClient (Interface)
(no doc) [6 implementers]
cluster/client.go
ReservationGroup (Interface)
(no doc) [7 implementers]
cluster/types/v1beta3/reservation.go

Core symbols most depended-on inside this repo

Error
called by 388
utils/httperror/httperror.go
Get
called by 377
verification/poster/state.go
String
called by 301
operator/waiter/waiter.go
Done
called by 224
cluster/service.go
Run
called by 176
migrations/migrations.go
Return
called by 154
mocks/cluster/Client_mock.go
String
called by 99
cluster/types/v1beta3/clients/ip/ip.go
Len
called by 94
tools/certissuer/lego.go

Shape

Method 2,030
Function 1,095
Struct 583
Interface 135
TypeAlias 40
FuncType 12
Class 1

Languages

Go100%
Python1%
C1%

Modules by API surface

mocks/cluster/Client_mock.go149 symbols
pkg/apis/akash.network/v2beta2/zz_generated.deepcopy.go102 symbols
mocks/cluster/ReadClient_mock.go70 symbols
mocks/cluster/Service_mock.go64 symbols
cluster/client.go60 symbols
mocks/cluster/types/Reservation_mock.go46 symbols
mocks/cluster/kube/operators/clients/metallb/Client_mock.go46 symbols
tools/certissuer/storage.go41 symbols
mocks/client/Client_mock.go40 symbols
cluster/types/v1beta3/types.go35 symbols
cluster/types/v1beta3/clients/ip/ip.go35 symbols
cluster/kube/operators/clients/metallb/client.go35 symbols

For agents

$ claude mcp add provider \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact