Loreweaver

by noah
5
4
3
2
1
Score: 50/100

Description

Reviews

No reviews yet.

Stats

1
stars
1,025
downloads
0
forks
77
days
77
days
77
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
5
commits

Latest Version

3 months ago

Changelog

community.obsidian.md の自動レビューで指摘されたWarning(30件)のうち大半を修正。 ・document.createElement系をcreateDiv/createSpanへ統一 ・未処理Promiseへvoid演算子を付与 ・frontmatter/loadData周りのany型のunsafe assignment/member accessを解消 ・builtin-modulesをnode:moduleのbuiltinModulesへ置換 ・宣言的Settings API(getSettingDefinitions)を追加(minAppVersionは1.7.2のまま、旧バージョン向けdisplay()は維持) ・READMEの英語セクションを拡充

README file from

Github

Loreweaver

An Obsidian plugin for novelists and long-form fiction writers. It manages character relationships, foreshadowing, and worldbuilding entries entirely through plain Markdown frontmatter, and surfaces them in dedicated dashboards (a character relation graph and an unresolved-foreshadowing tracker).

Unlike general-purpose graph/query tools such as Excalibrain or Juggl, Loreweaver ships with a schema and dashboards purpose-built for fiction writing (character relations, foreshadowing) out of the box.

  • No external database. Your vault's Markdown + frontmatter is the only source of truth; the plugin just indexes it in memory on load. Disabling the plugin never loses data.
  • No network access, except an optional, off-by-default AI assist feature that talks exclusively to a local Ollama instance (localhost/127.0.0.1, enforced in code) — no cloud APIs.

Features

  • Character relation graph. Add a relations list to any type: character note's frontmatter and a dedicated view renders an interactive node/edge graph — drag nodes to reposition, double-click a node to open its note.
  • Foreshadowing dashboard. Notes with type: foreshadow are listed in a warning panel showing every entry with resolved: false, so nothing gets forgotten before publication.
  • Worldbuilding templates. Command-palette commands insert ready-made frontmatter templates for locations, organizations, terms, characters, and foreshadowing entries into new, empty notes.
  • Optional local AI assist (Ollama, off by default). When explicitly enabled and a local Ollama instance is running, three commands are available: suggesting relations entries from a character note's body, drafting a summary for a worldbuilding entry, and searching other notes for passages that might resolve an open foreshadowing thread. All AI output is a draft only — nothing is written back to your vault until you review and confirm it.

Installation

  • Community plugins (pending review): search for "Loreweaver" in Obsidian's Community Plugins browser once the listing is approved.
  • Manual install: download main.js, manifest.json, and styles.css from the latest release, place them in <vault>/.obsidian/plugins/loreweaver/, then enable Loreweaver under Settings → Community plugins.

License

MIT


以下は日本語版です(本プラグインの主なユーザー層に向けた詳細説明)。


長編小説・シナリオ執筆者向けの Obsidian プラグインです。キャラクターの関係性・伏線・世界観設定を Markdown のフロントマターだけで管理し、専用のダッシュボードで見渡せるようにします。

Excalibrain や Juggl のような汎用グラフ/クエリツールとは異なり、「創作の relations・伏線」に特化したスキーマとダッシュボードを最初から持っている点が特徴です。

特徴

  • プラグイン独自のデータベースを持ちません。 Vault 内の Markdown + フロントマターがそのまま正データです。プラグインは起動時にこれをパースしてメモリ上にインデックスを構築するだけなので、プラグインを無効化してもデータは一切失われません。
  • 外部ネットワーク通信を一切行いません。 AI アシスト機能(既定 OFF)を除き、通信は発生しません。AI アシスト機能を有効にした場合も通信先は localhost / 127.0.0.1 の Ollama(ローカル実行 LLM)に限定され、コードレベルでそれ以外のホストへのリクエストを拒否します。クラウド API には対応していません。

主な機能

キャラクター相関図

type: character のノートに relations を記述すると、専用ビューでノード(キャラクター)とエッジ(関係性)をグラフ表示します。ドラッグでノードを移動でき、ノードをダブルクリックすると該当ノートを開きます。

---
type: character
relations:
  - target: "[[アリス]]"
    relation: friend
    note: "幼馴染"
  - target: "[[ボブ]]"
    relation: rival
---

コマンドパレット、またはリボンアイコンから「相関図を開く」で表示します。

伏線管理ダッシュボード

type: foreshadow のノートを一覧し、resolved: false(未回収)の伏線だけを警告リストとして表示します。

---
type: foreshadow
planted_in: "[[3章]]"
resolved: false
resolved_in: null
---

執筆が進んだら resolved: true と resolved_in を手動で更新します(自動検出はスコープ外です)。

世界観Wikiテンプレート

地名 (location) ・組織 (organization) ・用語 (term) ・キャラクター・伏線のフロントマター付きテンプレートを、コマンドパレットから新規ノートに挿入できます。既存の本文があるノートには挿入しません。

AIアシスト機能(Ollama連携、既定OFF)

設定タブで明示的に有効化した場合のみ使用できます。Ollama がローカルで起動している必要があります。

  1. relations候補抽出: キャラクターノートの本文を解析し、relations の下書きを提案します(チェックボックスで選んで適用、自動書き込みはしません)。
  2. 伏線回収候補検索: 未回収の伏線について、他ノートの本文からその伏線に関連しそうな箇所を探し、候補として提示します。
  3. 世界観エントリの要約生成: location/organization/term ノートの本文から要約文を生成し、description プロパティへの反映を提案します。

AI の提案はあくまで下書き・参考であり、採否はすべてユーザーが判断します。

インストール

コミュニティプラグイン経由(審査完了後)

Obsidian の「コミュニティプラグイン」からインストールできるよう申請予定です。

手動インストール

  1. Releases から最新版の main.js / manifest.json / styles.css をダウンロードします。
  2. Vault の .obsidian/plugins/loreweaver/ フォルダを作成し、そこに3ファイルを配置します。
  3. Obsidian の設定 → コミュニティプラグイン で Loreweaver を有効化します。

AIアシスト機能を使う場合

  1. Ollama をインストールし、任意のモデルを ollama pull で取得します(日本語での動作確認には 7shi/ezo-gemma-2-jpn:2b-instruct-q8_0 を使用しています)。
  2. Loreweaver の設定タブで「Ollama連携」を有効化し、ベースURL(既定 http://localhost:11434)とモデル名を設定します。
  3. キャラクター/世界観ノートを開き、コマンドパレットから「Loreweaver: AIアシスト」で始まるコマンドを実行します。

開発

npm install
npm run dev    # esbuildのウォッチビルド
npm run build  # 型チェック + 本番ビルド

ビルド後の main.js / manifest.json / styles.css を Vault の .obsidian/plugins/loreweaver/ にコピーして動作確認してください。

ライセンス

MIT