1 line
15 KiB
JSON
1 line
15 KiB
JSON
{"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"}}}} |