Helionyx

io.github.Jayzilvav0.3.0更新於 Oct 7, 2026

Size hybrid solar PV, wind, battery, diesel and grid systems: hourly simulation, NPC ranking.

已驗證STDIO僅桌面Developer ToolsData & Analytics

概覽

AI 產生的概覽

透過全年逐小時模擬與淨現值排序,為太陽光電、風電、電池、柴油與電網混合能源系統選型。

功能
Helionyx 執行一套技術經濟選型流程:註冊場址,取得或匯入逐小時的日照、溫度與風速資源資料,產生或匯入負載曲線,套用版本化電價,再對候選方案進行全年逐小時模擬。它會剔除違反限制條件的方案,並依淨現值排序其餘方案,同時給出回收期、均化發電成本、電費與排放。約 22 個工具涵蓋情境建立與驗證、非同步最佳化工作、帕雷托前緣、敏感度掃描、執行結果比較、月度摘要,以及 Markdown 或 Excel 報告匯出。
適用情境
適合預可行性研究、客戶提案、偏鄉電氣化規劃、教學,以及與其他選型工具(如 HOMER、REopt、MicroGridsPy 或 SAMA)的結果交叉比對。適用於併網、離網與柴油混合情境,這類問題中一組排序後的候選方案比單一答案更有用。
執行需求
以 stdio 在本機執行,通常透過 uvx 或 pip install 安裝,需要 Python 3.11-3.13。選用環境變數:HNX_WORKSPACE 指定工作區目錄,HNX_OFFLINE 僅使用快取與內建資料,HNX_REOPT_API_KEY 用於 REopt 交叉比對求解器。除非啟用離線模式,否則需要網路存取以取得 NASA POWER 與 PVGIS 資源資料。
安裝前請注意
結果屬於預可行性估算;內建的斯里蘭卡電價、成本、燃料價格、折現率與排放係數被說明為未經驗證的佔位資料,不應據此做真實決策。REopt 交叉比對會把負載資料送出本機,並需要 HNX_REOPT_API_KEY。伺服器會寫入工作區資料庫、產出物與匯出檔案,HTTP 模式下的 HNX_API_KEY 僅為開發級保護。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Helionyx,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[Helionyx: open-source hybrid renewable energy sizing for AI assistants. 8,760 hours simulated per design, search spaces of up to 50 million candidates, 22 MCP tools, 5 solvers.]

[PyPI version] [MCP Registry: io.github.Jayzilva/helionyx] [Python 3.11 to 3.13] [Apache 2.0 licence]

Helionyx

Size hybrid energy systems by talking to your AI assistant. Helionyx is an open-source Model Context Protocol (MCP) server that sizes solar PV, wind, battery storage, diesel generator and grid-connected systems. It runs the classic techno-economic workflow:

  1. simulate every candidate design hour by hour for a full year;
  2. discard designs that break your constraints;
  3. rank the rest by net present cost (NPC), with payback, LCOE, bills and emissions.

[How a run works: describe the site, load and tariff; simulate every candidate for 8,760 hours; filter out designs that break constraints; rank the rest by NPC and explain them with a run ID.]

The assistant never invents numbers. It asks scoping questions, calls deterministic tools and explains the results; every figure comes from a solver run with a run ID that anyone can reproduce. Use it for pre-feasibility studies, client proposals, rural electrification planning, teaching and cross-checking other tools.

Why Helionyx

  • Grounded answers: the solver produces every number; the assistant only explains them.
  • Complete method: hourly dispatch (load following, cycle charging, TOU grid strategy), life-cycle economics, tariffs with TOU, demand charges and export schemes, grid outages.
  • Beyond a single answer: sensitivity grids, Pareto trade-offs between cost, CO₂ and reliability, multi-year load growth with staged expansion.
  • Cross-checked: compare against REopt, MicroGridsPy and SAMA from the same scenario.
  • Open and local: Apache-2.0, runs on your machine, works offline with bundled data, exports HOMER-ready time series and Excel reports.

Get started

Pick the way you use AI tools. Each one takes about a minute.

[Three ways to install: Claude Code with one command, Claude Desktop with a one-click bundle, or any MCP client with uvx helionyx serve. Then ask for a design.]

ClientInstall
Claude Codeclaude mcp add helionyx -- uvx helionyx serve
Claude DesktopDownload helionyx-…-claude-desktop.mcpb from the latest release and open it
Smitherysmithery.ai/servers/gitdevjay/helionyx
Any MCP client (stdio)Command uvx, arguments helionyx serve (uv required)
Pythonpip install helionyx, then helionyx serve

Then ask, for example:

Size a PV and battery system for a 60-room hotel in Negombo on the CEB hotel tariff. We have about 1,200 m² of usable roof.

The quickstart walks through a first study in under ten minutes.

Where to find Helionyx

WhereLink
Source code and releasesgithub.com/Jayzilva/helionyx · releases
PyPIpypi.org/project/helionyx
Smitherysmithery.ai/servers/gitdevjay/helionyx
Official MCP Registryio.github.Jayzilva/helionyx (registry entry, JSON)

Data and accuracy

Helionyx ships with a Sri Lankan country pack (lk): CEB and LECO tariff structures and export schemes, weather alignment to Asia/Colombo time, grid outage patterns and load archetypes for Sri Lankan buildings. The engine itself is country-agnostic; new countries are added as data packs (data-pack guide).

The tariff rates, component costs, fuel price, discount rates and emission factors in the lk pack are unverified placeholders. Use results to learn the tool and to compare options, not for real decisions, until the data is verified. validate_scenario raises warning HNX-W001 for every unverified tariff. See the disclaimer.

Releases and changes are listed in the changelog. Hosted mode with Microsoft Entra ID sign-in and OpenTelemetry monitoring are in development for 1.0.

Architecture

mermaid
flowchart LR    U([User]) <--> C["MCP client<br/>Claude Code · Claude Desktop<br/>Copilot Studio · custom agent"]    C <-->|"stdio or<br/>Streamable HTTP"| S
    subgraph H["Helionyx (local-first, deterministic)"]        S["MCP server<br/>22 tools · 9 resources · 6 prompts"]        S --> SV["Services<br/>scenario · run · sensitivity · results · export"]        SV --> K["Engine<br/>Numba dispatch kernel · pvlib · economics · billing"]        SV --> ST[("SQLite metadata<br/>Parquet artefacts")]        SV --> P["Country packs<br/>tariffs · components · archetypes"]    end
    SV -.->|"HTTPS, cached"| W["NASA POWER · PVGIS"]    SV -.->|"cross-check"| R["REopt v3 API"]    SV -.->|"JSON subprocess"| X["helionyx-microgridspy (EUPL)<br/>helionyx-sama (AGPL)"]

The server never calls an LLM. Copyleft solvers run as separate processes, so the core stays Apache-2.0.

A sizing conversation

mermaid
sequenceDiagram    autonumber    actor User    participant AI as AI assistant    participant HX as Helionyx tools    User->>AI: "Size PV and a battery for my 60-room hotel in Negombo"    AI->>HX: create_site, fetch_resource, synthesize_load    AI->>HX: list_tariffs, compute_bill (baseline)    AI->>HX: create_scenario, validate_scenario    HX-->>AI: assumptions and warnings    AI->>User: confirm assumptions?    User->>AI: yes    AI->>HX: run_optimization → get_job_status    AI->>HX: get_results, explain_run, get_monthly_summary    HX-->>AI: ranked designs, NPC, bills, run ID    AI->>User: top three designs, every number cited to the run

Solvers

SolverMethodUse it forLicence and install
nativeFull enumeration, 8,760-hour dispatchThe default; exact optimum of the search spaceBuilt in
heuristicSeeded multi-start pattern searchSpaces above the enumeration limit: up to 50 million candidates, sampled within a budget of 50 to 50,000 evaluations (default 4,000)Built in
reoptMILP with perfect foresight (NREL REopt v3)Cross-checking grid-connected designsAPI key; load leaves the machine
microgridspyLP with HiGHSCross-checking off-grid designshelionyx-microgridspy, EUPL-1.2
samaParticle swarmCross-checking off-grid designshelionyx-sama, AGPL-3.0

compare_runs puts the results side by side. Multi-year scenarios run on native and heuristic only.

Multi-year analysis

[Illustration: peak load grows 3 percent a year over 20 years; the initial system is expanded with 50 kWp PV and 150 kWh battery at the start of year 10. Helionyx simulates sample years and interpolates between them.]

Add multi_year to a scenario to grow the load and search a staged investment:

yaml
multi_year:  load_growth_rate: 0.03        # year y load = year-1 load × 1.03^(y−1)  sample_every_years: 5         # plus each stage boundary and the last year  expansion:    - year: 10      pv_add_kwp: [0, 50, 100]      bess_add_kwh: [0, 150]

The expansion sizes become extra search axes. Stage capital enters the cash flow in its year, with its own replacements and salvage, and reliability constraints must hold in every sampled year. Each candidate reports its sampled years under multi_year.years. See the methodology (decision D20).

Features

  • Resource data: hourly GHI, temperature and wind from NASA POWER (and PVGIS where covered), CSV import, on-disk caching, offline mode, UTC → local civil time alignment, leap-day removal and gap filling. NASA POWER 2023 data for three Sri Lankan sites is bundled, so the reference cases run offline.
  • Load profiles: 11 synthetic archetypes, random variability with a seed, calibration to 12 monthly bills, composite loads and measured-load import (15/30/60-minute).
  • Tariffs and bills: versioned YAML tariffs with flat, block and TOU energy charges, fixed, demand and minimum charges, levies, and the net metering, net accounting and net plus export schemes.
  • Scenario builder: defaults from the country pack, a full assumption audit (origin, source and date for every value), validation rules, SHA-256 scenario hashes, versioning and YAML round-trips. Scheduled and random grid outages.
  • Simulation and optimisation: an 8,760-hour dispatch kernel in Numba (PV via pvlib, wind power curves, idealised battery, diesel genset with load-following or cycle-charging, grid-connected TOU strategy), parallel enumerative search, HOMER-style economics (NPC, LCOE, replacements, salvage, payback, IRR) and emissions.
  • Search: full enumeration, or a seeded heuristic pattern search for spaces of up to 50 million candidates; Pareto front of NPC, CO₂ and capacity shortage.
  • Multi-year analysis: annual load growth and up to three capacity-expansion stages, searched together with the initial system and costed year by year.
  • Sensitivity: one-variable sweeps and two-variable grids with re-optimisation, optimal architecture per case and NPC elasticities.
  • Grounded explanations: structured cost breakdowns, cost drivers, binding constraints, dispatch statistics and comparisons, with provenance and a disclaimer on every result.
  • Exports: HOMER-importable series plus a parameter sheet, Markdown and Excel reports, hourly time series and scenario YAML.
  • Cross-check solvers compared with compare_runs: REopt v3 (API key), and MicroGridsPy and SAMA as separately licensed add-on packages (see docs/adapters.md).
  • HOMER parity kit: protocol, results template and helionyx parity compare.
  • Claude skill and MCP prompts for guided workflows, plus a grounding checker.

Install from source

For development (Python 3.11–3.13):

bash
git clone https://github.com/Jayzilva/helionyx.gitcd helionyxuv venvuv pip install -e ".[dev]"      # or: python -m venv .venv, then pip install -e ".[dev]"

See CONTRIBUTING for the checks to run before a pull request.

Command-line quickstart

Run a reference case from the command line (works offline):

bash
helionyx run reference_cases/rc2_hotel_negombo.yaml

This sizes PV and battery for a 60-room hotel in Negombo on the CEB hotel TOU tariff and prints the five lowest-NPC designs with the grid-only base case. The first run takes a little longer while Numba compiles the dispatch kernel.

See docs/quickstart.md for a full walk-through.

Connect to an AI assistant

Claude Code

bash
claude mcp add helionyx -- uvx helionyx serve

Claude Desktop

Download the .mcpb bundle from the latest release and open it; Claude Desktop installs Helionyx and asks for the optional settings (workspace folder, offline mode, REopt API key). Or add this to claude_desktop_config.json:

json
{  "mcpServers": {    "helionyx": {      "command": "uvx",      "args": ["helionyx", "serve"]    }  }}

Streamable HTTP (local testing only)

bash
helionyx serve --transport http --port 8080

This serves MCP at http://127.0.0.1:8080/mcp and a health check at /healthz. Set HNX_API_KEY to require Authorization: Bearer <key> (development-grade protection; the CLI refuses a non-local bind without it). OAuth 2.1 with Microsoft Entra ID arrives with hosted mode in v1.0.

Claude skill

Copy the skill so Claude follows the Helionyx workflow and grounding rules:

bash
cp -r skills/helionyx ~/.claude/skills/

Clients without skill support can use the MCP prompts listed below instead. See docs/skill-guide.md.

MCP tools

#ToolPurpose
1create_siteRegister a site (location, time zone, country pack)
2fetch_resourceHourly GHI, temperature and wind from NASA POWER or PVGIS, aligned to local time
3import_timeseriesImport a measured load or resource series from CSV; extend 4+ weeks of load to a year
4synthesize_loadBuild a load from archetypes, optionally calibrated to monthly bills
5list_tariffsBrowse the tariff pack
6get_tariffTariff charges, TOU periods, export schemes and staleness warnings
7compute_billBaseline bill for a load, or a bill for import/export series
8list_componentsBrowse the component library
9create_scenarioCombine all inputs and the search space into a scenario
10validate_scenarioErrors, warnings and the full assumption audit
11run_optimizationStart an asynchronous job: native (enumeration), heuristic, reopt, microgridspy or sama
12get_job_statusPoll a job (state, progress, ETA, run ID)
13cancel_jobCancel a job
14get_resultsRanked designs, base case, search method, provenance and disclaimer
14bget_pareto_frontNon-dominated designs over NPC, CO₂ and capacity shortage
15explain_runStructured explanation of one design
16get_monthly_summaryMonthly energy flows and bills before and after
17run_sensitivityOne-variable sweep or two-variable grid with re-optimisation (asynchronous)
18get_sensitivity_resultsOptimal design per value and NPC elasticity
19compare_runsSide-by-side comparison of runs (for example native vs REopt)
20export_homer_csvHOMER-importable series and parameter sheet
21export_reportClient report in Markdown or Excel

run_optimization, run_sensitivity and get_job_status accept wait_seconds (0–20). With 0 they return immediately; otherwise they wait and send progress notifications.

Resources

URIContent
hnx://packs/{country}/tariffs/{tariff_id}Tariff definition (JSON)
hnx://packs/{country}/components/{type}Component library entries (JSON)
hnx://packs/{country}/archetypes/{archetype}Load archetype definition (JSON)
hnx://datasets/{dataset_id}.csvHourly resource or load series
hnx://scenarios/{scenario_id}Canonical resolved scenario (JSON)
hnx://runs/{run_id}/results.csvEvery candidate with sizes, metrics and feasibility
hnx://runs/{run_id}/candidates/{rank}/timeseries.csvHourly flows of a candidate
hnx://runs/{run_id}/report.mdGenerated report
hnx://docs/methodologyEquations and documented differences from HOMER

Prompts

PromptPurpose
size_cni_rooftop_touCommercial or industrial rooftop PV + battery under a TOU tariff
size_offgrid_villageOff-grid village microgrid
diesel_replacement_islandHybridise an existing diesel system
explain_for_clientGrounded explanation for a technical or executive audience
homer_crosscheckGuided export to HOMER Pro and a comparison checklist
teach_meTutoring with small worked runs

Command-line interface

CommandPurpose
helionyx serve [--transport stdio|http] [--host] [--port]Start the MCP server
helionyx run <study.yaml> [--solver native] [--top 5] [--sort-by npc]Run a study or scenario file
helionyx results <run_id> [--top 10]Print results
helionyx export homer <scenario_id> <dir>Write HOMER files
helionyx export report <run_id> [--format md] [--output path]Write a report
helionyx pack validate <path>Validate a data pack
helionyx pack build <path> <out_dir>Build a release archive and checksum manifest (maintainers)
helionyx pack update [--country lk] [--manifest URL]Install a newer, checksum-verified pack release
helionyx parity compare <homer.csv> [--output report.md]Compare HOMER Pro results with Helionyx on RC-1…RC-3
helionyx eval grounding <transcripts_dir> [--threshold 0.95]Run the grounding checker
helionyx versionPrint the version

Configuration

Copy .env.example or set these environment variables:

VariableDefaultMeaning
HNX_WORKSPACE~/.helionyxWorkspace for the database, artefacts, cache and exports. File paths outside it are rejected.
HNX_OFFLINE01 uses only cached and bundled data; no network calls
HNX_MAX_JOBS2Maximum concurrent jobs per user
HNX_JOB_TIMEOUT_S900Job time limit in seconds
HNX_REOPT_API_KEY—REopt API key (developer.nlr.gov)
HNX_REOPT_FIXTURE—Replay a recorded REopt response instead of calling the API (tests)
HNX_REOPT_URLhttps://developer.nlr.gov/api/reopt/stableREopt base URL
HNX_LOG_LEVELINFOLog level
HNX_API_KEY—Bearer key required by HTTP mode (development only); needed to bind to a non-local address
HNX_MICROGRIDSPY_CMDhelionyx-microgridspyCommand of the MicroGridsPy adapter package
HNX_SAMA_CMDhelionyx-samaCommand of the SAMA adapter package

Repository layout

text
src/helionyx/  api/            MCP server, CLI, Streamable HTTP host, output schemas  services/       site/resource, load, tariff, scenario, run, sensitivity, results, export, study  core/           Pydantic models, engine (PV, wind, dispatch kernel, outages), economics, billing  adapters/       solver adapter interface and REopt v3 adapter  infra/          settings, SQLite store, Parquet artefact store, HTTP cache, jobs, pack loader  packs/lk/       Sri Lanka country pack (tariffs, components, archetypes, emissions, defaults, samples)  templates/      report and HOMER parameter templates, methodologypackages/         separately licensed solver adapters (helionyx-microgridspy, helionyx-sama)skills/helionyx/  Claude skillreference_cases/  RC-1 to RC-3 study filesevals/grounding/  grounding evaluation prompt setscripts/          maintainer scripts (refresh bundled samples)tests/            unit, property, contract and regression testsdocs/             quickstart, methodology, data-pack guide, skill guide, solver adapters, assets/ (graphics)

Documentation

Licence

  • Code: Apache License 2.0.
  • Data packs: CC BY 4.0, citing the original source of each record.
  • Copyleft solvers ship as separate packages run as subprocesses: helionyx-microgridspy (EUPL-1.2) and helionyx-sama (AGPL-3.0). The core never imports them.

Disclaimer

Helionyx results are pre-feasibility estimates based on simplified models, synthetic or user-supplied data, and dated, unverified placeholder tariff and cost assumptions. They are not engineering design, a bankable yield assessment, financial advice or a grid-compliance study, and are no substitute for review by a chartered engineer. The software is provided "as is", without warranty or liability (Apache-2.0 §7–8). Helionyx is an independent project, not affiliated with or endorsed by HOMER Energy / UL Solutions, NREL, NASA, the EC JRC, CEB, LECO or Anthropic; trademarks belong to their owners. Some features send site or load data to third-party services. Read the full disclaimer before use.

來源:README.md,提交 63a315e

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v0.3.0最新Oct 7, 2026