# Send Bloomfilter to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "bloomfilter",
    "name": "Bloomfilter",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Eronmmer/bloomfilter",
    "canonicalUrl": "https://clawhub.ai/Eronmmer/bloomfilter",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/bloomfilter",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=bloomfilter",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "bloomfilter",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T15:19:23.488Z",
      "expiresAt": "2026-05-07T15:19:23.488Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=bloomfilter",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=bloomfilter",
        "contentDisposition": "attachment; filename=\"bloomfilter-1.0.2.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "bloomfilter"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/bloomfilter"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/bloomfilter",
    "downloadUrl": "https://openagent3.xyz/downloads/bloomfilter",
    "agentUrl": "https://openagent3.xyz/skills/bloomfilter/agent",
    "manifestUrl": "https://openagent3.xyz/skills/bloomfilter/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/bloomfilter/agent.md"
  }
}
```
## Documentation

### Bloomfilter - Domain Registration API

Base URL: https://api.bloomfilter.xyz

Paid endpoints use the x402 payment protocol. The API returns HTTP 402 with payment details - your x402-compatible HTTP client handles payment automatically.

EVM_PRIVATE_KEY is used locally by the agent's x402 HTTP client (@x402/axios or @x402/fetch) to sign EIP-3009 TransferWithAuthorization messages for USDC payments and to sign EIP-4361 SIWE messages for authentication. The private key never leaves the local machine and is never sent to any server. All cryptographic signing happens client-side in the agent runtime.

DNS and account endpoints require authentication via SIWE (Sign-In With Ethereum). Authenticate once, then pass the JWT as a Bearer token.

### Authentication (SIWE)

GET /auth/nonce
-> Returns { nonce, domain, uri, chainId, version, expiresIn }

POST /auth/verify
Body: { "message": "<EIP-4361 SIWE message>", "signature": "0x..." }
-> Returns { accessToken, refreshToken, walletAddress }

POST /auth/refresh
Body: { "refreshToken": "..." }
-> Returns new { accessToken, refreshToken }

POST /auth/revoke (requires Bearer token)
-> Revokes all sessions for the authenticated wallet

### Domain Search & Pricing (free, no auth)

GET /domains/search?query=example&tlds=com,io,xyz
-> Returns availability and pricing for each TLD. The tlds parameter is optional.

GET /domains/pricing
-> Returns pricing for all supported TLDs

GET /domains/pricing/:tld
-> Returns pricing for a single TLD (e.g., /domains/pricing/com)

### Domain Registration (x402 - dynamic pricing)

POST /domains/register
Body: { "domain": "example.com", "years": 1 }
years defaults to 1 if omitted.
Optional: "dns_records": [{ "type": "A", "host": "@", "value": "1.2.3.4" }]
Supported dns_records types: A, AAAA, CNAME, MX, TXT, SRV, CAA
Each record also accepts optional "ttl" (300-86400, default 3600) and "priority" (for MX/SRV)
-> First call returns 402 with exact price. Retry with x402 payment to complete.
-> Returns 201 on success, or 202 with a job ID for async provisioning.

POST /domains/renew
Body: { "domain": "example.com", "years": 1 }
years defaults to 1 if omitted.
-> Same two-phase x402 flow as registration.

### Domain Info (free, no auth)

GET /domains/:domain
-> Returns domain status, expiry, nameservers, lock/privacy state.
Note: Only works for domains registered through Bloomfilter.

### Job Status (free, no auth)

GET /domains/status/:jobId
-> Poll for async registration status. Returns 200 (done), 202 (pending), or 500 (failed).

### DNS Management (requires Bearer token)

Mutations cost $0.10 USDC each (x402). Listing is free.

IMPORTANT: Always add, update, or delete DNS records one at a time (sequentially, not in parallel). After registering a new domain, wait at least 30 seconds before adding DNS records — the DNS zone may not be ready immediately.

GET /dns/:domain
-> List all DNS records

POST /dns/:domain
Body: { "type": "A", "host": "@", "value": "1.2.3.4" }
Optional: "ttl" (300-86400, default 3600), "priority" (for MX/SRV)
Supported types: A, AAAA, CNAME, MX, TXT, NS, SRV, CAA

PUT /dns/:domain/:recordId
Body: { "host": "@", "value": "5.6.7.8" }
At least one field required. Optional: host, value, ttl, priority.

DELETE /dns/:domain/:recordId
-> Deletes the record

### Account (requires Bearer token, free)

GET /account
-> Account summary (wallet, domain count, total spent)

GET /account/domains?limit=50&offset=0
-> Paginated list of owned domains

GET /account/transactions?limit=50&offset=0
-> Paginated transaction history

### Notes

All paid requests require an x402-compatible HTTP client with USDC on Base (chain ID 8453)
WHOIS privacy is enabled by default on all registrations
Docs: https://docs.bloomfilter.xyz

### External Endpoints

URLData SentPurposehttps://api.bloomfilter.xyz/*Domain queries, DNS records, wallet addressDomain search, registration, DNS management

No data is sent anywhere else. All requests go to the Bloomfilter API only.

### Security & Privacy

Your EVM_PRIVATE_KEY never leaves your local machine — it is used locally to sign x402 payment authorizations and SIWE messages
The API receives your wallet address (derived from the key) but never the private key itself
WHOIS privacy is enabled by default on all registrations — your identity is never exposed in public WHOIS records
All API communication is over HTTPS

### Trust

This skill connects to api.bloomfilter.xyz to register ICANN domains and manage DNS records. Payments are made in USDC on Base via the x402 protocol. Your private key stays local. Install only if you trust Bloomfilter (https://bloomfilter.xyz) as a domain registration provider.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: Eronmmer
- Version: 1.0.2
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T15:19:23.488Z
- Expires at: 2026-05-07T15:19:23.488Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/bloomfilter)
- [Send to Agent page](https://openagent3.xyz/skills/bloomfilter/agent)
- [JSON manifest](https://openagent3.xyz/skills/bloomfilter/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/bloomfilter/agent.md)
- [Download page](https://openagent3.xyz/downloads/bloomfilter)