
Auto Review Loop (MiniMax)
FreeAutomate iterative research reviews with MiniMax API.
Free ยท Opens the source repo
What Auto Review Loop (MiniMax) does
The Auto Review Loop (MiniMax) skill provides an autonomous mechanism for conducting multi-round research reviews. It leverages the MiniMax API to facilitate a structured review process that includes reviewing, implementing fixes, and re-reviewing until a positive assessment is achieved or the maximum number of rounds is reached. This skill is particularly useful for researchers and developers who need to refine their work based on external feedback without manual intervention.
The skill operates in a loop, executing a sequence of review phases that include sending comprehensive context to the MiniMax API and receiving feedback. It is designed to handle up to four rounds of review, allowing for iterative improvements based on the feedback received. The skill checks for the availability of the MCP tool to perform the review, and if it is unavailable, it falls back to using a direct curl command to access the MiniMax API. This flexibility ensures that users can still utilize the skill even in varying environments.
For state management, the skill persists its state in a JSON file after each round, allowing it to recover from interruptions and continue from the last point of progress. This feature is essential for long-running loops that may encounter context window limits, ensuring that users do not lose their progress and can maintain continuity in their review process.
Overall, this skill is ideal for researchers and developers looking to enhance their work through systematic external reviews while minimizing the manual overhead associated with iterative feedback processes. By automating the review loop, users can focus more on implementation and less on the logistics of obtaining feedback.
When to use it
Use this skill when you want to streamline the research review process and leverage external feedback effectively.
When not to use it
This skill may not be suitable for one-off reviews or when manual oversight is preferred over automation.
What you can build with it
Iterative Research Improvement
Researchers can use this skill to automate the review of their papers, iterating through feedback until they achieve a satisfactory assessment.
Continuous Development Feedback
Developers can integrate this skill into their workflow to continuously refine their projects based on external reviews, reducing manual oversight.
Long-Term Project Management
For long-term projects, this skill helps maintain a consistent review process, ensuring that feedback is systematically incorporated over time.
How to install Auto Review Loop (MiniMax)
View source1. Install with the skills CLI
npx skills add wanshuiyin/auto-claude-code-research-in-sleep/auto-review-loop-minimax --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by wanshuiyinAuto Review Loop (MiniMax Version): Autonomous Research Improvement
๐ Do not wrap this skill in
/loop,/schedule, orCronCreate. Like/auto-review-loop, it already loops internally (review โ fix โ re-review), feeding each round's prior-round summary into the next review prompt (the backend is a stateless per-round API call, not a shared thread). An external timer re-enters from the top each tick, dropping that accumulated context and firing the verdict on wall-clock time instead of on artifact change โ zero new signal, full token cost. Schedule the external wait that precedes it, not the verdict. Seeshared-references/external-cadence.md.
Autonomously iterate: review โ implement fixes โ re-review, until the external reviewer gives a positive assessment or MAX_ROUNDS is reached.
Context: $ARGUMENTS
Constants
- MAX_ROUNDS = 4
- POSITIVE_THRESHOLD: score >= 6/10 AND verdict โ {"ready", "almost"} โ both must hold, matching the operative STOP CONDITION below. Verdict vocabulary is {"ready", "almost", "not ready"}. (Earlier wording used
orand a stale verdict set; theANDform is authoritative.) - REVIEW_DOC:
review-stage/AUTO_REVIEW.md(cumulative log) (fall back to./AUTO_REVIEW.mdfor legacy projects) - REVIEWER_MODEL =
MiniMax-M3โ Model used via MiniMax API
API Configuration
This skill uses MiniMax API for external review. Two methods are supported:
Method 1: MCP Tool (Primary)
If mcp__minimax-chat__minimax_chat is available, use it:
mcp__minimax-chat__minimax_chat:
prompt: |
[Review prompt content]
model: "MiniMax-M3"
system: "You are a senior machine learning researcher..."
Method 2: curl (Fallback)
If MCP is not available, use curl directly:
curl -s "https://api.minimax.io/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $MINIMAX_API_KEY" \
-d '{
"model": "MiniMax-M3",
"messages": [
{"role": "system", "content": "You are a senior ML researcher..."},
{"role": "user", "content": "[Review prompt]"}
],
"max_tokens": 4096
}'
API Key: Read from ~/.claude/settings.json under env.MINIMAX_API_KEY, or from environment variable.
Why MiniMax instead of Codex MCP? Codex CLI uses OpenAI's Responses API (/v1/responses) which is not supported by third-party providers. See: https://github.com/openai/codex/discussions/7782
State Persistence (Compact Recovery)
Long-running loops may hit the context window limit, triggering automatic compaction. To survive this, persist state to review-stage/REVIEW_STATE.json after each round:
{
"round": 2,
"status": "in_progress",
"last_score": 5.0,
"last_verdict": "not ready",
"pending_experiments": ["screen_name_1"],
"timestamp": "2026-03-13T21:00:00"
}
Write this file at the end of every Phase E (after documenting the round). Overwrite each time โ only the latest state matters.
On completion (positive assessment or max rounds), set "status": "completed" so future invocations don't accidentally resume a finished loop.
Workflow
Initialization
- Check for
review-stage/REVIEW_STATE.json(fall back to./REVIEW_STATE.jsonif not found โ legacy path):- If neither path exists: fresh start (normal case)
- If it exists AND
statusis"completed": fresh start (previous loop finished normally) - If it exists AND
statusis"in_progress"ANDtimestampis older than 24 hours: fresh start (stale state from a killed/abandoned run โ delete the file and start over) - If it exists AND
statusis"in_progress"ANDtimestampis within 24 hours: resume- Read the state file to recover
round,last_score,pending_experiments - Read
review-stage/AUTO_REVIEW.mdto restore full context of prior rounds (fall back to./AUTO_REVIEW.md) - If
pending_experimentsis non-empty, check if they have completed (e.g., check screen sessions) - Resume from the next round (round = saved round + 1)
- Log: "Recovered from context compaction. Resuming at Round N."
- Read the state file to recover
- Read project narrative documents, memory files, and any prior review documents
- Read recent experiment results (check output directories, logs)
- Identify current weaknesses and open TODOs from prior reviews
- Initialize round counter = 1 (unless recovered from state file)
- Create/update
review-stage/AUTO_REVIEW.mdwith header and timestamp
Loop (repeat up to MAX_ROUNDS)
Phase A: Review
Send comprehensive context to the external reviewer.
Check MCP availability first, then use appropriate method:
If MCP available (Primary):
Use mcp__minimax-chat__minimax_chat tool with:
- system: "You are a senior machine learning researcher serving as a reviewer for top-tier conferences like NeurIPS, ICML, and ICLR. Provide rigorous, constructive feedback."
- prompt: [Full review prompt with context]
- model: "MiniMax-M3"
If MCP NOT available (Fallback):
curl -s "https://api.minimax.io/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $MINIMAX_API_KEY" \
-d '{
"model": "MiniMax-M3",
"messages": [
{
"role": "system",
"content": "You are a senior machine learning researcher serving as a reviewer for top-tier conferences like NeurIPS, ICML, and ICLR. Provide rigorous, constructive feedback."
},
{
"role": "user",
"content": "[Round N/MAX_ROUNDS of autonomous review loop]\n\n[Full research context: claims, methods, results, known weaknesses]\n[Changes since last round, if any]\n[For round 2+: Summary of previous review feedback and what was addressed]\n\nPlease act as a senior ML reviewer (NeurIPS/ICML level).\n\n1. Score this work 1-10 for a top venue\n2. List remaining critical weaknesses (ranked by severity)\n3. For each weakness, specify the MINIMUM fix (experiment, analysis, or reframing)\n4. State clearly: is this READY for submission? Yes/No/Almost\n\nBe brutally honest. If the work is ready, say so clearly."
}
],
"max_tokens": 4096
}'
Note: Each round is a standalone API call. For round 2+, include the summary of previous reviews and changes in the prompt itself.
Phase B: Parse Assessment
CRITICAL: Save the FULL raw response from the external reviewer verbatim (store in a variable for Phase E). Do NOT discard or summarize โ the raw text is the primary record.
Then extract structured fields:
- Score (numeric 1-10)
- Verdict ("ready" / "almost" / "not ready")
- Action items (ranked list of fixes)
STOP CONDITION: If score >= 6 AND verdict โ {"ready", "almost"} (exact match โ "not ready" does NOT qualify) โ stop loop, document final state.
Phase C: Implement Fixes (if not stopping)
For each action item (highest priority first):
- Code changes: Write/modify experiment scripts, model code, analysis scripts
- Run experiments: Deploy to GPU server via SSH + screen/tmux
- Analysis: Run evaluation, collect results, update figures/tables
- Documentation: Update project notes and review document
Prioritization rules:
- Skip fixes requiring excessive compute (flag for manual follow-up)
- Skip fixes requiring external data/models not available
- Prefer reframing/analysis over new experiments when both address the concern
- Always implement metric additions (cheap, high impact)
Phase D: Wait for Results
If experiments were launched:
- Monitor remote sessions for completion
- Collect results from output files and logs
Phase E: Document Round
Append to review-stage/AUTO_REVIEW.md:
## Round N (timestamp)
### Assessment (Summary)
- Score: X/10
- Verdict: [ready/almost/not ready]
- Key criticisms: [bullet list]
### Reviewer Raw Response
<details>
<summary>Click to expand full reviewer response</summary>
[Paste the COMPLETE raw response from the external reviewer here โ verbatim, unedited.
This is the authoritative record. Do NOT truncate or paraphrase.]
</details>
### Actions Taken
- [what was implemented/changed]
### Results
- [experiment outcomes, if any]
### Status
- [continuing to round N+1 / stopping]
Write review-stage/REVIEW_STATE.json with current round, score, verdict, and any pending experiments.
Increment round counter โ back to Phase A.
Termination
When loop ends (positive assessment or max rounds):
- Update
review-stage/REVIEW_STATE.jsonwith"status": "completed" - Write final summary to
review-stage/AUTO_REVIEW.md - Update project notes with conclusions
- If stopped at max rounds without positive assessment:
- List remaining blockers
- Estimate effort needed for each
- Suggest whether to continue manually or pivot
Key Rules
-
Large file handling: If the Write tool fails due to file size, immediately retry using Bash (
cat << 'EOF' > file) to write in chunks. Do NOT ask the user for permission โ just do it silently. -
Anti-hallucination citations: When adding references, NEVER fabricate BibTeX. Use DBLP โ CrossRef โ
[VERIFY]chain. Do NOT generate BibTeX from memory. -
Be honest โ include negative results and failed experiments
-
Do NOT hide weaknesses to game a positive score
-
Implement fixes BEFORE re-reviewing (don't just promise to fix)
-
If an experiment takes > 30 minutes, launch it and continue with other fixes while waiting
-
Document EVERYTHING โ the review log should be self-contained
-
Update project notes after each round, not just at the end
-
For round 2+, always include previous review context in the prompt
-
Prefer MCP tool over curl when available (more reliable)
Prompt Template for Round 2+
MCP Method (Primary):
mcp__minimax-chat__minimax_chat:
model: "MiniMax-M3"
system: "You are a senior machine learning researcher serving as a reviewer for top-tier conferences like NeurIPS, ICML, and ICLR. Provide rigorous, constructive feedback."
prompt: |
[Round N/MAX_ROUNDS of autonomous review loop]
## Previous Review Summary (Round N-1)
- Previous Score: X/10
- Previous Verdict: [ready/almost/not ready]
- Previous Key Weaknesses: [list]
## Changes Since Last Review
1. [Action 1]: [result]
2. [Action 2]: [result]
3. [Action 3]: [result]
## Updated Results
[paste updated metrics/tables]
## Current Research Context
[brief summary of claims, methods, current state]
Please re-score and re-assess:
1. Score this work 1-10 for a top venue
2. List remaining critical weaknesses (ranked by severity)
3. For each weakness, specify the MINIMUM fix
4. State clearly: is this READY for submission? Yes/No/Almost
Be brutally honest. If the work is ready, say so clearly.
curl Fallback:
curl -s "https://api.minimax.io/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $MINIMAX_API_KEY" \
-d '{
"model": "MiniMax-M3",
"messages": [
{
"role": "system",
"content": "You are a senior machine learning researcher serving as a reviewer for top-tier conferences like NeurIPS, ICML, and ICLR. Provide rigorous, constructive feedback."
},
{
"role": "user",
"content": "[Round N/MAX_ROUNDS of autonomous review loop]\n\n## Previous Review Summary (Round N-1)\n- Previous Score: X/10\n- Previous Verdict: [ready/almost/not ready]\n- Previous Key Weaknesses: [list]\n\n## Changes Since Last Review\n1. [Action 1]: [result]\n2. [Action 2]: [result]\n3. [Action 3]: [result]\n\n## Updated Results\n[paste updated metrics/tables]\n\n## Current Research Context\n[brief summary of claims, methods, current state]\n\nPlease re-score and re-assess:\n1. Score this work 1-10 for a top venue\n2. List remaining critical weaknesses (ranked by severity)\n3. For each weakness, specify the MINIMUM fix\n4. State clearly: is this READY for submission? Yes/No/Almost\n\nBe brutally honest. If the work is ready, say so clearly."
}
],
"max_tokens": 4096
}'
Output Protocols
Follow these shared protocols for all output files:
- Output Versioning Protocol โ write timestamped file first, then copy to fixed name
- Output Manifest Protocol โ log every output to MANIFEST.md
- Output Language Protocol โ respect the project's language setting
Frequently asked questions about Auto Review Loop (MiniMax)
Similar skills
Scientific Problem Selection
Streamline your research problem selection process.
Nextflow Development
Run nf-core bioinformatics pipelines with ease.
Nature Reviewer Assessment
Simulate peer review for scientific manuscripts.
Research Writing Pipeline
Streamline your scientific writing with structured proposal-first methodologies.
Nature Literature Downloader
Efficiently download academic literature from various sources.
Auto Research
Streamline your NeMo-RL experiments with automated workflows.
