# Product

SecondOS builds a structure-aware map of your codebase and lets every AI tool read it over MCP.

## Multi-language graph
Real symbols, signatures, routes, imports and call-sites, resolved across TypeScript/JS, Go, Python, Rust, Java, PHP and Ruby. `who_uses` / `impact_of` answer "who calls this?" and "what breaks if I change it?", ranked by confidence, never guessing.

## State-bound memory
Every note is anchored to a real symbol at a real sync; when the code moves, the note is marked stale instead of quietly lying. Confidence scores, validity windows, conflict detection, assisted distillation.

## Learns from issues and PRs
Opt-in, read-only ingestion (`ingest_issues`) of a repo's issue and pull-request discussions into memory proposals you review, never auto-written. A note distilled from a PR binds to the file that PR touched, shows as "from #N" in recall, and goes stale by drift when that code changes.

## Drift, three axes
Code vs the DB schema, env vars vs .env.example, imports vs package.json — surfaced read-only, with both locations.

## Cross-tool via MCP
Twenty-two MCP tools across codebase, memory and context: one surface, every editor. Including `prime`, a memory-first orientation call.

## Living knowledge base (Pro)
Eleven docs auto-written from the map + your memories and kept current on every push: overview, architecture, modules, dependencies, API, data model, knowledge, learnings, onboarding, changes, glossary. Map-only, self-maintaining. Not just a web tab: readable by any AI tool over MCP via `read_living_doc` (read-only, free).

## Verify it yourself
The client that runs on your machine is source-available at github.com/Preatan/secondos-client, and docs/DATA-HANDLING.md walks the exact lines where the code body is dropped, secrets are redacted, and the skip-list applies.
