How aevorine/synorive works
Synorive combines a local-first desktop library search engine with a web-research workbench; Android, CLI, and MCP are additional clients of the shared Python engine. The main workflow is to ingest local files, extract and index their content, retrieve and rank matches, then show source-linked results or quoted answers. A separate web workflow searches multiple providers and supports verification, counter-evidence, scholarly research, and briefings. The graph follows documented capabilities and sampled call boundaries; some engine internals and client wiring are unsampled, so uncertain links are omitted.
Main entry points: routes.py HTTP API · research.py Research workflow · pipeline.py Ingest pipeline · repository.py Library repository
Components 20
User clients
- Desktop app
apps/desktop/src/App.tsx - Desktop API client
apps/desktop/src/lib/api.ts - Android client
- MCP tools
mcp/src/index.ts - CLI
cli/src/index.ts
Local engine
- Engine host
engine/synorive/main.py - HTTP API
engine/synorive/api/routes.py
Library search
- Ingest pipeline
engine/synorive/ingest/pipeline.py - Content analysis
engine/synorive/analyze - Library repository
engine/synorive/store/repository.py - Local database
engine/synorive/store/db.py - Hybrid search
engine/synorive/search/engine.py - Quoted answers
engine/synorive/search/ask.py
Web research
- Research workflow
engine/synorive/websearch/research.py - Search adapters
engine/synorive/websearch/engines.py - Evidence checking
engine/synorive/websearch/verify.py - Quoted briefings
engine/synorive/briefing.py
External access
- Web providers
- Local files
Other components
- User
Connections 25
- User → Desktop app: uses
- User → Android client: uses
- User → MCP tools: invokes
- User → CLI: invokes
- Desktop app → Desktop API client: requests
- Desktop API client → HTTP API: calls
- Android client → HTTP API: calls
- MCP tools → HTTP API: calls
- CLI → HTTP API: calls
- Engine host → HTTP API: serves
- Local files → Ingest pipeline: supplies
- HTTP API → Ingest pipeline: dispatches
- Ingest pipeline → Content analysis: extracts and enriches
- Ingest pipeline → Library repository: writes index
- Library repository → Local database: reads and writes
- HTTP API → Hybrid search: dispatches
- Hybrid search → Library repository: retrieves candidates
- HTTP API → Quoted answers: dispatches
- Quoted answers → Hybrid search: retrieves passages
- HTTP API → Research workflow: dispatches
- Research workflow → Search adapters: queries providers
- Search adapters → Web providers: requests
- Research workflow → Evidence checking: checks claims
- Research workflow → Quoted briefings: builds briefing
- HTTP API → Evidence checking: dispatches