Skip to content

FlokeStudio/glyph-miO

Repository files navigation

Obsidian

glyph-miO 2.8.0

Metadata Intelligence for Obsidian
Summaries · tag suggestions · offline-first analysis

glyph-mi core · Site · README.ru · glyph-sO · glyph-mi


User section

What is glyph-miO?

glyph-miO is an Obsidian community plugin that analyzes the active note and helps you organize knowledge faster:

  • Extractive summaries — a compact callout block inserted at the end of the note
  • Tag suggestions — ranked by relevance to title, headings, and body, with scores/tooltips
  • Offline by default — no cloud, no API keys; optional local Ollama enhancement

It pairs naturally with glyph-sO: search finds notes across the vault; glyph-miO understands the note you’re working on right now. Long-term UI chrome aims to share a glyph-ui styling kit with sO.

What’s new in 2.8.0

  • Sidebar panel — MI panel docks in the right rail (ItemView); set panelMode: modal for the legacy centered modal
  • Vault batch analysis — command Glyph: analyze vault reports untagged notes and tag suggestions
  • Frontmatter tags — setting Tag write mode: inline (default) or frontmatter (YAML tags merge)
  • Summary history — last 10 summary applies stored; Glyph: rollback last summary restores the previous file body
  • Vault tag frequency — tag chip tooltips show how many notes in the vault use each tag
  • Servicespanel-view, frontmatter, vault-cache, batch-analyze, summary-history + vitest coverage

What’s new in 2.7.3

  • Theme-safe UI — CSS uses Obsidian variables only (no hardcoded hex fallbacks)
  • 2.8.0 follow-ups — sidebar panel, batch vault analysis, frontmatter tags, glyph-mi notes vendor

What’s new in 2.7.2

  • replace-latest no longer stacks --- — replacing a summary strips the previous horizontal rule before the marker, so repeated Insert summary does not accumulate separators at the end of the note
  • Tag scoring already weights note title highest (+16 vs headings +10); docs match services/metadata.js

What’s new in 2.7.1

  • Safer metadata cache key — always includes vault path plus mtime, size, and a short content hash (documented in services/metadata.js)
  • Summary mode none / off — preview in the MI panel only; write when you Insert / run summarize explicitly
  • Ollama timeout setting — configurable seconds (default 12), used for generate calls
  • Tag explainability — relevance % on chips + tooltip (title / heading / body / frontmatter)
  • Ollama status — status bar + panel pill (online / offline fallback / disabled)
  • Optional diff preview — Apply / Cancel modal before insert or replace
  • RU labels — commands and settings follow Obsidian language when set to Russian
  • Adapter stubservices/glyph-mi-notes-adapter.js ready to consume glyph-mi notes without breaking the local offline path

What’s in 2.7

Service-based architecture — core logic in focused modules:

Service Responsibility
services/panel-view.js Sidebar ItemView + shared panel UI mount
services/frontmatter.js Inline vs YAML tag writes (processFrontMatter)
services/vault-cache.js Background vault index (tags, title, word count)
services/batch-analyze.js Vault-wide untagged scan + suggestions
services/summary-history.js Last 10 summary applies + rollback
services/metadata.js Weighted tag scoring, stop-words, cache key
services/summary.js Sentence extraction, block formatting, lifecycle modes
services/i18n.js EN/RU strings for commands and settings
services/glyph-mi-notes-adapter.js Local analyzeNote (glyph-mi notes stub)

Weighted metadata scoring — tags ranked by:

  • Matches in the note title (highest weight)
  • Frequency in headings
  • Density in body paragraphs
  • Existing frontmatter tags (boost)

Summary lifecycle modes:

Mode Behavior
append Each summarize/insert adds a new <!-- glyph-miO-summary --> block
replace-latest Updates the most recent summary block in place (default)
none / off Do not auto-write; show draft in the panel; insert only via Insert / summarize command

Install

  1. Download the latest release from Releases (or clone main).
  2. Extract into your vault:
.obsidian/plugins/glyph-mi-o/
├── manifest.json
├── main.js
├── styles.css
└── services/
    ├── metadata.js
    ├── summary.js
    ├── i18n.js
    ├── panel-view.js
    ├── frontmatter.js
    ├── vault-cache.js
    ├── batch-analyze.js
    ├── summary-history.js
    └── glyph-mi-notes-adapter.js
  1. Enable glyph-miO in Settings → Community plugins.

Commands

Command (EN) Command (RU) What it does
Glyph: open MI panel Glyph: открыть панель MI Open sidebar MI panel (or modal if panelMode: modal)
Glyph: analyze vault Glyph: анализ vault Scan vault for untagged notes and suggestions
Glyph: rollback last summary Glyph: откатить последний пересказ Restore note body from summary history
Glyph: summarize note Glyph: пересказ заметки Insert or update the summary block (respects mode + diff preview)
Glyph: jump to MI summary Glyph: перейти к саммари MI Cursor jumps to the summary marker
Glyph: analyze active note Glyph: анализ активной заметки Run analysis without opening the panel
Glyph: suggest tags Glyph: предложить теги Show top-ranked tags with relevance %

Settings

Setting Description
Enable Ollama Try local LLM for JSON-structured summaries (default: on)
Ollama URL Base URL, default http://127.0.0.1:11434
Model Ollama model name, default llama3.2
Ollama timeout (seconds) Abort generation after N seconds (default 12), then offline fallback
Summary block mode append, replace-latest, none, or off
Diff preview before Apply Show before/after modal (Apply / Cancel) before writing
Tag write mode inline (#tags in body / summary block) or frontmatter (YAML tags)
Panel mode sidebar (default) or modal (legacy centered panel)

How analysis works

  1. Offline path (always available): tokenize → score tags with reasons → pick key sentences → format marked block.
  2. Ollama path (optional): if Ollama responds within the configured timeout, request JSON summary + tags. On failure or timeout, fall back to the offline algorithm.

Architecture note (local vs glyph-mi)

MI analysis uses services/glyph-mi-notes-adapter.js, which prefers the vendored vendor/glyph-mi-notes.cjs pipeline from glyph-mi and falls back to local services/* when needed. Shared glyph-ui styling with glyph-sO remains a parallel goal.

Example summary block

---
<!-- glyph-miO-summary -->
> [!summary] Glyph MI-O
> This note covers project planning for Q3, including milestone
> definitions and resource allocation across three teams.

#projects #planning #q3

GitHub / Dev section

Architecture (2.8.0)

main.js                              # Plugin UI, Ollama client, commands, status bar
services/panel-view.js               # ItemView sidebar + mountGlyphMiOPanel
services/frontmatter.js              # applyTagsToFrontmatter
services/vault-cache.js              # VaultCache index + debounced rebuild
services/batch-analyze.js            # analyzeVault
services/summary-history.js          # pushHistory / rollbackLast
services/metadata.js                 # computeMetadataCached, cache key, tagDetails
services/summary.js                  # extractiveSummary, buildSummaryBlock, none/off
services/i18n.js                     # EN/RU labels
services/glyph-mi-notes-adapter.js   # local analyzeNote
styles.css                           # panel, sidebar view, status, diff modal

Metadata cache key

keyForDoc(file, body) is always:

${path}|${mtime}|${size}|${contentHash}

Path is mandatory (collision-safe across notes). See JSDoc in services/metadata.js.

Ollama integration

  • Health check: GET /api/tags
  • Generation: POST /api/generate with format: "json"
  • Timeout: settings Ollama timeout (seconds) (default 12)
  • Status: status bar item + MI panel pill
  • Graceful fallback to extractiveSummary() on any failure

Related repositories

Repo Role
glyph-mi Universal MI core (Senza, Cultiva, future notes)
glyph-sO Full-text search for Obsidian
glyph-s Shared search engine

License

GPL-3.0 · Floke Studio

About

Obsidian plugin: metadata intelligence (Glyph 2.7) - extractive summaries, tag suggestions, weighted scoring, summary lifecycle modes. Optional Ollama. GPL-3.0.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors