| name | init-auto-research |
| description | Initialize a new autonomous research project. Guide the user through defining the research problem, constraints, and evaluation criteria. Produce config files and memory files for the auto-research loop.
|
| disable-model-invocation | true |
Init Auto-Research
This skill initializes a new autonomous research project through an interactive dialog with the user. It produces five files across two directories (config/ and memory/) that form the foundation for all subsequent research rounds.
This is an interactive skill — it asks the user questions, listens to their answers, and iterates until the outputs are right. Do not skip ahead or generate all files at once. Walk through each phase sequentially, confirming with the user before moving on.
Dialog Flow
Phase 1: Understand the Problem
Goal: Produce config/problem.md.
Start by asking the user to describe their research problem. Then ask follow-up questions to sharpen the problem statement. Good follow-ups include:
- "What would a successful answer look like? Can you give a concrete example?"
- "What's the scope — are we looking for a general theory, a specific mechanism, or a practical method?"
- "Is there existing work on this? What's unsatisfying about it?"
- "Who is the audience for this research?"
Keep asking until you can write a clear, specific problem statement. Then draft config/problem.md and show it to the user for confirmation. The file should contain:
# Research Problem
## Problem Statement
[1-3 paragraphs describing the core question]
## Success Criteria
[What would a good answer look like? How will we know we've made progress?]
## Scope
[What's in scope and what's explicitly out of scope]
## Background
[Brief context — what's known, what's been tried, why it matters]
Phase 2: Define Boundaries
Goal: Produce config/constraints.md.
Ask the user about constraints. Distinguish between hard constraints (absolute requirements) and soft preferences (nice-to-haves). Probe for:
- Methodological constraints (e.g., "must be analytically tractable", "no simulations")
- Resource constraints (e.g., time, compute, data availability)
- Stylistic preferences (e.g., "prefer elegance over generality")
- Domain boundaries (e.g., "stay within classical mechanics")
Draft and confirm with the user:
# Constraints
## Hard Constraints
- [constraint 1]
- [constraint 2]
## Soft Preferences
- [preference 1]
- [preference 2]
## Out of Scope
- [explicitly excluded topics or approaches]
Phase 3: Design Evaluation Criteria
Goal: Produce config/eval_rubric.md.
This is the most important phase. The evaluation rubric determines how proposals will be scored in every subsequent round. Work with the user to define concrete, scorable criteria.
The core principle: do not ask "is the proposal beautiful?" — instead ask "does the proposal avoid unnecessary complexity?" Turn vague aesthetic judgments into specific, assessable questions.
Guide the user through defining 4-6 evaluation dimensions. For each dimension, define:
- A clear name
- What it measures (1-2 sentences)
- Scoring guidelines (what earns a high vs. low score)
- Weight (points out of 100 total)
All weights must sum to 100.
# Evaluation Rubric
Total: 100 points
## [Dimension 1 Name] (XX points)
**Measures**: [what this dimension assesses]
- **High (>80%)**: [what excellence looks like]
- **Medium (40-80%)**: [what adequacy looks like]
- **Low (<40%)**: [what failure looks like]
## [Dimension 2 Name] (XX points)
...
Tips for good rubric design:
- Prefer falsifiable criteria over subjective ones
- Each dimension should be independent — avoid double-counting
- Include at least one dimension for novelty/insight and one for rigor/correctness
- If the user struggles to articulate criteria, suggest common research dimensions: correctness, novelty, depth, clarity, generalizability, elegance
Phase 4: Initialize Memory
Goal: Create memory/lessons.md and memory/directive.md.
This phase requires no user input. After completing Phases 1-3, create the memory directory and initialize both files automatically.
memory/lessons.md
Initialize with an empty template:
# Lessons Learned
## Dead Ends
(none yet)
## Validated Patterns
(none yet)
## Convergent Commitments
(none yet)
## Open Questions
(none yet)
## Meta-observations
(none yet)
memory/directive.md
Initialize with the default exploration strategy:
# Next Steps
## Strategy
EXPLORE
## Direction
Free exploration. No historical data yet — the Theorist should try multiple different angles of approach.
## Avoid
(no known dead ends yet)
## Priority
Build basic understanding of the problem and produce at least 2-3 diverse initial Proposals.
Phase 5: Install Skills
Goal: Copy the three loop skills into the project's .claude/skills/ directory.
This phase requires no user input. After completing Phases 1-4, copy the skill files from the Auto-Scientist install directory (~/.auto-research/skills/) into the project:
~/.auto-research/skills/theorist.md → .claude/skills/theorist/SKILL.md
~/.auto-research/skills/critic.md → .claude/skills/critic/SKILL.md
~/.auto-research/skills/synthesizer.md → .claude/skills/synthesizer/SKILL.md
Create the directories if they don't exist. Copy the files exactly as they are.
Completion
After creating all files, present a summary to the user:
Research project initialized. Created:
config/problem.md — Research problem definition
config/constraints.md — Hard constraints and soft preferences
config/eval_rubric.md — Evaluation rubric (100 points total)
memory/lessons.md — Lessons learned (empty template)
memory/directive.md — Initial directive (EXPLORE)
.claude/skills/theorist/SKILL.md — Theorist agent
.claude/skills/critic/SKILL.md — Critic agent
.claude/skills/synthesizer/SKILL.md — Synthesizer agent
You can now start the research loop.