Skip to content

v1.2.0 — Concept pages, Graph Insights, MCP, two-way Obsidian sync

Choose a tag to compare

@weaiw weaiw released this 22 Jun 08:17
· 9 commits to main since this release

A large "LLM Wiki"-inspired feature drop — turn the library from per-article storage into an interconnected, synthesizable knowledge base — plus stronger multi-tenant isolation.

Added

  • 🧩 Concept pages (/api/concepts, /concepts) — synthesize everything about one concept into a single cited "living encyclopedia entry." Sources gathered by semantic coherence (not raw tags); broad tags auto-split into sub-concepts via embedding clustering (networkx + Louvain); contradictions get their own section. Per-page auto-update (semantic-centroid stale detection).
  • 🕸️ Graph Insights (/api/knowledge/insights) — Louvain communities, hubs, Adamic-Adar "surprising connections", knowledge gaps; one-line insight appended to the periodic review digest.
  • 🔗 Graph-augmented retrieval — RAG/research expand along knowledge edges, not just vector similarity.
  • 🎯 Knowledge-base purpose injected into Q&A/research prompts.
  • ⚖️ Contradiction detection on ingest (creates a contradicts edge + optional WeChat alert).
  • 🐙 GitHub repo capture (README + metadata via REST API).
  • 🔄 Obsidian two-way syncPATCH /api/sync/articles/{id} writeback with LWW + timestamp-guard conflicts (companion plugin: trove-sync-obsidian 0.2.0).
  • 🔌 MCP server (POST /api/mcp, Streamable-HTTP, Bearer) — KB tools for external AI agents; in-app access card with connection tutorial.
  • ♻️ SHA256 content_hash de-duplication.

Changed / Fixed

  • Multi-tenant isolation hardening — folders/tags/stats default to current user even for superadmins (?username= to override); tags isolated per user (UNIQUE(user_id, name)); graph generation user-scoped (no cross-user content to the LLM).
  • Removed the standalone Spark page (inspiration writing stays in the Add-content dialog).

Dependencies

  • networkx>=3.2,<4, python-louvain>=0.16. Migrations 008–011.

Full notes: see CHANGELOG.md.