Skip to content

User Stories: Knowledge Base

Field Value
Epic Knowledge Base
Created 2026-02-18

Overview

Stories covering document management, folder organization, binary assets, search, internal linking, and two-way sync with external tools.

Stories


US-KB-001: Create and Edit Documents

As a Self-Hosting Tinkerer, I want to create and edit Markdown documents in a hierarchical folder structure, so that I can organize my personal wiki and notes.

Field Value
Priority Must
Persona Self-Hosting Tinkerer
Status Draft

Acceptance Criteria:

  • Create documents and folders in a tree structure
  • Edit documents with Markdown content
  • Unique names per folder (within the same space and parent)

US-KB-002: Track Document Revisions

As a Self-Hosting Tinkerer, I want documents to maintain a revision history, so that I can view previous versions and understand how content evolved.

Field Value
Priority Must
Persona Self-Hosting Tinkerer
Status Draft

Acceptance Criteria:

  • Each edit creates a new append-only revision
  • View the revision history for any document
  • Access the content of any previous revision

US-KB-003: Upload and Manage Assets

As a Self-Hosting Tinkerer, I want to upload binary files (images, PDFs, archives) alongside documents, so that I can keep reference materials in the same structure.

Field Value
Priority Should
Persona Self-Hosting Tinkerer
Status Draft

Acceptance Criteria:

  • Upload binary files as asset entries in the folder tree
  • Assets are stored in object storage (MinIO/S3)
  • Reference assets from documents using kb://asset/<uuid> links

As a Self-Hosting Tinkerer, I want to create links between documents and see backlinks, so that I can build a connected knowledge graph.

Field Value
Priority Should
Persona Self-Hosting Tinkerer
Status Draft

Acceptance Criteria:

  • Link to other documents using kb://doc/<uuid> canonical links
  • Links remain stable across renames and moves
  • View backlinks (documents that link to the current document)

US-KB-005: Search Across Documents

As a Self-Hosting Tinkerer, I want to search across all documents by content and title, so that I can quickly find information in a large knowledge base.

Field Value
Priority Must
Persona Self-Hosting Tinkerer
Status Draft

Acceptance Criteria:

  • Full-text search across document content and titles
  • Results ranked by relevance
  • Filter search results by folder or space

US-KB-006: Sync with External Tools

As a Plugin Developer, I want to configure two-way sync between Loryth KB and a local folder (e.g., Obsidian vault), so that I can use my preferred editor while keeping Loryth as the source of truth.

Field Value
Priority Could
Persona Plugin Developer
Status Draft

Acceptance Criteria:

  • Configure a sync root with scope (full or partial via scope_entry_ids)
  • Push local changes to Loryth and pull remote changes to local
  • Handle conflicts with clear resolution strategies

US-KB-007: Control Access with Roles

As a Self-Hosting Tinkerer, I want to grant other users Reader or Editor access to specific spaces, so that I can share knowledge selectively.

Field Value
Priority Should
Persona Self-Hosting Tinkerer
Status Draft

Acceptance Criteria:

  • Assign Reader or Editor roles per space
  • Readers can view but not modify documents
  • Editors can create, edit, and delete documents within their space