デジタルスレッド
デジタルスレッドは、工場で起きたことを時系列で、そして何と何がつながっているかで貫いて保持するサービスです。Platform の設備・タグ台帳と事象、そして MES・ERP・PLM・品質・保全・安全といった外部システムが提供する作業指示・部品・人・設計変更・不適合・保全・許可を一つのグラフでつなぎます。2026.10 から AI スタックに標準で含まれています — 別途オンにするスイッチはありません。
| 誰が | どこで | 何を |
|---|---|---|
| 運用者(管理者) | AI 管理コンソール → レールのデジタルスレッド | 外部システムコネクタを接続し、フィールドを結び、ミラーが正常に回っているか、準備度判定に何が紐づいているかを確認する |
| 現場ユーザー | コパイロットの質問(/chat) — thread_ ツール | 「今日の作業は何がある?」「今朝、充電器に何があったか」「この設備の上下に何がつながっているか」を尋ねて回答を得る。コパイロットにデジタルスレッド専用画面はない → デジタルスレッド — 接続すると増えるもの |
| 自動化・提案 | 同じ thread_ ツール・アクションツール | 自動化が決められた時刻に同じことを確認し、提案詳細で承認すると外部システムにドラフトを作成する |
何で構成されているか
| 構成要素 | 役割 |
|---|---|
plantpulse-digital-thread-api (内部 7140) | コネクタ登録簿・適合性テスト・バインディング同期・ミラー投影・タイムライン/接続クエリ・作業準備度判定・チャットツール |
plantpulse-digital-thread-neo4j (公開しない) | 工場グラフミラーのストレージ。本サービス専用で、LightRAG の Neo4j とは分離します |
PostgreSQL pi のスキーマ dt | コネクタ登録簿・バインディング・同一性宣言・アクション記録 → データベースモデル |
どちらのコンテナもホストポートを開きません。管理コンソールとコパイロットが compose ネットワーク内から呼び出します → サービスポートマップ
ミラーには事象とオブジェクトの ID と接続のみがあり、本文はありません。原本(Platform 台帳・事象、外部システム)からいつでも再作成できる複製です。外部システムの名称・有効期限といった値はクエリ時にコネクタから読み取り、保存しません。
連携マップ — コネクタの接続

| 番号 | 位置 | 役割 |
|---|---|---|
| ① | 画面ヘッダー | 表示ボタン マップ / 一覧 / 準備度ソース(一覧は同じ内容を表で、準備度ソースは下記)、コネクタ追加(下記の4ステップ)、更新 |
| ② | サマリーカード | 登録済みコネクタ数・有効数・適合性失敗数・コネクタが提供するツール数。適合性失敗が 0 でなければ、そのコネクタから確認します |
| ③ | マップ | 外部システム → コネクタ → ツール → バインディング → 工場グラフを左から右へつなぎます。ノードを押すとサイドパネルに設定・検査別の適合性結果・直近のアクション呼び出しが開き、マップはそのノードの連鎖だけを強調します |
ファミリーが11種類あるためマップは広くなります。マップ上のフィルタ行でファミリー・状態で絞り込み、ドラッグ・ホイール・Ctrl+ホイール(拡大)で見渡します → AI 管理コンソール — 連携マップ
マップの色と線は次のように読みます。
| 表示 | 意味 |
|---|---|
| 緑 | 有効 — 適合性テストに合格しています |
| 赤 | 適合性失敗 |
| グレー | 無効 |
| 実線バインディング | コネクタが宣言したもの |
| 点線バインディング | 運用者が指定したもの、またはサービスの既定フィールド表(同期が常に読み込むフィールド) |
| 🔒 アクションツール | 外部システムにドラフト・要求を作成するツール — コンソールからは呼び出しません(下記「安全装置」) |
コネクタ登録 — 4ステップ
コネクタ追加を押すとサイドパネルが開きます。
- 外部システム — ファミリー(下表)・システム名・コネクタ名を決めます。
- エンドポイントと資格情報 — コネクタの MCP エンドポイントと認証ヘッダー・値を入力し、登録して検出を押します。サービスがコネクタからツール一覧とサイトを読み取り、「サイト … でツール N 件を検出」と表示します。コネクタは無効のまま作成されます。
- 適合性 — 適合性テストを実行します。検査ごとに合格・失敗が出て、失敗した検査は何に違反したかを示します。
- 有効化 — 🔴 適合性テストに合格しないと有効にできません。 有効にすると、そのコネクタのツールがそのサイトに提供されます。
編集でエンドポイント・資格情報を変更して保存すると、コネクタは無効になり適合性結果が消去されます。 ステップ3からやり直してください。コネクタのツール一覧が変わった場合(ツール検出)も同じです。
画面には「設定済み / 未設定」のみ表示されます。編集時に空欄のままにすると、保存済みの値がそのまま残ります。値は PI_DT_SECRET_KEY で暗号化して保存します — このキーを失うと保存済み資格情報を復号できず、コネクタごとに再入力が必要になります → パスワード・API キーの変更
適合性テストが測るもの
コネクタが仕様どおりに応答するかを実際に呼び出して確認します。代表的な検査は次のとおりです。
| グループ | 測るもの |
|---|---|
| 検出 | capabilities がスキーマを守っているか、ツール名が宣言したバージョンの仕様に存在するか、ファミリーの必須ツールが揃っているか |
| 宣言 | 読み取りツールに読み取り専用の表示があるか、入力スキーマが仕様と一致するか |
| 出力 | サンプル呼び出しの結果が仕様スキーマを守っているか — 宣言したバージョンより新しいバージョンのフィールドを返しても不合格です |
| 時刻・ページング・上限 | 時刻形式、最後まで辿っても重複・欠落がないか、広すぎる区間・条件なしの一覧を拒否するか |
| エラー・サイズ | 存在しない ID に not_found を返すか、応答が 16,000 文字以内か |
| 事象・バインディング | 事象エンベロープの形、事象の対象がバインディングで解決されるか、同じ事象を2回読んでも ID が同じか |
| レイテンシ | 必須読み取りツールの p95 が 2 秒未満か |
検査は«直近7日〜今後7日»区間のサンプルで実行します。データが全くない区間ではスキーマを測定できないため、実データのあるコネクタでテストしてください。
対応する仕様とファミリー
登録画面で選べるファミリーは11種類、準拠する仕様系統は9種類です。仕様のないファミリーは登録できません。ファミリーごとに提供すべきツール・使用箇所・注意点はデジタルスレッドコネクタにファミリー別に記載しています。
| ファミリー (画面名) | 仕様・最小バージョン | 読み込むもの(キーのみ) |
|---|---|---|
mes (MES) | mes-mcp/0.7 | 設備・作業指示・工程・マイルストーン・受注プロジェクト・実績ロット・系譜・製造 BOM |
scm (SCM) | mes-mcp/0.7 | 協力会社・購買・供給ライン・出荷・入庫・欠品・供給能力 |
sched (スケジュール計画(APS)) | mes-mcp/0.7 | 発行済み計画の工程スケジュール・リソースカレンダー・シナリオ |
erp (ERP) | erp-mcp/0.4 | 人(仮名 ID)・資格・割当、資材購買オーダー・入庫・顧客注文、製造 BOM |
plm (PLM) | plm-mcp/0.2 | 設計変更指示・設計 BOM・文書メタデータ |
qm (品質) | qm-mcp/0.2 | 検査ロット・不適合(NCR) |
cmms (保全(CMMS)) | cmms-mcp/0.2 | 保全作業指示・予防保全ウィンドウ |
tool (工具管理) | tool-mcp/0.2 | 工具・治具・計測器台帳と宣言された機能(払出・校正・寿命・作業別工具) |
wms (倉庫(WMS)) | wms-mcp/0.2 | 在庫・移動(ミラーには載せず、問い合わせ時に読み取ります) |
lims (試験室(LIMS)) | lims-mcp/0.2 | 試料・試験結果 |
ehs (安全(EHS)) | ehs-mcp/0.3 | 作業許可・隔離(LOTO)・事故参照・点検・リスクアセスメント・役割資格 |
- 🔴 最小バージョンより低いバージョンを宣言したコネクタは使用されません(2026.10 再リリース(2026-10-20) から) — 同期が拒否され、判定では«未接続»になります。 引き上げ方法はバージョンの引き上げ。
- 既に接続済みのコネクタが新しいバージョンを宣言するようになると、ツール検出で無効になります — そのコネクタだけ適合性テスト → 有効化をやり直します。
- アクションツール(🔒 — ドラフト・要求を作成するツール)は
mes-mcp系統にのみあります — MES の保留要求・保全要求・作業指示ドラフト、SCM の督促・協力会社問い合わせドラフト、スケジュール計画のシナリオドラフト。残り 8 仕様は読み取り専用です。 - これらの仕様は特定製品ではなく共通項として定めたものです。使用するシステムの前段にこの仕様に準拠したコネクタを立てて接続します。
商用製品アダプタ — 事前検証段階
SAP S/4HANA(ERP・保全)・IBM Maximo(保全)・Siemens Teamcenter(PLM)・Dassault 3DEXPERIENCE(PLM)アダプタは、モックサーバーに対して適合性テストに合格した段階であり、実製品に接続しての検証は行っていません → 商用製品アダプタ
1つの現場に同じファミリーのコネクタが複数ある場合
1つの現場に同じファミリーのコネクタを複数接続できます(例:ラインごとに異なる MES)。ファミリーごとに代表が1つあり、最初に登録したコネクタが代表になります。
- 代表を移すには別のコネクタを代表に指定します — 既存の代表は自動的に外れます。代表を空にすることはできません。
- 2つのコネクタが同じツール名を提供する場合、後から接続した側が拒否されます。コネクタ側でツールを外してください。
- コパイロットの提案カードがアクションを送る際、同じファミリーが複数あれば代表に送ります。
外部リンク — 元システムで開く
コパイロットの問い合わせの根拠パネルでスレッドノード(PO 行・作業指示・品番 …)を押すと、「SAP で開く」のように 元システムのその記録画面 へ移る リンクが付きます → デジタルスレッド — 答えの根拠。このリンクは 管理者がコネクタにリンクテンプレートを入れたときだけ 作られます。テンプレートがなければリンクもありません(インストール既定)。
入れる場所は 連携マップ › コネクタノード › サイドパネルの 外部リンク です。
| 欄 | 入れるもの |
|---|---|
| ベース URL | 元システム画面のルート(例: https://s4.example.com)。https のみ可能です。user:pass@・クエリ・フラグメントは入れません |
| ボタンラベル | 画面に表示する言葉、60 文字まで(例: 「SAP で開く」)。空にすると コネクタ名 がそのままボタンの文字になります |
| http:// 許可 (社内デモ専用) | 平文 http の社内デモシステムでだけオンにします。運用システムは https である必要があります |
| オブジェクト種類別テンプレート | 種類(po_line・work_order・part・ncr …)ごとに URL テンプレートを 1 つ。テンプレート追加 で増やします。1 つ以上必要です |
| プレビュー用サンプルキー | サンプルキーを入れるとテンプレートで作ったアドレスがプレビューされます(参考用) |
テンプレートのプレースホルダーは 3 つだけです。
| プレースホルダー | 入るもの |
|---|---|
{base} | ベース URL(末尾の / なし) |
{key} | オブジェクトキー全体(URL エンコード — / も %2F) |
{key.1} ~ {key.9} | キーを / で分けた N 番目の部分。PO 行 4500001/10 の PO 番号と行番号を別々に使うとき |
po_line {base}/sap/bc/ui2/flp#PurchaseOrder-display?PurchaseOrder={key.1}&PurchaseOrderItem={key.2}
customer {base}/sap/bc/ui2/flp#Customer-display?Customer={key}
- リンク保存 を押すとデジタルスレッドがテンプレートを検査します。テンプレートに
{key}・{key.N}がない、未知のプレースホルダー・種類・空白がある、 または結果のアドレスがベース URL のホストから外れる場合は拒否し、その理由を表示します。🔴 最終判定は保存時の検査で、画面のプレビューは参考用です。 - リンク削除 はそのコネクタのテンプレートを消します。テンプレートを入れても消しても、適合性の結果と有効状態はそのままです。
- JSON で埋める にリンク設定(
{"base_url": …, "templates": …})やデモシステムが出した提案({"links": …})を貼り付けると、フォームが埋まります。 - 同じ種類のテンプレートを複数のコネクタが持つ場合は、そのノードと 同じ現場 の有効なコネクタのうち、その種類の 正本ファミリー(PO 行・顧客注文は ERP、 作業指示・工程は MES、品番・文書・設計変更は PLM、不適合・検査は QM、保全作業指示は CMMS)を先に、次に代表を使います。 同じ番号が複数の現場にあってアドレスが分かれる場合はリンクを出しません。
- コパイロットはボタンの横に移動先のホストを一緒に表示し、範囲外のノードにはリンクがありません。リンクを開いた人の権限は元システムが改めて判定します。
- 変更したテンプレートはすぐに効きます。ただし既に保存された答えの根拠カードは答えたときのリンクをそのまま持っており、ノードを押して開いた 元システムの現在値 のリンクが今のテンプレートで作られたものです。
フィールドの接続(バインディング) — ドラッグ&ドロップ
同期が既定で読み込まないフィールドを工場グラフのオブジェクトに結んだり、コネクタが宣言したフィールドの種類を変更・無効化したりします。
- マップで読み取りツールグループを押します。サイドパネルにツール別のフィールド一覧が展開されます。
- フィールドをマップ右側の工場グラフ列の種類(設備・作業指示・部品 …)へドラッグ&ドロップします(またはフィールドを押してから種類を押します)。
- サイドパネルの確認ボックスで結合を押します。宣言済みフィールドを別の種類に置くと«宣言された種類を上書きします»も併せて表示されます。
- 無効化するには 🚫、削除するにはフィールド行のゴミ箱またはマップの点線ノードから削除します。
- 運用者バインディングがコネクタ宣言に優先します。
- 変更内容は次回の同期から適用されます。定期同期(下記)を待たない場合は、サイドパネルの今すぐ同期を押します — オブジェクト数・接続数が表示されます。有効なコネクタのみ同期できます。
- レコード自身の ID フィールドは変更できません。
- 誰がいつ何を変更したかは、バインディング変更履歴と管理コンソールの監査ログ(
thread.write)に残ります。
製造 BOM (M-BOM)
設計 BOM(PLM の plm_get_bom)は«何で構成されているか»であり、製造 BOM は«工場で実際にどう作るか» — ファントム・中間品・代替資材・どの工程で消費するかです。正本がどこにあるかによって、どちらか一方のコネクタが提供します。
| M-BOM 正本 | コネクタ | ツール |
|---|---|---|
| ERP | erp が erp-mcp/0.2 を宣言 | erp_get_mbom |
| MES・MPM | mes が mes-mcp/0.6 を宣言 | mes_get_mbom |
両ツールは同じ形を返します。両方が有効な場合は ERP 側を先に読みます。
- リカバリ案がより正確になります。 M-BOM があれば、設計変更・不適合が及んだ品番がどの工程を止めるのかを消費工程で絞り込みます。なければ«作業指示単位で止まる»と仮定し、回答の«考慮していないこと»にその旨を記します。
- BOM 3者照合 — 設計 BOM・製造 BOM・図面部品表を突き合わせ、欠落した子品番・数量・単位・バージョン遅れを報告のみします。何も修正しません。画面はなく、サービス API(
/api/v1/bom/reconcile)で確認します。
資材購買オーダーと顧客注文 — PO でつなぐスレッド
2026.10 再リリース 3 から、スレッドが注文で両端をつなぎます。
자재 PO 줄 ─(걸림)→ 작업지시 ─(속함)→ 마일스톤 · 프로젝트 ─(이행)→ 고객 주문 줄 ─(주문자)→ 고객
資材 PO 行 — ERP と SCM を1つに統合します。 PO の正本は ERP(erp-mcp/0.3 の erp_list_purchase_orders)であり、SCM は協力会社が確定した納期を知っています。両方が接続されていれば、同じ po_id・po_line を1行に統合します。
| フィールド | どちら側の値を使うか |
|---|---|
| 納期(約束日・確定日) | SCM に協力会社確定(confirmed_date)があれば SCM、なければ ERP |
| 状態・未決数量などその他 | ERP(正本) |
- 🔴 2つのソースの値が異なる場合、黙って一方を選ぶことはしません。選んだ値とルールを
conflicts[]として併せて返し、リカバリ案の回答にもそのまま載ります。 - 片方にしかない行はその側の値をそのまま使います。
- SCM がなくても ERP だけで準備度の資材項目とリカバリ案は動作します。この場合«作業指示に紐づく未決 PO 行 = その作業指示が待っている資材»とみなし、ERP PO は在庫を示さないため在庫は不明です — この仮定は回答の
assumptionsに記されます。
顧客注文行 — 余裕日数とリスク。 顧客注文行は ERP erp_list_sales_orders が提供します(顧客・顧客 PO 番号・契約納期・確約納期・遅延損害金条件など)。行はマイルストーン(出荷)・作業指示・プロジェクトのいずれかで工場の作業に接続します。
- 余裕日数(
slack_days) = 納期日(確約納期があればそれ、なければ契約納期)の翌日 00:00(現地) − 完了予定時刻。0.1 日単位です。完了予定は計画・遅延計算の数値のみを使います — 数値がなければslack_days: nullと理由です。 - プロジェクトでのみ接続した行は、どの日が納入日か分からないため、余裕日数はその作業指示以降の作業を数えていない«上限»であると
slack_basisで明示します。 slack_basisは余裕日数の基準です —work_order_planned_end(作業指示の計画終了)・work_order_planned_end_project_only(同じ基準の上限)・delay_propagated(リカバリ計算が部品遅延を伝播させた後)。準備度・今日の一覧は前の2つ、リカバリ計算(explain_recovery・影響表)はdelay_propagatedです。同じ顧客注文行でも2つの値は大きく異なり得るため、コパイロットはこのフィールドで«計画余裕»・«(遅延反映)»を区別します。
| 余裕日数 | risk |
|---|---|
| 0 未満 | late(納期超過) |
| 2 日未満 | at_risk(リスク) |
| それ以外 | on_track(余裕) |
| 算出不可 | unknown(不明) |
ERP コネクタが顧客注文を提供しない場合(0.3 未満または無効の場合)、顧客注文フィールドは空ではなく**«不明»**になり、理由が customer_orders_unknown_because に載ります。
コネクタ同期 — 定期と今すぐ同期
コネクタ同期は、有効なコネクタのバインディング・事象をミラーに読み込む処理です。2026.10 再リリース 3 からサービスが定期的に実行します — グラフミラーの 10 分周期の投影(Platform 台帳・学習済みエッジ)とは別のものです。
- 周期 — コネクタごとに、そのファミリーの鮮度上限の半分(最小 300 秒)ごとに同期します。例えば MES・スケジュールは 1 時間、EHS は 30 分、ERP は 12 時間です。ミラーが常に上限の内側にあるようにするためです。サービスが再起動すると、しばらく後に有効なコネクタを 1 回ずつ同期します。
- ウィンドウは«現在 ± 15 日»です。
- 消えた接続をクローズします。 今回のウィンドウでソースがもう言及しない接続は削除せずクローズします(終了時刻を記録します) → 接続履歴
- 🔴 コネクタが返した一覧が切り詰められていた場合はクローズをスキップします — 切り詰められた一覧でクローズすると正常な接続までクローズされるためです。応答の
prune_skippedがその理由を示し、コンソールには黄色の行「今回の同期では消えた接続をクローズしませんでした — 収集が切り詰められました …」と表示されます。 - 1つのコネクタが失敗しても他のコネクタは動作します。失敗したコネクタは次の周期で再試行します。
- 同じコネクタの同期は順番に1つずつ実行されます。
連携マップのサイドパネルの今すぐ同期は、同じ同期を即座に1回実行します — コネクタを有効にした直後やフィールドバインディングを変更した直後に押します。実行するとオブジェクト数・接続数が表示され、定期同期と同様に消えた接続をクローズします。
状態の確認。 デジタルスレッドの /health に connector_sync が載ります — 有効かどうか・実行回数・コネクタ別の最終結果・失敗中のコネクタ一覧(failing)。情報提供のみであり、コネクタが失敗してもサービス状態を«注意»に下げることはしません(外部システム側の問題であるためです)。
設定。 インストール env で変更できます。すべて空欄のままなら上記の既定値が適用されます → 環境設定
| キー | 既定 | 意味 |
|---|---|---|
DT_CONNECTOR_SYNC_ENABLED | true | 定期同期。false にするとコンソールの今すぐ同期だけが残ります |
DT_CONNECTOR_SYNC_INTERVAL_S | 0 | 同期間隔(秒)。0 ならファミリー別(上限の半分) |
DT_CONNECTOR_MAX_AGE | 空 | ファミリー別の鮮度上限。例:mes=2h,erp=1d |
DT_LINK_HISTORY_DAYS | 空(= 180) | クローズした接続を保持する日数 |
デジタルスレッドリポジトリのリファレンスデモコネクタ(製品イメージには含まれません)のうち、重工業受注生産ワールド heavy の ERP は erp-mcp/0.3 を宣言し、購買オーダー・入庫・顧客注文を提供します。このバージョンの PO スレッドをテスト環境で辿るときに使います。
接続履歴 — その日付時点の状態
コネクタが読み込んだ接続(作業指示 → 設備、設計変更 → 品番、子品番 → 親品番 …)は、ソースから消えても削除せずクローズします。 そのため「先週の火曜日、この作業指示はどの設備に紐づいていたか」「設計変更前、この品番の上位組立は何だったか」に答えられます。
- チャットツール
thread_trace_linksと接続クエリがas_of(その時点)を受け付けます。既定は«現在オープンな»接続のみです。 - クローズした接続は 180 日(
DT_LINK_HISTORY_DAYS)保持されます。それより前の時点を尋ねると«存在しなかった»ではなく**«不明»**と回答します。 - 接続を«クローズする»のはコネクタ同期です — 定期同期とコンソールの今すぐ同期の両方がクローズします(サービス API では
POST /api/v1/connectors/{id}/syncにprune: true)。応答のprune_appliedがクローズしたか、prune_skippedがスキップした理由(一覧の切り詰め)を示します。 - 台帳投影・学習済みエッジ・同一性接続には履歴がありません(常に«現在»)。
システムごとに番号が異なる場合 — 同一性(SAME_AS)
PLM は BLD-SX-S1、MES は 100234-01 のように同じ品番を別の呼び方をするとスレッドが途切れ、リカバリ案が「MES で見つかりません」を返します。このとき人が確認したペアだけを同一であると宣言します。ミラーに SAME_AS 接続が1つ作られ、ソースの番号は変更されません。
- 🔴 自動ではつなぎません。 誤ってつないだ同一性は誤った遅延数値を生みます。サービスは候補(大文字小文字・区切り記号・先頭の 0 を無視すると一致するもの、他のコネクタが示したペア)を提示するだけで、宣言は人が行います。
- 画面はありません — サービス API(
/api/v1/identities、候補は/api/v1/identities/suggestions)で宣言・取り消しを行います。取り消すとミラーの接続も削除され、誰がいつ宣言・取り消したかは記録に残ります。 - 宣言一覧で
applied: falseの宣言は、2つの番号のどちらかがまだミラーに存在しないものです — 同期後に接続されます。 - タイムラインは同一性を2ホップまで辿って別番号で紐づいた事象も表示し、リカバリ案は«どの宣言でつないだか»を回答に明示します。
データが古くなったら — 鮮度上限
コネクタ応答には«いつ時点のデータか»(as_of)が付きます。その時刻がファミリー別の上限より古い場合、リカバリ案と準備度判定は数値・判定を出さず「古いソース」(stale_inputs)で停止します。古いデータで誤った回答を出さないためです。
| ファミリー | 上限 |
|---|---|
ehs | 1 時間 |
mes・sched・wms | 2 時間 |
cmms | 4 時間 |
lims | 12 時間 |
scm・erp・plm・qm・tool | 1 日 |
停止した場合は、まずコネクタの背後にあるソース(レプリカ・バッチエクスポート)が止まっていないか確認します。どのコネクタが古いかは、連携マップの準備度ソースビューの古いラベルで分かります。
2026.10 再リリース 3 から、インストール env の DT_CONNECTOR_MAX_AGE(例:mes=2h,erp=1d、単位 s・m・h・d)でファミリー別の上限を変更できます。空欄なら上表のとおりです。コネクタの定期同期間隔もこの上限の半分に従います → コネクタ同期
グラフミラー — 正常に動いているか

| 番号 | 位置 | 役割 |
|---|---|---|
| ① | 画面ヘッダー | 更新。この画面は読み取り専用です |
| ② | サマリーカード | 前回投影の判定(正常・部分完了・失敗 …)・最終成功時刻・ミラーのオブジェクト数・投影された接続数 |
| ③ | 「最終実行」・「グラフプローブ」 | 左:終了時刻、実行回数・連続失敗・周期、ステップ別の結果(Platform 台帳・学習済みエッジ)。右:専用 Neo4j に到達できるかとラベル別ノード数 |
| ④ | 「ミラーに入っているもの」 | 項目(資産・タグ・階層・供給/依存・先行関係 …)ごとの出典(Platform 台帳・学習(insight))と件数 |
サービス内の定期ジョブが 10 分ごとに Platform 台帳(サイト・設備階層・タグ・設備関係)と時系列インサイトが学習した接続をミラーに読み込みます。初回は起動から 1 分後です。Platform の事象は別途継続的に読み込み、ミラーの事象参照は 180 日間保持します。
| 判定 | 意味 | 対処 |
|---|---|---|
| 正常 | 台帳と学習エッジの両方を読み込んだ | — |
| 部分完了 | 台帳は読み込み、学習エッジのみ読み込めなかった(前回のエッジが残っている) | 時系列インサイトが起動したばかりなら、次回の実行で解消します |
| 失敗 | 台帳を読み込めなかった — ミラーが台帳より古くなっていきます。管理コンソールホームのカードが黄色ランプに下がります | 「運用者による修正が必要です」と表示されたら設定・資格情報の問題です → ログ |
現場とチャットで使われる場面
デジタルスレッドはコパイロットにとってオプション連携です。コパイロットにはデジタルスレッド専用の画面・カード・メニューはなく(旧 /thread 画面、チャット開始画面の«今日の作業»カード、設備画面のタイムラインは新画面で廃止されました)、接続すると3つが増えるだけです。
| 増えるもの | 内容 |
|---|---|
| 質問が使うツール | 下記チャットツールの thread_ ツール |
| 自動化が選べるツール | 自動化を作成する際のツール一覧のデジタルスレッドグループと、この接続が必要なテンプレート → 自動化 |
| 提案の根拠とドラフト | 提案詳細の根拠、そして承認すると外部システムに作成されるドラフト(下記「安全装置」) → 提案 |
- デジタルスレッド専用の自動化テンプレートはツールがある場合のみ表示されます。 テンプレートギャラリー14件のうち納期リスク PO・品質異常トラッキング・図面改訂通知の3つは
thread_ツールに依存するため、そのツールがこのインストールに存在しないか、自動化を作成する人が使用できない場合はギャラリーに表示されません(«使用不可»としてグレー表示されるのではありません)。コネクタを接続し、下記チャットツールが有効になっていれば、その人のギャラリーに表示されます — 図面改訂通知はthread_today_workに加えて、既定で無効のバージョン状態ツール(thread_part_revision_statusまたはthread_work_readiness)のいずれかを有効にする必要があります。既に保存済みの自動化は、ギャラリーとは関係なくそのまま開いて動作します。 - 提案の根拠は右パネルで開きます。 提案詳細の根拠行(文書原文・図面・映像)を押すと、新しいタブではなく詳細の上にパネルがもう1枚重なって開き、パネルヘッダーの戻るを押すと見ていた詳細にスクロール位置そのままで戻ります。図面の根拠はパネルのプレビューから**ビューアで開く(新しいタブ)**へ進みます。
- 問い合わせの答えの根拠パネルは元システムをもう一度読みます。 接続グラフでノードを押すと、デジタルスレッドがその種類の正本コネクタの読み取りツールで その 1 件を今読んで 元システムの現在値 として表示し(保存しません、コネクタ 1 回につき 15 秒)、このオブジェクトの履歴 はミラーの事象を 30 日ずつ表示します(保持 180 日)。 そのコネクタがないかオフになっていれば «不明 — 接続は任意» と表示されるだけで、エラーではありません。元システムのリンクは 外部リンク テンプレートがあるときだけ付きます → デジタルスレッド — 答えの根拠
接続のないインストールでは、これらのツールが一覧に表示されないだけで、コパイロット画面に空欄も«未接続»の案内も出ません。現場ユーザーが何を尋ねればよいかはデジタルスレッド — 接続すると増えるものにあります。
設備タイムライン — 質問から
設備に起きたことは、質問で「この設備に最近何があった?」のように尋ねると thread_get_timeline がミラーの事象を時系列で返します — 設備状態・スケジュール、作業オーダー、KPI 確定、アラーム、インシデント、AI 提案・発見。何とつながっているかは thread_trace_links が答えます。
その設備がまだデジタルスレッドに存在しないと返された場合は、ミラー投影がまだその設備を読み込んでいないということです — 上記のグラフミラー画面で最終成功時刻を確認してください。
班長の作業準備度と準備度ソース
作業準備度は、今から1シフト(既定 12 時間、最大 48 時間)以内に開始する工程ごとに GO・AT_RISK・NO_GO・UNKNOWN を出し、ブロックされているものから順に返します。判定はデジタルスレッドが行い、質問と自動化はその値を伝えるだけです。質問では thread_today_work(既定で有効)の各行に準備度が載り、準備度だけを個別に尋ねる thread_work_readiness は既定で無効のため管理者が有効にする必要があります。
工程ごとに8項目を確認します — 先行工程・資材・工具・校正・要員・資格・許可・隔離・品質ブロック・設備保全・図面バージョン。項目ごとに読み取るコネクタファミリーが決まっており(MES・SCM・工具管理・ERP・安全・品質・保全・PLM)、その表は AI 管理コンソール — 準備度ソース にあります。
- 🔴 不明は GO ではありません。 ソースコネクタがないか応答しなかった項目は UNKNOWN であり、合格として数えません。
- MES コネクタがない場合は作業指示が分からないため判定全体を行いません(«MES なし — 判定しません»)。
- ソースデータが鮮度上限より古い場合は判定を停止します(«古いソース — 判定停止»)。
- 判定は報告のみです — 作業を払い出したり人員を再割当したりはしません。
運用者がすべきことはソースを接続することです。準備度の回答に UNKNOWN が多い場合は、連携マップの準備度ソースビューでなし(グレー)・古いの項目を探し、そのファミリーのコネクタを接続するかソースを復旧します。
準備度応答(GET /api/v1/readiness、GET /api/v1/readiness/{작업지시})には 2026.10 再リリース 3 から次が追加で載ります。
| 位置 | フィールド | 意味 |
|---|---|---|
| 項目ごと | reason_code・reason_params | 理由を機械が読めるコードと値で。コパイロットはこれをユーザー言語の文章に変換します(英語の reason は同じコードを展開したもの) |
| 応答ヘッダー | purchase_orders | ERP 購買オーダーを読んだ場合のみ — ERP 行から作成した不足行(derived_shortage_lines)、SCM と食い違った値(conflicts)、その際に置いた仮定(assumptions)。読まなかった場合は null |
| 応答ヘッダー | customer_orders_unknown_because | 顧客注文を読めなかった理由(ERP が erp_list_sales_orders を提供しないなど)。読めた場合は null |
| 工程ごと | customer_orders[] | その作業指示が履行する顧客注文行 — 納期・余裕日数・risk・余裕日数の根拠(slack_basis) |
図面バージョン項目
図面バージョンは、その工程が使う品番について次の2つを確認します。
- 設計変更 — PLM に配布された設計変更があり、旧バージョンの部品しか残っていなければ NO_GO。PLM コネクタがなければ UNKNOWN です。
- 作業場図面 — RAG にインデックスされた図面のバージョンが PLM の配布バージョンと異なれば NO_GO。この比較は下記の図面参照がミラーにある場合のみ行います。なければ検査が1つ抜けるだけで、項目の値は変わりません。
品番のバージョン状態(最新版・旧版・変更進行中・確認不可)は個別にも尋ねられます — チャットツール thread_part_revision_status、そして図面台帳のバージョンラベルがこれを使います。確認不可は«最新»ではありません。
今日の作業一覧 — 班長の1日
質問と自動化が使うツール thread_today_work がこの一覧を返します(旧バージョンでは班長のチャット開始画面「今日の作業」カードも同じ一覧を使っていました)。サービス API では GET /api/v1/today?date=YYYY-MM-DD です(日付はインストールのタイムゾーン PP_TZ での1日、空欄なら本日)。
- 行 = その日に計画されたオープンな工程(MES) + Platform で現在稼働中の工程。MES が«完了»としていても、Platform で稼働中なら載せます。
- 行のフィールド — 準備度(
readiness)、履行する顧客注文(customer_orders[]、余裕日数slack_days・risk)、待機中の資材 PO(materials[]— 到着予定・遅延日数)、作業場で使う図面(drawings[]— バージョンラベルcurrent・outdated・change_open・unknown)、Platform のオーダーと設備状態(platform)、注意事項(attention[])。 attentionの値はreadiness_no_go(準備度 NO_GO)・material_late(資材遅延)・outdated_drawing_on_file(旧版図面が紐づいている)・drawing_change_open(設計変更進行中)・customer_due_at_risk(顧客納期リスク)・platform_running_outside_plan(MES 計画外の工程が稼働中)です。- 並び順 — 余裕日数が逼迫しているものから、次に NO_GO・旧版図面・計画開始の順です。
- 🔴 読めなかったフィールドは
nullと<칸>_unknown_because(理由)です。空の一覧は«読んだ結果、存在しない»です — この2つを混同しないでください。 - Platform で稼働中の注文は、Platform 注文一覧(
/api/v5/order/query)の行の外部識別ペア(external_system+external_id)で MES 工程につなぎます — ペアのexternal_systemが MES コネクタ名と同じときだけつなぎ(例: デモ MES はdemo-mes、シミュレータはPLANTPULSE-SIM)、そのときexternal_idがそのまま MES 工程 id です。注文詳細は別途呼び出しません。ペアが空、またはシステム名が異なる注文はどの工程にも紐づきません。 - Platform のオーダー・設備状態は本日のみ読みます(他の日付なら
platform: null)。Platform API アドレス・トークン(DT_PLATFORM_API_URL・DT_PLATFORM_API_TOKEN)が空の場合もplatform_unknown_becauseに理由が載ります。 - エラー — 日付形式が誤っていれば 400「date must be YYYY-MM-DD: …」、登録簿やコネクタに到達できなければ 503
{종류}: {상세}。
チャットツール thread_today_work は同じ一覧を 16,000 文字以内に縮めて返し、コパイロットが回答の末尾に«今日の作業»表と«影響を受ける顧客 PO»表を付けます → デジタルスレッド — 接続すると増えるもの
図面参照 — RAG が読み込むもの
RAG の図面インデックス(DRAWING_INGEST_ENABLED、出荷時は既定で無効)が有効になっていると、RAG は図面をインデックスするたびに表題欄から読み取った図面番号・バージョン・品番・部品表品番・特性 ID をデジタルスレッドへ送ります。ミラーには«この図面バージョンがこの品番を説明する»という接続だけが作られ、寸法・材質といった値は載せません。 新しいバージョンが入ると旧バージョンの接続はクローズされます。
受け取る際、デジタルスレッドは PLM の BOM・設計変更と突き合わせ、部品表不一致・設計変更より遅れたバージョン・設計変更と異なるバージョンを判別して回答します。有効化の方法は環境設定、図面を見る画面は AI 管理コンソール — 図面台帳 にあります。
チャットツール
| ツール | 既定 | 役割 |
|---|---|---|
thread_get_timeline | 有効 | 1つのオブジェクトに起きたことを時系列で |
thread_trace_links | 有効 | オブジェクトが何とどうつながっているか、2つのオブジェクト間の経路 |
thread_today_work | 有効 | 班長の今日の作業一覧 — 工程ごとの準備度・顧客注文余裕日数・待機中の資材 PO・使用する図面バージョン(上記) |
thread_impact_range | 有効 | 遅れた PO・協力会社・設備・不良ロットがどこまで及ぶか — 作業指示・顧客注文・顧客(前方 = 遅延、後方 = 品質追跡)、過去の時点(as_of)のつながりも |
thread_interval_production | 有効 | 設備の異常・停止区間にその設備で流れた作業指示・ロット・シリアル番号と、そのロットが及ぶ顧客(最大 31 日) |
thread_explain_recovery | 有効 | 部品が遅れたときスケジュールがどれだけ後ろ倒しになるかとリカバリ案(what-if)。下記参照 |
thread_work_readiness | 有効 | 班長の作業準備度 — 工程ごとの GO・AT_RISK・NO_GO・UNKNOWN と項目別の理由 |
thread_part_revision_status | 有効 | 品番・バージョンが今使ってよいバージョンか(PLM 配布バージョン・設計変更と照合) |
thread_check_tooling | 有効 | 工具管理コネクタから — 校正期限切れまたは落下した計測器で測った測定、作業指示に投入された工具、不適合の原因候補となる摩耗工具 |
MCP ゲートウェイがこのサーバーを内蔵サーバーとして登録し、9つすべてを初回検出時に有効にした状態で取り込みます(2026.10 再リリース(2026-10-20) — それ以前はコパイロットが 4つだけ有効にしていました)。管理者が一度変更した値は上書きせず、デジタルスレッドに新しいツールが追加されると無効のまま入ります。有効・無効を切り替える場所は AI 管理コンソール › MCP ゲートウェイ › ツール です → MCP ゲートウェイ · MCP ツールマップ
today_work・work_readiness・part_revision_status・check_tooling はコネクタ登録簿が設定されている場合のみ、explain_recovery はリカバリ入力を読み取れる場所がある場合のみ一覧に表示されます。ここで有効・無効にした値は質問と自動化の両方に適用されます — 無効にしたツールは質問も自動化も使えません。コパイロット画面がデジタルスレッドを直接呼び出す箇所はありません。
thread_explain_recovery の数値はデジタルスレッドの最適化ソルバーが算出し、モデルはそれを伝えるだけです。有効なコネクタに応じて回答に含まれる内容が増えます。
| 有効なコネクタ | 回答に追加されるもの |
|---|---|
| PLM・QM | 設計変更・不適合1件ごとに、それがブロックした作業と、その1件がマイルストーンに加えた遅延。時刻・処理・効力が分からず数値を出せない場合は、数値なしでその理由を述べます |
SCM (mes-mcp/0.5 供給能力) | 遅れた部品ごとに協力会社の能力で前倒しで受け取れるかと、その際のマイルストーン遅延。能力が不明なら«影響のみ»を述べ、リカバリ数値は出しません |
ERP erp-mcp/0.2・MES mes-mcp/0.6 (製造 BOM) | 設計変更・不適合がブロックする範囲を、作業指示全体ではなくその品番を消費する工程に絞り込みます |
| スケジュール計画(APS) | 発行済み計画の工程スケジュールをリカバリ計算の基準として使います |
| 保全(CMMS)・安全(EHS) | 予防保全ウィンドウ・設備を停止させた故障修理、隔離を設備制約として読み込みます |
| 工具管理・倉庫(WMS) | 対象作業指示の工具準備状態、遅れた部品の在庫(利用可能・保有・引当・検査中) |
ERP erp-mcp/0.3 (購買オーダー・顧客注文) | SCM なしでも ERP 購買オーダーで遅れた資材を数えます。影響が及ぶ顧客注文行(customer_orders[] — 納期・余裕日数・リスク)と、ERP・SCM が食い違った PO 値(purchase_order_conflicts[])が載ります。顧客注文を読めない場合は customer_orders_unknown_because に理由が載ります |
存在しないコネクタは回答の«考慮していないこと»に記されます — モデルはそれを«分からない»と述べなければなりません。
このツールは出荷時に既定で有効です。リカバリ案が督促«ドラフト»を提案すると、質問の回答の下にアクションカード(«実行できるアクション»)が付きます(下記「安全装置」)。カードを出したくない場合は、AI 管理コンソール › MCP ゲートウェイ › ツール でこのツールを無効にします → MCP ゲートウェイ
安全装置
デジタルスレッドは外部システムに接続しますが、設備を制御したり確定記録を書き込んだりする経路はありません。
| 装置 | 内容 |
|---|---|
| 読み取りツール | クエリ時に呼び出し、返された値は保存しません。thread_ のチャットツールもすべて読み取り専用です |
| アクションツール(🔒) | 外部システムにドラフト・要求を作成するツールです。人の承認なしには呼び出されません — 承認者・承認時刻・理由・提案 ID・冪等キーがなければサービスが拒否します |
| 管理コンソール | アクションツールを呼び出しません(要求すると 403) |
| コパイロット提案詳細 | 承認してドラフト作成 — 権限«承認 — 提案カードドラフト»(既定グループでは管理者のみ)が必要で、理由が必須です。そのアクションを提供する有効なコネクタがある場合のみ可能です。結果はカードに「ドラフト作成済み」として残り、確定はそのシステム上で人が行います |
| チャットアクションカード (2026.10) | thread_explain_recovery の回答が督促ドラフトを提案した場合、または insight_list_findings の回答にオープンな故障リスク発見がある場合に付きます。承認して実行は理由が必須で、承認できる人が業務役割で定められています — SCM 督促ドラフトは工場長、MES 保全要求ドラフトは班長・保全・工場長、管理者は常に可能。質問した本人は自分のカードを承認できません(2名承認)。提案詳細の保全要求ドラフトは管理者のみが承認します(既定グループ基準)。保全要求カードは MES コネクタが mes_create_maintenance_request を提供する場合のみ表示されます。カードは会話の持ち主にのみ表示されます |
| 同一要求の繰り返し | 同じ冪等キーで再度来た場合、コネクタへ再送せず最初に作成したドラフトを返します |
外部システムコネクタはここ連携マップでのみ登録します。コパイロットの旧ツールサーバー(MCP)画面は 2026.10 再リリース(2026-10-20) で廃止され、そこに残っていた旧登録は
そのバージョンで削除されます。MCP ゲートウェイに外部サーバーとして接続しても、コネクタツール(mes_・erp_ …)は有効にできません。
旧バージョンでコパイロットに登録していたコネクタがあった場合は、エンドポイントとヘッダー名を控えておき、こちらで登録し直して認証値を再入力してください →
MCP ツールマップ
問題が発生したら
| 症状 | 原因と対処 |
|---|---|
| 連携マップに「コネクタ登録簿が使用できません: 503 … config_error」 | 登録簿ストレージ(PG)または暗号化キー(PI_DT_SECRET_KEY)が空です。ミラー画面はこれとは無関係に動作します |
| 「有効化」ができない | 適合性テストを実行していないか不合格、またはその後エンドポイント・資格情報・ツールが変更されています — 再テストします |
| 登録時に認証エラー | コネクタのトークンまたはヘッダー名が誤っています |
| 保存済み資格情報を復号できないというエラー | その値を封じたキーが現行キー・旧キー(PI_DT_SECRET_KEY_PREVIOUS)に存在しません。旧キーを旧キー欄に入れて再起動するか、資格情報を再入力します |
| グラフミラーの判定が「失敗」 | ステップ別の結果とサービスログを確認します — bin/logs.sh plantpulse-digital-thread-api |
| 同期したのに設備がミラーにないと表示される | コネクタが対応付けた設備 ID が Platform 台帳に存在しません。投影が実行されたか、コネクタの設備対応表が正しいかを確認します |
| フィールドバインディングを変更したがミラーが変わらない | 次の定期同期前です — サイドパネルの今すぐ同期を押します。DT_CONNECTOR_SYNC_ENABLED=false のインストールではこれだけが同期手段です |
| ソースから消えた接続がミラーで«オープン»のまま | 同期時に一覧が切り詰められクローズをスキップしました(黄色の行「収集が切り詰められました」、応答の prune_skipped) — 最後まで読み切る同期でクローズされます。切り詰めが続く場合はコネクタ側のページング・上限を確認します |
| ERP のバージョンを上げたら ERP コネクタが無効になった | 宣言バージョンが変わるとツール検出で無効になります — 適合性テスト → 有効化をやり直します |
| 今日の作業・リカバリ案の顧客注文が«不明» | ERP コネクタが erp-mcp/0.3 の erp_list_sales_orders を提供していないか無効です。理由は customer_orders_unknown_because にあります |
| コネクタの定期同期が動いているか分からない | デジタルスレッド /health の connector_sync — コネクタ別の最終結果と failing 一覧 |
リカバリ案・準備度が「古いソース」(stale_inputs)で停止する | いずれかのコネクタのデータが鮮度上限より古くなっています。準備度ソースビューの古いラベルで探し、そのコネクタの背後のソースが止まっていないか確認します |
リカバリ案が「MES で見つかりません」(unresolved_ids) | PLM・QM が指す番号が MES に別の番号で存在します — 同一性を宣言します |
| 準備度の回答が UNKNOWN だらけ | ソースコネクタが接続されていません — 準備度ソースビューでなしの項目のファミリーを接続します |
| チャットアクションカードが表示されない | 管理者が thread_explain_recovery を無効にしたか、回答にドラフトの材料(発注ライン・必要日)がないか、そのアクションを提供する有効なコネクタがありません |
関連文書
- AI 管理コンソール — デジタルスレッドレールと共通メニュー(ログ・API キー・設定)
- コパイロット管理コンソール — チャットツールの有効化・無効化
- デジタルスレッド — 接続すると増えるもの — 現場ユーザーが質問で尋ねる方法
- デジタルスレッドコネクタ — ファミリー別のツール・使用箇所・最小バージョン
- MCP ツールマップ —
thread_ツール - 環境設定 — 図面インデックススイッチ(
DRAWING_INGEST_ENABLED)、コネクタ同期・鮮度上限(DT_CONNECTOR_*・DT_LINK_HISTORY_DAYS) - ユーザー権限と業務役割 — アクションカードを承認できる人
- データベース管理 — 2つの Neo4j と
pi.dt