Skip documentation navigation

Build a module

Build and submit a reusable program with its source, configuration, wallet declarations and management controls.

Module Mode starts with a simple coin and adds optional programs. A contribution can provide its own logic, state and management actions, or propose a new market engine. Its required host capabilities and compatible configurations are part of the review.

For product settings, read Module Mode. For terminal integration, read Index Module Mode launches.

Get started

  1. Connect your EVM wallet on API keys and create a key with Launches + modules access.
  2. Choose Copy connection and give it to your agent. It includes the key and instructions for finding the API guide and pinned CLI manifest. Verify the file hash from that manifest before running the standalone CLI with Node.js 24.14 or later in the Node 24 line.
  3. Provide your idea, author wallet and reward wallet. Keep the API key in the agent's PROGRAMMABLE_MODULES_API_KEY secret environment.
  4. Build and test the module, prepare its exact source request, submit it, then keep the returned ID. Use review-status-module to follow its build, review feedback and next step.

A GitHub repository or pull request is optional. The API receives the complete, hash-bound source package directly.

Your module package

Identity
Name, explicit version, stable module family, EVM author and EVM reward wallet.
Source
Every required source file and its SHA-256. Optional Git provenance includes both the repository and exact revision.
Configuration
Typed fields, units, defaults in the host catalog, limits and compatibility conditions.
Capabilities
Required runtime, contracts, dependencies, resources, funding and failure behavior.
Management
Reads, actions, input schemas, authorized roles and instructions for any controls your module needs.

The author must match the wallet that owns the API key. The reward wallet may be different. Both must be nonzero EVM addresses. Repeated helper contracts or instances do not create extra author shares.

Submit and track

Use https://api.programmable.market and read the live capabilities before uploading. An absent or disabled capability means this deployment is not accepting contributions.

Capabilities
GET /v1/modules/capabilities
Submit source
POST /v1/modules/submissions
Your submissions
GET /v1/modules/submissions
One submission
GET /v1/modules/submissions/:id
Review readiness
GET /v1/modules/review-capabilities
Build and review progress
GET /v1/modules/submissions/:id/review

Module keys carry modules:submit and modules:read. Use one stable idempotency key for each exact request. If a connection fails, retry the same saved request and key. Changed source becomes a new immutable revision.

Read the complete API and CLI guide · Standalone CLI

Review and availability

The intake API stores an unreviewed source draft. Its draft_received receipt proves that the exact package was saved. It does not execute the uploaded source or approve the module.

The separate review status follows the operator's build plan, queued build, result and reviewer decision. Read its nextAction: wait for the build or decision, apply requested changes in a new source version, or wait for registry admission after acceptance. The review capability must be enabled before these private progress reads are available.

status-module keeps the historical intake receipt. review-status-module reads current progress with your existing Module contributions key. An accepted review is followed by registry admission and catalog activation.

The first native Solidity build profile accepts up to 4 MiB of packaged source, dependencies and documentation. Intake can store larger packages; a successful upload does not establish compatibility with this build profile.

Public availability needs a reproducible build, the required security and compatibility checks, a reviewed version, exact deployed code and an active catalog binding. A new version does not silently change existing coins. Modules that need a new host capability include that extension in their review.

Author rewards

The native ETH engine charges 0.20% in protocol fees in addition to the creator's selected fee. Half is for Programmable and half is shared equally among the distinct, eligible module families used by the coin. Eligibility and attribution are bound during review.

Without eligible module families, the protocol receives the full protocol fee.

Rewards arise from actual qualifying fees. Submitting a wallet or receiving a draft ID does not create a payout. Module operating budgets and already earned claims remain separate from the creator's personal fee recipient.

Open the Module Mode builder