FAQ & gotchas¶
Short answers to the first-run surprises — most are discoverable only by hitting them otherwise.
The first index_repo is slow, or downloads a lot¶
The first time you use embeddings (index_repo, or search_code against a non-empty index), Sankshep
downloads the local embedding model (~127 MiB, once, checksum-verified). It is fully offline afterwards. For
air-gapped hosts, side-load the model and set SANKSHEP_MODEL_OFFLINE=1 — see Deployment.
My container / Helm pod won't start — "Refusing to start … no authentication"¶
Since 1.8.0 the HTTP server fails closed on a non-loopback bind (0.0.0.0) when auth is None. Configure
SANKSHEP_API_KEYS (or SANKSHEP_OAUTH_*), or — only on a trusted, network-isolated deployment — set
SANKSHEP_ALLOW_UNAUTHENTICATED=1. See Security → network exposure.
I ran index_repo, but search_code returns nothing¶
Confirm you indexed the same repo the server serves, that your files are a
supported type, then re-run index_repo. Deleting <repo>/.sankshep/index.db forces a clean
rebuild. See Troubleshooting.
summarize_repo returns almost nothing for my Go / TS / Python repo¶
Not since 2.0.0 — it covers every language on the languages table, not just C#. If a summary
still looks thin, check the second line of the response: it says TRUNCATED: N of M files shown when the
maxTokens budget stopped the walk. Raise maxTokens, summarize a subdirectory, or use search_code to go
straight to what you need.
My HTML / SCSS / template files aren't in the results¶
Sankshep minimizes and indexes the source languages on the languages table, plus .docx/.pdf
documents. HTML, SCSS, and framework templates are not currently indexed or minimized.
get_context returned nothing for a file outside my repo¶
That is deliberate, and in 2.0.0 the boundary is tighter than it was. Relative paths are confined to the
served --repo root — a ../.. escape is refused, not read — and the refusal now says so instead of
returning an empty result.
An absolute path is not a general escape hatch:
| Transport | Absolute path inside the root | Absolute path outside the root |
|---|---|---|
| stdio | accepted | refused |
| HTTP | refused | refused |
index_repo refuses an absolute path on both transports. If you need a file that lives outside the
repository, serve a root that contains it, or copy it in. See Security.
Which minimization level should I use?¶
Balanced (the default) for almost everything — it keeps the code relevant to your query and collapses the
rest. Conservative when you want every body verbatim (e.g. an exhaustive review). Aggressive only when you
want structure and signatures, not behavior — it collapses answer bodies too. See How it works.