DC aawp
AAWP (AI Agent Wallet Protocol) — единственный протокол криптокошелька, созданный исключительно для AI-агентов на блокчейнах, совместимых с EVM. Не для людей. Подписывающим является сам AI-агент, криптографически привязанный при создании кошелька. Поддерживает управление жизненным циклом кошелька, переводы токенов, DEX-свопы, кросс-чейн бриджинг, произвольные взаимодействия с контрактами, автоматизацию DCA и оповещения о ценах.
машинный переводПоказать оригиналСкрыть оригинал«AAWP (AI Agent Wallet Protocol) — the only crypto wallet protocol buil…»
AAWP (AI Agent Wallet Protocol) — the only crypto wallet protocol built exclusively for AI Agents on EVM-compatible blockchains. Not for humans. The signer is the AI Agent itself, cryptographically bound at wallet creation. Supports wallet lifecycle management, token transfers, DEX swaps, cross-chain bridging, arbitrary contract interactions, DCA automation, and price alerts.
AAWP (AI Agent Wallet Protocol) — единственный протокол криптокошелька, созданный исключительно для AI-агентов на блокчейнах, совместимых с EVM.
Как процесс C 59/100 · Есть пробелы — слабые места: входы и предусловия, повторный запуск, отчётность по ходу
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Как улучшить
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 41
✓ Критических и высоких находок нет
Средние и низкие: 41
-
средняя Опасные команды
cmd-pipe-to-shellREADME.md:64Скачивание и запуск удалённого кода с неизвестного хоста (pipe в shell) (хост вендора самого скилла)curl -fsSL https://aawp.ai/install.sh | sh
vendor-host -
средняя Опасные команды
cmd-persistencescripts/dca.js:73Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (в кавычках — упоминание, а не команда)execSync(`(crontab -l 2>/dev/null; echo '${cronLine}') | crontab -`, { stdio: 'pipe' });в кавычках -
средняя Опасные команды
cmd-persistencescripts/price-alert.js:144Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (в кавычках — упоминание, а не команда)execSync(`(crontab -l 2>/dev/null; echo '${cronLine}') | crontab -`, { stdio: 'pipe' });в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenconfig/chains.json:8Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)"factory": "0xAA…aAA",
детектор -
низкая Секреты в коде
secret-high-entropy-tokenconfig/chains.json:9Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)"identity": "0xAA…D1d",
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenconfig/chains.json:10Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)"walletDeployer": "0xB9…91e",
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenconfig/chains.json:14Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)"USDC": "0x83…913",
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenconfig/chains.json:15Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)"USDT": "0xfd…bb2",
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenlib/multicall.js:8Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const MULT…DDR = '0xcA…A11';
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenREADME.md:290Строка, похожая на токен (может быть id, хеш или секрет) (строка таблицы в документации)| **Factory** | [`0xAA…aAA`](https://basescan.org/address/0xAA…aAA) |
таблица -
низкая Секреты в коде
secret-high-entropy-tokenREADME.md:291Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка; строка таблицы в документации)| **Identity** | [`0xAA…D1d`](https://basescan.org/address/0xAA…D1d) |
детектортаблица -
низкая Опасные команды
cmd-cron-mentionscripts/dca.js:71Упоминание редактирования crontab (в кавычках — упоминание, а не команда)const existing = execSync('crontab -l 2>/dev/null || true', { encoding: 'utf8' });в кавычках -
низкая Опасные команды
cmd-cron-mentionscripts/dca.js:73Упоминание редактирования crontab (в кавычках — упоминание, а не команда)execSync(`(crontab -l 2>/dev/null; echo '${cronLine}') | crontab -`, { stdio: 'pipe' });в кавычках -
низкая Опасные команды
cmd-cron-mentionscripts/dca.js:91Упоминание редактирования crontab (в кавычках — упоминание, а не команда)const existing = execSync('crontab -l 2>/dev/null', { encoding: 'utf8' });в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/limit-order.js:45Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const INCH_LO_CONTRACT_BSC = '0x11…A65';
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/limit-order.js:70Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const COW_SETTLEMENT = '0x90…b41';
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/limit-order.js:74Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)eth: '0xC9…110',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/limit-order.js:75Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)base: '0xC9…110',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/limit-order.js:76Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)arb: '0xC9…110',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/nft.js:66Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)'0xBC…13D': 'BAYC',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/nft.js:67Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)'0xb4…BBB': 'CryptoPunks',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/nft.js:68Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)'0x60…7c6': 'MAYC',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/nft.js:69Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)'0x49…28B': 'CloneX',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/nft.js:72Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)'0xd4…5e2': 'OnchainGasPower',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/portfolio.js:30Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const MC3_ADDR = '0xcA…A11';
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/portfolio.js:48Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)USDC: '0x83…913',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/portfolio.js:50Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)cbBTC: '0xcb…3Bf',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/portfolio.js:51Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)USDbC: '0xd9…6CA',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/portfolio.js:52Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)DAI: '0x50…0Cb',
в кавычках -
низкая Опасные команды
cmd-cron-mentionscripts/price-alert.js:142Упоминание редактирования crontab (в кавычках — упоминание, а не команда)const existing = execSync('crontab -l 2>/dev/null || true', { encoding: 'utf8' });в кавычках -
низкая Опасные команды
cmd-cron-mentionscripts/price-alert.js:144Упоминание редактирования crontab (в кавычках — упоминание, а не команда)execSync(`(crontab -l 2>/dev/null; echo '${cronLine}') | crontab -`, { stdio: 'pipe' });в кавычках -
низкая Опасные команды
cmd-background-processscripts/provision.sh:208Запуск фонового / автозапускаемого процессаnohup node scripts/start-daemon.js > "$OUT" 2>&1 &
-
низкая Опасные команды
cmd-background-processscripts/restart-daemon.sh:45Запуск фонового / автозапускаемого процессаnohup node scripts/start-daemon.js > "$OUT" 2>&1 &
-
низкая Секреты в коде
secret-high-entropy-tokenscripts/wallet-manager.js:424Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const MC3 = chai…ll3 || '0xcA…A11';
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/yield.js:33Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)eth: '0x87…4E2',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/yield.js:34Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)base: '0xA2…1c5',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/yield.js:35Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)arb: '0x79…4aD',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/yield.js:36Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)op: '0x79…4aD',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenscripts/yield.js:37Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)polygon: '0x79…4aD',
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokenSKILL.md:480Строка, похожая на токен (может быть id, хеш или секрет) (строка таблицы в документации)| **Factory Proxy** | `0xAA…aAA` |
таблица -
низкая Секреты в коде
secret-high-entropy-tokenSKILL.md:481Строка, похожая на токен (может быть id, хеш или секрет) (строка таблицы в документации)| **Identity Proxy** | `0xAA…D1d` |
таблица
Просканировано файлов: 32. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда") - заметка
frontmatter-keyнеизвестное поле фронтматтера "environment" - заметка
frontmatter-keyнеизвестное поле фронтматтера "credentials" - заметка
frontmatter-keyнеизвестное поле фронтматтера "persistence" - заметка
frontmatter-keyнеизвестное поле фронтматтера "native_binary" - заметка
frontmatter-keyнеизвестное поле фронтматтера "risk_disclosure"
Процессный рейтинг: все десять параметров 59/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 15, без проверки текущего состояния
- 50Когда включается. Не сказано, при каком запросе скилл включается
- 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
- 60Инструменты и файлы. Используются инструменты (bash, web, node), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Стоимость исполнения. Тело инструкции 4103 токенов
- 100Шаги. Шагов: 12
- 100Согласованность. Имя и обязательные поля на месте
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 16. Похоже на несколько доменов в одном скилле
- low Ответ описан самодельной разметкой (3 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- -35 из 17 скриптов не упомянуты в SKILL.md
- +1Лицензия не указана
- +2Инструкции на одном языке
- +4Описание говорит, когда скилл НЕ применять
- +3Длина description 378 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 37 заголовков
- +3Пошаговые инструкции: 12 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (22 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 73.