Короткий ответ
Нет: одобренный ключ агента Hyperliquid не может вывести с вашего счёта и не может отправить ваши USDC или ваши токены куда-либо, потому что площадка отказывает ему в этих действиях за то, что он такое, а не из-за суммы. Он может выставлять и отменять ордера, и с вашими деньгами он смог сделать одно другое дело: внести счёт в хранилище Hyperliquid.
Всё ниже это одно измерение в мейннете, 28 сентября 2026 года, с настоящим одобренным ключом агента на тестовом счёте. Страница агентского кошелька этого сайта несёт ту же запись.
Как это измеряли
Тестовый счёт, на котором было около 60 USDC, одобрил свежий ключ агента на один час, как это делает Locker Vault в работе. Затем этот ключ агента подписал каждое действие, которое двигает деньги, каждое на 1000 USDC, намного больше того, что было на счёте, так что ничто не могло сдвинуться и значение имела только причина каждого отказа.
Потом те же запросы подписал сам счёт. Там, где агент получил ответ, отличный от ответа счёту, его остановили за то, что он агент. Там, где оба получили один ответ, действие повторили на небольшую сумму, в адрес, который остаётся адресом счёта.
Что ответил Hyperliquid
| Действие, подписанное ключом агента | Ответ Hyperliquid |
|---|---|
| Выставить ордер, затем его отменить | принято |
Вывод (withdraw3) | отклонено |
Отправить USDC или токен (usdSend, spotSend, sendAsset) | отклонено |
Перевод между спотом и перпами (usdClassTransfer) | отклонено |
Одобрить второго агента (approveAgent) | отклонено |
Одобрить комиссию билдера (approveBuilderFee) | отклонено |
Внести счёт в хранилище (vaultTransfer) | принято |
Каждый отказ читался одинаково: Must deposit before performing actions, с собственным адресом агента. Hyperliquid применил действие к адресу агента, на котором ничего нет, а не к счёту, который его одобрил. Те же запросы, подписанные самим счётом, встретили ошибки по балансу, и это другой ответ.
После отклонённого approveAgent в списке счёта не появилось второго агента. Одобрению комиссии билдера тоже отказали, и это сходится с документацией: это действие должен подписывать главный кошелёк пользователя, а не агентский кошелёк.
Единственное движение денег, которое он подписал
vaultTransfer не применяется к подписанту: это действие L1, и Hyperliquid привязал его к счёту, который одобрил ключ. На 1000 USDC агент получил тот же ответ о недостатке средств, что и счёт, поэтому тест повторили на 5 USDC в сторону HLP, собственного хранилища Hyperliquid, то есть в адрес, который остаётся адресом счёта. Оно прошло: спотовый баланс счёта упал с 60,78 до 55,78 USDC, а его капитал в хранилище показал 5,0.
Украденный ключ агента не может забрать ваши деньги, но может перевести их в хранилище, которым управляет кто-то другой, а его оператор потом может их потерять, торгуя против самого себя. Значит, фраза an agent key can only trade неверна. Свои страницы, которые так говорили, мы исправили, и именно поэтому единственная граница, которая действительно держится, это счёт, на котором только то, что вы готовы потерять.
Что добавляет хранитель
lpa никогда не подписывает это действие. Его хранитель подписывает закрытый список торговых действий: выставление, изменение и отмену ордеров, задание плеча и маржи рынка и установку кода приглашения. vaultTransfer в списке нет, так что ни одна команда от вас, от скрипта или от ИИ-помощника его не создаёт.
Взносы, выводы и перемещение маржи между dex подписывает ваш кошелёк: в Locker Vault на офлайн-телефоне, как церемонию с QR, или как запрос, который вы одобряете в расширении или мобильном кошельке. Хранитель к тому же проверяет каждое открытие по границам этого компьютера и по мандату, который подписал ваш кошелёк, и отвечает только на запросы, которые несут токен, записанный им при запуске.
Это граница для lpa, а не для ключа. Вору, у которого есть запечатанный файл ключа и ваш пароль, lpa не нужен, и ни один файл на вашем компьютере его не остановит.
Граница, которая действительно держится
Что бы ни происходило на компьютере, держатся три вещи: площадка отказывает этому ключу в любом выводе и любой отправке, одобрение кончается само, а на счёте, который используют только для агента, лежит лишь то, что вы туда положили. Последнее единственная граница, которая не зависит от программ.
Чтобы это прекратить: lpa mandate revoke сразу останавливает любое открытие и не требует кошелька; lpa agent revoke отправляет ключ на покой у площадки, с вашим кошельком; lpa panic останавливает все пилоты и копирование и убирает ключ из памяти. Ни один из трёх не закрывает позицию.