Pinned Tweet
Ava 2.0 is here. Your DeFi agent, working while you're away.
Set up Aave repayment rules, scheduled Uniswap swaps and payments. Ask in plain English, choose a Skill, and configure it. Active on-demand jobs now have a Run now button.
Want tighter control? Turn off the standard permission on the Wallets page and choose narrower permissions with a cap on the token you pick.
You can also review runs, pause individual jobs and revoke permissions on the web.
One Ava, two ways in. Start in Telegram. Use the web to set up Skills, review runs and manage permissions.
Try Ava: t.me/AvaProtocolBot?start=c_…
Know which contracts can spend your tokens.
Ava’s Wallet Scan now resolves unlabeled spender to the contracts behind them, giving you useful context to decide which approvals to keep or revoke.
Review your wallet’s open token approvals and EIP-7702 delegations with Ava’s Wallet Scan:
t.me/AvaProtocolBot?start=c_…
On Tuesday we launched agent permissions.
Here's how they keep you in control when Ava acts for you. 🧵
Inside those limits, Ava runs the jobs you turn on, like repaying your Aave loan when your health factor drops. No prompt each time.
It works on the wallet you already have, after a one-time upgrade. Your address and keys stay the same.
Your permissions, your control.
Pause a job, revoke a permission to stop everything using it, or undo the upgrade to turn Auto off for that wallet on that network.
How it works: avaprotocol.org/docs/safety/…
Try it: t.me/AvaProtocolBot?start=c_…
We've been working hard to put you in control of how Ava acts.
Agent permissions are here. 🛡️
Choose allowed apps, total token spending caps, and an expiry. Ava runs the jobs you enable within those limits. Enforced on-chain, revocable anytime.
Set one up in Ava: t.me/AvaProtocolBot?start=c_…
How permissions work: avaprotocol.org/docs/safety/…
Paul's test for whether a vault is really non-custodial: if the curator is hacked, disappears, or acts in bad faith, can users opt out without relying on them?
Morpho creates that protection with timelocks, exit windows, and role-based safeguards.
But that assumes users notice something changed in the first place.
That's the next layer we're building Ava into: user-specific guardianship that watches your positions, approvals and permissions, understands the risk you're willing to accept, and tells you when something changes.
Ava’s memory just got an upgrade!
Wallet scan results now persist for the rest of your conversation. Ask which approval to revoke first, which can wait, and why. Ava answers using the results from that same check.
Thanks to the community for pushing on this.
This is the first of several improvements we’ll share over the next few days.
Try it:
t.me/AvaProtocolBot?start=c_…
Quick heads up: our community flagged a token on BSC using the Ava Protocol name and appearing on CoinSniper or similar listing sites.
It has no connection to Ava Protocol. Please do not buy or interact with it. 🙅♂️
Simply put: this incident wasn't a 7702 drain, and Safe itself didn't break.
A Safe module is a plugin installed on a Safe smart account with authority to execute transactions. In this case, the module already had the power to move funds without an owner signature.
The authorization layer controlling that power failed.
1/4
⚠️ Exploit Breakdown
On Sep 15, 2026, a whale’s #Safe wallet was drained via an auth bypass in its strategy executor. Loss: ~$7.8M.
❓ Root Cause
Any caller could set the target to `address(this)` and skip both authorization checks, then `DELEGATECALL` through an already-enabled Safe Module — running arbitrary logic in the Safe’s own context.
The attacker dumped ~2,900 aEthrsETH into a Uniswap v4 pool paired against a worthless PAT token, leaving the victim Safe with nothing but junk LP NFTs.
The original exploit tx was front-run by MEV bot "Yoink", which walked away with the entire rsETH stack.
🔍 Attack Flow
The bug sits in this unverified strategy executor:
0x4f0055926c839D1d960a82CBF84E2eE933958ebC
Not in Safe core. Not in Aave. Not in rsETH.
(1) Intended path: the target must be an allowlisted Safe, and `msg.sender` must be a Module enabled by that Safe.
Set the target to `address(this)` — the executor itself — and both the allowlist check and the Module auth check get skipped.
1/
When people talk about building AI agents, the conversation usually starts with the model: which one to use, RAG vs fine-tuning, how much context to give it.
We build Ava, a wallet agent. The model is the layer we specialize last.
3/
Why last: the branches you write to cover model failures are not tech debt.
Five branches that start with the same condition are one concept the model has not learned yet. That is a training set before it exists.
Train after the specification, not before.
The full argument, with where each responsibility lives and what moves into the model over time:
avaprotocol.org/blog/ava-run…







