Forge
markdown72c0d4fb
1# HybridCodebaseIndex.Core
2
3Библиотека **`AIGuiders.HybridCodebaseIndex.Core`**: локальный гибридный индекс для кода (SQLite **FTS5** + опционально векторный канал и эмбеддинги через ONNX), сканирование workspace, настройки через TOML.
4Используется в [Hybrid Codebase Index MCP](https://github.com/AI-Guiders/hybrid-codebase-index) и во встроенном контуре **HCI** [Cascade IDE](https://github.com/AI-Guiders/cascade-ide).
5
6Лицензия: **MIT** ([LICENSE](LICENSE)). Авторство: **LonelySoul** / **AIGuiders**.
7
8---
9
10## Возможности
11
12- Индекс документов в SQLite с полнотекстом (FTS5) и метаданными.
13- Режим **scope**: workspace и/или solution (несколько баз под общим корнем).
14- Опционально: эмбеддинги, гибридный поиск (настраивается в `IndexSettings` / `settings.default.toml`).
15- Встраиваемый дефолтный конфиг: `DefaultSettings/settings.default.toml` (embedded resource).
16
17Подробнее о тулсах MCP и сценариях — в репозитории [hybrid-codebase-index](https://github.com/AI-Guiders/hybrid-codebase-index) (`docs/`).
18
19### Reindex observers (v0.1.2+)
20
21При `FullReindexAsync` / `FullRebuildAsync` можно передать `IReadOnlyList<ICodebaseIndexReindexObserver>`:
22для каждого проиндексированного файла вызывается `OnFileIndexed(IndexedFileEvent)` с **уже прочитанным** текстом.
23Поток — фоновый reindex; observer не должен блокировать надолго.
24
25Cascade IDE регистрирует `IntercomSymbolLineHciReindexObserver` и строит symbol sidecar attach без второго `ReadAllText` по репозиторию.
26
27---
28
29## Установка
30
31```bash
32dotnet add package AIGuiders.HybridCodebaseIndex.Core --version 0.1.2
33```
34
35Актуальная версия: [nuget.org](https://www.nuget.org/packages/AIGuiders.HybridCodebaseIndex.Core).
36
37---
38
39## Сборка локально
40
41```bash
42dotnet build HybridCodebaseIndex.Core.csproj -c Release
43dotnet pack HybridCodebaseIndex.Core.csproj -c Release -o ./out
44```
45
46---
47
48## Публикация на nuget.org (Trusted Publishing)
49
50Долгоживущий API key не требуется: [Trusted Publishing](https://learn.microsoft.com/nuget/nuget-org/trusted-publishing) + шаг **`NuGet/login@v1`** в [workflow](.github/workflows/publish-nuget.yml).
51
52На **nuget.org** добавь политику: **Repository owner** `AI-Guiders`, **Repository** `hybrid-codebase-index-core`, **Workflow file** `publish-nuget.yml`.
53В workflow указан вход **`user: LonelySoul`** — совпадай с учётной записью, у которой политика и владение пакетом.
54
55Публикация: тег **`v0.x.y`** или **Run workflow** с версией без префикса `v`.
56
57---
58
59## Репозиторий
60
61<https://github.com/AI-Guiders/hybrid-codebase-index-core>
62
View only · write via MCP/CIDE