Aegis BrewMaster Documentation
Aegis BrewMaster turns a conversation about the beer you want to brew into a recipe — all-grain, brew in a bag, partial mash or extract — calculates its numbers, walks you through brew day while you record what happened, collects tasting notes and prints the whole thing. Everything runs on your computer: the language model runs locally through Ollama, and your recipes are stored in a local SQLite file.
The model proposes; the calculator decides. The AI suggests ingredients and changes, but every number you see comes from standard brewing formulas, and the assistant never edits a recipe without your say-so.
Installation & Setup
Aegis BrewMaster is available for Linux as a Snap or as a Debian/Ubuntu .deb package from the download page.
Snap
Install from the Snap Store, or in a terminal:
sudo snap install aegisbrewmaster
To import and export recipes and PDFs on USB drives, connect this interface once:
sudo snap connect aegisbrewmaster:removable-media
With the Snap, your recipes live under ~/snap/aegisbrewmaster/current/.aegisbrewmaster/.
Debian / Ubuntu (.deb)
Download the package, then install it with apt so its dependencies are pulled in:
cd ~/Downloads
sudo apt install ./aegisbrewmaster_*_amd64.deb
The app appears in your applications menu, and as aegisbrewmaster on the command
line. The package bundles its own Python environment under /opt/aegisbrewmaster/.
Local AI (Ollama)
The brainstorm and the Ask Aegis assistant use a local model through Ollama, installed separately — see our Ollama setup guide. Then pull the default model:
ollama pull qwen2.5:7b
It runs on an 8 GB laptop without a GPU. The app checks for Ollama on first start and explains anything that is missing; models are chosen in Configure.
Ollama is optional. Everything except the brainstorm and the assistant — the recipe editor, calculators, brew day, tasting notes, library and printing — works without it.
The Pages
| Page | What it holds |
|---|---|
| Brainstorm | Talk through the beer you want; Aegis fills in a brew brief and drafts a recipe. |
| Recipe | The editor, with live OG, FG, ABV, IBU, color and style fit. |
| Calculator | Stand-alone tools: strike water, priming sugar, refractometer, dilution and more. |
| Brew Day | Step through the day with timers and alerts, record actuals, then log fermentation. |
| Tasting | BJCP-style scoresheets per batch, over time. |
| Library | Every recipe: search, filter, clone, history, BeerXML and .aegisbrew import/export. |
| Settings | Units, IBU formula, paper size, equipment profiles, the ingredient library and privacy. |
The Ask Aegis panel on the right answers questions about the open recipe and your batches, and proposes changes you accept or reject. Press F1 at any time for the built-in guide.
Brainstorm
Aegis asks about one thing at a time: what the beer is for, the style or a beer you like, strength, bitterness, color, flavors, and your constraints — all-grain, brew in a bag, extract or partial mash; batch size; what you have on hand; anything to avoid. Answer in your own words; "something like a hazy IPA, not too boozy" is fine.
The brew brief
Every value the conversation fills in appears on the brief, marked you said, inferred (Aegis worked it out and reads it back for you to confirm) or default (a skipped topic, using the style's mid-range).
- Click any value to change it. Click a style chip to choose that style; chips show the style's ranges.
- The topic list shows what's done (✓), to confirm (?), started (…), still to discuss (○) and skipped (–).
Draft recipe
Once the style and constraints are known, Draft recipe asks the model for a recipe, looks up every ingredient in the library and calculates the numbers. If OG, IBU or color misses the style or the brief, the app sends its numbers back to the model once for a correction. Ingredients that aren't in the library are flagged so you can check them.
The new recipe opens on the Recipe page; the brainstorm is saved with it and the next one starts fresh.
The Recipe Editor
Change anything and the sidebar recalculates at once. Edits save automatically; rapid edits are grouped into one revision every couple of minutes, and History lists them all to preview and restore.
| Type | How it's brewed |
|---|---|
| All-grain | Everything is mashed in a mash tun and sparged. |
| Brew in a bag | Everything is mashed in a bag in the kettle with all the water at once and no sparge. Switching to BIAB offers your brew-in-a-bag equipment profile, since a bag holds less water and usually gets a lower efficiency. |
| Extract | Malt extract with steeped specialty grain. |
| Partial mash | Some grain is mashed and the rest made up with extract. |
- Fermentables: amount, use (mash, steep, boil, late boil), potential (PPG) and color (°L). Late additions keep the boil paler.
- Hops: boil, first wort, mash, whirlpool (hop stand) or dry hop. The IBU column shows each addition's share.
- Yeast: packs, starter and attenuation; the sidebar shows the pitch rate and whether you need a starter.
- Equipment: pick a profile to copy its losses and efficiency into the recipe. Profiles are edited in Settings.
Use Add… to pick from the ingredient library or add a new ingredient on the fly. Save as copy makes a variant that remembers its parent. Amounts follow your unit setting; recipes are stored metric, so switching units never changes a recipe.
Calculators
The Calculator page works without a recipe:
- ABV from readings
- Strike water and mash step infusions
- Brew-in-a-bag water: mash water, dunk sparge, kettle fill and bag weight
- Priming sugar and keg pressure
- Dilution and boil-off
- Refractometer readings, with the alcohol correction for FG
- Hydrometer temperature correction
- Yeast pitch rate and starter size
- Unit conversions
Hover a card's title for the formula it uses.
Brew Day & Kitchen Mode
Start brew day (Recipe or Brew Day page) creates a batch and snapshots the recipe, so later recipe edits never rewrite what you brewed. The steps come from the recipe: gather and weigh, strike water, mash in and rests, sparge, pre-boil gravity, the boil with every addition, whirlpool, chill, measure OG, pitch, clean up — then fermentation, dry hops, cold crash and packaging.
- Each step shows the planned values beside fields for what actually happened, and a note box. Done saves and moves on; Skip and Back do what they say. Every step saves as you go, so closing the app mid-brew loses nothing.
- Timed steps have a timer. The boil timer calls out each hop addition with a big alert and a sound. Timers keep running when you switch pages; the status bar shows the countdown.
- Measured gravity and volume update your actual efficiency and projected ABV. If the OG comes in low, ask Aegis for a fix (boil longer, add DME) as a proposal.
Fermentation log
The Fermentation log tab takes gravity, temperature and pH readings over the following days and charts them against the expected FG.
Kitchen mode (F11)
Full screen, large text, big buttons and a number pad for actuals, in high contrast, with the screen kept awake where your desktop allows it. Esc returns to the normal window.
Brew in a Bag
A brew-in-a-bag day has its own steps:
- Heat the mash water in the kettle, with any dunk-sparge water set aside.
- Burner off before the bag goes in, and the bag clipped off the hot bottom; mash in slowly.
- Hold each rest with the kettle wrapped; the timer reminds you halfway to stir and check the temperature.
- Reach step rests and the mash-out at 170 °F (76.7 °C) by heating with the bag lifted and stirring, with the time it takes at your burner's rate.
- Lift and drain the bag — the step tells you how heavy it is — squeezing it or not.
- Dunk sparge if the mash didn't fit, then on to the boil.
Choose squeezing, mash-out and dunk sparge on the Recipe page. See How the Numbers Work for the water and heat calculations.
Tasting Notes
A tasting follows the BJCP scoresheet: aroma (12), appearance (3), flavor (20), mouthfeel (5) and overall impression (10), each with a score and comments, plus descriptor chips and "would brew again". Taste a batch several times, or with several people; the list shows how the score moves as the beer conditions.
Ask Aegis how to improve it sends your tastings and brew log to the assistant, which answers with a proposal against the recipe.
Library & BeerXML
- Search, sort and filter by style, tag and status (idea, ready, brewed, favorite, archived). Archived recipes are hidden unless you ask for them.
- Clone, rename, archive and delete. A clone remembers its parent.
- Revisions: every saved version, with what restoring it would change.
- Batches and tastings: each brew session's planned and measured numbers beside its tastings.
.aegisbrewfiles hold one recipe with its batches, readings and tastings, optionally password protected.- BeerXML 1.0 moves recipes in and out of other brewing software.
Printing
File → Export PDF (Ctrl+P) combines any of three sheets into one PDF, on Letter or A4:
- Recipe sheet: stats with the color swatch and style-fit bars, ingredients, mash, fermentation, notes.
- Brew-day sheet: a checklist with planned values and blanks for actuals, plus the boil timeline — or a batch's filled log with actuals, notes and readings.
- Tasting sheet: a blank scoresheet, or the recorded tastings.
PDFs are made on your computer and saved to ~/.aegisbrewmaster/exports/ by
default.
How the Numbers Work
| Value | Method |
|---|---|
| OG | Σ(pounds × PPG × efficiency) ÷ gallons into the fermenter. Extracts and sugars count at 100%; specialty grain steeped in an extract recipe at about 60%. |
| FG | From the yeast's apparent attenuation; unfermentable sugars (lactose, maltodextrin) stay in. |
| ABV | (OG − FG) × 131.25; above OG 1.070 the more accurate 76.08 × (OG − FG) ÷ (1.775 − OG) × FG ÷ 0.794. |
| IBU | Tinseth by default (Rager in Settings), on the post-boil volume. First-wort hops count as the full boil plus 10%, mash hops as a fifth, whirlpool hops by stand time and temperature; dry hops add none. |
| Color | Morey: SRM = 1.4922 × MCU0.6859; EBC = SRM × 1.97. |
| Strike water | Palmer's Tw = (0.41 ÷ r)(T2 − T1) + T2, with r in L/kg. All-grain uses the equipment's mash thickness and sparges the rest. |
| Priming sugar | From the residual CO₂ at your warmest fermentation temperature. |
| Pitch rate | 0.75 million cells per mL per °Plato for ales, 1.5 for lagers. |
Brew in a bag
- Water: the pre-boil volume plus what the grain keeps when the bag comes out — the equipment profile's absorption for a squeezed bag, about 0.3 L/kg (0.15 qt/lb) more if you only let it drain.
- Kettle fit: water plus grain (about 0.67 L per kg) must fit in 92% of the kettle. If it doesn't, the water that won't fit is held back for a dunk sparge at 170 °F (76.7 °C); you can also always or never dunk sparge.
- Strike temperature: Palmer's equation at the mash's own ratio. The kettle heats up with the water, so unlike a cooler it takes no heat from the strike — a thin full-volume mash needs only a few degrees over the rest.
- Heat: step rests and the mash-out are reached by heating; brew day uses your burner's heating rate for the time it takes, and the profile's heat loss for how much the mash cools during the rest.
- Wet bag: grain plus the wort it holds before draining — what you lift.
These are estimates from standard formulas. Your system will differ: measure on brew day, and the Brew Day page shows your actual efficiency so you can set it in your equipment profile.
Brewing Safely
- Sanitize everything that touches the wort once it has cooled; boiling sanitizes everything before that.
- Boiling wort and hot water burn: use a stable burner, keep children and pets away, and lift full kettles with help.
- Bottle only when the gravity has been stable for three days. Bottling early, or with too much priming sugar, can burst bottles.
- Kegs and CO₂ cylinders are pressure vessels: use a regulator, never exceed the keg's rated pressure, and secure cylinders upright.
- Propane burners belong outdoors.
- Home distilling is illegal in many places and dangerous; this app doesn't help with it.
Your Data & Privacy
- No telemetry, no accounts, no cloud sync.
- Recipes, batches and tastings are stored in
~/.aegisbrewmaster/profiles/, one SQLite file per profile, and are kept when the package is removed or updated. - The model is reached only on your computer; a remote Ollama host is refused unless you allow it in Configure.
- Every prompt and reply is logged to
logs/llm.jsonlin the data folder for debugging. SetAEGIS_LLM_LOG=0to turn it off. - Settings has Delete all chat history and Wipe all data.
Reference Data
All bundled figures were entered by hand and carry their source and as-of date. Check them before relying on them.
| Data | Source |
|---|---|
| Style ranges (OG, FG, ABV, IBU, SRM) | BJCP 2021 Style Guidelines; style descriptions are short summaries written for the app |
| Fermentables, hops, yeasts, misc | Typical values from maltster, hop-grower and yeast-lab specification sheets; editable in Settings |
Beta & Licensing
Aegis BrewMaster is in Beta and free to use. There is no license charge during the Beta: every feature is available without paying anything.
The app is complete enough to brew with, and we are still improving it. Updating the app keeps your recipes, batches and tastings. You may find rough edges — please tell us about them.
In the future we may limit some features unless a one-time license is purchased. One-time means you pay once; it is not a subscription.
Troubleshooting
"I couldn't reach the local model"
Start Ollama (ollama serve) and check the models in Configure. Pull the default with
ollama pull qwen2.5:7b.
Replies are slow
A 7B model on a laptop CPU takes several seconds per reply. Try qwen2.5:3b in
Configure.
The draft misses the style
It's a starting point. Adjust it on the Recipe page, or ask Aegis to scale it to a target OG or IBU.
My OG is always low
Measure on brew day; the Brew Day page shows your actual efficiency. Set that in your equipment profile.
A BeerXML file won't import
It must be BeerXML 1.0 with at least one RECIPE.
Reporting a problem
Use Help → Contact Us in the app — it opens your email program with your message filled in, so you see exactly what is sent — or our contact page. Please leave out personal details we don't need.