セルフホスト型サービス
siyuan-note/siyuan avatar
siyuan-note/siyuan

SiYuanレビュー: ブロック単位の参照とMarkdown WYSIWYGを備えたセルフホスト型PKM

typescript と golang で書かれたプライバシー最優先のセルフホスト型、完全にオープンソースの個人用ナレッジ管理ソフトウェアです。

スター 46,375フォーク 3,002TypeScriptAGPL-3.0

ひと目でわかる

これは何?
SiYuanは、プライバシー優先でセルフホスト可能な個人知識管理システムです。ブロック単位の参照、Markdown WYSIWYG、Docker展開を特徴とし、AGPL-3.0で公開されています。本稿では、その仕組み、導入方法、制約、代替案を検証します。
誰に向いている?
SiYuanは、データを自前のサーバーで管理し、ブロック単位の細かい参照を活用したい個人やチームに向いています。Markdown WYSIWYGとSQLクエリ埋め込みは、ノートを構造化して扱いたいユーザーに強力です。
商用利用できる?
厳しい条件付きでできます。AGPL-3.0 はネットワーク型コピーレフトのライセンスで、改変版をホスティングサービスなどとしてネットワーク越しに利用させる場合、その利用者にソースコードを同じライセンスで提供する必要があります。
今もメンテナンスされている?
されています。直近 1 日以内に新しいコミットがあります。
何の言語で書かれている?
主に TypeScript です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

ブロック参照とMarkdown WYSIWYGを軸にしたPKM

SiYuanは、個人知識管理システム(PKM)で、ブロック単位の参照と双方向リンクを備えています。MarkdownのWYSIWYG編集を採用し、ノートを段落やリスト項目などのブロックに分割して扱います。この設計により、従来のページ単位ではなく、より細かい粒度で情報を関連付けることが可能です。対象は、ノートを単なるメモではなく、再利用可能な知識の部品として管理したいユーザーです。READMEには「プライバシー優先」と明記され、セルフホストを前提とした設計になっています。

データの保存と同期の仕組み

FAQによると、SiYuanはデータをローカルのフォルダに保存し、標準のMarkdown形式で管理します。これにより、他のツールでの編集や移行が容易です。ただし、サードパーティの同期ディスク(Dropboxなど)との併用については、FAQで注意点が示されています。具体的には、データリポジトリの整合性を保つために、同期中にファイルが競合しないよう注意が必要です。データリポジトリキーを紛失した場合の対処法もFAQに記載されており、暗号化された同期を利用する場合にはキーの管理が重要です。この点は、セルフホストならではの運用負担と言えます。

Dockerでの展開手順

サーバーでSiYuanを動かす最も簡単な方法はDockerです。イメージ名は`b3log/siyuan`で、Docker Hubで公開されています。READMEによると、プログラムは`/opt/siyuan/`に配置され、リソース構造がそこに展開されます。具体的なコマンドはREADMEの該当セクションに記載されていますが、典型的には`docker run`でポートをマッピングし、データディレクトリをボリュームとしてマウントします。また、Windows、macOS、Linux用のインストールパッケージや、Android、iOS、HarmonyOS向けのアプリも提供されています。パッケージマネージャー経由でのインストールも可能で、`siyuan`または`siyuan-note`という名前でリポジトリに存在します。

ブロック参照とSQLクエリ埋め込みの実力

SiYuanの特徴的な機能は、ブロック単位の参照と`siyuan://`プロトコルです。これにより、ノート内の特定のブロックを別のノートから参照できます。さらに、SQLクエリを埋め込むことができ、ノートをデータベースのように扱えます。たとえば、特定のタグや属性を持つブロックを動的に一覧表示するような使い方が可能です。これは、静的リンクでは実現できない柔軟性です。ただし、SQLを書く必要があるため、非技術者には敷居が高いかもしれません。READMEでは「Million-word large document editing」とあり、大きな文書でも編集できると主張していますが、実際の性能は環境依存です。

AI機能とOCR、そして有料会員の境界

SiYuanはOpenAI APIを利用したAIライティングとQ&Aチャット機能を備えています。また、Tesseract OCRによる画像からのテキスト抽出も可能です。ただし、READMEの注意書きには「一部の機能は有料メンバー限定」とあり、具体的な境界はPricingページで確認する必要があります。無料版でもほとんどの機能が使えるとされていますが、クラウド同期や一部のAI機能は有料の可能性があります。この点は、セルフホストでありながらサブスクリプションが必要になる場合があるという、ビジネスモデルの複雑さを示しています。

拡張性: プラグインとコミュニティマーケットプレイス

SiYuanはプラグインAPI(`petal`)とコミュニティマーケットプレイス(`bazaar`)を提供しています。これにより、ユーザーは機能を拡張できます。また、JavaScript/CSSスニペットを追加できるため、カスタマイズの自由度が高いです。ただし、プラグインの品質はコミュニティ依存であり、公式のサポートは限定的です。開発ガイドも公開されており、TypeScriptとGoで構成されたコードベースに貢献することも可能です。

ライセンスと運用コストの注意点

SiYuanはAGPL-3.0でライセンスされています。これは、ネットワーク経由でサービスを提供する場合でも、改変したソースコードを開示する義務が生じるコピーレフトライセンスです。したがって、社内でホストして利用する場合でも、コードを改変したなら開示が必要になる可能性があります。商用利用は無料で可能とされていますが、このライセンス条項は法的な助言が必要な領域です。また、アップグレードはアプリマーケット経由でワンクリックで可能ですが、データリポジトリの互換性に注意が必要です。

代替案との比較: ObsidianやNotionとの違い

代替案として、ObsidianやNotionが挙げられます。ObsidianはローカルファイルをベースにしたPKMで、プラグインが豊富ですが、ブロック参照はSiYuanほど細かくありません。Notionはクラウドベースでブロックエディタを採用していますが、セルフホストできません。SiYuanの利点は、セルフホストでありながらブロック単位の参照とSQLクエリを提供する点にあります。一方で、Obsidianのコミュニティプラグインの多様性には及ばないかもしれません。選択は、データ管理の主権と機能の柔軟性のどちらを優先するかによります。

編集部の結論

SiYuanは、データを自前のサーバーで管理し、ブロック単位の細かい参照を活用したい個人やチームに向いています。Markdown WYSIWYGとSQLクエリ埋め込みは、ノートを構造化して扱いたいユーザーに強力です。一方、AGPL-3.0のため、改変したコードをネットワーク経由で提供する場合にはソース開示義務が生じる点を理解しておく必要があります。また、一部機能(クラウド同期や特定のAI機能)は有料メンバー限定です。導入前に、データリポジトリキーの管理方法と、サードパーティ同期ディスクとの併用に関するFAQを確認し、自分の運用に合うか検証してください。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート