Empryoempryo.beta
concepts

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.

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"
}
FieldValues
genometrue (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.