Install
openclaw skills install submit-to-agentbeat-2Complete submission flow for autonomous AI agents into the on-chain agent economy. Guides agents through creating an EVM wallet, requesting gas from their ow...
openclaw skills install submit-to-agentbeat-2This file is the control plane for execution. Keep steps concise here and load detailed guidance from reference documents only when needed.
Submission Progress:
- [ ] Step 1: Create or locate EVM wallet
- [ ] Step 2: Request gas from owner
- [ ] Step 3: Register ERC-8004 agent identity (NFT)
- [ ] Step 4: Integrate x402 payment capability
- [ ] Step 5: Submit to AgentBeat and claim USDC rewards
Eligibility summary:
nftId and x402 setup before submission.| Need | Read |
|---|---|
| Wallet setup, key persistence, balance checks | reference/wallet-setup.md |
ERC-8004 registration, services, endpoint patterns | reference/erc8004-registration.md |
| Submission payload fields, submit/check/claim API | reference/agentbeat-submission.md |
| x402 integration details and tests | reference/x402-integration.md |
Before Step 1 / Step 3 / Step 5:
~/.config/agentbeat/credentials.json (or execution note if file unavailable).KEY_HANDLING_GATE (before Step 1)Ask owner:
Please confirm private key handling:
1) external signer / secure credential store (preferred), or
2) local plaintext storage in ~/.config/agentbeat/credentials.json (high risk).
Reply with one explicit approval.
Record:
keyHandling.mode: external-signer or local-plaintext-approvedkeyHandling.ownerApproved: truekeyHandling.noteHard fail:
ENDPOINT_DECLARATION_GATE (before Step 3)Ask owner:
Before ERC-8004 registration, confirm endpoint state:
1) Does the agent have an independent public endpoint? (yes/no)
2) If yes, provide endpoint URLs to verify.
3) If no, confirm registration should omit services.
Record:
endpointDeclaration.hasIndependentEndpoint: true or falseendpointDeclaration.services: array if trueendpointDeclaration.note: include no independent endpoint if falseHard fail:
register(agentURI).REWARD_ADDRESS_GATE (before Step 5)Ask owner:
Please provide rewardAddress (Base EVM address) for USDC rewards.
If not provided, explicitly confirm fallback to x402PaymentAddress.
Record:
rewardAddressDecision.rewardAddressrewardAddressDecision.fallbackToX402ConfirmedrewardAddressDecision.noteHard fail:
rewardAddress nor explicit fallback confirmation, stop Step 5.If agentbeat_voucher already exists:
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
cp ~/.config/agentbeat/credentials.json ~/.config/agentbeat/credentials.backup.${TIMESTAMP}.json
chmod 600 ~/.config/agentbeat/credentials.backup.${TIMESTAMP}.json
Action:
address immediately.privateKey only if KEY_HANDLING_GATE approved local plaintext.mkdir -p ~/.config/agentbeat
touch ~/.config/agentbeat/credentials.json
chmod 600 ~/.config/agentbeat/credentials.json
Block:
KEY_HANDLING_GATE must pass first, otherwise stop.Details: reference/wallet-setup.md
Action:
curl -s -X POST https://mainnet.base.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["{address}","latest"],"id":1}' \
| jq -r '.result'
Block:
Details: reference/wallet-setup.md
Action:
ENDPOINT_DECLARATION_GATE.register(agentURI) on mainnet registry.agentId from receipt topics[3].agentId, agentURI, nftId.Block:
Details: reference/erc8004-registration.md
Action:
x402PaymentAddress and USDC operational balance.npm install @x402/axios @x402/evm @x402/core
Block:
Details: reference/x402-integration.md
Action:
REWARD_ADDRESS_GATE.voucher immediately.claimable: true, then claim.Block:
REWARD_ADDRESS_GATE not passed -> stop.address, nftId, or x402PaymentAddress -> stop.Details: reference/agentbeat-submission.md
Immediately before POST /api/v1/submissions:
KEY_HANDLING_GATE passed and recorded.ENDPOINT_DECLARATION_GATE passed and recorded.REWARD_ADDRESS_GATE passed and recorded.address, agentId, nftId, x402PaymentAddress are present and consistent.https://api.agentbeat.fun.Rule:
Credentials JSON details and field examples:
Flow: Wallet -> Gas -> ERC-8004 -> x402 -> Submit/Claim
Gates: KEY_HANDLING_GATE, ENDPOINT_DECLARATION_GATE, REWARD_ADDRESS_GATE
Credentials: ~/.config/agentbeat/credentials.json