researchlisted
Install: claude install-skill ozzy-labs/opshub
# research — トピック横断調査を opshub の記憶層から組み立てる
opshub MCP server (`opshub mcp serve`、ADR-0022) の read 系 tool で、指定トピックに関する **横断調査** (semantic recall + full-text search + graph 拡張 + LLM 統合要約) を実行する。Phase 12 H2 で導入された info gathering 系 skill の 1 つ。
`find-document` skill が「特定の 1 ファイルを引く」(対象が明確、URL に飛びたい) のに対し、`research` は **トピック網羅** が目的で、関連 source 一覧・関連 entities・時系列の経緯まで含む包括的な像を返す。decision-rationale (特定 decision の根拠を掘る) よりも広く、external-brief (外向きの定型まとめ) よりも探索的。
## 何が起きるか (host 側の流れ)
1. ユーザーが「<X> について調べて」「<Y> の経緯」「<Z> に関するすべての情報」のように問い合わせる
2. 外部ホスト (Claude Code 等) が本 skill を発火させる
3. ホストが下記「呼び出し順」に従って opshub MCP read tool を順に呼ぶ
4. 戻り値 (JSON 文字列) を集約し、「sources 一覧 + 関連 entities + 経緯サマリ」をユーザー向けに要約して返す
opshub 単体では LLM 推論ループを持たない (ADR-0004 §(a) 形A)。最終要約は外部ホスト LLM が行うが、`brief` tool 経由で opshub 側 LLM backend に統合要約を委ねることも可能 (Step 4)。
## 呼び出し順 (MCP tool)
### Step 1: 意味検索で関連 entity を広く拾う (`recall.search`)
```text
tool: recall.search
input:
query: "<topic / 自由文>"
limit: 30
```
`recall.search` は ADR-0012 hybrid recall (本文 embedding + FTS5 + graph 補強)。意味的に近い entity (task / decision / source) を広めに返す。トピックの言い換え・略語にも追従する。
戻り値の `hits[]` 各行は `{entity_id, entity_type, source_type, title, snippet, score}`。後段で `entity_type` 別 (task / decision / source) にグルーピングする。
### Step 2: 本文全文検索で固有名詞 hit を補強 (`search` FTS5)
`recall.search` は意味検索なので、固有名詞 / 略語 / コード片など「字面が完全一致する hit」を取りこぼすことがある。Phase 12 H1 で MCP に露出された `search` (FTS5) で補強する:
```text
tool: search
input:
query: "<topic 文字列>"
limit: 30
```
`