LintLang CLI

Статический линтер инструкций агента: находит двусмысленные описания инструментов и пробелы в схемах до запуска, без модели и сети

  • 144 ★ репозитория
  • Последний коммит
  • Apache-2.0
CLI

Минимальный доступ

Почему такой уровень

  • Утилита читает файлы проекта и выводит отчет, при сканировании не вызывает модель и не использует сеть.
Все причины и проверки

hermes-labs-ai/lintlang

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add cli/lintlang

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

Другие способы установки

Доступ и проверки

Как мы проверяем

Минимальный доступИнструмент ничего не запускает и не ходит в сеть.

  • Утилита читает файлы проекта и выводит отчет, при сканировании не вызывает модель и не использует сеть.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

LintLang проверяет тексты и интерфейсы, по которым работает ИИ-агент: системные промпты, описания инструментов в MCP и при вызове функций, схемы параметров, `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, `SKILL.md` и промпты внутри кода на Python. Команда `uvx lintlang scan .` обходит каталог, находит такие фрагменты в JSON, YAML, Markdown и Python и выдает замечания с файлом, строкой и конкретной правкой. Строку утилита указывает только там, где может ее обосновать. Правила ловят похожие инструменты без отличий в описании (правило H1.6), отсутствие условий остановки у повторов и циклов, пропуски обязательных полей в схемах, несколько форматов вывода в одном промпте и длинные списки указаний без приоритета. В `SKILL.md` проверяются метаданные, критерии применения и совпадение имени скилла с папкой. Сканирование локальное и детерминированное: модель и сеть не вызываются, один и тот же каталог дает одинаковый JSON и SARIF. Поэтому проверку можно ставить в CI: флаг `--fail-on fail` блокирует сборку при HIGH и CRITICAL, а `lintlang init --github` создает рабочий процесс для GitHub Actions. Отчеты выходят также в формате GitLab Code Quality.

Для кого. Авторам скиллов и MCP-серверов, а также командам с большими `AGENTS.md`, которым нужна автоматическая проверка инструкций в CI и в редакторе агента.

Подходит, если

  • Скилл готовят к публикации, и перед релизом нужен автоматический прогон по его файлам.
  • У MCP-сервера много похожих инструментов, и модель путается, какой вызвать: утилита покажет пары без различий в описании.
  • Проблемы инструкций хочется ловить в «pull request» до сбоя агента и поставить блокирующую проверку.
  • Репозиторий давно накопил замечания, и нужно записать их в базовую линию, чтобы блокировать только новые.
  • В Claude Code или Cursor нужна подсказка после правки файла с инструкциями.

Не подходит, если

  • Нужно проверить поведение модели в работе: LintLang статический, он не запускает агента и не видит реальных вызовов инструментов.
  • Нужны семантические противоречия между двумя указаниями, например «всегда X» и «никогда X»: такие конфликты он не находит.
  • Нужна оценка текста человеком или моделью: правила проверяют структуру, а не качество формулировок.

Пример запроса к агенту

Прогони lintlang по каталогу скилла и исправь замечания уровня HIGH в описаниях инструментов.

Ограничения

Нужен Python 3.10 или новее, единственная зависимость времени выполнения — `pyyaml`. Чистый результат означает лишь то, что выбранные статические проверки не нашли дефектов в распознанном содержимом. Если распознаваемых структур нет, статус будет SKIPPED, а не PASS. Утилита не запускает модель, не наблюдает выбор инструментов в рабочем режиме и не доказывает безопасность агента. По умолчанию замечания носят рекомендательный характер: блокировку включают флагом `--fail-on`. Хуки в хост-агентах заменить проверку в CI не могут.

Как отключить. Удалите пакет командой `pip uninstall lintlang`, файл `lintlang` из `.github/workflows` и запись хука из `.pre-commit-config.yaml`. При запуске через `uvx` ничего постоянного не ставится.

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

Как запустить LintLang без установки?

Выполните `uvx lintlang scan .` в корне проекта. Можно указать и один файл: `uvx lintlang scan SKILL.md`. Для постоянной установки есть `pip install lintlang` и `brew install hermes-labs-ai/tap/lintlang`.

Что проверяет утилита в SKILL.md?

Шапку с метаданными, условия применения и имя папки. Если описание не говорит, когда включать скилл, это попадет в замечания.

Как включить блокировку в CI?

Запустите `lintlang scan . --fail-on fail`, чтобы сборка падала на HIGH и CRITICAL, или `--fail-on review`, если нужны и MEDIUM. Готовый рабочий процесс для GitHub Actions создает `lintlang init --github --path .`.

Как подключить LintLang к Claude Code?

В репозитории есть плагин для Claude Code в папке `integrations/claude-code` и манифест `.claude-plugin/marketplace.json`. После правки файла с инструкциями плагин показывает рекомендации и сам файлы не переписывает.

Что делать, если замечаний накопилось много?

Запишите их в базовую линию командой `lintlang scan . --write-baseline .lintlang-baseline.json`, затем проверяйте с `--baseline`: блокировать будут только новые или измененные замечания.

Обсуждение

Вопросов и отзывов пока нет.

Линтер в стиле ESLint, где правила проверяет модель: ищет в коде, сгенерированном агентами, то, что синтаксис не ловит, и ставит вердикт в CI

CLIРасширенный доступ137Звезды репозитория

Проверяет пакеты Agent Skills: структуру, ссылки, объем в токенах и качество инструкций с оценкой моделью-судьей

CLIРасширенный доступ265Звезды репозитория

Локальный отладчик TypeScript-агентов: дерево шагов, проверка траектории в CI и архив доказательств без аккаунта.

CLIРасширенный доступ212Звезды репозитория

Проверяет diff и переписку с агентом: ловит ошибки в коде и расхождения между вашей просьбой и тем, что агент сделал. CLI, скилл и GitHub Action

СкиллРасширенный доступ502Звезды репозитория

Оценка от 0 до 10 для CLAUDE.md и AGENTS.md: Reporails находит размытые правила, повторы и битые импорты

CLIРасширенный доступ112Звезды репозитория

Поправки, которые вы даете агенту, становятся файлами-правилами в репозитории и проверяются локально и в CI одной командой.

CLIРасширенный доступ179Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйЗвезды репозиторияГлавное отличие
LintLang (эта карточка)нет144
agnixда471линтер для CLAUDE.md, AGENTS.md, SKILL.md и MCP-конфигов с сотнями правил и автофиксом; здесь упор на двусмысленность инструментов, схемы и условия остановки
alintнет137линтер, в котором правила проверяет модель; здесь сканирование детерминированное, без модели и сети

Коротко о README

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

Бейдж для README

Сообщить о проблеме

Foxx AILintLang
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.