# Lacan Knowledge OS **ラカン精神分析のためのコーパス根拠型リサーチ環境。** まず証拠、次に解釈、捏造はしない。 [English](README.md) · [中文](README.zh.md) · [Français](README.fr.md) · [**日本語**](README.ja.md) · [Deutsch](README.de.md) · [Italiano](README.it.md) [![License](https://img.shields.io/badge/license-Apache--2.0-6b4c2f?style=flat-square)](LICENSE) [![Core](https://img.shields.io/badge/%E5%AD%A6%E8%A1%93%E3%82%B3%E3%82%A2-%E5%9B%BA%E5%AE%9A%20%C2%B7%2039%20%E3%82%B3%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%8D%E3%83%B3%E3%83%88-43403b?style=flat-square)](docs/ARCHITECTURE.md) [![Tests](https://img.shields.io/badge/%E3%83%AA%E3%82%B0%E3%83%AC%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3-146%20%E3%82%B9%E3%82%A4%E3%83%BC%E3%83%88%20%C2%B7%200%20%E5%A4%B1%E6%95%97-3f6b4a?style=flat-square)](docs/SCHOLARLY_REGRESSION_SPEC_V1.md) [![MCP](https://img.shields.io/badge/MCP-10%20%E3%83%84%E3%83%BC%E3%83%AB%20%C2%B7%202025--11--25-6b4c2f?style=flat-square)](docs/MCP_TOOL_CONTRACTS.md) [![Built with](https://img.shields.io/badge/%E6%A7%8B%E7%AF%89-DeepSeek%20Harness-4d6bfe?style=flat-square)](https://github.com/deepseek-ai)
--- > **このシステムが従う唯一の規則** > > *すべての主張は、必ず一つの段落番号に着地しなければならない。* > > コーパスが支えられない問いに対して、システムは**棄権**します —— モデルの知識で > 答えることはありません。**棄権は結果であり、エラーではありません。** --- ## 目次 | | | |---|---| | [1. これは何か](#1-これは何か) | [6. アーキテクチャ](#6-アーキテクチャ) | | [2. 誰のためか](#2-誰のためか) | [7. DSH / 任意の MCP クライアントから使う](#7-dsh--任意の-mcp-クライアントから使う) | | [3. やらないこと](#3-やらないこと) | [8. コーパスは自分で用意する(重要)](#8-コーパスは自分で用意する重要) | | [4. クイックスタート](#4-クイックスタート) | [9. 長所と短所](#9-長所と短所) | | [5. 使い方](#5-使い方) | [10. 状態・ロードマップ・参加](#10-状態ロードマップ参加) | --- ## 1. これは何か **Lacan Knowledge OS** は、ラカンを真剣に読むためのローカル・オフライン優先の研究器具です。 セミネールとエクリのテキストを**引用可能な証拠ストア**に変え、あなたの問いと答えの間に **固定された学術コア**を置きます。 一つのシステムに六つの機能: | | 機能 | 得られるもの | |---|---|---| | 🔎 | **Research** | 問いを投げる → コアが段落を検索し証拠契約を構築し、**その後にのみ**回答を合成。回答内の各主張は引用検証と含意検証を通過しなければならない | | 📖 | **Explore** | コーパスを直接読む:段落・セッション・セミネール・概念・用語 —— モデルを介さない | | 🔬 | **Evidence Inspector** | `回答 → 主張 → 段落 → セッション → セミネール → 証人/出典`、引用された**まさにその一句**と文脈ウィンドウ付き | | 🗂️ | **Research Projects** | 繰り返しの実行を長期テーマに(問い・仮説・段落・人物・症例・文献) | | 📚 | **文献と引用** | レビュー状態・メタデータ完全性・スタイル別の引用可否、**そして不可の理由** | | ✍️ | **Obsidian ブリッジ** | 証拠と検証はこちらに。あなたの理解・ノート・執筆はあなたの vault に | ## 2. 誰のためか - **研究者・大学院生** —— ラカンを正確に引用し、その読みが**どこから来たか**を示す必要がある人。 - **読書会・セミネール** —— 共有でき検証できる証拠基盤がほしい場。 - **ツール開発者** —— *固定コア* アーキテクチャの実例:意味論レイヤーが漂流せず、製品レイヤーがその周りで進化する。 - **AI エンジニア** —— 信頼度スコアではなく、明示的な棄権契約を伴う根拠付き生成に関心がある人。 ## 3. やらないこと これらの拒否は設計そのものです: | 拒否 | 理由 | |---|---| | **モデルの知識で答えない** | 合成は検索された証拠のみを使える。契約が不足なら `ABSTAINED`。 | | **出典を黙って修復しない** | `SOURCE_TRACE_INCOMPLETE` は可視のまま。隠すことは出典の誤表示。 | | **書誌データを捏造しない** | 出版社・年・ISBN・ページは決して推測しない。出せないスタイルは理由を述べる。 | | **自動で正典化しない** | 取り込み/AI 生成の素材は *候補* として入り、人間が昇格させるまで候補のまま。 | | **未宣言の意味論を許さない** | 39 の学術コンポーネントはハッシュ固定。未宣言の変更は検証に失敗し、システムは**起動を拒否**する。 | ## 4. クイックスタート > **この公開版はエンジンのみで、コーパスは含みません。** [§8](#8-コーパスは自分で用意する重要) と > [`CORPUS.md`](CORPUS.md) を参照してください。 ```bash git clone https://github.com/YanKaFei/Lacan-Knowledge-OS.git cd Lacan-Knowledge-OS # 1) コーパスが無くても起動します —— ヘルプセンターと UI は完全に使用可能: python3 -m workspace_ui.server.cli --port 3090 # → http://127.0.0.1:3090/help 13 ページのヘルプセンター # → http://127.0.0.1:3090/research 研究画面(回答にはコーパスが必要) # 2) 整合性チェック(これは契約であって飾りではない): python3 _scripts/_tools/core_freeze.py --verify # 39 の学術コンポーネント python3 _scripts/_tools/freeze_lineage.py --verify # フェーズ間の意味論変化 python3 _scripts/_tools/build_i18n.py --check # UI 文言 ↔ 辞書 ↔ 呼び出し点 python3 _scripts/_tools/build_help.py --check # Help のリンク・アンカー・捏造 0 # 3) 全リグレッション(コーパス依存のスイートはコーパスが必要;CORPUS.md 参照) bash _scripts/run_all_tests.sh ``` **要件:** Python 3.9+(コア経路は標準ライブラリのみ)、モダンブラウザ。ベクトル検索や 実 LLM を使う場合のみ [`docs/EMBEDDING_PROVIDER.md`](docs/EMBEDDING_PROVIDER.md) の オプション依存が必要です。**バンドラもビルド手順もありません** —— `index.html` が ES モジュールを直接読み込みます。 ## 5. 使い方 ### 5.1 タスク指向のホーム画面 開いたときに見えるのは**何ができるか**であり、内部構造ではありません: ``` Hero → [研究を始める] [はじめての方へ] タスク → ラカンへの問い · 原文と出典を探す · 概念を研究する 人物と症例を研究する · 長期プロジェクトを作る · 文献と引用を管理する 流れ → ① 問う → ② 証拠を見る → ③ 原文を読む → ④ 素材を残す → ⑤ 出典を整理 → ⑥ 自分の知を形成 5 分 → 最初の研究を終えるまでの 6 ステップ ``` すべての入口は**実リンク**(`/research`、`/explore`、`/projects`、`/bibliography`、 `/persons`、`/cases`、`/zotero`、`/help/...`)—— 共有・ブックマーク・新規タブで開けます。 ### 5.2 一つの研究タスクの流れ 1. **問う** —— 一度に一つの問い。 2. **状態を読む** —— `VALIDATED`、`VALIDATED_WITH_QUALIFICATIONS`、`PARTIALLY_SUPPORTED`、 `VALIDATION_FAILED`、`INSUFFICIENT_EVIDENCE`、`ABSTAINED`。文字どおりに読むこと。 3. **検証する** —— 引用チップをクリック。Evidence Inspector が引用された一句・文脈・ 出典チェーンを示します。*回答はコアの結論であり、インスペクタはコーパスが実際に 述べていることです。* 4. **深める** —— Explore で同じ段落を開いて周辺を読む。 5. **残す** —— `Add to Project`、または `Save to Obsidian`。 ### 5.3 ヘルプセンター `/help` は 13 ページ:サイドバー目次、アンカー、前後移動、トピック検索。 内容は *はじめ方・Research・証拠・Explore・三者の違い・Projects・人物と症例・ 文献・Zotero・Obsidian・言語・状態一覧・トラブルシューティング*。 **Help に現れるコントロール名はすべて実 UI から描画**され、機能的主張はすべて機械検証 されます(`HELP_CLAIM_VERIFICATION.json`:**42/42 検証済み・捏造 0・保留 0**)。 ### 5.4 UI 言語と研究言語 | 設定 | 範囲 | 例 | |---|---|---| | **Language**(`English` / `中文`)| 製品 UI のみ | 即時切替、リロード不要 | | **Research language**(`any` / `zh` / `fr` / `en`)| 研究リクエストと共に送られる**質問言語** | UI を翻訳せず、検索も絞り込まない | `UI = 中文` + `Research language = Français` は完全に妥当です。ラカンの原文・引用段落・ 書誌メタデータは**決して翻訳されません**。 ## 6. アーキテクチャ ``` あなたの問い │ ┌──────────▼───────────┐ │ 製品レイヤー │ workspace_ui/ · browse_api/ · project_api/ │ (自由に進化) │ export_system/ · bibliography/ · obsidian_adapter/ └──────────┬───────────┘ │ scholarly_api v1(製品境界 — 3 つの固定コンポーネント) ┌──────────▼───────────┐ │ 固定された学術コア │ 39 のハッシュ固定コンポーネント │ (漂流しない) │ 検索 · 証拠契約 · 十分性 · 合成境界 · 引用 · 含意 · 棄権 └──────────┬───────────┘ │ ┌──────────▼───────────┐ │ コーパス │ 段落ストア · 証人 · オントロジー · 索引 │ (自分で用意) │ 本リポジトリには**含まれません** └──────────────────────┘ ``` - **エージェントは Python ではなく MCP で話す。** `mcp_server/` が stdio で **10 ツール**を 公開(プロトコル `2025-11-25`)。Web UI はその契約の一クライアントにすぎません。 - **固定は実行可能。** `core_freeze.py --verify` が 39 のハッシュを再計算し、 `freeze_lineage.py --verify` が 7 フェーズを通じて**意味論変化ゼロ**を証明します。 - **派生物は再生成可能。** SQLite/FTS/ベクトル索引と 24.9 万段落は正典ソース+マニフェスト から再構築できます。**vault が唯一の真実の源**です。 さらに:[`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) · [`docs/MCP_ARCHITECTURE.md`](docs/MCP_ARCHITECTURE.md) · [`docs/HELP_SYSTEM_ARCHITECTURE.md`](docs/HELP_SYSTEM_ARCHITECTURE.md)。 ## 7. DSH / 任意の MCP クライアントから使う このリポジトリは**それ自体が** [DeepSeek Harness](https://github.com/deepseek-ai) の プラグイン対象です:MCP サーバー、貼るだけの row、インストール可能な DSH バンドルを同梱します。 ```bash # A. DSH プラグインとして(MCP row を自動で書き込みます) dsh plugin --profile web add github:YanKaFei/Lacan-Knowledge-OS # B. あるいは row を自分で貼る — integrations/lacan-kb-mcp.row.yml # ツールは mcp__lacan-kb__search_passages のような名前で現れます # C. あるいはサーバーを単体で起動 python3 _scripts/_tools/lacan-kb-mcp ``` DSH 自身の MCP SDK で証明済み(`_data/mcp/DSH_CLIENT_PROOF.json`、**14/14**): stdio ハンドシェイク、スキーマ付き 10 ツール、`mcp__lacan-kb__` 命名、構造化証拠の返却、 返却された passage id の独立再検証、未知ツールにはクラッシュではなくプロトコルエラー。 詳細は [`docs/MCP_DSH_INTEGRATION.md`](docs/MCP_DSH_INTEGRATION.md)。 ## 8. コーパスは自分で用意する(**重要**) 本リポジトリは**意図的に一切のソーステキストを含みません**: | 含まれないもの | 理由 | |---|---| | セミネール/エクリ全文(仏・中)| 権利者の著作権 | | 段落ストア(`passages.jsonl`、249,105 件、約 384 MB)| コーパス本文 | | 証人と実現テキスト(約 152 MB)| コーパス本文 | | ベクトル/語彙索引 | 大容量、あなたのコーパスから再構築可能 | **含まれるもの**:スキーマ、固定契約、ビルダー、バリデータ、テスト —— つまり**あなたが使用する権利を持つテキスト**(自前のスキャン、ライセンス版、 パブリックドメイン、自分の翻訳)を取り込むために必要なすべてです。 ```bash python3 _scripts/build.py --help # コーパス目録とビルド入口 python3 _scripts/inventory_corpus.py --help # 正典目録とハッシュ ``` 公開版は [`_scripts/_tools/build_public_edition.py`](_scripts/_tools/build_public_edition.py) が生成し、**否定的検証**(コーパス N-gram 探査、秘密情報スキャン、絶対パススキャン、 サイズ門)を行います。[`docs/PUBLIC_EDITION.md`](docs/PUBLIC_EDITION.md) 参照。 ## 9. 長所と短所
✅ 長所⚠️ 短所・限界
**流暢さより検証可能性。** 各主張は段落 ID に結び付き、人間が手で監査できます。 **正直な失敗。** 棄権・`INSUFFICIENT_EVIDENCE`・明示的な利用不可が一等の出力。捏造の埋め草はありません。 **実行可能な契約。** 39 コンポーネントの固定と 7 段の系譜は、文書の約束ではなくコードが検査します。 **オフライン優先。** `Offline / Mock` は資格情報もネットワークも不要で、決定的な回答を返します。 **一つの契約、複数のクライアント。** 同じ MCP 面が Web UI・DSH・MCP 対応エディタに奉仕します。 **監査可能な履歴。** 各実行は不変スナップショット。同じ問いを再実行すると旧項目を上書きせず新項目が増えます。 **二言語が作り込み。** UI 文言は辞書駆動で欠落キー 0。ソーステキストは意図的に翻訳しません。 **使用権のあるコーパスが必要です。** そのままでは UI・ヘルプセンター・契約は見えますが、テキストを用意するまで問いに答えられません。 **範囲に主張があります。** *コーパスについて*答えます。出版史・出席者・日付の問いは棄権します(コーパスがそのメタデータを持たないため)。 **品質スコアはありません。** どこにも「信頼度 %」はなく、解釈の質はあなたの判断です。 **ノート PC 規模には重め。** 参照コーパスは派生索引と埋め込みを含め約 2.5 GB。 **ベクトル検索は任意かつ部分的。** embedding 依存が無い場合、語彙検索に退避します(UI がどちらかを表示)。 **実 LLM 合成は単一のブロッキング呼び出し。** 長い実行は 45〜60 秒。UI は実経過時間を表示し、「待機を中止」はバックエンド処理を取消しません。 **製品は速く、学術層は固定。** 便利機能は頻繁に変わりますが、*意味論*の変更には正式な Core Change Request が必要。 **領域の予備知識を前提とします。** ラカンを教えてくれるシステムではありません。
## 10. 状態・ロードマップ・参加 - **状態:** 学術コアは v1 で固定(`SCHOLARLY_CORE_READY`)。製品層は日常利用に必要な機能を 備えています(研究・探索・証拠・プロジェクト・文献・Zotero 取り込み・Obsidian ブリッジ・ エクスポート・ヘルプセンター)。 - **直近の受け入れ値:** **20/20 の阻断項目通過**、**146 スイート / 78 バリデータ / 失敗 0 / スキップ 0**、コア固定 **PASS**、意味論ドリフト **0**。 - **ロードマップ:** [`docs/ROADMAP.md`](docs/ROADMAP.md)。 - **参加:** [`CONTRIBUTING.md`](CONTRIBUTING.md) —— 唯一譲れない規則は *Core Change Request 無しに学術意味論を変えないこと*。 - **セキュリティ:** [`SECURITY.md`](SECURITY.md) —— 資格情報は製品 API を通りません。
**ライセンス** —— コード:[Apache-2.0](LICENSE) · ソーステキスト:**配布しません**([NOTICE](NOTICE)) *このシステムが引用確認の一週間を節約したなら、それは仕事を果たしています。*