30.5 KB · updated 2026-07-31 · md

feature-map.ja.md

docs/i18n/feature-map.ja.md

機能マップ

<!-- translations:start -->

English · 한국어 · 中文 · 日本語 · Русский · Español · Français · Deutsch

<!-- translations:end --> このドキュメントは、Tesserae に現在実装されている機能を、ステータス、ソースファイル、そしてどこで文書化されているかとともにまとめたものです。

Tesserae は 3 つの柱で動くコンテキストエンジンです: (1) セッションモニタリング、(2) 自律的でプロアクティブなナレッジの取り込み、(3) オンデマンドのドキュメント/コンテキスト。型付きグラフ、vault、静的サイトはナレッジベースのプロジェクションです。以下の機能は、それぞれがどの柱に貢献するかでグループ化されています。v0.5.0 マイルストーン(2026 年 6 月)でエンジンのスパインと、柱 3 の目玉機能であるオンデマンドコンテキストコンパイラが出荷されました。

ステータス凡例: ✅ 出荷済み · ⚠ 進行中 / 部分的。

クロスプロジェクト & UX — v0.11.0(2026 年 6 月)

機能ステータスソース備考
クロスプロジェクトフェデレーションMD0ask --scope federated は複数の登録済みプロジェクトから 1 つのグラフを組み立て — アイデンティティマージ(同一の arxiv/repo/hash/symbol)+ オプトアウト可能な埋め込みベースの shares_concept_with リンク — 和集合に対して単一の相互参照付き・引用付き回答を返します(PPR + compile_context)。プロジェクトごとの graph.json は読み取り専用。アイデンティティのみの場合は決定論的です。
スマート ask ルーター(アクティブプロジェクトなし)MD0「アクティブプロジェクト」の概念は削除されました — すべての登録済みプロジェクトは対等です。素の ask は自らルーティングします(プロジェクト名を挙げる → そのプロジェクト。比較 → federated。フォローアップ → ルートを維持。それ以外 → federated フォールバック)。オプションの LLM タイブレーカーと会話ごとの継続性があります。プロジェクトごとの操作は cwd からプロジェクトを解決します。
フェデレーションの検査tesserae/federation.py, cli.pytesserae federation status(プロジェクトごとのノード数、アイデンティティマージ、セマンティックリンク)と federation explain <node>(あるノードがなぜプロジェクトを橋渡しするか)。
マルチプロジェクト serveMD0, cli.py素の tesserae serve は登録済みのすべてのプロジェクトを 1 つのサーバーで配信します(/ にランディング、各プロジェクトは /<alias>/、ヘッダーに Projects スイッチャー、パスは閉じ込め済み)。--project X はライブ ask ウィジェット付きで 1 つを配信します。
compile の LLM コンセプトレイヤーcli.py, MD1, MD2tesserae compile は設定済みプロバイダ(llm_provider に従い codex/claude/api)経由で、コンセプト/クレームレイヤーをデフォルトで構築します(--extractor llm)。--extractor deterministic は構造のみのバイト安定なオプトアウト。selective-llm --llm-include … --llm-limit N はコスト意識型です。
tesserae setup(インタラクティブ)cli.py, MD1トップレベルの tesserae setup — デフォルトでインタラクティブ(LLM プロバイダ/effort + インストールするオプション依存関係)。フラグでプロンプトをスキップできます。pip なしの uv-tool 環境でもインストールが機能します(uv-pip フォールバック)。

相互運用・検索・セットアップ — v0.10.0(2026 年 6 月)

機能ステータスソース備考
Google OKF v0.1 インポート/エクスポートMD0tesserae export okf [--import DIR]。Markdown + YAML frontmatter のバンドル。x_tesserae 名前空間により Tesserae 自身のバンドルはロスレスでラウンドトリップし、外部のバンドルはベストエフォートです。
高速トランスクリプト検索(memex)MD0Claude/Codex トランスクリプトに対する nicosuave/memex の BM25 インデックス。GET /api/transcript-search 経由で tesserae serve の sessions ダッシュボードに接続。オプションであり、ない場合もグレースフルです。
読み取り規律ハンドルMD0compile_contextpreview=N は境界付きプレビュー + コンテンツをキーとするハンドルを返し、get_handle が残りをページングします。巨大なペイロードをエージェントのコンテキストの外に保ちます。
抽出品質シグナルMD0検出項目ごとの confidence + confidence_rationale + revisit_signals(バイト安定。fresh_insights で表面化)。
マシン全体のセットアップ + 依存関係MD0, cli.pytesserae setup はグローバルな LLM デフォルトを書き込み、オプション依存関係(memex、raganything)をインストールします。tesserae config deps は一覧/インストール。tesserae init は memex を提案します。プロジェクトごとの config は引き続き優先されます。

コンテキストエンジン — v0.5.0(2026 年 6 月)

3 つの柱を駆動するエンジンのスパイン。エンジンスパインのモジュールマップ、自己改善メモリサイドカー、コンテキストコンパイラのデータフローは MD0 を参照してください。

エンジンスパイン(柱 1 & 2)

機能ステータスソース備考
PipelineList[StepResult] を返す再利用可能なリフレッシュチェーンMD0CLI、デーモン、MCP のすべてが呼ぶ 1 つのステップランナー。ステップごとに Exception を捕捉。最初の失敗で停止します。
Daemon — 単一所有者の asyncio スーパーバイザーMD0ソース + vault + harness セッションディレクトリを監視。デバウンスされたキャンセル & 再スケジュールにより、バーストを 1 回の Pipeline.run() にまとめます。Pidfile 対応。処理中の例外にも耐えます。
project engine / project daemonMD0--interval--debounce--oncedaemonengine のエイリアスです。
project refresh — 一連のチェーン(ingest → compile → project)cli.py + MD1--changed-only(オプトインの増分)、--no-sessions
ライブセッションモニター → 検出項目harness_sessions.py + セッショングラフモジュールインポートされたセッションがグラフに供給されます。fresh_insights / find_session_findings がそれらを表面化します。

自己改善メモリ(柱 2)

機能ステータスソース備考
node_memory SQLite サイドカー(decay / confidence / superseded)MD0NodeMemoryRow + ストア非依存のアクセサ。可変状態のみ。first-seen は別の node_provenance サイドカーにあります。
Ebbinghaus 減衰スコアMD0セッションの検出項目を、最新かつ最もアクセスされたものを先頭にランク付けします(fresh_insights を駆動)。
Supersede パス(デフォルトで有効MD0決定論的な判定により、古い近似重複のインサイトを新しいものに置き換えられたとしてマークし、supersedes エッジを追加します。
インサイト → コードシンボルのリンクMD0セッションのインサイトから、それが参照するシンボルへの discusses エッジ。
強化 + 矛盾検出パスMD0, MD1同じサイドカー上でのアクセス強化 + 矛盾検出。
出力における数値的な再出現 confidenceMD0Temporal facts は NodeMemoryRow.confidence から confidence を刻印し、infer_confidence にフォールバックします。

検索 + 埋め込み(柱 2 & 3)

機能ステータスソース備考
ハイブリッドリトリーバー(BM25 + レキシカル + 埋め込み、RRF k=60)MD0ローカルファーストで完全に決定論的。
Personalized PageRank(HippoRAG-2)MD0マルチホップのシード展開。深さ制限付きサブグラフ。
実際のデフォルト埋め込み(Track B、Phase 6)retrieval/hybrid.pyデフォルト = 決定論的なハッシュバケット疑似埋め込み(依存関係なし)。sentence-transformersall-MiniLM-L6-v2)が優先され、インストール済みなら遅延ロード。embedding_status MCP ツールがアクティブなバックエンドを報告します。

オンデマンドコンテキストコンパイラ(柱 3 — 目玉)

機能ステータスソース備考
compile_context — 引用付きのインメモリ ContextBundleMD0シード解決 → PPR 展開 → 予算制限付き選択 → 引用付き markdown → オプションの LLM 合成。synthesize=true でない限り決定論的。ディスクには何も書きません。
project context CLIcli.py[query]--seeds--depth(2)、--budget(32000。≤0 = 上限なし)、--llm--output
compile_context MCP ツールMD0同じパイプラインを MCP 経由で。budget=0 は上限なし。
トピックスコープのエクスポートスライスMD0 slice_export_context_for_topiccompile_context 経由のトピックスコープの llms.txt + render_harness_context

増分コンパイル(Phase 4 — 実験的)

機能ステータスソース備考
来歴サイドカー(node_provenance、first-seen)MD0changed-only 削除の基盤。常に記録されます。
GraphStore の削除サーフェスMD0delete_nodedelete_nodes_by_source(来歴集合が空になったノードを削除。ファイル横断のコンセプトは生き残ります)。
url_resolver によるランタイムストアディスパッチMD0sqlite:///… / hypepaper-postgres://…GraphStore
incremental_compile フラグMD0デフォルト OFF / 実験的。 いくつかの編集形状ではバイトパリティが証明済みですが、マルチオーナー/プロデューサーライフサイクルのギャップが残っています。完全コンパイルがデフォルトのままです。

フロントエンド再設計 — 2026 年 4 月

ドキュメントファーストの階層的 wiki が、古いグラフダンプを置き換えます。ルートごとのツアーは MD0、3 レイヤーモデルは MD1 を参照してください。

Wiki レイヤー(L2 markdown)

機能ステータスソースドキュメントアンカー
WikiPageStore(冪等な body-hash 書き込み、frontmatter パーサー)MD0architecture.md § Module map
WikiLayerProjector — wiki レイヤーのノードごとに 1 つの md ページMD0architecture.md § Pipeline
sources/ ページwiki_projector.pyfrontend-redesign.md § Sources
concepts/ ページwiki_projector.pyfrontend-redesign.md § Concepts
entities/ ページwiki_projector.pyfrontend-redesign.md § Entities
papers/ ページwiki_projector.pyfrontend-redesign.md § Papers
repos/ ページwiki_projector.pyfrontend-redesign.md § Repos
topics/ ページwiki_projector.pyfrontend-redesign.md § Topics
questions/ ページ(Open questions)wiki_projector.pyfrontend-redesign.md § Questions
syntheses/ ページMD0frontend-redesign.md § Syntheses

Synthesis の種類(L2 → 派生)

SynthesisProjector は 7 つの決定論的テンプレートを生成し、Synthesis ノード + synthesizes / summarizes エッジをグラフに追加します。

種類ステータスソース備考
pulse(グローバルに 1 つ、/ を駆動)synthesis.pyコンパイルごとに再構築。
daily_digestsynthesis.pydata/research/daily/<date>/ ごとに 1 つ。
weeklysynthesis.pydata/research/weekly/<iso-week>/ ごとに 1 つ。
topicsynthesis.py3 論文以上の ResearchTopic / ApproachFamily クラスターごとに 1 つ。
comparisonsynthesis.py同じタスクで競合する ApproachFamily のペアごとに 1 つ。
field_overviewsynthesis.pyResearchField ごとに 1 つ。
LLM でアップグレードされた要約(環境変数フラグ)フックのみヒューリスティックなベースラインを出荷。TESSERAE_SYNTHESIS_LLM=1 フックはスタブのままです。

静的サイトのルート

ルートステータスソース備考
/(home、ヒーローの pulse)MD0 render_home統計行 + キュレーションされた入口 + 最近のアクティビティ。
/sources/, /sources/<slug>.htmlpages.py::render_sources_index, render_source_detail
/concepts/, /concepts/<slug>.htmlpages.py::render_concepts_index, render_concept_detail
/entities/, /entities/<slug>.htmlpages.py::render_entities_index, render_entity_detail
/papers/, /papers/<slug>.htmlpages.py::render_papers_index, render_paper_detail
/repos/, /repos/<slug>.htmlpages.py::render_repos_index, render_repo_detail
/topics/, /topics/<slug>.htmlpages.py::render_topics_index, render_topic_detail
/syntheses/, /syntheses/<slug>.htmlpages.py::render_syntheses_index, render_synthesis_detail
/questions/, /questions/<slug>.htmlpages.py::render_questions_index, render_question_detail
/timeline/pages.py::render_timelineヒートマップ + 日リスト + synthesis レール。
/timeline/<YYYY-MM-DD>.html(日別詳細)まだなし暫定として、ヒートマップのセルはその日の digest.md ソースページにリンクします。Subagent P が StaticSiteBuilder を通して日別詳細ページを接続中です。
/graph/(インタラクティブな 2D + 3D)pages.py::render_graph_view + js.py3d-force-graph + Three.js、ホバーツールチップ、エッジラベル、カーソル基準のズーム。
/about.htmlpages.py::render_aboutスキーマ、ビルド情報。

AI フレンドリーなエクスポート

成果物ステータスソース目的
ページごとの <page>.txt シブリングMD0 write_siblings1 ページのプレーンテキストビュー(ナビなし、スタイルなし)。
ページごとの <page>.json シブリングexports.py::write_siblings{title, kind, body, body_text, links, source_path, frontmatter}
llms.txtexports.py::render_llms_txtllmstxt.org の短いインデックス。
llms-full.txtexports.py::render_llms_full_txtすべてのページ本文、5 MB 上限。
graph.jsonldexports.py::render_graph_jsonldschema.org の Dataset、wiki レイヤーのノードのみ。
graph.json__init__.py::write_site完全なグラフペイロード(ツーリング用のコードノードを含む)。
search-index.jsonMD0パレット + ページ検索。wiki レイヤーの種類のみ。
sitemap.xmlexports.py::render_sitemap_xml出力されたすべてのルート、lastmod は frontmatter から。
rss.xmlexports.py::render_rss_xml直近 30 の syntheses。
robots.txtexports.py::render_robots_txt許容的 — クロール + インデックス。
ai-readme.mdexports.py::render_ai_readme機械可読なサイトマップ。
manifest.json__init__.py::_manifest出力されたすべてのファイルの sha256 + サイズ(冪等性ハーネス)。

ビジュアルデザイン + UX

機能ステータスソース備考
デザイントークン(light + dark テーマ、テラコッタのアクセント)MD0assets/style.css に 1 つの CSS バンドル。
テーマトグル(永続化、フラッシュなし)MD0localStoragedata-theme="dark"、描画前に適用。
検索パレット(cmd+k / ctrl+k / /js.pysearch-index.json に対するファジーマッチ。最近のページリスト。
スティッキーな右側 TOCpages.py + tokens.pyデスクトップのみ。モバイルは <details> によるドロワー。
月 + 曜日ラベル付きアクティビティヒートマップcomponents.py::heatmap_svg26 週の SVG、セルはその日の digest.md にリンク。
スパークライン(concept/entity ごと)components.py::sparkline_svg週次の言及数、直近 12 週。
モバイルシェル(ドロワーレール、ボトムナビ、可変タイポグラフィ)tokens.py + pages.pyタッチターゲットは 44 px 以上。
ページトランジション(120 ms の不透明度、prefers-reduced-motion 対応)tokens.py
3D + 2D グラフビュー(ホバー、エッジラベル、カーソル基準のズーム)pages.py::render_graph_view + js.py3d-force-graph + Three.js、CDN スナップショットとして vendoring。
ページごとの AI シブリングフッターcomponents.py::ai_siblings_footer現在のページの .txt.json へのインラインリンク。
Harness セッション履歴ページMD0 + MD1明示的な Claude Code/Codex インポート。/sessions/ のインデックスと詳細ページには、markdown のターン、左側ターンレール、折りたたまれた tool use、検索エントリがあります。

パイプライン + CLI

機能ステータスソース備考
project compile が synthesis + wiki + site を順に呼ぶMD0再設計プランの Phase 3。
project build-site スタンドアロンproject.py + MD1wiki/ + graph.json を読み、site/ を書きます。
project serve ローカル HTTPcli.py素の stdlib サーバー。
project deploy → GitHub PagesMD0gh-pages への worktree プッシュ。gh CLI によるオプションの --enable-pages--build--dry-run--branch--remote--force
project sessions discover/import/listMD0 + cli.pyClaude Code/Codex のインバウンドセッション履歴。discovery は明示的で、プロジェクトの作業ディレクトリにスコープされます。
project watch 変更時リビルドMD0 + MD1スタンドアロンのポーリングウォッチャー: --interval--debounce--once--paths--quiet。マルチソースのスーパーバイザーは project engine/daemon にあります(コンテキストエンジンを参照)。
project context — 引用付きコンテキストドキュメントをコンパイルcli.py + MD1柱 3 の目玉。コンテキストエンジンのセクションを参照。
project refresh / project engine / project daemoncli.py + MD1一連のリフレッシュチェーン + スーパーバイザーループ。コンテキストエンジンのセクションを参照。

既存の機能(変更なしで引き継ぎ)

CLI とインストール

  • pyproject.toml によるインストール可能な Python パッケージ。
  • ✅ コンソールコマンド: tesseraetesseraetesserae_mcp
  • curl | bash インストール用の scripts/install.sh
  • ✅ 高速なローカル開発のためのデフォルトの editable インストール。

抽出

  • ✅ 制御されたノード/エッジ語彙を持つ決定論的な研究ノートエクストラクタ。
  • ✅ API キーなしで高品質な構造化抽出を行う Claude CLI/OAuth エクストラクタ。
  • ✅ glob と予算制限による選択的 Claude ルーティング。
  • ✅ Python プロジェクト向けの決定論的な開発コードエクストラクタ。
  • ✅ コンテンツハッシュと --changed-only サポート付きのバッチ取り込み。
  • ✅ 不正な UTF-8 に耐性のあるソース読み取り。

グラフガバナンス

  • ✅ 制御された ResearchNodeType リスト — 現在は SYNTHESIS を含む。
  • ✅ 制御されたエッジタイプのホワイトリスト — 現在は synthesizessummarizes を含む。
  • ✅ スキーマドリフトを拒否するバリデーション。
  • ✅ エイリアスの正規化。
  • ✅ 曖昧な近似重複ノードのためのレビューキュー。
  • ✅ レビュー決定テンプレートと merge/keep-separate ワークフロー。
  • ✅ ファイルごとのグラフからのコーパストレンド要約。

永続化とレポート

  • ✅ グラフ JSON エクスポート。
  • ✅ SQLite グラフストア。
  • ✅ オプションの Kuzu グラフストア。
  • ✅ カウント、エビデンスカバレッジ、孤立ノード、日付バケット、エイリアスの多いノードを含むグラフレポート。
  • ✅ MegaMem、Graphiti/Zep、MCP グラフサーバー、agentic RAG から吸収したアイデアを記述する競合レポート。

プロジェクトローカルのワークフロー

  • tesserae init --bare
  • tesserae compile <paths>
  • tesserae compile
  • tesserae projects mcp-config
  • tesserae export site
  • tesserae serve
  • tesserae export site --deploy(GitHub Pages)
  • tesserae sessions discover/import/list(明示的なローカルエージェント履歴のインポート)
  • tesserae export site --watch(スタンドアロンのポーリングウォッチャー)
  • tesserae engine(スーパーバイザーループ — v0.5.0)
  • tesserae refresh(一連の ingest → compile → project チェーン — v0.5.0)
  • tesserae context(オンデマンドコンテキストコンパイラ — v0.5.0)
  • tesserae export harness
  • tesserae vault export
  • tesserae export graphiti
  • tesserae export graphiti --sync

Obsidian

  • ✅ すぐに開ける vault エクスポート。
  • .obsidian/app.json とグラフ設定。
  • ✅ Markdown プロジェクション。
  • raw/assets/ 構造。
  • ✅ Dataview クエリ付きの _meta/dashboard.md

エージェントハーネス

以下のターゲットファイルを生成します:

  • ✅ Claude Code: CLAUDE.md.claude/settings.json
  • ✅ Codex: AGENTS.mdmcp.toml
  • ✅ Gemini: GEMINI.md.gemini/settings.json
  • ✅ Kiro: steering と MCP 設定
  • ✅ Cursor: プロジェクトルールと MCP 設定
  • ✅ OpenCode: AGENTS.mdopencode.json

Graphiti / temporal facts

  • ✅ 来歴、現在性、confidence、無効化フィールドを持つ temporal fact プロジェクション。
  • ✅ 依存関係なしの Graphiti エピソード JSONL エクスポート。
  • ✅ Graphiti をインストールせずに行う sync-graphiti --dry-run スモーク。
  • graphiti_core と Neo4j によるオプションのライブ同期。

MCP サーバー

  • ✅ stdio JSON-RPC 上の tesserae_mcp / python3 -m tesserae.mcp_server
  • ✅ 検索/グラフツール: schemagraph_summarysearch_nodesnode_contextuse_ppr 付き)、search_factstimelinegraph_pprwiki_pageraw_sourcelint_reportdoctor_report
  • ✅ コンテキストエンジンツール(v0.5.0): compile_contextembedding_statusfresh_insights(減衰ランク付き)、list_communitiesfind_session_findingsfind_code_symbol_mentionsask
  • ✅ セットアップツール: tesserae_setup_plantesserae_setup_apply
  • ✅ マルチプロジェクトレジストリ: list_projectsregister_projectunregister_projectlist_sessionsurl_resolver によるストア URL ディスパッチ。

テスト

現在のスイートは以下をカバーします:

  • ✅ オントロジーのガードレール(新しい Synthesis ノード + synthesizes / summarizes エッジを含む);
  • ✅ 決定論的抽出;
  • ✅ Claude CLI ラッパーのパース/バリデーション;
  • ✅ 選択的 Claude ルーティング;
  • ✅ 正規化/レビューワークフロー;
  • ✅ バッチ取り込み;
  • ✅ レポート;
  • ✅ SQLite/Kuzu の永続化;
  • ✅ Graphiti のエクスポート/同期ドライラン;
  • ✅ プロジェクト CLI ワークフロー;
  • ✅ エージェントハーネスのエクスポート;
  • ✅ Obsidian エクスポート;
  • ✅ フロントエンド生成 + リンク整合性(nodes/codeclass-*.html なし);
  • ✅ wiki ストアの冪等性;
  • ✅ synthesis プロジェクターのゴールデン + 冪等性;
  • ✅ サイトのコンポーネント、ページ、エクスポート、関連性;
  • ✅ AI シブリングの形状(ページごとの .txt + .json);
  • ✅ エンドツーエンドの 2 回コンパイル冪等性;
  • ✅ エンジンスパイン: パイプライン、リフレッシュチェーン、デーモンのコア + ソース、project engine CLI;
  • ✅ 自己改善メモリ: サイドカー、decay/supersede、supersede の抑制(MCP を含む)、reinforce/contradiction;
  • ✅ 検索 + 埋め込み: ハイブリッド検索、PPR、実際のデフォルト埋め込み(Phase 6);
  • ✅ コンテキストコンパイラ: 形状/引用整合性/決定論性/予算/PPR フォールバック、project context CLI、MCP compile_context;
  • ✅ 増分コンパイル(実験的): differ、パリティゲート、来歴の準備状態、SQLite の来歴;
  • ✅ パッケージインストールとインストーラの契約。