Windows PowerShell 5.1 / PowerShell 7+ および Windows 11 環境で動作する 100% オフライン対応 Markdown Wiki サーバー & LLM RAG AI チャット & 静的 HTML エキスポートツール です。
- 開発目的:
- 任意ディレクトリの Markdown ドキュメント群を閉域網・オフライン環境で即座に Web Wiki 化。
- IIS, Nginx, Apache などの外部 Web サーバー向けに一括で静的 HTML サイトを生成・デプロイ。
- WinRT 形態素解析と LLM RAG による閉域網・ローカル AI チャットアシスタントの統合。
- 高度な検索エンジン(AND/NOT構文・除外検索・インデックスキャッシュ)による高速なナレッジ検索。
- 多言語化(i18n: 日本語 / 英語 / 外部辞書拡張)によるグローバル対応。
- GUI ツール (
Export-GUI.bat) による直感的なフォルダ選択とエキスポート。
- アーキテクチャ概要:
- リアルタイム閲覧 & OKF ナレッジハブ:
System.Net.HttpListenerによるローカル Web サーバー (http://localhost:8080/) - 🌐 多言語化 (i18n) & 言語セレクタ & 外部辞書拡張 (
lib/WikiI18n.ps1):- 日本語 (
ja) / 英語 (en) の標準ビルトイン辞書を搭載。 - ヘッダーの言語セレクタドロップダウンによるワンクリック即時切り替え(Cookie 保存)。
- クエリパラメータ (
?lang=en) によるダイレクト言語指定および静的エキスポート (-Language en) 対応。 - ルート直下の
i18n.jsonによる外部辞書拡張(中国語等の新規言語追加や既存文言の上書き)。 - チャットプロンプト(Fast RAG / Agentic RAG)およびコンテキスト見出し・思考ログ・フォールバック回答の自動ローカライズ。
- 日本語 (
- 🔍 高度な OKF 検索エンジン & NOT 構文(除外検索) & インデックスキャッシュ:
- WinRT 日本語形態素解析 (
Get-JapaneseWordsWinRT): Windows 10/11 OS 内蔵のWindows.Data.Text.WordsSegmenterによる完全依存 0 の分かち書き & 助詞ストップワード自動除去。 - AND 検索 & フレーズ完全一致ボーナス: 複数キーワードの絞り込みと自然文フレーズ加点。
- 🚫 NOT 構文(除外検索):
-キーワード,NOT キーワード,!キーワード,NOT "フレーズ"をサポート。単語中ハイフン(K-DAT)の誤認を防止する堅牢なパーサー。 - ⚡ ローカル集約ディスクキャッシュ (
.cache/.index-cache-<hash>.json): 起動元スクリプト配下にフォルダごとのハッシュ付きキャッシュを個別保存。OneDrive等のクラウド同期ドライブや読み取り専用共有フォルダでも競合・汚染を起こさず安全に高速化。ファイル削除・更新を検知してゾンビキャッシュを自動排除。
- WinRT 日本語形態素解析 (
- ⚙️ Web 設定管理画面 (
/settings) & 編集 ON/OFF トグル & 読み取り専用ガード:- Web ブラウザ上からのエディター機能 ON/OFF トグル、バックアップ世代数、検索キャッシュ、起動時インデックス、RAG 設定の変更・保存。
- エディター機能を無効化(
editor.enabled: false)することで社内共有フォルダや LAN 公開時の誤操作・ファイル改ざんを防止(読み取り専用モード)。 - 読み取り専用モード時は UI 上の「✏️ 編集」ボタンが非表示になり、サーバー API (
/api/save) でも403 Forbiddenを返却して書き込みを二重ブロック。 config.json保存時の 3世代ローテーションバックアップ (.bak1〜.bak3) とアトミック安全書き込み。- 「今すぐインデックス再生成」および「🗑️ ローカルキャッシュ全消去」ボタンによる一括クリーンアップ & 非同期ローディング UI。
- 🤖 2モード制 LLM RAG AI チャットアシスタント & POST
/api/chatAPI:- 🌊 SSE リアルタイムストリーミング表示 & 非ストリーム自動フォールバック: トークン単位でのスムーズな逐次出力。LLM API がストリーム非対応の場合でも自動で一括描画へフォールバック。
- ⚡ Fast RAG (高速1-Pass) / 🧠 Agentic RAG (ReAct自律調査) の2モード選択トグル機能。
- 4つの Agentic Tools:
search_okf(重み付け・NOT検索対応),lookup_glossary(用語定義抽出),read_doc(本文取得・非推奨警告),get_linked_docs(相対リンク追跡) による自律探索。 - 思考プロセス (
thinkingLog) のリアルタイム可視化: 自律調査ステップを SSE イベントで逐次受信し、アコーディオン開閉で探索ステップを追跡。 - さくら AI API / Ollama / LM Studio / OpenAI 等の各種 REST LLM エンドポイントへ対応。
- マルチターン対話履歴 (history) 管理 & 安全文字数ガード:
config.jsonで可変調整(maxHistoryTurns: 3,maxHistoryChars: 4000,maxAgentTurns: 5,maxDocCharLength: 2000)。 - 高度なチャット UI: Markdown 表(
<table>)、コードブロック(<pre><code>)、リストの完全描画、📋 コピーボタン、⛶ 拡大/縮小トグル、🧹 履歴クリアボタンを標準搭載。
- 🔑 マシンバインド・アクティベーション & 管理者用コード発行 CLI & 完全サーバーレス Web アプリ:
- PC 固有ロック (Machine-Bound): ユーザー環境のマザーボード UUID(
Get-MachineFingerprint)から生成された 16 文字のマシン ID およびメールアドレス(任意)に基づいて暗号化キーを派生し、他人の PC では復号できないアクティベーションコード(ENC:...)を発行。 - 完全サーバーレス Web アプリ (
docs/activation/index.html): ブラウザ標準の Web Crypto API を活用し、外部通信・サーバー処理・npm 依存ゼロ(完全クライアントサイド完結)でコードを生成。GitHub Pages 対応。 - 管理者用 CLI ツール (
New-ActivationCode.bat/New-ActivationCode.ps1): コマンドラインまたは対話形式で即座にマシン固有コード / 従来ポータブルコードを生成してクリップボードに自動コピー。 - 設定 UI でのマシン ID 表示 & ワンクリックコピー: 設定画面(
/settings)に自 PC のマシン ID とコピー用ボタンを配置。マシン ID を管理者に申請して発行コードを受け取るだけのスムーズな運用を実現。 - DPAPI 自動変換 & ローカル保護: ユーザーが設定画面でアクティベーションコード(
ENC:...)を入力して保存すると、サーバー側で自 PC のマシン ID を検証後、Windows 固有のDPAPI:...形式に自動変換してconfig.jsonに安全に保存。
- PC 固有ロック (Machine-Bound): ユーザー環境のマザーボード UUID(
- 🔒 API Key 暗号化ユーティリティ (
Set-ApiKey.bat/Set-ApiKey.ps1):- Windows DPAPI またはポータブル AES-256 暗号化(
ENC:.../DPAPI:...)により、config.json内の API キーを安全に保護。
- Windows DPAPI またはポータブル AES-256 暗号化(
- 🛑 安全なサーバー終了 & UI シャットダウンボタン & 非同期待機 (
/api/shutdown):- ワンクリック UI 終了: 画面右上の「⏻ 終了 / ⏻ Shutdown」ボタンおよび設定画面(
/settings)の「🛑 サーバー制御」からサーバーを安全に停止。 - 誤操作防止 & 全画面案内: 停止前の確認ダイアログ(
confirm)と停止完了後の全画面案内オーバーレイ(#shutdownOverlay)を表示。 - Ctrl + C (SIGINT) 即時終了:
BeginGetContextによる 200ms 非同期ポーリング待機および[System.Console]::CancelKeyPressハンドラにより、バッチファイル (.bat) 起動時やコンソールからのCtrl + Cでスレッドをブロッキングさせず即座に正常停止。
- ワンクリック UI 終了: 画面右上の「⏻ 終了 / ⏻ Shutdown」ボタンおよび設定画面(
- Google OKF (Open Knowledge Format) v0.2 思想の準拠: YAML Front Matter からの文脈抽出・自動補完 (フォールバック)・Version / Reviewer / Contributors / Related メタデータカード描画
- AI エージェント / LLM 用機械可読 API:
/api/index.json(メタデータ),/api/chunks.json(自動セマンティック分割チャンク),/api/chat(AI チャット),/api/config(設定管理),/api/shutdown(サーバー停止) - ✏️ Web UI 内蔵 Markdown エディター & OKF フォーム・本文分離編集 & 世代管理バックアップ・復元 & ON/OFF 制御:
- OKF フォーム&本文 分離編集モーダル: メタデータ(YAML Front Matter)と本文(Markdown Body)を分離して直感的に編集可能。
- 📋 フォーム入力モード: OKF v0.2 仕様に準拠した項目(
type,title,status(draft|stable|deprecated),version,domain,author,reviewer,lastUpdated,tags,related,supersededBy)を直感的に編集。元のファイル記載値をデフォルト値として忠実に復元・保持。更新日フィールドと「📅 今日をセット」ボタン付き。 - 📄 RAW YAML モード: YAML テキストをそのまま直接編集可能。手動入力時の
---囲み記号の自動サニタイズに対応。 - 双方向同期: フォーム入力と RAW YAML 間のタブ切り替えで即座に双方向同期。OKF 仕様外のカスタムプロパティも消失せず安全に保持。
- キーボードショートカット:
Ctrl+S/Cmd+Sによる即時保存、Escによるモーダルクローズに対応。 - YAML なし Markdown との完全互換: YAML がないプレーン Markdown ファイルでも H1 見出しからのタイトル自動抽出や安全なフォールバックにより一切エラーなく動作。
- 設定画面からのエディター機能 ON/OFF 切替による閲覧専用(読み取り専用モード)制御とサーバーサイド書き込み保護 (
403 Forbidden)。 config.jsonのeditor.maxBackups(既定値 3) に基づく自動世代バックアップローテーション (.bak1,.bak2, ...)。- エディターモーダル上での過去世代ドロップダウンプレビュー選択 & ワンクリックでのロールバック復元 UI。
- 保存時の OKF (YAML Front Matter) 構文エラー自動検出 & マイルドなアドバイス表示 (ソフトLint)。
- エディター内の各メッセージ(読込中・保存完了・バックアップ世代ラベル・構文警告)の 100% 多言語化 (i18n) バインド。
- 📖 用語連動型タグ・逆リンク拡張 & 自動タグ同期 CLI (
Update-WikiTags.ps1) & 用語解説 Markdown ボックス:glossary.md用語抽出:Get-GlossaryTerms/Get-GlossaryTermDefinitionにより、見出しやエイリアス表記(例:OKF (Open Knowledge Format))から用語と解説を構造化抽出。- 自動タグ同期 CLI (
Update-WikiTags.ps1): 全ドキュメント本文をスキャンし、検出用語を既存のtags:を壊さず重複なく自動マージ。-DryRunおよび-WhatIf(ShouldProcess) に対応。 - Web エディタ用語サジェスト:
/api/glossary-termsAPI と連携した<datalist id="glossaryTagDatalist">により、タグ入力時に用語候補をサジェスト。 - タグ画面用語解説ボックス: タグ検索画面(
/tags?tag=...)の上部に、glossary.md由来の用語解説ボックス(太字・リスト・リンク等のリッチな Markdown レンダリング対応)を表示。
- 動的ナビゲーション & ビュー: 最近の更新 (
/recent), タグ集計/検索 (/tags), 品質・メンテナンスダッシュボード (/maintenance), 著者ディレクトリ (/authors), AND/NOT 検索 (/search), システム設定 (/settings) - 静的エキスポート:
Export-MarkdigWiki.ps1による OKF v0.2 メタデータカード同梱型 HTML 一括出力(日英多言語対応) - Markdown レンダリング: .NET 4.6.2 ビルド版
Markdig.dll(GFM テーブル・コードブロック・タスクリスト・YamlFrontMatter 対応) - 図形・ダイアグラム:
lib/mermaid.min.js同梱による 100% オフライン Mermaid ダイアグラム表示
- リアルタイム閲覧 & OKF ナレッジハブ:
- セキュリティ機能:
[System.IO.Path]::GetFullPathによる絶対パス判定でのディレクトリトラバーサル防止 (403 Forbidden)。[System.Net.WebUtility]::HtmlEncodeによる YAML 属性値・パスの XSS サニタイズ。
- ファイルエンコーディング規約 (
AGENTS.md):- スクリプトファイル (
.ps1,.psm1,.psd1): UTF-8 with BOM (EF BB BF) (Windows PowerShell 5.1 での日本語化け防止) - バッチファイル (
.bat): UTF-8 without BOM (No-BOM) (cmd.exeの・ソエラー防止)
- スクリプトファイル (
SimpleWiki/
├── Start-MarkdigWiki.ps1 <-- Web サーバー & RAG AI チャット起動スクリプト (UTF-8 with BOM)
├── Start-MarkdigWiki.bat <-- Web サーバー起動バッチ (UTF-8 No-BOM)
├── Update-WikiTags.ps1 <-- glossary.md 用語のタグ自動マージ・同期スクリプト (UTF-8 with BOM)
├── New-ActivationCode.ps1 <-- マシンバインド/ポータブル アクティベーションコード生成 CLI (UTF-8 with BOM)
├── New-ActivationCode.bat <-- アクティベーションコード生成バッチ (UTF-8 No-BOM)
├── Set-ApiKey.ps1 <-- LLM API キー暗号化・設定スクリプト (UTF-8 with BOM)
├── Set-ApiKey.bat <-- API キー設定用 ExecutionPolicy Bypass バッチ (UTF-8 No-BOM)
├── Export-MarkdigWiki.ps1 <-- OKF 対応静的 HTML エキスポートスクリプト (UTF-8 with BOM)
├── Export-MarkdigWiki.bat <-- 静的 HTML エキスポートバッチ (UTF-8 No-BOM)
├── Export-GUI.ps1 <-- 静的 HTML エキスポート GUI (UTF-8 with BOM)
├── Export-GUI.bat <-- GUI 起動用バッチ (UTF-8 No-BOM)
├── config.json.example <-- 設定ファイルテンプレート
├── config.json <-- ローカル設定(自動生成・暗号化保存)
├── i18n.json.example <-- 外部辞書拡張テンプレート
├── templates/
│ └── okf-template.md <-- OKF v0.2 準拠ドキュメント新規作成テンプレート
├── lib/
│ ├── Markdig.dll <-- .NET Framework 4.6.2 ビルド版 Markdig.dll
│ ├── System.Memory.dll <-- .NET 4.8 依存アセンブリ
│ ├── WikiI18n.ps1 <-- 多言語化 (i18n) 辞書 & 言語判定モジュール
│ ├── WikiMetadata.ps1 <-- OKF メタデータ抽出 & YAML 構文検証 & 用語集パーサー
│ ├── WikiSearch.ps1 <-- 検索エンジン・WinRT 形態素解析・NOT構文・インデックスキャッシュ
│ ├── WikiRag.ps1 <-- LLM RAG (Fast/Agentic) & チャット API
│ ├── WikiViews.ps1 <-- 各種 HTML ビュー & UI レンダラー
│ ├── WikiSecurity.ps1 <-- マシンID指紋・AES-256 / DPAPI 暗号化 & パス検証
│ └── mermaid.min.js <-- オフライン用 Mermaid.js (MIT License)
├── markdown_sample/ <-- サンプルドキュメントフォルダ (OKF メタデータ記述例付き)
│ ├── index.md <-- トップページ
│ ├── 概要.md <-- プロジェクト概要
│ ├── glossary.md <-- 社内用語定義集
│ ├── docs/
│ │ ├── 詳細仕様.md <-- サブフォルダ内サンプル
│ │ └── api/
│ │ └── REST-API.md <-- REST API 仕様書 & AI Agent 連携ガイド
│ └── images/
│ └── architecture.svg <-- サンプル SVG 画像
├── docs/
│ └── activation/
│ └── index.html <-- 完全サーバーレス型 Web Crypto API アクティベーションコード生成 Web アプリ
├── tests/
│ └── Start-MarkdigWiki.Tests.ps1 <-- Pester 自動テストスイート (全167件)
└── README.md <-- プロジェクト記録
Export-GUI.bat をダブルクリックして起動します。
- 入力 Markdown フォルダ を参照ボタン(または直接入力)で選択します。
- 出力先 HTML フォルダ を選択します。
- [🚀 エキスポート実行] ボタンを押すと、一括で静的 HTML サイトが生成されます。
- 完了後、ダイアログから出力先フォルダを直接エクスプローラーで開くことができます。
Start-MarkdigWiki.bat をダブルクリックします。
- ドラッグ&ドロップ: 閲覧したい Markdown フォルダを
Start-MarkdigWiki.batにドラッグ&ドロップします。 - PowerShell から実行:
.\Start-MarkdigWiki.ps1 -RootFolder "D:\MyDocs\ProjectWiki" -Port 8080
http://localhost:8080/: ホーム・Markdown 閲覧画面 (OKF メタデータ付き)http://localhost:8080/recent: 最近の更新ドキュメント一覧http://localhost:8080/tags: タグ目録 / タグクラウド(用語解説ボックス表示)http://localhost:8080/maintenance: 風化ドキュメント (>365日)・下書き・非推奨の管理画面http://localhost:8080/authors: 著者一覧ディレクトリhttp://localhost:8080/search?q=キーワード: 全文検索 (AND/NOT 検索対応)http://localhost:8080/settings: システム設定 & インデックス管理画面http://localhost:8080/api/index.json: AI エージェント / LLM 用機械可読 JSON インデックスhttp://localhost:8080/api/chunks.json: RAG 用自動 H2 見出しセマンティック分割済み JSON チャンク APIhttp://localhost:8080/api/glossary-terms: 用語一覧・タグ・解説取得 APIhttp://localhost:8080/api/config: 設定情報取得・保存・インデックス再構築 API
Export-MarkdigWiki.bat をダブルクリックします。
- ドラッグ&ドロップ: 変換したい Markdown フォルダを
Export-MarkdigWiki.batにドラッグ&ドロップします。 - PowerShell から実行:
.\Export-MarkdigWiki.ps1 -RootFolder "D:\MyDocs\ProjectWiki" -OutputDir "C:\inetpub\wwwroot\wiki"
SimpleWiki では、API キーを他人に漏洩させずに特定の PC 専用コードとして配布・アクティベーションする仕組みを備えています。
【発行手順】
1. ユーザーが SimpleWiki の [システム設定 (⚙️)] を開き、表示されている「マシン ID」をコピーして管理者に伝えます。
2. 管理者が「アクティベーション Web サイト」または「CLI ツール」で対象マシン ID 用のコードを発行します。
・Web サイト: docs/activation/index.html (GitHub Pages: https://chottokun.github.io/SimpleWiki/activation/)
・CLI ツール: .\New-ActivationCode.bat
3. 発行された「ENC:xxxx...」コードを設定画面の [アクティベーションコード] 欄に貼り付けて保存します。
4. サーバー側で自動的に Windows 固有の保護形式 (DPAPI) に変換され、この PC 専用として永続化されます。
glossary.md で定義された用語を Markdown 本文から自動検出し、YAML Front Matter の tags: に安全にマージします。
# 事前確認 (DryRun モード: ファイルを変更せずに更新候補を表示)
.\Update-WikiTags.ps1 -WikiDir "D:\MyDocs\ProjectWiki" -DryRun
# 実際に同期・更新を実行
.\Update-WikiTags.ps1 -WikiDir "D:\MyDocs\ProjectWiki"- Windows 11 標準動作保証: Windows 11 に標準でプリインストールされている Windows PowerShell 5.1 および .NET Framework 4.8 の環境のみでそのまま起動・動作します。
- 事前同梱ライブラリ (
lib/):Markdig.dll: .NET Framework 4.6.2 ビルド版 Markdown パーサー (GFM / YAML Front Matter 対応)System.Memory.dll/System.Buffers.dll/System.Numerics.Vectors.dll/System.Runtime.CompilerServices.Unsafe.dll: .NET 依存補助アセンブリmermaid.min.js: オフライン表示用 Mermaid.js ライブラリ
- インターネット接続不要:
nugetやnpmによるオンラインパッケージ取得、管理者権限のインストール作業は一切不要です。リポジトリを展開するだけで 100% 閉域網・オフライン環境で動作します。
powershell -NoProfile -ExecutionPolicy Bypass -Command "Invoke-Pester -Path .\tests\Start-MarkdigWiki.Tests.ps1"- 検証結果: 全 167 件の Pester 自動テストが 100% PASS。
- 1. スクリプト構文・AST検証: 全
.ps1ファイルの構文解析・トークン検証に合格 - 2. Pester 単体・統合・セキュリティ・多言語・OKF v0.2 テスト (全 167 件):
glossary.mdからの用語・見出し・定義・エイリアス抽出テスト (Get-GlossaryTerms,Get-GlossaryTermDefinition)Update-WikiTags.ps1の-DryRun非破壊検証および既存タグを保持した自動マージテスト- タグ詳細画面(
/tags?tag=...)での用語解説ボックス表示および Markdig リッチ Markdown レンダリング検証 - エディター機能 ON/OFF トグル設定およびバックアップ世代数の
/settingsUI レンダリング &/api/config保存・パーステスト editor.enabled無効化(false)時の UI トップバー「✏️ 編集」ボタン非表示化テストeditor.enabled無効化時の/api/save書き込みリクエストに対する403 Forbiddenガードテスト- マシン固有 ID(
Get-MachineFingerprint)生成・16文字フォーマット検証 - マシンバインド・アクティベーションコード暗号化/復号(同一マシン・同一メールでの復号成功)
- 異なるマシン ID/誤ったメールアドレスでの復号失敗(防犯性)検証
- 従来ポータブル
ENC:...形式の透過的復号・後方互換性テスト - 完全サーバーレス Web アプリ(
docs/activation/index.html)の Web Crypto API 出力コードと PowerShell 間の 100% 復号互換性テスト /api/config経由でのアクティベーションコード送信 ➡ DPAPI 自動変換 & 無効コード時の 400 Bad Request 拒絶検証- Markdig アセンブリロード & GFM パイプライン構築
- 多言語化 (i18n) 辞書・言語判定(クエリ/Cookie/設定優先度)・外部辞書
i18n.jsonマージ - 英語・日本語での UI HTML ビュー生成(サイドバー・トップバー・フッター・各動的画面)
- チャットプロンプト(Fast RAG / Agentic RAG)およびコンテキスト見出し・思考ログ・フォールバックの多言語化
- OKF v0.2 拡張フィールド(Version, Reviewer, Contributors, SupersededBy, Related)およびライフサイクルステータス(stable等)のパースとレンダリング
- 完全メタデータ欠落時のスマートフォールバック(ファイル日時欠落時の「不明」扱い保証)
- ディレクトリトラバーサル防止 (
403 Forbidden) - XSS サニタイズ (404 パス、タイトル、検索フォーム、OKF 属性値)
- OKF メタデータ解析・YAML パース例外処理・自動補完 (フォールバック)・カンマ区切りタグ対応
- OKF 動的ビュー生成 (
/recent,/tags,/maintenance,/authors,/search,/settings) - OKF 文脈検索エンジン重み付けスコアリング & AND 条件検索
- 検索クエリ NOT 構文(
-単語,NOT 単語,!単語,NOT "フレーズ")による除外検索 - 検索インデックスのディスクキャッシュ・ファイル削除/更新検知(ゾンビファイル防止)
- 大規模ドキュメント群のインデックス構築進捗追跡 (
Get-WikiIndexingStatus,/api/indexing-status) & Web UI / コンソールプログレス表示 - 設定保存時の 3世代ローテーションバックアップ (
.bak1〜.bak3) & アトミック保存 - 全角スペース(
U+3000)による検索単語分解対応 - URL エンコードされた UTF-8 日本語クエリパラメータのデコード (
Get-QueryParams) - クライアント接続切断時のソケット例外非破壊保護 (
Write-SafeHttpResponse) - AI エージェント用 API JSON 出力 (
/api/index.json) - RAG 用セマンティックチャンク自動分割 API 出力 (
/api/chunks.json) - Agentic RAG / Fast RAG AI チャット API (
/api/chat) - 静的 HTML エキスポート (
Export-MarkdigWiki.ps1) の-Languageオプションとメタデータカード統合 - 全 PowerShell ファイルの UTF-8 with BOM およびバッチファイルの UTF-8 No-BOM エンコーディング検証
- 3. E2E エキスポート検証: 実フォルダでの全 HTML 相互リンク・CSS/JS 出力検証に成功
- 1. スクリプト構文・AST検証: 全
- 本プロジェクト (SimpleWiki): MIT License
- 第三者オープンソースアセンブリ / ライブラリ:
Markdig.dll: MIT Licensemermaid.min.js: MIT License.NET System.*アセンブリ: MIT License (by .NET Foundation)
詳細なライセンス全文および著作権表示は LICENSE.md をご覧ください。商用・個人利用・社内展開を含め自由に再配布いただけます。
