SKILLEMALL.ai

BC bank-skill

Традиционное банковское обслуживание через Wise API + ончейн-обмен токенов на Base

машинный переводПоказать оригиналСкрыть оригинал«Traditional banking via Wise API + on-chain token swaps on Base…»

Traditional banking via Wise API + on-chain token swaps on Base

modbender/skill-library-mcp Agent Skills автор: modbender MIT 28 файлов · 1 скрипт тело ≈ 2 310 токенов Открыть источникgithub.com проанализирован 2 дн назад

Традиционное банковское обслуживание через Wise API + ончейн-обмен токенов на Base

Как процесс C 53/100 · Есть пробелы — слабые места: результат и критерий готовности, согласованность, повторный запуск

ИнтеграцияРазработкаИИ и агентытип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
B
78/100
безопасность, качество, тесты
Безопасность 60%
77
Качество 40%
80
Прогон на моделях
не было
Процессный рейтинг
C
53/100
Есть пробелы
Результат и критерий готовности вес 14
0
Отчётность по ходу вес 2
0
Повторный запуск вес 4
30
три самых слабых из десяти параметров · все десять

Чем это грозит

Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.

Рискованное назначение средняя серьёзность

Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.

Если установить

Назначение скилла само по себе рискованное: работа с кошельками, паролями браузера, наступательная безопасность. Даже честная реализация даёт агенту доступ к тому, что стоит денег.

Автору

Объясните в description, зачем нужен доступ и как он ограничен; добавьте тесты, которые показывают отказ на опасных запросах.

Как улучшить

    Для прогона на моделях — необязательно
    • Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
    • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

    Находки guard · 15

    ✓ Критических и высоких находок нет

    Средние и низкие: 15
    • средняя Рискованное назначение intent-wallet-secrets README.md:55
      Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров
      | `CLAWBANK_WALLET_PASSWORD` | No | Sweeper wallet keystore password (default: clawbank-default) |
    • средняя Рискованное назначение intent-wallet-secrets SKILL.md:22
      Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров
      - Optional: `CLAWBANK_WALLET_PASSWORD` (wallet keystore password, defaults to "clawbank-default")
    • низкая Секреты в коде secret-high-entropy-token bankskills/sweeper.py:17
      Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)
      UNIVERSAL_ROUTER_ADDRESS = "0x6f…b43"
      в кавычках
    • низкая Секреты в коде secret-high-entropy-token bankskills/sweeper.py:26
      Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)
      CLAWBANK_HOOKS = "0xb4…8CC"
      в кавычках
    • низкая Секреты в коде secret-high-entropy-token bankskills/sweeper.py:329
      Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)
      V3_ROUTER = "0x3f…FAD"
      в кавычках
    • низкая Секреты в коде secret-high-entropy-token bankskills/sweeper.py:479
      Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)
      CLAWBANK_ADDRESS = "0x16…B07"
      детектор
    • низкая Рискованное назначение intent-wallet-secrets bankskills/wallet.py:84
      Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)
      """Export the wallet private key for manual recovery or import into MetaMask.
      в кавычках
    • низкая Секреты в коде secret-high-entropy-token README.md:157
      Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)
      "Set target token to 0x83…913"  (USDC)
      детектор
    • низкая Секреты в коде secret-high-entropy-token README.md:304
      Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)
      set_target_token("0x83…913")  # USDC
      детектор
    • низкая Секреты в коде secret-high-entropy-token README.md:307
      Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)
      set_target_token("0x16…B07")  # ClawBank
      детектор
    • низкая Секреты в коде secret-high-entropy-token README.md:466
      Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)
      - `token_address` — ERC-20 contract address on Base (e.g., "0x83…913" for USDC)
      в кавычках
    • низкая Секреты в коде secret-high-entropy-token README.md:502
      Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)
      set_target_token("0x83…913")  # USDC
      детектор
    • низкая Секреты в коде secret-high-entropy-token SKILL.md:202
      Строка, похожая на токен (может быть id, хеш или секрет) (определение детектора / чёрного списка)
      echo '{"action": "set-target-token", "tokenAddress": "0x83…913"}' | ./run.sh
      детектор
    • низкая Секреты в коде secret-high-entropy-token SKILL.md:227
      Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)
      echo '{"action": "get-token-balance", "tokenAddress": "0x83…913"}' | ./run.sh
      в кавычках
    • низкая Секреты в коде secret-high-entropy-token SKILL.md:260
      Строка, похожая на токен (может быть id, хеш или секрет) (значение-заглушка)
      echo '{"action": "send-token", "tokenAddress": "0x83…913", "toAddress": "0x...", "amount": 5.0}' | ./run.sh
      заглушка

    Просканировано файлов: 28. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.

    По спецификации Agent Skills

    • заметка frontmatter-key неизвестное поле фронтматтера "homepage"

    Процессный рейтинг: все десять параметров 53/100

    • 0Результат и критерий готовности. Не сказано, что считать результатом
    • 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
    • 30Повторный запуск. Изменяющих операций: 17, без проверки текущего состояния
    • 40Согласованность. Имя во frontmatter (bank-skill) не совпадает с папкой (bank-skills)
    • 50Когда включается. Не сказано, при каком запросе скилл включается
    • 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
    • 60Инструменты и файлы. Используются инструменты (web), но во frontmatter они не объявлены
    • 70Входы и предусловия. Входные данные и предусловия перечислены
    • 85Шаги. Шагов: 62, расплывчатых формулировок: 1
    • 100Стоимость исполнения. Тело инструкции 2310 токенов

    Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.

    Сигналы качества

    • +5В description нет примеров фраз, по которым скилл должен срабатывать
    • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
    • +3Длина description 63: рекомендуется 120–800 символов
    • +3Формат ответа не описан: модель каждый раз решает сама
    • +1Лицензия не указана
    • +2Инструкции на одном языке
    • +4Структура: 21 заголовков
    • +3Пошаговые инструкции: 62 пунктов
    • +4Есть примеры (15 блоков кода)

    База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 80.