Canonical skill package for Aeon. Published as powerloom/aeon-skills on GitHub.
Do not edit the fork copy (anomit-aeon/skills/powerloom-bds) as source of truth. Change this repo, then re-install into your Aeon fork.
Whale Radar on Aeon is not “an LLM that polls Uniswap.” It is:
- Verified block data — trades and USD amounts from BDS epoch snapshots; alerts include on-chain verification (CID, epoch) when present.
- Deterministic catch-up —
fetch-bds-epochs.pywalksGET /mpp/snapshot/allTrades/{block}from cursor+1 to chain tip (up to 10 snapshots/run). No tip-only sampling, no ignoredfrom_epochquery hacks. - OpenClaw parity, headless runtime — same whale logic as
powerloom-bds-univ3/scripts/whale-cron.mjs, but split for GitHub Actions: prefetch owns fetch + cursor;postprocess-bds.shdispatches./notify(Claude only logs). - Rich, Telegram-safe alerts — pool metadata (USDC/WETH), BUY/SELL, Etherscan links; project slug only in verification footer.
- Cheap agent step — skill reads
.bds-cache/alerts.jsonfor counts/logging only; no sandbox network, no LLM rewritingpowerloom-bds-state.json.
Deep dive: powerloom-bds/references/architecture.md
powerloom-aeon-skill/
├── powerloom-bds/ # Skill tree (SKILL.md + references)
├── scripts/
│ ├── prefetch-bds.sh # Orchestrator (wipes .bds-cache/, runs fetch + process)
│ ├── fetch-bds-epochs.py # Per-block snapshot loop (recommended BDS API)
│ ├── bds_normalize.py # Snapshot shape helpers
│ ├── process-bds-skill.py # Whale threshold, dedupe, alert formatting, cursor
│ └── postprocess-bds.sh # ./notify dispatch + cursor backup
├── templates/powerloom-bds.yml.example
├── install-into-aeon.sh
└── README.md
| Path | Owner |
|---|---|
aeon.yml |
Enable schedule |
memory/powerloom-bds-state.json |
Runtime cursor (committed by Actions) |
memory/powerloom-bds.yml |
Operator threshold / mode |
.bds-cache/ |
Ephemeral — must be in .gitignore |
GitHub secret BDS_API_KEY |
Your fork |
Full guide: INSTALL.md (blog-ready, any Aeon fork)
git clone https://github.com/powerloom/aeon-skills.git
cd /path/to/your-aeon-fork
/path/to/aeon-skills/install-into-aeon.shWith no argument the script uses $(pwd) — cd into your fork first, or pass the fork path explicitly. Both are valid.
Copies skill + five scripts; runs patch-aeon-fork.sh for .gitignore, workflow BDS_API_KEY, and cursor auto-commit.
messages.yml (cron) → aeon.yml skill=powerloom-bds
→ prefetch-bds.sh
→ fetch-bds-epochs.py # snapshot/{block} loop
→ process-bds-skill.py # alerts.json + state update
→ Claude reads SKILL.md → log alert count (no ./notify)
→ postprocess-bds.sh # ./notify per alert (needs TELEGRAM_* on post-process env)
→ commit memory/powerloom-bds-state.json
- Fork Aeon, run
install-into-aeon.sh - Secret
BDS_API_KEYfrom https://bds-metering.powerloom.io/metering - Optional:
cp templates/powerloom-bds.yml.example memory/powerloom-bds.yml - Enable in
aeon.yml(e.g.*/5 * * * *— effective dispatch ~15 min due to scheduler dedup) - Add
.bds-cache/to.gitignore; remove from git if previously committed - Push
| Mode | Status |
|---|---|
| whale-radar | Shipped |
| token-flow | OpenClaw token-flow.mjs until ported |
| pulse | OpenClaw / bds-agent trade until ported |
| defi-analyst | Not in prefetch yet |
5 epochs, 82 trades scanned, 27 whale alerts dispatched — see operator notes in workspace daily_notes_work_plan/2026-05-27/successful-run.md.
- architecture.md
- bds-api.md
- ai-coord-docs AEON_WHALE_RADAR (recipe spec)
- OpenClaw skill
- bds-agent CLI
- Powerloom Docs
MIT