Add Vault Note: Structured annotations for DeFi vaults
Turn the add-vault-note skill into an execution-ready workflow with input templates, VaultFlag decisions, flag.py edits, and PR guardrails.
Here "vault" refers to DeFi vault data, not password managers or note-taking apps.
Vault address: 0x... Message: "Reason / risk note" Flag: None | VaultFlag.illiquid | VaultFlag.broken | ...
Workflow
Four steps to finish add-vault-note
From data lookup to PR naming, every step is explicit.
Use top_vaults_by_chain.json (search in file, do not open) or the vaults list page. check-vault-onchain.py is a fallback.
Search top_vaults_by_chain.json by address → extract name (do not open the full JSON).
If no flag was specified, set it to None.
# eth_defi/vault/flag.py
NEW_VAULT_NOTE = "Reason for flag"
VAULT_FLAGS_AND_NOTES = {
"0x...": (VaultFlag.illiquid, NEW_VAULT_NOTE), # Vault Name
}Limit formatting to the target file for clarity.
ruff format eth_defi/vault/flag.py
Helps reviewers spot data-note updates quickly.
Prefix PR title with "notes" (not feat). No changelog required.
VaultFlag Matrix
Choose the right flag faster
BAD_FLAGS imply elevated risk and require evidence.
| Category | Flags | Usage note |
|---|---|---|
| Operational | deposit, redeem, paused, trading, idle | Describes whether funds can move and the trading state. |
| Risk/Anomaly | illiquid, broken, malicious, abnormal_tvl, abnormal_price_on_low_tvl | High-risk warnings aligned with BAD_FLAGS. |
| Structure/Source | proprietary_trading, wrapped_asset, unofficial, subvault | Explains vault structure or listing issues. |
Risk note
BAD_FLAGS like illiquid/broken/malicious affect user decisions; include verifiable evidence.
Vault Summary JSON
Fast path to name, address, and chain
Field meanings follow Trading Strategy docs for source alignment.
| Field | Meaning | Why it matters |
|---|---|---|
| name | Human-readable vault name (may include chain) | Use as the note comment to avoid name confusion. |
| address | Vault contract address | Match the input address before writing the note. |
| chain / chain_id | Chain name and numeric chain ID | Deduplicate same-name vaults across chains. |
| protocol | Protocol operating the vault | Adds context for risk and note rationale. |
| risk | Technical risk classification | Signals whether BAD_FLAGS are justified. |
| denomination | Denomination asset (e.g., USDC) | Confirm the vault type and unit of account. |
Usage note
top_vaults_by_chain.json is large; search within it instead of opening the full file.
0-3: Incomplete, gather evidence.
4-5: Submit with extra review.
6-7: Ready to submit.
Self-Test
5 questions to validate readiness
Each is 1-2 points. Answer before submitting.
Resources
All authoritative sources in one place
Use these references to verify every step.
Source Kit
Source, clone, and license in one view
Meets open-source compliance and reduces context switching.
| Skill source | https://github.com/tradingstrategy-ai/web3-ethereum-defi/blob/master/.claude/skills/add-vault-note/SKILL.md |
| Clone command | git clone https://github.com/tradingstrategy-ai/web3-ethereum-defi.git |
| License | MIT (per README) |
Notes PR Examples
Real PRs to calibrate naming and note style
These PRs show real-world notes prefix usage and tone.
FAQ
Common questions
Start here when something feels unclear.