Skip to main content

HelioAI

AI agent for heliophysics and space plasma data analysis.

Ask questions in natural language — HelioAI finds the right parameter across 70+ missions, downloads it, runs the analysis, and produces reproducible plots and notebooks.

CI codecov PyPI PyHC License: MIT Python

📖 Documentation · listed in the PyHC Project List


What it does

You:      "IP shock in WIND data, January 2005 — compute θ_Bn"

HelioAI:  → resolves param IDs for B, Vp, Np across 83k speasy products
          → downloads the time series via speasy (AMDA / CDAWeb / CSA)
          → runs shock detection + coplanarity theorem in a sandboxed Python env
          → returns a plot, the θ_Bn value, and a reproducible .ipynb notebook

Data access needs no API key. Parameter hunting is the agent's job, not yours.

The HelioAI web UI running a real session: the question, the resolved parameter card for cda/WI_H0_MFI/B3F1, the plotted magnetic field magnitude with the shock arrival marked, the activity log of every tool call, and the generated Python in the code panel

A real session, unedited — only the waiting between turns is compressed. The activity log lists every tool call and ends with a provenance verdict; the code panel holds the exact Python that produced the figure, which is also what the session exports as a runnable notebook.


Why it's different

  • It finds the parameter. Hybrid RAG — semantic (MiniLM) + lexical (BM25), fused by Reciprocal Rank Fusion — over 83 000 speasy products. Handles both vague descriptions and exact codes (BGSEc, FGM, igrf_8sec_gse).
  • It works on events, not just intervals. 217 curated AMDA catalogs (ICMEs, bow-shock crossings, substorms, reconnection events) are first-class tools — download a parameter across every event in one call.
  • The result is reproducible. Every session exports to a self-contained .ipynb that re-runs in a plain Jupyter kernel, with a Methods & data acknowledgements cell listing the recipes and references used.
  • It shows its work. A provenance ledger checks the numbers in the answer against what was actually computed, and 11 vetted recipes (θ_Bn, Walén, MVAB, Rankine-Hugoniot, …) each carry a citation.
  • It runs inside the agent you already use. HelioAI is also an MCP server, so Claude Code, Claude Desktop or Codex can call its tools with no LLM key of its own.

Full feature list in the documentation.


Install

pip install helioai-agent
helioai index          # one-time, ~10 min — indexes 83k products into a local ChromaDB

Then set one LLM provider key (opencode, groq, gemini, azure or ollama — the OpenCode Zen gateway serves reasoning models behind a single key, and the model name is required since there is no sensible default):

export HELIOAI_LLM_PROVIDER=opencode
export OPENCODE_API_KEY=...
export HELIOAI_OPENCODE_MODEL=deepseek-v4-pro

→ Full installation and configuration guide


Use it

helioai                       # interactive CLI
helioai "θ_Bn for the 2005-01-16 WIND shock"      # one-shot
helioai serve --web           # web UI on http://localhost:7890
helioai mcp-install           # wire it into Claude Code, Claude Desktop or Codex

In Jupyter:

%load_ext helioai.interfaces.jupyter_magic
%%helioai
Download Bz from ACE for the 2003 Halloween storm and plot the sudden commencement.

→ All four interfaces, in detail


Data coverage

Provider Missions (examples) Parameters
AMDA (CDPP) Cluster, MMS, Solar Orbiter, WIND, ACE, Cassini, Helios, STEREO ~12k
CDAWeb (NASA) MMS, THEMIS, Van Allen Probes, Parker Solar Probe, Ulysses, Voyager ~68k
CSA (ESA) Cluster, Double Star, Solar Orbiter, Mars Express ~1.9k

Plus 217 AMDA event catalogs and timetables. Ask helioai "what missions are available" or helioai "what event catalogs are available" for the live list.


Documentation

Quickstart First session, end to end
Interfaces CLI · Jupyter · web UI · MCP
Agent tools The 17 tools and 4 sub-agents
Recipes and provenance The 11 vetted scientific scripts
Reproducible export How a session becomes a notebook
Architecture For contributors

Contributing

Issues and pull requests are welcome — see CONTRIBUTING.md and SECURITY.md (the sandbox model matters if you touch run_python).

uv sync --extra dev
.venv/bin/python -m pytest      # 992 tests, 82% coverage, no exclusions
.venv/bin/python -m ruff check . && .venv/bin/python -m ruff format --check .

License

MIT — see LICENSE.

  • speasy — the data access layer powering HelioAI
  • PlasmaPy — plasma physics calculations
  • PyHC — Python in Heliophysics Community

Metadata

Release files for helioai-agent 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for helioai-agent 0.3.0
File Size Uploaded
helioai_agent-0.3.0.tar.gz 1.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for helioai-agent 0.3.0
File Interpreter ABI Platform
helioai_agent-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / helioai_agent-0.3.0.tar.gz

Download URL helioai_agent-0.3.0.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
bbb0366863eafa2d6b2f6f2be87ff9568cf738b793b3a3208f53ce6818000428
BLAKE2b-256 checksum
How to use checksums
99eee90743112fdbe12393649f9dfd6136aa07128bad59fe435e8396fd65238a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / helioai_agent-0.3.0-py3-none-any.whl

Download URL helioai_agent-0.3.0-py3-none-any.whl
Size 283.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
47de0b615d5b463f332c522f82765f474700b388f51710e48c0981eaad5123fc
BLAKE2b-256 checksum
How to use checksums
eb2e582613bcbb0bd3741fdd36ecc0483f0005b66f0b2409a3badefd32cc3a5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.0

2 release files

This release

0.3.0 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page