Getting Portico running.
Portico runs on Windows, macOS and Linux. Windows has a ready-made installer; on macOS and Linux you build it yourself for now, which takes about five minutes and three commands. Everything below is the whole process, including the parts that look alarming but aren't.
Straight answer about the other two: the Windows build is the one that is tested on every release. The macOS and Linux instructions are written from how the project is put together, and no one has yet run them start to finish on those systems. They should work — Electron and llama.cpp both build there routinely — but you would be the first to find out. If you try, say what happened, whether it worked or not.
What you need.
Memory
8 GB minimum, 16 GB comfortable. This is the real limit on which models you can run — more than the processor or the graphics card.
Disk
About 400 MB for the app, plus whatever the models take. 2 GB gets you a good first model; collections grow quickly.
Graphics
Optional. A Vulkan-capable card (NVIDIA, AMD, Intel) or Apple Silicon makes replies several times faster. Without one it falls back to the processor and still works.
Internet
Only to download the app and your models. After that Portico works with the connection off — unless you switch web search on yourself.
Nothing else is required. The inference engine and the speech engine ship inside the app; there is no Python, no Docker, no account and no API key.
Windows 10 or 11, 64-bit.
The quickest route — one installer, no build step.
-
Download the installer
About 126 MB.
-
Run it, and expect a warning
Windows will say “Windows protected your PC” and call the publisher unknown. That is not a sign anything is wrong — it appears for every application that hasn't paid for a code-signing certificate, which costs a few hundred pounds a year.
Click More info, then Run anyway.
-
Choose where it goes
The default is fine. Portico installs for your user account only, so it doesn't ask for administrator rights.
-
Open it and pick a model
Portico starts with no model — it is the record player, not the records. Go to Models → Discover and download one. See choosing your first model below.
macOS 11 or newer.
Apple Silicon (M1 and later) or Intel. On Apple Silicon the model runs
on Metal, which is genuinely fast. There is no prebuilt .dmg yet, so you build one.
-
Install the prerequisites
Node.js (version 20 or newer), and Apple's command line tools:
xcode-select --install -
Get the source and its dependencies
git clone <the Portico repository> cd PriStudio npm install -
Add the inference engine
The engine is built per platform, so it isn't in the repository. Download the latest release from llama.cpp and unzip
llama-servertogether with every.dylibbeside it into:resources/llama-mac-arm64/ # Apple Silicon — asset: bin-macos-arm64 resources/llama-mac-x64/ # Intel — asset: bin-macos-x64Flat, no subfolders.
-
Build it
npm run dist:macThe
.dmgand a.zipappear indist/. Drag the app to Applications. -
Open it the first time
The app isn't notarised by Apple, so double-clicking gives “Portico cannot be opened because the developer cannot be verified.” Right-click the app and choose Open, then confirm in the dialog. macOS remembers your choice — you only do this once.
Any modern 64-bit distribution.
Tested against Debian and Ubuntu conventions; the AppImage should run anywhere reasonably current.
-
Install the prerequisites
Node.js 20 or newer, and — for graphics acceleration — a Vulkan driver:
# Debian / Ubuntu sudo apt install nodejs npm mesa-vulkan-drivers # Fedora sudo dnf install nodejs vulkan-loader mesa-vulkan-drivers # Arch sudo pacman -S nodejs npm vulkan-icd-loaderOn an NVIDIA card, the proprietary driver already provides Vulkan. You can skip this entirely and run on the processor — slower, but it works.
-
Get the source and its dependencies
git clone <the Portico repository> cd PriStudio npm install -
Add the inference engine
From the llama.cpp releases, take the
bin-ubuntu-vulkan-x64asset and unzipllama-serverplus its.sofiles into:resources/llama-linux-x64/If you would rather have no driver dependency at all, use the plain
bin-ubuntu-x64asset instead — processor only. -
Build it
npm run dist:linuxYou get both an
.AppImageand a.debindist/. -
Run it
# portable, no install chmod +x Portico-*.AppImage ./Portico-*.AppImage # or install the package sudo dpkg -i portico_*.deb
Your first few minutes.
The same on every platform.
1 · Test your graphics
Settings → Test graphics cards. Portico times a real reply on each card in your machine and keeps the fastest.
This is worth doing even if you think you know the answer. On laptops the discrete card is often powered down by the driver, which can make the built-in graphics several times faster — we measured exactly that while building this.
2 · Download a model
Models → Discover. Pick one that fits your memory:
- 8 GB RAM — a 3B model, about 2 GB
- 16 GB RAM — a 7B or 8B model, about 5 GB
- 32 GB RAM — a 14B model and upward
A model bigger than your memory will still load, but pages from disk on every word and becomes far too slow to use.
3 · Start typing
That's it. The strip under the message box shows which model is loaded, how hard it is working, and how full the conversation memory is.
Web search is off until you switch it on, and the app says so on screen whenever it is running.
What works where.
Chat and everything around it works on all three systems. Two features are Windows-only for now, because the projects behind those engines don't publish Mac or Linux builds — they have to be compiled separately.
| Feature | Windows | macOS | Linux |
|---|---|---|---|
| Chat with local models | Yes | Yes | Yes |
| Web search | Yes | Yes | Yes |
| File attachments | Yes | Yes | Yes |
| Reading images (vision) | Yes | Yes | Yes |
| Projects and assistants | Yes | Yes | Yes |
| Shared engine over your network | Yes | Yes | Yes |
| Voice input | Yes | Build it yourself | Build it yourself |
| Image generation | Yes | Build it yourself | Build it yourself |
Portico runs perfectly well without those two — they simply show as unavailable rather than breaking anything.
When it misbehaves.
Windows blocks the installer
Expected. Click More info → Run anyway. The app isn't code-signed, which is a cost rather than a safety judgement. If your browser refuses the download outright, choose Keep in the downloads bar.
macOS says the developer cannot be verified
Also expected. Right-click the app and choose Open instead of double-clicking, then confirm. Only needed once.
A model won't load
Almost always memory. Lower Context size in Settings, or use a smaller model. Portico tells you when the engine ran out of memory rather than failing silently.
Replies are very slow
Run Settings → Test graphics cards. If the fastest result is only a few words per second, the model is probably running on the processor — check that your Vulkan driver is installed, or pick a smaller model.
It forgot the start of the conversation
The context window filled up. Click the usage ring in the strip below the message box to see where it went, and raise Context size — at the cost of memory on your graphics card.
Nobody on the network can reach my shared engine
Windows Firewall usually asks to allow Portico the first time — say yes, on the private network. If it was refused, allow it again in Windows Defender Firewall settings. Also check both machines really are on the same network, and that the address and access key match what the host shows.
Something crashed
Settings → About → Copy diagnostics puts versions, settings and the last few log lines on your clipboard. Paste that into a bug report. Nothing is sent anywhere unless you send it.
Removing it.
Windows
Settings → Apps → Portico → Uninstall. Or run Uninstall Portico.exe from the
install folder.
macOS
Drag Portico from Applications to the Bin.
Linux
Delete the AppImage, or sudo apt remove portico if you installed the package.
Your chats, projects and downloaded models live in your user data folder and are not removed by uninstalling — so reinstalling keeps everything. Delete that folder by hand if you want a clean slate. Models are the big items; everything else is tiny.
Try it on your own machine.
Free and open source. Works with any open model you like. Nothing you type leaves your computer — unless you switch on web search.
On a Mac or Linux? Build it in three commands →