Releases: simion/termic
Release list
v0.24.0
What's changed
The termic CLI: create, watch, and archive tasks from any shell, plus per-repo run commands.
Features
- A
termiccommand, off by default and enabled in Settings, Termic CLI (marked experimental: the commands and their output can still change between releases). It drives the running app over a local socket, so a task it creates is a real task in your window, not a second copy of Termic.termic new fix-auth -p "fix the login redirect"creates a task in the repo you are standing in (worktree or main checkout, sandboxed or YOLO, any agent you have configured) and streams the setup script's output while it runs.list,status,open,wait,archive, andproject add|list|removecover the rest. Enabling installs the command into~/.local/bin; a button upgrades that to a system-wide install. Agents in an enforced sandbox never get access. (#125, #132, #133) - The CLI is built to be scripted, including by agents.
--waitblocks until the agent goes quiet and only reports success once the prompt was confirmed delivered,--output-format jsonandstream-jsongive machine-readable output with heartbeats so a consumer can tell a working agent from a hung one, exit codes are pinned in--help, andtermic help --jsondumps the whole command surface. (#133) - Agents can drive Termic themselves. Every task terminal is handed the command's path, the task's own id, and a two-line usage note, so an agent working in a task can create more tasks, wait for them, and read what they produced, with no setup on its side. One agent farming work out to several in parallel is now a thing you can ask for. Agents in an enforced sandbox are refused. (#133)
- Custom run commands per repo, beyond the single primary run script. Right-click any file in the tree to run it once, or add it to the repo's run commands, kept personal or committed to
.termic.yamlfor the team. Saved commands get their own section in the Run dropdown with play/stop each, open as real run tabs, and are editable in Settings, Repositories, Scripts. (#124) - A Run configuration dialog gathers the run, setup, and preview scripts plus the new run commands in one place, from the Run dropdown. (#124)
Improvements
- Settings are organized by what they change. General had grown to 18 unlabelled rows, so it split into General, Tasks, Notifications, Sandbox, and Termic CLI. The rail is grouped now: the pages you open often at the top, the ones you set once in the middle, the sandbox and the CLI at the bottom. Two settings moved to where you would look for them: "Task expand behavior" is in Appearance, "Copy on select" is in Agents & Terminals. Nothing you configured changed, only where it lives.
- The file tree and Git status keep themselves current instead of waiting for the next poll. Discarding a file, switching or updating a branch, saving in the editor, renaming or deleting in the tree, a setup or run script finishing, and commands you type in the aux terminal all refresh the panels now. The 4 second poll also stops ticking while the window is in the background.
- Re-expanding a folder in the file tree re-reads it from disk, so a file created while it was collapsed appears without reloading the whole tree.
- Cmd/Ctrl+click on a path in terminal output now finds files inside gitignored folders anywhere in the working tree instead of reporting no matches. (#117)
Bug fixes
- Worktree tasks and agent races work in a repo with no remote. The default base is
origin/main, which such a repo does not have, so every worktree spawn failed at branch creation and the race just sat there. The base now falls back to your localmain, thenHEAD. - "Copy" in the context menus (file tree, Git panel, diff header, breadcrumb, sidebar) works again. WKWebView refused the clipboard write from a menu selection; copying goes through the native pasteboard now.
- Terminal glyphs no longer cache against the wrong font and visibly swap when you select text. (#131)
- Creating a task whose name matches a branch an archived task left behind no longer collides: the auto-filled branch is numbered past it. A branch you typed yourself is never touched. (#129)
- Saving only the Personal tab of the Run configuration no longer writes an empty
.termic.yamlinto your repo. (#124) - Termic declares its local network usage, so macOS can explain the permission prompt instead of asking for unexplained access. (#130)
Thanks
- Michael Hohlios (@MHohlios) for the termic CLI, the design, the control plane, and the create/wait/archive/project verbs, and for the terminal font atlas fix.
- Justin Edmund (@jedmund) for the local network declaration.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.23.4
What's changed
Fixes a tab-drag crash and clipped dialogs on scaled displays, plus tab and terminal fixes.
Bug fixes
- Closing a split pane's last tab with the X now collapses the pane, matching ⌘W, instead of leaving an empty pane behind.
- Reordering tabs by dragging no longer crashes the task view on fractionally scaled displays. (#127)
- Dialogs no longer cut off their right edge (the Browse and Add buttons in Add project, Import worktree) on fractionally scaled displays. (#120, #126)
- Terminals no longer lock scrolling to the bottom after their pane was hidden and shown again. (#128)
- Cmd/Ctrl+click in terminal output now opens gitignored files too, and path detection requires a file extension so plain words stop turning into links. (#117)
Thanks
- Michael Hohlios (@MHohlios) for the terminal scroll-lock fix.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.23.3
What's changed
Fixes a tab-drag crash and clipped dialogs on scaled displays, plus terminal fixes.
Bug fixes
- Reordering tabs by dragging no longer crashes the task view on fractionally scaled displays. (#127)
- Dialogs no longer cut off their right edge (the Browse and Add buttons in Add project, Import worktree) on fractionally scaled displays. (#120, #126)
- Terminals no longer lock scrolling to the bottom after their pane was hidden and shown again. (#128)
- Cmd/Ctrl+click in terminal output now opens gitignored files too, and path detection requires a file extension so plain words stop turning into links. (#117)
Thanks
- Michael Hohlios (@MHohlios) for the terminal scroll-lock fix.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.23.2
What's changed
Fixes clipped dialogs on scaled displays, a terminal scroll lock, and Cmd+click file links.
Bug fixes
- Dialogs no longer cut off their right edge (the Browse and Add buttons in Add project, Import worktree) on fractionally scaled displays. (#120, #126)
- Terminals no longer lock scrolling to the bottom after their pane was hidden and shown again. (#128)
- Cmd/Ctrl+click in terminal output now opens gitignored files too, and path detection requires a file extension so plain words stop turning into links. (#117)
Thanks
- Michael Hohlios (@MHohlios) for the terminal scroll-lock fix.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.23.1
What's changed
Agent races, Git branch switching, big battery savings, stop tasks, crisper terminal text.
Features
- Agent races: fire one prompt at several agents at once, each in its own fresh worktree, and watch them attempt the same task side by side. When every racer finishes, compare their diffs in an N-up view and adopt the winner into your main checkout, optionally archiving the rest in the same step. Races take a name and an editable branch segment, and can launch sandboxed or in YOLO so permission prompts don't stall unattended racers. The launch dialog shows live progress while the worktrees spin up, and a race strip above the racers tracks each one with a live work-state badge. Start one from a project's actions menu. (#113)
- The Git tab shows your current branch and lets you switch to another local branch, Fork-style: local work (including untracked files) is stashed, the branch is checked out, and the stash is re-applied. A failed checkout rolls the stash back, and a re-apply conflict is surfaced instead of losing your changes. (#101, #111)
- Update a task branch without leaving the Git tab: pull from its upstream, or merge or rebase the task's base branch. Each op fetches first and auto-stashes local work. Conflicts are left in place for you to resolve in the task's terminal, and a conflicting stash re-apply is reported instead of being passed off as restored. (#101, #116)
- Worktree tasks symlink the project's agent config folders (.claude, .gemini, .codex by default, editable in Settings) so an agent working in a worktree keeps its skills, subagents, and permissions. (#112)
- Dismiss repos you no longer care about from the Add Project picker; a "Show hidden" row brings them back. The choice survives restarts without deleting anything from disk. (#109)
- A default-off "Show all fonts" checkbox in the font pickers widens the list from detected monospace fonts to the full installed catalog, for monospace fonts the detector misses. (#114)
- The work-in-progress spinner (agent tab and sidebar icon) is on by default now. If you turned it off, your choice sticks.
- Resume lists (the tab strip's + menu and the New task launcher) are one-line rows now: a compact greyed age (10m, 2d) sits before the name instead of a second line under it.
- Stop a task without archiving it: "Stop task" in the task row menu (and "Stop all tasks" on the project) kills its agents and frees the memory while keeping every session. Opening the task again resumes the conversations where they left off. (#119)
- Cmd/Ctrl+click a file path in terminal output to open it in the editor. (#117)
Improvements
- Termic no longer drains your battery while idle. The PTY backend stopped sleep-polling (about 1,900 CPU wakeups per second, gone) and hidden panes stop rendering entirely instead of drawing every background repaint. Combined power drops up to 37% while agents stream, 15% at idle. (#121)
Bug fixes
- Terminals no longer render mixed-height, wavy text after a cold start. The WebGL glyph atlas now waits on font faces Termic owns instead of trusting the browser's font registry, which reported ready before the font was. (#70, #100)
- The font pickers list only fonts actually installed on your machine, alphabetized, instead of offering curated names that silently fell back to the bundled font when picked. (#110)
- Option+click makes a selection in terminal panes even when the running program has captured the mouse. (#105)
- codex and grok no longer pop a startup update menu that swallows an injected prompt on unattended spawns (run-prompt into a new agent). When you are at the keyboard they still ask.
- The contact link copies the email address to the clipboard as a fallback when a hijacked mailto: handler eats the click. (#106)
- Creating a group pre-selects the suggested name so you can type straight over it. (#107)
- Clicking a changed file shows the diff its pane implies: an Unstaged row diffs the index against your working tree, a Staged row diffs HEAD against the index (what git diff and git diff --cached show). A file staged and then edited again no longer shows the same full diff from both rows. (#122)
- The built-in diff viewer stays precise on large files (pnpm-lock.yaml) instead of painting whole regions as changed; it matches git diff now. (#118)
- The Git tab no longer fills several gigabytes of RAM when a large directory (e.g.
node_modulesafternpm install) is untracked. File lists are now capped at 5 000 entries per pane and rendered with virtual scrolling. A banner appears when the cap is hit. (#123)
Thanks
- Orel Ohayon (@Orellius) for agent races, branch switching and updates with stash re-apply, worktree config symlinks, dormant repo dismissal, and the terminal font atlas fix.
- Michael Hohlios (@MHohlios) for the installed-fonts picker, the show-all-fonts escape hatch, the group-name pre-select, and for hunting down the idle battery drain (PTY sleep-polling plus hidden panes that never stopped rendering).
- @dancras for Cmd/Ctrl+click to open file paths from terminal output.
- @shimonenator for the bug reports behind both diff fixes and for the stop-without-archiving request.
- Nikhil Verma (@nikhilweee) for Option+click selection.
- Adam Matan (@adamatan) for the mailto fallback.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.23.0
What's changed
Agent races, Git branch switching, big battery savings, stop tasks, crisper terminal text.
Features
- Agent races: fire one prompt at several agents at once, each in its own fresh worktree, and watch them attempt the same task side by side. When every racer finishes, compare their diffs in an N-up view and adopt the winner into your main checkout, optionally archiving the rest in the same step. Races take a name and an editable branch segment, and can launch sandboxed or in YOLO so permission prompts don't stall unattended racers. The launch dialog shows live progress while the worktrees spin up, and a race strip above the racers tracks each one with a live work-state badge. Start one from a project's actions menu. (#113)
- The Git tab shows your current branch and lets you switch to another local branch, Fork-style: local work (including untracked files) is stashed, the branch is checked out, and the stash is re-applied. A failed checkout rolls the stash back, and a re-apply conflict is surfaced instead of losing your changes. (#101, #111)
- Update a task branch without leaving the Git tab: pull from its upstream, or merge or rebase the task's base branch. Each op fetches first and auto-stashes local work. Conflicts are left in place for you to resolve in the task's terminal, and a conflicting stash re-apply is reported instead of being passed off as restored. (#101, #116)
- Worktree tasks symlink the project's agent config folders (.claude, .gemini, .codex by default, editable in Settings) so an agent working in a worktree keeps its skills, subagents, and permissions. (#112)
- Dismiss repos you no longer care about from the Add Project picker; a "Show hidden" row brings them back. The choice survives restarts without deleting anything from disk. (#109)
- A default-off "Show all fonts" checkbox in the font pickers widens the list from detected monospace fonts to the full installed catalog, for monospace fonts the detector misses. (#114)
- The work-in-progress spinner (agent tab and sidebar icon) is on by default now. If you turned it off, your choice sticks.
- Resume lists (the tab strip's + menu and the New task launcher) are one-line rows now: a compact greyed age (10m, 2d) sits before the name instead of a second line under it.
- Stop a task without archiving it: "Stop task" in the task row menu (and "Stop all tasks" on the project) kills its agents and frees the memory while keeping every session. Opening the task again resumes the conversations where they left off. (#119)
- Cmd/Ctrl+click a file path in terminal output to open it in the editor. (#117)
Improvements
- Termic no longer drains your battery while idle. The PTY backend stopped sleep-polling (about 1,900 CPU wakeups per second, gone) and hidden panes stop rendering entirely instead of drawing every background repaint. Combined power drops up to 37% while agents stream, 15% at idle. (#121)
Bug fixes
- Terminals no longer render mixed-height, wavy text after a cold start. The WebGL glyph atlas now waits on font faces Termic owns instead of trusting the browser's font registry, which reported ready before the font was. (#70, #100)
- The font pickers list only fonts actually installed on your machine, alphabetized, instead of offering curated names that silently fell back to the bundled font when picked. (#110)
- Option+click makes a selection in terminal panes even when the running program has captured the mouse. (#105)
- codex and grok no longer pop a startup update menu that swallows an injected prompt on unattended spawns (run-prompt into a new agent). When you are at the keyboard they still ask.
- The contact link copies the email address to the clipboard as a fallback when a hijacked mailto: handler eats the click. (#106)
- Creating a group pre-selects the suggested name so you can type straight over it. (#107)
- Clicking a changed file shows the diff its pane implies: an Unstaged row diffs the index against your working tree, a Staged row diffs HEAD against the index (what git diff and git diff --cached show). A file staged and then edited again no longer shows the same full diff from both rows. (#122)
- The built-in diff viewer stays precise on large files (pnpm-lock.yaml) instead of painting whole regions as changed; it matches git diff now. (#118)
Thanks
- Orel Ohayon (@Orellius) for agent races, branch switching and updates with stash re-apply, worktree config symlinks, dormant repo dismissal, and the terminal font atlas fix.
- Michael Hohlios (@MHohlios) for the installed-fonts picker, the show-all-fonts escape hatch, the group-name pre-select, and for hunting down the idle battery drain (PTY sleep-polling plus hidden panes that never stopped rendering).
- @dancras for Cmd/Ctrl+click to open file paths from terminal output.
- @shimonenator for the bug reports behind both diff fixes and for the stop-without-archiving request.
- Nikhil Verma (@nikhilweee) for Option+click selection.
- Adam Matan (@adamatan) for the mailto fallback.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.22.0
What's changed
Signed and notarized by Apple, adopt existing worktrees, custom work-done signals.
Features
- Termic is signed and notarized by Apple now. A
.dmgyou download opens on first launch: no "unidentified developer" warning, no right-click to Open, nothing to strip from the command line. macOS also remembers the microphone permission across updates instead of asking again on every release. - Adopt an existing worktree when you make a task. The launcher menu lists worktrees already on disk, so you can pick one up where you left it instead of branching a new one.
- Custom work-done signal detection for custom CLIs. Give your own agent the patterns that mean "finished" and Termic notices when it is done, the same way it does for claude, gemini, and codex. (#68, #97)
- Each agent's live title heuristics show as the signal placeholders, so you can see what Termic is actually matching on instead of guessing.
- A bigger starter prompt library. (#93)
- Group folder colors use per-theme palette shades, so a Finder-style color tag looks right in every theme instead of only the one it was picked in. (#95)
- Settings field groups sit in full-bleed bands, so a switch visibly owns the section it governs.
Bug fixes
- A failed session resume keeps the live session instead of discarding it, and a later recovery swaps the two rather than overwriting whichever one you are actually working in. (#94)
- Light theme: raised terminal contrast so truecolor text from CLIs stays readable. (#83, #98)
- The output-scan switch is disabled until you give it patterns, since it does nothing without them.
- New task names count worktree rows in the sidebar, so the default name does not collide with a task you already have.
Thanks
- Orel Ohayon (@Orellius) for the expanded prompt library, custom work-done signals, the light-theme contrast fix, and preserving the session on a failed resume.
- MHohlios (@MHohlios) for per-theme palette shades on group folder colors.
Install
- macOS (universal):
brew install --cask simion/termic/termic, or download the.dmgbelow. Signed and notarized by Apple, so it opens on first launch with nothing else to do. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.21.0
What's changed
Project folders, a prompt palette, and in-pane image and PDF previews, thanks to our contributors.
Features
- Project groups: give any project a group label and it collapses under a folder in the sidebar, so a fleet of similarly named repos (app-ios, app-android, service-auth) clusters by product or layer while staying visible at a glance. Right-click a project to move it into a group, or drag it into, out of, or between folders; drag a folder header to reorder whole groups. Folders take Finder-style color tags, and a collapsed folder still shows a dot when one of its hidden agents needs you. (#84)
- Prompt palette: press Option+Cmd+P to search your prompt library by name and fire one straight at the focused agent, or pick a destination when there isn't one. While the search box is empty, keys 1 through 9 fire the top prompts instantly. (#81)
- Whole-app zoom: Cmd+= and Cmd+- scale the entire interface like a browser, Cmd+0 resets to 100%, and the level persists across launches. (#91)
- Image and PDF preview: click an image or a PDF in the file tree and it opens in the pane, rendered natively, right alongside your agents and diffs. (#75)
- Reopen closed sessions: the "+" tab menu now lists sessions you have closed in a task, so you can pick one back up instead of starting over. (#88)
- Find in the markdown preview: Cmd+F now searches within the rendered preview, and wins over the editor's own find when the preview pane has focus. (#71)
- New worktrees branch from a fresh base: task creation fetches the base ref first, so a new branch starts from the up-to-date base instead of a stale local copy. (#86)
- Remote images in the markdown preview are off by default now, behind a new setting, so opening a document can't silently reach out to the network until you opt in. (#85)
- Project discovery reaches one level deeper inside grouping folders, so nested repo layouts show up without adding each repo by hand. (#89)
Bug fixes
- A single Claude agent no longer shows two "working" indicators at once. (#78)
- Directory links in the markdown preview reveal the folder in the file tree instead of opening Finder. (#87)
- Terminals wait for the font to load before spawning, so the first frame can't cache fallback glyphs into the WebGL atlas. (#70)
- The command palette moved to Shift+Cmd+P, and Cmd+K now clears the terminal, matching VS Code and standard terminals. Both remain rebindable in Settings, under Shortcuts.
Thanks
This release leans heavily on community contributions. Thank you:
- Adam Matan (@adamatan) for the prompt palette, image and PDF preview, off-by-default remote images, and reopening closed sessions.
- MHohlios (@MHohlios) for project groups, drag-and-drop folders with Finder-style color tags.
- Orel Ohayon (@Orellius) for reaching one level deeper when discovering repos.
- Ehtasham Yasin (@Ehtasham-Yasin) for fixing the duplicate agent working indicators.
Install
- macOS (universal):
brew install --cask simion/termic/termic(handles Gatekeeper), or download the.dmgbelow and runxattr -dr com.apple.quarantine /Applications/Termic.appto clear it. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.20.1
What's changed
Workspaces are now Tasks, and you can create one in two clicks from the sidebar.
Features
- Renamed "workspace" to "task" everywhere: labels, menus, the command palette, shortcuts, and settings. Existing workspaces migrate automatically on first launch, with the old data backed up first, and templates that use {workspace_name} style placeholders keep working.
- Every task now has a location. "Main checkout" runs the agent in the repo's live checkout on its current branch, so edits land on your real files. "Worktree" is an isolated branch in its own working directory. A small icon marks each task in the sidebar, top bar, dashboard, and history.
- Quick task creation from the sidebar: click a project's "+", flip the Main checkout / Worktree toggle, pick an agent (or Terminal, or a custom command), and type a name inline. Worktrees also get an auto-filled, editable branch field, so there's no dialog for the common case.
- The Main checkout / Worktree choice is remembered across the app and shared by the quick menu, the New Task dialog, and Advanced, so it always opens the way you last worked.
- Custom launch command tasks (ssh, a dev server, a REPL) can now be created as a worktree too, with an editable branch.
- Creating a single-repo worktree opens the task right away and runs its setup script as a background tab, so you land on the agent immediately instead of waiting.
- Empty projects show a single "New task" button that opens the same menu as the "+" icon.
Bug fixes
- Setup and run scripts always run outside the sandbox now, so they get the full network and filesystem they need (npm install, dev servers, and the like) even in projects that default to an enforcing sandbox.
- A task name that contains no letters or numbers is now rejected with a clear message instead of silently failing.
- Dragging the last main tab into a split pane no longer strands the main pane empty and unclosable: the main tab bar always keeps at least one tab, and dragging its only tab shows no drop target.
Also in this release
Smaller improvements that landed alongside the rename:
- Custom themes: drop a JSON file in
~/.config/termic/themes/and it shows up in the theme picker as a first-class theme, chrome and terminal together. The folder ships with a README and a copyable example. (#62) - Rosé Pine, a new built-in theme, using the official ANSI palette so agent TUIs look the same in Termic as in Ghostty. (#61)
- Markdown preview renders images (relative and remote) and follows links, including
file.md#headingjumps, missing-file notices, and folder-reveal in Finder. (#65) - Fonts you pick from the system list are actually used, in both the terminal and the editor, so Nerd Font glyphs from oh-my-posh, starship, and Powerlevel10k stop rendering as empty boxes. The picker also lists every system font the first time you open it. (#63)
- Text on accent-colored buttons and badges stays readable in every theme, including the light accents of Cobalt, Matrix, and Rosé Pine. (#60)
- Custom light themes fall back to the light palette for any color they leave out, and the file tree keeps its expanded folders when you switch tasks.
Install
- macOS (universal):
brew install --cask simion/termic/termic(handles Gatekeeper), or download the.dmgbelow and runxattr -dr com.apple.quarantine /Applications/Termic.appto clear it. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev
v0.20.0
What's changed
Workspaces are now Tasks, and you can create one in two clicks from the sidebar.
Features
- Renamed "workspace" to "task" everywhere: labels, menus, the command palette, shortcuts, and settings. Existing workspaces migrate automatically on first launch, with the old data backed up first, and templates that use {workspace_name} style placeholders keep working.
- Every task now has a location. "Main checkout" runs the agent in the repo's live checkout on its current branch, so edits land on your real files. "Worktree" is an isolated branch in its own working directory. A small icon marks each task in the sidebar, top bar, dashboard, and history.
- Quick task creation from the sidebar: click a project's "+", flip the Main checkout / Worktree toggle, pick an agent (or Terminal, or a custom command), and type a name inline. Worktrees also get an auto-filled, editable branch field, so there's no dialog for the common case.
- The Main checkout / Worktree choice is remembered across the app and shared by the quick menu, the New Task dialog, and Advanced, so it always opens the way you last worked.
- Custom launch command tasks (ssh, a dev server, a REPL) can now be created as a worktree too, with an editable branch.
- Creating a single-repo worktree opens the task right away and runs its setup script as a background tab, so you land on the agent immediately instead of waiting.
- Empty projects show a single "New task" button that opens the same menu as the "+" icon.
Bug fixes
- Setup and run scripts always run outside the sandbox now, so they get the full network and filesystem they need (npm install, dev servers, and the like) even in projects that default to an enforcing sandbox.
- A task name that contains no letters or numbers is now rejected with a clear message instead of silently failing.
Also in this release
Smaller improvements that landed alongside the rename:
- Custom themes: drop a JSON file in
~/.config/termic/themes/and it shows up in the theme picker as a first-class theme, chrome and terminal together. The folder ships with a README and a copyable example. (#62) - Rosé Pine, a new built-in theme, using the official ANSI palette so agent TUIs look the same in Termic as in Ghostty. (#61)
- Markdown preview renders images (relative and remote) and follows links, including
file.md#headingjumps, missing-file notices, and folder-reveal in Finder. (#65) - Fonts you pick from the system list are actually used, in both the terminal and the editor, so Nerd Font glyphs from oh-my-posh, starship, and Powerlevel10k stop rendering as empty boxes. The picker also lists every system font the first time you open it. (#63)
- Text on accent-colored buttons and badges stays readable in every theme, including the light accents of Cobalt, Matrix, and Rosé Pine. (#60)
- Custom light themes fall back to the light palette for any color they leave out, and the file tree keeps its expanded folders when you switch tasks.
Install
- macOS (universal):
brew install --cask simion/termic/termic(handles Gatekeeper), or download the.dmgbelow and runxattr -dr com.apple.quarantine /Applications/Termic.appto clear it. - Linux (x86_64): download the
.AppImagebelow, thenchmod +xit and run. Sandbox is macOS-only; everything else works the same.
The app self-updates after install. Full install and update help: https://termic.dev