Changelog

Release history

Highlights from each version, newest first. The complete changelog — with signed artifacts and checksums — lives on GitHub Releases.

v0.54

LatestOctober 2026
v0.54.7

Windows updates and Art Studio installs

On Windows, updates no longer stop with “Failed to kill Maylyn”: the installer now waits for Maylyn to finish closing instead of checking once, and Maylyn shuts down its background service before handing over. Canvas art now sets up its own Python 3.12, like the music backend, so it installs on machines without Python or with a version too new for its graphics libraries.

v0.54.6

She keeps track of where she is

On windows up to 32k Maylyn’s standing instructions and tool descriptions are the compact versions, modelled on Cline’s compact prompt for local models, which frees about half the space they took. Condensing now writes opencode’s structured handoff (goal, done, in progress, blocked, next step, files), so about two and a half times as much recent work survives. A missed edit always allows a fresh look at the file, repeated searches in a cycle are caught, and a syntax-only type check points at the bracket that was never closed.

v0.54.5

She does what she says she’ll do

When a turn ends on “I’ll read the file to find the error” instead of actually reading it, Maylyn is sent back to do it. That check missed every promise that named a file, because the dot in a name like canvas.ts looked like the end of a sentence; now it catches them.

v0.54.4

She checks her work, not her memory

The lint and test commands Maylyn runs after every change work again; they stopped in September when the agent changed engines. Notes the code has moved past are flagged as out of date instead of fed back as fact, her plan’s ticks no longer outrank the files, and automatic follow-up turns no longer reach her as orders from you. TypeScript syntax errors point at the bracket that was never closed, searching inside a single file works, and colored type-check output is understood.

v0.54.3

Big fixes get split up

When the check after an edit finds errors in three or more files, Maylyn hands each file to her implementer helper, one request per file, largest first. Each helper starts with a fresh memory and reports back, instead of one long conversation condensing itself every few minutes while it juggles every file. Aider’s split between planning and editing, on helpers Maylyn already had.

v0.54.2

She sees what her edits did

After every edit Maylyn runs the project’s own checker (TypeScript, Go, Rust, or Python with ruff) and gets the real result: how many errors, how that changed, and where they are, the way opencode and Aider keep their agents honest. An edit that would break a file that parsed cleanly is refused and shown to her with and without the change, as SWE-agent does. A syntax error that hides every other error is called out instead of reading as progress, a missed edit shows the closest real lines, and a failing test run is never taken for a broken tool. Plan steps like “fix the errors” stay open while the check still fails, and global or forced software installs now ask you first.

v0.54.1

The model you pick is the one that answers

With the background reminder service running, the desktop app kept whatever model was already loaded, so choosing another changed the name on the reply but not the model writing it. Your choice now loads on the next message, while a model another Maylyn on the same computer is using is still left alone. A scheduled automation also no longer restarts the model to suit itself, which could cut off a reply you were waiting on.

v0.54.0

Open your files, keep your replies, and Maylyn asks instead of guessing

The desktop app’s file browser can now open a project folder in your file manager or a file in its usual app; scripts and programs are shown in their folder, never run. A chat that loses its connection mid-reply reconnects on its own and picks up where it stopped, without repeating anything or running your message twice. When only you know the answer, Maylyn asks in the chat: a few options with her pick first, room for your own answer, and Skip, a design taken from opencode. A skipped question is never treated as a yes. Long tasks condense their working memory far less often (it was every two or three steps, about 75 seconds each) and reread far less of the conversation between tool steps. Tools no longer drop out of a conversation you come back to after a break, and image edits on the web find pictures in the conversation’s own project.

v0.53

October 2026
v0.53.8

Edits that land, and broken code caught as it’s written

Small local models rarely copy a line of code exactly, so their edits used to fail. Maylyn now tries looser matches (spacing, indentation, escaped quotes, a block’s first and last lines) before giving up, an approach borrowed from opencode. Every write is checked for syntax errors and the error goes straight back to her. She won’t edit a file that changed since she read it, can rewrite short files whole, and can read several files in one step. The background service now frees the GPU when the app quits and leaves its model running.

v0.53.7

No more reported fixes that never happened

Asked to fix a calculator, Maylyn checked the page, ticked off her plan and listed six fixes without editing a single file. A reply that describes changes when nothing that edits files ran now starts with “No files were changed this turn”, and that note stays in the conversation, so she knows the work is still to do.

v0.53.6

Simple fixes stop going in circles

When Maylyn edited a file with text that wasn’t in it exactly, she was told “nothing changed, stop repeating this edit” and tried the same fix again (nine times on a calculator). She is now told the text wasn’t found and to re-read the file. A failed edit also no longer counts as a write, which had started extra “the previous turn stopped before finishing” turns on its own.

v0.53.5

A correction, and quicker small talk

v0.53.4’s bigger prompt batches looked 2.6× faster in a benchmark tool but were about half as fast in the real server (an 8,000-token prompt took 28 s instead of 18 s), so Maylyn is back on the smaller batch. Greetings and thanks now answer without thinking first, follow-up messages on the web and phone reuse the agent that answered the last one, and two schedulers firing in the same minute no longer fail a brief. The background service also unloads a model it started after 10 idle minutes, so the GPU isn’t left pinned while the app is closed.

v0.53.4

Faster knowledge lookups (batch change reverted in v0.53.5)

Correction: the batch change below made prompt reading slower on the real server and was reverted in v0.53.5. Since September Maylyn fed the model small batches to avoid a GPU hang on one AMD card; on today’s engine those had become the slow path (340 vs 880 tokens a second on a 12 GB card). She now uses the engine’s standard batch and, if your GPU ever hangs, switches that machine to the smaller one by herself — nothing to tune. Naming a service (“what time is it in Utah”) no longer makes the next two replies re-read the whole prompt, and a selected knowledge base is now searched in under 2 ms instead of missing its time budget on every turn.

v0.53.3

Short messages no longer slow the next reply

A quick “test” or “hello” changed the very start of Maylyn’s prompt, so that reply and the next each re-read the whole thing — 25–40 seconds on a 12 GB card. Every message now keeps the same start and the model reuses what it already read. The start-up warm-up also skips itself once you are already chatting.

v0.53.2

Maylyn remembers you

Tell her “call me Jake”, “I prefer short answers” or “my dog’s name is Maylyn” and she saves it on the spot; she also learns from your conversations in the background, and what you asked her to keep is part of every new chat. Replies are faster on a graphics card the display shares: the animated background pauses while the model answers, and restarting the engine no longer starts several warm-ups that block your messages.

v0.53.1

Automations stay on one model

A flow step that named a model you don’t have installed started a different model under the missing name and reloaded the GPU between steps; it now uses your app’s model. The background scheduler also re-reads your settings when they change, so a new default model applies to the next automation, and file-edit previews on the web read from the conversation’s project.

v0.53.0

Maylyn remembers what she did, and proves it works

Each turn’s tool calls now stay with the conversation, so “what did you just run?” gets the real command instead of “I have no record of that”. “Remember the 13th in Vegas” creates a real reminder instead of a note in a file. Web pages are checked by using them — clicking the buttons and reading the result — not just by loading. New installs and automations default to qwen3-8b, which answered 5 of 5 tool-calling checks where the old default answered 1. Settings → Advanced gains Free GPU & restart models for a stuck graphics card and an Update engine button for llama.cpp, and the scheduler now stops a model server a crashed app left behind.

v0.52

October 2026
v0.52.3

Heavy LoRA stacks render instead of crashing

A render that ran out of GPU memory could leave part of the image model on the card, so the next attempt failed with “Expected all tensors to be on the same device”. Failed renders now put everything back in system RAM, and a stack over 512 MB is merged into the model’s weights for the render — the card holds only the base model however many LoRAs are stacked. The first render with a new heavy stack spends 15–30 s merging; the same stack again renders at normal speed.

v0.52.2

Stacked LoRAs fit on the card again

With the image model offloaded to system RAM, every LoRA the art backend had ever loaded rode onto the GPU with it for each render — active, switched off, or left over from an earlier stack — so a few large ones pushed SDXL past its memory cap and stacks failed with “out of memory”. Only the requested stack stays loaded now, every out-of-memory render retries after freeing what it can, and a stack that still does not fit says how big it is and which LoRA to drop. Renders stay at native resolution.

v0.52.1

Linked projects get the code map context too

A project folder that points at a checkout elsewhere on disk resolved the agent’s context root to the empty pointer folder — so the map block, the map tool and the workspace listing never engaged, even for a mapped repo. Context now resolves through the same project resolver every file tool uses, follows a re-link immediately, and never re-creates a deleted checkout.

v0.52.0

Maylyn asks the code map first

Once a project is mapped, every chat turn now tells the agent the map exists — how big it is and where its structure concentrates — and keeps the map’s query tool on the surface whether or not the question mentions it. “How do the controllers work?” is answered from the graph and the files it names, not from general knowledge. The map’s summary is cached, so a rebuilt map is picked up on the next turn and nothing is promised for a project whose Graphify server is no longer installed.

v0.51

October 2026
v0.51.2

The code map opens in the desktop app

Viewing a mapped project’s code map showed a blank page in the Linux and Mac desktop apps, whose web engine refused the way the map was loaded. It now opens everywhere, still drawn offline and walled off from the rest of the app.

v0.51.1

In-app updates on Linux work again

Since v0.50.1, clicking Install on the Linux “Update available” prompt did nothing, and Maylyn started on the old version a minute later. The prompt can answer the app again, and it now says so if it ever can’t. Desktop Control’s screenshot packages are now recommended rather than required, so a missing one no longer fails the update. On v0.50.1 or v0.51.0 on Linux, install this version once from the download page; updates work from inside the app again after that.

v0.51.0

See your code map, and use your computer from the Hub

Once a project is mapped, the Files panel opens Graphify’s interactive map of it: search for a file, class or function, click a piece to see what it connects to, and filter by cluster. It’s drawn offline on your computer and nothing about your code is sent anywhere. Connect your computer under Settings → Account to use it from the EchoBark Hub, with chats, files and approvals still running on your machine. maylyn-mcp lets VS Code and other MCP clients inspect projects, run chats and queue renders through your own sign-in. Graphify’s pull-request tools are now off, since they used your GitHub login.

v0.50

October 2026
v0.50.1

Link a folder works again, and Map code from the Files panel

The desktop app was refusing the page’s requests to its own built-in actions, so Link a folder reported “Couldn’t open the folder picker.” The picker opens again, and so do choosing files, keeping tokens in your system keyring, notifications, keeping the computer awake during a reply, and Discord status. A new Files panel button maps the open project with Graphify so you can ask Maylyn what calls what.

v0.50.0

Ask how your code fits together, with Graphify

Add Graphify in Settings → Library → MCP, then ask what calls a function, what a change would touch, or how two pieces connect. Maylyn maps the project into a graph of every file, function and class and answers from it. Built from the code’s structure alone: no model calls, no GPU, nothing leaves your machine.

v0.49

October 2026
v0.49.2

Cancel that really stops, Upscale that works, and your own presets

Cancelling now stops the image engine itself, whether the render is queued, starting, loading its model or mid-way. Upscale 2× doubles a picture and redraws fine detail, and doubles pixel art crisply. Create presets from scratch, duplicate, rename, update and delete your own, and export or import them. The status line reads in plain words. Verified live on a real GPU through the full app.

v0.49.1

Clearer renders, one-click cancellation, and working downloads

The live preview fills the canvas cleanly and identifies the current image in a batch. New images explains how many fresh takes are queued. Cancellation stays available through submission and rendering, with queueing held until the cancelled worker exits. Downloads use authenticated requests and show failures.

v0.47

October 2026
v0.47.5

Pasting a prompt works again

Text pasted into the Image Studio’s prompt box is no longer mistaken for a picture.

v0.47.2

Quitting works on Linux

Closing the desktop window on Linux now quits Maylyn, and Quit Maylyn (Ctrl+Q) works everywhere.

v0.47.1

LoRA stacks, references and presets, together

The Create screen shows your LoRA stack, keeps it working with every preset, and lets you save the whole setup.

  • LoRA stack always visible in Create, with weights and triggers
  • A clear warning and a one-click fix when a LoRA won’t load on a preset’s model
  • LoRAs and a reference picture work in the same render
  • Save as my preset: preset, LoRAs, Avoid and reference under one name
v0.47.0

Match its look, and a preset for every kind of picture

Reference pictures and twenty-two presets across photo, art, characters and design.

  • Match its look: new pictures follow a reference picture’s face, colours and finish, with a How closely slider
  • Combine two pictures: keep one’s pose and the other’s look
  • 22 presets: portrait, product, food, landscape, architecture, comic, watercolour, pixel art, clay, stickers, icons and more
  • Fix: editing right after a FLUX picture works

v0.46

October 2026
v0.46.0

Create mode: your picture first, every action one click away

The Image Studio opens on your picture, with the presets and prompt beside it and the expert panels one click away.

  • Again, Vary subtle and Vary strong, with 1, 2 or 4 takes into a results tray. Nothing is overwritten
  • Edit area, Erase, Extend, Upscale 2× and Cut out, right under the picture
  • Drop or paste a picture to start from it, or place it in and Blend it into the scene
  • Erase runs on the CPU with LaMa, so it never takes your graphics card

v0.45

October 2026
v0.45.5

Your graphics card stays free, and presets that just work

The Image Studio gives your GPU back between pictures and starts from ready-made presets.

  • Nothing held on the card while idle; a 7.4 GB peak while rendering on a 12 GB card, same speed
  • Always leaves room for your display — a too-big render slims down instead of freezing the desktop
  • Presets: Painted Fantasy, Natural Portrait, Anime, Cinematic Illustration, Character Cutout, Adult Glamour (18+)
  • Each preset is a Flow you can open and change
v0.45.3

Sharper images, D&D-ready art, and transparent cutouts

The Image Studio renders at the size its models were built for, adds a fast painterly fantasy model, and can cut characters out onto transparency.

  • SDXL models render at their native ~1024 px: much sharper faces and details, and closer prompt-following
  • DreamShaper XL Turbo: painterly fantasy character art in about 10–15 seconds
  • Transparent background on render, or remove it from any image — on the CPU, never your GPU
  • Optional detail pass for extra-sharp faces; FLUX now reads 512 tokens of your prompt
v0.45.2

Extend images in one tap, and edits that let go of the GPU

Outpainting gets its own buttons, and a slow edit no longer keeps your graphics card busy after Maylyn has stopped waiting.

  • ← ↑ ↓ → and All sides in the Inspector extend the open image, no mask needed, at its new size
  • Inpaint and img2img stop rendering when Maylyn stops waiting, instead of holding the GPU for minutes
  • Edit errors report the real cause; upscaling no longer asks for a prompt
v0.45.1

One LoRA library, a truly automatic Auto, and Avoid everywhere

LoRAs are shared across the desktop app, web and terminal, Auto picks the model your LoRAs were made for, and the negative prompt is easy to find and works on every model.

  • One LoRA library beside your image models, shared by every Maylyn on the machine; existing LoRAs move in automatically
  • Model on Auto follows your LoRAs: Pony on Pony, FLUX on FLUX; anything that can’t load is skipped and named
  • Remove LoRAs right from the Studio’s picker; the picker shows the ones that fit the model you chose
  • The Creative graph updates as you change settings in the Inspector
  • Avoid on FLUX: an opt-in setting that makes Avoid work on FLUX, at about twice the render time
  • Prompt, Avoid, Model, Style and LoRAs show with the Select tool the Studio opens on, not only after switching tools
  • An Avoid field on the Creative graph’s Settings node
  • Automations’ Image step: Avoid next to Draw, the same LoRA list as the Studio, and settings copied from the Studio include both
  • The chat image panel’s Avoid reaches the model as a real negative prompt
v0.45.0

LoRAs from Civitai, stacked on any render

Find, install and stack LoRAs without leaving the Image Studio, and chat models and image renders now take turns on the GPU instead of slowing the whole computer down.

  • A Find on Civitai tab in the Studio’s LoRA picker: search, preview and install, or paste any Civitai or Hugging Face link
  • Stack up to six LoRAs on one render, each with its own weight (negative too, for slider LoRAs); trigger words are added for you
  • Each LoRA knows its model family — SDXL, Pony, Illustrious or FLUX — and is flagged or skipped on a model it doesn’t belong to
  • Most Civitai LoRAs failed to load (“list index out of range”); they load again
  • Only .safetensors, SHA-256 checked; adult LoRAs off unless you turn them on; LoRAs of real people refused

v0.44

October 2026
v0.44.8

FLUX in the Image Studio, and every word of your prompt counts

v0.44.6 and v0.44.7: long prompts reach the model in full, Auto picks one model and sticks to it, and FLUX.1 schnell joins the image models you can install from Settings.

  • Prompts are read up to 750 tokens instead of being cut at 75, so the outfit, the setting and the art style you describe all count
  • FLUX.1 schnell: much closer to long, detailed descriptions — install it from Settings, pick it in the Studio
  • Settings → Models → Image models: install or remove SDXL and FLUX models with download progress
v0.44.5

Crisp pixel art, and every Studio setting does what it says

v0.44.4 and v0.44.5: pixel scenes keep the pixels the model drew, four Image Studio settings that did nothing now work, and a style you pick stays that style.

  • Pixel scenes no longer get re-gridded over the model’s own pixels — no more jagged edges or speckled skies
  • Avoid (negative prompt), Pixel finish: Off, Line strength and Wash intensity now take effect
  • Leftover pixel settings no longer turn a Photoreal, Cartoon or Watercolour render into pixel art
v0.44.3

Vision models see, the Image Studio draws, models come off the disk

v0.44: paste a picture into chat for a vision model to read, render in the Image Studio again, and remove any model you’re done with.

  • Ornith, Gemma 4, Qwen3.8, Qwen3.5 and Mistral Small read images through their vision projector, switched per model: Auto, On or Off
  • Image Studio renders work again — a prompt that didn’t sound like an image request was being refused
  • Settings → Models can remove any installed model and its vision projector; the running one stays until you switch

v0.43

October 2026
v0.43.8

Briefs that link to the real article

v0.43.7 and v0.43.8: headlines arrive as links even small models copy correctly, and every link must come from your sources.

  • Hacker News, feeds and other story lists reach the AI already as links, so a brief can show each headline as a clickable link
  • A link that doesn’t match one your sources gave — shortened, merged or made up — is dropped with its line
  • An example line from your instructions, filled in with today’s numbers, is caught instead of sent as fact
v0.43.6

Every source read plainly, every gap said out loud

Automations hand the AI clean data from any source, tell it which ones failed, and deliver the whole result.

  • Data from any API, feed, GitHub, Asana or MCP source arrives as plain lines instead of raw JSON
  • A source that fails is marked unavailable, so its section says so instead of being filled in
  • Long Discord messages are split instead of cut off, without link-preview cards
  • Web search works again
v0.43.5

Briefs that only say what your sources said

v0.43.4 and v0.43.5: a brief can no longer invent email, meetings, news or issues to fill its sections.

  • Every line naming a subject, time or person is checked against what the brief was given, and dropped when it isn’t there — along with any Focus item built on it
  • When your email can’t be read, the Inbox says so in one line instead of listing messages that don’t exist; no calendar connected means no Calendar section
  • The Automations board no longer says “Nothing is running your schedules” while the desktop app’s scheduler is running them
v0.43.3

Briefs that arrive, and say something

Scheduled briefs fire on time, even with the app closed, and report real numbers instead of filler.

  • Run automations in the background (Settings → System) keeps them firing after you close the app; the scheduler now restarts if it’s stopped
  • Stocks read “+1.4% on the day, +6.6% this week”, weather comes in °F with high, low and rain chance, news as headlines
  • No more sections invented for sources you haven’t connected, example text copied back, or “nothing to report” filler
  • When this computer can’t start its model, writing steps run on a computer in your Pack
v0.43.2

DMs from your own Discord bot, and Asana

Automations can now message you on Discord as your bot and read your Asana tasks.

  • DM me on Discord: the Send step delivers through your existing bot — it keeps running as is; the token stays encrypted on your computer and only goes to discord.com
  • Asana sources for your open tasks, a project’s tasks and your projects, with one-click workspace lookup
  • A webhook can feed Send and If steps directly, and “Only new items” shows only where there are items
v0.43.1

Automations that watch, decide and deliver

Read any API, Slack, feeds and calendars; hear only about what’s new; split on a condition; send the result where you choose.

  • An API as a data source: show the response, click the fields to keep. Keys are saved once under Connections, sent only over https to that API, never shown to the AI
  • Ready-made GitHub sources (PRs waiting on your review, notifications, assigned issues, releases), plus Slack (read-only), RSS/Atom feeds and any iCal calendar
  • Only new items on any source, schedules every 15 minutes to 6 hours, and webhooks that run a flow when called — a quiet run sends nothing
  • New steps: If splits items to Yes/No, Send posts the result to Slack, Discord or a webhook you fix on the board, Image renders with your Art Studio settings
  • AI steps get a searchable tool picker with per-action choices, and only see the tools they’re allowed

v0.42

October 2026
v0.42.14

Automation, flows, and faster defaults

This release fixes unattended automation tool authorization, updates the flow UX and model defaults, and ships the current packages for direct download.

  • Unattended flow tool calls are now allowed through the correct automation path without bypassing the hard safety gate
  • Empty/current-model selections resolve correctly, while auto and recommended model choices use the resource-aware defaults
  • Low-VRAM profiles now default to faster, lighter-weight model settings to keep local runs responsive
  • The web automation board and morning brief cards now reflect the live status and flow updates more accurately
  • The release artifacts are published in the standard archive formats for macOS, Linux, and Windows

v0.40

October 2026
v0.40.0

The desktop app is as fast as the browser

One Maylyn per computer, cleaner Windows, cleaner chat.

  • If Maylyn is already running (a boot service or maylyn serve), the desktop app opens it instead of starting a second copy that fought it over the model — first words in ~2 s instead of 20–30
  • The desktop’s start-up warm-up now prepares the profile, model and settings you actually use
  • Windows: closing or restarting Maylyn stops every helper process it started, so they no longer pile up
  • Quick Actions are gone; formatted replies no longer sit in a “markdown” box, and Share joins each reply’s actions
  • “Thought for …” sits above the answer, and the tok/s figure is now correct (it counted thinking tokens but timed only the answer)
  • The context meter moved to the status line and shows how much is used

v0.39

September 2026
v0.39.11

Follow-up replies in seconds, not half a minute

The prompt cache now works on sliding-window models.

  • Maylyn reads from the model file whether it uses sliding-window attention, instead of guessing from a “gemma” name
  • She keeps the full cache when it fits in VRAM, so a changed tail no longer means re-reading the whole prompt
  • Spark-X2.5-4B on an RX 6700 XT: a follow-up with a ~4,000-token prompt starts in ~5 s instead of ~23 s, for ~1.1 GB more VRAM
v0.39.6

Faster replies on small local models

The standing prompt Maylyn sends with every message is more than a third smaller.

  • Tools load when they’re needed: everyday tools stay ready, the rest sit in a short index and load in the same step she uses them
  • A shorter standing prompt on every model, without repeating what the agent framework already says
  • Ask mode is truly lightweight — plain conversation no longer carries file tools
  • On a 4B model, “how are you?” went from ~8,100 prompt tokens to ~5,100 (Auto) and ~3,300 (Ask); first words in 21 s instead of 33
  • Fixed: a duplicate file-deleting tool is gone, and chat mode is honored on every connection
v0.39.4

Songs built right, drums that keep time

The Song panel now follows the structure ACE-Step’s prompting guides recommend.

  • A four-step style builder — genre, instruments, mood, voice — with suggestions for your genre and a live preview of exactly what’s sent
  • Tempo never goes out blank: Auto uses your genre’s usual tempo
  • A lyrics meter for rushed or sparse lyrics, templates to start from, and Retake on every song
  • Fixed: a detail-sharpening step was silently off on AMD cards — drums are tighter now
  • Maylyn knows how to write songs when you ask her in chat
v0.39.3

A calmer Song panel

Suggestions that fit your song, instead of every tag at once.

  • One short “Try” row of four ideas that fit what you’ve written — genres to start, then what that genre is made of — with ↻ for others
  • Song sections live in a single “+ Section” menu beside the Instrumental switch
v0.39.2

Full-length songs, planned before they're played

Two- and three-minute songs finish now, and ACE-Step's planner joins in when the card has room.

  • Fixed: songs over about a minute rendered and were then thrown away while drawing the waveform — the same limit refused audio imports over a minute
  • ACE-Step 1.5's planner now works out melody, arrangement and structure before the song is rendered, whenever your graphics card has room, and steps aside for the chat model
  • The "Composing…" progress and timer now sit right above the Create button
  • A Sound row of texture chips, Build/Drop/Breakdown/Instrumental/Fade Out section tags, and up to four numbered takes per Create
v0.39.1

Same-day fix for the new Song panel

The song form could be hidden behind the studio's own panels.

  • With Regions or Renders open, their title bars and the timeline toolbar were drawn over the song form — it now always sits on top
  • Pressing Song before the music models had loaded left you in Sound mode; the choice is now kept and applied once they load
v0.39.0

Write songs, remix them, keep the ones you like

Making songs in the Sound Studio now works the way songwriters think: pick a style, write lyrics, press Create, and remix what you like.

  • A Sound | Song switch — Song mode has style chips, a lyrics box with one-tap Verse/Chorus/Bridge tags, an Instrumental switch, length presets and a title
  • Real remixes: select a song and restyle it, from “stay close” to “reimagine”, on its own lane under the original
  • Your songs: every song from the session in one list with play, remix, reuse settings and download
  • Two takes from one Create, and visible progress with a Cancel button while a song is being made
  • First-run setup now asks whether Maylyn should make music, and installs it in the background
  • Fixed: the old Variation button made an unrelated song and labelled it a variation of yours

v0.38

September 2026
v0.38.0

Local music that actually finishes

ACE-Step 1.5 is the default music model, and it works on AMD graphics cards.

  • Full songs with lyrics, up to ten minutes — a 90-second song took about a minute and a half on an RX 6700 XT
  • Tempo, key, time signature and seed go to the model as settings, which it follows more closely than prompt text
  • Fixed: songs on AMD cards could hang the display or come out silent, and every song failed to download at the very end
  • A sound-effect request is never quietly sent to a song model

v0.37

September 2026
v0.37.3

Same-day fix for a v0.37.2 slowdown on AMD cards

The safety check v0.37.2 added for AMD graphics cards could probe the card dozens of times before a reply even started.

  • Turns start noticeably faster on AMD graphics cards — the check now runs once per launch instead of dozens of times per turn
  • A crashed desktop backend now logs the actual signal that ended it, instead of a bare, unhelpful "None"
v0.37.2

Fits your graphics card, keeps out of its own source

A fresh install no longer picks a model too big for your card, and Maylyn can no longer be linked as a project of its own source code.

  • A fresh install now picks the largest model that actually fits your graphics card, instead of the largest on disk regardless of fit
  • The context-window safety limit for AMD graphics cards now always applies, even the first time Maylyn runs
  • A long conversation's internal summary no longer shows up in the chat as if it were the reply to you
  • Opening Maylyn from inside a copy of its own source code no longer offers to link that code as an editable project
v0.37.1

One home for all your projects

The desktop app and the command line now share one projects folder you can open and browse.

  • Every project now lives in ~/Maylyn/projects, for the desktop app and the command line alike — a project made in one is right there in the other
  • Your existing projects move there on their own the first time the new version starts, and nothing is overwritten
  • Set MAYLYN_PROJECTS_DIR to keep them somewhere else
v0.37.0

Long tasks finish — and Maylyn starts in seconds

Big jobs stop going in circles, answers stop going missing, local models run much faster, and your wiki fills itself.

  • Writing a large file no longer gets stopped as “the model went silent” — Maylyn knows the model is still writing and lets it finish
  • After a turn that used many tools, the answer always appears instead of an empty bubble
  • Opening Maylyn is ready in seconds: what the model has already read is kept on disk and reloaded, not re-read
  • Rewriting and editing files is up to 5× faster, and AMD cards get a larger working window in less memory
  • Your wiki now fills itself from your conversations while the computer is idle, one page per subject, never rewriting what's there

v0.36

September 2026
v0.36.6

Answers from the first message — and tools that behave

Faster from the moment Maylyn opens, more reliable with the tools you install, and honest when a step didn't happen.

  • The first message after opening Maylyn starts answering in a second or two instead of half a minute; plain Hacker News and subreddit lookups skip a whole thinking step
  • Wikipedia works again, Maylyn uses each installed service's real tool names, and installing a tool now checks that it works
  • “Thinking: Off” in the composer finally reaches the model, and a reasoning model stops re-thinking every step
  • A step written out instead of done is flagged in the reply, and the browser tool runs in the background instead of opening windows
  • Ask mode is labelled on the composer and keeps your installed lookup services; two settings that did nothing are gone
v0.36.5

Replies start sooner — and offline packs answer the questions they're for

Maylyn stops re-reading its whole setup before every reply, and knowledge questions use your installed packs.

  • Your model server's prompt cache now survives from message to message: follow-ups re-read tens to hundreds of tokens instead of thousands, and a new conversation starts replying in about 2 seconds instead of ~20
  • Tools Maylyn picks up during a conversation stay available for the rest of it, on the web as well as the desktop
  • Shorter memory instructions — about 1,000 fewer tokens on every prompt — that no longer contradict Maylyn's own
  • Questions an offline pack can answer now search it and read the best articles — with WikiMed installed, a health question used to loop until Stop
  • Plain questions no longer create or rewrite a notes file
v0.36.4

Maylyn uses the tools you install — and skills can bring their own scripts

Installed tools get used, skills install as whole folders, and Linux stops opening to a blank window.

  • Linux: Maylyn keeps its own font cache, so Google Chrome rewriting the shared one can no longer leave the window blank
  • Ask about Hacker News, Reddit, GitHub or another service you installed from Settings → Library and Maylyn uses that tool instead of scraping the website
  • Import a skill straight from its GitHub folder (or a zip/tar.gz); you see every file, scripts in full, before it installs — and Maylyn knows how to run them
  • A slow tool, or a slow “Allow” click, no longer ends the turn; shell commands can run up to 15 minutes when asked
  • Stop stops everything at once, including anything the agent started
v0.36.2

Sign-in fits every screen — and model switches stop failing

A sign-in fix for small screens, two reliability fixes, and a security hardening pass.

  • The sign-in and registration card scrolls in every browser — on a short laptop screen or a phone the registration form's top or submit button used to be out of reach
  • Maylyn always opens on Sign in; new people use the Create account link under it
  • Switching from a large model no longer fails with “backend did not become ready” — Maylyn waits for the old model to release the GPU
  • The leaderboard no longer shows a ghost, zero-point copy of you
  • Guests can't make Maylyn fetch this machine or your local network; the owner can still reach localhost dev servers
v0.36.1

Windows stops reopening itself — and installed tools finally reach the chat

Two Windows fixes, and a pass that makes Maylyn's tools, skills and knowledge actually reach each other in the desktop chat.

  • Exiting Maylyn no longer brings the splash screen back: the background service could relaunch the app on its way out, so every exit started a new copy. It also no longer leaves the model server running (holding GPU memory) after Maylyn closes
  • Right-clicking the tray icon opens its menu instead of snapping the window forward and closing the menu. Left-click opens Maylyn, right-click opens the menu
  • MCP servers installed from Settings → Library → MCP Tools now work in chat on your next message — before, most of the directory showed up in Settings but not in the desktop chat
  • Maylyn can ask you a clarifying question and look back at earlier chats in the desktop app again; the wallet's tools appear once you turn it on; sprite and tileset talk brings the pixel-analysis tools
  • Offline packs work with everything else: settled facts from the packs first, the web for anything recent; the investigating sub-agent and code sandbox can read packs, and medical questions check an installed WikiMed first
  • A new consistency test fails the build whenever a skill points at a tool the chat can't call, so these mismatches can't quietly come back
v0.36.0

The Library lives in Settings — and Knowledge can download Wikipedia

Settings has a new Library group with Knowledge, Skills, Models and MCP Tools panes, replacing the sidebar panel — and Knowledge does two new things.

  • Knowledge bases from the UI: create one, add links, upload text and PDF (Word and more when markitdown is installed), remove sources — where before this making a KB needed the command line
  • Offline packs from the Kiwix catalog: a suggested shelf (Wikipedia top 100 at 317 MB, intro-only at 13 GB or full text at 49 GB, WikiMed, Wiktionary, Wikivoyage, Wikibooks, iFixit) plus the whole catalog searchable by category and language. Downloads show progress, survive dropped connections, pause keeping what's already downloaded and resume from there, and a pack the disk can't hold is refused before it starts
  • One retrieval tool: search_knowledge searches your own KBs and every installed pack through a single entry point; a small read_knowledge opens a full article and only exists while a pack is installed, so a machine without packs pays nothing in prompt size
  • No automatic lookups — packs aren't searched on every message; the model searches when the question needs it, and a future semantic layer can slot behind the same tool

v0.35

September 2026
v0.35.22

The live thinking panel was clipped by its own scroll container

Expanding a thought while Maylyn was still working only ever showed a sliver of it — scrolling revealed a little more, never the whole thing.

  • The cause: the panel floated as position: absolute under its label, with its own scrollable area. The message log it lives inside scrolls its own overflow, and an absolutely-positioned descendant is clipped by that ancestor's overflow box regardless of its own height
  • So the panel was only ever visible through whatever sliver of it happened to fall inside the log's current scroll viewport — no amount of scrolling the panel itself (it had its own overflow-y: auto) could reach the rest
  • It flows in-line now instead, exactly like a finished (collapsed) reasoning block's body already did — scrolls with the rest of the conversation like everything else in the timeline, and can't be clipped by it
v0.35.16

The context-floor fix couldn't reach an already-warm model

A follow-up to the previous release: raising the auto-sizing floor did nothing for anyone who already had a model server running from before that fix shipped.

  • The cause: a second, separate constant decides whether an already-running model server is "good enough to defer to" rather than restart on the next launch — a deliberate design so the desktop app and a terminal maylyn serve don't bounce the same server back and forth
  • That constant had its own hardcoded 8192 that happened to equal the old floor. Raising the floor to 16384 did not move this one with it, so a server left over from before the fix still reported 8192, which still cleared this now-stale threshold — "defer to what's running" applied forever
  • It now aliases the same constant the floor itself uses, so a future change to one moves the other automatically
  • If tools still aren't showing up after updating: quit Maylyn completely (not just closing the window) and relaunch — the model server may need a one-time manual restart to pick up the new size
v0.35.15

Local models were losing every tool to a stale context floor

A local model could silently lose access to every tool, on every turn, with no way to fix it short of manually raising --ctx-size — exactly what auto-sizing exists to avoid.

  • The cause: the auto-sizer's floor sat at 8192, on the theory that the system prompt plus tools barely fit below it. That stopped being true — a plain turn with 8 active tools needs roughly 1732 tokens of tool schema alone, on top of the system prompt, reply reserve, and minimum history
  • The floor is now split in two: a normal floor of 16384 — what auto-sizing settles on with genuine VRAM/RAM room, high enough that a typical tool surface fits — and a separate, lower floor (8192, unchanged) reserved for models genuinely too big for the hardware
  • Forcing the higher floor onto a card with no room for it would trade a working-but-toolless turn for an out-of-memory crash, so that starved case keeps the old, smaller floor on purpose
  • Nothing to configure — this takes effect automatically the next time Maylyn or the affected model restarts
v0.35.14

Fixed the hub sign-in loop, added a People admin panel

Signing in through the hub could get stuck in a loop — fixed, plus a new admin panel for managing accounts.

  • The cause: Kratos's session cookie carries Secure (its own address is https://), and a real browser correctly refuses to store or resend a Secure cookie over the desktop app's plain http://127.0.0.1 origin. The proxy now strips that one attribute before relaying cookies, leaving HttpOnly and SameSite intact
  • Sign-in, registration, and recovery now start in place instead of navigating away and back — no more flash through two full page reloads before the form appears
  • Settings gained a People panel (owner-only): every account on your hub, with online/owner/banned status, ban/unban, remove, and revoke a pending invite — usable from the desktop app now, not just hub.maylyn.cloud directly
  • The desktop app's tray icon and taskbar icon no longer show at the same time
v0.35.7

Open In Maylyn

A Pack invite link followed in a plain browser now offers to open the native app first, the same way Slack or Discord invite links do.

  • The desktop app is what actually lends this computer's compute to a Pack — the web client can only watch — so following an invite link outside the app now shows "Open in Maylyn" / "Continue in browser" instead of dropping straight into the web flow
  • Fixed a real gap in the deep-link handoff this relies on along the way: it only ever carried one of the two tokens a brand-new person's invite link needs (the Pack to join, and the signup token to create their account with), silently dropping whichever wasn't picked first. Both survive the handoff now
  • Settings > Account no longer has its own separate invite card — Packs is the only place an invite gets created or sent, so there's exactly one
v0.35.6

Knows About The Hub

One more gap from the same family as the last two releases.

  • The desktop shell's only way of knowing where the hub is lived in a Go constant compiled in exclusively via release build ldflags — a locally built desktop binary never got that value at all, so it had no hub awareness whatsoever: no working invite links, no hub Kratos routing, regardless of what got fixed elsewhere. Forwarded as a real environment variable now, so every build knows about the hub, not just the ones a workflow happened to compile with the right flag
  • Separately: a genuine Pack invite link (hub.maylyn.cloud/?pack_join=…) was redirecting real invitees to the marketing site instead of the join flow — the hub's landing page deliberately sends anonymous visitors there, and pack_join had been left off the list of things that count as a real reason to be on the hub directly
v0.35.5

Icons And Invites

Two more bugs found immediately after the previous release shipped.

  • Every invite link generated from the desktop app pointed at http://127.0.0.1:8799/... — the app's own local backend — unusable by anyone but the exact machine that made it. The desktop app's webview always talks to its own local backend directly, so the request used to build the link never carried the real public address. Invite links now use the actual hub the desktop app is a client of
  • The Files panel's new icon buttons were rendering as blank, invisible boxes — the icon names used weren't in Maylyn's own small icon set, so they hit a deliberate "leave nothing behind rather than show something broken" fallback, but for a button with no text label that just looked dead. Added the missing icons, including two in the message action bar (Edit, Fork) that had the exact same problem from before this release
v0.35.4

Login, Actually

An emergency fix. The previous release's Kratos routing change broke sign-in completely for every desktop install within minutes of shipping.

  • Release binaries route through the hub's Kratos by default, and the hub's own config has never had the desktop app's local origin on its allow-list — so every single desktop login started failing outright with a flat 403. Reverted to the previous, working behavior (always use local Kratos on the desktop shell) while the hub-side config gets fixed properly, not under fire
  • "Link a folder" was silently dead — clicking it never opened a dialog at all. Root cause: the native folder picker was being called from the wrong kind of command handler, deadlocking the whole thing before it could ever show up
  • The Files panel's buttons are icons with tooltips now instead of a wall of text, and line up consistently across the toolbar, project rows, and file rows
v0.35.3

Actually Reaching Kratos

Sign-in was breaking for real users with a raw "Kratos unreachable" error, even when a hub was right there and ready. Two separate bugs stacked on each other; both are fixed.

  • The desktop app always passed its own local address to the backend as if it were a deliberate operator choice, which silently defeated the logic meant to fall back to the hub whenever there's no local Kratos running — no Docker, or it just wasn't up
  • Separately, the machinery built to track live Kratos readiness and gracefully show "starting…" while it comes up existed and was fully tested, but had never actually been wired up at startup — so the server could keep confidently serving as ready and proxy straight into a Kratos that hadn't come up yet
  • A very small local model (2B parameters) was quoting its own system prompt back verbatim inside its own reasoning, given nothing more than a trivial test message — it was getting the more verbose prompt purely because of its configured context window size, not because of how capable it actually is; small models now always get the terser form
v0.35.2

No Account, No Escape

Two more issues reported live: a guest with no account at all, and a desktop app that seemed impossible to fully close on Windows.

  • The desktop app could mistake its own local backend token for a genuine Kratos sign-in, letting someone chat with no account at all and labeling the session "signed in" with nothing real behind it — which is also why sign-out looked like it did nothing, since there was no real session to end
  • A guest with no account now gets a small, stable, unique ID of their own in Settings, instead of being just a bare username with nothing to point to
  • The desktop shell migrated from Electron to Tauri back in September, but the two builds share no single-instance lock — a machine that had Maylyn installed before the migration could end up running an orphaned, permanently un-updated Electron copy alongside a fresh Tauri install, two fully independent processes with no idea the other existed. Windows now detects and removes the leftover install on launch
  • Deleting a project is now proven, not just believed, to leave a linked project's real folder untouched — only ever the sandbox marker goes
v0.35.1

Three From The Field

Three bugs reported live by an actual friend testing on a fresh Windows machine, fixed the same day.

  • An elevated Command Prompt on Windows opens in C:\Windows\System32 by default — linking a system directory, a bare drive root, or Maylyn's own data is now refused outright, and the launch-time "start a project here?" prompt doesn't even ask about one in the first place
  • could not create canvas art venv: exit status 9009 on a machine with no real Python — Windows ships stub python.exe/python3.exe "App Execution Alias" files that do nothing but open the Microsoft Store; Maylyn now actually runs --version on whatever it finds before trusting it, and tries the official py launcher too
  • Dragging a node in the Art Studio graph could lose its wires when an unrelated render-job status update landed mid-drag and rebuilt the whole board out from under it — any rebuild is now deferred until the drag actually finishes
v0.35.0

Actually Signed In

A real account-requirement bypass, closed — and the account system it protects gets an actual front door instead of the one dead end it had before.

  • A session that failed to reach its own local backend at just the wrong moment on startup used to fall through to no-account auth instead of erroring — that's a bypass, not a config issue, and it's closed
  • "Create your Maylyn ID" is now a permanent card in Settings > Account, a one-time (dismissible) prompt on first sign-in, and an actual step in the onboarding wizard, which previously had none at all
  • Linking now actually links: your existing local profile's achievements and points merge into the new identity instead of starting over with a second, empty one — discovered live via a literally duplicated leaderboard entry
  • Granting real owner status on sign-in was a gap of its own — that flag was previously only ever set by the maylyn users CLI, so a Kratos-signed-in owner silently stayed a "guest" for tool capability until someone ran that by hand
  • Settings > Account and EchoBark's invite card both gained a one-click "send by email" next to the existing copy-link button

v0.34

September 2026
v0.34.0

Where Did That Go

A project's own data kept turning out to be unreachable from the UI that was supposed to show it — this release chases that down everywhere it was found, and folds project management into one real surface instead of two.

  • The launch-time project prompt no longer silently drops when a second maylyn launch races the app's own boot — reported live, repeatedly, on Windows
  • Generated images, shared across every project by design, are now reachable from a linked project's Files panel via a new Shared Artifacts view — browse, preview, rename, delete
  • Indexing now generates a structural project overview (stack, folder map) that always surfaces first, plus a Browse view into what got indexed
  • Project management (create, link, switch, index, browse, delete) is one shared component now, mounted in both the Files panel and Settings, instead of two implementations that had already drifted apart once before
  • New "Link a folder" uses the desktop app's native folder picker instead of requiring a terminal
  • A machine that reaches chat with no model engine installed at all now installs it in the background instead of failing the same opaque way forever

v0.33

September 2026
v0.33.0

The Studio, for real this time

A big batch: the Studio's image-generation backend was fundamentally disconnected from its own setup flow — clicking "Install image models" could report success and do nothing useful, forever — plus several smaller fixes that came out of actually using it.

  • setup/art (onboarding and the Studio both) was checking and configuring an old backend nothing actually renders through — a fresh, "successful" install still left image generation broken
  • Every Studio dropdown now renders in the app's own dark palette instead of the bare native control WebKitGTK was painting over it with
  • Dragging a graph node no longer causes every other node to flicker and disappear
  • Switching between two conversations now restores each one's own model/chat-mode/thinking-mode/skill/auto-approve settings
  • Fixed a crash-loop where a stale PID file made the background daemon think it was "already running" and refuse to start, every ten seconds, forever
  • Setup downloads (models, the image backend, the music backend) are now locked against starting twice from the same click
  • "Put this computer on the map" now works on a fresh desktop install

v0.32

September 2026
v0.32.6

Recognized anywhere — a config fix, and the first step onto Arch/Omarchy

Fixed a case where the first-run setup wizard could silently overwrite an already-configured model. Also the first real move onto Arch-based distros: an AUR package for Omarchy and friends, and the desktop app now recognizes itself in your app launcher even when run as a bare AppImage with no package manager involved.

v0.32.5

Composer polish, finished — and updates that actually check at boot

The third and final pass on the composer footer: every icon button is square again, dropdown menus no longer get stuck behind message-level menus, and the skill picker shows what's actually selected on page load. The desktop app also checks for updates immediately at launch instead of waiting 20 seconds for no reason.

v0.32.4

Two quick-pickers that looked like they did something and didn't

"Thinking mode: Off" now suppresses reasoning for any model, not one hardcoded family. "Work" mode now actually narrows the tool surface for speed, the way "Ask" already did. Plus another alignment pass on the composer footer.

v0.32.3

Puzzle Pieces: the composer footer, redesigned

The footer picker row got a real redesign — model, chat mode, thinking mode, skill, and auto-approve pickers reordered and verified pixel-by-pixel against a live rendered page, plus a quick way to switch models without leaving the conversation.

v0.32.2

Reads the Room: trusting what's actually running

Fixed a quiet, self-inflicted mismatch where the app could keep a different model loaded in VRAM than the one you'd actually selected.

v0.21

September 2026
v0.21.0

Packs & the desktop app

Maylyn ships as a native desktop app for macOS, Windows, and Linux. The EchoBark layer lets you form a Pack with people you trust and share compute directly between machines — no cloud in the path.

  • Native desktop app (Tauri) with a self-provisioning bundled backend and its own data root
  • Packs: private mesh of homes and friends, direct /mesh/envelope transport, mutual sharing on join
  • Open registration with email verification behind a coordination hub; a Pack invite alone is enough to sign up
  • Plain-language participation agreement, presented and accepted before sign-up
  • Real-geography ASCII globe behind the sign-in screen; site split into hub.maylyn.cloud (app) and app.maylyn.cloud (site)

v0.19

September 2026
v0.19.0

Service restart protection & generation-stall overhaul

Reliability pass on the long-running pieces.

  • Background service can no longer drift onto a stale or different config than the CLI
  • Generation pipeline detects and recovers from a stalled model server instead of hanging the turn
  • Context catalog makes the retrieved / injected context visible per turn

v0.17

August 2026
v0.17.0

Jellyfish: live turn timeline + pinned reply

Watch a turn unfold step by step — planning, tool calls, sub-agents — while the answer stays pinned in view as the detail scrolls past.

v0.15

August 2026
v0.15.0

Sound Studio, animation timeline & Studio graph presets

The creative Studio gains audio generation and an animation timeline alongside the pixel-art and game-art pipelines, plus reusable node-graph presets.

v0.13

August 2026
v0.13.0

Honesty

Make the app prove what it did rather than describe it, and make what it's doing visible while it does it.

  • Action-honesty guard extended to the web and phone backend, where it had been bypassed
  • A reply that narrates finished work with nothing executed is replaced by a plain statement that nothing ran — and why
  • Fixed the split-config bug where the image backend and the CLI read different config files

v0.9

July 2026
v0.9.0

deepagents drives the turn

The agent loop runs on LangChain's deepagents in a provisioned Node sidecar. Planning, tool selection, and sub-agents come from the library; tools, sandbox, safety kernel, and approval UX stay in Go.

v0.7

July 2026
v0.7.0

Zoomies: faster web workflows & safer profiles

Profile-safe memory and auth, rebuilt attachment UX with multi-file support, server-side PDF ingestion, and single-use replay links with transcript + artifact snapshots.