TK

townsendmerino/ken

Database management

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

33 stars 2 forks Качество 79 Тренд 31MIT

Гибридный код для поиска агентов. Pure Go, drop-in MCP-совместимый с семблом.

Обзор

Pure Go, одиночный статичный двоичный, каплеобразный MCP-совместимый с MinishLab/semble — те же схемы инструментов, тот же выходной формат, шаги установки, замененные на двоичный Go. ken - это порт Go сембла: BM25 лексические + семантические встраивания Model2Vec + слияние RRF + программный реранкер с алгоритмом извлечения, портированным из поисковой системы semble.py + Ranking / *.py. — — на бенчмарке SEMLE с 1 251 запросом против 999,9% — при стоимости агента, чем grep + Read (4 120 против 189 773 средних токенов по запросам NL — измеренных в том же гибридном режиме по умолчанию). Для «найти кусок, который отвечает на это», это победа токена порядка 1-2 при почти паритетном отзыве. (перенаправлено с «Docs/BENCH.md») Pure Go, no cgo, no Python interpreter on cold start, no GIL on indexing. Кросс-компиляции в Linux/ macOS/Windows (amd64/arm64) бесплатны. - Тот же поиск/найти связанные схемы инструментов MCP и тот же формат проволоки с разметкой строки - поменяйте команду: путь и существующие агенты работают без изменений.

Обзор (машинный перевод)

Быстрый поиск гибридного кода. Pure Go, одиночный статичный двоичный, каплеобразный MCP-совместимый с MinishLab/semble — те же схемы инструментов, тот же выходной формат, шаги установки, замененные на двоичный Go.

ken - это порт Go сембла: BM25 лексические + семантические встраивания Model2Vec + слияние RRF + программный реранкер с алгоритмом извлечения, портированным ** дословно** из сембла search.py + ranking/*.py.

##Почему Кэн

**~97% recall@10 в режиме по умолчанию (гибридный) ** — **0.967 NL / 0.995 символ ** в бенчмарке 1251 запроса semble, против grep ~99.9% — при стоимости агента **~46× меньше токенов , чем grep + Read (4,120 против 189,773 медианных токенов по запросам NL — измерено в том же гибридном режиме по умолчанию). Для «найти кусок, который отвечает на это», это победа токена порядка 1-2 при почти паритетном отзыве. (перенаправлено с «[T3]») ** Единая статическая двоичная. Pure Go, no cgo, no Python interpreter on cold start, no GIL on indexing. Кросс-компиляции для Linux / macOS / Windows (amd64 / Arm64) бесплатно.

  • Сброс на сембл. Те же search / find_related Схемы инструментов MCP и тот же формат проволоки с разметкой — поменяйте путь command: и существующие агенты будут работать без изменений.

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

ken

ken is code search built for coding agents: a pure-Go, single-binary engine that runs a 16M-parameter Model2Vec model in-process, with no cgo, Python, vector database, or API key. On ContextBench (53 SWE-bench Pro tasks, 8k-token budget), its default hybrid mode covered 52% of the relevant files versus 29% for BM25 alone, and on tasks where a gold line was retrieved reached the first gold line in about 40% fewer tokens. Warm queries take a millisecond or two, and with KEN_ANN=flat-i8 the watched dense vector store uses about 80% less memory.

Fast hybrid code search for agents. Pure Go, single static binary, drop-in MCP-compatible with MinishLab/semble — same tool schemas, same output format, install steps swapped to a Go binary.

ken is a Go port of semble: BM25 lexical + Model2Vec semantic embeddings + RRF fusion + a code-aware reranker, with the retrieval algorithm ported verbatim from semble’s search.py + ranking/*.py.

Why ken

  • ~97% recall@10 in the default (hybrid) mode — 0.967 NL / 0.995 symbol on semble’s 1,251-query benchmark, vs grep’s ~99.9% — while costing an agent ~46× fewer tokens than grep + Read (4,120 vs 189,773 median tokens on NL queries — measured in the same default hybrid mode). For “find the chunk that answers this,” that’s a 1–2 order-of-magnitude token win at near-parity recall. (Reproduce: docs/BENCH.md.)
  • Single static binary. Pure Go, no cgo, no Python interpreter on cold start, no GIL on indexing. Cross-compiles to Linux / macOS / Windows (amd64/arm64) for free.
  • Drop-in for semble. Same search / find_related MCP tool schemas and the same markdown-string wire format — swap the command: path and existing agents work unchanged.
  • Local, CPU-only. Embedding inference, BM25, and fusion all run on the CPU. No API keys, no GPU, no vector DB, air-gapped friendly.
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

// ~/.cursor/mcp.json (or .cursor/mcp.json) — also .vscode/mcp.json with "servers" { "mcpServers": { "ken": { "command": "/absolute/path/to/ken-mcp" } } }