← 返回 Skills 市场
blockboy32

Epstein Emails (x402)

作者 BlockBoy32 · GitHub ↗ · v1.0.1
cross-platform ⚠ suspicious
631
总下载
2
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install epstein-emails
功能描述
Query and filter 383,000+ court-released Jeffrey Epstein emails with structured JSON data via a pay-per-request API using USDC on Base.
使用说明 (SKILL.md)

Epstein Emails API

Query 383,000+ court-released Epstein emails via a pay-per-request API. Structured JSON. USDC on Base via the x402 protocol.

Required Credentials

This skill requires a funded EVM wallet to make payments. You must have:

Variable Format Required Description
XCLAW02_PRIVATE_KEY 0x + 64 hex chars Yes EVM wallet private key for signing payments

Your wallet must hold USDC on Base (eip155:8453). Each API request costs $0.001 USDC.

Security: Never log, display, or echo your private key. Use environment variables only. Use a dedicated hot wallet funded with only what you need — do not use a wallet holding significant funds.

When to Use This Skill

Use this skill when:

  • The user asks about Epstein, Jeffrey Epstein, or Ghislaine Maxwell emails
  • The user wants to search court-released documents or public records from the Epstein case
  • The user needs structured email data (sender, recipient, date, subject, body) from the Epstein archive
  • The user wants to cross-reference names, dates, or connections in the Epstein files

How to Respond

User Says/Asks What to Do
"Search Epstein emails for X" Use /api/search — costs 1 request ($0.001). Confirm with user before calling.
"Who emailed whom?" Use /api/emails with from/to filters — costs 1 request ($0.001). Confirm first.
"Show emails from a date" Use /api/emails with date filter — costs 1 request ($0.001). Confirm first.
"How many emails mention X?" Use free /api/preview first (no cost). Report count. Only use paid search if user wants full results.
"Get all emails" Warn the user about cost first. Full pagination could cost ~$0.384 (384 requests at 1000/page). Get explicit approval before starting.
"What's in the Epstein files?" Explain the dataset — no API call needed.

Important: Always confirm with the user before making paid requests. Never paginate through the full dataset without explicit user approval and a cost estimate.

Spending Safeguards

  • Always estimate cost before multi-request operations. Formula: ceil(total_results / 1000) * $0.001
  • Use the free /api/preview endpoint first to check result counts before committing to paid requests.
  • Never auto-paginate through all results without explicit user approval.
  • Single requests are fine — one search or one filtered query costs $0.001. Just confirm with the user.
  • Set a spending limit in your x402 client if supported (e.g., max_amount parameter).

API Base URL

https://epsteinemails.xyz

Endpoints

GET /api/preview (FREE)

Free preview search. Use this first to check result counts before making paid requests. Rate limited (10 req/min), truncated bodies, max 10 results. No payment required.

Query Parameters:

Param Type Description
q string Search query (min 2 characters)

Response:

{
  "query": "american",
  "total_matches": 15,
  "returned": 10,
  "preview": true,
  "results": [
    {
      "from": "Natalia Molotkova",
      "to": "",
      "date": "Wed 2/1/2017 8:06:26 PM",
      "subject": "Round Trip ticket Barcelona/Miami",
      "body": "Title: American Express Middle seats OK? Regards, Natal...",
      "source_file": "EFTA02205655.pdf"
    }
  ]
}

GET /api/emails (PAID — $0.001)

List and filter emails with pagination. Requires x402 payment.

Query Parameters:

Param Type Description
from string Filter by sender (case-insensitive substring)
to string Filter by recipient
subject string Filter by subject line
date string Filter by date (e.g. "2017", "Wed")
source_file string Filter by source PDF filename
limit int Max results per page (default/max: 1000)
offset int Pagination offset (default: 0)

Response:

{
  "total": 383579,
  "returned": 2,
  "offset": 0,
  "limit": 2,
  "has_more": true,
  "next_offset": 2,
  "emails": [
    {
      "from": "Natalia Molotkova",
      "to": "",
      "date": "Wed 2/1/2017 8:06:26 PM",
      "subject": "Round Trip ticket Barcelona/Miami",
      "body": "Title: American Express...",
      "cc": "",
      "bcc": "",
      "source_file": "EFTA02205655.pdf",
      "source_url": "https://www.justice.gov/epstein/files/DataSet%2011/EFTA02205655.pdf"
    }
  ]
}

GET /api/search (PAID — $0.001)

Full-text search across all email fields. Requires x402 payment.

Query Parameters:

Param Type Description
q string Search query (required, searches from/to/subject/body/date/cc/bcc)
limit int Max results per page (default/max: 1000)
offset int Pagination offset (default: 0)

Response:

{
  "query": "schedule",
  "total_matches": 42,
  "returned": 2,
  "offset": 0,
  "limit": 2,
  "has_more": true,
  "next_offset": 2,
  "results": [
    {
      "index": 5,
      "email": {
        "from": "Jeffrey Epstein",
        "to": "Ghislaine Maxwell",
        "date": "Thu 3/15/2017 10:30:00 AM",
        "subject": "Schedule",
        "body": "...",
        "cc": "",
        "bcc": "",
        "source_file": "EFTA02205700.pdf",
        "source_url": "https://www.justice.gov/epstein/files/DataSet%2011/EFTA02205700.pdf"
      }
    }
  ]
}

Quick Start (Python)

# pip install "x402[httpx,evm]" eth_account

import asyncio
import os
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client

# Load private key from environment variable — never hardcode
account = Account.from_key(os.environ["XCLAW02_PRIVATE_KEY"])
client = x402Client()
register_exact_evm_client(client, EthAccountSigner(account))

async def main():
    async with x402HttpxClient(client) as http:
        resp = await http.get(
            "https://epsteinemails.xyz/api/search?q=schedule&limit=10"
        )
        data = resp.json()
        print(f"Found {data['total_matches']} matches")
        for r in data["results"]:
            e = r["email"]
            print(f"  {e['from']} -> {e['to']}: {e['subject']}")

asyncio.run(main())

Pagination

All paid endpoints support pagination. Max 1000 results per request.

Before paginating, estimate cost and get user approval:

# Step 1: Use free preview to check total matches
preview = await http.get(
    "https://epsteinemails.xyz/api/preview?q=travel"
)
total = preview.json()["total_matches"]
est_cost = ((total + 999) // 1000) * 0.001
print(f"{total} matches — full retrieval will cost ~${est_cost:.3f} ({(total + 999) // 1000} requests)")
# Step 2: Only proceed with user approval

# Step 3: Paginate
all_results = []
offset = 0
while True:
    resp = await http.get(
        f"https://epsteinemails.xyz/api/search?q=travel&limit=1000&offset={offset}"
    )
    data = resp.json()
    all_results.extend(data["results"])
    if not data["has_more"]:
        break
    offset = data["next_offset"]

Payment Details

Field Value
Protocol x402 (HTTP 402 Payment Required)
Price $0.001 USDC per request
Network Base (eip155:8453)
Token USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913)
Gas None (facilitator-sponsored)
Facilitator Coinbase CDP (https://api.cdp.coinbase.com/platform/v2/x402)
Recipient 0xF9702D558eAEC22a655df33b1E3Ac996fAC2f1Ea

The payment flow is automatic when using an x402-compatible client:

  1. Client sends GET request
  2. Server returns 402 with payment requirements in headers
  3. Client signs a USDC payment and retries with payment header
  4. Server verifies via Coinbase CDP facilitator, settles onchain, returns data

Data Provenance

All emails are OCR'd from court-released PDF documents published by the U.S. Department of Justice at https://www.justice.gov/epstein. Each email record includes a source_file field and a source_url field linking directly to the original DOJ-hosted PDF.

Error Handling

Status Meaning
200 Success
400 Bad request (missing q param on search)
402 Payment required (x402 client handles this automatically)
429 Rate limited (preview endpoint only, wait 60s)

Links

安全使用建议
This skill needs an EVM private key to sign micro-payments and talks to an external domain (epsteinemails.xyz). Before installing: (1) confirm the registry metadata matches runtime instructions — the SKILL.md requires XCLAW02_PRIVATE_KEY but the package metadata omits it; (2) if you proceed, use a dedicated hot wallet with only the minimal USDC required and never reuse a key that holds other funds; (3) verify the x402 client package and the API domain are trustworthy (look for upstream project pages, GitHub repos, package registry entries, and HTTPS certs); (4) insist the agent confirm intent and cost estimates before any paid request; (5) if you cannot verify the external library/API authorship or are uncomfortable supplying a private key, do not install/use this skill.
功能分析
Type: OpenClaw Skill Name: epstein-emails Version: 1.0.1 The skill is designed to query court-released Epstein emails via a pay-per-request API. It requires an EVM private key for x402 protocol payments, but the `SKILL.md` explicitly instructs the agent to handle this credential securely (environment variables, never log/display) and to always confirm with the user before making paid requests or paginating. The Python code snippet demonstrates secure key loading from environment variables. There is no evidence of prompt injection, data exfiltration beyond the stated API interaction, malicious execution, or other harmful behaviors. The external API endpoint `epsteinemails.xyz` and payment recipient address are clearly disclosed.
能力评估
Purpose & Capability
The skill is a pay-per-request search API for court-released emails; needing a wallet signer to pay via x402 is plausible. However, the skill registry metadata lists no required environment variables or primary credential while SKILL.md explicitly requires XCLAW02_PRIVATE_KEY (an EVM private key). That metadata/instruction mismatch is incoherent and should have been declared.
Instruction Scope
SKILL.md stays within the advertised scope (preview then paid search, cost-estimates, confirm before paid calls, never auto-paginate). However it instructs the agent to read an environment variable (XCLAW02_PRIVATE_KEY) not declared in the registry and to install/use a third-party x402 client library. The instructions explicitly request a sensitive secret and to contact an API at an external domain (https://epsteinemails.xyz). Those runtime actions are within the stated feature set but reference undeclared secrets and external endpoints, which raises red flags.
Install Mechanism
No install spec in the registry (instruction-only), which reduces install-time risk. SKILL.md's Quick Start recommends pip installing 'x402[httpx,evm]' and eth_account — third-party packages not vetted by the registry. No download-from-URL or archive extraction is declared, but relying on an external x402 package and an unknown API domain carries moderate risk if those packages/endpoints are untrusted.
Credentials
The skill requires a single, powerful secret: an EVM private key (XCLAW02_PRIVATE_KEY) to sign payments. That credential is proportionate to making on-chain payments, but it is high-risk and the registry metadata omits it (no primary credential declared). The SKILL.md does include sensible safeguards (use a dedicated hot wallet, never log the key, confirm before spending), but the omission from declared requirements and the need to put a private key into the agent environment are material concerns.
Persistence & Privilege
The skill does not request 'always: true' or any special persistent privileges; it is user-invocable and can be invoked autonomously (the platform default). It does not ask to modify other skills or agent-wide configuration in the provided instructions.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install epstein-emails
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /epstein-emails 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
epstein-emails 1.0.1 - Added explicit requirement for users to provide a funded EVM wallet private key (`XCLAW02_PRIVATE_KEY`) to make API payments. - Emphasized user consent for any paid API action; added spending safeguards and confirmation steps. - Mandated use of the free `/api/preview` endpoint to estimate costs before making paid requests. - Clarified cost estimation, spending limits, and multi-request cost warnings. - Updated quick start and pagination code examples with secure private key handling and explicit cost calculation. - Improved instructions for safe private key management and recommended using dedicated hot wallets.
v1.0.0
Epstein Emails API 1.0.0 – Initial Release - Launches a pay-per-request API for querying 383,000+ court-released Epstein emails via structured JSON. - No accounts or API keys needed; payments handled automatically via x402 protocol using USDC on Base. - Provides endpoints for listing, full-text searching, and previewing emails, with pagination support. - Free preview endpoint included for limited, rate-limited results. - Data sourced from court OCR'd PDFs with direct links to the Department of Justice. - Example Python code and documentation for setup, authentication, and error handling are included.
元数据
Slug epstein-emails
版本 1.0.1
许可证
累计安装 0
当前安装数 0
历史版本数 2
常见问题

Epstein Emails (x402) 是什么?

Query and filter 383,000+ court-released Jeffrey Epstein emails with structured JSON data via a pay-per-request API using USDC on Base. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 631 次。

如何安装 Epstein Emails (x402)?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install epstein-emails」即可一键安装,无需额外配置。

Epstein Emails (x402) 是免费的吗?

是的,Epstein Emails (x402) 完全免费(开源免费),可自由下载、安装和使用。

Epstein Emails (x402) 支持哪些平台?

Epstein Emails (x402) 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Epstein Emails (x402)?

由 BlockBoy32(@blockboy32)开发并维护,当前版本 v1.0.1。

💬 留言讨论