LintLang CLI
Статический линтер инструкций агента: находит двусмысленные описания инструментов и пробелы в схемах до запуска, без модели и сети
- 144 ★ репозитория
- Последний коммит
- Apache-2.0
Минимальный доступ
Почему такой уровень
- Утилита читает файлы проекта и выводит отчет, при сканировании не вызывает модель и не использует сеть.
Установка
- Работает в
В терминале, через 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`: блокировать будут только новые или измененные замечания.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыЛинтер в стиле ESLint, где правила проверяет модель: ищет в коде, сгенерированном агентами, то, что синтаксис не ловит, и ставит вердикт в CI
Проверяет пакеты Agent Skills: структуру, ссылки, объем в токенах и качество инструкций с оценкой моделью-судьей
Локальный отладчик TypeScript-агентов: дерево шагов, проверка траектории в CI и архив доказательств без аккаунта.
Проверяет diff и переписку с агентом: ловит ошибки в коде и расхождения между вашей просьбой и тем, что агент сделал. CLI, скилл и GitHub Action
Оценка от 0 до 10 для CLAUDE.md и AGENTS.md: Reporails находит размытые правила, повторы и битые импорты
Поправки, которые вы даете агенту, становятся файлами-правилами в репозитории и проверяются локально и в CI одной командой.
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| LintLang (эта карточка) | нет | 144 | |
| agnix | да | 471 | линтер для CLAUDE.md, AGENTS.md, SKILL.md и MCP-конфигов с сотнями правил и автофиксом; здесь упор на двусмысленность инструментов, схемы и условия остановки |
| alint | нет | 137 | линтер, в котором правила проверяет модель; здесь сканирование детерминированное, без модели и сети |
Коротко о README
Документация коротко объясняет, чем линтер отличается от проверки моделью и от обычных линтеров, и показывает вывод на тестовом образце. Дальше идут быстрый старт, CI с базовой линией, раздел с измеримыми данными о тестах и список интеграций с агентами и CI.