1.26224 — 12 August 2026
This is the first release with written release notes, so it covers everything since 1.26219 on 7 August.
If you read only one thing: gezel now publishes measured scores for the models it ships, your gezellen are much more tightly fenced in about what they may install on your machine, and Word, PowerPoint, Excel and PDF files in a project can now be edited as ordinary text.
Model scores you can actually check
Choosing a local model used to mean guessing. Now there is a scoreboard.
The new Model scorecard in the Technical section of this Handboek lists every model we have tested and how many jobs it actually finished correctly — writing a small working program, fixing a bug from its symptoms, following a procedure and stopping when something is wrong, turning a pile of documents into one summary, and a set of everyday office and knowledge tasks. Each job is run three times on a real machine and checked by a program, not by an opinion. A companion article, How we test models, explains what was counted and what the numbers do not tell you.
The first published set covers four models measured on an M4 Max: gemma4-e4b, gemma4-12b, gemma4-31b and ornith-9b, on both task sets. Alongside the pass counts you now also get speed, how much memory a model needed in practice, and a separate quality read from a judging pass.
Two rules keep the board honest. A model that was only partly measured is withheld rather than shown with a flattering gap, and earlier rounds of testing are kept visible separately instead of being quietly overwritten.
Your gezellen are better managed
A gezel that can install software is useful. A gezel that can install anything, anywhere is not something you should have to think about. This release closes that gap.
Installing packages is now registry-only and tied to one project. A gezel can ask for a published package by name and version, into a project that already exists, and nothing else. Names, versions and destinations are all checked before anything runs.
Approving a command now approves that exact command. Previously, approving a script meant approving the words in it. Now gezel takes a fingerprint of the actual files the command would read — the script, its wrapper, the files it imports — so an approval you gave yesterday cannot be reused tomorrow for a script whose contents have changed underneath it.
Names are checked everywhere. Gezel, project, session and document identifiers now go through one shared rule, applied on disk, in the schemas, and on every web request, so a hand-crafted name cannot walk out of the folder it belongs in.
On Linux and macOS, gezel's home folder is now locked to your account (
0700). Other accounts on the same machine can no longer read your conversations or files.
None of this changes anything you do day to day. It changes what happens when something goes wrong.
Word, PowerPoint, Excel and PDF files are editable now
Open a project and select a .docx, .pptx, .xlsx, .pdf or .html file, and gezel shows you its contents as clean Markdown you can read and search. The original file stays exactly where it was.
Editing is deliberately a second step. The imported text is read-only until you choose Allow editing via markdown from the file's menu, and the first time you do, gezel takes a copy of the untouched original and keeps it. It is opt-in because rewriting someone's PowerPoint should never be something that happens by accident.
Real control over local models and memory
If you run models on your own machine, this is the release where the machine stops being a mystery.
Set the context size per model. A slider in each model manager, instead of one setting for everything.
Set a memory budget, decide whether a model may spill into ordinary RAM when it does not fit on the graphics card, and have models unload themselves when idle so a forgotten model stops holding your machine hostage.
An emergency stop. The engine pill now has a "stop everything" action that cancels every chat in flight, clears anything queued, and drops gezel back into reactive mode — one place to press when something has run away from you.
Behind those controls, gezel is better at fitting a model into the memory you actually have: it will trade parallel capacity down to two lanes when doing so buys a meaningfully larger context, rather than refusing or thrashing.
Threads that are easier to follow
Thread titles are derived the same way everywhere. The name you see in the sidebar, in search and in the thread list is now the same name, worked out once instead of three times slightly differently.
Recent threads appear as pills above the conversation, so hopping between the two or three things you have going takes one click and puts you back where you were looking. Threads that are working, or that hit an error, are shown first — you should not have to go hunting for the one that needs you.
Terminal threads show their last command in the list, so you can tell them apart at a glance.
Chat references are more compact, the file tree and sidebar behave more predictably, and the Handboek's own table of contents now collapses by section, with craftbooks grouped into shelves rather than one long list.
Connecting gezel to other things
Codex CLI can now use your local models. A setup card in Settings writes a dedicated profile for the OpenAI Codex command-line tool that points it at gezel, so a coding tool you already use can run against a model on your own machine.
New GitHub connectors bring pull requests, releases and wiki pages in as project material, alongside the existing Google Calendar connector. Connector output now lands in the project's artifacts, where the rest of your work lives.
The OpenAI-compatible endpoint speaks the Responses API, including streaming — so apps built against the newer OpenAI shape work against gezel without a translation layer of their own.
Four new Handboek articles document all of this for developers: the npm package map, writing scripts with the gezel SDK, building connected apps with the app SDK, and how we test models.
Catalog updates without an app update
Gezel's descriptions of models, craftbooks and roles — the gilde content — can now be refreshed on its own, without waiting for a new version of the app. It checks about once a day, verifies what it downloads, and only switches over after confirming that everything that worked before still works.
It is off unless you turn it on, under Settings → About → Catalog content, and it will never touch a machine that has been pointed at a local content folder.
Smaller things
Windows machines without a working CUDA setup no longer get probed for one.
The Nemotron model family is recognized under its aliases and given the right tool format.
Installing gezel from npm no longer runs any install-time scripts; a permission repair that used to happen at install time now happens once, lazily, the first time it is needed.
Refreshed underlying editor and content packages (squisq 2.7.1, gilde 0.1.21).
A large set of new automated tests covering everyday office work — meeting follow-ups, research briefs, document round-trips, and whether a gezel reaches for the right tool — so regressions in ordinary tasks get caught before you meet them.
Anything to do?
No. Update when you are offered it. Your gezellen, projects, threads and files are ordinary files on your disk and are read as-is by the new version.
If you run local models and have been fighting for memory, it is worth a visit to the model manager for the new per-model context and memory settings. And if you want to see which model to trust with what, start at the Model scorecard.