feat(skills): add autoresearch skill for autonomous research orchestration

Add a new research skill that enables continuous, self-directed research
with a two-loop architecture:

- Inner loop: Rapid experiment iteration with measurable outcomes
- Outer loop: Periodic synthesis, pattern discovery, and direction setting

Features:
- Research workspace templates (state, findings, log)
- Example project (LoRA rank study)
- Configuration options for loop intervals and auto-commit
- Integration with existing research skills (arxiv, paper-writing)

Updated research/DESCRIPTION.md to include autoresearch in the skill overview.
This commit is contained in:
Howard Li 2026-04-11 12:28:41 -07:00
parent 939d2b37d1
commit 762b582704
5 changed files with 482 additions and 1 deletions

View file

@ -0,0 +1,93 @@
# Findings: {{PROJECT_NAME}}
**Research Question:** {{RESEARCH_QUESTION}}
**Last Updated:** {{LAST_UPDATED}}
---
## Current Understanding
### What We Know So Far
[Summarize the current state of knowledge. 2-4 paragraphs.]
### Key Patterns and Insights
| Pattern | Evidence | Confidence |
|---------|----------|------------|
| [Pattern 1] | [Which experiments support this] | High/Medium/Low |
| [Pattern 2] | [Which experiments support this] | High/Medium/Low |
### Mechanistic Understanding
[If applicable: What mechanisms explain the results?]
---
## Lessons and Constraints
### What Works
- [Specific finding with context]
- [Another finding]
### What Doesn't Work
- [Failed approach and why]
- [Constraint discovered]
### Critical Parameters
| Parameter | Sweet Spot | Why |
|-----------|------------|-----|
| [Param 1] | [Value/range] | [Explanation] |
---
## Open Questions
### High Priority
1. [Question that would change the story if answered]
2. [Another critical question]
### Medium Priority
1. [Nice to know but not blocking]
### Answered
1. ~~[Question]~~ → Answer: [Brief answer with evidence]
---
## Narrative Arc
[For paper writing: What's the story? What would the abstract say?]
### Contribution Sketch
[1-2 sentences on what this research contributes]
### Implications
[Who cares? Why does this matter?]
---
## Next Steps
### Immediate (Next 1-3 Experiments)
- [ ] [Specific experiment]
- [ ] [Another experiment]
### Medium Term
- [ ] [Broader direction]
### If Current Direction Fails
- [Pivot option 1]
- [Pivot option 2]

View file

@ -0,0 +1,90 @@
# Research Log: {{PROJECT_NAME}}
**Research Question:** {{RESEARCH_QUESTION}}
---
## Bootstrap Phase
### {{DATE}} — Project Initialization
- **Action:** Created workspace, initialized state files
- **Research Question:** {{RESEARCH_QUESTION}}
- **Initial Thoughts:** [What makes this interesting?]
### {{DATE}} — Literature Search
- **Sources:** arxiv, semantic scholar, web search
- **Key Papers:**
- [Paper 1] — [Key finding relevant to question]
- [Paper 2] — [Key finding]
- **Gap Identified:** [What's missing in existing work?]
### {{DATE}} — Hypothesis Formation
- **H001:** [Description] → Prediction: [Specific prediction]
- **H002:** [Description] → Prediction: [Specific prediction]
- **H003:** [Description] → Prediction: [Specific prediction]
---
## Inner Loop Log
### {{DATE}} — Experiment H001
- **Hypothesis:** H001
- **Protocol:** [What was changed, what was predicted]
- **Git Commit:** `research(protocol): H001 — [description]`
- **Status:** [Running/Completed/Failed]
- **Results:**
- Metric: [Value]
- Baseline: [Value]
- Delta: [+/-X]
- **Interpretation:** [What this means]
- **Next Action:** [Continue/Adjust/Pivot]
### {{DATE}} — Experiment H002
[Same format...]
---
## Outer Loop Log
### {{DATE}} — Reflection #1 (After {{N}} experiments)
- **Experiments Reviewed:** H001-H00N
- **Patterns Observed:**
- [Pattern 1]
- [Pattern 2]
- **Updated Understanding:** [New insights]
- **Direction Decision:** [DEEPEN/BROADEN/PIVOT/CONCLUDE]
- **Rationale:** [Why this direction?]
- **New Hypotheses:**
- H00N+1: [Description]
- H00N+2: [Description]
---
## Direction Changes
### {{DATE}} — PIVOT: [New Direction]
- **From:** [Old direction/assumption]
- **To:** [New direction]
- **Trigger:** [What result/surprise caused this?]
- **New Research Question:** [If changed]
---
## Conclusion
### {{DATE}} — Research Concluded
- **Final Status:** [Completed/Partial/Abandoned]
- **Key Findings:**
1. [Finding 1]
2. [Finding 2]
- **Contribution:** [What this adds to the field]
- **Limitations:** [What we didn't test/couldn't conclude]
- **Future Work:** [What someone should do next]

View file

@ -0,0 +1,70 @@
# Research State
# Central tracking file for autoresearch project
# Updated automatically by the agent — do not edit manually
project:
name: "{{PROJECT_NAME}}"
created_at: "{{CREATED_AT}}"
research_question: "{{RESEARCH_QUESTION}}"
status: "bootstrapping" # bootstrapping | active | paused | concluding | completed
bootstrap:
literature_searched: false
initial_hypotheses_formed: false
evaluation_metric_defined: false
baseline_established: false
loops:
inner_loop_count: 0
outer_loop_count: 0
last_inner_loop_at: null
last_outer_loop_at: null
direction:
current: "explore" # explore | deepen | broaden | pivot | conclude
rationale: "Initial exploration phase"
next_milestone: "Complete first 3 experiments"
hypotheses:
# Example structure — replace with actual hypotheses
H001:
description: "{{HYPOTHESIS_DESCRIPTION}}"
status: "untested" # untested | running | completed | refuted | supported
prediction: "{{PREDICTION}}"
priority: 1
created_at: "{{CREATED_AT}}"
completed_at: null
result_summary: null
experiment_slug: null
metrics:
primary: "{{PRIMARY_METRIC}}" # e.g., "val_loss", "accuracy", "convergence_steps"
baseline_value: null
target_value: null
current_best: null
optimization_direction: "minimize" # minimize | maximize
trajectory:
# Auto-populated from experiments
# - experiment_id: run_001
# hypothesis: H001
# metric_value: 0.847
# baseline: 0.812
# delta: "+0.035"
# wall_time_min: 23
# change_summary: "Added cosine annealing"
resources:
literature_papers: []
related_work_notes: null
code_references: []
continuity:
last_session_at: "{{CREATED_AT}}"
next_scheduled_loop: null
current_experiment: null
pending_tasks: []
notes: |
# Agent notes — context for next session
# What was I doing? What's next?