Intent-Router — скилл
Скилл превращает расплывчатый запрос в типизированный IntentSpec: сам ищет ответы в репозитории и задает один вопрос, который не решить без вас
- 74 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Читает репозиторий, документы, а при подключении и тикеты, чтобы искать ответы сам
- Пишет файлы спецификаций в папку `.intent/` рабочего каталога
Установка
- Работает в
Ручная установка
npx skills add angel291592/Intent-RouterУстановщик находит ваших агентов и ставит скилл в каждого. Ключи и зависимости не нужны.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Читает репозиторий, документы, а при подключении и тикеты, чтобы искать ответы сам
- Пишет файлы спецификаций в папку `.intent/` рабочего каталога
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Intent-Router — скилл «компилятор намерений» для ИИ-агентов. Он берет нечеткую просьбу вроде «добавь кэширование в API пользователей» и до начала работы превращает ее в структурный контракт IntentSpec. Работа идет тремя проходами: разбор запроса, поиск ответов, проверка и выдача. На втором проходе скилл сам ищет ответы там, где они лежат: в package.json, коде маршрутов, истории git, ADR, а для поддержки клиентов в логах заказов, тикетах и действующих правилах. Вопрос задается только тогда, когда ответ в источниках не найден и решение за вами. Если запрос противоречит себе, допускает два прочтения или опирается на посылку, которую ваш репозиторий уже опроверг, скилл говорит об этом, а при недостаточной определенности отказывается выдавать контракт. Каждый запуск заканчивается файлом `.intent/<intent>.intent.yaml`: у проверенных полей там есть указатели на доказательства, а сам файл хранит состояние от вопроса до выполненной работы. Следующая сессия читает файл раньше, чем что-либо искать: отвеченный вопрос не повторяется, согласованный контракт реализуется как записано. После работы скилл сверяет результат со спецификацией по одному ограничению.
Для кого. Для разработчиков и руководителей поддержки, которые ставят агентам короткие задачи и хотят получить уточняющий вопрос по делу вместо догадок.
Подходит, если
- Просьба вроде «добавь кэширование в API» оставляет открытыми и бэкенд, и политику отказа кэша
- Агент в прошлый раз угадал за вас и дал код, который при отказе Redis падает вместе с запросом
- Нужна проверка посылки: репозиторий уже содержит ADR о том, что подход пробовали и откатили
- Решение должно переживать сессии: спецификация сохраняется в `.intent/` и читается следующим агентом
- Разбор тикетов в поддержке: нужен ответ «возврат или замена» с опорой на заказ, тарифы и правила
Не подходит, если
- Запрос уже определен полностью: скилл не запускается и ничего не добавляет
- Вы просите объяснить, как что-то работает, а не сделать работу
- Правка тривиальна и обратима, например опечатка
- Нужна запущенная проверка: отметка `met` в Verify указывает на строку кода, а тесты скилл не запускает
Пример запроса к агенту
/intent-router добавь кэширование в API пользователейОграничения
Автор запускал скилл на OpenCode. Для Claude Code, Codex, Cursor и еще около двух десятков агентов совместимость заявлена по их документации и в репозитории не проверялась.
Качество зависит от доступных источников: без репозитория, тикетов или документов поиску негде искать и скилл чаще спрашивает. Автоматический запуск вероятностный, поэтому важную просьбу лучше начинать с явного вызова `/intent-router`. Уверенность в режиме без бэкенда — самооценка модели, ее стоит читать как порядковую шкалу. Цифры эвалов относятся к набору из 17 случаев по коду, поддержка клиентов измерена одним случаем, остальные области описаны, но не измерены.
Как отключить. Удалите папку `intent-router` из `.claude/skills/` или `.agents/skills/`, смотря куда ставили, либо из `~/` для глобальной установки. Файлы в `.intent/` скилл создал сам, их можно удалить вручную.
Частые вопросы
Как поставить Intent-Router в Claude Code или Codex?
Выполните `npx skills add angel291592/Intent-Router`: установщик находит ваших агентов и кладет скилл в каждого под именем `intent-router`. Вручную копируйте папку `skills/intent-router/` в `.claude/skills/` для Claude Code или `.agents/skills/` для Codex, Cursor, OpenCode и других.
Чем Intent-Router отличается от режима плана и grill-me?
Режим плана и grill-me сходятся к решению через вопросы. Intent-Router, по сравнению автора, дополнительно сверяет посылку запроса с доказательствами, сохраняет межсессионный артефакт `.intent/*.yaml` и сверяет готовую работу с договоренностью. Он также запускается сам, когда просьба недоопределена.
Что дал скилл в проверке кода?
В сравнении на одном задании с кэшем все 3 прогона со скиллом задали один вопрос и описали политику отказа кэша в коде, а ни один из 5 прогонов без скилла этого не сделал. Выборка небольшая, отчет лежит в evals/reports/.
Что такое файл IntentSpec и где он лежит?
Это YAML-контракт `.intent/<intent>.intent.yaml` в рабочей папке. У проверенных полей есть указатели на доказательства, у вопросов статус, а в конце записывается итог сверки готовой работы. Следующий агент читает его перед поиском и не переспрашивает уже отвеченное.
Работает ли Intent-Router без ключей и сервисов?
Да, базовый уровень L0 состоит только из промпта: без зависимостей, ключей и платных сервисов. Уровни с OpenAI-совместимым эндпоинтом и калиброванными моделями Jev или Laya планируются как необязательные.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыCLI-менеджер скиллов для ИИ-агентов: установка из репозиториев, перевод между форматами разных агентов и раскладка в их конфигурацию
Скилл оценивает промпт по пяти критериям, подбирает один из 31 фреймворка и переписывает запрос после уточняющих вопросов
Скилл параллельной дивергентной генерации идей для агентов: расходится по когнитивным рамкам, отсеивает ловушки и углубляет лучшее
Internet Court
Internet Court Skill
Скилл для сделок между агентами: единая точка входа в идентичность, переговоры, контракты, платежи, эскроу и разбор споров
Скилл и хуки, которые удерживают кодового агента в рамках задачи и убирают лишнюю защиту, ненужные контрольные суммы и расползание объема
Реестр скиллов с CLI и API: агент описывает задачу и получает рекомендацию с оценкой доверия и командой установки
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| Intent-Router (эта запись) | нет | 74 | |
| Spec Kit | нет | 143 920 | полный процесс разработки от спецификации, а не один скилл-уточнитель |
| Superpowers | нет | 307 845 | набор процессных скиллов с уточнением задачи, планом, TDD и ревью |
Коротко о README
README объясняет проблему: агент угадывает недостающие решения, а длинное интервью утомляет. Дальше показаны четыре состояния решения (ROUTE, PROBE, ASK, HALT), два разбора, один в кодовой базе и один в очереди поддержки, и сравнение с режимом плана, grill-me, spec-kit и Kiro по семи критериям. Отдельные разделы описывают артефакт IntentSpec, таблицу областей применения с отметкой «измерено» или «описано», эвалы и честные ограничения. В конце перечислены прошлые работы, на которые опирается автор.
Бейдж для README
Исходный SKILL.md
---
name: intent-router
description: >-
Converges an underspecified request into a typed IntentSpec before planning or acting. Use when
the user asks to implement, add, change, refactor, fix, migrate, configure, handle, triage, sort
out, look into or decide something and the request leaves decisions open (which objects, which
approach, what happens on failure, which trade-off), contradicts itself, admits two readings, or
rests on an approach its sources may rule out — in a codebase, a ticket queue, a research brief
or a runbook — or when the user says "clarify the intent", "what do you need from me", or
invokes intent-router. Looks up what its sources hold (code, history, decision records, a ticket
log, an order record, the policy in force) before asking; asks only preference or irreversible
questions, one at a time, with a recommended default; halts instead of guessing; checks the
delivered work against the spec. Silent on a fully stated task its sources do not contradict.
Not for explaining existing state ("what does X do", "why is Y slow").
license: MIT
metadata:
version: "1.3.0"
author: angel291592
homepage: https://github.com/angel291592/Intent-Router
---
# Intent-Router
A compiler does not guess the address of an undefined symbol. Do not guess the user's intent.
This runs one layer *before* planning, routing or coding. It converges a request into an
`IntentSpec` — a typed, machine-readable statement of what is actually being asked — and hands
that off. It does not implement anything itself.
## 1. Purpose and when this fires
Three passes, in compiler order: **Parse** the request into a draft spec, **Resolve** every
open question by looking it up or asking, then **Typecheck and emit** — route, ask, or halt.
Start when **both** hold:
1. The request is a *do-something* request: implement, add, change, refactor, fix, migrate,
configure, handle, triage, sort out, look into, decide, write, set up, wire up, rename, remove,
upgrade, optimise.
2. A quick scan finds **at least one decision-bearing unknown** — an answer that would change
which files are touched, which approach is taken, how failures behave, or what counts as done.
Do not start when: the request asks you to explain existing state ("what does X do", "why is Y
slow") rather than to find something out and produce a deliverable; the silence check below passes
and its premise check finds no contradiction — every decision-bearing item is already stated, so
there is nothing to converge; or the request is trivially scoped and reversible (fix a typo).
**Look for a saved contract first.** Before probing, look for earlier work on this same request:
`<workspace>/.intent/<intent>.intent.yaml`, stem = the `intent` slug, matching on
`request`/`objects`. Its `verification_status` decides: