How sjjsbsj558/obsidian-synovia works
Synovia is an Obsidian plugin for developing evidence-backed opinions from vault notes, with optional model assistance and reviewed output. The primary flow runs from the workbench through the plugin’s opinion workflow and local retrieval to a reviewable result; users can save generated material without replacing source notes. The README also describes source ingestion, knowledge extraction, comparisons, topic review, maintenance, and Zhihu compatibility workflows. Some of these subsystems are represented from documented capabilities and tree paths; their internal wiring is not shown in the sampled source.
Main entry points: main.ts Plugin workflow · autoInput.ts Source intake · retrievalPipeline.ts Note retrieval · vaultHelper.ts Safe vault writes
Components 23
Opinion workbench
- Opinion workbench
src/ui/SynoviaSidebarView.ts - Plugin workflow
src/main.ts - Note retrieval
src/pipeline/retrievalPipeline.ts - Change review
src/ui/modals/DiffReviewModal.ts
Knowledge workflows
- Claim extraction
src/evolution/claimExtractor.ts - Knowledge graph
src/evolution/knowledgeGraph.ts - Topic coverage review
src/evolution/topicReview.ts - Opinion comparison
src/evolution/comparator.ts - Wiki maintenance
src/maintenance/wikiMaintenance.ts
Source workflows
- Source intake
src/pipeline/autoInput.ts - Web content fetch
src/sources/contentFetcher.ts - Zhihu search
src/sources/zhihuSearchApiClient.ts - Zhihu CLI
src/sources/zhihuCliClient.ts - Zhihu MCP
src/sources/zhihuMcpSseClient.ts - Source notes
src/sources/sourceNote.ts
Runtime services
- Vault search index
src/search/vaultIndex.ts - Lexical search
src/search/miniSearchAdapter.ts - Model client
src/agent/modelClient.ts - Plugin settings
src/settings/settings.ts - Safe vault writes
src/utils/vaultHelper.ts - Job and graph records
src/utils/journal.ts
Other components
- Obsidian user
- Obsidian vault
Connections 26
- Obsidian user → Opinion workbench: asks question
- Opinion workbench → Plugin workflow: requests opinion
- Plugin workflow → Note retrieval: retrieves notes
- Note retrieval → Vault search index: gets index
- Note retrieval → Lexical search: searches terms
- Note retrieval → Model client: ranks candidates
- Plugin workflow → Model client: analyzes notes
- Plugin workflow → Obsidian vault: reads and writes
- Plugin workflow → Plugin settings: uses configuration
- Plugin workflow → Job and graph records: records workflow state
- Obsidian user → Source intake: selects material
- Source intake → Web content fetch: fetches content
- Source intake → Zhihu search: searches Zhihu
- Source intake → Zhihu CLI: uses installed CLI
- Source intake → Zhihu MCP: uses MCP search
- Source intake → Source notes: formats source notes
- Plugin workflow → Claim extraction: extracts claims
- Plugin workflow → Knowledge graph: builds graph
- Plugin workflow → Topic coverage review: reviews topic coverage
- Topic coverage review → Note retrieval: selects excerpts
- Plugin workflow → Opinion comparison: compares opinions
- Plugin workflow → Wiki maintenance: maintains wiki
- Plugin workflow → Change review: presents changes
- Change review → Safe vault writes: applies approved edits
- Safe vault writes → Obsidian vault: writes reviewed files
- Plugin workflow → Safe vault writes: saves generated notes