sn-research-planning
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseResearch Planning
Research Planning
产出 。它同时承担定界、报告形态约束和执行地图,用来指导 和最终 的生成;不是研究结论预设。
plan.jsonsub_reports/*.mdreport.mdProduce . It serves as a scoping tool, report form constraint, and execution map simultaneously, guiding the generation of and the final ; it is not a preset of research conclusions.
plan.jsonsub_reports/*.mdreport.md行为边界
Behavioral Boundaries
做:
- 从 识别研究目标、边界、受众、用途、时间/地域和假设。
request.md - 在需要时先做报告格式发现,再设计有依据的报告形态。
- 设计轻量报告形态:终稿章节、结构依据、必须产出的表格/图/比较项、写作约束。
- 把关键问题拆成可执行研究维度。
- 让每个维度都能独立落盘为一个子报告。
- 明确每个维度要回答什么、用什么方法、产出什么材料。
- 为每个维度指定搜索策略和充分性标准。
- 排出合理执行顺序和真实依赖。
不做:
- 不写研究结论。
- 不把终稿章节直接复制成研究维度。
- 不做单独的 、
briefing.md或blueprint.json。synthesis.md - 不做资料综述或事实展开。
- 不制造不必要的并行/依赖复杂度。
Do:
- Identify research goals, boundaries, audiences, purposes, time/region, and assumptions from .
request.md - Conduct report format discovery first when necessary, then design evidence-based report forms.
- Design lightweight report forms: final draft chapters, structural basis, mandatory tables/graphs/comparison items, and writing constraints.
- Break down key questions into executable research dimensions.
- Ensure each dimension can independently form a sub-report.
- Clarify what each dimension needs to answer, what methods to use, and what materials to produce.
- Specify search strategies and sufficiency criteria for each dimension.
- Arrange a reasonable execution sequence and real dependencies.
Don't:
- Do not write research conclusions.
- Do not directly copy final draft chapters as research dimensions.
- Do not create separate ,
briefing.md, orblueprint.json.synthesis.md - Do not conduct literature reviews or expand on facts.
- Do not create unnecessary parallel/dependency complexity.
输入
Input
{report_dir}/request.md
{report_dir}/request.md
规划流程
Planning Process
- 锁定目标:从 提取最终报告要服务的判断。
request.md - 界定范围:写清对象、时间、地域、受众/用途、排除项和执行假设。
- 判断是否需要格式发现:如果用户已明确给出报告结构,或报告类型非常标准且约束明显,可直接进入下一步;否则先做一次轻量格式发现。
- 发现报告格式:必要时读取 ,识别报告类型、可信结构来源、必备章节、强制元素和风格约束,再压缩进
sn-report-format-discovery。plan.json.report_shape - 设定报告形态:给出终稿章节建议、结构依据、必备元素、适合的表格/图和写作约束。
- 抽取问题:把关键问题分成基础事实、机制/原因、比较、影响、风险、趋势或建议类问题。
- 设计维度:按“可独立研究、可回答问题、可贡献终稿”的标准合并或拆分维度。
- 定义任务:为每个维度写清 、
key_questions、method、search_strategy和expected_output。depends_on - 定义搜索充分性:说明需要覆盖哪些来源类型、至少几轮检索、哪些关键问题必须交叉确认。
- 排序执行:先做定义、事实、背景和口径类维度,再做比较、解释、影响、判断类维度。
- 写完成标准:明确什么条件下可以从分维度研究进入终稿写作。
- Lock Targets: Extract the judgment that the final report needs to support from .
request.md - Define Scope: Clearly write down the objects, time, region, audience/purpose, exclusions, and execution assumptions.
- Determine if Format Discovery is Needed: If the user has clearly provided the report structure, or the report type is very standard with obvious constraints, proceed directly to the next step; otherwise, conduct a lightweight format discovery first.
- Discover Report Format: Read when necessary, identify the report type, credible structure sources, mandatory chapters, mandatory elements, and style constraints, then compress them into
sn-report-format-discovery.plan.json.report_shape - Set Report Form: Provide suggestions for final draft chapters, structural basis, mandatory elements, suitable tables/graphs, and writing constraints.
- Extract Questions: Categorize key questions into basic facts, mechanisms/causes, comparisons, impacts, risks, trends, or recommendations.
- Design Dimensions: Merge or split dimensions according to the standards of "independently researchable, answerable, and contributable to the final draft".
- Define Tasks: For each dimension, clearly write ,
key_questions,method,search_strategy, andexpected_output.depends_on - Define Search Sufficiency: Explain which source types need to be covered, at least how many rounds of retrieval, and which key questions must be cross-verified.
- Sort Execution: First conduct dimensions related to definition, facts, background, and caliber, then conduct dimensions related to comparison, explanation, impact, and judgment.
- Write Completion Criteria: Clarify the conditions under which one can move from dimension-specific research to final draft writing.
报告格式发现
Report Format Discovery
规划阶段不要求每次都单独研究格式,但在下列情况应主动做一次格式发现:
- 用户只说“做个研究报告”,没有给章节结构。
- 报告类型强依赖领域规范,如政策、法律、监管、学术/医学综述、尽调、技术选型。
- 目标读者或使用场景会显著影响结构,如对外汇报、投决支持、内部选型、监管沟通。
- 你不确定终稿应该优先呈现结论、时间线、比较矩阵、风险清单还是方法说明。
可以直接从 推断 、、、;若这些信息不足以稳健决定结构,再读取 。
request.mdgenredomainaudienceregionsn-report-format-discovery发现格式时只需要回答 4 件事:
- 这份报告最接近哪一类报告。
- 这类报告通常必须有哪些章节。
- 哪些非章节元素必须在终稿中出现,如对比表、时间线、风险矩阵、方法说明。
- 这些结构判断的依据是什么;如果没有找到高可信依据,回退逻辑是什么。
格式发现的结果要压缩进 ,用于约束后续维度设计;不要另写独立格式文件,除非调用方明确要求。
plan.json.report_shapeFormat discovery is not required every time during the planning phase, but should be proactively conducted in the following situations:
- The user only says "do a research report" without providing chapter structure.
- The report type strongly depends on domain specifications, such as policies, laws, regulations, academic/medical reviews, due diligence, and technical selection.
- The target audience or usage scenario significantly affects the structure, such as external reporting, investment decision support, internal selection, and regulatory communication.
- You are unsure whether the final draft should prioritize presenting conclusions, timelines, comparison matrices, risk lists, or method descriptions.
You can directly infer , , , from ; if this information is insufficient to robustly determine the structure, then read .
genredomainaudienceregionrequest.mdsn-report-format-discoveryWhen discovering the format, only need to answer 4 things:
- Which type of report does this report most closely resemble?
- What chapters must this type of report usually have?
- What non-chapter elements must appear in the final draft, such as comparison tables, timelines, risk matrices, and method descriptions?
- What is the basis for these structural judgments; if no highly credible basis is found, what is the fallback logic?
The results of format discovery should be compressed into to constrain subsequent dimension design; do not write an independent format file unless explicitly required by the caller.
plan.json.report_shape维度设计准则
Dimension Design Guidelines
一个好维度应同时满足:
- 能独立产出 。
sub_reports/{id}.md - 有 2-5 个具体 。
key_questions - 与其他维度边界清楚,重叠可解释。
- 对 有明确贡献。
report.md - 有明确搜索入口和停止条件。
- 不预设结论,只定义要查明什么。
普通研究控制在 3-5 个维度;复杂研究最多 8 个维度。维度过多时优先合并同类问题。
A good dimension should meet the following criteria simultaneously:
- Can independently produce .
sub_reports/{id}.md - Has 2-5 specific .
key_questions - Has clear boundaries with other dimensions, and overlaps are explainable.
- Has a clear contribution to .
report.md - Has clear search entry points and stop conditions.
- Does not preset conclusions, only defines what needs to be verified.
Control ordinary research to 3-5 dimensions; complex research can have up to 8 dimensions. When there are too many dimensions, prioritize merging similar questions.
输出
Output
写入 :
{report_dir}/plan.jsonjson
{
"research_goal": "一句话目标",
"scope": {
"objects": ["研究对象"],
"time_range": "时间范围",
"region": "地域范围",
"audience_or_use": "目标读者或用途",
"exclusions": ["明确不做什么"],
"assumptions": ["执行假设"]
},
"report_shape": {
"format_basis": [
{
"type": "standard_guideline | official_template | real_exemplar | domain_convention | fallback",
"name": "结构依据名称",
"credibility_reason": "为什么可信",
"what_extracted": "从中抽取了哪些结构约束"
}
],
"sections": ["终稿建议章节"],
"mandatory_elements": ["必须产出的表格、图、清单或比较项"],
"style": "写作口径和语气约束"
},
"completion_criteria": ["完成标准"],
"change_notes": [],
"dimensions": [
{
"id": "d1",
"name": "维度名称",
"description": "研究范围和边界",
"key_questions": ["必须回答的问题"],
"method": "检索、比较、案例分析、数据梳理、时序还原等",
"search_strategy": {
"source_types": ["应覆盖的来源类型"],
"seed_queries": ["起始检索词或检索方向"],
"freshness_requirement": "是否需要最新信息及时间范围",
"sufficiency": ["判断搜索足够的条件"]
},
"expected_output": "该维度子报告应提供给终稿写作的材料",
"depends_on": [],
"status": "pending"
}
],
"execution_order": ["d1", "d2"]
}Write to :
{report_dir}/plan.jsonjson
{
"research_goal": "One-sentence goal",
"scope": {
"objects": ["Research objects"],
"time_range": "Time range",
"region": "Geographical range",
"audience_or_use": "Target audience or purpose",
"exclusions": ["Explicitly excluded items"],
"assumptions": ["Execution assumptions"]
},
"report_shape": {
"format_basis": [
{
"type": "standard_guideline | official_template | real_exemplar | domain_convention | fallback",
"name": "Name of structural basis",
"credibility_reason": "Why it is credible",
"what_extracted": "What structural constraints were extracted from it"
}
],
"sections": ["Suggested chapters for final draft"],
"mandatory_elements": ["Mandatory tables, graphs, lists, or comparison items to produce"],
"style": "Writing caliber and tone constraints"
},
"completion_criteria": ["Completion criteria"],
"change_notes": [],
"dimensions": [
{
"id": "d1",
"name": "Dimension name",
"description": "Research scope and boundaries",
"key_questions": ["Questions that must be answered"],
"method": "Retrieval, comparison, case analysis, data sorting, timeline restoration, etc.",
"search_strategy": {
"source_types": ["Source types to cover"],
"seed_queries": ["Initial retrieval terms or directions"],
"freshness_requirement": "Whether latest information is needed and its time range",
"sufficiency": ["Conditions for judging sufficient search"]
},
"expected_output": "Materials that the sub-report of this dimension should provide for final draft writing",
"depends_on": [],
"status": "pending"
}
],
"execution_order": ["d1", "d2"]
}字段要求
Field Requirements
- :一句话说明整个研究要服务什么判断。
research_goal - :必须覆盖对象、时间、地域、受众/用途、排除项和当前假设;未知项显式写明。
scope - :说明报告结构依据来自哪里。若调用过
report_shape.format_basis,至少保留 1 个依据;若未调用,也要写明是“用户指定结构”或“通用领域惯例”。sn-report-format-discovery - :是终稿结构建议,不是研究维度。
report_shape.sections - :列出终稿必须支撑的比较表、时间线、风险清单、指标矩阵、流程图等。
report_shape.mandatory_elements - :说明报告语气、确定性表达和不确定性处理方式。
report_shape.style - :列出进入终稿写作前必须满足的条件。
completion_criteria - :初始为空数组;研究过程中如调整维度或执行顺序,把原因追加到这里,不单独写日志文件。
change_notes - :使用稳定短 ID,如
id、d1。d2 - :说明研究范围和不包含什么。
description - :写成可回答的问题,不写成标题。
key_questions - :说明该维度适合怎么研究。
method - :列出要覆盖的来源类型,如官方文件、监管公告、学术论文、行业报告、公司披露、产品文档、新闻报道、社区讨论等。
search_strategy.source_types - :给出 3-6 个起始检索方向,而不是只写一个关键词。
search_strategy.seed_queries - :说明是否必须查最新资料;涉及市场、政策、产品、公司、价格、法律、人物时必须要求最新核查。
search_strategy.freshness_requirement - :写清停止条件,如“每个关键问题至少有材料支撑”“核心事实来自两个独立来源”“没有新信息增量后停止”等。
search_strategy.sufficiency - :说明子报告要贡献事实、比较、框架、判断依据、风险清单或场景分析中的哪一种。
expected_output - :只写真实依赖;没有依赖则为空数组。
depends_on - :必须覆盖所有维度 ID,且依赖项出现在被依赖项之前。
execution_order
- : A one-sentence explanation of what judgment the entire research aims to support.
research_goal - : Must cover objects, time, region, audience/purpose, exclusions, and current assumptions; explicitly state unknown items.
scope - : Explain where the report structure basis comes from. If
report_shape.format_basiswas called, retain at least one basis; if not called, also state whether it is "user-specified structure" or "general domain convention".sn-report-format-discovery - : Suggestions for the final draft structure, not research dimensions.
report_shape.sections - : List comparison tables, timelines, risk lists, indicator matrices, flowcharts, etc., that the final draft must support.
report_shape.mandatory_elements - : Explain the report tone, expression of certainty, and handling of uncertainty.
report_shape.style - : List the conditions that must be met before proceeding to final draft writing.
completion_criteria - : Initially an empty array; if dimensions or execution sequences are adjusted during the research process, append the reasons here instead of writing a separate log file.
change_notes - : Use stable short IDs, such as
id,d1.d2 - : Explain the research scope and what is not included.
description - : Written as answerable questions, not titles.
key_questions - : Explain how this dimension should be researched.
method - : List source types to cover, such as official documents, regulatory announcements, academic papers, industry reports, company disclosures, product documents, news reports, community discussions, etc.
search_strategy.source_types - : Provide 3-6 initial retrieval directions, not just a single keyword.
search_strategy.seed_queries - : Explain whether the latest information must be checked; must require latest verification when involving markets, policies, products, companies, prices, laws, and people.
search_strategy.freshness_requirement - : Clearly write stop conditions, such as "each key question is supported by at least one material", "core facts come from two independent sources", "stop when there is no new information increment", etc.
search_strategy.sufficiency - : Explain whether the sub-report contributes facts, comparisons, frameworks, judgment basis, risk lists, or scenario analysis.
expected_output - : Only write real dependencies; leave as an empty array if there are no dependencies.
depends_on - : Must cover all dimension IDs, and dependencies appear before the dependent items.
execution_order
完成标准示例
Completion Criteria Examples
- 所有 至少被一个维度覆盖。
key_questions - 有明确结构依据,而不是拍脑袋列章节。
report_shape - 都有对应维度提供材料。
report_shape.mandatory_elements - 每个维度都能形成独立子报告。
- 每个维度都定义了搜索策略和停止条件。
- 关键不确定性有专门维度处理,或在相关维度中明确标注。
- All are covered by at least one dimension.
key_questions - has a clear structural basis, not arbitrarily listed chapters.
report_shape - All have corresponding dimensions to provide materials.
report_shape.mandatory_elements - Each dimension can form an independent sub-report.
- Each dimension defines a search strategy and stop conditions.
- Key uncertainties are handled by a dedicated dimension, or clearly marked in relevant dimensions.
常见失败
Common Failures
- 把报告章节当研究维度。
- 每个维度只有标题,没有可回答问题。
- 维度之间大量重叠。
- 没有为维度定义搜索入口,导致执行时浅搜。
- 执行顺序忽略依赖关系。
- 报告结构没有依据,只凭经验硬写章节。
- 忽略终稿必备元素。
- 在计划里提前写结论。
- Treating report chapters as research dimensions.
- Each dimension only has a title, no answerable questions.
- Significant overlap between dimensions.
- No search entry points defined for dimensions, leading to shallow searches during execution.
- Execution sequence ignores dependency relationships.
- Report structure has no basis, only chapters written based on experience.
- Ignoring mandatory elements of the final draft.
- Writing conclusions in advance in the plan.