Рабочие потоки, не макеты.
Платежи агентов — первый шаг. Более глубокий путь демо — программируемый кредит: ограниченные Notes, policy-лимиты, верификация работы и settlement receipts на Ergo testnet.
Accord demo tracks
Payment, tools, APIs and credit.
These pages describe the runnable flow targets before the live event stream is wired. Mock mode comes first; testnet mode is added only when sources and receipts are reproducible.
Агент покупает вызов API
Один вызов. Одно доказательство. Без постоянного аккаунта.
Автономный агент создаёт ноту и отправляет её провайдеру API. Провайдер проверяет предикат принятия on-chain и доставляет ответ. Без API-ключей, без биллинговых аккаунтов, без Stripe.
Пошагово
- 1Агент создаёт ноту (номинал 0.001 ERG)
- 2Нота содержит: адрес провайдера + хеш задачи + дедлайн
- 3Провайдер проверяет предикат — верифицировано на Ergo testnet
- 4Провайдер доставляет ответ API
- 5Нота сжигается, ERG высвобождается провайдеру
Почему это важно
Это атомарная единица агентной коммерции: одна задача, один платёж, одно доказательство. Идентификация не требуется.
// Install: npm install @fleet-sdk/core
// Pseudo-code — illustrates the shape of a Note creation. Production
// usage pins the exact Ergo-compatible hash function and the canonical
// audited script address; do not deploy this snippet as-is.
import {
TransactionBuilder,
OutputBuilder,
SByte,
SColl,
SGroupElement,
SLong,
} from "@fleet-sdk/core"
import { blake2b256, utf8 } from "@fleet-sdk/crypto"
// Create a payment note for one API call
const noteBox = new OutputBuilder(
1_000_000n, // 0.001 ERG
NOTE_CONTRACT_ADDRESS
).setAdditionalRegisters({
R4: SGroupElement(providerPublicKey), // who receives
R5: SLong(BigInt(currentHeight + 100)), // deadline
R6: SColl(SByte, blake2b256(utf8.decode(taskDescription))), // task proof
})
const tx = new TransactionBuilder(currentHeight)
.from(myInputs)
.to(noteBox)
.sendChangeTo(myAddress)
.payMinFee()
.build()Агент выпускает кредит суб-агенту
Reserve развёрнут. Ограниченные Notes выпущены. Tracker мониторит.
Родительский агент создаёт policy-constrained бюджет, не передавая приватный ключ. Notes выпускаются против резерва, тратятся суб-агентом, проверяются правилами задачи и погашаются только по явным ограничениям расчёта.
Пошагово
- 1Контракт резерва развёрнут с 10 ERG + 100 ERG кредитный лимит
- 2Ограниченные Notes выпущены против резерва (до лимита)
- 3Суб-агент передаёт Notes провайдерам как task-conditioned кредит
- 4Трекер обновляет кумулятивный баланс on-chain
- 5Погашение происходит только после выполнения правил верификации
Почему это важно
Проверяемые workflow делают платежи доверяемыми. Программируемый кредит позволяет агентам координировать будущую работу до финального расчёта.
// Deploy a reserve with credit limit
import { OutputBuilder, SGroupElement, SLong } from "@fleet-sdk/core"
const reserveBox = new OutputBuilder(
10_000_000_000n, // 10 ERG collateral
RESERVE_CONTRACT_ADDRESS
).setAdditionalRegisters({
R4: SLong(100_000_000_000n), // 100 ERG credit limit
R5: SLong(0n), // total issued so far
R6: SGroupElement(controllerKey),
})
// Notes are issued from this reserve
// Tracker enforces: issued <= credit_limit
// Settlement happens when tracker triggers thresholdОбщественный резерв + трекер
Локальный маркетплейс. Вычислительный кооператив. Агентная сеть.
Группа участников объединяет ERG в общий резерв. Общественные ноты выпускаются пропорционально. Предикаты принятия определяют правила членства. Участники могут обменять ноты на ERG в любое время.
Пошагово
- 1Участники сообщества объединяют ERG в мультисиг-резерв
- 2Участники получают общественные ноты пропорционально вкладу
- 3Ноты принимаются внутри сообщества по правилам принятия
- 4Любой участник может обменять ноты на ERG в любое время
- 5Трекер обеспечивает публичную аудируемость потоков
Почему это важно
Это наиболее общая форма: программируемая локальная экономика. Может быть маркетплейсом, казначейством DAO или агентным кооперативом.
// Multi-sig community reserve
import { OutputBuilder, SByte, SColl, SGroupElement, SInt } from "@fleet-sdk/core"
const communityReserve = new OutputBuilder(
TOTAL_POOLED_ERG,
MULTISIG_RESERVE_ADDRESS
).setAdditionalRegisters({
R4: SColl(SGroupElement, memberKeys), // 5 members
R5: SInt(3), // 3-of-5 to redeem
R6: SColl(SByte, communityTokenId), // community token
})
// Acceptance predicate — members only:
// { val isMember = memberKeys.exists(pk => proveDlog(pk))
// sigmaProp(isMember) }Открытые проблемы
Что ещё не решено
Это самые интересные открытые проблемы в области агентных денег. Если что-то из этого вам откликается — мы хотим услышать от вас.
Идентичность агента без постоянных аккаунтов
Как агенты строят репутацию между сессиями без деанонимизации?
UX принятия нот для нетехнических агентов
Абстракция на уровне SDK, чтобы LLM-агенты могли выпускать и принимать ноты с минимальной настройкой.
Федерация трекеров между резервами
Межрезервный учёт и ликвидность — могут ли ноты приниматься между разными общественными резервами?
Репутация агента без централизованного оракула
Верифицируемый рейтинг репутации, выведенный из on-chain истории, без доверенной третьей стороны.
Локальный общественный кошелёк — развёртывание в один клик
Создайте общественный резерв, выпустите токены и настройте правила принятия менее чем за 5 минут.
Сгенерируйте свой первый агентный платёж
Вставьте ваш адрес Ergo testnet. Мы получим ваши UTxO в реальном времени и сгенерируем скрипт Fleet SDK с предзаполненными вашими данными.
Нужны testnet ERG? testnet.ergofaucet.org — бесплатные testnet ERG за секунды.
Запрос баланса адреса
Запросите баланс любого адреса Ergo в реальном времени из блокчейна. Реальные данные, реальная сеть.
Данные получены в реальном времени из api.ergoplatform.com