Skip to content

OpenAI4S v0.1.0

Latest

Choose a tag to compare

@Nobody-Zhang Nobody-Zhang released this 15 Jul 16:55
c25f022

OpenAI4S v0.1.0 — Initial Public Release

OpenAI4S is an open-source hybrid scientific research agent. It combines provider-native JSON tools for orchestration and permission control with persistent Python/R Code-as-Action kernels for real scientific computation.

This is the first tagged public release of OpenAI4S.

Highlights

  • Hybrid agent architecture — native JSON tools handle workflow control, permissions, metadata, and external services, while Python/R cells handle computation, analysis, and simulation.
  • Persistent scientific kernels — Python and R environments start lazily and retain state across cells. Python supports synchronous in-cell calls to the audited host API.
  • Scientific workbench — live streaming sessions, Action Timeline, versioned artifacts, data provenance, a read-only-by-default Notebook, checkpoint and revert controls, session branching, recovery actions, and notebook export. (Some workbench controls — branch fork/undo/navigation and full recovery execution — are still experimental in this early release.)
  • Batteries-included macOS app — an ad-hoc-signed (not notarized) app packaged in a .dmg for Apple Silicon that embeds its own Python and the default kernel science stack (NumPy, pandas, SciPy, matplotlib, scikit-learn, RDKit, scanpy and the single-cell stack, numba, biopython, …). Drag it to Applications and launch — no toolchain, no pip, no network needed for the common cheminformatics / single-cell / dataframe workflows.
  • 32 bundled Skills — covering protein structure and design (AlphaFold2, ESMFold, OpenFold3, Boltz, Chai-1, ProteinMPNN/LigandMPNN, protein mutation), genomics (Evo2, Borzoi), single-cell analysis (scVI, scGPT), molecular docking (DiffDock), retrosynthesis, ADMET genetic optimization, mineral spectra analysis, literature research, scientific figures, and more.
  • Multi-provider LLM support — OpenAI-compatible Chat/Responses, Anthropic Messages, Gemini, and Ark-hosted model profiles behind a unified interface.
  • Local model support — an explicit, read-only scan discovers keyless Ollama, LM Studio, vLLM, and llama.cpp servers on their loopback OpenAI-compatible endpoints and suggests a model profile you can select to run; the scan never changes your active model on its own. Undeclared local capabilities default to the conservative Code-as-Action path.
  • BYOC remote compute — submit GPU workloads through SSH or NVIDIA NIM and run guarded protein-folding workflows with host.fold.
  • Zero-dependency core — the agent engine, LLM client, and web server use only the Python standard library. NumPy, pandas, and matplotlib remain optional for a pip install (the macOS app bundles them for you).
  • Defense-in-depth execution — strict child-environment allowlists, durable approvals, generation-bound shell capabilities, audit records, egress controls, a DNS-rebinding-resistant Host allowlist, and Seatbelt/bubblewrap sandbox adapters.

Quick start

macOS (Apple Silicon) — no toolchain required

Download OpenAI4S-0.1.0-macos-arm64.dmg from this release, drag OpenAI4S.app onto Applications, and launch.

The build is ad-hoc signed but not notarized (no paid Apple Developer identity), so Gatekeeper warns on first launch:

  • macOS 15+: open it once, then allow it under System Settings → Privacy & Security → Open Anyway.
  • macOS 12–14: right-click the app → OpenOpen.
  • Either: xattr -dr com.apple.quarantine /Applications/OpenAI4S.app

Launching opens http://127.0.0.1:8760/ — configure a model under Customize → Models. No API key is required simply to start the application. The command line ships inside the app; symlink it if you want openai4s on your PATH:

sudo ln -sf /Applications/OpenAI4S.app/Contents/Resources/runtime/bin/openai4s /usr/local/bin/openai4s

The R kernel is not bundled (it needs a conda environment). To add it, install micromamba/mamba/conda, then run openai4s setup.

From source (any platform)

OpenAI4S requires Python 3.10+ and uv.

git clone https://github.com/PKU-YuanGroup/OpenAI4S
cd OpenAI4S
./setup.sh
./start.sh

Open http://127.0.0.1:8760/ and configure a model under Customize → Models. No API key is required simply to start the application.

From PyPI

pip install openai4s
openai4s serve

One-shot CLI task

uv run openai4s run \
  "Compute the mean of [4,8,15,16,23,42] and submit it." -v

Using a local Ollama model

OpenAI4S scans Ollama's default loopback endpoint from Customize → Models → Local inference servers. Select a discovered model, add its profile, and make it active.

Alternatively, configure Ollama through environment variables:

OPENAI4S_LLM_PROVIDER=chatgpt
OPENAI4S_LLM_BASE_URL=http://127.0.0.1:11434/v1
OPENAI4S_LLM_MODEL=qwen3:8b

A loopback Ollama endpoint does not require an API key. Automatic discovery confirms OpenAI wire compatibility only, so provider-native JSON tool calling, vision, and reasoning capabilities remain disabled until explicitly declared. The model can still use the conservative Code-as-Action execution path.

Assets

Asset Description
OpenAI4S-0.1.0-macos-arm64.dmg Self-contained macOS app (Apple Silicon): embedded Python + the default science stack, incl. RDKit and the single-cell tools.
openai4s-0.1.0-py3-none-any.whl Platform-independent wheel; the core is zero-dependency.
openai4s-0.1.0.tar.gz Source distribution.
SHA256SUMS Checksums for every asset above. Verify with shasum -a 256 -c SHA256SUMS --ignore-missing.

Known limitations

  • OpenAI4S v0.1.0 is an early release; APIs, storage schemas, and UI behavior may evolve.
  • The macOS app is Apple Silicon only and bundles Python only. Intel Macs and Linux should install from PyPI or from source; the R kernel and conda-only bioinformatics tools (e.g. mafft/iqtree) are added by openai4s setup.
  • Workspace files and artifacts persist across kernel restarts, but arbitrary in-memory Python/R objects are not serialized. Recovery can therefore report Partial unless a verified recipe can rebuild the required state.
  • The R kernel is an independent analysis channel and does not currently expose Python-style mid-cell Host RPC.
  • The optional Jupyter adapter uses an independent namespace and does not share Web-session Host RPC, artifacts, or recovery state.
  • Live model, network, GPU, SSH, and laboratory workflows require external credentials or hardware and are not exercised by the default offline test suite.
  • The web server binds to loopback by default. Use an SSH tunnel for remote access instead of exposing it directly on an untrusted network.

License

OpenAI4S is released under the MIT License.

Thanks to everyone who contributed code, documentation, scientific workflows, testing, and feedback to this first release.