Gathers and lists research resources (academic papers, patents, websites, business cases) for specified research domains. Works as the "resource collection" phase after domain mapping — takes clustering results, user keywords, or domain descriptions as input and produces structured resource lists per domain. Use this skill when the user wants to "collect papers for each area", "find patents in this domain", "gather resources for these topics", "list relevant papers and patents", "arXivで論文を集めて", "各領域のリソースを収集", "特許と論文のリストを作って", "この分野の文献を集めて", or any request to systematically find and list research materials across multiple domains. Also triggers when the user has clustering output and wants to proceed to resource collection, or when they provide keywords and want a literature/patent list.
Collects academic papers, patents, websites, and business cases for specified research domains and produces structured resource lists. This skill sits between domain mapping (research-clustering) and detailed reports (research-retrieval) in the research pipeline.
--auto)When $ARGUMENTS contains --auto, run the entire workflow non-interactively — skip ALL AskUserQuestion calls and use the following defaults:
| Parameter | Default Value |
|---|---|
| Resource Types | 学術論文 + 特許 |
| Time Range | 直近4年 |
| Collection Depth | 標準(各5〜10件) |
| Domain Selection | すべてのクラスタ |
| Next Action (Step 6) | 完了(自動終了) |
In --auto mode, the remaining text in $ARGUMENTS (after removing --auto) is used as the input (file path or keywords). For example: /research-gather --auto docs/research/clustering-result.md → input is the clustering result file.
If $ARGUMENTS does NOT contain --auto, proceed with the normal interactive workflow below.
research-clustering → research-gather → research-retrieval
(domain mapping) (resource lists) (paper deep-dive)
Determine the input type and extract domain information.
Supported input types:
For clustering output, detect it by looking for the characteristic structure: "Cluster Summary" table, "Cluster Details" sections with keywords and research strategy. Use the cluster names, keywords, and strategies as the basis for resource collection.
For user keywords/text, group related terms into tentative domains before proceeding. If the grouping is ambiguous, confirm with the user.
--automode: Skip this entire step. Use the default values from the Auto Mode table above.
Confirm research parameters via AskUserQuestion. Skip hearings for parameters already specified by the user in their request.
AskUserQuestion:
question: "どの種類のリソースを収集しますか?(複数選択可)"
header: "リソース種別"
multiSelect: true
options:
- label: "学術論文"
description: "arXiv、IEEE、ACM等の学術論文を検索"
- label: "特許"
description: "Google Patents、USPTO、J-PlatPat、Espacenet等から検索"
- label: "技術情報"
description: "技術ブログ、カンファレンス発表、OSSプロジェクト等"
- label: "ビジネス事例"
description: "企業導入事例、市場レポート、業界動向"
AskUserQuestion:
question: "対象期間を指定してください"
header: "対象期間"
multiSelect: false
options:
- label: "直近4年(推奨)"
description: "2022年〜現在の結果を対象"
- label: "直近2年"
description: "最新トレンドに絞る"
- label: "直近7年"
description: "より広い範囲をカバー"
- label: "カスタム"
description: "任意の期間を指定"
If "カスタム" is selected, ask a follow-up for the specific year range.
AskUserQuestion:
question: "各領域あたりの収集件数はどの程度にしますか?"
header: "収集件数"
multiSelect: false
options:
- label: "標準(各5〜10件)(推奨)"
description: "主要なリソースを網羅。バランスの良い量"
- label: "広範(各10〜20件)"
description: "できるだけ多くのリソースを収集。時間がかかる場合あり"
- label: "簡潔(各3〜5件)"
description: "代表的なリソースのみ。素早く概観を得たい場合"
If the input is from clustering and contains multiple clusters, ask which domains to investigate:
AskUserQuestion:
question: "どのクラスタのリソースを収集しますか?"
header: "対象クラスタ"
multiSelect: true
options:
(dynamically generated from cluster names — show up to 4; if more than 4 clusters, group or offer "すべて" as the first option)
For each target domain, search for resources in parallel using the Agent tool to spawn subagents.
Papers are searched with arXiv as the primary source because it provides open-access full text, stable URLs, and consistent metadata.
Search strategy:
site:arxiv.org "{domain keyword}" {year range} to find relevant papers. Also search for survey/review papers: site:arxiv.org "{domain keyword}" survey OR review."{domain keyword}" paper {year} on general web search.site:ieee.org or site:dl.acm.org.For each paper, collect:
arxiv.org/abs/ format)CRITICAL — Anti-hallucination rule for URLs:
WebSearch for site:arxiv.org "{exact paper title}" to obtain the real URL.Quality signals to prioritize:
Search across multiple patent databases to get broad coverage.
Search strategy:
site:patents.google.com "{domain keyword}" — provides international coverage with English abstractsFor each patent, collect:
CRITICAL — Anti-hallucination rule for URLs:
Prioritize:
Search for high-quality technical content.
Search targets:
For each resource, collect:
Search for enterprise adoption and market information.
Search targets:
For each case, collect:
After collection:
arxiv.org/abs/ format)For each paper with an arXiv URL:
arxiv.org/abs/XXXX.XXXXX)verifiedFor papers with non-arXiv URLs (IEEE, ACM, etc.):
For each patent:
For each resource:
After verification, log the results:
Important: It is better to have fewer verified entries than many unverified ones. Never include an entry in the output unless its URL has been verified. This prevents hallucinated or mismatched URL/title pairs from propagating to downstream tools (CSV lists, daily research pipeline).
If verification reduces the result set below the requested collection depth, run additional searches to find replacement resources, then verify those as well.
Generate a single Markdown file containing all collected resources in table format. Do not split into multiple files — everything goes into one file for easy scanning and downstream processing.
Output filename: resources-{topic-slug}.md
# {Research Theme} — リソース収集結果
## 収集パラメータ
- **対象リソース**: {学術論文 / 特許 / 技術情報 / ビジネス事例}
- **対象期間**: {YYYY – YYYY}
- **収集日**: {YYYY-MM-DD}
- **入力元**: {clustering結果 / ユーザーキーワード / ファイル}
## 収集サマリ
| 領域 | 論文 | 特許 | 技術情報 | 事例 | 合計 |
|------|------|------|----------|------|------|
| {domain 1} | {n} | {n} | {n} | {n} | {n} |
| {domain 2} | {n} | {n} | {n} | {n} | {n} |
| **合計** | **{n}** | **{n}** | **{n}** | **{n}** | **{n}** |
## URL検証結果
| 項目 | 件数 |
|------|------|
| 収集 | {total_collected} |
| 検証済み | {verified} |
| 不一致で除外 | {mismatched} |
| アクセス不可で除外 | {unreachable} |
{Below table includes only verified entries. All URLs have been confirmed via WebFetch.}
## 全体の傾向
{3–5 sentences: 収集結果から見える全体的な傾向、注目すべきポイント}
---
## 学術論文
{Include this section only if academic papers were requested. All domains are combined into one table, with a 領域 column to distinguish them.}
| # | 領域 | タイトル | 著者 | 年 | Venue | 概要 |
|---|------|---------|------|-----|-------|------|
| 1 | {domain} | [{title}]({url}) | {authors} | {year} | {venue} | {summary} |
| 2 | ... | ... | ... | ... | ... | ... |
---
## 特許
{Include this section only if patents were requested.}
| # | 領域 | タイトル | 番号 | 出願人 | 年 | 特許庁 | 概要 |
|---|------|---------|------|--------|-----|--------|------|
| 1 | {domain} | [{title}]({url}) | {patent_no} | {assignee} | {year} | {office} | {summary} |
---
## 技術情報
{Include this section only if technical resources were requested.}
| # | 領域 | タイトル | ソース | 年 | 種別 | 概要 |
|---|------|---------|--------|-----|------|------|
| 1 | {domain} | [{title}]({url}) | {source} | {year} | {type} | {description} |
---
## ビジネス事例
{Include this section only if business cases were requested.}
| # | 領域 | タイトル | 企業/組織 | 年 | 種別 | 概要 |
|---|------|---------|-----------|-----|------|------|
| 1 | {domain} | [{title}]({url}) | {company} | {year} | {type} | {summary} |
---
## 次のステップ
- **論文の詳細調査**: research-retrieval スキルでこのリストの論文を詳しく調査できます
- **追加の領域マッピング**: research-clustering スキルで関連領域をさらに探索できます
Table rules:
--automode: Skip this step entirely. Treat the result as "完了" and finish.
After output is complete, confirm via AskUserQuestion:
AskUserQuestion:
question: "リソース収集が完了しました。次のアクションを選択してください"
header: "次のアクション"
multiSelect: false
options:
- label: "完了"
description: "現在の出力内容で確定する"
- label: "特定の領域を追加収集"
description: "指定した領域でさらにリソースを追加検索する"
- label: "論文の詳細調査へ"
description: "収集した論文リストをresearch-retrievalスキルで詳しく調査する"
- label: "別のリソース種別を追加"
description: "特許やビジネス事例など、別の種別のリソースも収集する"
MUST READ FIRST: Before deciding the output path, read docs/research/README.md (the single source of truth for the research directory layout) and .claude/rules/research.md.
Identify the domain (<domain>, snake_case):
docs/research/runs/<domain>/clustering/..., use that <domain>.Identify the cluster (<cluster>):
metalearner / nl2sql-nl2code).all.If docs/research/domains/<domain>/domain.yaml defines output_paths.gather, use it.
Otherwise use the default path:
docs/research/runs/<domain>/gather/<YYYYMMDD>_<cluster>/
resources-<topic-slug>.md inside this directory.Never write directly under docs/research/domains/<domain>/resources/ — that layer is symlinks.
Never overwrite previous gather runs — append-only.
Update the latest pointer:
ln -snf <YYYYMMDD>_<cluster> docs/research/runs/<domain>/gather/latest_<cluster>
ln -snf ../../../runs/<domain>/gather/latest_<cluster> docs/research/domains/<domain>/resources/<cluster>
Use the Agent tool to spawn subagents for concurrent resource searches across domains and resource types. Each subagent handles one domain × one resource type combination. This significantly speeds up collection when dealing with multiple domains.