f2b0db4d9a
- .claude/rules/search-tools.md — матрица: ast-index (символы/usages/callers/outline), vex (semantic/similar/pattern/duplicates/show) - usages/callers по JS — только ast-index (vex пропускает) - CLAUDE.md и ast-index.md ссылаются на новое правило Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
54 lines
2.1 KiB
Markdown
54 lines
2.1 KiB
Markdown
# BQ-System — правила для Claude
|
|
|
|
## Поиск по коду
|
|
|
|
**ast-index — дефолт.** ВСЕГДА первым для «найти символ по имени / usages / callers / outline».
|
|
Grep/Read — только если ast-index вернул пустой результат.
|
|
|
|
**vex** — для поиска **по смыслу**, AST-паттернов, дубликатов, компактного тела символа:
|
|
`vex search "..." --semantic`, `vex similar`, `vex pattern`, `vex duplicates`, `vex show`.
|
|
Что и когда — подробно в `.claude/rules/search-tools.md`. (usages/callers по JS — только ast-index.)
|
|
|
|
```bash
|
|
# Найти класс/функцию/символ
|
|
ast-index class "ClassName"
|
|
ast-index symbol "functionName"
|
|
|
|
# Найти использования
|
|
ast-index usages "symbolName"
|
|
|
|
# Поиск по содержимому файла
|
|
ast-index search "keyword" --in-file "filename"
|
|
|
|
# Структура файла
|
|
ast-index outline "path/to/file.js"
|
|
|
|
# Универсальный поиск
|
|
ast-index search "query"
|
|
```
|
|
|
|
Grep использовать только для:
|
|
- Поиска строковых литералов (`"some text"`)
|
|
- Regex-паттернов
|
|
- Если ast-index вернул пустой результат
|
|
|
|
## Git — обновление репо
|
|
|
|
**После любых изменений** — коммит и push:
|
|
|
|
```bash
|
|
git add <изменённые файлы>
|
|
git commit -m "тип: описание"
|
|
git push origin master
|
|
```
|
|
|
|
- Коммитить только изменённые файлы (не `git add -A`)
|
|
- Сообщение коммита: `feat:` / `fix:` / `refactor:` / `style:` + краткое описание на русском или английском
|
|
- Push выполнять сразу после коммита
|
|
|
|
## Стек
|
|
|
|
- Node.js/Express backend, SQLite (better-sqlite3, sync)
|
|
- Frontend: vanilla JS, без бандлера
|
|
- ast-index проиндексирован: `ast-index rebuild` при добавлении новых файлов
|