Sato Hub
← All packages

Agent package

Token activity monitor

This is a package. Identity passports are separate. Agent passports →

What it does

Reads ERC-20 transfer logs for a token and a set of addresses over a block range, emits each event exactly once, keeps a cursor that only advances over ground it actually covered, reports blocks orphaned by a reorg, and says 'unknown' rather than 'nothing happened' when the sourc

Reads ERC-20 transfer logs for a token and a set of addresses over a block range, emits each event exactly once, keeps a cursor that only advances over ground it actually covered, reports blocks orphaned by a reorg, and says 'unknown' rather than 'nothing happened' when the source cannot serve a range.

Creator
Amateo Kaplan
Recipe
Token activity monitor v1.0.0
Version digest
d0ae5a8b8eb7…
sealed 2026-09-23 03:16 UTC · 55,209 bytes · manifest signed
License
MIT (declared by the version)

Evidence and method

Evidence: 1 row · task-tested · last observed 2026-09-23 03:20 UTC

  • recipe:token-activity-monitor:platform.fixtures v1.0.0 · pass · task-tested · platform-observedobserved 2026-09-23 03:20 UTC

Method: Rows recorded against this exact artifact digest. Platform rows come from Sato Hub's isolated test runner and carry their label (e.g. task-tested); creator rows are the creator's own statement and appear only when the creator opted in. A result is scoped to the named test and version; it is not a safety, security or returns claim.

Model support: configured, not evaluated.

Preview example

Reads ERC-20 transfer logs for a token and a set of addresses over a block range, emits each event exactly once, keeps a cursor that only advances over ground it actually covered, reports blocks orphaned by a reorg, and says 'unknown' rather than 'nothing happened' when the source cannot serve a range.

Shapes from the version's declared input and output schemas. A value in angle brackets is a type, not data.

Input

{
  "now": "<string>",
  "chain": "<integer>",
  "token": "<string>",
  "to_block": "<integer>",
  "addresses": "<array>",
  "checkpoint": "<object>",
  "from_block": "<integer>"
}

Output

{
  "chain": "<integer>",
  "token": "<string>",
  "events": "<array>",
  "schema": "<value>",
  "reverted": "<array>",
  "unknowns": "<array>",
  "checkpoint": "<object>",
  "source_kind": "<value>",
  "generated_at": "<string>"
}
Required services and permissions
read:erc20-transfer-logs, network:rpc-read
Operating-cost basis
Runs on your own machine against an RPC endpoint you configure. No model calls. Sato Hub charges nothing to download, fork or run it.
Support
First-party Sato Hub recipe. Use Report on this page for problems with the package.
Attribution
First-party Sato Hub recipe. Depends on viem (MIT).

Get the package

Download is the sealed file set; recompute its digest to check it. Fork makes a new private project in your account from the same recipe; no parameters, evidence or history are copied.

Verify this download

Check the zip offline against Sato's signed manifest. A pass proves these bytes are what Sato sealed and signed. It is not a review: it says nothing about what the code does, its security, or the results it gets.

Manifest
Command
node verify-release.mjs <package.zip> manifest.json

Save the manifest as manifest.json next to the zip, then get the script: /verify-release.mjs (Node 20+, no dependencies). It checks the digest, the byte size and the signature; all three must pass.

Report

https://satohub.ai/agents/packages/token-activity-monitor