Проверка кода прямо в редакторе · офлайн · открытый код

Пишите с ИИ смелее. Дыры и ошибки в коде найдёт AILC.

AILC подключается в ваш редактор одной строкой и проверяет код на опасные места и ошибки прямо там, где вы работаете. Решение «готово или нет» выносят точные правила по понятной формуле, поэтому на одном и том же коде ответ всегда одинаковый. Всё считается на вашей машине, код никуда не уходит.

  • 74 проверки в одной программе
  • 15 языков
  • 100% офлайн
AILC · ГОТОВ К СДАЧЕ? ~/project
  • Пароли и ключичисто
  • Опасные места в кодечисто
  • Известные дыры в библиотеках0
  • Недоделки и заглушки2
  • Тестыне запускались
Балл качества 86/100 ПОКА НЕ ГОТОВ

Две недоделки и незапущенные тесты. AILC не напишет «готово», пока проверка по-настоящему не пройдена.

622теста пройдено
74инструмента проверки
15языков и 12 экосистем
Apache 2.0открытое ядро
Работает в ClineCopilot · VS CodeClaude CodeCursor

Знакомая история

ИИ пишет код за секунды. А проверить глазами, что он там насочинял, вы не успеваете.

ИИ выдал код, вы его вставили и пошли дальше. А там мог затесаться забытый ключ, дыра для взлома или недоделка. После пары правок таких мест становится больше, и заметить их глазами всё сложнее.

Проверялок много: одна на секреты, другая на уязвимости, третья на зависимости. У каждой свой формат и своя настройка. Собирать и обслуживать этот зоопарк нет ни времени, ни желания.

AILC берёт это на себя, прямо в редакторе:

Не врёт «готово»

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

Не пугает зря

Половину пустых тревог отсекает сам: ключ в комментарии, заглушку, пример из учебника. Красным помечает только настоящие проблемы.

Видит, что спрятано

Отслеживает опасный путь данных через строки и функции. Ловит дыры, типичные именно для кода от нейросетей.

Как это работает

Три шага, всё внутри редактора, который у вас уже открыт.

  1. 01

    Вставьте три строки

    В настройку редактора. Готовая программа под вашу систему скачается сама. Ни сборки, ни скриптов, ни Rust.

  2. 02

    Напишите простыми словами

    Например, «проверь, всё ли хорошо перед сдачей». Имена инструментов знать не нужно, AILC сам подберёт проверки.

  3. 03

    Получите понятный вердикт

    Список проблем, балл качества и кнопка починить формат и стиль. Опасное помечено красным, остальное подсказками.

Как это выглядит в работе

Вы пишете агенту обычную просьбу. AILC проверяет и отвечает прямо в чате редактора, понятным языком и с указанием, где чинить.

Cursor · ваш проект
вы

проверь, всё ли ок перед сдачей

AILC

Прогнал 28 проверок. Нашёл 1 блокер и 2 совета.

  • Секрет в коде: боевой ключ Stripe, settings.py:14
  • Недоделка: функция charge_card не дописана, billing.py:3
  • Совет: три функции длиннее 80 строк, стоит разбить

Балл качества 78 из 100. Сдавать пока рано.

Починить формат и стиль автоматически? Да

Попробуйте за минуту

Слева, что вставить. Справа, что вы получите в ответ. Без формы и регистрации.

Совсем с нуля? Одна команда

Поставит AILC и сама напечатает готовый конфиг. Node и Docker не нужны.

macOS · Linux curl -fsSL https://raw.githubusercontent.com/pro-deploy/ailc/main/install.sh | sh
Windows irm https://raw.githubusercontent.com/pro-deploy/ailc/main/install.ps1 | iex

Уже есть Node.js или Docker? Вставьте конфиг сразу:

.mcp.json

ailc dod . вердикт готовности
  • Пароли и ключичисто
  • Опасные места (SAST)чисто
  • Поток данных от вводачисто
  • Недоделки1
  • Документация актуальнада
Балл качества 78/100 ЕСТЬ БЛОКЕР

Найдена недоделанная функция. Её видно с файлом и строкой, поэтому можно сразу починить.

При первом подключении AILC скачается сам и создаст в проекте папку .ailc с правилами и заготовками. Дальше ИИ-агент сам зовёт проверку, когда вы просите посмотреть код.

Редактор не находит npx?

Ставили Node.js через nvm? Редактор из дока может не найти npx. Тогда выберите Docker или впишите полный путь к файлу ailc (его покажет установщик, обычно ~/.local/bin/ailc) и аргумент serve. Для Cursor и Claude Code вместо ${workspaceFolder} впишите путь к папке проекта.

Ловит дыры, типичные для кода от нейросетей

AILC следит за путём данных: куда попадает то, что ввёл пользователь или ответила модель, и не доходит ли это до опасного места. Связь видна, даже если её разделяют несколько строк и переименований переменной. Обычные построчные проверки такое пропускают.

опасность 1

Ответ модели уходит в дело без проверки

Текст от нейросети попадает прямо в исполнение команды или на страницу. Через такую лазейку можно навредить. AILC замечает, что недоверенный ответ дошёл до опасного вызова.

опасность 2

Чужой ввод подменяет инструкцию модели

Пользовательский текст по кусочкам собирается в запрос к нейросети, и им можно подменить команду. AILC отслеживает, как ввод собирается в подсказку, и помечает это место.

Покрыт список OWASP для ИИ-приложений: инъекция в подсказку модели и небезопасная обработка её вывода. В каждом сообщении ссылка на каталог уязвимостей CWE.

Шесть случаев из жизни

Так выглядит код, который обычно выдаёт ИИ-агент, и так на него отвечает AILC. С файлом, строкой и серьёзностью, чтобы сразу было что чинить.

Секреты

Ключ остался прямо в коде

# settings.py
STRIPE_KEY = "sk_live_4eC39HqLyjW…"
критично Боевой ключ Stripe в коде · settings.py:2
SQL-инъекция

Ввод пользователя ушёл в запрос

uid = request.args["id"]
q = f"SELECT * FROM users WHERE id={uid}"
db.execute(q)
высокая Ввод дошёл до запроса · users.py:2 · CWE-89
Вывод модели

Выполняем ответ нейросети как код

const reply = await llm.chat(prompt)
eval(reply.content)
высокая eval ответа модели · agent.js:2 · OWASP LLM02
Обход пути

Имя файла берём прямо из запроса

const name = req.query.name
res.sendFile("/data/" + name)
высокая Можно выйти за папку · files.js:2 · CWE-22
Недоделка

ИИ оставил заглушку и забыл

def charge_card(amount):
    # TODO: дописать списание
    raise NotImplementedError
блокер Не дописано списание · billing.py:3
Зависимости

Подтянулась дырявая библиотека

# package-lock.json
"lodash": "4.17.11"
высокая Известная уязвимость · обновите до 4.17.21

И это малая часть. Внутри 74 проверки: захардкоженные ключи 31 вида, весь список OWASP Top 10, поток данных на 15 языках, мёртвый код, циклы, устаревшие доки, комплаенс. Имена знать не нужно, AILC подберёт сам.

Под капотом: откуда берётся вердикт

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

  1. Намерение

    Вы простыми словами говорите, что нужно проверить.

  2. Планировщик

    AILC сам выбирает нужные проверки под ваш проект и язык.

  3. Проверки

    Десятки проверок идут разом: секреты, поток данных, зависимости, качество.

  4. Опровержение

    Каждую находку AILC пытается опровергнуть. Ложные выкидывает, в отчёт идёт только настоящее.

  5. Балл и вердикт

    Жёсткая формула считает балл от 0 до 100. Нейросеть на него не влияет.

Как считается балл

100 баллов минус штраф за каждую находку. Критичная стоит 25, высокая 10, средняя 3, низкая 1 балл. На одном и том же коде балл всегда одинаковый, поэтому его можно показать руководителю или сделать условием выкатки в продакшен.

Что AILC находит в вашем коде

Не обещания, а конкретика. Внутри 74 инструмента в девяти семействах, вот главное.

Безопасность

13

Захардкоженные ключи: AWS, GitHub, Stripe и ещё 28 видов. Уязвимости из списка OWASP Top 10. Проверка библиотек на известные дыры, офлайн по базе OSV.

Качество

9

Запахи кода, неиспользуемый код, слишком сложные функции, циклические зависимости, недоделки и заглушки, недокументированный код.

Документация и контракт

9

Устаревшая документация относительно кода и сломанный публичный интерфейс, которым пользуются другие части. Доки обновляются прямо из кода.

Комплаенс РФ

5

Персональные данные в логах (152-ФЗ), хранение данных за рубежом (242-ФЗ), иностранные трекеры. Это сигналы для ревью, а не юридическая гарантия.

И ещё код-интеллект (карта проекта, граф вызовов), запуск тестов и линтера на 15 стеках, генерация документации, заметки и задачи. Имена знать не нужно: AILC подбирает проверки сам.

Глубокий разбор на 15 языках
PythonJavaScriptTypeScriptGoJavaRubyPHPC#RustKotlinScalaCC++SwiftDart

Чем отличается от привычного

Если вы уже просили нейросеть «глянуть код» или ставили классический сканер, вот в чём разница.

Что важно AILC Проверка нейросетью Классический сканер
Результат одинаковый каждый разданетда
Сам отсекает ложные тревогидакак повезётнет
Видит опасный путь данных между строкамидаотчастиотчасти
Ловит дыры именно в коде от ИИданетнет
Код не уходит наружу, работает офлайнданет, облакопо-разному
Сигналы комплаенса РФ (152-ФЗ, 242-ФЗ)данетнет
Подключениеодна строкавстроено в чатнастройка CI

Не только проверка, а весь цикл

AILC расшифровывается как AI Life Cycle. Он рядом на всех шагах работы с кодом, а не просто ругает за ошибки в конце.

Проектирование фичи

design

Заготовка спецификации и запись архитектурного решения, чтобы ИИ не начинал с чистого листа и не ломал то, что уже работает.

Автопочинка

fix

Чинит формат и стиль сама, безопасно, не трогая логику. Одна команда вместо ручного причёсывания кода.

Фоновый присмотр

watch

Следит за проектом в фоне, гоняет быстрые проверки и держит документацию свежей. Можно поставить на автозапуск.

Документация из кода

docs

Описание, архитектура, схемы и словарь терминов собираются из кода и обновляются сами. Ваши ручные правки сохраняются.

Мастер комплаенса РФ

152-ФЗ

Пара вопросов о вашем сервисе, и вы получаете персональный чек-лист: только ваши обязанности по 152-ФЗ и 242-ФЗ, а не двадцать законов вообще.

Отчёт для CI

SARIF

Стандартный отчёт SARIF 2.1.0 идёт прямо во вкладку безопасности GitHub или GitLab, без доработок.

Для команды и тимлида

Один человек ещё держит планку качества в голове. Команда из десяти или пятидесяти, где часть кода пишет ИИ, в голове уже не удержит. AILC превращает «как у нас принято» в один файл правил и применяет его одинаково ко всем, от стажёра до сеньора, и в редакторе, и в пул-реквесте.

Один стандарт на всех

Что считать проблемой и что блокирует сдачу, задано один раз. Стажёр, сеньор и ИИ-агент проходят одинаковые проверки. Никто не протащит мимо ревью то, что у вас не принято, ни по незнанию, ни в спешке перед релизом.

Правила нельзя тихо ослабить

Файл политики сверяется с эталоном вне репозитория. Если кто-то поднял порог или выкинул проверку, гейт покажет это в отчёте. Целостность закрепляется контрольной суммой, так что подмену видно сразу.

Гейт прямо на пул-реквест

Отчёт в стандартном формате SARIF 2.1.0 ложится во вкладку безопасности GitHub или GitLab без доработок. Блокеры видно в самом пул-реквесте, и слияние можно не пускать, пока они не закрыты.

Меньше рутины на ревью

Механику AILC берёт на себя: секреты, инъекции, мёртвый код, недоделки. Ревьюер тратит время на архитектуру и смысл, а не на поиск забытого ключа или опечатки в проверке прав доступа.

Код остаётся внутри периметра

Проверка идёт на машине разработчика и на ваших раннерах, без облака и без интернета. Это снимает вопросы службы безопасности и закрывает требования регуляторов: 152-ФЗ, 242-ФЗ, ФСТЭК.

Вердикт как условие релиза

Один и тот же код даёт один и тот же балл по понятной формуле. На такой вердикт можно опереться: показать руководителю, занести в регламент, сделать обязательным для выкатки. Он не поедет от обновления модели.

ailc.policy.toml правила компании
[gate]
block_at = "high"          # что блокирует сдачу
families = ["security", "quality", "spec"]

[thresholds]
max_complexity = 50        # предел сложности функции
doc_coverage_floor = 50    # доков не меньше половины

Политика как код, а не договорённость на словах

Правила лежат в репозитории рядом с кодом и применяются ко всем автоматически. Поменять стандарт для всей команды, это один коммит в этот файл, а не переписка в чате и вечные напоминания на ревью.

Открытое ядро бесплатно для всей команды. Командная панель с общими метриками и корпоративный уровень с управлением доступом идут отдельно.

Открыто и проверяемо

Для разработчика открытый код и честность весомее красивых логотипов.

622теста, включая корпус ложных срабатываний и матрицу по 15 языкам
Apache 2.0открытое ядро, можно форкнуть, доработать и собрать самому
Честноесть публичный раздел ограничений и дорожная карта, без приукрашивания
Вживуюна странице реальный вывод вердикта, а не абстрактная похвала

Честно говоря: AILC не заменяет ревью живым человеком и пентест, а сигналы по закону не юридическая гарантия. Глубокий разбор работает на 15 языках, для редких проверки проще. Мы пишем это прямо, потому что доверие дороже красивых обещаний.

Частые вопросы

Коротко и честно, без маркетинга.

Сколько это стоит?

Открытое ядро бесплатно, лицензия Apache 2.0. Им можно пользоваться, форкать и собирать самому без ограничений. Платные дополнения (командная панель, корпоративный уровень, аттестационный отчёт по комплаенсу) идут отдельно и в открытое ядро не входят.

Ложные тревоги не убьют доверие, как у других сканеров?

Перед показом каждая находка проходит проверку на ложность: ключ в комментарии, заглушка вроде changeme, описание самого правила, защищённый разбор файла. В отчёт и в балл идёт только то, что выжило проверку. Число опровергнутого видно отдельно.

Мой код никуда не утечёт?

Нет. AILC это одна программа, которая работает на вашей машине без интернета и облака. Код не отправляется наружу. Для команд это же и аргумент приватности и российского комплаенса.

Это замедлит работу или заблокирует релиз?

Проверка идёт локально и быстро, вердикт считается за секунды. Один шаг ограничен 180 секундами: зависшая проверка помечается, но не вешает прогон. Блокировать релиз или нет, решаете вы через правила компании. По умолчанию инструмент ничего не ломает.

Чем это лучше обычной проверки нейросетью?

Ответ нейросети меняется от запуска к запуску и от версии модели. Здесь итоговое решение считают точные правила по понятной формуле, и на одном коде результат всегда одинаковый. Его можно показать руководителю и поставить условием выкатки.

Мой стек поддерживается?

Глубокий анализ работает на 15 языках, включая мобильные и системные: Kotlin, Swift, Dart, C, C++. Если язык редкий, AILC честно откатывается на безопасный набор проверок и помечает, что именно не покрыто.

У нас уже есть Semgrep или SonarQube. Зачем ещё это?

Эти инструменты часто видят опасное место, только если ввод и опасный вызов на одной строке. AILC отслеживает путь данных через несколько строк и переименований, и отдельно ловит дыры, типичные именно для кода с нейросетями.

Подключите за минуту и пишите спокойно

Одна строка в настройку, готовая программа скачается сама. Дальше код проверяется прямо в редакторе, а вердикт всегда понятный и предсказуемый.

Вопросы? Telegram @birkinmax, группа @bait_su

Подключить за минуту