These are the same plain-English notes the app shows when it updates itself —
published here so you can see how iVibecode improves week over week. Newest first.
0.5.17 build 41
Wrong SSH passwords are now shown as sign-in failures instead of misleading network-unreachable errors, both while adding a server and when an existing session reconnects.
iVibecode can notify you when an agent is waiting for your approval or a decision, so you do not have to keep checking the app for prompts.
The empty state and Add Server form now link directly to the getting-started guide, making first setup easier to recover when you need step-by-step help.
0.5.16 build 40
Signing in no longer suggests you can create an account in the app; if you don't have one yet, it points you to the waitlist.
Adding your first server now matches the app: install the key, then Save, and the app explains why Save stays disabled until the key is installed.
Typed input that can't reach the server during a network blip now shows a warning instead of silently disappearing, and a Keychain problem while signing in is surfaced right away instead of quietly signing you out on the next launch.
Reading view now shows long Gemini and Qwen conversations that used to stop at a couldn't-read limit, and scrolling through very large messages is smoother.
Do Something For Me now reliably hands the first task to its helper session, fixing a startup timing issue that could skip the setup step.
Mark done now asks for confirmation before closing a session that's still working, so you can't stop a running task by accident.
Deleting a steering prompt no longer quietly turns off auto-steer for sessions that were using it.
0.5.15 build 39
Session switchers now filter Recently used and workspace groups by session ownership, so non-admin users do not see another person's remembered sessions.
Attaching to a session now checks ownership again at attach time before opening the terminal.
Stale terminal-vs-reading view memory is cleaned up when a session is no longer visible.
0.5.14 build 38
Add Server now refuses invisible whitespace-only server passwords before automatic key install starts, so a first-run setup cannot begin a doomed SSH password attempt.
App Store builds now treat imported SSH config entries as prefill shortcuts and avoid system ssh/scp paths that the sandbox cannot launch.
0.5.13 build 37
Add Server now keeps Save disabled after a failed Test connection when you paste a key or use your SSH config, so a broken server is not saved until the current settings pass a successful test.
0.5.12 build 36
Cmd-N now opens on the server you are actively using, otherwise the most recent server from this app run, before falling back to your starred default.
Restored windows remember whether they were in Terminal or Reading view across app relaunch, reconnect, and rename flows.
Non-admin users can no longer switch into other people's sessions from the title-bar Other sessions here menu; admins still keep the expected visibility.
0.5.11 build 35
Codex sessions whose only visible title is your server login or prompt noise now fall back to a useful OpenAI Codex label instead of filling the session list with that login name.
The Mac terminal pane build stays clean with the latest Swift compiler diagnostics.
0.5.10 build 34
Readable view now opens reliably on busy hosts with hundreds of sessions by checking only the session you are reading instead of scanning the whole fleet every few seconds.
Slow or stuck transcript reads no longer freeze the Reading view; the app keeps reporting an honest loading state, advances its readiness tick, and records a diagnostic capture if the first render never completes.
Background session sampling is batched so large fleets stop dragging down the rest of the app.
0.5.9 build 33
Session lists no longer fill with your server's runtime hostname when the saved server uses an IP address or SSH alias. Those hostname-only rows now fall back to useful session names instead.
iVibecode also cleans up previously cached hostname-only titles once it learns the server's real runtime hostname.
0.5.8 build 32
Qwen sessions launched through the official Qwen Code wrapper are recognized reliably even when tmux reports the foreground command as node, so Qwen work no longer falls back to an unknown assistant label.
Codex sessions whose pane title is only your server login name now fall back to a meaningful session label instead of showing every affected row as just that login.
0.5.0 rolling out now
iVibecode now helps find its own bugs. When something breaks, the app automatically sends a privacy-scrubbed error report — no code, no credentials, no session content — so problems can be found and fixed quickly. If you would rather not send anything, there is an off switch in Settings.
Connections stay alive and recover on their own. This release adds connection keep-alive plus a batch of automatic-recovery fixes: sessions no longer freeze after a network drop, restoring your windows at launch now retries instead of giving up, a server that comes back with a changed identity is recovered cleanly, and a rejected key can no longer lock you out of a server.
Reading view now opens by default for new sessions — and it no longer flickers back to the raw terminal. It keeps the last good view while new content loads, salvages content it does not recognize instead of giving up, and labels every fallback honestly so you always know what you are looking at.
When your sign-in expires, the app now asks you to sign in again with a clear prompt, instead of things quietly failing in the background.
0.4.28 build 20
Starting hidden Codex sessions is more reliable. Do Something For Me and Dispatch now check the managed Codex launcher before they start a hidden session, so a missing or unsafe server setup fails right away with a clear setup message instead of waiting and then pasting into nothing.
Saved servers recover more safely. If one saved server entry is damaged, iVibecode now drops only that bad entry and keeps the rest of your valid servers instead of wiping the whole saved-server list.
The reading view is reliable now. It used to sometimes flip itself back to the raw terminal, or show terminal gibberish right after you opened it — so it didn’t feel trustworthy. Now it stays put when you turn it on, shows your conversation cleanly instead of raw text, and a plain (non-AI) terminal opened in reading mode falls back to the normal terminal view instead of getting stuck on a loading spinner.
Long working sessions stay reliable. The app had been quietly leaving server connections open in the background — and when recovering from a dropped link — which, over a long day, could use up the server’s available connection slots until new terminals stopped opening. Those leaks are now closed, so it keeps connecting cleanly no matter how long you work.
Codex, Gemini, and Qwen sessions now reconnect to the same conversation. Before, the app reliably remembered only your Claude conversations, so a detached Codex, Gemini, or Qwen session could come back as a brand-new one — losing its history — after the underlying connection went away. Now the app remembers each session’s real conversation regardless of which coding assistant it’s running, and resumes it through the right tool. (Older saved sessions keep working unchanged.)
Sessions recover on their own more reliably. If a connection drops — including right as a session is starting up — the app keeps retrying and brings it back, instead of giving up and leaving you on an error.
No more leftover “reconnecting…” or error messages once you’re back. Old connection banners and stale error text now clear the moment the link is healthy again, restored sessions no longer show outdated banners, and internal connection-closing text no longer leaks into the session view.
Signing in again actually works now. On iPhone, if you’d signed out, tapping “Sign in” inside Settings did nothing — the login screen was hidden behind the Settings panel. Now the panel steps aside so you can sign back in. On Mac, finishing sign-in now closes the sign-in window itself instead of whatever window you were looking at.
Clearer recovery when sign-in setup hiccups. If creating your secure login key failed, the app used to show a confusing mix of “signed in” and “failed” with no way forward; now it tells you plainly and lets you retry. And if your saved session has expired, changing your profile photo gives a clear “please sign in again” message instead of a misleading “check your connection.”
Adding a server is more forgiving. If you paste a server address, username, or port with stray spaces around it, the app now trims them automatically instead of failing the connection for a reason you can’t see. Port numbers are checked up front, so a typo can’t slip through and cause a baffling failure later.
Mac: a clear “Add your first server” button now sits right on the opening screen, so the very first step is obvious instead of tucked away in the sidebar.
A gentle heads-up if you try to add a server address you’ve already saved (it never blocks you — you can still keep two if you mean to).
0.4.28 build 12
The reading view is reliable now. It used to sometimes flip itself back to the raw terminal, or show terminal gibberish right after you opened it — so it didn’t feel trustworthy. Now it stays put when you turn it on, shows your conversation cleanly instead of raw text, and a plain (non-AI) terminal opened in reading mode falls back to the normal terminal view instead of getting stuck on a loading spinner.
Long working sessions stay reliable. The app had been quietly leaving server connections open in the background — and when recovering from a dropped link — which, over a long day, could use up the server’s available connection slots until new terminals stopped opening. Those leaks are now closed, so it keeps connecting cleanly no matter how long you work.
Codex, Gemini, and Qwen sessions now reconnect to the same conversation. Before, the app reliably remembered only your Claude conversations, so a detached Codex, Gemini, or Qwen session could come back as a brand-new one — losing its history — after the underlying connection went away. Now the app remembers each session’s real conversation regardless of which coding assistant it’s running, and resumes it through the right tool. (Older saved sessions keep working unchanged.)
Sessions recover on their own more reliably. If a connection drops — including right as a session is starting up — the app keeps retrying and brings it back, instead of giving up and leaving you on an error.
No more leftover “reconnecting…” or error messages once you’re back. Old connection banners and stale error text now clear the moment the link is healthy again, restored sessions no longer show outdated banners, and internal connection-closing text no longer leaks into the session view.
Signing in again actually works now. On iPhone, if you’d signed out, tapping “Sign in” inside Settings did nothing — the login screen was hidden behind the Settings panel. Now the panel steps aside so you can sign back in. On Mac, finishing sign-in now closes the sign-in window itself instead of whatever window you were looking at.
Clearer recovery when sign-in setup hiccups. If creating your secure login key failed, the app used to show a confusing mix of “signed in” and “failed” with no way forward; now it tells you plainly and lets you retry. And if your saved session has expired, changing your profile photo gives a clear “please sign in again” message instead of a misleading “check your connection.”
Adding a server is more forgiving. If you paste a server address, username, or port with stray spaces around it, the app now trims them automatically instead of failing the connection for a reason you can’t see. Port numbers are checked up front, so a typo can’t slip through and cause a baffling failure later.
Mac: a clear “Add your first server” button now sits right on the opening screen, so the very first step is obvious instead of tucked away in the sidebar.
A gentle heads-up if you try to add a server address you’ve already saved (it never blocks you — you can still keep two if you mean to).
0.4.28 build 10
Codex, Gemini, and Qwen sessions now reconnect to the same conversation. Before, the app reliably remembered only your Claude conversations, so a detached Codex, Gemini, or Qwen session could come back as a brand-new one — losing its history — after the underlying connection went away. Now the app remembers each session’s real conversation regardless of which coding assistant it’s running, and resumes it through the right tool. (Older saved sessions keep working unchanged.)
Sessions recover on their own more reliably. If a connection drops — including right as a session is starting up — the app keeps retrying and brings it back, instead of giving up and leaving you on an error.
No more leftover “reconnecting…” or error messages once you’re back. Old connection banners and stale error text now clear the moment the link is healthy again, restored sessions no longer show outdated banners, and internal connection-closing text no longer leaks into the session view.
Signing in again actually works now. On iPhone, if you’d signed out, tapping “Sign in” inside Settings did nothing — the login screen was hidden behind the Settings panel. Now the panel steps aside so you can sign back in. On Mac, finishing sign-in now closes the sign-in window itself instead of whatever window you were looking at.
Clearer recovery when sign-in setup hiccups. If creating your secure login key failed, the app used to show a confusing mix of “signed in” and “failed” with no way forward; now it tells you plainly and lets you retry. And if your saved session has expired, changing your profile photo gives a clear “please sign in again” message instead of a misleading “check your connection.”
Adding a server is more forgiving. If you paste a server address, username, or port with stray spaces around it, the app now trims them automatically instead of failing the connection for a reason you can’t see. Port numbers are checked up front, so a typo can’t slip through and cause a baffling failure later.
Mac: a clear “Add your first server” button now sits right on the opening screen, so the very first step is obvious instead of tucked away in the sidebar.
A gentle heads-up if you try to add a server address you’ve already saved (it never blocks you — you can still keep two if you mean to).
0.4.28 build 9
Adding your first server takes you right in. Before, after you added your first server the screen looked unchanged — so it seemed like nothing happened and you had to find the server and tap it again. Now the app takes you straight into the new server's sessions, so you land where you expect.
Connecting to “This Mac” gives the right fix when it fails. If you use the one-tap “This Mac” shortcut and the connection can’t be made, it’s almost always because macOS Remote Login is turned off. The app used to suggest checking your Wi-Fi or VPN — which has nothing to do with reaching your own machine. Now it tells you exactly what to do: turn on Remote Login in System Settings → General → Sharing.
You can test a connection before saving it. If you set up a server by pasting your own key or by using an existing SSH shortcut, you can now tap “Test connection” to check it actually works before you save — so a small mistake is caught right away instead of showing up later when a session won’t open. It’s optional and never blocks saving.
If a reply can’t be confirmed delivered. When you reply to a session and the app can’t confirm your message actually went in — and can’t get it through on its own — it now actively alerts you, even after you’ve moved to another session and even on your phone, so a reply that didn’t land never goes unnoticed. It points you to open the session and check before resending, since the message may in fact have gone through.
The reading view shows the real assistant. In the clean reading view, a Codex or Gemini session used to label every message “Claude.” It now correctly shows the real assistant — “OpenAI Codex” or “Gemini” — so you always know which agent you’re reading.
Marking a session done is honest now. When you mark a waiting session done, the app used to say “Marked done” the moment it sent the command — even if the command didn’t take, leaving the session still open while the card claimed it was handled. Now it checks that the session actually closed (or was renamed) before saying done, and tells you to try again if it can’t confirm.
Switching a session to another account is confirmed. When a session hits a usage limit and you switch it to a different account, the app used to say it was resuming the instant it sent the command — even if the session never actually came back. Now it waits for the session to really restart before saying so, and tells you to try again if it can’t confirm, so you’re never left thinking a switch worked when it didn’t.
Starting a new session is more reliable. When you open a new terminal or session, the app now waits to confirm it actually came up before treating it as ready — instead of assuming it started — so you won’t tap into a session that isn’t really there yet.
Your replies reliably reach your agents. When you send a message into a running session, the app waits for the agent to be ready, confirms your reply actually went through, and re-sends it if the first attempt didn’t take — so a reply can’t get stuck sitting unsent in the input box. And if a session has already ended, it tells you to reconnect instead of quietly dropping your message.
Your Yes/No choices are confirmed — and never mis-fire. When an agent asks you to pick from a numbered choice (like “Yes”, “No”, or “Yes, and don’t ask again”) and you tap it on a “Waiting for you” card, the app now checks that your choice actually landed and tells you if it didn’t, so you can tap again. It never quietly sends a second keystroke on its own — which could otherwise have landed on a different question and chosen something you didn’t mean to.
Handing a whole task to an agent can’t silently drop it. When you use “Do Something For Me” to hand a full task to an agent, the app now confirms the task actually reached the session instead of assuming it did — and if it can’t confirm, it tells you and keeps your text rather than leaving you to wonder whether the agent ever got it.
Finished sessions no longer clutter your list. When a coding assistant exits, its session now tucks into a collapsed “Ended” group instead of lingering as a red row — tap one to reconnect it, or swipe (right-click on Mac) to dismiss it. Dismissing just clears the row; it doesn’t end anything on the server.
Dismissing a finished session now sticks. Before, a session you dismissed from the “Ended” group came right back within a few seconds. Now it stays gone — and a brand-new session that happens to reuse the same name still shows up normally.
The app now tells you when it has lost contact with a server instead of quietly showing a frozen list. If the connection goes quiet for a bit, you’ll see “Showing a snapshot from 10:42 — reconnecting…” so you can tell a calm, idle session from one where the link dropped. It clears itself the moment contact returns.
On a Mac, each server shows its status at a glance. In the sidebar, a server now shows a small indicator — a spinner while it's connecting, a red mark if it couldn't connect, and an amber mark if the connection has gone quiet — so you can spot a server that needs attention without having to click into it first.
More reliable connections: the app no longer hangs waiting on a flaky network, and a stuck session can no longer freeze it mid-task.
The reading view now shows the right conversation. When two coding sessions were running in the same folder, the clean reading view for a Codex or Gemini session could show the other session's conversation by mistake. Now each session's reading view always shows its own conversation — the app pins it to the exact conversation that belongs to the session you opened.
No more redundant alert for the session you're already watching. When a session you had open on screen became ready or needed you, the app still popped an interrupting banner and played a sound — even though you were looking right at it. Now that on-screen session's alert simply records quietly in your notifications, while every other session running in the background still gets a full banner so you never miss one.
A waiting session now explains itself in the reading view. When a session pauses to ask you something, the clean reading view used to show only the raw question for you to read and interpret. Now — while the session is actually waiting on you — it also shows a short plain-language summary of what's being asked and a suggested answer, the same friendly gist the “Waiting for you” cards give, right above the reply box, so you can understand and respond without decoding the prompt yourself.
A brand-new session no longer looks empty or broken in the reading view. When you opened the clean reading view on a session that hadn't said anything yet, it showed a bare “Nothing to show yet.” that read like something had gone wrong. Now it shows a friendly “This session is ready — type below to get started,” so you know where you are and how to begin. It appears only once the session is confirmed empty, never while the first messages are still loading.
Long lines of code stay readable in the reading view. Code shown in the reading view used to wrap long lines onto the next line, which scrambled the indentation and made code and command output hard to follow. Now long lines scroll sideways instead — you scroll to see the rest and the original layout stays intact, the way an editor shows code. Regular text still wraps normally.
Reconnecting actually works now. iVibecode shares one underlying connection across all your sessions to a server; when that shared connection died (your Mac slept, the network dropped) the old build kept trying to reuse the dead one, so reconnect failed with “status 255” over and over — even though opening a fresh connection by hand worked fine. Now, the moment a session drops that way, the app clears out the dead shared connection so the next reconnect builds a fresh one and comes back cleanly.
A busy coding turn no longer looks empty in the reading view. When a session ran several tools but said little, the clean reading view used to show almost nothing for that turn. Now it shows a small “Ran N tools” line you can tap to see exactly which files and commands it touched, so a working session reads like it’s actually doing something — while ordinary back-and-forth still looks like a calm conversation.
Dropped sessions reconnect on their own when you come back. Before, if a connection dropped while you were away — your laptop slept, the network dropped overnight, you switched Wi-Fi — the session tried to reconnect for about half a minute, gave up, and then sat on a “connection lost” error forever, so you’d return to a wall of stuck sessions with no easy way to revive them. Now the app notices the moment you’re likely back — you reopen the app, your Mac wakes from sleep, or the network comes back — and quietly reconnects the sessions that dropped, right where you left off. It only ever retries a session that genuinely dropped, so it never disturbs a live one. And when a connection truly can’t be recovered, a clear “Reconnect” — and “Reconnect on another account” — now sits on the error screen, separate from “Fix Display” (which only repaints the screen and can’t bring back a dropped connection).
An AI-suggested reply can no longer be silently lost. The Steering feature (and its hands-off auto-steer) used to send your suggested reply and clear it instantly — so if the connection wasn't live at that moment, your answer vanished with no way to retry, and you'd think the agent got it when it didn't. Now the app confirms the reply actually went in before clearing it; if it can't, it keeps the suggestion on screen and tells you exactly what happened (and, if it pasted but couldn't be confirmed, alerts you to check before resending so you never send the same thing twice).
When a session can’t connect, the message at the bottom now tells you what actually went wrong. Before, it just said to go run ssh in Terminal yourself to find the error — even though the real reason was already printed right above that line. Now it points you at that real reason, explains the usual causes in plain language (the server isn’t reachable — check your network or VPN; the host’s key changed; your SSH key isn’t loaded), and puts the Reconnect button right there, so you can tell at a glance whether it’s something to fix or just something to retry.
The very first sign-in screen can’t get stuck on a blank box anymore. If the Expertly sign-in page couldn’t load the first time you opened the app — you were offline, on a VPN or office network that blocks it, or the sign-in service had a hiccup — you used to see an empty white box with no explanation and no way forward except quitting. Now you get a clear message saying what went wrong (offline, a VPN/proxy or DNS issue, the server not responding) and a Try Again button right there, so a bad network on first launch is a quick retry instead of a dead end.
Adding a server is simpler. Before, the Save button stayed greyed out until you typed a “Display name,” with nothing telling you why — so if you filled in just the address and login, Save looked broken. Now the name is optional: fill in the connection details and you can save right away, and if you leave the name blank the server is simply called by its address (you’ll see that previewed in the name box, and can still type your own).
0.4.27 build 8
Adding your first server takes you right in. Before, after you added your first server the screen looked unchanged — so it seemed like nothing happened and you had to find the server and tap it again. Now the app takes you straight into the new server's sessions, so you land where you expect.
Connecting to “This Mac” gives the right fix when it fails. If you use the one-tap “This Mac” shortcut and the connection can’t be made, it’s almost always because macOS Remote Login is turned off. The app used to suggest checking your Wi-Fi or VPN — which has nothing to do with reaching your own machine. Now it tells you exactly what to do: turn on Remote Login in System Settings → General → Sharing.
You can test a connection before saving it. If you set up a server by pasting your own key or by using an existing SSH shortcut, you can now tap “Test connection” to check it actually works before you save — so a small mistake is caught right away instead of showing up later when a session won’t open. It’s optional and never blocks saving.
If a reply can’t be confirmed delivered. When you reply to a session and the app can’t confirm your message actually went in — and can’t get it through on its own — it now actively alerts you, even after you’ve moved to another session and even on your phone, so a reply that didn’t land never goes unnoticed. It points you to open the session and check before resending, since the message may in fact have gone through.
The reading view shows the real assistant. In the clean reading view, a Codex or Gemini session used to label every message “Claude.” It now correctly shows the real assistant — “OpenAI Codex” or “Gemini” — so you always know which agent you’re reading.
Marking a session done is honest now. When you mark a waiting session done, the app used to say “Marked done” the moment it sent the command — even if the command didn’t take, leaving the session still open while the card claimed it was handled. Now it checks that the session actually closed (or was renamed) before saying done, and tells you to try again if it can’t confirm.
Switching a session to another account is confirmed. When a session hits a usage limit and you switch it to a different account, the app used to say it was resuming the instant it sent the command — even if the session never actually came back. Now it waits for the session to really restart before saying so, and tells you to try again if it can’t confirm, so you’re never left thinking a switch worked when it didn’t.
Starting a new session is more reliable. When you open a new terminal or session, the app now waits to confirm it actually came up before treating it as ready — instead of assuming it started — so you won’t tap into a session that isn’t really there yet.
Your replies reliably reach your agents. When you send a message into a running session, the app waits for the agent to be ready, confirms your reply actually went through, and re-sends it if the first attempt didn’t take — so a reply can’t get stuck sitting unsent in the input box. And if a session has already ended, it tells you to reconnect instead of quietly dropping your message.
Your Yes/No choices are confirmed — and never mis-fire. When an agent asks you to pick from a numbered choice (like “Yes”, “No”, or “Yes, and don’t ask again”) and you tap it on a “Waiting for you” card, the app now checks that your choice actually landed and tells you if it didn’t, so you can tap again. It never quietly sends a second keystroke on its own — which could otherwise have landed on a different question and chosen something you didn’t mean to.
Handing a whole task to an agent can’t silently drop it. When you use “Do Something For Me” to hand a full task to an agent, the app now confirms the task actually reached the session instead of assuming it did — and if it can’t confirm, it tells you and keeps your text rather than leaving you to wonder whether the agent ever got it.
Finished sessions no longer clutter your list. When a coding assistant exits, its session now tucks into a collapsed “Ended” group instead of lingering as a red row — tap one to reconnect it, or swipe (right-click on Mac) to dismiss it. Dismissing just clears the row; it doesn’t end anything on the server.
Dismissing a finished session now sticks. Before, a session you dismissed from the “Ended” group came right back within a few seconds. Now it stays gone — and a brand-new session that happens to reuse the same name still shows up normally.
The app now tells you when it has lost contact with a server instead of quietly showing a frozen list. If the connection goes quiet for a bit, you’ll see “Showing a snapshot from 10:42 — reconnecting…” so you can tell a calm, idle session from one where the link dropped. It clears itself the moment contact returns.
On a Mac, each server shows its status at a glance. In the sidebar, a server now shows a small indicator — a spinner while it's connecting, a red mark if it couldn't connect, and an amber mark if the connection has gone quiet — so you can spot a server that needs attention without having to click into it first.
More reliable connections: the app no longer hangs waiting on a flaky network, and a stuck session can no longer freeze it mid-task.
The reading view now shows the right conversation. When two coding sessions were running in the same folder, the clean reading view for a Codex or Gemini session could show the other session's conversation by mistake. Now each session's reading view always shows its own conversation — the app pins it to the exact conversation that belongs to the session you opened.
No more redundant alert for the session you're already watching. When a session you had open on screen became ready or needed you, the app still popped an interrupting banner and played a sound — even though you were looking right at it. Now that on-screen session's alert simply records quietly in your notifications, while every other session running in the background still gets a full banner so you never miss one.
A waiting session now explains itself in the reading view. When a session pauses to ask you something, the clean reading view used to show only the raw question for you to read and interpret. Now — while the session is actually waiting on you — it also shows a short plain-language summary of what's being asked and a suggested answer, the same friendly gist the “Waiting for you” cards give, right above the reply box, so you can understand and respond without decoding the prompt yourself.
A brand-new session no longer looks empty or broken in the reading view. When you opened the clean reading view on a session that hadn't said anything yet, it showed a bare “Nothing to show yet.” that read like something had gone wrong. Now it shows a friendly “This session is ready — type below to get started,” so you know where you are and how to begin. It appears only once the session is confirmed empty, never while the first messages are still loading.
Long lines of code stay readable in the reading view. Code shown in the reading view used to wrap long lines onto the next line, which scrambled the indentation and made code and command output hard to follow. Now long lines scroll sideways instead — you scroll to see the rest and the original layout stays intact, the way an editor shows code. Regular text still wraps normally.
0.4.26 build 7
If a reply can’t be confirmed delivered. When you reply to a session and the app can’t confirm your message actually went in — and can’t get it through on its own — it now actively alerts you, even after you’ve moved to another session and even on your phone, so a reply that didn’t land never goes unnoticed. It points you to open the session and check before resending, since the message may in fact have gone through.
The reading view shows the real assistant. In the clean reading view, a Codex or Gemini session used to label every message “Claude.” It now correctly shows the real assistant — “OpenAI Codex” or “Gemini” — so you always know which agent you’re reading.
Starting a new session is more reliable. When you open a new terminal or session, the app now waits to confirm it actually came up before treating it as ready — instead of assuming it started — so you won’t tap into a session that isn’t really there yet.
Your replies reliably reach your agents. When you send a message into a running session, the app waits for the agent to be ready, confirms your reply actually went through, and re-sends it if the first attempt didn’t take — so a reply can’t get stuck sitting unsent in the input box. And if a session has already ended, it tells you to reconnect instead of quietly dropping your message.
Your Yes/No choices are confirmed — and never mis-fire. When an agent asks you to pick from a numbered choice (like “Yes”, “No”, or “Yes, and don’t ask again”) and you tap it on a “Waiting for you” card, the app now checks that your choice actually landed and tells you if it didn’t, so you can tap again. It never quietly sends a second keystroke on its own — which could otherwise have landed on a different question and chosen something you didn’t mean to.
Handing a whole task to an agent can’t silently drop it. When you use “Do Something For Me” to hand a full task to an agent, the app now confirms the task actually reached the session instead of assuming it did — and if it can’t confirm, it tells you and keeps your text rather than leaving you to wonder whether the agent ever got it.
Finished sessions no longer clutter your list. When a coding assistant exits, its session now tucks into a collapsed “Ended” group instead of lingering as a red row — tap one to reconnect it, or swipe (right-click on Mac) to dismiss it. Dismissing just clears the row; it doesn’t end anything on the server.
The app now tells you when it has lost contact with a server instead of quietly showing a frozen list. If the connection goes quiet for a bit, you’ll see “Showing a snapshot from 10:42 — reconnecting…” so you can tell a calm, idle session from one where the link dropped. It clears itself the moment contact returns.
More reliable connections: the app no longer hangs waiting on a flaky network, and a stuck session can no longer freeze it mid-task.
0.4.25 build 6
Starting a new session is more reliable. When you open a new terminal or session, the app now waits to confirm it actually came up before treating it as ready — instead of assuming it started — so you won’t tap into a session that isn’t really there yet.
Your replies reliably reach your agents. When you send a message into a running session, the app waits for the agent to be ready, confirms your reply actually went through, and re-sends it if the first attempt didn’t take — so a reply can’t get stuck sitting unsent in the input box. And if a session has already ended, it tells you to reconnect instead of quietly dropping your message.
Your Yes/No choices are confirmed — and never mis-fire. When an agent asks you to pick from a numbered choice (like “Yes”, “No”, or “Yes, and don’t ask again”) and you tap it on a “Waiting for you” card, the app now checks that your choice actually landed and tells you if it didn’t, so you can tap again. It never quietly sends a second keystroke on its own — which could otherwise have landed on a different question and chosen something you didn’t mean to.
Handing a whole task to an agent can’t silently drop it. When you use “Do Something For Me” to hand a full task to an agent, the app now confirms the task actually reached the session instead of assuming it did — and if it can’t confirm, it tells you and keeps your text rather than leaving you to wonder whether the agent ever got it.
Finished sessions no longer clutter your list. When a coding assistant exits, its session now tucks into a collapsed “Ended” group instead of lingering as a red row — tap one to reconnect it, or swipe (right-click on Mac) to dismiss it. Dismissing just clears the row; it doesn’t end anything on the server.
The app now tells you when it has lost contact with a server instead of quietly showing a frozen list. If the connection goes quiet for a bit, you’ll see “Showing a snapshot from 10:42 — reconnecting…” so you can tell a calm, idle session from one where the link dropped. It clears itself the moment contact returns.
More reliable connections: the app no longer hangs waiting on a flaky network, and a stuck session can no longer freeze it mid-task.
0.4.24 build 5
Your replies now reliably reach your agents. When you send a message into a running session, the app waits for the agent to be ready, confirms your reply actually went through, and re-sends it if the first attempt didn’t take — so a reply can’t get stuck sitting unsent in the input box. And if a session has already ended, it tells you to reconnect instead of quietly dropping your message.
Your Yes/No choices are confirmed — and never mis-fire. When an agent asks you to pick from a numbered choice (like “Yes”, “No”, or “Yes, and don’t ask again”) and you tap it on a “Waiting for you” card, the app now checks that your choice actually landed and tells you if it didn’t, so you can tap again. It never quietly sends a second keystroke on its own — which could otherwise have landed on a different question and chosen something you didn’t mean to.
Handing a whole task to an agent can’t silently drop it. When you use “Do Something For Me” to hand a full task to an agent, the app now confirms the task actually reached the session instead of assuming it did — and if it can’t confirm, it tells you and keeps your text rather than leaving you to wonder whether the agent ever got it.
Finished sessions no longer clutter your list. When a coding assistant exits, its session now tucks into a collapsed “Ended” group instead of lingering as a red row — tap one to reconnect it, or swipe (right-click on Mac) to dismiss it. Dismissing just clears the row; it doesn’t end anything on the server.
The app now tells you when it has lost contact with a server instead of quietly showing a frozen list. If the connection goes quiet for a bit, you’ll see “Showing a snapshot from 10:42 — reconnecting…” so you can tell a calm, idle session from one where the link dropped. It clears itself the moment contact returns.
More reliable connections: the app no longer hangs waiting on a flaky network, and a stuck session can no longer freeze it mid-task.
0.4.23 build 4
The app no longer freezes when your network drops or stalls. Before, a bad connection could leave the app hung — a frozen status light, messages that silently went nowhere — until you force-quit. Now connections give up and recover within a few seconds.
Sessions that hit their usage limit now recover automatically on a backup login instead of locking up.
A live session can no longer disappear because of a single missed status check.
When you send a message to a session that is still starting up, it now waits for the session to be ready instead of dropping the message.
If the terminal display gets garbled, the app now repairs it on its own.
The reading view — the clean, easy-to-follow conversation — now understands more conversation formats, and when it genuinely cannot read one it tells you plainly instead of silently showing the raw terminal.
The reading view now works for Codex and Gemini sessions too, not just Claude — so you get the same clean conversation for every coding assistant.
0.4.22 build 3
Sessions that hit their usage limit now recover automatically on a backup login instead of locking up.
A live session can no longer disappear because of a single missed status check.
When you send a message to a session that is still starting up, it now waits for the session to be ready instead of dropping the message.
If the terminal display gets garbled, the app now repairs it on its own.
The reading view — the clean, easy-to-follow conversation — now understands more conversation formats, and when it genuinely cannot read one it tells you plainly instead of silently showing the raw terminal.
The reading view now works for Codex and Gemini sessions too, not just Claude — so you get the same clean conversation for every coding assistant.
0.4.21 build 2
Fixes the bug where clicking one of your live sessions could show a red error and drop the connection. The app had an automatic 'restart a stopped session' feature that was reaching into sessions that were actually still alive and typing a restart command into them — including the one you were looking at — which tore down the connection. Three fixes: automatic restart is now off by default (turn it on in Settings if you want it); it will never touch a session you currently have open; and the app is now much more careful about deciding a session has really stopped, so a healthy session is no longer mistaken for a dead one.
0.4.20 build 2
Updates now install themselves: when a new version is available iVibecode downloads it, verifies it, replaces the running app, and relaunches — no more downloading to your Downloads folder and reinstalling by hand. Also includes the recent reconnect fixes: a recovered session now falls back to a working backup account when your usual accounts are rate-limited (so recovered sessions stop vanishing), the reconnect banner has a menu to reconnect through any available account or a specific one you choose, and status square colors come with a plain-English explanation on hover (orange means the session needs you, not that it is rate-limited).
0.4.19 build 2
Reconnecting to a recovered session now falls back to a working backup account when your usual accounts are rate-limited, so recovered sessions stop vanishing. The reconnect banner has a new menu to reconnect through any available account or a specific one you choose. Status square colors are now consistent with a plain-English explanation on hover (orange means the session needs you, not that it is rate-limited).
0.4.18 build 2
Reconnect to a running session by its conversation, smoother device key handling, and account-selection fixes when starting a new Claude Code session.
0.4.10 build 1
Clicking a session in the sidebar now brings its window all the way back, even when you had shrunk that window down to just its title bar (by minimizing it or letting it tuck away while the agent worked). Before, the window came forward but stayed collapsed to a strip, so you had to expand it by hand. Now one click both brings it forward and restores it.
0.4.9 build 2
When a session comes back under a new name — after the server restarts, or after a recovery renames it — the app now finds it again by the conversation it's running and reconnects you to it, instead of losing the window. It only reconnects when there's a single, unambiguous match, so you're never dropped into the wrong conversation.
0.4.7 build 1
Fixes a problem that could stop the Mac app from opening, and makes it reliably remember its sign-in key so reconnecting to a server just works. The 'Readable' conversation view now keeps real answers visible instead of tucking them into the collapsed reasoning thread. The server password box in 'Add Server' is now visible before you click it.
0.4.6 build 2
Fixes a Mac problem that stopped iVibecode from remembering its sign-in key, which prevented connecting to a server. Adds a built-in 'Check for Updates' so future versions are one click away.