FermiLink reads a simple markdown file describing your scientific computing goal,
then autonomously runs multi-job multi-day simulations on your laptop or HPC clusters.
Describe a simulation goal in plain language. FermiLink loads the suitable package knowledge base, generates input files, submits jobs, monitors progress, analyzes the data, and generate a brief simulation report. It can sustain multi-task multi-day HPC runs.
fermilink loop goal.md # long-running simulations on workstations or HPC
fermilink reproduce paper.tex # reproduction of a full research paper
fermilink research goal.md # full research-paper-scale, multi-task campaignsApply FermiLink to your existing scientific code with a performance goal. It iteratively modifies hot paths and runs deterministic benchmarks.
At the end of the day, it provides optimized scientific code with improved speed while preserving computational accuracy.
fermilink optimize goal.md # iterative code with correctness guarantees# 1. Install
pip install fermilink
# 2. Set up an AI agent (pick one)
fermilink agent codex # or: claude, gemini
# 3. Install a scientific package knowledge base
fermilink install meep # 150+ packages available
# 4. (Optional) Configure the default SLURM HPC profile
fermilink hpc
# 5. Write your goal.md (see example above), then run
fermilink loop goal.mdFirst time? Just run
fermilinkwith no arguments. Then, an interactive setup wizard will walk you through everything.
The key design principle of FermiLink is the segregation of package knowledge bases and simulation workflows.
FermiLink supports the following six major commands for various simulation workflows:
| Command | Best for | Duration | Recommended Environment |
|---|---|---|---|
exec |
Quick one-off simulations | Minutes | Laptop / workstation |
chat |
Interactive conversation with agents | Hours | Laptop / workstation |
loop |
Iterative jobs with PID/SLURM monitoring | Hours -> days | Workstation / HPC |
reproduce |
Multi-task, paper-scale reproducation of papers | Days -> weeks | HPC clusters |
research |
Multi-task, paper-scale research | Days -> weeks | HPC clusters |
optimize |
Code performance tuning (beta) | Hours | Any |
Apart from the above simulation workflows, it also supports an optimize workflow for optimizing the performance of scientific packages.
FermiLink isn't just a CLI tool. Pick the interface that fits you:
- Command line —
fermilink exec/loop/reproduce/research/optimize goal.mdfor headless, scriptable autonomy - Web UI —
fermilink startlaunches a ChatGPT-style browser interface for interactive sessions - Telegram bot —
fermilink gatewayconnects to Telegram so you can run and monitor HPC jobs from your phone
FermiLink ships with 150+ knowledge bases for packages spanning multiple scientific domains. Install any of them with a single command:
fermilink install <package> # e.g., meep, lammps, pyscf, openfoam
fermilink list # see all installed packagesDon't see your package? Compile your own local knowledge base:
fermilink compile /path/to/your/codeBrowse the full package list →
If you have a research pipeline described in a paper or group-specific workflow, you can turn them into a FermiLink-compatible knowledge base:
# Compile a local code into a knowledge base
fermilink compile /path/to/my-simulation-code
# Recompile after updating your code
fermilink recompile my-simulation-codeThis means FermiLink can autonomously operate any scientific code, not just the 150+ that ship built-in.
| Resource | Link |
|---|---|
| Full documentation | fermilink.org |
| Installation guide | fermilink.org/installation |
| Laptop tutorial | fermilink.org/tutorial_laptop |
| HPC tutorial | fermilink.org/tutorial_hpc |
| Architecture | fermilink.org/architecture |
| API reference | fermilink.org/api |
If FermiLink is useful in your research, please cite:
- Gang Meng†, Andres Felipe Bocanegra Vargas†, Xinwei Ji†, Federico Garcia-Gaitan, Felipe Reyes-Osorio, Jalil Varela-Manjarres, Yafei Ren, Mohammadhasan Dinpajooh, Branislav K. Nikolić, Tao E. Li. FermiLink: A Unified Agent Framework for Multidomain Autonomous Scientific Simulations. arXiv:2604.03460 (2026).
We welcome contributions, from bug reports to new package knowledge bases. See CONTRIBUTING →
