code intelligence

Search every repo like one codebase.

Polyglot indexes your whole forge and answers by meaning — ask a question or paste a fragment, and it returns the actual functions and classes that match, each with a deep-link. The same index is a first-class agent tool, so your coding agents ground themselves in your real code before they touch it.

Semantic search over the whole forge — one corpusResults are code units — functions, classes — not line grepEvery hit carries a forge deep-link to the exact linesFirst-class agent tool (search_code) over the same indexRead-only BFF — the indexer owns the embeddings
one corpus
every repo, searchable
no per-repo setup
semantic
search by meaning
cosine over code embeddings
AST-aware
results are code units
function / class, not a line match
search_code
a first-class agent tool
the same index agents ground in
why it's different

Knowledge doesn't respect repo boundaries.

Code lives in dozens of repos; the thing you're looking for rarely sits where you'd grep. Per-repo search makes you know the answer's location before you can find it.

Polyglot indexes the whole forge as one corpus and searches it by meaning. Ask "where do we verify the merge gate?" — or paste a code fragment — and it returns the actual code units that match: a function, a class, its exported name, the exact line range, and a forge deep-link. Because the index is a read-only BFF, the same results answer the console, the chat host, and the search_code agent tool — so a coding agent grounds itself in your real code before it writes a line.

The same index your team searches is the one your agents ground in — before they change a line.

plugin-polyglot · one corpus, two callers
the results

Ask in plain language. Get code.

Each hit is a ranked AST node — repo, path, line range, node kind, and a similarity score — with a deep-link to the exact lines. This is the search_code surface (a dedicated results panel is a later meridian primitive). Values illustrative.

search_code
query: where do we verify the merge gate?
matchrepo · pathkindscore
fn assess_merge(...) plugin-tbzl/src/mcp.rs:126-171 FunctionDeclaration 0.91
fn set_check(...) plugin-forge/src/write.rs:44-98 FunctionDeclaration 0.79
class ControlEvaluator plugin-compliance/src/eval.rs:18-140 ClassDeclaration 0.74
fn reporeadiness(...) fastverk-deploy/operator/…/reporeadiness.go:210 FunctionDeclaration 0.71
ranking: cosine similarity over code embeddingseach hit: → forge deep-link at the line range
the console

One index, over the whole forge.

The Index panel reports the corpus the indexer has built — repos, snippets, last scan, and the embedding model. Until the first pass lands it shows an honest empty state. Values illustrative.

Index
polyglot.v1.CodeSearch · Stats
metricvalue
Repos indexed 42
Snippets 512,004
Last scan 2m ago
Model klad-code · model_version pinned
empty state: Index not yet built — the indexer is still scanning the forge
the pipeline

Scan → embed → query.

The plugin holds no index — it's the seam over the engine.

01

Scan

The polyglot-indexer scans every forge repo and chunks code into AST nodes — a function, a class — keeping the node_type and exported_name so a result is a real code unit, not a line.

02

Embed

Each snippet is encoded to a vector by klad.v1.KladEmbed, pinned to a model_version, and written into a DuckDB index on a persistent volume.

03

Query

A free-text question or a code fragment is embedded the same way; the closest snippets come back ranked by cosine similarity, each with a forge deep-link.

04

Surface

The plugin is a read-only BFF (polyglot.v1.CodeSearch) — the same results answer the console, the chat host, and the search_code MCP tool. It owns no embeddings.

vs grep, per repo

Find it without knowing where it lives.

The alternative searches one repo at a time, by exact string, and leaves your agents out entirely.

fastverk polyglot
per-repo search
Scope
✓ The whole forge as one corpus
One repo at a time
Query
✓ By meaning — free-text or a fragment
Exact string match
Results
✓ Code units, with a deep-link
Raw line hits
Setup
✓ No per-repo configuration
Search each repo separately
Agents
✓ The same index as a tool (search_code)
No tool — a UI only

The plugin holds no index — the indexer owns the embeddings. The console, chat, and agents all read the same source of truth.

plugin-polyglot · a read-only BFF

source · github.com/fastverk/plugin-polyglot · tools: search_code

Prove it's safe to merge.

Polyglot is one of 14 plugins in the fastverk console — hosted, or in your own cloud.