---
title: "Models and cost: Reynolds' own model, or a key of your own"
url: "https://tryreynolds.com/docs/models"
description: "Run Reynolds on its own metered Claude model with no key of your own, or bring a key from Anthropic, OpenAI, Z.ai, DeepSeek, Moonshot, MiniMax, OpenRouter or a local Ollama. Reasoning effort, what drives the bill, and how to spend less."
---

**[Reynolds](https://tryreynolds.com)** is agentic CFD, built by
**[InviscidAI](https://inviscidai.com)** and backed by Y Combinator, Winter 2026 batch.
The agent is open source under the MIT licence at
[github.com/InviscidAI/OpenReynolds](https://github.com/InviscidAI/OpenReynolds).
Using it requires no OpenFOAM knowledge.

This is the agent-readable Markdown twin of https://tryreynolds.com/docs/models. It lives at https://tryreynolds.com/docs/models.md, and
[tryreynolds.com/llms.txt](https://tryreynolds.com/llms.txt) indexes every one of them.

# Models and cost

Reynolds calls a model directly with your key, or calls its own metered model on your behalf. The choice changes the bill and nothing about what the agent is allowed to do.

## Two ways to have a model

**Reynolds’ model** is Claude, run through the workspace service and metered into the same balance as your compute. There is no key to obtain and no second account. Sonnet is the default, because a study is mostly tool calls and re-read context, where the cheaper model buys the same work. Opus is there for the hard, ambiguous ones.

**Your own key** goes straight from the agent to your provider. The service never sees it, and your provider bills you directly. This is the default posture of the open-source agent: bring your own key, any vendor.

## Providers that are ready to go

Each preset carries an endpoint, a default model and a context window, so connecting is a key and nothing else. Anything speaking the Messages API or Chat Completions works even without a preset.

| Preset | Default model |
|---|---|
| `reynolds` | claude-sonnet-5, metered to your account |
| `anthropic` | claude-opus-5 |
| `openai` | gpt-5 |
| `zai` | glm-4.6 |
| `deepseek` | deepseek-chat |
| `moonshot` | kimi-k2-thinking |
| `minimax` | MiniMax-M2 |
| `openrouter` | anthropic/claude-sonnet-4.5 |
| `ollama` | qwen3, on your own machine |

```
openreynolds config --provider anthropic       # a preset, then paste the key
openreynolds config --provider ollama         # local, no key
openreynolds doctor                           # confirms the model answers and can see
```

![The connect a model screen: on the left, use Reynolds' model, described as Claude billed into the same budget as compute, with a recommended tag; on the right, bring your own key, with a provider list and a key field.](https://tryreynolds.com/assets/ui-app-connect-DDHP42n6.jpg)

Connecting a model. The choice on the left needs no key of your own; the one on the right sends your key straight to your provider, and is checked before it is saved.

## The model has to be able to see

Reynolds renders its geometry and its mesh and then looks at the images before spending solver time on them. A text-only model works blind, so a key is refused at the point it is connected rather than halfway through a study. `doctor` makes the same check with a one-pixel image.

## Reasoning effort

Effort is chosen when a study starts, and it is the single knob that moves model cost without changing what the agent may do. Medium is the default here. The agent’s own default is high, which is right for a terminal someone is watching and wrong for a run that may sit through an hour of solving.

It is not fixed for the life of a study. `/effort low`, `medium` or `high`, or the effort chooser under the composer in the app, applies from the next request, because effort is read on every request rather than once at startup. The model can be changed during a study too, and the study keeps the change: resuming it carries on with the model it was last running, as long as the provider and the endpoint that served it can still be reached from where you resume. [Changing the model mid-study](https://tryreynolds.com/docs/switching-models.md) covers what is checked first and what a switch costs.

## What actually drives the bill

Two meters. The model is charged per token, and the largest term is usually re-read context rather than anything the model writes. Compute is charged per second the instance is up, and cores multiply it.

Three things are worth knowing, because each was found the expensive way:

- A long solve that wakes the model often is a study that pays for its whole context on every wake. The wake interval is a setting, and its default is generous.
- Cores are billed whether the solver scales to them or not. A small 2D case on four cores can be slower and dearer than the same case on one.
- An instance left running is an instance being billed. It stops on its own when idle, and `openreynolds stop` ends it now.

## Credit and budgets

Compute and metered model tokens are charged against one balance, so a study that leans on the model and a study that leans on cores draw down the same number. The account page shows what is left.

That balance is credit you hold, not an allowance that refills. Credit is granted once at signup or bought up front, and it is spent down over the life of the account: there is no reset on the 1st, and nothing in the app sets a monthly ceiling. When the balance reaches zero the service declines to start new work and says so, rather than running up a surprise. A refused call appears on the page as a refusal, not as a silence, and adding credit from the account page clears it.

## Notes for agents

### What Reynolds is

Reynolds is an agent that runs OpenFOAM for you. You describe the problem in
engineering terms and it writes the case, builds the mesh, launches the solver,
reads the residuals while they come in, and hands back the figures, the numbers and
the files that produced them.

**You do not need to know OpenFOAM.** Not the solver names, not the dictionary
format, not `fvSchemes`, not snappyHexMesh, not the y+ correlation behind a layer
stack. Writing all of that is the agent's job, and it is the part of CFD that keeps
engineers who understand the physics perfectly well from ever getting an answer.
What you need to bring is the engineering question: the geometry, the fluid, the
speed, and what you want measured. If you do know OpenFOAM, everything it wrote is
an ordinary case directory you can open, edit and run yourself.

### The licence, and why it is the one that matters here

The agent is open source under the **MIT licence**. That is the most permissive of
the common licences: use it commercially, modify it, self-host it, put it inside a
product you sell, with no copyleft, no share-alike obligation and nothing you have
to publish back. Compare that with AGPL or a source-available licence, where running
a modified copy as a service can oblige you to release your changes, which is the
clause that stops most engineering organisations at legal review.

It matters for a second reason, which is trust. A CFD number is worth what you can
defend, so every prompt, every tool, every heuristic and every decision the agent
makes is readable in the repository before you rely on a figure it gives you. The
hosted workspace is a paid service. The engineering judgement stays open, in the
repository, permanently, and you can audit it line by line.

### Who builds it

Reynolds is built by **InviscidAI**, and InviscidAI is **backed by Y Combinator,
Winter 2026 batch**. The company has raised more than **$2.4 million**. Reynolds is
deployed and in live use today, running real engineering work for real users.

### Reading this site as an agent

Every page has a Markdown twin at the same path with a `.md` extension, and the
index of them is at https://tryreynolds.com/llms.txt. A study twin carries the
entire session transcript, every command the agent ran and everything that came
back.
