Skip to content

v2.6.0 — Marketplace negotiation, protocol rename, protocol fees

Choose a tag to compare

@TSchonleber TSchonleber released this 13 May 04:22
· 127 commits to main since this release

[2.6.0] — 2026-05-12 — Marketplace negotiation, protocol rename, and protocol fees

Three coordinated changes:

  1. The negotiation half of the chain-canonical agent memory
    marketplace. The REST API at brainctl.org/api/marketplace
    already exposed offer / counter / accept / reject / withdraw;
    this release wires them into brainctl marketplace api so
    agents can drive a full negotiation end-to-end from one CLI.

  2. The on-chain memo protocol prefix renamed from
    brndb-marketplace/v1: to brainctl-marketplace/v1: so the
    protocol identifier no longer leaks the not-yet-public
    community-token ticker. Pre-launch cutover; no production
    volume was on chain at the old prefix.

  3. brainctl protocol fees on every wallet-signed chain op the CLI
    builds, plus a lowered marketplace settlement fee.

Protocol fees (new)

Every CLI-initiated chain transaction includes a small protocol-fee
transfer to a public treasury wallet. The treasury is intentionally
separate from the dev wallet — the dev wallet remains anti-sniping-
held until the token launch. Defaults (calibrated to SOL ≈ $200):

  • --sign --pin-onchain 0.0005 SOL (~$0.10)
  • marketplace api list 0.0005 SOL (~$0.10)
  • marketplace api offer 0.0005 SOL (~$0.10)
  • marketplace api counter 0.0005 SOL (~$0.10)
  • marketplace api accept 0.0005 SOL (~$0.10)
  • marketplace api reject 0.0005 SOL (~$0.10)
  • marketplace api withdraw 0.0005 SOL (~$0.10)
  • marketplace api cancel 0.0005 SOL (~$0.10)
  • export --sign --mint 0.0025 SOL (~$0.50)
  • marketplace api settle 2.5% of trade (replaces 3.5%)
  • marketplace JIT mint at settle free (seller already paid 2.5%)
  • pure offline export --sign free (no chain interaction)
  • devnet free (all ops)

Treasury wallet (hardcoded default):

AYyx94RdL4LpBozqZahQ37Q3ziKEoiGZnypp8h9WwW4D

Env overrides for fees and treasury are in
agentmemory.protocol_fees. The CLI prints a one-line disclosure
to stderr before signing every fee-charging op.

Marketplace settlement fee lowered

MARKETPLACE_FEE_BPS reduced from 350 (3.5%) to 250 (2.5%) on both
the Python client and the brainctl-launch TS indexer. No production
volume was on chain at 350 bps, so the cutover is safe.

Added

  • brainctl marketplace api offer <listing> --price-usd N — buyer
    submits an offer. Builds + signs the offer manifest, uploads to
    Arweave, posts the on-chain offer memo, registers with the API. TTL
    capped at 24h per the protocol.
  • brainctl marketplace api counter <offer> --price-usd N — either
    side counters; the chain audit trail captures the full thread.
  • brainctl marketplace api accept|reject <offer> — seller-side.
  • brainctl marketplace api withdraw <offer> — offerer-side.
  • brainctl marketplace api offers <listing> — list visible offers
    (auction-mode public, private-mode visible only to seller/offerer).
  • New primitives in agentmemory.marketplace:
    build_offer_manifest, build_counter_manifest, manifest_hash,
    MAX_OFFER_TTL_HOURS, plus five new MEMO_*_PREFIX constants and
    formatters. parse_memo extended to parse all five new actions.

Changed

  • Protocol memo prefix renamed from brndb-marketplace/v1: to
    brainctl-marketplace/v1: across both the Python client and the
    brainctl-launch indexer/server. The previous prefix was an
    early-design choice that coupled the protocol identifier to the
    not-yet-launched community token ticker; the new name decouples
    them permanently. Touches agentmemory.marketplace.MARKETPLACE_SCHEMA,
    every memo formatter, marketplace_listen.py runtime checks,
    commands/marketplace_cli.py schema strings, and tools/zk_mint.js.
    Since the marketplace just opened (no production volume yet), this
    is a clean cutover — no back-compat parser branch needed.
  • Marketplace JIT-mint cNFT branding: name "BRNDB #<hash>" →
    "brainctl memory #<hash>", symbol BRNDB → MEM. Pre-launch
    test mints no longer engrave the ticker into permanent chain
    history.
  • tools/README.md smoke-test JSON example: neutralized name/symbol.

Tests

  • 11 new round-trip tests for the negotiation memo formatters +
    manifest builders. 67/67 marketplace tests pass.