Research Report

Weizhena/Deep-Research-skills/skills/research-codex-en/research-report

作者 Weizhena6ce38f60e3f8b22502c29873f96503a4e0c5addb无许可证收录于 2026年10月9日更新于 2026年10月9日

Summarize deep research results into markdown report, cover all fields, skip uncertain values.

AI 生成的概览

将深度研究的 JSON 结果汇总为带目录和分类详情的 Markdown 报告。

功能
该技能通过查找 outline.yaml 定位研究结果目录,读取主题和输出目录配置,并扫描 JSON 结果文件中的简短摘要字段。它会询问用户希望在目录中显示哪些字段,然后生成一个 Python 脚本,将 JSON 转换为 Markdown 报告。报告包含带锚点链接和所选摘要字段的目录,以及按字段类别组织的详细内容,并跳过标记为不确定的字段。
适用场景
适用于深度研究已产出 JSON 结果和 outline.yaml 之后,需要生成统一 Markdown 摘要报告的场景。也适合需要可导航目录和按类别组织详情的结果整理工作。
运行要求
需要工作目录中已有 outline.yaml、JSON 结果文件以及描述字段结构的 fields.yaml。需要 Python 运行环境来执行生成的 generate_report.py 脚本,并需要用户输入以选择要显示的摘要字段。该技能本身不附带脚本,而是生成脚本。

Research Report - Summary Report

Trigger

/research-report

Workflow

Step 1: Locate Results Directory

Find */outline.yaml in current working directory, read topic and output_dir config.

Step 2: Scan Optional Summary Fields

Read all JSON results, extract fields suitable for TOC display (numeric, short metrics), e.g.:

  • github_stars
  • google_scholar_cites
  • swe_bench_score
  • user_scale
  • valuation
  • release_date

Use request_user_input to ask user:

  • Which fields to display in TOC besides item name?
  • Provide dynamic options list (based on actual fields in JSON)

Step 3: Generate Python Conversion Script

Generate generate_report.py in {topic}/ directory, script requirements:

  • Read all JSON from output_dir
  • Read fields.yaml to get field structure
  • Cover all field values from each JSON
  • Skip fields with values containing [uncertain]
  • Skip fields listed in uncertain array
  • Generate markdown report format: Table of contents (with anchor links + user-selected summary fields) + Detailed content (by field category)
  • Save to {topic}/report.md

TOC Format Requirements:

  • Must include every item
  • Each item displays: number, name (anchor link), user-selected summary fields
  • Example: 1. [GitHub Copilot](#github-copilot) - Stars: 10k | Score: 85%
Script Technical Requirements (Must Follow)

1. JSON Structure Compatibility Support two JSON structures:

  • Flat structure: Fields directly at top level {"name": "xxx", "release_date": "xxx"}
  • Nested structure: Fields in category sub-dict {"basic_info": {"name": "xxx"}, "technical_features": {...}}

Field lookup order: Top level -> category mapping key -> Traverse all nested dicts

2. Category Multi-language Mapping fields.yaml category names and JSON keys can be any combination (CN-CN, CN-EN, EN-CN, EN-EN). Must establish bidirectional mapping:

python
CATEGORY_MAPPING = {    "Basic Info": ["basic_info", "Basic Info"],    "Technical Features": ["technical_features", "technical_characteristics", "Technical Features"],    "Performance Metrics": ["performance_metrics", "performance", "Performance Metrics"],    "Milestone Significance": ["milestone_significance", "milestones", "Milestone Significance"],    "Business Info": ["business_info", "commercial_info", "Business Info"],    "Competition & Ecosystem": ["competition_ecosystem", "competition", "Competition & Ecosystem"],    "History": ["history", "History"],    "Market Positioning": ["market_positioning", "market", "Market Positioning"],}

3. Complex Value Formatting

  • list of dicts (e.g., key_events, funding_history): Format each dict as one line, separate kv with |
  • Normal list: Short lists joined with comma, long lists displayed with line breaks
  • Nested dict: Recursive formatting, display with semicolon or line breaks
  • Long text strings (over 100 chars): Add line breaks <br> or use blockquote format for readability

4. Extra Fields Collection Collect fields that exist in JSON but not defined in fields.yaml, put in "Other Info" category. Note to filter:

  • Internal fields: _source_file, uncertain
  • Nested structure top-level keys: basic_info, technical_features etc.
  • uncertain array: Display each field name on separate line, don't compress into one line

5. Uncertain Value Skipping Skip conditions:

  • Field value contains [uncertain] string
  • Field name is in uncertain array
  • Field value is None or empty string

Step 4: Execute Script

Run python {topic}/generate_report.py

Output

  • {topic}/generate_report.py - Conversion script
  • {topic}/report.md - Summary report

来源与署名

来源:Weizhena/Deep-Research-skills位于skills/research-codex-en/research-report提交6ce38f6

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架