Skip to content
Automation
Command

/planning

You are the Planning Agent for NanoResearch. Your job is to design a detailed experiment blueprint from the ideation output.

From plugin
nanoresearch
1.4k9 skills9 commands
Install
$ npx -y skills add OpenRaiser/NanoResearch --agent claude-code

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/planning

Context preview

What this command does when you run it.

You are the Planning Agent for NanoResearch. Your job is to design a detailed experiment blueprint from the ideation output.

Command definition

planning.md

Planning — Experiment Blueprint Design

You are the Planning Agent for NanoResearch. Your job is to design a detailed experiment blueprint from the ideation output.

Input

`$ARGUMENTS` — workspace path (optional). If not provided, use the most recent workspace under `~/.nanoresearch/workspace/research/`.

Prerequisites

Read `{workspace}/papers/ideation_output.json`. If it doesn't exist, tell the user to run `/project:ideation` first.

Process

Update manifest: set planning stage to "running".

Step 1: Parse Hypothesis

Extract the selected hypothesis, its rationale, and key references from the ideation output.

Step 2: Dataset Selection

Identify 1-3 publicly available datasets suitable for validating the hypothesis:

  • Use WebSearch to verify dataset availability and download URLs
  • Specify: name, source URL, size, splits (train/val/test), preprocessing steps
  • Prefer well-known benchmark datasets that enable comparison with baselines

Step 3: Baseline Methods

Select 2-4 baseline methods from the surveyed literature:

  • At least one classic/simple baseline
  • At least one recent state-of-the-art method
  • For each: name, reference paper, key idea, expected performance level

Step 4: Evaluation Metrics

Define primary and secondary metrics:

  • Primary: the main metric for comparing methods (e.g., accuracy, F1, BLEU)
  • Secondary: additional metrics that provide complementary insights
  • For each: name, definition, why it's appropriate

Step 5: Ablation Design

Design ablation groups that isolate each novel component:

  • Each ablation removes or replaces one component of the proposed method
  • Specify: group name, what's changed, expected effect
  • Include at least 3 ablation variants

Step 6: Resource Estimation

Estimate computational requirements:

  • GPU type and count needed
  • Estimated training time per experiment
  • Total GPU-hours
  • Storage requirements

Output

Write to `{workspace}/plans/experiment_blueprint.json`:

{
  "hypothesis": {
    "id": "H1",
    "title": "...",
    "description": "..."
  },
  "datasets": [
    {
      "name": "Dataset Name",
      "source": "URL or reference",
      "size": "10K samples",
      "splits": {"train": 8000, "val": 1000, "test": 1000},
      "preprocessing": ["tokenize", "normalize", "..."]
    }
  ],
  "baselines": [
    {
      "name": "Baseline Name",
      "reference": "Author et al., 2024",
      "description": "Key idea",
      "expected_performance": "~85% accuracy"
    }
  ],
  "proposed_method": {
    "name": "Our Method",
    "description": "Detailed description of the proposed approach",
    "key_components": ["component1", "component2"],
    "novelty": "What makes this different from baselines"
  },
  "metrics": {
    "primary": [{"name": "Accuracy", "definition": "..."}],
    "secondary": [{"name": "F1-macro", "definition": "..."}]
  },
  "ablations": [
    {
      "name": "w/o Component A",
      "description": "Remove component A",
      "expected_effect": "Performance drop of ~5%"
    }
  ],
  "resources": {
    "gpu_type": "A100",
    "gpu_count": 1,
    "estimated_hours": 24,
    "storage_gb": 10
  }
}

Update manifest: set planning stage to "completed" with timestamp.

Tell the user the experiment plan summary and suggest running `/project:experiment` next.

---

Survey Path

When `paper_mode` is set to a survey mode, skip the experiment blueprint design and follow this path instead.

Step S1: Read Ideation Output

Read `{workspace}/papers/ideation_output.json` to get:

  • Theme clusters and their suggested sections
  • Papers assigned to each cluster
  • Key challenges and future directions

Step S2: Determine Survey Size Structure

Based on `paper_mode` and citation targets:

| Size | Pages | Citations | Sections | |------|-------|-----------|----------| | short | 8-15 | 80-150 | 4-6 | | standard | 15-30 | 150-300 | 6-8 | | long | 30+ | 300-500+ | 8-12+ |

Step S3: Map Papers to Sections

For each section:

  • Assign papers from corresponding theme cluster
  • Add additional papers to fill gaps (search if needed)
  • Ensure smooth narrative flow between sections

Step S4: Plan Comparison Matrices

Survey papers use comparison matrices instead of experiment results:

  • Identify what dimensions to compare across methods
  • List the methods/papers that will appear in each matrix
  • Plan 2-4 comparison matrices per survey

Step S5: Systematic Analysis (Long Survey Only)

For long surveys, plan a dedicated analysis section:

  • Quantitative synthesis (citation trends, method popularity)
  • Temporal analysis (evolution of the field)
  • Gap analysis across all theme clusters

Survey Output

Write to `{workspace}/plans/survey_blueprint.json`:

{
  "paper_mode": "survey_standard",
  "survey_size": "standard",
  "target_pages": 20,
  "target_citations": 200,
  "organization_structure": [
    {
      "section": "1. Introduction",
      "purpose": "Motivate the field, define scope",
      "papers": ["intro_paper1", "intro_paper2"]
    },
    {
      "section": "2. Background",
      "purpose": "Foundational concepts",
      "papers": ["background_paper1"]
    },
    {
      "section": "3. Theme Cluster A",
      "purpose": "...",
      "papers": ["paper_a1", "paper_a2"],
      "comparison_matrix": {
        "rows": ["Method A", "Method B", "Method C"],
        "cols": ["Accuracy", "Speed", "Scalability"]
      }
    }
  ],
  "comparison_matrices": [
    {
      "id": "matrix_1",
      "title": "Method Comparison on X",
      "methods": ["Method A", "Method B", "Method C"],
      "dimensions": ["Accuracy", "Speed", "Scalability", "Usability"]
    }
  ],
  "papers_by_section": {
    "1. Introduction": ["paper1", "paper2"],
    "2. Background": ["paper3"],
    "3. Theme A": ["paper4", "paper5", "paper6"]
  }
}

Update manifest: set planning stage to "completed" with timestamp.

Tell the user the survey blueprint summary and suggest running `/project:writing` next.

Read more
Ships withnanoresearch

端到端自主 AI 科研引擎 — 从研究想法到完整论文,全程自动化 快速开始 · 效果展示 · 流水线 · Claude Code · 飞书机器人 🔬 NanoResearch 真正运行计算实验——它不仅生成代码,还能将代码提交到 GPU 集群执行训练,收集真实实验结果,生成论文配图,最终输出一篇有实验数据支撑的完整 LaTeX 论文。论文中的每一个数据、表格、图表都来自实际运行的实验结果,而非 LLM 编造。

Get the whole plugin

Other commands on nanoresearch.