Imported from huangfu170/cross-domain-deep-research (
discover-cross-domain-opportunities-zh/SKILL.md). Install upstream withnpx skills add huangfu170/cross-domain-deep-research --skill discover-cross-domain-opportunities-zh. Copyright stays with the author.
跨领域研究机会发现
目标与硬原则
执行完整研究闭环,而不是生成泛泛点子:
- 从论文、benchmark 和失败分析中确认问题。
- 先建立同任务方法版图,再寻找跨领域迁移机制。
- 将候选方法冻结为可检索的方法指纹和贡献原子。
- 主动寻找能够否定候选新颖性的最近邻工作。
- 只有通过检索覆盖门禁、对抗性审查和可行性审查的候选才能进入推荐列表。
遵守以下硬原则:
- 将“未检索到”视为有限覆盖下的结果,不视为不存在的证明。
- 分离 proposer pass(生成候选)与 falsifier pass(证伪候选);不得用支持候选的搜索代替最近邻检索。
- 不得仅以目标 benchmark、最终方法名或完整模块组合检索。必须检索无 benchmark 的抽象机制、贡献原子和核心原子组合。
- 不得把固定查询数量当成覆盖完成。只有查询族、贡献原子、同任务 anchor 和 citation neighborhood 均覆盖后,才能声称剩余新颖性。
- 不得把换数据集、换 backbone、换 prompt、增加常规模块或简单系统拼接判为实质创新。
- 最终推荐项必须同时满足
application_status: residual_novelty、review_verdict: go、top_conference_bar: medium/strong和approved_for_report: true。
资源读取与脚本
将包含本 SKILL.md 的目录记为 {skill_dir}。所有 bundled reference 和 script 都从 {skill_dir} 解析,不要假设当前工作目录就是 skill 目录。
按需读取,不要把所有 reference 一次性放入上下文:
- 创建或修改运行产物前,完整读取 references/artifact-schemas.md。
- 进入阶段 3B 前,完整读取 references/query-families.md。
- 进入阶段 3C 和阶段 4 前,完整读取 references/novelty-review.md。
- 正常研究运行不得读取 references/novelty-regression-cases.yaml。仅在开发、修改或 forward-test 本 skill 时读取,避免把预期论文泄漏给正常检索。
- 用
validate_json.py做字段覆盖检查;它不是 novelty 门禁。 - 用
scripts/build_novelty_queries.py生成方法指纹 hash 和查询覆盖计划。 - 用
scripts/check_method_cache.py判断旧 novelty audit 是否仍可复用。 - 用
scripts/validate_novelty_audit.py做 novelty 语义门禁。最终推荐项必须使用--require-reportable再验证一次。
总体工作流
按以下顺序执行:
阶段 0 运行元数据与缓存
→ 阶段 1 同任务方法版图
→ 阶段 2 有证据的问题缺口
→ 阶段 3A 跨领域候选生成
→ 阶段 3B 候选冻结与贡献原子化
→ 阶段 3C 对抗性最近邻检索
→ 阶段 4 应用、可行性与顶会创新性审核
→ 阶段 3A/3B/3C 修订闭环
→ 阶段 5 报告与 claim audit
阶段 3C 未完成前,不要展开昂贵的完整实验设计。阶段 4 返回 revise 后,只要候选的核心机制、任务形式、学习目标或贡献句发生变化,就必须生成新 fingerprint 并重新执行阶段 3C。
阶段 0:初始化运行元数据与缓存
获取当前年月,并记录为 {current_year_month}:
- PowerShell:
Get-Date -Format "yyyy-MM" - POSIX:
date +%Y-%m
初始化:
{target_domain}/outline.yaml
{target_domain}/fields.yaml
{target_domain}/run_manifest.yaml
{target_domain}/results/search_log.jsonl
{target_domain}/results/claim_audit.json
{target_domain}/results/transfer_candidates/
{target_domain}/results/novelty_audits/
在 run_manifest.yaml 中分别跟踪 phase1_landscape、phase2_gap_extraction、phase3a_transfer、phase3b_fingerprint、phase3c_novelty、phase4_review 和 phase5_report。
设置:
resume_policy:
skip_existing_json: true
refresh_after_days: 30
fingerprint_bound: true
query_policy_version: "2"
仅当以下项目全部一致时复用 novelty 结果:
method_fingerprint_hash;query_policy_version;- 目标任务和检索范围;
search_cutoff_date未过期。
任一项变化时使缓存失效。不得仅凭文件名存在跳过查新。
已有候选和缓存时运行:
python "{skill_dir}/scripts/check_method_cache.py" --current <candidate.json> --cached <cached-candidate.json> --max-age-days 30
只有脚本输出 CACHE_VALID 时才能复用。
准备迁移模式库:
- 优先使用用户指定路径,否则使用仓库根目录
transfer-patterns.yaml。 - 只读取
# @pattern id=<id> keywords=<keywords>索引行。 - 阶段 2 选中 pattern 后再读取对应 YAML 块;不要全文加载模式库。
- 模式库缺失时继续任务,并记录
missing。
每次检索都写入 search_log.jsonl,至少记录时间、阶段、RQ、query、query family、命中的 claim atom、top results、使用目的、决定和原因。
阶段 1:先建立同任务方法版图
在跨领域迁移前,先检索目标任务本身。覆盖:
- survey、review、taxonomy、roadmap;
- benchmark、dataset、challenge、leaderboard;
- limitation、failure、negative result、robustness、OOD;
- 主流方法族、经典 anchor、近年代表方法;
- 相邻任务和不同术语下的同构问题;
- 代码、官方 benchmark 页面和数据说明。
优先使用论文原文、官方 benchmark 和作者代码等一手来源。记录至少两个同任务 anchor;若确实不足,标记 insufficient_search_coverage,不得用跨领域论文补足同任务 anchor 数量。
按搜索环扩展:
- R0:用户给定术语;
- R1:核心论文、survey、benchmark;
- R2:R1 的参考文献、被引工作、related work 和同作者后续工作;
- R3:相邻任务;
- R4:抽象机制对应的外部领域;
- R5:代码、数据、工具、工业系统。
阶段 1 的产物必须包含 approach_families、same_task_anchors、terminology_map 和 known_failure_modes。后续 novelty search 必须复用这些字段。
阶段 2:抽取有证据的问题缺口
仅保留有论文或 benchmark 证据的问题:
- 多个独立来源重复出现的问题优先。
- 只有单篇来源时标记
weak_evidence。 - 区分作者明确提出的 limitation 与 agent 推断。
- 缺少关键证据时使用
[uncertain],不得包装成 confirmed problem。
对每个 gap:
- 记录问题、已有尝试、失败模式、评测缺口和为什么仍未解决。
- 从这些字段中提取 5–12 个检索关键词。
- 用
scripts/select_patterns.py或索引搜索选择最多 5 个迁移 pattern。 - 记录 pattern 的命中关键词和选择理由。
- 用
validate_json.py检查字段覆盖;不要据此判断新颖性。
阶段 3A:生成跨领域候选
对每个 gap:
- 构造
surface_problem、abstract_problem、mechanism_keywords和source_domain_seeds。 - 读取选中的 pattern 块,用
transfer、use_when和queries扩展源领域。 - 搜索外部方法及其有效性证据;不要把 pattern 匹配本身当成创新点。
- 生成候选机制骨架,说明预测对象、信息流、训练信号和拟修改的目标组件。
- 写出一句可证伪的
claimed_contribution,然后进入阶段 3B。此时不要先写完整论文故事。
若候选来自上一轮 revise,必须针对最近邻重合、贡献不清或不可验证等具体原因修改机制;只改名字或表述视为同一候选。
阶段 3B:冻结方法指纹与贡献原子
按照 artifact schema 写出:
method_name、target_domain、target_task、target_benchmark;adjacent_tasks;claimed_contribution;method_fingerprint;claim_atoms。
method_fingerprint 至少包含:
task_scope;prediction_units或输出对象;architecture和信息流;learning_objectives;structural_constraints;supervision;claimed_delta。
将贡献拆成原子。删除某原子会使主贡献不成立时,将其标为 core: true。每个核心原子至少给出一个术语同义表达。
运行:
python "{skill_dir}/scripts/build_novelty_queries.py" --candidate <candidate.json> --output <query-plan.json>
把脚本生成的 method_fingerprint_hash、query_policy_version 和 queries 写入 novelty audit。候选修订后重新运行;hash 变化时废弃旧 audit。
阶段 3C:执行对抗性最近邻检索
将搜索目标设为:“哪篇论文会让审稿人认为这个候选已经做过或只是增量?”
严格执行:
- 完成 query plan 中所有 required query families。
- 每个核心原子至少出现在 2 个已执行查询中,且跨至少 2 个 query family。
- 至少执行一个完全不含目标 benchmark 和最终方法名的机制查询。
- 检索同任务、相邻任务和跨领域结构等价方法。
- 对至少两个最接近的同任务 anchor 做一跳 backward/forward citation snowball;同时检查 related work 和作者后续工作。
- 阅读最接近论文的原文方法部分,不得只依据搜索摘要判定 overlap。
- 选出 2–5 篇最近邻工作,按
exact、structural、component、adjacent或none分级。 - 建立 paper × claim atom overlap matrix,并为每个覆盖判断记录论文位置或证据摘要。
- 单独写
adversarial_review.rejection_case;先陈述最强反对意见,再决定 verdict。 - 运行语义验证:
python "{skill_dir}/scripts/validate_novelty_audit.py" --candidate <candidate-with-audit.json>
应用状态:
already_applied:同任务中已有 exact prior。structural_equivalent:核心预测对象、拓扑或学习目标已被结构等价方法覆盖。component_collision:一个或多个核心组件已有先例,但仍可能存在实质组合或机制差异。residual_novelty:覆盖门禁完成,未发现 exact/structural equivalent,最近邻剩余差异属于实质机制、问题形式、学习目标、监督或评测协议。insufficient_search_coverage:无法完成查询、anchor、citation 或原文证据覆盖。
already_applied 和 structural_equivalent 可以凭直接原文证据提前排除,但必须记录来源。component_collision 必须回到阶段 3B 收缩贡献或解释非平凡交互。insufficient_search_coverage 不得进入推荐列表。
阶段 4:应用、可行性与顶会创新性审核
仅为 residual_novelty 候选展开完整方案:
- 目标组件、机制映射、实现步骤、所需信号或数据;
- 要修改的强 baseline;
- 可验证研究假设和最小实验;
- 成功指标、关键消融、泛化与失败分析;
- 工程、数据和评估难度;
- 风险与 fallback。
执行 novelty reviewer 与 feasibility reviewer 两个逻辑独立的 pass。deep 或 exhaustive 且运行环境允许时,可把 falsifier pass 交给独立子 agent;只传候选 artifact 和来源,不传 proposer 的新颖性结论。否则由同一 agent 在独立小节完成。
顶会审核必须:
- 列出 2–5 篇最近邻 prior work;
- 说明每篇论文覆盖哪些 claim atoms;
- 明确最近论文的
remaining_delta和residual_delta_type; - 给出一句论文主贡献;
- 判断差异是否具有非平凡性、通用性和可验证性。
verdict:
go:coverage gate 完成,最小实验可信,且top_conference_bar至少为medium。revise:存在 component collision、贡献不清、最近邻差异过小或实验不能验证核心机制;返回阶段 3B,必要时返回阶段 3A。hold:关键依赖不可获得、只能形成常规工程集成,或三轮修订仍不能形成可信 residual novelty。
仅 go 可设置 approved_for_report: true。设置后必须运行:
python "{skill_dir}/scripts/validate_novelty_audit.py" --candidate <candidate-with-audit.json> --require-reportable
验证失败时取消批准并返回对应阶段,不得人工绕过。
阶段 5:生成报告与 claim audit
仅报告 approved_for_report: true 的机会。其他状态只能进入“风险、反例与排除项”,并说明排除原因。
为关键 claim 建立 claim_audit.json,覆盖:
- 问题是否真实存在;
- 迁移方法为何相关;
- novelty coverage 是否充分;
- 最近邻差异;
- 可行性与顶会判断;
- 风险与不确定性。
每个 claim 都要能追溯到 search_log.jsonl。support_type: inferred、confidence: low 或 unsupported_risk: high 的 claim 不得作为推荐项核心论据。
报告第一次出现方法、数据集、benchmark、模型和指标名称时,使用 English term(中文释义)。报告至少包含:
- 领域现状与同任务方法版图;
- 有论文证据的问题缺口;
- 跨领域候选及迁移机制;
- 方法指纹与贡献原子;
- 查询覆盖、citation neighborhood 和遗漏风险;
- 最近邻 overlap matrix;
- 排除、修订与保留候选;
- 最小实验与顶会创新性审核;
- 排序后的 3–5 个研究假设;
- 参考文献。
搜索深度与停止条件
默认使用 deep:
light:只用于用户明确要求快速扫描;结果默认不得宣称 residual novelty。standard:完成同任务版图和主要 query families。deep:完成全部覆盖门禁、一跳 citation snowball、相邻任务和原文核验。exhaustive:增加专利、工业报告、更深 citation graph 和更多机制同义表达。
停止条件必须基于覆盖,而不是“连续若干结果没有新论文”:
- 发现 exact 或 structural equivalent:记录证据并提前排除。
- 所有核心原子、required query families、同任务 anchors 和 citation neighborhood 已覆盖,且新检索不再改变最近邻排序:允许结束 novelty search。
- 来源不可访问或同任务 anchor 不足:标记
insufficient_search_coverage。 - 找不到可信 baseline、数据或指标:在阶段 4 标记
hold。
不要用未通过门禁的候选凑够 3–5 个推荐项;可信候选不足时如实报告。