{"id":48553600,"url":"https://github.com/EvoScientist/EvoScientist","last_synced_at":"2026-04-13T10:00:31.455Z","repository":{"id":344219412,"uuid":"1142406715","full_name":"EvoScientist/EvoScientist","owner":"EvoScientist","description":"🔬 Harness Vibe Research with Self-evolving AI Scientists","archived":false,"fork":false,"pushed_at":"2026-04-07T15:31:50.000Z","size":19305,"stargazers_count":2936,"open_issues_count":14,"forks_count":144,"subscribers_count":11,"default_branch":"main","last_synced_at":"2026-04-07T16:22:16.493Z","etag":null,"topics":["ai-agent","ai4science","multi-agent-system","vibe-research"],"latest_commit_sha":null,"homepage":"https://EvoScientist.ai/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EvoScientist.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-26T11:19:26.000Z","updated_at":"2026-04-07T16:07:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"841848af-5c17-475f-bcfb-e6d91e171cbd","html_url":"https://github.com/EvoScientist/EvoScientist","commit_stats":null,"previous_names":["evoscientist/evoscientist"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/EvoScientist/EvoScientist","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvoScientist%2FEvoScientist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvoScientist%2FEvoScientist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvoScientist%2FEvoScientist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvoScientist%2FEvoScientist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EvoScientist","download_url":"https://codeload.github.com/EvoScientist/EvoScientist/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvoScientist%2FEvoScientist/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31747156,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T09:16:15.125Z","status":"ssl_error","status_checked_at":"2026-04-13T09:16:05.023Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agent","ai4science","multi-agent-system","vibe-research"],"created_at":"2026-04-08T10:00:23.959Z","updated_at":"2026-04-13T10:00:31.431Z","avatar_url":"https://github.com/EvoScientist.png","language":"Python","funding_links":[],"categories":["🤖 Research Agents \u0026 Autonomous Workflows","AI Agent Frameworks \u0026 SDKs"],"sub_categories":["Autonomous Research Systems (2024-2025 Breakthroughs)","Multi-Agent Collaboration Systems"],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003cpicture\u003e\n      \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/logo-dark.svg\"\u003e\n      \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/logo-light.svg\"\u003e\n      \u003cimg alt=\"EvoScientist Logo\" src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/logo-dark.svg\" width=\"80%\"\u003e\n    \u003c/picture\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003ca href=\"https://pypi.org/project/EvoScientist/\"\u003e\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-pypi-light.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-pypi-dark.svg\"\u003e\n  \u003cimg alt=\"PyPI v0.0.6\" src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-pypi-light.svg\" height=\"28\"\u003e\n\u003c/picture\u003e\u003c/a\u003e\u003ca href=\"https://EvoScientist.github.io/\"\u003e\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-website-light.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-website-dark.svg\"\u003e\n  \u003cimg alt=\"Website\" src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-website-light.svg\" height=\"28\"\u003e\n\u003c/picture\u003e\u003c/a\u003e\u003ca href=\"https://github.com/langchain-ai/deepagents\"\u003e\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-framework-light.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-framework-dark.svg\"\u003e\n  \u003cimg alt=\"Framework DeepAgents\" src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-framework-light.svg\" height=\"28\"\u003e\n\u003c/picture\u003e\u003c/a\u003e\u003ca href=\"https://github.com/EvoScientist/EvoScientist/blob/main/LICENSE\"\u003e\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-license-light.svg\"\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-license-dark.svg\"\u003e\n  \u003cimg alt=\"License Apache 2.0\" src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/badge-license-light.svg\" height=\"28\"\u003e\n\u003c/picture\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\u003ca href=\"https://github.com/EvoScientist/EvoScientist\"\u003e\u003cimg src=\"https://readme-typing-svg.demolab.com?font=Sans-Serif\u0026pause=1000\u0026color=64B5F6\u0026center=true\u0026vCenter=true\u0026width=435\u0026lines=Towards+Self-Evolving+AI+Scientists;Harness+Vibe+Research\" alt=\"Typing SVG\" /\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n**English | [简体中文](./README.zh-CN.md)**\n\n\u003c/div\u003e\n\n**EvoScientist aims to harness vibe research by enabling self-evolving AI scientists that autonomously explore, generate insights, and iteratively improve.\nIt is designed to be opinionated and ready to use out of the box, offering a living research system that grows alongside evolving agent skills, toolsets, and memory bases.\nMoving beyond traditional human-in-the-loop systems, EvoScientist adopts a human-on-the-loop paradigm, where AI acts as a research buddy that co-evolves with human researchers and internalizes scholarly taste and scientific judgment.**\n\n\u003ch3\u003e🏆 Awards \u0026 Recognition\u003c/h3\u003e\n\n\u003ctable\u003e\n  \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"33%\"\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/ICAIS_awards.JPG\" height=\"180\" alt=\"ICAIS 2025 Awards\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eBest Paper \u0026 Appraisal Award\u003c/b\u003e\u003c/sub\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\" valign=\"top\" width=\"33%\"\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/ICAIS_best_paper.png\" height=\"180\" alt=\"Best Paper\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eAI-Generated Best Paper\u003c/b\u003e\u003c/sub\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\" valign=\"top\" width=\"33%\"\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/deepresearch_bench_2.JPG\" height=\"180\" alt=\"DeepResearch Bench II #1\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003e#1 on DeepResearch Bench II\u003c/b\u003e\u003c/sub\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003cbr /\u003e\n\n\u003ctable\u003e\n  \u003ctr\u003e\n          \u003c/td\u003e\n    \u003ctd align=\"center\" valign=\"top\" width=\"50%\"\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/asta_bench_code.png\" height=\"180\" alt=\"AstaBench Code \u0026 Execution #1\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003e#1 on AstaBench Code \u0026 Execution\u003c/b\u003e\u003c/sub\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\" valign=\"top\" width=\"50%\"\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/asta_bench_data.png\" height=\"180\" alt=\"AstaBench Data Analysis #1\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003e#1 on AstaBench Data Analysis\u003c/b\u003e\u003c/sub\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ch3\u003e⚡ Unified Control, Different Surfaces\u003c/h3\u003e\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth width=\"75%\"\u003e\u003cp align=\"center\"\u003e🖥️ CLI / TUI\u003c/p\u003e\u003c/th\u003e\n    \u003cth width=\"25%\"\u003e\u003cp align=\"center\"\u003e📱 Mobile\u003c/p\u003e\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cvideo src=\"https://github.com/user-attachments/assets/a40ba429-bb07-4663-b5b1-77aed1a833b9\" autoplay loop muted playsinline width=\"100%\"\u003e\n        \u003ca href=\"https://github.com/user-attachments/assets/a40ba429-bb07-4663-b5b1-77aed1a833b9\"\u003eView demo video\u003c/a\u003e\n      \u003c/video\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cvideo src=\"https://github.com/user-attachments/assets/4919e6f4-e434-46c9-98c7-35d7482868a6\" width=\"100%\" autoplay loop muted playsinline\u003e\n        \u003ca href=\"https://github.com/user-attachments/assets/4919e6f4-e434-46c9-98c7-35d7482868a6\"\u003eView mobile demo\u003c/a\u003e\n      \u003c/video\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## ✨ Features\n- **🤖 Multi-Agent Team** — 6 sub-agents (plan, research, code, debug, analyze, write) working in concert.\n- **🧠 Persistent Memory** — Context, preferences, and findings survive across sessions.\n- **🌐 Multi-Provider** — Anthropic, OpenAI, Google, MiniMax, NVIDIA — one config to switch.\n- **📱 Multi-Channel** — CLI as the hub; Telegram, Slack, Feishu, WeChat, and more — one agent session.\n- **🔬 Scientific Workflow** — Intake → plan → execute → evaluate → write → verify.\n- **🔄 Code Generation Modes** — More Effort (iterative refinement), continuously improving code quality.\n- **⚡ Adaptive Tools** — Per-turn tool selection keeps only relevant tools visible, reducing noise.\n- **✂️ Context Editing** — Dynamic system prompt rewriting based on conversation state.\n- **🔌 MCP \u0026 Skills** — Plug in MCP servers or install skills from GitHub on the fly.\n\n\u003e [!TIP]\n\u003e Looking for ready-to-use research skills? Check out [**EvoSkills**](https://github.com/EvoScientist/EvoSkills) — powered by [**EvoScientist**](https://github.com/EvoScientist/EvoScientist)'s engine and installable skills, the entire end-to-end research lifecycle is covered out of the box. [**EvoSkills**](https://github.com/EvoScientist/EvoSkills) are also compatible with other CLI coding agents.\n\n## 🔥 News\n- **[26 Mar 2026]** 🥇 Ranked #1 on [AstaBench Data Analysis](https://allenai-asta-bench-leaderboard.hf.space/home) at submission time! [**Leaderboard**](https://allenai-asta-bench-leaderboard.hf.space/data-analysis) 👈\n- **[25 Mar 2026]** 🥇 Ranked #1 on [AstaBench Code \u0026 Execution](https://allenai-asta-bench-leaderboard.hf.space/home) at submission time! [**Leaderboard**](https://allenai-asta-bench-leaderboard.hf.space/code-execution) 👈\n- **[13 Mar 2026]** 🚀 [**EvoScientist**](https://github.com/EvoScientist/EvoScientist) officially debuts!\n- **[11 Mar 2026]** ⛳ Technical Report is live! [**Check it out**](https://arxiv.org/abs/2603.08127) 👈\n- **[06 Mar 2026]** 🥇 Ranked #1 on [DeepResearch Bench II](https://agentresearchlab.com/benchmarks/deepresearch-bench-ii/index.html#leaderboard) at submission time! [**Leaderboard**](https://agentresearchlab.com/benchmarks/deepresearch-bench-ii/index.html#leaderboard) 👈\n- **[24 Nov 2025]** 🏆 6/6 accepted at [ICAIS 2025](https://icais.ai/) AI Scientist Track — Best Paper \u0026 AI Reviewer's Appraisal Award! [**Details**](https://airaxiv.com/papers/?q=zacharyzhang2022%40gmail.com) 👈\n\n## 📖 Table of Contents\n\n- [📦 Installation](#-installation)\n- [🔑 Configuration](#-configuration)\n- [⚡ Quick Start](#-quick-start)\n- [🍪 Examples \u0026 Recipes](#-examples--recipes)\n- [🔌 MCP Integration](#-mcp-integration)\n- [📱 Channels](#-channels)\n- [📚 Acknowledgments](#-acknowledgments)\n- [🎯 Roadmap](#-ᯓ-roadmap)\n- [🌍 Project Roles](#-project-roles)\n- [🤝 Contributing](#-contributing)\n- [📝 Citation](#-citation)\n\n## 📦 Installation\n\n\u003e [!TIP]\n\u003e Requires **Python 3.11+** (**\u003c 3.14**). We recommend [**uv**](https://docs.astral.sh/uv/) or **conda** for dependency management and virtual environments.\n\n\u003cdetails\u003e\n\u003csummary\u003e 🪛 Install uv (if you don't have it)\u003c/summary\u003e\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\n\u003c/details\u003e\n\n### Quick Install\n\n```bash\nuv tool install EvoScientist\n```\n\n\u003e [!NOTE]\n\u003e To update an existing installation to the latest version, use `uv tool upgrade`:\n\u003e ```bash\n\u003e uv tool upgrade EvoScientist\n\u003e ```\n\nOr install into the current environment instead:\n\n```bash\nuv pip install EvoScientist\n```\n\n### Latest from GitHub\n\nTo get the latest patches before a [PyPI](https://pypi.org/project/EvoScientist/) release:\n\n```bash\nuv pip install git+https://github.com/EvoScientist/EvoScientist.git\n```\n\n### Development Install\n\n```bash\ngit clone https://github.com/EvoScientist/EvoScientist.git\ncd EvoScientist\nuv sync --dev\n```\n\nenable pre-commit hooks:\n```bash\nuv run pre-commit install\n```\n\n\u003cdetails\u003e\n\u003csummary\u003e Using conda\u003c/summary\u003e\n\n```bash\nconda create -n EvoSci python=3.11 -y\nconda activate EvoSci\npip install -e \".[dev]\"\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e Using PyPi\u003c/summary\u003e\n\n```bash\npip install EvoScientist          # quick install\npip install -e \".[dev]\"           # development install\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e Optional: Channel dependencies\u003c/summary\u003e\n\nMessaging channel integrations require extra dependencies. Install only what you need:\n\n```bash\nuv pip install \"EvoScientist[telegram]\"     # Telegram\nuv pip install \"EvoScientist[discord]\"      # Discord\nuv pip install \"EvoScientist[slack]\"        # Slack\nuv pip install \"EvoScientist[wechat]\"       # WeChat\nuv pip install \"EvoScientist[qq]\"           # QQ\nuv pip install \"EvoScientist[feishu]\"       # Feishu\nuv pip install \"EvoScientist[all-channels]\" # everything\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e Upgrade to the latest code base \u003c/summary\u003e\n\n```bash\ngit pull \u0026\u0026 uv sync --dev\n```\n\n\u003c/details\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 🔑 Configuration\n\nThe easiest way to configure API keys is the interactive wizard:\n\n```bash\nEvoSci onboard\n```\n\n\u003e [!TIP]\n\u003e It walks you through provider selection, key validation, model choice, and workspace mode.\n\u003e Supports OAuth sign-in for CLI coding agent subscribers — no API key needed.\n\n![onboard](https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/EvoScientist_onboard.png)\n\n\u003cdetails\u003e\n\u003csummary\u003e 📟 Manual configuration via environment variables \u003c/summary\u003e\n\nSet at least one LLM provider key and (optionally) a search key:\n\n```bash\n# Pick one LLM provider\nexport ANTHROPIC_API_KEY=\"sk-...\"   # Claude  — console.anthropic.com\nexport OPENAI_API_KEY=\"sk-...\"      # GPT    — platform.openai.com\nexport GOOGLE_API_KEY=\"AI...\"       # Gemini  — aistudio.google.com/api-keys\nexport MINIMAX_API_KEY=\"sk-...\"     # MiniMax — platform.minimaxi.com (Anthropic-compatible)\nexport NVIDIA_API_KEY=\"nvapi-...\"   # NIM    — build.nvidia.com\n\n# Web search (optional)\nexport TAVILY_API_KEY=\"tvly-...\"    # app.tavily.com\n```\n\nOr use `EvoSci config set` to persist keys in `~/.config/evoscientist/config.yaml`.\n\nAlternatively, copy the example `.env` file for project-level configuration:\n\n```bash\ncp .env.example .env  # then fill in your keys\n```\n\n\u003e ⚠️ Never commit `.env` files with real keys. It is already in `.gitignore`.\n\n\u003c/details\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## ⚡ Quick Start\n\n```bash\nEvoSci  # or EvoScientist — interactive mode (TUI by default)\n```\n\n![demo](https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/EvoScientist_cli.png)\n\n\u003e Run `EvoSci -h` for all CLI options.\n\n![cli help](https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/EvoScientist_cli_help.png)\n\n\u003e [!TIP]\n\u003e Need to copy long outputs? Use `--ui cli` for classic mode where native terminal copy works freely. On macOS, [iTerm2](https://iterm2.com/) users can also hold `⌥ Option` while dragging to select, then `⌘+C`.\n\n\u003cdetails\u003e\n\u003csummary\u003eCommon examples\u003c/summary\u003e\n\n```bash\nEvoSci                            # interactive mode (TUI by default)\nEvoSci -p \"your question\"        # single-shot mode\nEvoSci --workdir /path/to/project # open in a specific directory\nEvoSci -m run                     # isolated per-session workspace\nEvoSci --ui cli                   # classic CLI (lightweight)\nEvoSci serve                      # headless mode — channels only, no interactive prompt\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eAction Approval\u003c/summary\u003e\n\nBy default, shell commands (`execute` tool) require human approval before running. To skip approval prompts:\n\n```bash\n# Per-session: auto-approve via CLI flag\nEvoSci --auto-approve\nEvoSci -p \"query\" --auto-approve\n\n# Persistent: set in config (applies to all future sessions)\nEvoSci config set auto_approve true\n\n# Or allow only specific command prefixes\nEvoSci config set shell_allow_list \"python,pip,pytest,ruff,git\"\n```\n\nDuring a session you can also reply **3** (Approve all) at any approval prompt to auto-approve for the rest of that session.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eAgent Questions\u003c/summary\u003e\n\nThe agent can proactively ask you questions when it needs clarification (e.g., dataset choice, experiment direction). This is enabled by default. To disable:\n\n```bash\n# Persistent: set in config\nEvoSci config set enable_ask_user false\n\n# Re-enable\nEvoSci config set enable_ask_user true\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eIn-session commands\u003c/summary\u003e\n\n| Command | Description |\n| ------- | ----------- |\n| `/current` | Show current session info |\n| `/threads` | List recent sessions |\n| `/resume` | Resume a previous session |\n| `/delete` | Delete a saved session |\n| `/new` | Start a new session |\n| `/clear` | Clear chat history |\n| `/skills` | List installed skills |\n| `/install-skill \u003csrc\u003e` | Add a skill from path or GitHub |\n| `/uninstall-skill \u003cname\u003e` | Remove an installed skill |\n| `/mcp` | Manage MCP servers |\n| `/channel` | Configure messaging channels |\n| `/help` | Show available commands |\n| `/exit` | Quit |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eScript Inference\u003c/summary\u003e\n\n```python\nfrom EvoScientist import EvoScientist_agent\nfrom langchain_core.messages import HumanMessage\nfrom EvoScientist.utils import format_messages\n\nthread = {\"configurable\": {\"thread_id\": \"1\"}}\nlast_len = 0\n\nfor state in EvoScientist_agent.stream(\n    {\"messages\": [HumanMessage(content=\"Hi?\")]},\n    config=thread,\n    stream_mode=\"values\",\n):\n    msgs = state[\"messages\"]\n    if len(msgs) \u003e last_len:\n        format_messages(msgs[last_len:])\n        last_len = len(msgs)\n```\n\n\u003c/details\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 🍪 Examples \u0026 Recipes\n\nA curated collection of official examples, advanced usage patterns, and community-contributed recipes to help you get the most out of EvoScientist.\n\n👉 **[Browse all examples \u0026 recipes](docs/README.md)**\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 🔌 MCP Integration\n\nAdd external tools via [MCP](https://modelcontextprotocol.io/) servers with a single command:\n\n```bash\n# Usage\nEvoSci mcp add \u003cname\u003e \u003ccommand\u003e [-- args...]\n\n# Example\nEvoSci mcp add sequential-thinking npx -- -y @modelcontextprotocol/server-sequential-thinking\n```\n\n\u003e [!TIP]\n\u003e For command options, config fields, tool routing, wildcard filtering, and troubleshooting, see the **[MCP Integration Guide](https://github.com/EvoScientist/EvoScientist/tree/main/EvoScientist/mcp#model-context-protocol-integration)**.\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 📱 Channels\n\nConnect messaging platforms so they share the same agent session as the CLI:\n\n```bash\n# Usage\nEvoSci channel setup \u003cchannel\u003e\n\n# Example\nEvoSci channel setup telegram\n```\n\nMultiple channels can run concurrently — comma-separate names in the config:\n\n```yaml\nchannel_enabled: \"telegram,slack,feishu,qq\"\n```\n\nThe channel can also be started interactively with `/channel` in the CLI session.\n\n\u003e [!TIP]\n\u003e For per-channel setup guides, capability matrix, architecture details, and troubleshooting, see the **[Channel Integration Guide](https://github.com/EvoScientist/EvoScientist/tree/main/EvoScientist/channels#channels)**.\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 📚 Acknowledgments\n\nThis project builds upon the following outstanding open-source works:\n\n- [**LangChain**](https://github.com/langchain-ai/langchain) — A framework for building agents and LLM-powered applications.\n- [**DeepAgents**](https://github.com/langchain-ai/deepagents) — The batteries-included agent harness.\n\nWe thank the authors for their valuable contributions to the open-source community.\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 🎯 ᯓ➤ Roadmap\n\nComing soon:\n- [x] 🖥️ Full-screen TUI and classic CLI interfaces\n- [x] 📻 EvoMemory v1.0 shipped\n- [x] ⚒️ 200+ predefined skills built in\n- [x] 🧩 Built-in research-lifecycle skills shipped\n- [x] 👋 Human-in-the-loop action approval\n- [x] 🦾 Agent-initiated human clarification\n- [x] 📑 Technical report on the way\n- [x] 🔐 OAuth sign-in (CLI coding agent subscribers)\n- [ ] 📺 Web app with workspace UI\n- [ ] 📹 Demo and tutorial in the works\n- [ ] 📊 Benchmark suite to be released\n- [ ] ⏰ Scheduled tasks for the core system planned\n\nStay tuned — more features are on the way!\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 🌍 Project Roles\n\n#### Core Contributors\n\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003ca href=\"https://x-izhang.github.io/\"\u003e\n          \u003cimg src=\"https://x-izhang.github.io/author/xi-zhang/avatar_hu13660783057866068725.jpg\"\n               width=\"100\" height=\"100\"\n               style=\"object-fit: cover; border-radius: 20%;\" alt=\"Xi Zhang\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eXi Zhang\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003ca href=\"https://youganglyu.github.io/\"\u003e\n          \u003cimg src=\"https://youganglyu.github.io/images/profile.png\"\n               width=\"100\" height=\"100\"\n               style=\"object-fit: cover; border-radius: 20%;\" alt=\"Yougang Lyu\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eYougang Lyu\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003ca href=\"https://din0s.me/\"\u003e\n          \u003cimg src=\"https://din0s.me/images/pk.jpg\"\n               width=\"100\" height=\"100\"\n               style=\"object-fit: cover; border-radius: 20%;\" alt=\"Dinos Papakostas\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eDinos Papakostas\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003ca href=\"https://go0day.github.io/\"\u003e\n          \u003cimg src=\"https://go0day.github.io/authors/admin/avatar_hu_ee1051aceae96124.png\"\n               width=\"100\" height=\"100\"\n               style=\"object-fit: cover; border-radius: 20%;\" alt=\"Yuyue Zhao\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eYuyue Zhao\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003ca href=\"https://muxincg2004.github.io/\"\u003e\n          \u003cimg src=\"https://muxincg2004.github.io/resume_avatar.jpg\"\n               width=\"100\" height=\"100\"\n               style=\"object-fit: cover; border-radius: 20%;\" alt=\"Ziheng Zhang\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eZiheng Zhang\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003ca href=\"https://xiaohuiyan.github.io/\"\u003e\n          \u003cimg src=\"https://xiaohuiyan.github.io/img/me.jpg\"\n               width=\"100\" height=\"100\"\n               style=\"object-fit: cover; border-radius: 20%;\" alt=\"Xiaohui Yan\"/\u003e\n          \u003cbr /\u003e\n          \u003csub\u003e\u003cb\u003eXiaohui Yan\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n#### Contributors\n\nJan Piotrowski, Wiktor Cupiał, Jakub Kaliski, Jakub Filipiuk, Xinhao Yi, Shuyu Guo, Andreas Sauter, Wenxiang Hu, Jacopo Urbani, Zaiqiao Meng, Jun Luo, Lun Zhou\n\n\u003e \u003ca href=\"https://xiaoyi.huawei.com/chat/research\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/xiaoyi-deepresearch.webp\" height=\"16\" alt=\"Xiaoyi DeepResearch\" align=\"center\" /\u003e\u003c/a\u003e [*Xiaoyi DeepResearch*](https://xiaoyi.huawei.com/chat/research) *Team* and the wider open-source community contribute to this project.\n\nFor any inquiries or collaboration opportunities, please contact: [**EvoScientist.ai@gmail.com**](mailto:evoscientist.ai@gmail.com)\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 🤝 Contributing\n\n\u003cimg align=\"right\" alt=\"EvoScientist Team\" src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/EvoScientist_team.png\" width=\"20%\" /\u003e\n\nWe welcome contributions from developers, researchers, and AI coding agents at all levels. Our [Contributing Guidelines](./CONTRIBUTING.md) are designed for both humans and AI agents — covering architecture, patterns, extension guides, and code standards to help you contribute safely and effectively.\n\n### 👥 Community Contributors\n\n⚗️ Join the EvoScientist community to discuss AI-driven research, share experiment results, and help shape the future of automated scientific discovery.\n\n- [Discord](https://discord.gg/AZ9ZMXkunY) — Ask questions, share findings, and collaborate with researchers and developers in real-time.\n- [WeChat](https://github.com/EvoScientist/EvoScientist/blob/main/.github/assets/cn_info.md) — Connect with our Chinese-speaking research community.\n\n  \u003cimg src=\"https://raw.githubusercontent.com/EvoScientist/EvoScientist/main/.github/assets/wechat_group.jpeg\" alt=\"WeChat QR Code\" width=\"200\"/\u003e\n\nEvery contribution brings us one step closer to a future where AI accelerates scientific breakthroughs for all of humanity.\n\n\u003ca href=\"https://github.com/EvoScientist/EvoScientist/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=EvoScientist/EvoScientist\" /\u003e\n\u003c/a\u003e\n\n### 📈 Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=EvoScientist/EvoScientist\u0026type=date\u0026legend=bottom-right)](https://www.star-history.com/?repos=EvoScientist%2FEvoScientist\u0026type=date\u0026legend=bottom-right)\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 📝 Citation\n\nIf you find our paper and code useful in your research and applications, please cite using this BibTeX:\n\n```bibtex\n@article{evoscientist2026, \n  title={EvoScientist: Towards Multi-Agent Evolving AI Scientists for End-to-End Scientific Discovery}, \n  author={Yougang Lyu and Xi Zhang and Xinhao Yi and Yuyue Zhao and Shuyu Guo and Wenxiang Hu and Jan Piotrowski and Jakub Kaliski and Jacopo Urbani and Zaiqiao Meng and Lun Zhou and Xiaohui Yan}, \n  journal={arXiv preprint arXiv:2603.08127}, \n  year={2026} \n}\n```\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n\n## 📜 License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](./LICENSE) file for details.\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e🔝Back to top\u003c/a\u003e\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FEvoScientist%2FEvoScientist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FEvoScientist%2FEvoScientist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FEvoScientist%2FEvoScientist/lists"}