The Genome
How Empryo scans your repo into a ranked dependency graph (PageRank, git co-change, 30+ languages) and injects the map into every prompt.
Copy & share
Loading sections…
Connect MCP or install the Empryo skillSection exports contain only that heading’s content. Markdown and text links fetch the selected content directly, without the rest of the page.
On startup, the Genome engine scans your codebase and builds a graph - every file, symbol, and import edge - then ranks it. The rendered result, injected at the top of every prompt, is the Genome: what the agent actually sees.
The agent never wastes a turn grepping for "where does auth live" - it already sees the map.
What you see
The Genome appears in every prompt, looking like this:
src/services/auth/session.ts (→12)
+SessionManager Tracks active sessions, refresh tokens, expiry
+SessionStore+- exported symbol(→12)- blast radius: 12 files depend on this one[NEW]- file changed recently- One-line summary after the name (when semantic summaries are on)
What makes it useful
- Ranked by PageRank - files imported by lots of others rank higher.
- Personalized per turn - files you just edited or read get boosted.
- Git-aware - files that always change together get pulled in too.
- Real-time - edits re-index immediately.
- 30+ languages - TypeScript, Python, Rust, Go, Java, Ruby, C/C++, Swift, Kotlin, and more.
Config
Everything runs out of the box. If you want to tune it:
{
"genome": true,
"semanticSummaries": "synthetic"
}| Field | Values |
|---|---|
genome | true (default) or false to disable |
semanticSummaries | "synthetic" (fast, code-derived, default), "ast", "llm" (one-line LLM descriptions), "off" |
/Genome opens the settings panel (the genome config keys below tune the engine that builds the map).
Skip the scan
For quick one-shot questions, skip the startup scan:
empryo --headless --no-genome "what's the version?"Or set EMPRYO_NO_GENOME=1.