data-download
Discover, evaluate, and download publicly available datasets from the internet. Infers data needs from a research question or…
Adversarial iterative review loop with generator-evaluator separation. Up to 4 rounds of independent review, improvement, and re-evaluation. Persists state to output/REVIEW_STATE.json for recovery. Stop: score ≥ 7.5/10 on all dimensions, or 4 rounds. Writes full history to
$ npx -y skills add grind-lab-core/night_owl_research_agent --skill auto-review-loop --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/auto-review-loopContext preview
The summary Claude sees to decide when to auto-load this skill.
Adversarial iterative review loop with generator-evaluator separation. Up to 4 rounds of independent review, improvement, and re-evaluation. Persists state to output/REVIEW_STATE.json for recovery. Stop: score ≥ 7.5/10 on all dimensions, or 4 rounds. Writes full history to
name: auto-review-loop description: Adversarial iterative review loop with generator-evaluator separation. Up to 4 rounds of independent review, improvement, and re-evaluation. Persists state to output/REVIEW_STATE.json for recovery. Stop: score ≥ 7.5/10 on all dimensions, or 4 rounds. Writes full history to output/AUTO_REVIEW_REPORT.md. argument-hint: [topic-or-scope] tools: all flags: HUMAN_CHECKPOINT: true # If true, pause after each round for user approval of fixes COMPACT_MODE: false # If true, use output/EXPERIMENT_RESULT.md instead of full experiment logs EXTERNAL_REVIEW: false # If true, use MCP claude-review or gemini-review server
You run adversarial review cycles to iteratively improve research work. The architecture enforces **generator-evaluator separation**: the entity that wrote a section does NOT score it. Each round: independent review → parse → implement fixes → re-evaluate → decide.
---
**Never let the same agent that wrote a section score it.**
> 💡 Override: `/auto-review-loop "topic" — compact: true, human checkpoint: true, difficulty: hard`
Long-running loops may hit the context window limit, triggering automatic compaction, or crash mid-round. To survive both, persist state to `output/REVIEW_STATE.json` **at every phase boundary** (not only end-of-round):
{
"round": 2,
"phase": "C_implementing_fixes",
"threadId": "019cd392-...",
"status": "in_progress",
"difficulty": "medium",
"persona": "remote-sensing",
"scores_per_round": [
{"round": 1, "score": 5.0, "verdict": "not ready"}
],
"last_score": 5.0,
"last_verdict": "not ready",
"open_weaknesses": [
{"id": "W1", "title": "no spatial CV", "first_seen_round": 1, "status": "open"}
],
"pending_experiments": ["screen_name_1"],
"round_started_at": "2026-03-13T21:00:00",
"loop_started_at": "2026-03-13T18:00:00",
"timestamp": "2026-03-13T21:14:03"
}**Write rules:**
**On completion** (positive assessment or max rounds or blocked), set `"status"` to `"completed"`, `"max_rounds_reached"`, or `"blocked"` so future invocations don't resume a finished loop.
Hard caps that terminate the loop with `status: "blocked"` and a clear reason written to `output/AUTO_REVIEW_REPORT.md`:
Log `round_started_at` at the top of Phase A and compute elapsed at Phase E.
1. **Check for `output/REVIEW_STATE.json`** in project root:
A fully automatic, domain-aware AI research agent for Geoscientists, Remote Sensing researchers, and GIScientists — powered entirely by Claude Code skills.
Discover, evaluate, and download publicly available datasets from the internet. Infers data needs from a research question or…
Deploy and run experiments for ML/DL training (local, remote, or Modal GPU) AND spatial data science / GIScience experiments…
Run an end-to-end workflow that chains the skills `refine-research` and `experiment-design`. Use when the user wants a one-shot…
Turn a refined GIScience / remote sensing / spatial data science proposal into a detailed, claim-driven experiment roadmap. Use…
Complete 4-stage end-to-end research pipeline. Orchestrates idea-discovery-pipeline → deploy-experiment → auto-review-loop →…
Generate and rank research ideas given a broad direction. Use when user input "brainstorm ideas", "generate research ideas",…