Skip to main content

Rxscientist: Towards Self-Evolving AI Scientists for End-to-End Scientific Discovery

Project description

RXscientist

RXscientist is a new project for end-to-end AI-assisted research execution. It provides a practical command-line research copilot that can plan tasks, call tools, run multi-step workflows, and keep long-term session memory for iterative scientific work.

What RXscientist does

  • Multi-agent workflow for planning, research, coding, analysis, and writing.
  • CLI and TUI interfaces for interactive local work.
  • MCP tool integration for extending external capabilities.
  • Multi-channel architecture (for example Telegram, Slack, Feishu, WeChat, Discord, QQ).
  • Persistent thread/session state to continue research over time.

Complete tutorial: download → configure → launch

Follow these steps once on a clean machine. PyPI package name: Rxscientist · CLI commands: rxsci / Rxscientist.

Step 1 — Prerequisites

Requirement Notes
Python 3.11+ (see requires-python in pyproject.toml).
Installer pip (bundled with Python) or uv (docs.astral.sh/uv).
Network Needed to install packages and call LLM / search APIs.
API key Default stack uses Anthropic (ANTHROPIC_API_KEY). Other providers need their own keys (see Step 3).

Check Python: python --version or py -3.12 --version on Windows.

Step 2 — Install the package (choose one path)

A — PyPI (simplest once a release exists)

pip install Rxscientist

Or with uv:

uv tool install Rxscientist

If PyPI returns package not found, use B–D until maintainers publish.

B — Install directly from Git (always up to date with main)

uv tool install "git+https://github.com/Ar1haraNaN7mI/RainyXscientist.git"

Pin a branch/tag if needed:

uv tool install "git+https://github.com/Ar1haraNaN7mI/RainyXscientist.git@main"

C — Clone and run in a dev environment

git clone https://github.com/Ar1haraNaN7mI/RainyXscientist.git
cd RainyXscientist
uv sync
uv run rxsci

After uv sync, activate .venv if you prefer and run rxsci from that environment.

D — Offline / air-gapped: wheel from GitHub Releases

  1. Open Releases and download Rxscientist-*-py3-none-any.whl (source .tar.gz is optional).
  2. Install with the Python you plan to use:
pip install /path/to/Rxscientist-0.0.10-py3-none-any.whl

Replace the filename with the asset you downloaded.

Step 3 — Configure API keys and defaults

Configuration priority (highest first): CLI flagsenvironment variablesconfig.yamlbuilt-in defaults.

Recommended first-time setup — interactive wizard

rxsci onboard

This walks you through API keys and basic options (you can skip validation flags if needed).

Environment variables

Set at least the key for your provider. Defaults in code target Anthropic unless you change provider / model in config.

Provider (examples) Typical variable
Anthropic (Claude) ANTHROPIC_API_KEY
OpenAI OPENAI_API_KEY
Google Gemini GOOGLE_API_KEY
Others See Rainscientist/config/settings.py mappings (*_API_KEY)

On Windows (PowerShell, current session):

$env:ANTHROPIC_API_KEY = "sk-ant-api03-..."

Config file

User-wide YAML (created on first save):

  • Windows: %USERPROFILE%\.config\Rxscientist\config.yaml
  • Linux / macOS: $XDG_CONFIG_HOME/Rxscientist/config.yaml or ~/.config/Rxscientist/config.yaml

Inspect or edit keys with:

rxsci config

.env files (loaded automatically when present)

Layers are merged; later layers override earlier ones for the same variable name:

  1. .env next to the repo’s pyproject.toml (so keys work even if your shell is not in the project folder).
  2. .env under the Rxscientist config directory (same folder as config.yaml).
  3. .env discovered from the current working directory (highest priority).

Example repo .env at the clone root:

ANTHROPIC_API_KEY=sk-ant-api03-...

Step 4 — Launch

Start the interactive UI (default may be TUI or CLI depending on config):

rxsci

Help and subcommands:

rxsci --help

If rxsci is not on PATH, call the module entry (same CLI):

python -m Rxscientist --help

On Windows, rxsci.exe usually lives under your Python or virtualenv Scripts directory — add that folder to PATH if the command is not found.

Step 5 — Verify and next steps

  • Send a short prompt; if you see credential errors, re-check Step 3 (wizard, env, YAML, .env).
  • Explore rxsci config, /help inside the UI (when available), and optional MCP tooling for external integrations.

中文简明步骤

  1. 安装 Python 3.11+,建议使用 pipuv
  2. 安装包:优先 pip install Rxscientist;若 PyPI 暂无包,使用上文 B/C/D(Git / 克隆 / Release wheel)。
  3. 配置密钥:运行 rxsci onboard,或设置环境变量(如 ANTHROPIC_API_KEY),或编辑 %USERPROFILE%\.config\Rxscientist\config.yaml(Windows),或在项目根 / 配置目录放置 .env
  4. 启动:执行 rxsci;若无命令,使用 python -m Rxscientist,并把 Python 的 Scripts 加入 PATH

Quick start (install then run)

Start the CLI with rxsci after installing the Rxscientist Python package (see pyproject.toml — PyPI name is Rxscientist, CLI commands are rxsci / Rxscientist).

Option A — From PyPI

After a release is published to PyPI:

pip install Rxscientist
rxsci
uv tool install Rxscientist
rxsci

If install fails with package not found, maintainers may not have uploaded yet — use Options B–D.

Option B — Install from Git (recommended if PyPI is empty)

uv tool install "git+https://github.com/Ar1haraNaN7mI/RainyXscientist.git"
rxsci

To pin a branch or tag:

uv tool install "git+https://github.com/Ar1haraNaN7mI/RainyXscientist.git@main"

Option C — Clone repository and run in a project environment

git clone https://github.com/Ar1haraNaN7mI/RainyXscientist.git
cd RainyXscientist
uv sync
uv run rxsci

After uv sync, you can also activate the virtualenv (.venv) and run rxsci directly.

Option D — Install from GitHub Release wheel (offline-friendly)

Each push to main publishes wheel / sdist assets under Releases. There is no standalone .exe in those assets (they are Python packages).

  1. Open the latest Release and download Rxscientist-*-py3-none-any.whl (and optionally the .tar.gz source distribution).
  2. Install with pip (use the same Python where you want rxsci):
pip install "C:\path\to\Rxscientist-0.0.10-py3-none-any.whl"
rxsci

Replace the path and version string with the file you actually downloaded.

Publishing to PyPI (maintainers)

This repo includes .github/workflows/publish-pypi.yml. One-time setup:

  1. Create accounts on pypi.org (and optionally test.pypi.org for trials).
  2. Confirm the project name Rxscientist is available on PyPI (change [project] name in pyproject.toml if it is taken).
  3. On PyPI → PublishingAdd a new pending publisher → choose GitHub → organization/user Ar1haraNaN7mI, repository RainyXscientist, workflow publish-pypi.yml, PyPI project Rxscientist (must match pyproject.toml).
  4. Bump version in pyproject.toml, commit, create and push an annotated tag vX.Y.Z matching that version (example: version 0.0.10 → tag v0.0.10). The workflow runs uv build and uploads dist/* to PyPI.

Manual upload (API token):

uv build
uv publish --token <pypi-api-token>

Use a token with Entire account or Project-scoped upload scope from PyPI account settings (do not commit tokens).


中文:下载与启动说明(Windows)

更系统的「下载 → 配置 → 启动」全流程见前文 Complete tutorial: download → configure → launch(含中英文摘要);本节补充 Windows 常见问题与路径。

PyPI 安装(推荐,在维护者已上传之后)

pip install Rxscientist
rxsci

为什么有时会提示找不到包?

  • 尚未上传到 PyPI:会提示 was not found in the package registry,请先使用下面的 Git / Release / 源码 方式。
  • 包名:PyPI 上的分发名为 Rxscientist(区分大小写以索引为准);安装后终端命令仍为 rxsci

本项目有没有官方 .exe

  • GitHub Actions 当前只构建并上传 .whl / .tar.gz不提供一键绿色版 .exe
  • 启动方式是安装 Python 包后使用控制台命令 rxsci(安装脚本会在 Python 的 Scripts 目录生成 rxsci.exe)。

Windows 推荐流程

1)已安装 Python 3.11+ 与 uv

在 PowerShell 或 CMD 中:

uv tool install "git+https://github.com/Ar1haraNaN7mI/RainyXscientist.git"
rxsci

若提示找不到 rxsci,请将 uv 安装的 tools 目录加入 PATH,或使用 Python 模块方式:

python -m Rxscientist

(与控制台脚本 rxsci 等价,均调用同一 CLI 入口。)

2)下载 Release 里的 wheel 再安装

  1. 打开:https://github.com/Ar1haraNaN7mI/RainyXscientist/releases
  2. 在最新 Release 的 Assets 中下载 Rxscientist-*-py3-none-any.whl
  3. 在下载目录执行(版本号按文件名修改):
py -3.12 -m pip install .\Rxscientist-0.0.10-py3-none-any.whl
rxsci

若仍找不到命令,直接使用模块入口:

py -3.12 -m Rxscientist --help

安装成功后,rxsci 一般位于:

%LOCALAPPDATA%\Programs\Python\Python3xx\Scripts\rxsci.exe

或当前虚拟环境的:

.venv\Scripts\rxsci.exe

把对应 Scripts 目录 加入系统 PATH,即可在任意目录运行 rxsci

3)克隆源码开发/本地运行

git clone https://github.com/Ar1haraNaN7mI/RainyXscientist.git
cd RainyXscientist
uv sync
uv run rxsci

自行打包成独立 .exe(可选)

仓库未内置官方单文件 exe。若需要分发无 Python 环境的机器,可自行使用 PyInstaller 等对入口 Rainscientist.cli:main(包名 rxsci)打包;需在本地解决依赖与体积问题,此处不展开。

维护者:如何把项目上传到 PyPI?

  1. 账号:在 pypi.org 注册并完成邮箱验证。
  2. 项目名:打开 https://pypi.org/project/Rxscientist/ ,若已被占用需在 pyproject.toml 里修改 [project] name(例如换成唯一名称)。
  3. 可信发布(推荐,无需把 token 放进仓库)
    • PyPI:Account settings → Publishing → Add pending publisher
    • 选择 GitHub:Owner Ar1haraNaN7mIRepository RainyXscientistWorkflow publish-pypi.ymlPyPI project name Rxscientist(须与 pyproject.toml 一致)。
    • 详见官方说明:https://docs.pypi.org/trusted-publishers/
  4. 发版:在 pyproject.toml 里提高 version,提交后打标签 v + 语义化版本号(例如版本 0.0.10 → 标签 v0.0.10),推送标签将触发 .github/workflows/publish-pypi.yml,自动 uv build 并上传到 PyPI。
    也可在 GitHub Actions → Publish PyPI → Run workflow 手动运行(同样需要已配置可信发布)。
  5. 本地用令牌上传(备用):在 PyPI 账户设置里创建 API token,切勿提交到 Git:
uv build
uv publish --token <粘贴token>

同一版本号不能重复上传;每次发布前务必 递增 version


Why this project

RXscientist focuses on turning fragmented prompts into a repeatable research loop: question intake, task decomposition, evidence collection, implementation, review, and refinement. The goal is to make one local agent runtime usable for both exploratory research and engineering-heavy scientific tasks.

Project status

This repository is being positioned as the new RXscientist project. Documentation and examples are intentionally being simplified and refreshed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rxscientist-0.0.10.tar.gz (497.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rxscientist-0.0.10-py3-none-any.whl (441.6 kB view details)

Uploaded Python 3

File details

Details for the file rxscientist-0.0.10.tar.gz.

File metadata

  • Download URL: rxscientist-0.0.10.tar.gz
  • Upload date:
  • Size: 497.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxscientist-0.0.10.tar.gz
Algorithm Hash digest
SHA256 b82eac028603581e46ed1217fbf5790d430164a2283223587591d084c504ba93
MD5 da70f8a0b21004ab1928ecd8f57ad758
BLAKE2b-256 2d7381675267d38c02103dcb38730b987f6ed47b8ad11c02c4a000bfd04c559b

See more details on using hashes here.

Provenance

The following attestation bundles were made for rxscientist-0.0.10.tar.gz:

Publisher: publish-pypi.yml on Ar1haraNaN7mI/RainyXscientist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rxscientist-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: rxscientist-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 441.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxscientist-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 37135426a37856584e0d837dd5de06f5b21f92e4855efd147068e9f056f148f2
MD5 2cb31e2eafaf28b9dbfa171606219330
BLAKE2b-256 5de4a18895540a0777f662bde69f04f18c6694bdf4bbe3c3f9ac9171f5b2239e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rxscientist-0.0.10-py3-none-any.whl:

Publisher: publish-pypi.yml on Ar1haraNaN7mI/RainyXscientist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page