Every release of Liner Code, newest first.

0.2.2

Alpha,

Update from 0.2.1 if you have it. On a Mac Liner Code does it by itself (Restart to update), or download the new DMG. On Windows, Liner Code now installs: run the new setup. A cleaner window, after TasteCode v0.5, in Liner 2.0's own look, and a new icon that turns dark with your Mac.

New

  • A Windows installer: Liner-Code-0.2.2-win-x64-setup.exe installs Liner Code for you alone, with no administrator, in your own folder. It's in the Start menu with the new apps, and Settings › Apps removes it again, leaving your sessions and settings. Running the next setup puts the new version in place of the old one, asking to quit Liner Code first. The zip stays, to run it without installing. Neither is signed yet, so SmartScreen asks the first time (More info › Run anyway).
  • A new icon: two turns that share one centre, the outer in ink and the inner in Liner blue. On macOS 26 and later it follows the system's light or dark look by itself, in the Dock, the Finder and Launchpad; on earlier systems the Dock icon follows it while Liner Code runs. The site's favicon and the README follow your theme too.
  • A bottom panel: the session's shells and script runs open under the thread and its composer, with the shells as the panel's own tabs, a + for another, the open shell's folder and tools, and a button to put it away. Terminal comes up there from its key (which also puts it away), ⌘K or a script.
  • Open beside: right-click a session and Open beside puts it next to the one on screen, each with its own header, composer and panels. Keys go to the side you're in; × closes a side.
  • Needs you: sessions waiting on you have a section at the top of the sidebar, with their project at the end of the row, while there are any; pinned ones too, as the Dock's badge counts them.
  • Plan limits at a glance: the ring at the sidebar's foot shows your busiest plan window and opens every tool's windows with when each resets, and Usage and cost. In a session, the context ring's pop holds the plan's windows too.
  • Agents at work stay in sight: while a model's subagents run, each has a line under its folded row, with what it's doing and for how long.
  • Settle a whole project: point at a project's header and press its settle button, or right-click it, and its finished sessions go to Settled at once, with one Undo. Sessions still at work or waiting on you stay; the project comes back to the list with its next session. In Settled, sessions sit under their project's header, folded, and the header's ↶ brings the whole project back.
  • An update waits in the sidebar: a Liner Code that's ready or downloading shows on a card over the foot, with Restart and how many sessions are working, and × to put it away until the next one. With the sidebar hidden, Home says so instead.

Changed

  • The session's header is one quiet row: the title with its ··· menu (rename, pin, where it works, your editor, scripts, the branch and committing), the branch, the Reviewer's verdict, Changes, Run, and two buttons for the bottom and right panels. Side chat, Browser, Files, Design, Pull request and the rest open from the right panel's + and their keys (⌘⇧ and a letter).
  • The right panel's tabs are its header: every tab keeps its name, the + holds the guide, and the arrows give a tab the whole window. Apps you pin (right-click their tab) keep an icon at the start of the strip. The second pane and its Split button are gone: a panel split in two in 0.2.1 opens as one, with all its tabs.
  • The sidebar is lighter: New session, with search at its end, Routines and Add-ons as rows on top; your app pages under Apps; then Needs you, Pinned and Projects, with Filter and Add a project beside the Projects label. A session takes one line: its maker's mark, its title, and a mark while it works or waits, or how long ago; the rest is in the card that comes as you rest on it. Snoozed and Settled are one quiet row; the foot is you, the team, your plans' limits and Settings.
  • The chat lines up with the composer: the text starts where the composer's does, folded rows end in a small triangle, and a turn's changes read "2 files changed +3 −1 · View changes".
  • Diff is called Changes everywhere: its tab, its key's name and ⌘K.
  • Project badges are flat: one colour of their own each, without the gradient and shine.
  • Add-ons in the sidebar opens its page straight away; Make one with an agent is that page's button.

0.2.1

Alpha,

Update from 0.2.0 if you have it. On a Mac Liner Code does it by itself (Restart to update), or download the new DMG; on Windows, download the new zip.

New

  • Liner 2.0: what agents make for Liner Code is drawn in its own look. Every add-on is made with a design skill of Liner Code's surfaces, buttons, rows and type, and gets the app's colours to draw with, so a panel or a page reads as part of the app.
  • A model in an app: an add-on can ask a model and get the answer back as it's written. The first ask opens Liner Code's own popup, where you pick one of your models and allow it; the app keeps it and shows it on its strip, where a click changes it. It's only a model, with no tools, files or agent: an API endpoint's, or Claude Code's with its tools, settings and servers off. Each app gets two answers at a time and 300 a day, and its usage is logged under it.
  • Each mode leads with its icon in the picker, on Home's strip and in the chip beside a session's title: Standard's sparkle, Workshop's blocks, and your own modes with their agent's glyph.

Changed

  • Creator mode is now Workshop, in name only: your sessions and settings carry over.
  • Workshop only when you ask for it: it starts from Create your add-on, from "Make it an app", or when you pick it under the box. Everything else starts in your default mode.
  • Models come from one tier list built on Artificial Analysis (Terminal-Bench 4.0, FrontierCode v1.1, cost per task) instead of a maker-by-maker order. Opus and GPT Astra plan and take the hard jobs; DeepSeek V4.1 Flash builds wherever it's ready, then Sol, then Sonnet. A model never builds for itself: when Sol is your best, Sol plans and Terra builds. Critics come from different makers.
  • OpenCode Go's quota lasts longer: its frontier-class models have a small monthly cap, so none of them plans, takes hard jobs or builds in Dual. DeepSeek V4.1 Flash does it all, the newest GLM Flash judges, and MiMo V2.6 Pro and the newest GLM critique. Capped models still read.

Fixed

  • Home's strip no longer runs past the box. It holds where the task runs and the branch on the left and the mode at the right, each cut short with an ellipsis; Scratch folder, Carry on a session and the keys move to a quiet line under it.

0.2.0

Alpha,

Update from 0.1.9 if you have it. On a Mac Liner Code does it by itself (Restart to update), or download the new DMG; on Windows, download the new zip. New: add-ons, things your agents make for Liner Code itself, and Workshop to make them.

New

  • Add-ons: ask an agent for a connection, a panel or an app, and it makes one for Liner Code. A card shows what it can touch before it's added, and nothing is added until you say yes.
  • Connections: an MCP server from a prompt. The agent drafts it, you add it on the card with its key, which goes to the keychain, and every agent gets it next to Liner Code's own tools.
  • Panels and apps: the agent's own page, run in a sealed frame that reaches Liner Code only through what its card allowed: your files, your sessions, the composer, its own storage, or an address on the internet, which you hold to allow. One opens in the right dock, as a tab beside Chat, or as a page of its own from the left sidebar.
  • Create your add-on: Add-ons in the sidebar opens a menu with Browse add-ons and Create your add-on, which starts a task in Workshop with "Create a Liner Code add-on with a left sidebar entry." in the box. Say what it should be, like a notes app for long writing, and the agent builds the full app on a page of its own, not a demo.
  • Make it an app: at the end of a turn an agent can offer to turn what it did into an app. Pick where it goes and Create: it's made in the background and added if it touches no more than the card said. Then Keep or Undo, and Restore.
  • Workshop: each session now has a mode, picked under the box on Home and kept for the session: Standard, Workshop, or one of your own. Workshop is Standard plus a guide to add-ons and a closer look at Liner Code, never more trust. A Workshop session shows a chip beside its title, and the agent can save a mode of yours on a card.
  • Settings › Modes: the built-in modes and yours as cards, each with its details, how to use it with example tasks, Set as new task default, and Let the agent help me make one.
  • The Add-ons page: what you've added, each with one sentence and a switch. A row opens its details: where it shows, what it can touch, its version and the way back, who made it, and Remove, which keeps its files. Add add-on adds one from GitHub or a folder, through the same card. Settings › Add-ons keeps the detailed view.
  • Every version of an add-on is kept. An update that touches no more than before goes in without asking; one that touches more asks again.

Changed

  • One row at the top right of a session takes the place of the floating tray and the panel's bottom row: Changes, the surfaces (Browser, Design, Terminal and the rest, with their ⌘⇧ keys), pinned apps, a ⋯ menu and the dock button.
  • The right panel is a dock of one or two panes, with tabs you can move, a + tab that lists what can open there, and a full-canvas switch. Each session keeps its own.
  • Home's heading is "What should we build in …?" again; the mode picker sits under the box.
  • Settings › Appearance › Glass keeps only the composer: the tray it also styled is gone.

Fixed

  • A writing command could pass as a read in approvals through quoting, comments, bash -c or zsh expansions. A "don't ask again" rule covered env prefixes and ./git; split or long rm flags weren't counted as destructive; Auto waved through MCP tools named like edits.
  • A routine's work step on a busy session let the gate and merge run anyway. A failed first poll, or older pull requests coming into the window, fired runs; a bad schedule time wasn't caught; a run's token limit wasn't kept, and a run that threw wasn't counted or cleaned up.
  • An old unanswered question held every later turn in Needs you. Messages queued during a /goal waited for its end instead of going between its turns. Deleted and archived sessions were mixed up, and streamed text showed twice after a reload.
  • The window could leave the app's own address, and embeds opened elsewhere instead of in place. A key saved after launch didn't reach a restarted engine, a capture window could hang, and Windows consoles closed too soon.
  • ⌘1–⌘9 fired from inside pickers, and Enter in an input method sent early. Archive's Delete didn't ask twice. A docked panel hid a narrow session, and in dark mode find, gutters and theme chips were hard to read.

0.1.9

Alpha,

Update from 0.1.8 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG. New: Liner Code for Windows, as a zip.

New

  • Liner Code for Windows (x64, alpha): download Liner-Code-0.1.9-win-x64.zip, unzip it anywhere and open Liner Code.exe. It isn't signed yet, so SmartScreen asks the first time (More info › Run anyway). It drives the Claude Code, Codex and OpenCode you installed with npm, as on a Mac; Sign in and Install open a console. It puts itself in the Start menu, so its notifications show. The Terminal is PowerShell, without full-screen programs for now, and the app doesn't update itself yet: download the next zip.
  • On Windows the words follow: this PC, File Explorer, Ctrl in every shortcut, and keys sealed by Windows rather than a keychain.
  • Designs, with every agent. Ask Claude Code, Codex, OpenCode, Hermes or any ACP agent for a screen, a page or a prototype, and it draws it in the new Design surface beside the session (⌘⇧E): one HTML file in .liner/designs/, written and edited with the agent's own tools, then shown with Liner Code's design_show. Each time it's shown it's kept as a version.
  • The surface: Desktop, Tablet and Phone frames fitted to the panel (or at 100%), Live or any version, its code, light or dark. Each edit the agent makes draws as it lands, the next drawing loading behind the one you see. Bring back an old version, open it in your browser, copy its HTML, or show its file.
  • Comment on a part: pick any element of the design and say what should change; the agent gets the element and your words, edits the file and shows the next version.
  • Build it asks the agent to make the design for real with the project's own components. The surface remembers which version you had built and says when the design has changed since.
  • The agent sees what it drew: design_show answers with a picture of the design at its size and full height, and its console errors.
  • Each version has a card on the timeline with a picture of it. A page shown in the chat can be opened as a design. A lead draws a design itself, and plans its build when you ask.
  • The Demo draws a tide screen, and a new version for each comment.
  • API endpoints (Settings › Models): models from DeepSeek, Kimi, GLM, OpenRouter, LM Studio, Ollama or any Anthropic- or OpenAI-compatible API, run through the tool that speaks it: Claude Code for Anthropic's Messages, Codex for OpenAI's Responses, OpenCode for Chat Completions. Each is a tool of its own in the model picker, with that tool's files, commands and approvals, and Liner Code's Browser and designs. Find its models asks the endpoint for its list. Keys go to the keychain, and only to that tool's process.
  • Pick a service and its address and protocol fill in: Anthropic, DeepSeek, Kimi, GLM, MiniMax, OpenAI, xAI, OpenRouter, Gemini, Qwen, Groq, Mistral, Together, Fireworks, SiliconFlow, NVIDIA NIM, Ollama Cloud, and LM Studio, Ollama, LiteLLM or vLLM on this Mac, with a link to get each one's key. Any other service works by its address and protocol.

Changed

  • .liner/ is left out of every turn's snapshot and goes in the repository's info/exclude with the first design, so designs never show as changes to review or commit.
  • Codex through codex exec (an older Codex) gets Liner Code's tools too: the Browser, pages and designs.
  • Liner Code's tools in an ACP agent (OpenCode's liner_design_show) show by their own names and titles, as they do in Claude Code and Codex.
  • An agent is told Liner Code's tools by the names its tool offers them (mcp__liner__design_show in Claude Code, liner_design_show in OpenCode): a smaller model through an API endpoint called the plain name it was told, which Claude Code doesn't have.

Fixed

  • Install in Setup and Settings ran its note as part of the command (npm install -g @openai/codex, then codex login), so it tried to install packages called "then" and "login".
  • Committing with every file unticked (⌘↩ in the message) committed all of them, and pushed too with Commit and push on; pressing it twice made two commits.
  • Stop on the pull request card stopped nothing: the title was still written and the branch pushed. "Open it as a draft" with no title or body of your own opened it ready for review.
  • A link in .liner/designs/ to a file outside the folder let a design be written there; and bringing back a version of a design kept outside .liner/designs/ failed.
  • An agent tool that died or went quiet while starting (an ACP agent, the Codex app server) left the turn waiting for good, Stop included. Stop while a session couldn't be picked up again lost its conversation for the turns after.
  • Read only, and back, now reaches OpenCode's own mode: it stayed in plan, or could still edit.
  • A Codex app server that never started made usage limits wait for the rest of the run; one that died as a session opened showed its error twice.
  • Forking while the Reviewer read a turn dropped that turn from the fork. Compared sessions started before their worktree's setup command finished. Edit from here kept the refiner's conversation with the turns taken back.
  • Editing the queue after Stop sent it at once, though Stop keeps the queue for you.
  • A question card with no questions broke the turn, with no Skip. A turn carried on by a second model pointed each part's diff at the first part's.
  • The model picker's Enter picked the highlighted model even on a star or a source; a selection dragged out of an agent's dialog closed it and lost your edits; Run the setup again set you back to Solo.
  • Appearance's Restore defaults kept your own theme and picture. The Terminal kept old colours after a theme of your own. Find counted, and jumped to, text in folded steps.
  • The Browser showed the last server's page under a new address while it switched, and an agent's screenshot of a Browser tab you weren't on caught what covered it.
  • A routine step edited just before Turn on could switch it off again with a late save.

0.1.8

Alpha,

Update from 0.1.7 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

Changed

  • The session's tray matches Home: who works on it, the effort, the context and the access sit in one light bar, each drawn small beside its word, with attach as a light round.
  • A narrow tray gives way in steps instead of overlapping: the queue-or-steer note shortens, then keeps only its key; access, effort and who keep only their icons; last, the row wraps.
  • A working turn's head no longer has a progress bar under it.

Fixed

  • A lead's plan card lands where its "Generating the plan" line was, without the thread jumping, and what the lead says after the plan reads below the card instead of moving above it.

0.1.7

Alpha,

Update from 0.1.6 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

New

  • A cleaner Home. One light bar holds who works on it, the effort and the access, each drawn small beside its word. Under the box, one line: the checkout and the branch, then a scratch folder, a session to carry on from Claude Code or Codex, and a key that lists what the box takes. The Desk's pill is solid white.
  • A quieter sidebar. Search sits on one row with a filter, a new project and a new session beside it; the filter field shows from its button. Settings, Routines, the team and Usage are icons along the foot, with you at the end, and the team opens as a list from its icon. A project's + shows when you point at it.
  • Terminals stay when you switch sessions or close the panel, scrollback and all. ⌘-click a localhost link in a terminal to open it in the Browser.
  • Answers show tables, links, file.ts:42 references you can click, and highlighted code.
  • Images and PDFs go to the model as they are, and show as thumbnails in your message. A large paste becomes an attachment.
  • Claude Code's background work, and the turns it starts on its own about it, now show up, and Stop stops them too. Its newer task lists fill the plan panel, and a steer acts at once.
  • A turn cut off by a quit or a crash carries on by itself, up to 3 times in 5 minutes (Settings › Usage limits turns it off). Carrying on when a usage limit resets is a switch of its own, off to begin with.
  • ⌘K opens any surface, searches inside messages, and copies the branch or the session's id. ⌘1–9 open sessions, ⌥⌘↓ goes to the next one that needs you, and F6 moves between areas.
  • A minimap of your prompts, and each session opens again where you left it. Queued messages get Send now, drafts survive a restart, and the context ring opens a Compact menu.
  • The Browser shows where the agent clicks. Files previews images and Markdown, and the diff has word wrap and Hide tests.
  • Pick several sessions in the sidebar (⌘- or ⇧-click) to settle, snooze, archive or move them at once. ⌘Enter on Home starts a session in the background.

Changed

  • ⌘Q asks first while sessions are working, and ⌘K's Delete asks first, with Keep it as the default.
  • Retries ("overloaded"), compaction, sign-in trouble and failed turns say what happened.
  • A part of the window that breaks shows its own error with Try again, instead of blanking the window. Streaming no longer draws the whole thread again on every token.

Fixed

  • File names with accents, or the spaces in macOS screenshots, work for the diff, Undo and Commit, and an Undo that fails no longer counts as done.
  • Undo and Edit from here won't overwrite a file you changed after the turn: they say which files and offer Undo anyway, and they wait while another session works in the same folder.
  • Deleting a session or cleaning up worktrees never forces a removal: a worktree with changes, one another session works in, or one you made yourself stays.
  • Snapshots no longer miss an edit made in the same second, and a turn that pulls or merges claims only its own files.
  • Auto no longer takes git branch -D as a read, and more destructive commands count as high risk.
  • Saved state survives a crash. Commits get 10 minutes for hooks and signing, and diffs ignore your own diff tool settings.
  • A resume that fails carries the conversation over: Claude Code no longer stops, and Codex and ACP agents no longer start again with no memory. A Codex steer that fails goes to the queue, and Stop on an ACP agent gives up after 15 s instead of hanging.
  • A link whose text is a URL no longer puts a link inside a link.

0.1.6

Alpha,

Update from 0.1.5 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

New

  • Memory across sessions. Agents save what they learn about a project with memory_add, and every new session there starts with it; sessions_search reads earlier sessions. Settings › Projects shows the memory and lets you edit it.
  • Agents outside Liner Code can work with your sessions through its MCP server: list, read, start, message and wait for them. It's off until you turn it on in Settings › Safety, with a key only you can read.
  • Agents check pages when the session isn't on screen. The app keeps a hidden Browser for it, where scripts run and the console is read, and a screenshot still works.
  • The Browser opens only what's the session's. A dev server is known by the session that started it, plain HTML opens from the session's folder with no server, and archiving or removing a session stops the servers it started.
  • Carrying on at a usage limit: another account of the same tool first, else another family's everyday model, from the limit card or by itself (Settings › General).
  • Reviewer decides asks the Reviewer's quickest model about each step and brings you only what it won't allow. Auto is the tool's own auto mode.
  • Routed work: the model for each role (everyday, hard jobs, judge, critics) is yours to pick.
  • Codex's command output streams into its running step, and every running step counts up.
  • A turn that has said nothing for 4 minutes (12 while a command runs) says so once, on the timeline and as a notification.
  • A tool's update shows its progress as a bar.
  • Agents get a ripgrep when the Mac has none, and a failed command says how it ended (exit 127: not installed).

Changed

  • A plan writes quietly. While the lead writes its plan, one line says so, with its steps so far, and opens for a look; the plan card takes its place when it's done. Claude Code's own plan mode gets the same line.
  • Edits in a row to one file are one step on the trail ("7 edits · ✓ You allowed ×4"), and thinking too short to show leaves no gap.
  • The sidebar names the lead while it plans and while its plan waits on you.
  • Esc closes the / or $ list first; it stops the turn only after.

Fixed

  • The context ring read 100% in long sessions: it added up every request of a turn. It reads the last one now, for Claude Code and Codex.
  • A message sent as a turn ended could start a second turn beside it, and one sent during a review never went. What you send while work is in flight now waits and goes when it ends; Stop keeps it for you.
  • Auto and "don't ask again" took ls & rm …, a command on a second line, rg --pre or a sed that writes as reading. A routine's trust lasts only for its own step, and its steps never push, merge or post.
  • Stop pressed while a tool was still opening didn't stop it, and a request left from a turn that had ended kept the session in Needs you.
  • Claude Code: a steer's answer could be lost, spend was counted again after a restart, extra usage read as a usage limit, and a plan you edited before approving wasn't the one it built. /usage and other local commands now show what they print.
  • Codex showed an error twice, and a stopped command could go back to running. An ACP agent's text either side of a step ran together, and its cost was counted more than once.
  • A failed send lost your prompt and files. Editing a plan step lost focus after each letter. ⌘⇧D and ⌘⇧P could settle or pin the open session. A Browser step's line ended in a stray dot.
  • Keeping the default branch pulled no longer moves a checkout under a session working in it.
  • First run said "1 tool and 0 keys is ready", times could read "1m 60s", and settings switches had no names for VoiceOver.

0.1.5

Alpha,

Update from 0.1.4 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

New

  • Side chat (⌘⇧C, or the top of the session tray): ask about a session beside it without stopping it or adding to it. Who you talk to in the session answers from the conversation so far, reads what it needs and changes nothing; a command still asks first. Catch up starts it again from where the session is now.
  • The panel beside a session is yours to size. Drag its edge, or focus it and use the arrow keys; double-click puts it back. It opens at about a third of the session now, and the width you pick holds in every session.
  • Main buttons in one colour, red to start. Send, Commit and push in the session tray, and a card's main button. Settings › Appearance › Main buttons sets it: red, the accent, ink like the tray, or a colour of your own.

Changed

  • A sidebar row is two lines: the title with how long ago, then where it stands. Under its project it doesn't name the project again; in Pinned, your groups and the shelves the second line starts with it. Pin, snooze and settle show where the time was.
  • Home's effort and access menus open downward, under the composer, and scroll in the room there rather than covering the question.
  • Tiles inside the composer's and the session tray's pills are round, like the pills.
  • A narrow composer lets the word "effort" and the model marks go, then shortens the name; narrower still, its controls take two lines.
  • The disk image opens on a window that says what to drag where, with an arrow from Liner Code to Applications, and how to open it the first time: System Settings › Privacy & Security, Open Anyway.

Fixed

  • In Agentic features, the way you picked had a square blue ring round its rounded card. The ring follows the card's corners again.
  • Liner Code's name and the sidebar button beside it, and Settings' name, sat 6px under the traffic lights. They sit on them again.
  • With the sidebar hidden, the top bar's row sits on the traffic lights too (in full screen, where they're hidden, it stays where it was).
  • A menu on Home that had more to show snapped back to its top as you scrolled, and scrolling in it, or beside it, slid the Desk in under it.
  • In a narrow window the composer's controls ran over each other.
  • The highlight on the effort and agent pickers met the pill's edge instead of sitting inside it.

0.1.4

Alpha,

Update from 0.1.2 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

New

  • One solid ground. The window's glass frame is gone: the sidebar sits on the ground, and Home, a session, Usage and Settings sit on a white paper inside it, with no rim, gap of glass or line between them. The side panel is a column inside the paper, and the diff ends where it ends.
  • The session tray stands at the thread's right edge in a lane of its own, so it never covers what you read. It is the one glass surface left: solid controls inside, the open surface's icon on a tile, and the files waiting to be committed in a chip inside Commit and push. Settings › Appearance › Session tray sets its glass: Clear, Tinted or Solid.
  • The composer is one text box with its controls inside, under what you type: who works on it, effort, access, and Send in the accent. While a turn runs, Stop sits beside Send, and the note beside them says what Enter does (press it to change that).
  • Commit and push plays out in the thread. The chip grows into a card, your commits come into focus from the bottom up, the line to origin flows while it pushes and the ring turns green when it lands; then it folds back into a chip, with Open a pull request beside it.
  • The pull request card in the thread and the Pull request panel read the same way: your commits on a rail under Merge into main, what reached main in amber beside them, each clash with its two lines, the checks in one row, and one status line with Resolve conflicts or Squash and merge beside it.
  • Asks are one row: what the agent wants, its risk, Not this and Allow side by side. What it says and exactly where it runs fold under Details; a high-risk ask shows them, so you read before you hold.
  • New agent, in two columns, and three new things an agent knows: a prompt added to every turn after its soul, skills (skill.md files it reads when a task calls for one, yours or each project's own) and context files read at the start of each session.
  • Routed sessions (after GitHub Copilot's Fusion): pick Routed in the composer and each message gets the least work likely to do it well: one model, a cascade where a judge from another family passes the change or hands it to the strong model to repair, or a critique. Standard, High and Max set how far it goes.

Changed

  • Every card is white on the paper, with a 1px ring. Menus, popovers, ⌘K, tooltips and toasts are solid, with a soft shadow; the session tray's commit form and push menu open beside it. Reconnecting is an ink pill.
  • The L mark is gone: the sidebar and Setup say Liner Code, a size larger.
  • Settings keeps its layout, with white cards and a 1px ring. Appearance shows the window in miniature, the modes as cards and pictures as tiles; Behind the glass and the window's Clear to Tinted are gone.
  • Usage sits on white cards; the routine builder's canvas and Step settings sit on the paper; in Agentic features the ways are two across, the last 30 days fold under one row, each test result is one line with its details a press away, and the wiring starts with who writes.
  • Buttons are pills; a picked row is a solid plate.

Fixed

  • Pickers inside a dialog (New agent's effort and model) opened underneath it.
  • The composer didn't shrink when you deleted lines (Shift-Enter, then Delete), and an empty one could stay several lines tall after the window widened.
  • Usage › Limits showed rows of NaN%: only Claude Code's five-hour and weekly windows count now.
  • The cost test lets Codex run read-only commands, a quick model that changed nothing is read by the judge and handed up, and Codex's running token totals no longer write over Claude's.

0.1.2

Alpha,

Update from 0.1.1 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

New

  • Session tab (⌘⇧I, first in the panel): where the session runs (Mac, folder, branch, tool and model, access), what fills its context (Claude Code's own breakdown; the last turn's total for the rest) with Compact, and the changes still to commit, each opening in the diff.
  • Commit some of the files. The commit form lists them; untick what should wait for a later commit. Undoing a turn leaves its committed files alone.
  • Export a session as Markdown (the session's menu, or the Session tab): asks, plans, answers, findings and each turn's diff, saved in Downloads.
  • Carry on a Claude Code or Codex session from Home: one from the project's folder comes in with its timeline, and the next turn resumes the tool's own session.
  • Rules for every agent (Settings › Projects): one text in AGENTS.md, with CLAUDE.md pointing to it, so Claude Code, Codex, OpenCode and Cursor read the same rules.
  • A spending cap per session (Settings › General): a session or routine run that spends it stops and says so; your next message lets it go on for another cap's worth. Claude Code reports cost; other tools can't be held to it.
  • The menu bar: a ring counts what works and what needs you; its menu opens a session or allows a request waiting in one. Settings › Notifications turns it off.
  • The Mac stays awake while a session or routine run works (no idle sleep). Settings › General.

Changed

  • The Demo is hidden: tap your name at the foot of the sidebar six times to show it, six more to hide it.
  • The Reviewer lets small changes through (6 lines or fewer, or docs alone); "Small ones too" on its row in Agentic features has it read them.
  • Snapshots start from the repository's own index, so they only read changed files: a 30,000-file repository went from about 2 s to under 0.1 s per snapshot.
  • Settings, Setup, Usage and Compare load when you first open them; the app's main script is a fifth smaller.

Fixed

  • The Desk cue's draining line runs under its words, clear of the chevron.
  • The note under Open a surface has its own spacing again.

0.1.1

Alpha,

Update from 0.1.0 if you have it. Liner Code does it by itself (Restart to update), or download the new DMG.

Security

  • Agents can no longer get at the engine's token or your API keys. In 0.1.0 the engine's token, the key that lets the app answer approvals, push and merge, sat in the environment of everything the engine started, and in the engine's own starting environment, which any process running as you can read (ps eww). A command an agent ran could have read it and approved its own requests. The app now hands the token and keys to the engine over a pipe, and nothing it starts inherits them.
  • The Browser surface's proxy answers only requests addressed to itself (DNS rebinding) and keeps the Origin of other sites, so dev servers still turn them away.
  • Webhook secrets are compared in constant time.

Changed

  • Your agent tools aren't updated without asking. Claude Code, Codex, OpenCode and Hermes updates start on *Just tell me*; choose Automatically in Settings › Updates if you want it. Liner Code's own updates stay automatic.
  • Tools that nvm, Volta, pnpm, mise or asdf put on PATH in .zshrc are found.
  • When an update downloads but can't replace the app, the next launch says why and links the release page instead of offering Restart to update again and again.
  • Help › Report a Problem… also includes the previous launch's log and each tool's version.

0.1.0

Alpha,

The first alpha: a Mac app (Apple Silicon) that drives Claude Code, Codex CLI, OpenCode and Hermes with your own sign-ins, and shows their work as plans to approve, questions to answer, and a diff for every turn that you can undo, commit or question line by line. Surfaces beside the session (Terminal, Browser, Files, Pull request, Device, Routines), a Reviewer from another model family, models compared side by side, Settings › Agentic features, the Desk, and updates from GitHub Releases. MIT.