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.
- Signing keys
- /.well-known/jwks.json
- 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