Skip to content

Releases

Octomux 0.5.1

Choose a tag to compare

@anilsenay anilsenay released this 11 Nov 11:30
  • Scenes in Low Power Mode: Settings → Appearance → Scene → In Low Power Mode: Pause (as before) or Keep playing.
    The scene's note says what it does right now and why (paused: Low Power Mode, the window is hidden…).
  • Menu bar icon: an orange dot while an agent waits for your input (also while the octopus swims for another
    agent). The blue dot for unread notifications shows when none waits.
  • An agent's browser pages close when the agent is removed (unless another agent works in one or a tab shows
    it). Before, each stayed open with its web process until closed by hand, and came back after every launch.
    Pages you opened stay.
  • Finished reviews no longer keep an agent running: a review's agent that is still up with nobody in it (brought
    back as a conversation after a restart, or one you asked something and left) is stopped after 30 quiet minutes.
    Go to session → Resume brings the conversation back.
  • Less CPU after closing Settings: a closed Settings window stayed alive and kept rendering its pages (the
    breathing previews in Appearance at 30 fps, and every page on each change): about half a core until Octomux was
    restarted. Closing it now lets it go; it reopens where it was.
  • Breathing workspace marks run in Core Animation: the "Bar, breathing" and "Glow, breathing" marks (and their
    previews in Settings → Appearance) re-rendered the whole window, or the whole Settings page, 30 times a second.
  • Keep Mac awake can keep the display on too: Settings → Sessions → Keep Mac awake → Keep the display on too
    (also in the cup's panel). Off by default, as before: the display turns off after its usual idle time while the
    Mac keeps working behind it.
  • Agents panel shows each agent's current state: an agent that moved to another group (needs input → working,
    working → finished) could keep the old group's mark (an "input" badge, a spinning ring) until you selected
    another session.

Install

Download Octomux-0.5.1.dmg, open it and drag Octomux into Applications. macOS 14+, Apple Silicon or Intel. Signed and
notarized. Or with Homebrew: brew install --cask anilsenay/tap/octomux. Already installed?
Octomux offers the update itself.

Octomux 0.5.0

Choose a tag to compare

@anilsenay anilsenay released this 08 Nov 21:50

Highlights:

  • Layouts: arrange the whole window for the way you work: Terminal (as before, the default), Agents (a
    rail of agents by what they need from you, beside a Home) or Tasks (your tasks on a rail). ⌃⌘1…3 switches;
    each layout can be changed in Settings → Layout, saved under a name, exported and imported.
  • Home: one page made of sections (greeting, composer, waiting agents, stats, pull requests, the Board, the
    Aquarium…) in four presets, customized in place: drag, hide, add, narrow/wide/full.
  • Tasks and the workspace assistant: Octomux's own work items; the assistant splits what you ask into tasks
    and starts agents on them.
  • Aquarium: every agent as a pixel octopus, swimming while it works.
  • Browser for agents: far less of an agent's context per page, a question before a session first uses it, and
    Claude in Chrome as an option for Claude sessions.
  • Fixes: much less CPU while agents work, Octomux opens where you left it, Option+Backspace deletes a word in
    Claude Code, no quit when a browser call is cancelled, no unread dot on the agent you are watching.

All changes:

  • Octomux opens where you left it: after quitting (or an update) it opened the first project's first tab,
    because reading back the saved workspace saved the project and tab before they were read.

  • Menu bar panel opens centered under the Octomux icon (it hung to the right of it).

  • Less CPU while agents work. The spinning ring that marks a working agent (sidebar, tabs) re-rendered the
    whole window every frame — over half a core on a 120 Hz screen for as long as any agent worked. It now spins in
    Core Animation and looks the same, as do the browser's "agent at work" dot and the Inbox refresh icon.

  • The browser tools take far less of an agent's context. Opening a long page returns an outline (landmarks,
    headings, links, buttons and fields, with their refs) instead of the whole page: about a quarter of the tokens;
    browser_snapshot still reads all of it. Changing the screen size returns only the new size (it returned the whole
    page each time, thousands of tokens, usually right before a screenshot).

  • Agents ask before they first use the Octomux browser (Settings → MCP → Octomux browser: Ask is now the
    default; a choice you made there before stays). Claude sessions browse with picks Claude in Chrome instead:
    Claude sessions then don't get the Octomux browser tools (they keep the task tools), Codex sessions do.

  • Fixed: Octomux quit when an agent's browser tool call was cancelled (or timed out) before its answer: writing
    the answer to the closed connection raised an exception the app couldn't catch. Such a call now just ends.

  • Option+Backspace deletes a word in Claude Code (and Option with Delete, Return, Tab, Esc or an arrow reaches
    programs as Alt in the kitty keyboard mode they ask for). Option still types its characters (Option+Q is "@" on a
    Turkish keyboard): it counts as Alt only on keys where it doesn't change the character.

  • No dot on the agent you are watching: a turn that ends (or a question, an error) while that agent is on screen in
    front of you is read at once — also with notifications off, for that project or that kind. Before, the green dot
    stayed until you switched away and back. A Home or file tab over it still leaves it unread.

  • Window: the traffic lights are the size other current Mac apps have and sit on one line with the sidebar
    button, the bell and the tabs (the app is now built for the current macOS design, which also refreshes the
    system's own controls: switches, pop-ups and segments in Settings). Pop-up values in Settings are no longer in the
    accent color.

  • Layouts: pick how the window is arranged for the way you work, for the whole app: Terminal (the window as
    it always was, still the default), Agents (the agents' window below; new Claude and Codex sessions open as
    chats) or Tasks (a window of its own, below). Switch with ⌃⌘1…3, the
    command palette (View → … Layout), or the Layout button the other layouts show in the status bar.

  • The Agents layout is a window of its own: a rail of agents on the left by what they need from you (Waiting
    for you, Working, Done, Idle) with their last words and a project control (one project or all), a breadcrumb instead of tabs
    ("Home · Personal", "agent · project · branch" with a Chat / Terminal switch), and Home in the middle: a greeting,
    a big composer (project, checkout or a new worktree, agent), the agents waiting for you answered in place, recent
    sessions and usage (your Home, below). Home isn't a tab here: ⌘0 or ⌘T comes back to it. ⌘1…8 and ⌘[ / ⌘] move
    over the rail (⌘9: the last); after a click on the rail (or ⌥⌘A) ↑ ↓ ↩ do too.

  • Home, one page made of sections: the same Home in the Agents layout and, as a tab, in the Terminal window
    (View → Home; one tab per project). Its ⌄ (after "Home", or on the tab) offers four presets — Agents (greeting,
    composer, waiting, recent, usage), Workday (your day: stats, waiting, while you were away, your pull requests,
    reviews and issues), Board (every agent in a column by state) and Aquarium (every agent as an octopus; ⌘T
    starts an agent) — and Customize this Home…: drag a section by its handle across the top row and the main and
    side columns, hide one with its eye, add one with + Add section, pick the page's width (Narrow · Wide · Full) and
    drag the line between the columns; each change is saved at once, Reset goes back to
    the preset. The agents waiting for you are rows in one card: the first is open with its answers, a click opens
    another, and answering opens the one that takes its place; ↑ ↓ move between them, 1 2 3 answer the open one and ↩
    opens it (while no field, terminal or the rail has the keys). Esc or leaving Home ends Customize. An opt-in Home row at the top of the sidebar (Settings
    → Layout → Sidebar) shows how many agents wait for you. Agents and Workday tabs from earlier builds open as Home.

  • The Tasks layout is a window of its own: your tasks on a rail on the left by what they need from you (with
    status filters and a New task field, ⌘T), the assistant — or the picked task's agent — in the middle, and the
    picked task in detail on the right: its state, where it works, its agents and what they last said or ask, its pull
    request and source, subtasks and the next step. A project control above the rail shows one project's tasks (with
    icons, counts and a search field when there are many), New task has a project picker, and the sessions without a
    task are folded at the bottom of the rail. ⌘1…8 and ⌘[ / ⌘] go through the tasks (⌘9: the last), ⌘0 opens
    the assistant (and starts it when there is none).

  • Layouts as data: every layout is a tree of rows, columns and stacks over Octomux's own blocks
    (agent rail, tasks rail, project tree, tabs, breadcrumb, work area, Home, side panel, task
    detail, agent column, aquarium, status bar), read from a JSON file; a tree that doesn't read or breaks a block's
    rules falls back to the built-in one. Terminal's tree draws the window it always was, to the pixel.

  • Your own layouts, as files: Settings → Layout → Your layouts. Save the layout you arranged under a name, then
    switch to it from the View menu (⌃⌘8 and ⌃⌘9 for the first two by name) or the status bar's Layout panel. Export it as a small
    .octomux-layout.json (your theme and shortcuts too, if you tick them) and import someone else's: a sheet shows
    its window, name, author and base, and what this Mac can't use; its theme and shortcuts apply only if you tick
    them; the sheet lists each shortcut, and one on a key another command already has is left out. A file can't turn a
    command off or take ⌘Q, ⌘W, ⌘H, ⌘M or ⌘,. A layout file is data only — it arranges Octomux's own parts and can't
    run anything; a broken one (or one too big, too deep, or with a picture over 4096 px a side) is refused with the
    reason. Duplicate, delete, and use the window as a layout's picture.

  • Agent cards (Home's Board): the agent's last words, the steps and files of its turn, and what it waits for:
    allow or deny a tool, or pick an answer, right on the card.

  • Workday (a Home preset): your day on one page. Who
    needs you, answered right there; what happened while you were away (agents that finished, with the files they
    changed since you last looked, and automations that started work); your pull requests with their next step
    (fix the checks with an agent, mark ready, merge), reviews waiting for you, and your issues ("Work on it").

  • Work chips: an agent's pull request (with its checks) and issue show next to it on cards, and in the pane
    header in the Agents layout (Settings → Layout → Pane header elsewhere).

  • Since you looked: an agent card says how many files changed after you last looked at the agent, and lists
    them with their diffs.

  • Working on code with an agent (the Editor layout has all of them; Settings → Layout turns them on anywhere):
    changed lines marked in the editor's gutter; a note on the selected lines ("Note to agent", ⌘⇧M) goes into the
    agent's message with the file, the lines and the code, for you to send; the Files panel lists what the agent
    touched in its current turn; and the project's agent can sit in a column beside the work area.

  • Tasks: Octomux's own work items. Add one (or let the assistant split your request into several), start it,
    and it gets its own worktree, branch and agent; its state follows the agent and its pull request. Also from the
    command line (octomux task …) and for agents through the Octomux MCP tools (task_create, task_list,
    task_start…).

  • Workspace assistant: your default agent with its editing tools off, as a planner. It turns what you ask into
    tasks and asks to start them; Autopilot decides how far it may g...

Read more

Octomux 0.4.0

Choose a tag to compare

@anilsenay anilsenay released this 07 Nov 14:08

Highlights:

  • Chat view: full markdown, tool calls grouped per step, diffs, plans and questions as cards; answer a question
    or allow a tool right on its card; / and @ menus, the model and a context ring in the composer, Stop.
  • Browser for agents: Claude and Codex sessions get browser tools from Octomux's own MCP server; the page opens
    beside the agent's tab and you watch it click and type. Send any element of a page to an agent.
  • New look for the window: a header on every pane, a git button that shows the next step (Commit, Push, Create
    PR, the open PR), Octomux's own panels for workspaces, Keep Mac awake and branch pickers, a start screen for new
    tabs and a ⌃Tab tab switcher with pictures.
  • Keep Mac awake while agents work (or always, or for a while), optionally with the lid closed, with limits.
  • Permissions: sessions run under a small "Octomux Sessions" app, so macOS asks screen recording in its name.

All changes:

  • Start screen: a new tab (New Chat) shows what waits for you and what ran last in the project, with starter
    chips; the composer stays at the bottom, in the same column as the chat, so nothing moves when it starts.

  • Every pane has a header (also when a tab has one pane): which session and folder, with split, chat ↔
    terminal, browser and dock buttons. The top bar keeps the tabs and project-wide actions: diff, Open in and a git
    button that shows the next step: Commit (a panel with the changed files and a message the commit-message
    agent writes, Commit or Commit & Push, Amend), Push ↑n, Create PR, or the branch's open PR #n (from
    the Inbox, its checks' color). ▾ has all of them and Show Changes.

  • Workspace switcher and Keep Mac awake open Octomux's own panels instead of system menus: each workspace with
    its color, what waits there and its shortcut; the cup shows what it does now, the modes, "for a while" and the
    closed-lid limits as chips. Arrow keys, ↩ and esc work as in a menu. The status bar's branch and Compare with pickers
    open the same kind of panel (no more system popovers), and every picker shares one look.

  • Readability: with a scene, art passing behind the sidebar is drawn faint there (it no longer sits as
    bright as the rows' text); the Changes list keeps room for about five files when History is open; disabled Commit buttons
    are neutral (they couldn't be read in light themes). Translucent terminals over a scene default to 85% opacity (was 82%):
    the text reads better over the live scene.

  • Sidebar: Search (⌘K) is the first row under the workspace, then Inbox and Projects.

  • ⌃Tab tab switcher: hold ⌃ and press Tab to see the project's tabs, most recent first, each with a picture of
    what it last showed, its activity and agent; ⌃⇧Tab goes back, letting go of ⌃ (or ↩) opens it, esc cancels.

  • Command palette: without a query it is grouped (Waiting for you, Sessions, Commands); key hints and the
    result count at the bottom. Esc, arrows and ↩ work right away, even before the search field has focus.

  • Calmer window: one Split menu in the top bar instead of two buttons, wider tabs (inactive tabs without a
    fill), usage limits as small rings in a slimmer status bar, segmented Files / Changes / Sessions tabs, open
    sessions marked with a dot instead of an "Open" badge.

  • New chat suggests a few starters above the composer (they fill it, nothing is sent). Your messages in the
    chat view sit in a neutral bubble.

  • Consistent sizes: one type scale and one corner-radius scale across the app (text that was half a point
    smaller is now whole sizes).

  • Chat view: the conversation is drawn with full markdown (lists, tables, code blocks with highlighting and
    Copy), tool calls grouped per step ("Read 2 files · Ran 1 command") and folded once the turn ends, edit diffs,
    command output, todo lists, plans and questions as cards, "worked for" time per turn, and a "Latest" button
    when you scroll up (new messages no longer pull you down while you read).

  • Chat composers grow with the text and scroll past 14 lines (wheel, trackpad); ↩ sends, ⇧↩ adds a line,
    pasted screenshots and files become attachments.

  • Chat composer shows the model the session runs (Claude: switch it from there, sent as /model), a ring with
    how full the context is (Claude's own reading; Codex from its log), and a Stop button while the agent works.

  • / and @ in the chat composers: / lists built-in commands, your and the project's commands and skills,
    and enabled plugins' (Codex: built-ins and saved prompts), with descriptions; @ finds files of the project
    (git's list) by name. ↑↓ to move, ↩ or ⇥ to pick, esc to close.

  • Answer from the chat: when the agent asks one single-choice question, pick the answer on its card; when it
    waits for permission on a tool, Allow or Deny under that tool (sent to the terminal as the keys you would press).
    Messages you send while the agent works show as queued until it reads them.

  • Chat turns end with the files they changed (lines added and removed, from the agent's own edits); click one
    to see it in Changes. Commands show the agent's own description ("Run tests") next to the command line.

  • Permissions for programs in sessions: the daemon now runs from a small background app, “Octomux Sessions”,
    so when an agent takes a screenshot (or drives other apps) macOS asks in that name and remembers it, instead of
    blocking a nameless command line tool. Settings → Permissions shows screen recording and
    accessibility, asks for the first and opens System Settings for both.

  • Keep Mac awake (Settings → Sessions, and the cup in the status bar): Off, While agents work (and two minutes
    after, so pauses between steps don't count) or Always. The display can still sleep. Optionally also with the lid
    closed: a one-time administrator prompt installs a rule that lets Octomux run only pmset -a disablesleep, set
    only while it keeps the Mac awake, on the power adapter unless you allow battery, and put back after (also after
    a crash).
    "For a while" keeps it awake 1–8 hours, then goes back to the mode before; the cup can be hidden (Settings brings
    it back).
    Closed-lid safety: at most a time you choose per lid closing (12 hours on the power adapter, 4 on battery by
    default; no limit possible on the adapter), never
    below 20% battery or under heavy thermal pressure; a notification says when a limit let the Mac sleep.

  • Changes panel has "Compare with" at the top: the same branch choice as the status bar's "→ branch".

  • Browser for agents: Claude and Codex sessions get browser tools (open a page, read it as an accessibility
    snapshot, click, type, press keys, choose options, wait, run a script, read the console, take screenshots, switch
    pages) from Octomux's own MCP server, added to each session as it starts; your MCP settings stay as they are
    (Settings → MCP turns it off). The page opens beside the agent's tab, half the width (drag its edge), and you
    watch the agent work: its cursor glides to the element, a band says who acts and what ("Claude · Fix login —
    Clicking “Sign in”"), and the element is framed. The globe in the top bar shows or hides the browser of a tab;
    you can browse yourself (address bar, back, forward) and hand a page to an agent. Each session works in its own
    page; pages keep cookies apart from your other browsers and come back after a relaunch.

  • Send an element to an agent: the browser's pick button (target) highlights what's under the pointer; click
    one, add a note, and it goes to an agent's message box (the tab's, or one you choose; terminal or chat view) with
    its selector, role and name, text, main styles, the page and a crop of it, for you to read and send.

  • Links in terminals and the chat view to local addresses (localhost, 127.0.0.1, *.local…) open in the
    browser beside the tab, or bring forward the page already showing them; others still open in your default
    browser. Settings → MCP → Octomux browser picks which (local, all web links, none); ⇧-click does the other.

  • Browser basics: find in page (⌘F, with the number of matches), zoom (⌘+ ⌘− ⌘0), ⌘L for the address bar,
    ⌘[ ⌘] back and forward, ⌘R reload, only while the page has the keyboard; address suggestions from the pages
    you visited (↑↓ ↩); a page that can't load says why, with Try Again; downloads go to ~/Downloads, listed under
    the browser's download button with Show in Finder; screen sizes (mobile, tablet, laptop, desktop) the page is
    laid out at, scaled to fit.

  • Agents hear what their actions changed: a new address or title, pages opened, downloads, new console errors
    (each once). On long pages a result carries only the lines that changed (said so, with their parents), the whole
    page when it is new or small; browser_snapshot takes diff. New tool browser_resize for mobile/tablet layouts.

  • Who may use the browser: Settings → MCP → Octomux browser: Off, Ask (a session asks the first time; your
    answer holds for it, listed in Settings to forget) or On, and an optional list of allowed sites (wildcards):
    agents can't open others, nor follow links to them.

  • Fixed: two background services could start at once for the same data (the app and a command starting it at
    the same moment); the extra one kept running unseen. Now only one starts, and a leftover one stops by itself.

  • Fixed: the chat composer could freeze or close Octomux when a long text arrived in it (a pasted log, an element
    from the browser).

Install

Download Octomux-0.4.0.dmg, open it and drag Octomux into Applications. macOS 14+, Apple Silicon or Intel. Signed and
notarized. Or with Homebrew: brew install --cask anilsenay/tap/octomux. Already installed?
Octomux offers the update itself.

Octomux 0.3.0

Choose a tag to compare

@anilsenay anilsenay released this 06 Nov 20:03

Highlights:

  • Inbox in the sidebar: pull requests waiting for your review, your own pull requests with their checks, and
    issues assigned to you, from GitHub, Jira Cloud and Bitbucket Cloud, with notifications, activity,
    snooze, keyboard, and changes you can make from there (each asked first).
  • Agents on Inbox items: Work on it, Ask, Summarize, Fix with agent, and Review a pull request in the
    background (read-only by default, a download when you have no clone), then post its findings as review comments.
  • Changes view: diffs by line like git, a resizable split, sticky file headers, scroll bars a mouse can reach,
    wrapped lines on request, and the panel follows the branch you compare against.
  • Resume with Flags… to bring a stopped agent back with other flags (--chrome, a model…).
  • Workspace paging with a two-finger swipe over the sidebar.

All changes:

  • Changes panel follows the compare branch: with a branch picked next to the status bar's branch, the panel
    lists every file since it (committed on this branch or not) under Since , with the same counts as
    the status bar; a click opens that file's diff against the branch. Before, it showed only uncommitted files.
  • Diffs by line, like git: a file with many changes no longer shows untouched lines as removed and added
    again; the Changes view now matches the +/− counts, with word marks inside the lines that did change.
  • Changes view: in split mode drag the bar between the sides to resize them (every file follows; double-click
    for half and half), and each file's header stays at the top while you scroll through it. A file's horizontal
    scroll bar stays at the bottom of the window while the file is on screen (one per side in split mode, over
    the code, shown while the pointer is on that side), so a mouse can scroll long lines; ↩ wraps them instead (kept for next time); line numbers no longer show code through them when it scrolls sideways.
  • Resume with Flags… next to Resume on a stopped agent: add flags (--chrome, a model…) by hand or with
    checkboxes for common ones; the conversation goes on where it stopped and the flags stay for later resumes.
  • Closing a tab goes back to the tab you were on before it, not to the first one.
  • Names cut short show in full on hover: a project's row (name, branch, folder) and the Changes panel's files.
  • Workspace paging: a two-finger swipe over the sidebar pulls the next workspace's projects in beside the
    current ones, and the window color blends toward the new workspace's as you pass the middle. Let go past
    the point (or flick) and it switches; otherwise it springs back. ⌃⌘← →, ⌃1…⌃9 and the switcher dots page too.
  • Inbox (sidebar, above the projects): pull requests that wait for your review, your pull requests with their
    checks, and issues assigned to you, from GitHub (through the GitHub CLI, so Octomux keeps no GitHub token)
    and Jira Cloud (site, email and an API token, with or without scopes, kept in your Keychain).
    • Folders by why something is there and where it comes from (collapsible to icons); filters by source,
      time and text; hide repos and projects; read and unread marks; comments to read and write.
    • Work on it opens a new tab with the item as the prompt, or starts the agent in a new worktree on the
      item's branch; Review a pull request in the background or in a chat; Fix with agent when checks
      failed. The session stays linked to the item (Go to session).
    • Notifications for review requests, failed checks, new assignments and changes to your things; ring the
      bell on a Jira project to hear about every change there, by anyone: a sound only (no banner) unless you
      choose banners. Checked every 1–10 minutes. Their sound is picked in Settings → Notifications (Sound: Inbox,
      Blow unless you change it).
    • Activity: an item's comments, Jira changes (status, assignee, priority, sprint, title, description; who and
      when) and GitHub events (commits, reviews, review requests, labels, assignees, merge/close, renames,
      force-pushes) in one timeline, with a New line where you left off and a "Since you looked" summary on
      top. Notifications say who did what ("DC-12: Ann moved it to Code Review"); changes you made yourself on the
      website are no news. When the Jira token can't read the history, comments still show, with a note.
    • News in linked sessions: when someone comments, reviews, pushes or moves an item you sent to an agent, a
      card in that session's pane says what changed; Tell the agent pastes it in (as reference data, for you
      to send), Open in Inbox shows the item.
    • Fix with agent reads what the failed checks printed first (the failed steps of GitHub Actions jobs, or
      another check's own summary), and hands it to the agent with the prompt (up to 12,000 characters). A line
      under the checks follows the fix: prompt waiting, agent working or waiting for you, checks running again,
      checks pass.
    • Merged, closed and done items stay a while: something that leaves the open searches because it was
      merged, closed or finished stays in the list with that label for three days (a week when an agent worked on
      it), with a notification and a note in its linked session. Items that only left a search (a review request
      withdrawn) still go quietly.
    • Keyboard: ↑ ↓ (or k j) move through the list, Return opens the first item, Esc closes it, u marks it read or
      unread, s sends it to an agent, o opens it on the website, r refreshes, / filters (Esc clears, Esc again
      leaves the field). The keyboard button lists them.
    • Ask (button, or the a key): a chat about the item that only reads: the agent starts with the item as
      reference data and your question at the end, in Claude's plan mode or Codex's read-only sandbox, apart from
      any session working on the item. Continue asking goes back to it.
    • Images in descriptions and comments: GitHub's own images (loaded without any credentials) and Jira
      attachments (from your Jira only). Images from other sites aren't loaded, since they could tell the sender you
      opened the item; they show as a link. Jira requests no longer follow a redirect to another host.
    • Code tab on a pull request: its changed files with their counts, each one's changes with line numbers
      (small files open, big ones closed; long ones show the first 400 lines until you ask for all).
    • Pull Request menu in the detail: merge (merge commit, squash or rebase, into the named base branch), mark
      ready, convert to draft, close or reopen, through the GitHub CLI. Each one asks first, saying exactly what will
      happen; the branch is never deleted. A merge or close made here is no news in your notifications.
    • Jira from the Inbox: change an issue's status through its workflow (the status chip is a menu), assign
      it to yourself, or create a new issue (the pencil in the Inbox bar), each after a confirmation. Starred Jira
      filters can bring their open issues in (Settings → Inbox → What shows up), under From your filters. What
      the agent is asked for a Jira issue is a template in Settings ({key}, {title}, {status}, {project}, {url},
      {assignee}).
    • Mute a bell for a while: right-click a project's bell (in the Inbox or in Settings) to quiet it for an
      hour, until tomorrow 09:00, until a date you pick, or until you turn it back on; Settings can mute every bell
      at once. A muted bell shows struck through; its changes still wait unread in the Inbox.
    • Automations (Settings → Inbox → Automations): rules that start an agent by themselves when a matching
      item comes in (from, what, why, where), either reviewing a pull request read-only or working on the item in
      a new worktree, in the item's own project and without switching to it. Rules are off until you turn them on
      (and confirm); each item starts at most once per rule, at most three per check, and only new arrivals count.
    • Bitbucket Cloud: pull requests that wait for your review and your own ones, with their builds and how many
      approved or asked for changes, next to GitHub's. Connect with an Atlassian API token with Bitbucket scopes
      (read:user, read:workspace, read:repository, read:pullrequest); it is kept in your Keychain and sent only to
      api.bitbucket.org. Bitbucket can't list your review requests across a workspace, so the repos updated in the
      last two weeks (and those of your projects) are checked every 10 minutes, and repos holding one of your pull
      requests on every check, within Bitbucket's hourly allowance (it slows down when Bitbucket asks). A review
      request you approved leaves the list until new commits come. The detail has the description, Activity
      (comments, inline comments with their file and line, approvals, changes asked for, pushes, merge/decline),
      the Code tab and the builds; declined and superseded pull requests stay a while like merged ones. Settings →
      Inbox picks the workspaces and repos, and can look in every repo instead.
    • Agents on Bitbucket pull requests: Work on it, Review, Fix with agent and Ask work on them
      too; the branch comes through git with your own credentials (the token never goes to git), and Fix starts
      from what the failed builds reported. Linked sessions hear about new comments, approvals and pushes,
      notifications say who did what ("#7: Ann approved"), and automations can pick Bitbucket as their source.
    • Change Bitbucket pull requests from the Inbox (Pull Request menu, each asked first): approve or take it back,
      request changes or withdraw it, merge (merge commit, squash or fast-forward; the branch stays), decline, and
      comment. Needs write:pullrequest on the token. Fix with agent reads the failed steps' logs of a Pipelines
      build (with read:pipeline); the log's sto...
Read more

Octomux 0.2.0

Choose a tag to compare

@anilsenay anilsenay released this 04 Nov 23:17

Highlights:

  • Sessions outlive their tab. Closing a tab or pane leaves its sessions running in the sidebar; Stop and
    Remove there end them (Stop asks first when something is still running). Settings → Sessions can make
    terminals end with their tab again.
  • Create Pull Request from the Changes panel, ✨ commit messages and PR text written by your own agent CLI,
    Discard changes, and Ask Agent about a change.
  • Quick composer over any app, Prompts you save once, an MCP page to see, check, add and remove servers.
  • Worktrees with setup and teardown scripts, branch name patterns and a custom root.
  • A rebuilt Settings with search, and pages for Terminal, Sessions (CPU and memory per session), Projects,
    MCP, Prompts and more; interface size 90–120%.
  • Codex at the same level as Claude Code; Intel Macs; Homebrew.

All changes:

  • Workspaces that want you in the sidebar's switcher: a mark in amber (something waits for your input there)
    or green (finished while you were away), as a bar under the workspace, a glow behind it (each still or slowly
    breathing), a corner dot or a count (Settings → Appearance → Sidebar). It replaces the small corner dot, which is still one of the choices.
  • Add MCP servers from Settings → MCP (Add Server… on each agent's group): a command or an HTTP/SSE URL,
    environment variables or headers, and for Claude Code where it applies (all projects, one project, or the
    project's shared .mcp.json). Runs the agent's own mcp add.
  • Sessions outlive their tab: closing a tab or pane (×, ⌘W) leaves its sessions, agents and terminals alike, in
    the sidebar and still running; clicking one opens it in a tab again. A session ends with Stop and Remove in the
    sidebar, and Stop now asks first when a program (a dev server, sleep) or a busy agent would be stopped
    (Settings → Terminal → Ask before stopping a running program). The first time a closed tab leaves something
    running, a note says where it went. Settings → Sessions → Closing a terminal tab can make terminals end with
    their tab instead, as in other terminal apps (asking first when a program runs).
  • Discard changes in the Changes panel: per file (hover, or right-click) and for a whole group, after a
    confirmation. New files go to the Trash.
  • Preview tabs: a click in the Files panel opens the file in a preview tab (italic) that the next file
    replaces; double-click the file or the tab, or edit it, to keep it.
  • Ask before stopping now sees programs behind shell wrappers that run your shell in a terminal of their own (it
    saw nothing there). A program whose binary is named after its version (Claude Code) shows by its name.
  • Buttons now take clicks on their whole area, not only on their text or icon (the − / + in Settings → Terminal,
    bordered buttons across Settings).
  • The Settings sidebar no longer jumps when you switch pages (the previous page's sections showed for a moment);
    the MCP page, whose sections load after it opens, no longer lists them there.
  • MCP Check also lists the servers Claude Code gets from your claude.ai account and plugins, with their status.
  • With Codex as the commit-message agent, its model is picked from the models your Codex offers.
  • Recording the quick composer shortcut no longer opens the composer when you press the current one.
  • Agent events (Settings → Advanced, or a tab's right-click → Show Agent Events): the last 500 hooks,
    agents' own status reports and state changes, with time and session; also in the diagnostics zip.
  • Close stopped agent tabs after 1 hour to 1 week (Settings → Sessions, off by default); pinned tabs stay and
    the session stays in the sidebar, where Resume opens it again.
  • MCP page: Check shows whether each Claude Code server connects (claude mcp list), and Remove takes a
    server out with the agent's own mcp remove.
  • Create Pull Request (Changes panel ▾, ⌘K): base branch, title, description and Draft; ✨ writes the title and
    description from the branch's commits and diff. Pushes the branch and runs gh pr create, or opens GitHub's
    compare page filled in when gh isn't available.
  • Interface size: 90–120% for the window's text and rows (Settings → Appearance), separate from the terminal
    font size.
  • Worktree branch names: a pattern fills the name in ({user}/{date}-{n}, Settings → Projects), and ✨ in the
    New Worktree window names the branch from the task you give the agent (the task is its first message).
  • Tab titles from your first message: Settings → Sessions can name agent tabs after the first message you
    sent instead of the agent's own conversation title. Works for Claude Code and Codex.
  • Diff colors: blue and orange instead of green and red (Settings → Appearance → Diffs), everywhere added and
    removed lines or counts show.
  • Status bar limits: show all, only the 5-hour or only the weekly limit (Settings → Agents → Usage limits).
  • Default app for files: files open in their macOS default app or an editor you pick (Settings → General →
    Open in); "Open in …" on files in the Files panel and Changes.
  • The added-line marker in diffs now takes the theme's color (it was always the default green).
  • ✨ Commit messages: the sparkles in the Changes panel's message box ask an agent for a commit message from
    the staged changes (or all of them) and the repository's recent commit style. Your own claude or codex CLI
    runs once in the background (no tools, nothing saved, hooks and MCP off); the agent, model (Claude: Haiku) and
    a style are set in Settings → Projects. Click again to stop.
  • Ask Agent in the Changes panel: prompts marked for it show in a menu on the panel and on each changed
    file ({file}, {base}), and go to the focused agent when it is free there, else to a new one.
  • Prompts: save prompts you send often (Settings → Prompts) for every project, a workspace or one project,
    and pick them in a new chat, the quick composer or ⌘K. {project}, {path}, {branch}, {clipboard} and
    {date} are filled in.
  • Quick composer: a small window over any app to start an agent: project, agent, prompt, Return. You stay
    in the app you were in (⌘Return brings Octomux forward instead). Set a shortcut that works everywhere in
    Settings → Keyboard → Anywhere; it is also in the File menu and the menu bar icon's menu.
  • Settings → MCP: the MCP servers Claude Code and Codex start with, per agent config (agents that share a
    config share a list): all projects or only one, shared .mcp.json servers and whether they are approved,
    servers turned off, and the command or URL. Read only; values of environment variables and headers are not
    shown.
  • Settings → Projects: a project's name, folder, color and icon in one place (also from its right-click
    menu, Project Settings…), where its worktrees go, and setup / teardown scripts for its worktrees (setup runs in
    the dock after a worktree is created, teardown before it is removed; both get the project, worktree and
    branch as variables). A worktree folder can also be set for all projects.
  • Remove Worktree can delete the branch as well ("Also delete the branch", default per project); a branch
    that isn't merged asks before it goes.
  • Settings → Sessions: every running session with the CPU and memory of its processes (shell or agent plus
    what it started), with Open and Stop. "Stop idle agents" (off by default: 15 min to 4 hours) stops agents
    that finished and sat without output; Resume continues them. Terminals are never stopped for being idle.
  • Save diagnostics (Settings → Advanced): a zip with versions, state, settings, terminal.conf and the end of
    the logs, tokens, keys, passwords and email addresses removed.
  • Agent start options: editing an agent in Settings → Agents sets its model, effort and permission mode
    (Claude Code) or model, effort, approvals and sandbox (Codex) from lists. They become flags in its Arguments.
  • Open in: Settings → General lists the apps for every Open in menu: reorder them, hide some, add any other
    app, and pick the default for ⌘O. The menus have an "Edit This List…" item.
  • Notifications: Send Test in Settings → Notifications, and a sound for each kind (agent finished, needs
    input, error, commands and programs), picked from the macOS alert sounds; picking one plays it. Sound and
    other notification settings now follow the project the notification is about, not the one on screen.
  • Usage meters can show what is left instead of what is used (Used / Left in their popover, or Settings →
    Agents → Usage limits). The color still warns at 70% and 90% used.
  • Settings → Terminal: font (installed monospaced fonts or the built-in JetBrains Mono), size, line height,
    cursor style and blink, and scrollback lines, with a preview; terminals change as you pick. The terminal.conf
    editor moved here from Appearance and keeps working for everything else.
  • Settings → Keyboard: Find by Keys (press a combination to see what it does), an "Acts on" column (focused
    pane, current project, …) and Reset All Shortcuts. Shortcuts with Return show ↩.
  • Agents panel filter: its menu can show only the current workspace's agents.
  • Settings, rearranged: pages in groups (App, Work, Advanced), a search field that jumps to the setting,
    every setting with a line on what it does and its control on the right, and the Global / Workspace switch at
    the top of the pages a workspace can override (a dot marks what it overrides, Reset goes back to Global). The
    current page's sections are listed under it in the sidebar. Choices you can see are picked from previews: window
    mode, terminal colors, split tabs, what shows behind terminals, workspace color, and the Dock and menu bar icons.
    A new General page has the version and Check for Updates.
  • App icon: Settings → Appearance → Icons, Color or Monochrome (a white an...
Read more

Octomux 0.1.2

Choose a tag to compare

@anilsenay anilsenay released this 04 Nov 00:50
  • While Octomux connects to its background service at launch (a few seconds right after an update), the window
    shows "Starting Octomux…" instead of an empty sidebar.
  • The Claude Code integration's hook only answers in its own app's tabs, so Octomux and Octomux Dev can both
    have it on.
  • For contributors: Octomux Dev (tools/build-app.sh release dev), a separate app with its own data and
    background service that runs next to an installed Octomux.
  • Updated SQLite bindings (rusqlite 0.41) and signal-hook 0.4.

Install

Download Octomux-0.1.2.dmg, open it and drag Octomux into Applications. macOS 14+, Apple Silicon. Signed and
notarized. Already installed? Octomux offers the update itself.

Octomux 0.1.1

Choose a tag to compare

@anilsenay anilsenay released this 04 Nov 00:20
  • Only one copy of Octomux runs at a time: opening a second copy (say, one in Downloads and one in
    Applications) asks which one to keep, instead of both taking over the background service.
  • The background service follows the copy you open, once at launch; a copy that was left open no longer takes
    it back when it reconnects.

Install

Download Octomux-0.1.1.dmg, open it and drag Octomux into Applications. macOS 14+, Apple Silicon. Signed and
notarized. Already installed? Octomux offers the update itself.

Octomux 0.1.0

Choose a tag to compare

@anilsenay anilsenay released this 04 Nov 00:06
  • Sessions in a background daemon (launchd agent, one holder per session): they survive app quits, crashes,
    updates and daemon restarts; Claude Code and Codex resume their conversation after a reboot.
  • Workspaces, projects, tabs, splits, dock; git worktrees; the right panel (Files, Changes with History, Sessions).
  • Claude Code status (working / needs input / done), notifications, menu bar panel, chat view.
  • Usage limits for Claude Code and Codex.
  • Remote hosts over SSH.
  • Themes, dark by default, and animated scenes (Octo Deep, Kraken, Tide Pool and more).
  • Signed, notarized, and updates itself (Sparkle) without stopping your sessions.

Install

Download Octomux-0.1.0.dmg, open it and drag Octomux into Applications. macOS 14+, Apple Silicon. Signed and
notarized. Already installed? Octomux offers the update itself.