Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when a quest needs concrete hypotheses, limitation analysis, candidate directions, or a selected idea relative to the active baseline.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-15 | ✗→✓ | ▲ Improved | — | — |
| case-16 | ✗→✓ | ▲ Improved | — | — |
| case-07 | ✗→✓ | ▲ Improved | — | — |
| case-21 | ✗→✓ | ▲ Improved | — | — |
| case-05 | ✗→✓ | ▲ Improved | — | — |
Use this skill to turn the current baseline and problem frame into concrete, literature-grounded, testable directions.
When startup_contract.need_research_paper = false and the quest already has a concrete optimization handle, idea may stop after selecting or seeding a direction and then hand off into optimize instead of insisting on the full paper-oriented ideation loop. In that algorithm-first case, idea should usually produce a small method-brief frontier and then defer candidate ranking, promotion, and bounded search to optimize. When doing that handoff, prefer the brief-shaping discipline later used by optimize: clarify the bottleneck and constraints, keep only a small differentiated 2-3 option slate, and hand off a recommended brief rather than a pile of loose intuitions.
artifact.interact(kind='milestone', reply_mode='threaded', ...) report.The idea stage should not generate vague inspiration. It should produce executable hypotheses tied to:
This stage is not just "brainstorming". It is the research-direction selection stage. It still needs a bounded creative-divergence phase before convergence. Do not collapse onto the first plausible route just because it sounds implementable. It should normally create a new candidate direction branch and node; it does not by itself decide the next optimization round. The output must survive three checks at once:
When the route already looks likely to become a paper-facing line, seed one lightweight structured outline candidate during idea work. Use artifact.submit_paper_outline(mode='candidate', ...) for that seed instead of leaving the future paper structure only in prose. Use references/outline-seeding-example.md for the minimum acceptable shape. The idea-stage outline candidate is not the full paper line yet, but it should already name the likely research_questions, experimental_designs, and the first section-level evidence needs that later supplementary slices must satisfy. Keep that seed minimal and executable: a small section skeleton plus expected evidence items is better than a long narrative outline with no concrete evidence hooks. If the current research head, strongest measured branch, or active runtime refs are unclear after resume, call artifact.get_quest_state(detail='summary') and artifact.list_research_branches(...) before choosing a foundation. If the current brief / plan / status wording matters for direction choice, call artifact.read_quest_documents(...). If earlier user conversation materially changes the direction-selection target, call artifact.get_conversation_context(...) before locking the next idea.
Finishing one idea deliverable is not quest completion. After reporting a completed idea package, continue into the next justified stage unless a real blocking decision is still unresolved.
When the quest disables research-paper delivery, keep manuscript defensibility secondary to:
Before starting a genuinely new round, default to the current research head as the foundation. However, you may deliberately choose a different foundation when the durable evidence says it is better. When the best starting point is not obvious, inspect artifact.list_research_branches(...) first and compare:
If you do not use the default current head, record the reason explicitly in the new idea submission. Treat a newly accepted branch as one durable research round. If the active branch already has a durable main-experiment result and you are starting a genuinely new optimization round, prefer creating a child branch from the chosen foundation rather than revising the old branch in place.
At the direction level, prefer elegant algorithmic or theoretical improvements over brute-force cost-for-performance tradeoffs whenever possible.
This stage should preserve the strongest old DeepScientist direction-selection logic:
Use a compact search discipline during ideation:
incumbentfrontier, usually 2-3 serious alternatives and rarely more than 5 after one bounded widening passCandidate sets should usually cover some mix of:
Do not default to “run a small experiment and see” as the way to break ties. Break ties primarily through careful reasoning over:
5 and usually 5-10 task-modeling-related, mechanism-relevant, or otherwise directly usable papers.If the direct task-modeling neighborhood truly contains fewer than 5 usable papers, record that evidence explicitly and fill the remaining slots with the closest adjacent papers whose mechanism can be translated into the current task and codebase.
startup_contract.need_research_paper = false and a concrete optimization handle already exists, you may stop after a memory sweep plus a small targeted paper check instead of satisfying the full 5-10 paper flooroptimize, not paper-level novelty claims2-3 candidate slate, and explain why one brief is recommended nowartifacts/idea/literature_survey.md or an equivalent durable survey report before a direction is promoted.Prefer web search for paper discovery, usually targeting arXiv first, then expand with citation and open-web search for neighborhood coverage.
artifact.arxiv(paper_id=..., full_text=False).Keep search in web discovery; use artifact.arxiv(...) for reading shortlisted papers, and set full_text=True only when needed.
memory.search(...) and reuse existing paper notes, idea notes, and knowledge cards.Do not rerun the same broad search without stating what gap the new search is meant to close.
problem-first or solution-first.6-12 raw ideas before collapsing to a serious frontier that is usually 2-3 and at most 5.idea should usually produce direction families, not a large within-family variant swarm.optimize brief work unless the mechanism family itself is still unresolved.why now? or what changed?, not just what is the mechanism?research_questions, experimental_designs, and per-section evidence needs in the outline candidate.Before ideation, confirm:
If these are still unclear, route back to baseline or scout.
idea is the anchor skill for direction selection. However, when the quest still needs literature grounding or novelty checking, actively open scout as a companion skill before final idea selection.
In practice:
scout to expand the paper set, search adjacent methods, and clarify the baseline landscapeidea to convert that landscape into limitations, candidate directions, and a selected ideaDo not skip the scout pass just because the quest is already in the idea stage.
Use references/idea-thinking-flow.md when the main need is better reasoning hygiene. Use references/idea-generation-playbook.md when the main need is to create a new idea slate and select one clear next research object.
Default creation flow for a fresh idea pass:
2-3 competing hypothesesSet the frontier width with a validation-cost estimate before widening:
fast-check: the first objective validation loop is likely under about 20 minutesslow-check: the first objective validation loop is likely over about 20 minutes or otherwise expensive in compute, queue time, or human delayFor fast-check idea work:
optimize because validation is cheaper than overthinkingFor slow-check idea work:
1-3Do not start by shopping for modules to add. Do not let one attractive mechanism become the de facto framing before the limitation is pinned down. Do not let direction-family ideation collapse into within-family variant generation too early.
In normal idea work, stop at the direction-family level:
optimize when the quest is algorithm-firstIf the task still requires choosing among mechanism families, stay in idea. If the family is already chosen and the next need is branchless method-brief shaping, hand off to optimize.
Use:
memory.list_recent(...) and memory.search(...)artifact.arxiv(...)Do not rank ideas on style alone. Rank them on evidence, feasibility, and testability.
Before you choose a direction, perform a broad but bounded literature sweep.
The sweep must be grounded in actual retrieval, not recall alone. If durable quest memory already contains a recent and explicit survey, reuse it first and search externally only for the missing buckets, newer papers, or unresolved overlaps. For a normal selected-idea decision, the durable sweep must end with at least 5 and usually 5-10 papers that are close enough to the task-modeling problem, failure mode, mechanism, or codebase translation question to inform the actual design. This floor exists to prevent thin novelty claims and under-motivated ideas, not to reward quota chasing.
When tools allow it, combine:
memory.search(...) and recent memory readsartifact.arxiv(paper_id=..., full_text=False) for actually reading shortlisted papersThe sweep should cover at least these search angles:
When the direct neighborhood looks saturated or too incremental, extend the sweep to adjacent conceptual neighborhoods:
The point is principled translation, not superficial import. Borrow the core mechanism or mathematical idea only if you can explain why it should survive translation into the current codebase and metric contract.
For each promising idea, you must be able to answer:
The goal is not to cite everything on Earth. The goal is to avoid fake novelty and to identify a direction that has credible research value. However, do not stop the sweep early once the first plausible argument appears. Keep going until the strongest obvious overlaps are mapped and the 5-10 usable-paper floor is durably satisfied.
Recommended search outputs:
core papersclosest competitorsadjacent inspirationswatchlist / uncertain relevanceFor a more detailed search and triage method, read references/related-work-playbook.md.
If the search is still too thin to support a novelty or value judgment, the idea stage is not ready to end.
The idea stage should usually leave behind:
2-5 candidate ideas, with the final serious frontier usually narrowed to 2-3papers cards for the strongest papers or search clustersRecommended durable intermediate outputs:
When producing a fuller research-outline style note, prefer a direct-agent-like structure:
Executive SummaryCodebase AnalysisLimitations / BottlenecksKPIsResearch DirectionsRisks & MitigationsDo not force this structure for every tiny ideation turn, but use it when the quest needs a serious research-plan artifact.
Recommended durable files:
artifacts/idea/literature_survey.mdartifacts/idea/related_work.mdartifacts/idea/limitations.mdartifacts/idea/candidates.mdartifacts/idea/selected_idea.mdartifacts/idea/research_outline.mdWhen producing the literature survey report, prefer the structure in references/literature-survey-template.md.
When producing a full research-outline style note, prefer the detailed structure in references/research-outline-template.md.
When the runtime supports durable knowledge cards, also preserve:
Use the old PI discipline here too. Your analysis should be:
2-3 competing hypothesesDo not dump disconnected observations. Turn them into a direction argument.
For a more explicit end-to-end reasoning sequence, read references/idea-thinking-flow.md.
Use deliberate ideation lenses before convergence when the route is not already obvious from durable evidence. The point is not uncontrolled brainstorming. The point is to widen the search just enough to avoid premature convergence onto the first implementable idea.
This divergence protocol does not replace the main workflow below. It sits inside the main workflow after minimum grounding already exists from memory reuse, initial literature sweep, baseline reconstruction, and limitation analysis. If strong durable evidence already narrows the route to one obvious serious option, you may abbreviate the full widening pass, but you must record why a broader divergence pass was unnecessary.
First classify the current entry frame:
problem-first:solution-first:Then choose at least 2-4 ideation lenses that are actually relevant to the current bottleneck. Good default lenses include:
why now / what changed:During this divergent phase:
6-12 ideasFor each raw idea, capture at least:
why now / what changedOnly after this bounded widening step should you collapse into the shortlist that will be scored seriously.
Do not use every ideation lens on every quest. Pick the smallest set that breaks the current local optimum.
Recommended defaults:
why now / what changedproblem-first check plus stakeholder rotationwhy now audit and adjacent-possible checkThe goal is not to sound creative. The goal is to produce candidate mechanisms that are genuinely different in logic, evidence burden, or timing rationale.
Use this end-to-end pattern when the route is not already forced by durable evidence. Treat it as a subroutine inside the main workflow, not as a replacement for the main workflow order.
Goal:
Precondition:
Recommended sequence:
problem-first or solution-first2-4 ideation lenses6-12 raw ideas and keep a parking-lot list for coherent rejectsDuring divergence:
Goal:
2-3 candidates and at most 5Apply these filters:
why now test:If the shortlist is still homogeneous after convergence, return to Phase A with different lenses once.
Goal:
experimentBefore promotion, force the winner to answer:
Only then move into the normal selection gate and artifact.submit_idea(...) flow.
Watch for these predictable failures:
scoutwhat changed audit explicitlyUse these recovery moves early. Do not wait until the selection gate to discover the whole ideation pass was trapped in the wrong mode.
Before generating ideas, state:
InsightPerformanceCapabilityIf the metric, baseline value, or contribution frame is unclear, stop and clarify before ideation.
Before deep searching, write a compact plan for:
problem-first or solution-first, and why that framing is justifiedThe plan does not need to be long. It does need to make the search strategy explicit.
Before the open-web sweep, actively check what the quest already knows.
At minimum:
papers, ideas, decisions, and knowledgepapers, knowledge, and templates if the topic looks reusableartifacts/idea/literature_survey.md or equivalent survey report when it existsmemory.search(...) on:If the quest already has a strong survey and paper memory set, do not blindly repeat the whole search. Only search the open web for uncovered gaps, newer papers, or unclear overlaps. Every new external query should close one of these explicit gaps:
Search broadly enough to cover the strongest obvious competitors and neighboring methods.
Use the runner's search tooling actively. When available, use web search for discovery, often targeting arXiv first, then use citation or broader web search to expand the closest-neighbor cluster.
At minimum, inspect:
Keep a compact search ledger while you work. For each meaningful search query or paper cluster, record:
memory, arXiv, or open webDo not treat the search ledger as optional prose. It is the durable reason why the next idea pass should search only the remaining gaps instead of restarting broad discovery from zero.
For the shortlist of closest papers, record:
Search guidance:
2023-2027At the start of the sweep, classify the challenge type in one sentence, for example:
Then use that abstraction to widen the search. This prevents the stage from staying trapped in only same-keyword literature when the deeper mechanism may have better inspirations elsewhere.
Cross-domain exploration is allowed and encouraged when it sharpens the idea. Map the failure type to 2-3 adjacent domains when useful, such as:
Look for principles that can be translated into the current codebase, not copied blindly.
Do not stop at one or two papers if the area is active. Keep going until the strongest obvious overlaps are mapped.
Also compare against prior quest ideas and findings when they exist:
State clearly:
Also identify concrete code touchpoints:
For each serious baseline method, also rate improvement potential as:
HIGHMEDIUMLOWand justify the rating from:
List the most decision-relevant limitations, such as:
Do not confuse random inconveniences with true research limitations.
The limitations map should be concrete enough that each top limitation can support one falsifiable research question.
For each top limitation, also record:
2-4 concrete root-cause hypothesesWhere possible, express the baseline as a concrete optimization or algorithmic object rather than only prose.
For each serious line, state:
Also decompose the broader research problem into 3-5 sub-problems when useful, so later experiments can target them separately.
This step is important because it prevents superficial "just add module X" ideation.
Before ranking or narrowing, deliberately widen once unless strong durable evidence already makes one serious route obviously dominant. If you skip the full widening pass, record why.
6-12 raw ideas unless the search space is genuinely tiny3 distinct ideation lenses unless the route is already forced by evidence2 different lensesAt this stage, clarity matters more than polish. Each raw idea should at least answer:
why now / what changedDo not confuse this widening pass with final selection. Its purpose is to ensure the later shortlist contains genuinely different options rather than renamed variants.
After the bounded divergent pass, or after explicitly recording why it was unnecessary, derive exactly five actionable research directions whenever the space is not already tiny. Rank them from higher to lower expected return on investment.
For each direction, specify:
At the direction stage, these should remain exploration directions rather than full implementation plans. Favor directions that:
When possible, make the direction-generation step explicitly two-layered:
Then reduce to a compact 2-5 candidate set for actual selection. When operating in a tightly scoped idea assignment, prefer converging to one final idea rather than dumping many half-baked options.
When the search space is not tiny, try to preserve diversity in the final candidate set:
If all surviving candidates are minor variants of the same mechanism family, widen the search once before converging.
When the quest needs a stronger strategist-style ideation pass, prefer a two-layer direct-agent framing for each direction:
For each candidate idea, specify:
Treat each serious candidate as a compact decision package, not a slogan. For every candidate that survives initial triage, make sure you can state:
When possible, also specify:
Prefer ideas that can be tested in the current repo with minimal ambiguity. If a candidate requires a large refactor, call that out explicitly and propose a smaller variant.
Score each candidate along explicit axes:
why now credibilityAlso keep a compact strategist-style score lens when useful:
utility_scorequality_scoreexploration_scoreIf these are used, explain the scores in prose rather than treating them as magic numbers. Use them as a secondary decision lens, not as a substitute for evidence-backed reasoning.
Avoid "best sounding" choices. Prefer the best-explained choice.
If a candidate scores weakly on novelty but strongly on research value, label that explicitly instead of pretending it is novel.
Run the final candidate through the quality gate in references/selection-gate.md.
At minimum, explicitly score:
Before promotion, also require:
why now statement explaining what changed or why this is timely nowIf the total is below 7/10, do not promote the idea yet. Either refine once more or record a blocked / reject decision with the exact weakness.
The idea stage should end with one of:
experimentscoutBefore selecting, perform a narrative defensibility precheck:
If the direction is not defensible even in outline form, do not promote it just because it is implementable.
If multiple directions remain plausible and the choice is materially preference-sensitive, ask the user for a structured decision instead of pretending the tradeoff is objective.
If the real issue is that literature coverage is weak or novelty is uncertain, route back to scout rather than forcing an idea selection.
When the stage reaches a route-shaping outcome, notify the user through artifact.interact(...) deliberately:
milestone update when a selected idea package, a rejected-ideas summary, or a route back to scout is durably recordedreply_mode='blocking' for the user decision instead of pretending the choice is objectiveThe selected idea should be recorded in a form that the experiment stage can follow without drift. Use the handoff template in references/selection-gate.md.
At minimum, preserve:
why now statementReferences or Bibliography section in a standard citation formatThe selected idea draft must cite the survey papers that actually shaped the mechanism, motivation, novelty check, or claim boundary. Use one consistent standard citation format throughout the draft, such as numbered references or author-year style. Do not mention paper titles casually in prose without giving them a proper citation entry.
Good ideas should be:
Weak ideas often look like:
Use the novelty and value labels from references/selection-gate.md.
Do not force every good direction into the novel bucket. But do require every selected direction to land in either:
novel, orincremental but valuableIf it lands in not sufficiently differentiated, reject it or send it back for refinement.
The idea stage is primarily a planning and reasoning stage.
Stage-start requirement:
memory.list_recent(scope='quest', limit=5)memory.search(...) before broad new ideation or literature expansionStore reusable reasoning in memory, such as:
Do not let the only copy of the idea rationale live in chat.
Preferred memory usage:
papers:ideas:decisions:knowledge:knowledge:templates:Use tags to sharpen retrieval when helpful, for example:
stage:ideatype:related-worktype:literature-surveytype:novelty-checktype:selection-rationaletopic:<mechanism>When calling memory.write(...), pass tags as an array like ["stage:idea", "type:selection-rationale", "topic:<mechanism>"], not as one comma-joined string.
Recommended read timing:
memory.search(...) over the baseline, task, dataset, mechanism, and current idea labelsideas, experiment results, failure patterns, and decision notes in detailpapers, ideas, experiment lessons, and decisionsideas, decisions, and knowledgeStage-end requirement:
memory.write(...) before leaving the stagesearched_through: 2026-03When writing paper memory cards, include enough metadata to avoid redundant search later, such as:
new_this_pass, known_before, or watchlistAt the end of ideation, at least one part of the literature survey must be preserved in memory so a later idea pass can retrieve it directly instead of rebuilding the search from scratch.
Every serious idea pass should also leave a durable outcome split:
Do not leave the rejected and deferred reasoning only in chat.
Promote to global memory only when the lesson is reusable outside this quest.
Typical durable records:
Preferred artifact choices:
report for:idea for:decision for:approval when the user explicitly confirms a preference-sensitive choicemilestone when ideation hits a meaningful user-visible checkpointIf the idea is selected and becomes the active route, immediately call artifact.submit_idea(mode='create', lineage_intent='continue_line'|'branch_alternative', ...). Before that call, first finalize a concise but durable Markdown draft for the chosen route. Do not start writing that final draft until the literature survey has already met the hard minimum of at least 5 and usually 5-10 usable papers. That draft should usually cover:
problem-first or solution-firstReferences or Bibliography section that lists the survey-stage papers actually used by the idea in a standard citation formatUse the draft to think clearly first, then compress the accepted contract into the structured artifact.submit_idea(...) fields. When the MCP surface supports it, pass the final Markdown draft through draft_markdown so the branch records both idea.md and draft.md. Ensure the final draft carries appropriate citations for the closest prior work, direct inspirations, and any cross-domain papers that materially shaped the selected idea. Normal durable idea flow should create a new branch and a new canvas node every time an accepted idea package changes meaningfully, including documentation-only idea-package changes. Use lineage_intent='continue_line' when the new idea is a child of the current active branch. Use lineage_intent='branch_alternative' when the new idea should branch from the current branch's parent foundation as a sibling-like alternative. artifact.submit_idea(mode='revise', ...) is maintenance-only compatibility for the same branch and should not be the normal research-route mechanism. Do not prefer artifact.prepare_branch(...) for the normal idea-selection path.
Do not record a final selected-idea artifact without first recording a literature survey report.
If ideation stalls, record why:
Do not hide blocked ideation behind generic brainstorming text.
Exit the idea stage once one of the following is durably true:
experimentscoutDo not exit this stage with a "selected idea" if:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-15 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-22 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 17 counted toward the lift figure. The other 5 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +55 percentage points is the difference between those two pass rates over the 17 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
Other measured skills in the registry, with their headline benchmark lift.