Repository navigation
Releases
Turbocode v0.65
TurboCode 0.65
TurboCode now sets itself up on first launch, lets you follow and steer a working model without interrupting it, gives Studio bundled skills for pages, documents, and decks, and introduces a calmer visual language.
Features
- First-launch setup: finds llama-server, LM Studio, Ollama, vLLM, or Jan on your Mac or at an address you type, reads the context window and vision support from llama-server, checks tool calls, and writes
~/.turbocode/models.jsononly when you choose Create and Start. - Progress answers: ask how the work is going while a model is busy, and the on-device model answers in a card above the composer. The working model never sees the question.
- Steering between tool rounds: messages sent during a turn reach native models at the next tool boundary instead of at the end of the turn.
- Live tool calls: the Transcript sheet shows calls while they stream, warns after three identical calls, and can stop the turn.
- Current date: the model is told today's date, without touching the cached system prompt.
- Studio skills:
studio-web-design,studio-documents, andstudio-presentations, loaded only when needed. Documents and decks are written as HTML and printed to PDF in the VM. - Artifacts library: one card per session, with rendered thumbnails for HTML pages.
- Composer: Coding names the active workspace; Studio shares a folder from the composer and shows Review & Export only while files are waiting.
- New look: terracotta accent, serif titles, shared surfaces, and a solid or translucent sidebar.
Fixes
- Switching conversations quickly could save one conversation with another's blocks.
- A refused send no longer loses the draft.
- A second Return while steering no longer queues the message twice.
- A refused delegation stays readable and no longer prints the system prompt into the chat.
- The app no longer shows two View menus.
Notes
models.jsonis no longer written before the first-launch setup completes; an existing catalog is never overwritten.- This build is ad-hoc signed and not notarized. If macOS blocks the first launch, approve it in System Settings → Privacy & Security or open it with right-click → Open.
Full details in CHANGELOG.md.
Turbocode v0.64
TurboCode 0.64
Cowork becomes Studio. This release adds a home view that says what the mode is for, an Artifacts library with live previews of servers running in the VM, image viewing inside the VM, and built-in connectors that let one session work with another app on the Mac.
Features
- Studio: Cowork has a new name in the interface and documentation. Existing sessions open unchanged.
- Studio home: a new session opens on four capability cards and up to three recent artifacts. A card writes a starter into the composer; an artifact opens the session that made it. The home view never starts the VM.
- Artifacts library: a grid of the files each session placed in
/out, with thumbnails and a full-size preview. Copying to the Mac still goes through Review & Export. - Live previews: the Artifacts inspector shows servers the agent left running in the VM as a live page (listening on
0.0.0.0, port 1024 or higher). Opening the inspector never boots or restarts the VM. The inspector can expand over the chat, and the library offers Show in Session. vm_view_image: Studio models with vision can look at PNG, JPEG, GIF, and WebP images inside the VM, up to 10 MB.- Built-in connectors: a session can use a named app's own MCP operations on
127.0.0.1. Connectors are off by default and enabled per session from the new Connectors page or the Studio home. - Prassitele is the first connector. Its images reach models with vision, and it offers the
prassitele-sculptingskill.
Fixes
- The Studio prompt no longer tells the model to stop every server it starts; it points the user to the Artifacts panel.
Notes
- Sessions store enabled connectors in a new optional field; older session files decode unchanged.
- Enabling a connector for a session is the consent for its calls. Delegated workers and Codex never receive the connector gateway. Safari stays Coding-only with its global switch.
- Source identifiers, the persisted
coworksession domain, and thevm_*tool names keep the Cowork name.
See CHANGELOG.md for the full notes.
Turbocode v0.63
TurboCode 0.63
Local models can now see images dropped on the main view. This release also removes the time limits that interrupted slow local models, and hardens how sessions are saved, restored, and recovered.
Features
- Image input for Llama-server and Apple on-device models. Drop PNG, JPEG, HEIC, WebP, GIF, or TIFF files on the main view to add thumbnails to the composer (up to 4 images, 20 MB each). Sent images appear as thumbnails in the conversation.
- Image input also works in Cowork sessions. The image reaches only the model and is never copied into the VM.
- When the active model has no vision support, a brief notice is shown and the image is not added. Support is read from the new
supportsVisionkey inmodels.json, or from the running llama-server when the key is absent.
Fixes
- Removed the time limit from model requests: slow local models no longer fail with "The request timed out." The 300-second limit on delegated and powerful-model workers is gone too. Stop still cancels everything at once.
- One unreadable session file no longer empties the sidebar. Unreadable files are reported and never moved or rewritten.
- Switching threads during a save can no longer write one conversation's content into another's file.
- Deleting the active chat now opens the next chat in the same mode (Coding or Cowork), skipping archived chats.
- Steering requests stay with their own conversation instead of following you into a new session. Requests already copied into a session must be removed by hand.
- Interrupting a turn no longer leaves tool calls without output, which OpenAI-compatible servers rejected on the next request.
- Sessions written by a newer TurboCode are no longer rewritten with data loss.
- Cowork sessions no longer rebuild the provider session on every send, which added latency and cleared the composer's context statistics.
- Large patches can no longer hang an edit.
- Servers that repeat tool-call ids in every stream chunk no longer produce corrupted values such as
call_xcall_x.
Good to know
- Image bytes are never written to disk. Stored sessions keep only an
[Image: name]marker. models.jsongains an optionalsupportsVisionkey. Existing files keep working unchanged (seeCONFIGURATION.md).
Requirements: macOS 27.
Full changelog: CHANGELOG.md
Turbocode v0.62
TurboCode 0.62 introduces Cowork: a multi-purpose mode that builds web apps, runs Python scripts, renders pages and screenshots, and produces documents inside an isolated Linux virtual machine. Your Mac stays protected: shared folders are read-only to the VM, and results reach your folders only through a reviewed export.
To enable Cowork, go to Turbocode → Settings → Cowork and turn on Enable Cowork. The first time, TurboCode downloads about 760 MB (a Debian 12 image with Node.js 24, Python 3.11, and headless Chromium), installs it, and verifies it with a self-test. Then use the Coding | Cowork switch at the top of the sidebar.
Cowork requires a Mac with Apple silicon and about 2.2 GB of free space. It works with the on-device, Llama, and DeepSeek profiles.
What's Changed
- Cowork VM managed through Apple Containerization, booting in about 0.4 seconds, with reset and removal from Settings.
- Coding | Cowork sidebar switch; each session keeps its mode.
- Shared folder per session, read-only at
/work, from the toolbar. - VM tools
vm_exec,vm_file(with diffs in the chat), andvm_export. - Review & Export: per-file decisions, text diffs for conflicts, no symlinks or build folders, quarantine on exported files.
- The guest image is published by TurboCode-Cowork-Image v0.62.0.
See CHANGELOG.md for details.
Full Changelog: v0.61...v0.62
Turbocode v0.61
To enable dynamic routing for tool calls, go to Turbocode → Settings → Agents and enable Dynamic Routing. The first time, the model will be downloaded, and once it’s ready, it will immediately become available below the InputTextField.
What's Changed
Full Changelog: v0.6...v0.61

Turbocode v0.6
What's Changed
- Expand TurboCode 0.6 with Xcode MCP, ACP, workspace review, and composer metricsDev by @granvalenti76 in #26
Full Changelog: v0.5...v0.6

Turbocode v0.5
TurboCode 0.5 Prerelease
TurboCode 0.5 is a prerelease focused on controllable agent collaboration, profile-driven workers, and a more reviewable runtime workflow for Swift and SwiftUI development on macOS.
Highlights
- Runtime steering with queued corrections and Codex
turn/steersupport. - Asynchronous task delegation with worker pools and concurrent activity tracking.
- Explicit worker routing through
worker_id, worker role descriptions, and busy-worker protection. - Codex profile support with profile-specific tool overrides.
- Improved transcript context projection and reversible tool-exchange exclusions.
- Executor-neutral streaming and typed tool receipts across native and Codex runtimes.
- Refined Custom Profiles / Agent Team workspace.
- Extended TypeScript plugin examples and SDK onboarding.
- Additive first-launch onboarding under
~/.turbocode/.
Onboarding
On first launch, TurboCode creates and maintains the local configuration layout, including:
models.json,config.json, andprofiles.json- sessions and diagnostics
- built-in Skills
- TypeScript plugins and SDK
- repository-map cache
- official and user documentation
Existing user configuration and model endpoints are preserved during onboarding and migration.
Verification
FirstLaunchBootstrapTests: 9/9 passed.git diff --check: passed.- The
devbranch was merged from the existing v0.4 baseline. - Real-provider interactive validation remains a prerelease release-gate task.
Demo
TurboCode_0.5_Mastodon_teaser.mp4
Turbocode v0.4
TurboCode 0.4.0
TurboCode 0.4 is a major step toward a general-purpose native macOS agent
harness. It combines local and frontier model workflows with structured tools,
profiles, Skills, plugins, workspace safety, and a native session experience.
Highlights
- Shared runtime lifecycle for native and Codex sessions.
- Improved cancellation, approvals, persistence, restore, and stale-result
protection. - TypeScript plugin SDK with typed tools, widgets, validation, reload, and
complete examples. - The SDK is bundled with the app and installed automatically during onboarding.
- New Editorial Desk for Markdown drafts, sources, review, and publication.
- Native workspace and chat management with swipe actions for delete and share.
- Transcript export to Notes, JSON files, or ZIP archives.
- Reduced default tool surfaces with explicit profile overrides.
- Improved native macOS toolbar, sidebar, profiles, and structured tool output.
- Apple PCC retired as a selectable default backend.
- Support for Apple on-device models, local Llama servers, OpenAI Codex, and
DeepSeek API.
Requirements
- Latest available macOS 27 beta.
- Xcode 27 beta and Swift 6.
- Node.js 24 or later for TypeScript plugins.
- Codex must already be installed for the Codex backend.
macOS 26 is not supported by this release.
Installation
Install with Homebrew:
brew install --cask granvalenti76/homebrew-tap/turbocodeTurboCode 0.3.3
[0.3.3] - 2026-08-21
This release improves the backend used by TurboCode's Local LLM profile,
especially the Llama integration. The goal is simple: a native SwiftUI harness
should remain responsive and useful with capable local models, including on
Macs with 16 GB of RAM. The work also puts clearer boundaries around model
capabilities and optional tools, laying the groundwork for a more modular
architecture in future releases without changing the current user workflow.
Features
- Llama responses now show reasoning updates while the model is working and
report useful runtime details such as response time, generated tokens, and
context usage. - Added manual context compaction for local Llama sessions. Compaction reduces
older transcript content when the model is running out of room and records a
visible event so the conversation remains understandable. - Added a Llama-only context ring to the composer. It is updated after a turn
completes and shows the used/total context values when hovered; other
profiles keep their existing footer. - Llama now reads its server URL from
models.jsonwhen the session is first
created, so custom hosts and ports work consistently from the start. - Reasoning updates are tied to the active model request and grouped when they
arrive in quick bursts. This keeps an old request from writing into a new
transcript and avoids unnecessary UI work. - Added optional Safari browsing through MCP. It is disabled by default because
MCP tools, especially web browsing, can add a large amount of text to the
context; a few turns can reach roughly 25k tokens. Enable it from
Settings > Agents > Experimentalwhen using a model with fast token
generation, so the extra tool work does not make the interaction feel slow.
Fixes
- The Changes Inspector now refreshes workspace diffs when it opens, so it
reflects the current repository state. - Chat text no longer shows through the macOS window toolbar or the top scroll
edge. The fix keeps the existing workbench layout and sidebar alignment
intact.
Turbocode 0.3.2 - macOS 27 beta 5 compatible release with integrated terminal, inline code review, redesigned Changes Inspector, and ripgrep migration
RELEASE
- Added an integrated project terminal directly inside the workbench.
- Added syntax-aware inline code review with review comments and draft
management. - Redesigned the Changes Inspector with improved diff presentation and code
review workflows. - Added visible activity states for file reads and ripgrep searches.
- Replaced the legacy
greptool with the boundedripgreptool. - Refined Markdown presentation across chat messages, including typography
and code rendering. - Stabilized Llama prompt caching and model-switch behavior with regression
coverage.
FIX
- Improved scrolling while reviewing change patches.
- Simplified workspace listing guidance and its result presentation.
- Simplified the tool surface and bounded file reads to keep tool usage more
predictable and safer.