🔒 Misti — статический анализатор Tact-контрактов для TON
TL;DR
OpenSource инструмент, который находит баги в коде до деплоя: 41+ детектор, интеграция в CI/CD и расширяемость под свои правила.
⸻
Зачем он нужен
• Экономит часы ручной ревизии и снижает шанс уязвимостей в mainnet.
• Проверяет типичные «грабли» Tact: переполнения Cell, неверные exit-коды, забытый PRG-seed, дубли импорта и т.д.
• Ставится одной строкой и легко встраивается в любые пайплайны:
npm i -g @nowarp/misti && misti ./contracts
⸻
Что нового в v0.9.0 (25 июня 2025)
• +5 свежих детекторов (DuplicatedImport, TransitiveImport, UnusedMethodArgument, и др.)
• Поддержка внешних tools и отчётов в формате SARIF (загружается в GitHub Security tab).
• SuboptimalSend теперь советует notify/reply, а не только forward.
• misti --version сразу показывает максимальную поддерживаемую версию Tact.
⸻
Как попробовать
# (опция) ставим Soufflé для «тяжёлых» проверок
brew install souffle-lang # macOS пример
npm i -g @nowarp/misti
misti --all-detectors path/to/my.contracts
Blueprint-проекты: подключайте плагин @ton-ai-core/blueprint-misti и гоняйте анализ одной командой
yarn blueprint misti
⸻
Из интересного
• 41+ встроенных детекторов, сгруппированных по Security / Best Practices / Optimization.
• Экспорт результатов в JSON / SARIF / цветной терминал.
• Подробная документация со сниппетами фиксов — удобно обучать джунов.
⸻
🗂 Источники
• GitHub
• Docs + список детекторов
• Release 0.9.0
- Tg канал
Спасибо @jubnzv и команде Nowarp за вклад в безопасность экосистемы TON! 💎
TL;DR
OpenSource инструмент, который находит баги в коде до деплоя: 41+ детектор, интеграция в CI/CD и расширяемость под свои правила.
⸻
Зачем он нужен
• Экономит часы ручной ревизии и снижает шанс уязвимостей в mainnet.
• Проверяет типичные «грабли» Tact: переполнения Cell, неверные exit-коды, забытый PRG-seed, дубли импорта и т.д.
• Ставится одной строкой и легко встраивается в любые пайплайны:
npm i -g @nowarp/misti && misti ./contracts
⸻
Что нового в v0.9.0 (25 июня 2025)
• +5 свежих детекторов (DuplicatedImport, TransitiveImport, UnusedMethodArgument, и др.)
• Поддержка внешних tools и отчётов в формате SARIF (загружается в GitHub Security tab).
• SuboptimalSend теперь советует notify/reply, а не только forward.
• misti --version сразу показывает максимальную поддерживаемую версию Tact.
⸻
Как попробовать
# (опция) ставим Soufflé для «тяжёлых» проверок
brew install souffle-lang # macOS пример
npm i -g @nowarp/misti
misti --all-detectors path/to/my.contracts
Blueprint-проекты: подключайте плагин @ton-ai-core/blueprint-misti и гоняйте анализ одной командой
yarn blueprint misti
⸻
Из интересного
• 41+ встроенных детекторов, сгруппированных по Security / Best Practices / Optimization.
• Экспорт результатов в JSON / SARIF / цветной терминал.
• Подробная документация со сниппетами фиксов — удобно обучать джунов.
⸻
🗂 Источники
• GitHub
• Docs + список детекторов
• Release 0.9.0
- Tg канал
Спасибо @jubnzv и команде Nowarp за вклад в безопасность экосистемы TON! 💎