Files

1 line
15 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "aradotso/trending-skills", "files": {"skills/aris-autonomous-research/SKILL.md": {"2384a003145a59276aa204b10c47262aab65a3c9": {"t": 1785674029.8365595, "n": 13908, "h": "d26ab8a20548099f", "c": "```markdown\n---\nname: aris-autonomous-research\ndescription: ARIS (Auto-Research-In-Sleep) — Markdown-only autonomous ML research workflows using cross-model review loops, idea discovery, experiment automation, and paper writing with Claude Code or any LLM agent.\ntriggers:\n - run autonomous research pipeline\n - set up ARIS research workflow\n - use claude code for ML research\n - automate paper writing with AI\n - cross-model research review loop\n - run experiment automation with ARIS\n - install ARIS skills for claude code\n - generate research ideas while sleeping\n---\n\n# ARIS — Autonomous Research In Sleep\n\n> Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection.\n\nARIS is a **zero-dependency, Markdown-only** autonomous ML research system. Each \"skill\" is a plain `SKILL.md` file that any LLM agent can read and execute. The system orchestrates **cross-model collaboration**: one model executes (Claude Code / Codex) while another critiques (GPT-5.4 / Gemini / GLM / MiniMax), breaking self-review blind spots without any framework or lock-in.\n\nCore capabilities:\n- 🔬 **Idea discovery** from a research direction or existing paper\n- 🧪 **Experiment automation** with GPU-ready code generation and W&B tracking\n- 📝 **Paper writing** (LaTeX, Beamer slides, A0 poster)\n- 🔁 **Cross-model review loops** with score progression\n- 📬 **Rebuttal drafting** with safety gates (no fabrication, no overpromise, full coverage)\n\n---\n\n## Installation\n\n### 1. Clone the repository\n\n```bash\ngit clone https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git\ncd Auto-claude-code-research-in-sleep\n```\n\n### 2. Install skills into Claude Code\n\nCopy the skills directory to your project, or symlink it:\n\n```bash\n# Option A: copy skills to your project\ncp -r skills/ /your/project/.claude/skills/\n\n# Option B: symlink (keeps skills up to date)\nln -s /path/to/Auto-claude-code-research-in-sleep/skills /your/project/.claude/skills\n```\n\nClaude Code auto-discovers `SKILL.md` files in `.claude/skills/**`. No registration step needed.\n\n### 3. Configure the MCP reviewer (cross-model review)\n\nARIS uses the `llm-chat` MCP server so the executor model can call a second model for review. Install it:\n\n```bash\ncd mcp-servers/llm-chat\npip install -r requirements.txt # or: uv pip install -r requirements.txt\n```\n\nAdd to your `claude_desktop_config.json` (or Claude Code MCP config):\n\n```json\n{\n \"mcpServers\": {\n \"llm-chat\": {\n \"command\": \"python\",\n \"args\": [\"/path/to/Auto-claude-code-research-in-sleep/mcp-servers/llm-chat/server.py\"],\n \"env\": {\n \"OPENAI_API_KEY\": \"$OPENAI_API_KEY\",\n \"LLM_MODEL\": \"gpt-4o\"\n }\n }\n }\n}\n```\n\n> For alternative reviewers (Kimi, GLM, MiniMax, DeepSeek) set `LLM_BASE_URL` and `LLM_MODEL` to the provider's OpenAI-compatible endpoint. No Claude or OpenAI API required.\n\n### 4. (Optional) Codex MCP for OpenAI Codex as executor\n\n```json\n{\n \"mcpServers\": {\n \"codex\": {\n \"command\": \"npx\",\n \"args\": [\"@openai/codex-mcp\"],\n \"env\": {\n \"OPENAI_API_KEY\": \"$OPENAI_API_KEY\"\n }\n }\n }\n}\n```\n\n---\n\n## Environment Variables\n\n| Variable | Required | Description |\n|---|---|---|\n| `OPENAI_API_KEY` | For GPT reviewer | OpenAI API key |\n| `ANTHROPIC_API_KEY` | For Claude executor | Anthropic API key |\n| `LLM_BASE_URL` | Alternative reviewer | OpenAI-compatible base URL |\n| `LLM_MODEL` | Alternative reviewer | Model name at that endpoint |\n| `WANDB_API_KEY` | Experiment tracking | Weights & Biases key |\n\n---\n\n## Workflows & Commands\n\n### Full pipeline (idea → paper)\n\n```\n/research-pipeline \"factorized gap in discrete diffusion LMs\"\n```\n\nWith a reference paper and base codebase:\n\n```\n/research-pipeline \"improve positional encoding in transformers\" — ref paper: https://arxiv.org/abs/2104.09864, base repo: https://github.com/facebookresearch/fairseq\n```\n\nParameters:\n\n| Flag | Default | Effect |\n|---|---|---|\n| `ref paper` | — | ARIS reads this paper, finds weaknesses, targets them |\n| `base repo` | — | Clone and use this repo as experiment base |\n| `compact: true` | false | Generate lean summary files (good for short-context models) |\n\n---\n\n### Workflow 1 — Idea Discovery\n\n```\n/idea-discovery \"sparse attention in long-context LLMs\"\n```\n\nWhat it does:\n1. Searches recent arXiv papers in the direction\n2. Identifies open gaps and contradiction clusters\n3. Generates 3–5 novel ideas with novelty scores\n4. Runs `/research-refine` to sharpen the best idea into a problem statement\n\n---\n\n### Workflow 1.5 — Experiment Bridge\n\n```\n/experiment-bridge \"idea_proposal.md\" — base repo: https://github.com/huggingface/diffusers\n```\n\nWhat it does:\n1. Reads the sharpened idea from Workflow 1\n2. Generates GPU-ready experiment code\n3. Runs **GPT cross-model code review** before deployment (`code review: true` by default)\n4. Executes training loop with W&B logging\n5. Saves results to `experiment_results/`\n\nExample generated experiment scaffold:\n\n```python\n# experiment_results/run_001/train.py (auto-generated by /experiment-bridge)\nimport wandb\nimport torch\nfrom torch.utils.data import DataLoader\n\nwandb.init(\n project=os.environ.get(\"WANDB_PROJECT\", \"aris-experiment\"),\n config={\n \"method\": \"factorized_discrete_diffusion\",\n \"lr\": 3e-4,\n \"epochs\": 50,\n \"batch_size\": 32,\n }\n)\n\nfor epoch in range(config.epochs):\n for batch in dataloader:\n loss = model(batch)\n wandb.log({\"loss\": loss.item(), \"epoch\": epoch})\n```\n\n---\n\n### Workflow 2 — Literature Review\n\n```\n/literature-review \"discrete diffusion language models\"\n```\n\nAnti-hallucination: ARIS verifies every citation via DBLP → CrossRef → marks unverified as `[VERIFY]`. Never fabricates BibTeX.\n\n---\n\n### Workflow 3 — Paper Writing\n\n```\n/paper-write \"experiment_results/ + idea_proposal.md\" — venue: NeurIPS\n```\n\nSupported venue templates: `CVPR`, `NeurIPS`, `ICML`, `ICLR`, `ACL`, `AAAI`, `ACM MM`\n\n---\n\n### Workflow 4 — Rebuttal\n\n```\n/rebuttal \"paper/ + reviews/\" — venue: ICML, character limit: 5000\n```\n\nParameters:\n\n| Parameter | Default | Description |\n|---|---|---|\n| `venue` | `ICML` | Target conference |\n| `character limit` | **Required** | Hard character limit |\n| `quick mode` | false | Stop after strategy (Phase 0–3), no draft |\n| `auto experiment` | false | Auto-run experiments when reviewers ask for new evidence |\n| `max stress test rounds` | 1 | GPT-5.4 stress-test passes on draft |\n| `max followup rounds` | 3 | Per-reviewer follow-up round limit |\n\nThree safety gates — rebuttal will NOT finalize if any fails:\n- 🔒 No fabrication — every claim maps to paper/review/confirmed result\n- 🔒 No overpromise — every promise is user-approved\n- 🔒 Full coverage — every reviewer concern is tracked\n\nOutputs:\n- `PASTE_READY.txt` — exact character count, ready to paste to venue portal\n- `REBUTTAL_DRAFT_rich.md` — extended version for manual editing\n\n---\n\n### Presentation & Poster\n\n```\n/paper-slides \"paper/\" # Beamer PDF + PPTX + speaker notes + Q&A prep\n/paper-poster \"paper/\" # A0/A1 poster PDF + PPTX + SVG (venue colors)\n```\n\n---\n\n## Standalone Utility Skills\n\n| Skill | Command | What it does |\n|---|---|---|\n| `training-check` | `/training-check \"train.py\"` | Diagnose training instability, NaN, slow convergence |\n| `result-to-claim` | `/result-to-claim \"results.json\"` | Convert raw numbers into paper-ready claims |\n| `ablation-planner` | `/ablation-planner \"idea.md\"` | Design minimal ablation study for a method |\n| `experiment-plan` | `/experiment-plan \"idea.md\"` | Claim-driven experiment roadmap |\n| `research-refine` | `/research-refine \"idea.md\"` | Sharpen vague idea into problem-anchored proposal |\n| `formula-derivation` | `/formula-derivation \"method.md\"` | Develop and verify research formulas |\n| `paper-illustration` | `/paper-illustration \"paper/\"` | Generate figures (Gemini-assisted) |\n| `grant-proposal` | `/grant-proposal \"idea.md\"` | Draft grant proposal from research idea |\n\n---\n\n## Alternative Model Combinations\n\nARIS requires only an OpenAI-compatible endpoint for the reviewer. Set environment variables:\n\n```bash\n# Kimi as reviewer\nexport LLM_BASE_URL=\"https://api.moonshot.cn/v1\"\nexport LLM_MODEL=\"moonshot-v1-128k\"\nexport LLM_API_KEY=$MOONSHOT_API_KEY\n\n# DeepSeek as reviewer\nexport LLM_BASE_URL=\"https://api.deepseek.com/v1\"\nexport LLM_MODEL=\"deepseek-chat\"\nexport LLM_API_KEY=$DEEPSEEK_API_KEY\n\n# MiniMax as reviewer\nexport LLM_BASE_URL=\"https://api.minimax.chat/v1\"\nexport LLM_MODEL=\"abab6.5s-chat\"\nexport LLM_API_KEY=$MINIMAX_API_KEY\n```\n\nThen in `mcp-servers/llm-chat/server.py` the `LLM_BASE_URL` env var overrides the OpenAI default. No code changes needed.\n\n---\n\n## Using with Codex CLI (no Claude)\n\nARIS ships a parallel `skills-codex/` directory with the same workflows adapted for OpenAI Codex CLI:\n\n```bash\n# Install Codex CLI\nnpm install -g @openai/codex\n\n# Run a workflow\ncodex --skill skills/skills-codex/research-pipeline/SKILL.md \\\n \"improve contrastive learning in vision transformers\"\n```\n\n---\n\n## Using with Cursor\n\n1. Open Cursor settings → Rules → paste content of `docs/CURSOR_ADAPTATION.md`\n2. Copy `skills/` to `.cursorrules-skills/` in your project\n3. In chat: `@research-pipeline \"your research direction\"`\n\n---\n\n## Using with Trae (ByteDance IDE)\n\nSee [`docs/TRAE_ARIS_RUNBOOK_EN.md`](docs/TRAE_ARIS_RUNBOOK_EN.md) for full setup. Trae supports SKILL.md natively via its plugin system.\n\n---\n\n## Input Templates\n\nPre-filled templates for every workflow live in `templates/`:\n\n```\ntemplates/\n research-pipeline.md # Full pipeline input\n idea-discovery.md\n experiment-bridge.md\n literature-review.md\n paper-write.md\n rebuttal.md\n paper-slides.md\n paper-poster.md\n```\n\nUse a template:\n\n```\n/research-pipeline — template: templates/research-pipeline.md\n```\n\n---\n\n## Project Structure\n\n```\nAuto-claude-code-research-in-sleep/\n├── skills/\n│ ├── research-pipeline/SKILL.md # Main orchestration workflow\n│ ├── idea-discovery/SKILL.md # Workflow 1\n│ ├── experiment-bridge/SKILL.md # Workflow 1.5\n│ ├── literature-review/SKILL.md # Workflow 2\n│ ├── paper-write/SKILL.md # Workflow 3\n│ ├── rebuttal/SKILL.md # Workflow 4\n│ ├── paper-slides/SKILL.md\n│ ├── paper-poster/SKILL.md\n│ ├── training-check/SKILL.md\n│ ├── result-to-claim/SKILL.md\n│ ├── ablation-planner/SKILL.md\n│ ├── experiment-plan/SKILL.md\n│ ├── research-refine/SKILL.md\n│ ├── formula-derivation/SKILL.md\n│ └── skills-codex/ # Codex CLI variants\n├── mcp-servers/\n│ └── llm-chat/ # OpenAI-compatible reviewer MCP\n├── templates/ # Input templates per workflow\n├── docs/\n│ ├── CURSOR_ADAPTATION.md\n│ ├── TRAE_ARIS_RUNBOOK_EN.md\n│ ├── ANTIGRAVITY_ADAPTATION.md\n│ ├── MODELSCOPE_GUIDE.md # Free tier setup\n│ ├── MiniMax-GLM-Configuration.md\n│ └── CODEX_GEMINI_REVIEW_GUIDE.md\n└── README.md\n```\n\n---\n\n## Common Patterns\n\n### Pattern 1: Start from an arXiv paper you want to beat\n\n```\n/research-pipeline \"improve method\" — ref paper: https://arxiv.org/abs/2406.04329, base repo: https://github.com/org/repo\n```\n\nARIS reads the paper → identifies weaknesses → clones repo → generates targeted ideas → runs experiments → writes paper.\n\n### Pattern 2: Resume interrupted session\n\nAdd `compact: true` to any workflow. ARIS writes a lean `SESSION_SUMMARY.md`. On resume:\n\n```\n/research-pipeline — resume: SESSION_SUMMARY.md\n```\n\n### Pattern 3: Jump into the middle of a pipeline\n\nAlready have results? Jump to paper writing:\n\n```\n/paper-write \"my_results/ + my_idea.md\" — venue: NeurIPS\n```\n\nAlready have a paper? Jump to rebuttal:\n\n```\n/rebuttal \"paper/ + reviews/\" — venue: ICML, character limit: 5000\n```\n\n### Pattern 4: Free tier via ModelScope\n\n```bash\nexport LLM_BASE_URL=\"https://api-inference.modelscope.cn/v1\"\nexport LLM_MODEL=\"Qwen/Qwen2.5-72B-Instruct\"\nexport LLM_API_KEY=$MODELSCOPE_API_KEY\n```\n\nSee `docs/MODELSCOPE_GUIDE.md` for zero-cost setup.\n\n---\n\n## Troubleshooting\n\n**Skills not discovered by Claude Code**\n\nEnsure SKILL.md files are under `.claude/skills/` relative to your project root. Claude Code scans this path at startup.\n\n**MCP reviewer not connecting**\n\n```bash\n# Test the llm-chat server directly\ncd mcp-servers/llm-chat\npython server.py --test\n# Should print: {\"status\": \"ok\", \"model\": \"gpt-4o\"}\n```\n\n**W&B logging not working in experiment-bridge**\n\n```bash\nwandb login # uses WANDB_API_KEY env var, or prompts for manual entry\n```\n\n**Citation hallucination in literature-review**\n\nAll unverified citations are tagged `[VERIFY]` in output. Search DBLP manually for flagged entries before including in your paper. Never remove the `[VERIFY]` tag without confirming.\n\n**Rebuttal exceeds character limit**\n\nARIS tracks character count per section. If a draft exceeds the limit, it automatically trims supporting evidence (keeps claims, removes elaboration). You can also pass `quick mode: true` to get the strategy without the draft, then write targeted sections manually.\n\n**Cross-model review loop not running (self-review fallback)**\n\nIf the `llm-chat` MCP is unreachable, ARIS falls back to single-model review with a warning in the output. Check MCP server logs:\n\n```bash\ntail -f ~/.claude/mcp-logs/llm-chat.log\n```\n\n**Session context overflow**\n\nUse `compact: true` on any workflow invocation to produce a compressed `SESSION_SUMMARY.md` that fits in a fresh context window.\n\n---\n\n## Extending ARIS\n\nEvery skill is a plain Markdown file. To create a custom skill:\n\n```markdown\n# my-custom-skill\n\n## Trigger\nWhen the user says \"run my custom analysis\"...\n\n## Steps\n1. Read input files\n2. Call `mcp__llm-chat__chat` with the review prompt\n3. Write output to `custom_output/`\n\n## Output\n- `custom_output/analysis.md`\n- `custom_output/score.json`\n```\n\nSave as `.claude/skills/my-custom-skill/SKILL.md` and Claude Code will discover it automatically.\n```\n"}}}}