Query
Skill matvej-melikhov/karpathy-llm-wiki/.claude/skills/query
Программная реализация паттерна LLM Wiki (А. Карпаты). ВКР СПбГЭТУ "ЛЭТИ" 2026
npx -y skills add matvej-melikhov/karpathy-llm-wiki --skill queryAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 18 days oldThe repository was created 18 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Ответ на вопросы СТРОГО из wiki-vault (cache → index → релевантные страницы → синтез с цитатами). Используется только при явных wiki-сигналах в запросе: пользователь хочет именно содержимое своей базы, а не ответ из общего знания. Если триггеров нет — отдай нейтральный вопрос в /study. Триггеры: /query, /query quick:, /query deep:, 'что у меня в базе про', 'что в моей wiki про', 'найди в wiki', 'по моей базе', 'по vault', 'из моей базы'.
SKILL.md
14.7 KB, ~3.5k tokens by cl100k_base, as published. Nobody here has run it
query: запросы к wiki
Wiki уже выполнила работу синтеза. Читай стратегически, отвечай точно, файлируй хорошие ответы обратно — и знание накапливается.
Команда и флаги
| Команда | Режим | Что читает | Токенов | Для чего |
|---|---|---|---|---|
/query --quick [вопрос] | Quick | cache.md + index.md | ~1500 | Фактические вопросы, "что такое X" |
/query [вопрос] | Standard | cache + index + (опц. domain) + 3-5 страниц | ~3000 | Большинство вопросов |
/query --deep [вопрос] | Deep | вся wiki + опционально web | ~8000+ | Сравнения, синтез, "расскажи всё про X" |
Иерархия чтения
Каждый режим следует общему принципу: читать в порядке от дешёвого/широкого к дорогому/узкому, останавливаться как только ответ собран.
1. cache.md ~500 токенов недавний контекст
↓ если мало
2. index.md ~1000 токенов таблицы (страница + саммари)
↓ если вопрос попал в конкретную область
3. domains/<X>.md ~500 токенов локальный индекс области (MOC)
↓ если ясны конкретные страницы
4. отдельные страницы 100-300 токенов только релевантные по саммари
domains/<X>.md — локальный индекс: содержит ключевые концепции области, таблицу всех страниц домена (через Bases-запрос), краткое описание. Если вопрос явно лежит внутри одного домена (например, спросили про PPO — это domains/Reinforcement Learning.md), читай domain напрямую вместо построчного сканирования главного index.
Признаки, что нужно идти через domain:
- вопрос содержит термин, который явно принадлежит одной области
- index показывает много страниц с одним и тем же
domainв frontmatter - пользователь спрашивает "что у нас есть про <область>"
Hybrid query (большая wiki)
При росте wiki выше определённого порога чтение index.md целиком становится дорого по токенам. Hybrid-режим использует embeddings как pre-filter: вместо полного сканирования index'а — найти top-K семантически близких страниц для данного вопроса и читать только их.
Когда переключаться на hybrid:
wc -w wiki/index.md
- < 10 000 слов → классический поток (cache → index → domain → страницы). Index дешёв, эмбеддинги лишний шаг.
- ≥ 10 000 слов → hybrid: cache → embedding pre-filter → конкретные страницы.
Hybrid workflow:
-
Прочитать
wiki/cache.md— может содержать прямой ответ. -
Если cache не отвечает — запустить embedding pre-filter:
python3 bin/embed.py query "<вопрос пользователя>" -k 10Возвращает 10 наиболее семантически близких страниц с полным путём, similarity-score и саммари из
wiki/index.md:+0.567 wiki/domains/Reinforcement Learning.md — Поддомен ML: policy gradient, value-based методы, RLHF и его компоненты. +0.528 wiki/ideas/SFT.md — Supervised fine-tuning на демонстрациях; первый шаг RLHF. +0.502 wiki/entities/InstructGPT.md — Масштабирование RLHF на инструкциях OpenAI; PPO-ptx. ...Это отфильтрованный по семантике index — по сути отранжированное подмножество таблицы из
wiki/index.md. Meta-файлы (cache,summary,log) автоматически исключены. -
Выбрать 3-5 страниц на основе саммари (а не score'а в одиночку). Score говорит «насколько embedder уверен в семантической близости», саммари — «правда ли это про мой вопрос». Если саммари у страницы нет — это диагностический сигнал что строки в
index.mdнет (missing-index-entry), но страницу всё ещё можно читать. -
Прочитать выбранные страницы. Если все на одну тему — возможно открыть соответствующий
wiki/domains/<X>.mdдля контекста области. -
Синтезировать ответ как в обычном Standard режиме.
Если embedding-сервер недоступен (bin/embed.py query возвращает exit code 2 «embedder unavailable»):
- Fallback на классический поток — читай
index.mdцеликом даже при большой wiki. Hybrid — это оптимизация, не requirement.
Когда hybrid не подходит:
- Вопрос про структуру самой wiki («сколько у меня страниц про X», «какие domains есть») — нужен index, не семантический поиск.
- Вопрос сравнительный охватывающий несколько областей — embedding-pre-filter упустит широкий контекст. Используй
--deep.
Свежесть эмбеддингов — забота Stop-hook'а в .claude/settings.json, не запроса. Скилл просто читает wiki/meta/embeddings.json через bin/embed.py query. Если эмбеддер недоступен — fallback на классический поток (см. выше).
Quick режим
Использовать когда ответ скорее всего в cache или в саммари index.
- Прочитай
wiki/cache.md. Если он отвечает — отвечай сразу. - Если нет — прочитай
wiki/index.md. Сканируй таблицы саммари. - Если найдено в саммари — отвечай по саммари, не открывай страниц.
- Если не найдено — скажи: "Нет в quick-кэше. Запустить как standard query?"
В quick-режиме не открывай отдельные wiki-страницы и не читай domain-страницы.
Standard режим
Стандартный workflow:
- Прочитай
wiki/cache.mdпервым. Возможно, ответ или прямой контекст уже там. - Прочитай
wiki/index.md. Сканируй таблицы саммари по разделам Ideas / Entities / Domains / Questions. - Если вопрос локализован в одной области — открой
wiki/domains/<X>.mdдля локальной навигации. Это дешевле, чем читать 3-5 страниц напрямую. - Прочитай конкретные страницы, отобранные по саммари из index или domain. Переходи по wikilinks на глубину 2 для ключевых сущностей. Не глубже.
- Синтезируй ответ в чате. Цитируй источники wikilinks:
(Источник: [[Название страницы]]). - Предложи зафайлировать ответ: "Этот разбор стоит сохранить. Записать как
wiki/questions/название-ответа.md?" - Если вопрос вскрыл пробел: "У меня недостаточно про X. Найти источник?"
Deep режим
Использовать для синтез-вопросов, сравнений, "расскажи мне всё про X".
- Прочитай
wiki/cache.mdиwiki/index.md. - Прочитай все релевантные
wiki/domains/<X>.md— они дают карту области с уже выделенными ключевыми концепциями. - Идентифицируй все релевантные страницы (ideas, entities, questions).
- Прочитай каждую релевантную страницу. Никаких пропусков.
- Если покрытие wiki тонкое, предложи дополнить веб-поиском.
- Синтезируй исчерпывающий ответ с полными цитатами.
- Всегда файлируй результат обратно в виде wiki-страницы. Глубокие ответы слишком ценны, чтобы потерять.
Дисциплина токенов
Читай минимум необходимого:
| Начни с | Стоимость | Когда остановиться |
|---|---|---|
| cache.md | ~500 токенов | Если содержит ответ |
| domain-страница | ~500 токенов | Если вопрос полностью покрывается ключевыми концепциями домена |
| index.md | ~1000 токенов | Если можешь идентифицировать 3-5 релевантных страниц или конкретный домен |
| 3-5 wiki-страниц | ~300 токенов каждая | Обычно достаточно |
| 10+ wiki-страниц | дорого | Только для синтеза по всей wiki |
Если cache отвечает — отвечай без дальнейшего чтения. Если index + саммари дают ответ — не открывай страницы.
Формат index
Мастер-индекс (wiki/index.md) — таблицы из двух колонок:
## Ideas
| Страница | Суть |
|---|---|
| [[RLHF]] | Схема: SFT → Reward Model → PPO с KL-якорем к SFT |
| [[PPO]] | Алгоритм оптимизации policy с per-step KL и clipping |
## Entities
| Страница | Суть |
|---|---|
| [[InstructGPT]] | Модель OpenAI 2022, масштабировала RLHF на GPT-3 |
## Domains
| Страница | Суть |
|---|---|
| [[Reinforcement Learning]] | Базовый RL-аппарат: policy gradient, value, advantage |
## Questions
| Страница | Суть |
|---|---|
## Minds
| Страница | Суть |
|---|---|
Саммари — одна строка ≤120 символов. Сканируй колонку "Суть" — если строка релевантна, открывай страницу. Иначе пропускай.
Локальный индекс домена
wiki/domains/<X>.md — навигационный хаб (MOC) для области знаний. Содержит:
- Краткое описание области (1-2 абзаца)
- Ключевые концепции — 3-5 важнейших страниц области, отобранных вручную
- Все страницы домена — таблица через Bases-запрос (
filters: domain contains "[[<X>]]")
Используй domain-страницу когда вопрос целиком попадает в одну область — это разгружает главный index. Не используй для пересекающих областей вопросов: тогда нужен главный index или несколько domain-страниц.
Файлирование ответов обратно
Хорошие ответы накапливают wiki. Не давай инсайтам исчезать в чат-истории.
Делегируй на /save — он создаст wiki/questions/<заголовок>.md из шаблона с правильным frontmatter, обновит log.md и cache.md. Заполни summary: — wiki/index.md обновится автоматически на Stop-hook'е (не пиши в index руками).
Обработка пробелов
Если на вопрос нельзя ответить из wiki:
- Скажи прямо: "Недостаточно в wiki, чтобы ответить хорошо."
- Идентифицируй конкретный пробел: "У меня ничего нет про [подтему]."
- Предложи: "Найти источник по этому? Помогу поискать или обработать один."
- Не выдумывай. Не отвечай из тренировочных данных, если вопрос про конкретный домен этой wiki.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.