PricingDocs
Get started

Run your whole company from one repo you own.

Start with one job and grow from there.

Get started

Product

  • Agent Computer
  • Company as Code
  • Connectors
  • Automations
  • Channels
  • Agents & Skills
  • Security
  • Self-hosted
  • Enterprise
  • Pricing
  • Download

Solutions

  • Sales
  • Marketing
  • Engineering
  • Product
  • Finance
  • People
  • IT
  • Data Science

Developers

  • Documentation
  • AI Operating System
  • CLI
  • SDK
  • Quickstart
  • For developers
  • Marketplace
  • GitHub

Company

  • About
  • Careers
  • Blog
  • Changelog
  • Release history
  • Use Cases
  • Brand

Connect

  • X
  • LinkedIn
  • Discord
  • Status
  • Support
  • Terms
  • Privacy
©2026 Kortix

Release history

September 11, 2026

Wedged sandboxes are reclaimed, and database contention no longer looks like a server fault

v0.13.14

Fixed

  • Sandboxes cannot outlive their work. A session turn now has an absolute ceiling as well as a renewable one. Renewal asks whether a turn is still running, and a wedged turn answers "yes" forever, so a turn record past the ceiling is now settled instead of being renewed indefinitely and its sandbox is reclaimed. This one cause sat behind several classes of server error.
  • Fewer server errors when the database is busy. Connection-class and contention failures are now recognised as the temporary conditions they are and retried, instead of being reported as server faults.
  • Errors say what actually went wrong. A failure now carries its real cause rather than the message of whatever wrapped it, and how serious it is follows that cause. Ordinary customer state no longer looks like a platform failure, so real failures stop being buried.
  • A large unused database index is gone, removing its write cost from every audit record. It was 8.6 GB and had served no read in two and a half months.
  • One subscription dialog, in the right place. The upgrade dialog now renders above the deepest panel that opened it, so its controls stay reachable and screen readers can see it. Escape closes it and leaves account settings open.
  • Ordered lists size their gutter to the widest marker, so long lists no longer clip their numbers.
  • Desktop: the Back control sits correctly on sign-in screens.

New

  • Desktop asks which Kortix instance to use on first launch.

Internal

  • The test harness no longer loses a whole browser shard when a dev-server cache restore fails, and a finished test run now exits instead of hanging when something leaves a connection open. Both had turned passing runs into failed ones.

What's Changed

  • fix(markdown): size ordered-list gutter to the widest marker by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7191
  • fix(billing): one upgrade dialog per page, so the accessibility tree can see it by @markokraemer in https://github.com/kortix-ai/suna/pull/7193
  • feat(desktop): ask for the Kortix URL on first launch by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7199
  • fix(tests): a failed Turbopack cache restore must not take the browser shard with it by @markokraemer in https://github.com/kortix-ai/suna/pull/7201
  • fix(desktop): Back control on auth frames, centred on the traffic lights by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7200
  • fix(reaper,auth,audit): kill the two biggest prod error classes at the source by @markokraemer in https://github.com/kortix-ai/suna/pull/7194
  • chore(release): staging VERSION → 0.13.14 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7206
  • chore(release): VERSION → 0.13.14 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7207
  • fix(tests): a finished run must leave, even when something forgot to close by @markokraemer in https://github.com/kortix-ai/suna/pull/7203
  • fix(billing): keep one upgrade-dialog implementation, the depth-aware one by @markokraemer in https://github.com/kortix-ai/suna/pull/7205
  • release: main → staging (prod error sweep, one upgrade-dialog implementation, test-runner reliability) by @markokraemer in https://github.com/kortix-ai/suna/pull/7208
  • Release v0.13.14 — Wedged sandboxes are reclaimed, and database contention no longer looks like a server fault by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7210

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.13...v0.13.14

Release on GitHub
September 10, 2026

Reliable connector access, account settings, and session Git permissions

v0.13.13

Fixed

  • Billing opens one subscription dialog from the account hub. Its controls remain accessible, and Escape closes the subscription dialog while keeping account settings open.
  • Session Git pushes honor explicit ref grants within the effective IAM role. Manager-authorized sessions can update shared branches; agent grants cannot elevate a member to manager ref authority.
  • Connectors keep working after a bad manifest read. A session no longer loses every connector when one read of kortix.yaml answers wrong. Each grant now records the manifest revision it came from; a grant read from the same revision or an older commit never replaces it, and an unreadable manifest keeps the last known grant. The channel that started a session (Slack, Teams, email) stays callable under any grant, so the agent can always report in its own thread.
  • Connector denials say why. connector_not_assigned now names the agent, its granted list, the manifest revision, and what to change. A declared connector with no credential answers connector_not_connected and lists as needs_auth. Composio connectors no longer show needs_auth while they are connected.
  • Slack progress is never silently dropped. slack step and slack send fail with a reason when a checkpoint or an answer does not reach the thread, instead of reporting success. A replayed idle event no longer closes a turn that just started. Button clicks carry the full turn instructions and never vanish without a trace.
  • Sessions: the waiting row and the Stop button stay accurate while a prompt is in flight.
  • Triggers: the manager override for reuse-mode prompt delivery works again.
  • Web: auth tokens are preserved during hydration and fenced before cross-user adoption, and project access waits for auth, so cold loads no longer show "This project didn't load".
  • Web: 18 toasts no longer render their own translation key; the template OG image route runs on Node and stops bundling every translation.
  • Desktop: navigation layout restored, with parity checks in the package gate.

Improved

  • Self-host operators can set KORTIX_FRONTEND_MEMORY_LIMIT to give the frontend more memory. The setting persists through CLI updates and affects only the frontend.
  • Account hub as a modal. Organization settings, members, groups, roles, identity, billing, and audit open over the page you are on instead of a separate route tree. The /accounts routes are gone; links resolve to ?accountId= on the current page, and Back, reload, and pasted links keep working.
  • Signing in paints one brand mark across the whole path to the project instead of four different loading frames.
  • Command palette: file search is offered only where it can run; the Open URL row and the Jump to message page are removed; the empty state no longer names a row that is not there.

Internal

  • Release fixtures follow the current connector tab and use a normal cancellation request. Test artifacts mask diagnostic credentials and upload only after the secret guard passes.
  • End-to-end flow GH-17 verifies member branch isolation and owner ref authority through real Git HTTP.
  • New end-to-end flow (CONN-27) covers session grant provenance, the channel guarantee, and honest denials, with preview harness support. Browser specs follow the account hub to its new URLs; spec 23 ignores CORS preflights.
  • Connector authorization tests mint credentials through the token API and close database connections after each run.

What's Changed

  • fix(session): keep the waiting row and Stop honest while a prompt is in flight by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7158
  • fix(web): template OG image route on Node runtime, no bundled translations (unblocks 0.13.12 staging/prod frontend deploy) by @markokraemer in https://github.com/kortix-ai/suna/pull/7165
  • test(e2e): spec 23 ignores the CORS preflight on every waitForResponse predicate by @markokraemer in https://github.com/kortix-ai/suna/pull/7170
  • chore(release): VERSION → 0.13.13 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7172
  • chore(release): staging VERSION → 0.13.13 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7173
  • fix(web): preserve valid auth during project loads by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7164
  • fix(triggers): restore manager override for reuse-mode prompt delivery by @agent-kortix in https://github.com/kortix-ai/suna/pull/7174
  • release: restore manager override for reuse-mode prompt delivery (heartbeat outage hotfix) by @agent-kortix in https://github.com/kortix-ai/suna/pull/7176
  • fix(web): remove broken/dead command palette actions by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7175
  • feat(web): delete the /accounts routes, make the account hub a modal by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7177
  • fix(desktop): restore navigation layout and require parity checks by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7178
  • Paint one brand mark across the whole sign-in to project path by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7179
  • fix(connectors,slack): grant provenance, channel guarantee, honest denials and relays by @markokraemer in https://github.com/kortix-ai/suna/pull/7181
  • release: main → staging (connector gateway grant provenance, Slack relay honesty, account hub modal, desktop parity) by @markokraemer in https://github.com/kortix-ai/suna/pull/7182
  • fix(git-proxy): surface session agent grant so ref-scope widen works by @agent-kortix in https://github.com/kortix-ai/suna/pull/7185
  • Promote main to staging with the session Git authorization fix by @markokraemer in https://github.com/kortix-ai/suna/pull/7190
  • test(git-proxy): run session role checks without a CI signing secret by @markokraemer in https://github.com/kortix-ai/suna/pull/7195
  • fix(billing): keep the account subscription dialog accessible by @markokraemer in https://github.com/kortix-ai/suna/pull/7198
  • fix: verify release flows and persist self-host frontend memory by @markokraemer in https://github.com/kortix-ai/suna/pull/7202
  • fix: close connector test database connections and mint portable credentials by @markokraemer in https://github.com/kortix-ai/suna/pull/7204
  • Release v0.13.13 — Reliable connector access, account settings, and session Git permissions by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7183

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.12...v0.13.13

September 8, 2026

Project creation restored, complete localization, and headless auth

v0.13.12

New

  • Every supported language now has complete translations across settings, onboarding, project home and sidebar, sessions, password recovery, sign-in, and workspace administration. Serbian is a new locale. 241 entries that rendered as placeholders now show real text.
  • Headless auth: multi-factor enrolment, enterprise SSO, and profile updates are available through the API and the SDK (PATCH /v1/auth/user, KortixSession.subscribe as the replacement for onAuthStateChange).
  • Kortix Apps: one identity guard for every App (createKortixAppGuard, groups always populated), and an embedded App can complete its own sign-in (cookieSameSite).
  • Session brief: hover a session to see its summary.

Improved

  • Connector catalogue: one-letter searches work, cache entries are compared by identity, and panel padding and search were corrected.
  • Markdown code blocks inside lists are inset correctly.
  • Slack and Teams: a live run keeps its thread after 15 quiet minutes.
  • Triggers: a billing-rejected fire is terminal and keeps its reason code; a reuse, keyed, or pinned delivery handoff is recorded as fired.

Fixed

  • Project creation: a failure while creating the managed repository is now logged with its cause. The edge router in front of the API is deployed with every release, so an origin error is never shown as a maintenance page. The managed-git token is verified by creating and deleting a probe repository before it is stored, and the status endpoint reports which credential is in use.
  • Connector endpoints must be https on a public host. An invalid endpoint answers 400 instead of failing as a server error.
  • Session attachments are reliable again.
  • Kortix Apps: the App guard's trailing-slash handling could take seconds on one config string; the viewer secret is resolved per request; the access picker no longer promises options the code does not offer.
  • MFA unenrol route typechecks (gotrue() accepts DELETE).

Internal

  • Template preview images (/api/og/template) render on the Node runtime with their strings inlined; as an Edge Function the route had grown past Vercel's size limit.
  • Preview environments: Node repaired in persistent sandboxes, failed Platinum templates recover, an explicit Daytona fallback, all runtime secrets forwarded, Node engine floor raised, translations kept out of the edge middleware bundle.
  • Release gate: follows the deployed test contracts, installs with engine-strict relaxed, verifies the host-only access cookie.
  • Route manifest and audit route registry regenerated; the headless auth routes are registered and allowlisted with reasons.
  • pi-js-router: open_access is the operator's override and the workflow honours it.

What's Changed

  • fix(slack,teams): a live run lost its thread after 15 quiet minutes by @kubet in https://github.com/kortix-ai/suna/pull/7127
  • fix(ci): forward all preview runtime secrets by @markokraemer in https://github.com/kortix-ai/suna/pull/7132
  • infra(pi-js-router): open_access is the operator's override by @kubet in https://github.com/kortix-ai/suna/pull/7134
  • fix(preview): raise Node engine floor and recover provider caches by @markokraemer in https://github.com/kortix-ai/suna/pull/7135
  • Repair Node in persistent preview sandboxes by @markokraemer in https://github.com/kortix-ai/suna/pull/7136
  • feat(web): complete app localization and add Serbian by @markokraemer in https://github.com/kortix-ai/suna/pull/7109
  • chore(release): VERSION → 0.13.12 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7142
  • chore(release): staging VERSION → 0.13.12 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7143
  • fix(web): make session attachments reliable by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7084
  • fix(triggers): treat billing-rejected fires as terminal, preserve reason code by @agent-kortix in https://github.com/kortix-ai/suna/pull/7146
  • fix(web): correct panel padding and search by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7149
  • fix(web): restore queued prompt removal toast copy by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7150
  • feat(web): add session brief hover card by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7151
  • fix(web): render real text for 241 broken i18nComplete entries by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7160
  • feat(api,sdk): complete the headless auth surface — 16/16 Supabase auth operations now have a Kortix equivalent by @markokraemer in https://github.com/kortix-ai/suna/pull/7085
  • fix(connectors): support one-letter catalogue searches by @DimitrijeGlibic in https://github.com/kortix-ai/suna/pull/7156
  • fix(api): loud provision/connector failures + deploy the prod API router Worker from deploy-prod by @markokraemer in https://github.com/kortix-ai/suna/pull/7161
  • release: main → staging (2026-09-07, provisioning fix + i18n + headless auth) by @markokraemer in https://github.com/kortix-ai/suna/pull/7163
  • hotfix(staging): template OG image route on Node runtime (unblocks 0.13.12 frontend deploy) by @markokraemer in https://github.com/kortix-ai/suna/pull/7166
  • test(release-gate): spec 23 ignores the CORS preflight; quarantine spec 26's staging-only timeouts (0.13.12) by @markokraemer in https://github.com/kortix-ai/suna/pull/7169
  • Release v0.13.12 — Project creation restored, complete localization, and headless auth by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7167

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.11...v0.13.12

September 6, 2026

Billing wallet floor, scoped git push, and an agent-centric Customize

v0.13.11

Billing

  • No account runs on an empty wallet. Paid per-seat and credit-plan accounts used to keep spending past $0 with no floor; one six-seat account settled $588.81 against a $150 monthly grant with the wallet at $0.00. Every account now stops at the same floor before new work starts.
  • Work that already ran is always recorded. A settlement that the wallet could not cover used to be refused, which deleted the record of the spend and left "Spent this period" frozen while compute kept running. The ledger now records the overdraft, and the account stays blocked until it is topped up.
  • Wallet alerts agree with the server. Every wallet alert and billing string in the app now reads the account's billing state, so the sidebar and the project page no longer disagree about whether you are out of credits.
  • Credits have their own tab in account settings, with the available balance and where it comes from. Plan keeps its own card.

Git and access

  • Push authority is scoped to who is pushing. A session credential can push only to its own branch. Pushing other refs and deleting refs are two new permissions, project.gitops.ref.any and project.gitops.ref.delete, held by the project manager role and grantable to agents from the agent editor, the CLI scope validator and the docs. Before this, any credential that could push at all could rewrite or delete any branch.
  • Deleting a branch checks the person's role, so a plain push right no longer deletes a colleague's branch.
  • GitHub reconnect is named, not failed. When a stored GitHub App installation stops minting tokens, the app tells you to reconnect instead of throwing an opaque error.
  • A project always has a manifest. Provisioning through the API seeds kortix.yaml by default, and kortix ship refuses to push a project that has none.
  • Signed-in identity is your own. The app no longer shows an account owner's email as the signed-in identity, and account lookups stay inside the account you are in.

Customize, agents and settings

  • Customize is built around the agent. Agents lead the Customize bar, and each agent is a full-page editor with a topic rail: People, Access pages for Skills, Connectors, Secrets and Project actions that reuse the catalog cards and modals, grant editing in place, and a Share button showing who has the agent.
  • Capability tabs live under /customize/<tab>. Old URLs redirect. Review is its own tab on the bar. The per-project config page is retired; its sections live in the settings overlay.
  • Settings is a full-screen shell with Workspace, Personal and Account groups. Security, Appearance, Notifications and Plan are separate tabs. Personal settings are called Preferences, the account Tokens tab is called API keys, and Mod+, opens the panel.
  • Review center is a full-width inbox with an inline review page, no modals.
  • A change request is a card in the turn that produced it, with a status that updates and a URL to share.
  • Admin console rebuilt on the app shell and the design system.
  • Project home and account hub extracted and tidied: hero column centred, composer band on the base surface, the workspace name throws confetti for every project and the icon only when you choose one.
  • Smaller fixes: sidebar active row paints again, info and warning banners are legible, managed repositories no longer read as unmanaged, triggers open in place, the Git repository section is its own settings section, and connector proposals get an <app>-<random> slug.

Docs and support

  • Docs moved to Blume. /docs is rebuilt on a new docs engine with a working favicon, a canonical origin, and no stray files in the published site. The credits guide lives at /docs/credits.
  • One support hub. /help merged into /support: contact channels, guides, FAQ, account deletion and legal in one place.

Sessions and runtime

  • Stop stays visible while a response streams, and the session reports busy for the whole turn.
  • Queued prompts keep their order and sync after a turn completes. Prompts sent during a live turn are forwarded instead of waiting.
  • Turn failures show the real message instead of a raw JSON body.
  • File tool rows use the right tense (wrote, edited, listed) instead of the tool's registry name.
  • The terminal no longer reconnects every 60 seconds. The PTY connection between the API and the sandbox was cut after a minute of silence; both legs are now kept alive.
  • Connecting a provider refreshes the model picker without a page reload.
  • Older sandboxes catch up. Boxes provisioned before the self-updating runtime receive the current daemon, OpenCode and CLI from the control plane, and the daemon re-detects the OpenCode binary after a restart. This revives sessions that went silent after the 2026-08-14 OpenCode message-id rollover.
  • Trigger status is truthful. Reuse, keyed and pinned trigger fires record fired on delivery instead of sitting at queued forever, dead-letters are visible, and a re-prompted session runs on the trigger's model.

CLI and desktop

  • kortix login works against dev and staging again. The web firewall was rejecting the localhost callback.
  • Desktop shows a sign-in dialog for the dev and staging HTTP Basic gate, with an option to remember the credential on the device.
  • pnpm worktree nuke stops on a failed removal instead of reporting success and orphaning the worktree.

Reliability

  • Audit reconciliation writes use the isolated audit pool, so an audit lock convoy cannot starve the gateway's auth queries.
  • Preview environments heal themselves. Disk is pruned, a failed deploy keeps the last good stack, and the environment is named in words rather than by hostname. The JS pi agent has a stable name on Platinum dev.

Under the hood

  • @kortix/sdk root entry is canonical. The root, ./react and ./server are the real entries; the 20 legacy subpaths remain as shims until the next major.
  • One resolved next version across the workspace (16.3.3), with a test that fails the build if the lockfile ever resolves two. Three consecutive dev deploys had died at boot on Cannot find module 'next'.
  • Web tests run isolated, so a partial module mock cannot leak across files.
  • Production has its own managed-git token, separate from staging, and the secrets exception list was cleaned.
  • Two database migrations: the two git ref permissions (4 catalog rows) and a settlement function that records overdrafts. Neither touches user data at volume.

What's Changed

  • chore(release): VERSION → 0.13.10 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7057
  • fix(session): report file tool rows in the tense they are actually in by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7059
  • fix(projects): a project always has a manifest — seeding is the default, not an opt-in by @markokraemer in https://github.com/kortix-ai/suna/pull/7047
  • fix: a provider connect refreshes the model picker without a hard refresh (+ isolate apps/web tests) by @markokraemer in https://github.com/kortix-ai/suna/pull/7049
  • fix(worktree): a failed git worktree remove aborts the nuke instead of orphaning the worktree by @markokraemer in https://github.com/kortix-ai/suna/pull/7052
  • fix(api): route audit reconciliation writes through the isolated audit pool by @agent-kortix in https://github.com/kortix-ai/suna/pull/7060
  • fix(terminal): keep the PTY WebSocket alive — it was cut every 60s by @markokraemer in https://github.com/kortix-ai/suna/pull/7062
  • fix(web,api): close the cross-account identity boundary by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7065
  • Sidebar and menu polish, Next 16.3.3 by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7067
  • sdk: make the root entry canonical in fact, not just in prose by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7068
  • feat(web): a change request now has a card, a status, and a URL by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7069
  • fix(gateway): drop gpt-5.6-sol from the ChatGPT codex lineup by @agent-kortix in https://github.com/kortix-ai/suna/pull/7071
  • chore(secrets): production gets its own managed-git PAT; drop the Aster orphan by @markokraemer in https://github.com/kortix-ai/suna/pull/7063
  • fix(deps): one resolved next version — dev frontend image died at boot by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7070
  • revert(gateway): restore gpt-5.6-sol to the codex lineup by @agent-kortix in https://github.com/kortix-ai/suna/pull/7075
  • feat(git): tell people when GitHub needs reconnecting, instead of failing by @markokraemer in https://github.com/kortix-ai/suna/pull/7072
  • fix(ci): resolve API image CVE-2026-56854 scan failure by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7076
  • chore(secrets): report file-only exceptions that excuse nothing, and drop four by @markokraemer in https://github.com/kortix-ai/suna/pull/7078
  • Account hub and project home extraction, loader simplification, composer fixes by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7077
  • Scope git push authority to the pushing principal by @markokraemer in https://github.com/kortix-ai/suna/pull/7073
  • Throw confetti only for a chosen icon, never for the initial by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7079
  • billing: hard-block at zero — remove the wallet-floor bypass, stop losing spend by @markokraemer in https://github.com/kortix-ai/suna/pull/7080
  • web: flatten the composer and project-home band onto the base surface by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7087
  • enh(web): full-screen shell, re-segmented rail, config page retired by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7086
  • Converge legacy sandbox runtimes from the control plane (OpenCode id-wrap victims) by @markokraemer in https://github.com/kortix-ai/suna/pull/7088
  • settings: bind Mod+, to the panel it opens, and print it where it acts by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7093
  • triggers: settle reuse-mode fire runtime status on delivery/dead-letter by @agent-kortix in https://github.com/kortix-ai/suna/pull/7094
  • fix(maintenance): stop a failed Edge Config read from locking production by @kubet in https://github.com/kortix-ai/suna/pull/7095
  • session errors: unwrap serialized bodies in the SDK, rebuild the banner on Item by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7096
  • chore(release): VERSION → 0.13.11 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7099
  • chore(release): staging VERSION → 0.13.11 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7100
  • review center: full-width inbox, inline review page, no modals by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7104
  • settings: split Credits out of Plan, give Plan its own card by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7105
  • Ask a person's role before letting them delete a branch by @markokraemer in https://github.com/kortix-ai/suna/pull/7107
  • feat(web): one support hub at /support, credits guide moved to /docs/credits by @DimitrijeGlibic in https://github.com/kortix-ai/suna/pull/7061
  • fix(cli): kortix login could not complete against dev or staging by @markokraemer in https://github.com/kortix-ai/suna/pull/7082
  • enh(web): admin console redesign by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7108
  • Customize: agent-centric editor, /customize/ routes, access + roles, preferences by @markokraemer in https://github.com/kortix-ai/suna/pull/7083
  • project home: workspace name throws confetti for every project again by @markokraemer in https://github.com/kortix-ai/suna/pull/7110
  • fix(session): synchronize queued prompts after turn completion by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7103
  • feat(desktop): sign-in dialog for the dev/staging HTTP Basic gate by @markokraemer in https://github.com/kortix-ai/suna/pull/7111
  • project home: hero column dead centre again by @markokraemer in https://github.com/kortix-ai/suna/pull/7112
  • fix(preview): a branch environment heals itself, and a failed deploy keeps the last good stack by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7114
  • docs(learnings): the Caddyfile and overlay come from the branch checkout, not main by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7115
  • Fix session busy status during response streaming by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7118
  • docs: move /docs from fumadocs to Blume by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7121
  • fix(triggers): record a reuse/keyed/pinned delivery handoff as fired, not queued by @agent-kortix in https://github.com/kortix-ai/suna/pull/7124
  • fix(docker): keep the built docs site in the image context by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7122
  • fix(docs): stop the docs header printing Kortix twice in dark mode by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7126
  • fix(docs): restore the docs favicon and set the canonical origin by @sutharjay1 in https://github.com/kortix-ai/suna/pull/7128
  • fix(triggers): record a reuse/keyed/pinned delivery handoff as fired, not queued (staging hotfix) by @agent-kortix in https://github.com/kortix-ai/suna/pull/7129
  • infra: pi-js.kortix.com — a stable name for the JS pi agent on Platinum dev by @kubet in https://github.com/kortix-ai/suna/pull/7125
  • ci(pi-js-router): read its tokens from the pi-js environment by @kubet in https://github.com/kortix-ai/suna/pull/7130
  • Promote main 37c161b637 to staging (0.13.11 release candidate) by @markokraemer in https://github.com/kortix-ai/suna/pull/7131
  • staging: verify the host-only access cookie (cherry-pick of #7137) by @markokraemer in https://github.com/kortix-ai/suna/pull/7138
  • staging: relax engine-strict on the release gate install (cherry-pick of dbd11d2151, #7137) by @markokraemer in https://github.com/kortix-ai/suna/pull/7140
  • staging: release-gate tests follow the deployed contracts main changed (cherry-pick of 8e518e3f52, #7137) by @markokraemer in https://github.com/kortix-ai/suna/pull/7141
  • Release v0.13.11 — Billing wallet floor, scoped git push, and an agent-centric Customize by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7139

New Contributors

  • @DimitrijeGlibic made their first contribution in https://github.com/kortix-ai/suna/pull/7061

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.10...v0.13.11

September 2, 2026

Fixes false "temporarily unavailable" errors

v0.13.10

Fixed

  • "Kortix is temporarily unavailable" when nothing was wrong. A single failed read of the maintenance flag was treated as a decision to lock the platform down. The API then rejected every write and showed that message to everyone using Kortix, with no one having touched the maintenance setting. An unreadable flag now means normal operation. Maintenance mode is only ever an explicit action, and a real one still holds while the flag store is briefly unreachable.

  • Being sent to the maintenance page after one failed status check. A momentary network problem in the browser was enough to navigate you out of a working session. It no longer is.

Security

  • Updated the SSH library bundled in our app runtime past CVE-2026-56854, an authentication bypass caused by source-address restrictions not being enforced (golang.org/x/crypto 0.53.0 to 0.55.0).

Internal

  • Two browser errors that were never Kortix defects — one thrown by a browser extension, one by the graphics library behind our background visuals — no longer report as product errors in our monitoring.

What's Changed

  • chore(release): staging VERSION → 0.13.10 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7058
  • release: maintenance fail-open (prod ApiError flood) by @kubet in https://github.com/kortix-ai/suna/pull/7097
  • Release v0.13.10 — Fixes false "temporarily unavailable" errors by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7098

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.9...v0.13.10

August 30, 2026

SDK React import and release reliability

v0.13.9

Fix the @kortix/sdk React entry point in fresh npm consumers. Declare the llm-catalog publish tool directly so isolated npm publishing succeeds. Refresh a stale trigger manifest once on a cache miss, with a per-project cooldown, so trigger fire converges across API replicas.

What's Changed

  • fix(api,web): stop offering the managed org as an import source by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7040
  • chore(release): staging VERSION → 0.13.8 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7043
  • chore(release): VERSION → 0.13.8 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7044
  • secrets: arm the pre-commit hook automatically, close the gitleaks allowlist hole by @markokraemer in https://github.com/kortix-ai/suna/pull/7042
  • fix(sdk): make packed React entry importable by @markokraemer in https://github.com/kortix-ai/suna/pull/7045
  • Release candidate: SDK React package import fix by @markokraemer in https://github.com/kortix-ai/suna/pull/7046
  • Release v0.13.8 — SDK React package import fix by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7048
  • fix(release): declare llm catalog build tool by @markokraemer in https://github.com/kortix-ai/suna/pull/7050
  • Promote npm publish hotfix to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/7051
  • fix(triggers): refresh replica mirror before fire miss by @markokraemer in https://github.com/kortix-ai/suna/pull/7053
  • fix(triggers): bound forced mirror refreshes by @markokraemer in https://github.com/kortix-ai/suna/pull/7055
  • Promote trigger mirror convergence fix to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/7054
  • Release v0.13.9 — SDK React import and release reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7056

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.7...v0.13.9

August 29, 2026

Faster sessions, Sign in with Kortix, and organization branding

v0.13.7

Highlights

  • Add Sign in with Kortix OAuth 2.1 flows, headless authentication, and app viewer tokens.
  • Add enterprise organization branding for logos, icons, favicons, and product names.
  • Improve session startup, auto-resume, streaming, queue state, transcript mirrors, terminal cards, and stopped-session recovery.
  • Restore GitHub repository sources on workspace creation and correct People with access visibility.
  • Add GLM 5.3 Flash and remove retired AsterLab and GLM 5.2 routes.
  • Improve secrets, connectors, Slack routing, sandbox lifecycle, preview durability, and provider failover.
  • Allow registered OAuth loopback redirects through the WAF while preserving API redirect validation.

Release validation

  • Staging SHA: 309e0afe1ce19a5674d137e749d8a6511576f2f5
  • Build Staging Artifacts: 33258635866
  • Deploy Staging: 33258801944
  • Full release QA: 33259390663

What's Changed

  • fix(compliance): retire ALB TargetResponseTime alarms; reconciler deletes stale + legacy duplicates by @markokraemer in https://github.com/kortix-ai/suna/pull/6919
  • fix(api,sdk): readiness clocks die with their attempt; a stopped queue re-delivers exactly once by @markokraemer in https://github.com/kortix-ai/suna/pull/6920
  • fix(compliance): grant DescribeTargetGroups to the ALB alarm reconciler; alarm on reconciler errors by @markokraemer in https://github.com/kortix-ai/suna/pull/6921
  • fix(web): the command palette can switch workspaces by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6922
  • feat: compile OpenCode boot artifacts by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6871
  • ci(release-gate): pin pnpm/action-setup@v4 in the browser shard (v6 on Blacksmith runs pnpm on bundled Node 18.5.0) by @markokraemer in https://github.com/kortix-ai/suna/pull/6925
  • test(ke2e): re-quarantine SESS-23 — stop→wake still 503s on the first post-wake read (gate run 32992496089) by @markokraemer in https://github.com/kortix-ai/suna/pull/6927
  • test(ke2e): quarantine CONN-26 — real-agent Composio flow never passed a deployed gate (run 32992496089) by @markokraemer in https://github.com/kortix-ai/suna/pull/6929
  • docs(learnings): a release-gate flow is added or un-quarantined only with its green deployed run by @markokraemer in https://github.com/kortix-ai/suna/pull/6931
  • fix(sandbox,triggers): make provider failover reachable + jitter fleet crons by @kubet in https://github.com/kortix-ai/suna/pull/6932
  • fix(tests): keep the Vercel bypass storage state (_vercel_jwt) out of uploaded CI artifacts by @markokraemer in https://github.com/kortix-ai/suna/pull/6933
  • docs(learnings): a never-fired guard is untested; an artifact upload path is a publish path by @markokraemer in https://github.com/kortix-ai/suna/pull/6935
  • test(e2e): quarantine the Composio Gmail Connect-Link browser journey (unauthorized runtime skip fails the gate) by @markokraemer in https://github.com/kortix-ai/suna/pull/6936
  • fix(web): Apps gallery is a 4:5 container-query grid, no size control by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6939
  • fix(release): pin npm@^11.5.1 in publish-npm-package.sh (npm@12 breaks prod npm publishes on node 22.22.0) by @markokraemer in https://github.com/kortix-ai/suna/pull/6940
  • chore(release): VERSION → 0.13.7 [skip ci] by @markokraemer in https://github.com/kortix-ai/suna/pull/6941
  • chore(release): staging VERSION → 0.13.7 [skip ci] by @markokraemer in https://github.com/kortix-ai/suna/pull/6942
  • docs(learnings): npm-publish failure silently strips the release record from a shipped prod deploy by @markokraemer in https://github.com/kortix-ai/suna/pull/6943
  • feat(auth): Sign in with Kortix + headless /v1/auth — the SDK owns third-party auth end to end by @markokraemer in https://github.com/kortix-ai/suna/pull/6945
  • spike(worker): harness/environment split — plan + working Alpine worker by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6924
  • feat(api,worker): compile a pi worker runtime artifact per push, behind a pi_worker flag by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6944
  • chore(secrets): local .env gets its own KORTIX_GITHUB_APP_STATE_SECRET by @markokraemer in https://github.com/kortix-ai/suna/pull/6948
  • perf(session-open): kill the prefetch storm, serial queries, audit flood, and boot chorus by @markokraemer in https://github.com/kortix-ai/suna/pull/6946
  • fix(web): OAuth consent page — one shared load/approve per request id (spinner forever on dev) by @markokraemer in https://github.com/kortix-ai/suna/pull/6949
  • feat(accounts): organization branding — own logo, icon, favicon (light + dark) and product name as the Enterprise branding entitlement by @markokraemer in https://github.com/kortix-ai/suna/pull/6947
  • fix(api): compress middleware fails open without CompressionStream — dev returned 500 for every response ≥ 1 KiB (Bun 1.2 image) by @markokraemer in https://github.com/kortix-ai/suna/pull/6951
  • feat(web): docs surface rework, tool-row disclosure, mono badge system by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6952
  • fix(api): compress middleware 500s on Bun 1.2 image — CompressionStream undefined, fall back to node:zlib by @markokraemer in https://github.com/kortix-ai/suna/pull/6950
  • feat: Kortix Runtime API — one sequenced session stream + runtime projection, opencode-shaped polls DELETED by @markokraemer in https://github.com/kortix-ai/suna/pull/6953
  • fix(web): drop "In progress" from SOC 2 Type I trust badge by @agent-kortix in https://github.com/kortix-ai/suna/pull/6954
  • fix(web): mark SOC 2 Type I as certified on /security by @agent-kortix in https://github.com/kortix-ai/suna/pull/6955
  • fix(sdk,api): session stream dies cross-origin — drop non-safelisted Cache-Control request header by @markokraemer in https://github.com/kortix-ai/suna/pull/6959
  • feat(llm-catalog): add GLM 5.3 Flash (z-ai/glm-5.3-flash via OpenRouter) to Kortix managed by @markokraemer in https://github.com/kortix-ai/suna/pull/6958
  • fix(sdk): healBedrockModelKey is inert on the gateway — picker was pinning every pick to Claude Opus 5 by @markokraemer in https://github.com/kortix-ai/suna/pull/6960
  • feat(desktop): install prod, staging and dev side by side by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6956
  • fix(worker): compiled artifact double-started and died with EADDRINUSE by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6962
  • fix(web): webhook wizard signing secrets rejected by trigger validation by @ArtemShatokhin in https://github.com/kortix-ai/suna/pull/6961
  • Fix working status order after a fresh prompt by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6965
  • feat(apps): a Kortix-hosted App is already signed in — gate-minted viewer identity + token by @markokraemer in https://github.com/kortix-ai/suna/pull/6963
  • Revert "feat(desktop): install prod, staging and dev side by side (#6956)" by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6967
  • perf(boot): zero proxied git requests at session boot + OpenCode spawns before checkout by @markokraemer in https://github.com/kortix-ai/suna/pull/6964
  • test(daemon): per-test ephemeral ports in egress-shim suites by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6969
  • docs(learnings): a new import edge into a widely-mocked graph breaks hand-written mocks suite-wide by @markokraemer in https://github.com/kortix-ai/suna/pull/6968
  • Fix working status order and elapsed timer by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6970
  • feat(api,worker): sessions boot the pi worker (P1.5 + P1.6) by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6966
  • fix(web): the markdown source toggle, and the oversized SVG thumbnail by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6971
  • fix(api): fresh-session git fast path gets its own switch (KORTIX_FAST_GIT_BOOT_ENABLED) by @markokraemer in https://github.com/kortix-ai/suna/pull/6973
  • fix(worker): gateway-mode model resolution killed the first dev pi session by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6975
  • Fix idle messages appearing queued by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6974
  • Keep snapshot builder test doubles complete by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6977
  • feat(kortixd): daemon single-binary management CLI + safe self-update/rollback by @markokraemer in https://github.com/kortix-ai/suna/pull/6972
  • perf(api): warm the fresh-session git hint on push and at provision by @markokraemer in https://github.com/kortix-ai/suna/pull/6976
  • perf(api): slim the pi worker boot control plane by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6980
  • docs(learnings): an experiment flag deploy-dev pins to false cannot be a kill switch by @markokraemer in https://github.com/kortix-ai/suna/pull/6979
  • feat(api): pi worker pool — parked boxes claimed at session create (P1.8) by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6981
  • fix(web): a menu click never reloads the page — 83 nav controls become anchors by @markokraemer in https://github.com/kortix-ai/suna/pull/6978
  • fix(api): pi worker env — only an explicit session model overrides the bake by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6983
  • perf(web): stop blurring text the user is trying to read by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6984
  • fix(api): pi pool — never trust the Daytona list's labels for reap or claim by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6985
  • feat(api): session environments — lazy compute for pi worker sessions (P1.7 E1) by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6986
  • feat: pi worker tools act on the lazy environment (P1.7 E2) by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6989
  • fix(api): session environments idle-stop at 60min, not the 12h backstop by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6990
  • feat(kortixd): context-aware update/rollback — stage via supervisor in-sandbox (Option A) by @markokraemer in https://github.com/kortix-ai/suna/pull/6988
  • feat(sdk,api,daemon): own the session read+realtime surface — /kortix reads, one /events SSE, zero polls, /snapshot by @markokraemer in https://github.com/kortix-ai/suna/pull/6987
  • fix(web): remove leftover diff3 base block in session-chat — frontend build was red by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6991
  • feat(worker): pi sessions render in the product — the Kortix Runtime API on the worker by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6993
  • fix(worker): skip pi's user-role message frames — the worker publishes the user turn itself by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6994
  • fix(worker): answer the raw /session pin probe; only assistant roles translate by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6995
  • fix(api): defer the ensurePiWorkerImage import so builder mocks cannot SyntaxError by @markokraemer in https://github.com/kortix-ai/suna/pull/6982
  • cleanup(sdk,web): fix stale open-bundle/stream refs after own-the-surface rename by @markokraemer in https://github.com/kortix-ai/suna/pull/6992
  • perf(daemon): decompose opencode-ready into named marks; prefetch the initial-turn claim by @markokraemer in https://github.com/kortix-ai/suna/pull/6996
  • fix(web): every URL the tab system writes to history is now a real route by @markokraemer in https://github.com/kortix-ai/suna/pull/6997
  • docs(learnings): deployed configuration has one truth, and it is not the file in git by @markokraemer in https://github.com/kortix-ai/suna/pull/7001
  • fix(daemon): never build an OpenCode Instance before the workspace is complete by @markokraemer in https://github.com/kortix-ai/suna/pull/7002
  • fix(sdk): stopped-box 'not-running' 404 is wakeable, not 'Couldn't load this conversation' by @markokraemer in https://github.com/kortix-ai/suna/pull/6999
  • docs(learnings): down box has two proxy responses — classify both wakeable by @markokraemer in https://github.com/kortix-ai/suna/pull/7003
  • chore(secrets): 1:1 parity between apps/api/.env. and AWS Secrets Manager by @markokraemer in https://github.com/kortix-ai/suna/pull/7000
  • fix(daemon): open the Instance gate where the workspace is complete, not right after spawn by @markokraemer in https://github.com/kortix-ai/suna/pull/7004
  • fix(api): /events attaches to a reachable box, not only an 'active' row by @markokraemer in https://github.com/kortix-ai/suna/pull/7007
  • fix(preview): every Server Action 500s — pin the public host for Next's CSRF guard by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7006
  • fix(web): stop shipping every frontend log to the raw sandbox /log route by @markokraemer in https://github.com/kortix-ai/suna/pull/7008
  • chore(docs): delete agent work artifacts; SDK rules become the sdk skill by @markokraemer in https://github.com/kortix-ai/suna/pull/7010
  • fix(sdk): retire the transcript-poll fallback — /events is the single feed by @markokraemer in https://github.com/kortix-ai/suna/pull/7011
  • fix(preview): route the API's non-/v1 paths through the preview edge by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7012
  • docs(learnings): a shared-origin environment must enumerate the API's non-/v1 paths by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7013
  • docs(learnings): compose does not restart a container for new bytes in a mounted file by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7015
  • feat(preview): the preview label keeps an environment online until it is removed by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7017
  • refactor(snapshots): delete the per-project warm image system (−5,959 lines) by @markokraemer in https://github.com/kortix-ai/suna/pull/7014
  • fix(preview): keep the --target-full gate on the label deploy by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7018
  • fix: seven prod faults behind one report — secrets, Slack routing, zombie boxes, terminal 1006, connector honesty by @kubet in https://github.com/kortix-ai/suna/pull/7016
  • feat(preview): re-point a stable hostname's worker on every deploy by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7019
  • fix(preview): ship the pi-router worker to main so the deploy can re-point it by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7021
  • revert: restore the OpenCode client, remove the Kortix Runtime client by @markokraemer in https://github.com/kortix-ai/suna/pull/7022
  • fix(secrets): the server stops guessing secret delivery from the name by @kubet in https://github.com/kortix-ai/suna/pull/7020
  • chore(secrets): delete the Kortix-managed Anthropic proxy and the unused SES keys by @markokraemer in https://github.com/kortix-ai/suna/pull/7009
  • fix: nested- markdown hydration error + daemon staleness false-positive by @markokraemer in https://github.com/kortix-ai/suna/pull/7025
  • fix(sandbox-agent): re-wire turn auto-resume — transient provider errors were surfacing raw by @markokraemer in https://github.com/kortix-ai/suna/pull/7026
  • Remove AsterLab and managed GLM 5.2 by @markokraemer in https://github.com/kortix-ai/suna/pull/7029
  • Fix staging release gates by @markokraemer in https://github.com/kortix-ai/suna/pull/7028
  • fix(web,sdk): slider Reset, @-menu Enter, Interrupted placement, tab indicator by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7030
  • Promote main to staging — 2026-08-28 by @markokraemer in https://github.com/kortix-ai/suna/pull/7027
  • Slack channel takeover + secret delivery: targeted release candidate by @kubet in https://github.com/kortix-ai/suna/pull/7032
  • feat(preview): a preview environment lives until its BRANCH is deleted by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7023
  • Promote main to staging — 2026-08-28 follow-up by @markokraemer in https://github.com/kortix-ai/suna/pull/7033
  • fix(session): thirteen session-runtime defects — stop button, keepalive evidence, history pages, terminal cards, boot flag, agent roster, queue clock, dead open-bundle, redirect loop, atomic paint by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6957
  • fix(waf): allow OAuth loopback redirects by @markokraemer in https://github.com/kortix-ai/suna/pull/7034
  • release: promote main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/7035
  • fix(preview): do not point a stable hostname at a stack that is down by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7036
  • fix(web): restore GitHub repo sources on /new, fix People-with-access gate by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/7037
  • fix(tests): follow stopped-session transcript mirror contract by @markokraemer in https://github.com/kortix-ai/suna/pull/7038
  • release: refresh v0.13.7 candidate from main by @markokraemer in https://github.com/kortix-ai/suna/pull/7039
  • Release v0.13.7 — Faster sessions, Sign in with Kortix, and organization branding by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/7041

New Contributors

  • @ArtemShatokhin made their first contribution in https://github.com/kortix-ai/suna/pull/6961

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.6...v0.13.7

August 26, 2026

Reliable session starts, in-session connectors, and a native model picker

v0.13.6

Sessions start, resume, and stay honest

  • The session loading screen no longer shows a false "Couldn't start session" card. A wake that stalls now escalates on its own — retry, then restart — with a cooldown ladder instead of a terminal state you had to clear by hand.
  • The transcript loads instead of rendering empty while the sandbox boots, and it stays readable for stopped sessions. Transcripts are now mirrored server-side, so a session that is not running can still be read.
  • The frontend no longer falls behind the agent or shows "stopped" while a turn is running. A running session no longer flips to stopped mid-turn.
  • The prompt queue reflects delivery truth: a message is queued until the runtime accepts it, and a message the runtime cannot run is surfaced instead of silently dropped.
  • Long turns no longer stop at random. Fixes cover provider deadline read-back, the request body cap, the OpenCode auto-updater (now off), a progress-aware boot budget, a bounded turn probe, and Bun's 300 s fetch idle timeout.
  • Long sessions no longer run the sandbox out of memory: attachments are offloaded out of the transcript, a memory guard runs before the kernel does, and the reaper backs off its probes. Each sandbox exposes a daemon log and a /kortix/diag endpoint.
  • Audit writes use a single upsert and a dedicated pool, so a lock convoy on the audit table can no longer surface as a "Bad Gateway" during a session.
  • /summarize (compaction) no longer times out through the proxy; the compaction marker is minimal and the summary opens in the panel.
  • A deleted session refuses /start and /restart with 404. Quota and provider races on project creation are gone. Rotated E2B ingress tokens refresh instead of failing.
  • An untouched send skips a no-op scope round-trip, and the approval audit read drops to 100 rows — faster first send.
  • OpenCode is bumped to 1.18.23 everywhere (fixes Bedrock redacted-content streams).

Connect apps from the session (Composio)

  • A new Connect Link flow replaces the connector overlay. Composio is the managed default provider; the agent selects it on its own.
  • You can connect an app from inside the session without typing "done". A connect the human walked away from is finished later, and a stopped session is told when its connector landed.
  • Gmail managed OAuth ships with the minimum scopes. The CLI and the intake link mint a Kortix connect link, never the provider's raw URL.
  • The connector catalogue is sectioned and filterable at the source. A newly created connector keeps its detail view open.

Models and the LLM gateway

  • The LLM gateway is a per-project setting with a first-class native path when it is off: keys go to the sandbox environment and the native provider/model is used. It stays on by default.
  • Native projects get a model picker before the sandbox runtime exists. The picker defaults to the latest flagship set; search reveals all. Deprecated models are hidden; models.dev status passes through.
  • One capability source and one thinking knob for every model. The sandbox learns the project's servable model set at boot, so the picker never offers a model the runtime cannot run. The seed refreshes weekly.
  • Bedrock: inference-profile ids are preferred, a refused bare id is retried with global./us., bare pins are healed, and no bare Bedrock id is used as a default. OpenAI-on-Bedrock reasoning effort now reaches the model. Summarized Bedrock reasoning streams. A rejected reasoning parameter gets one retry with per-model memory.
  • Inline images are windowed inside the sandbox: every gateway session routes through the daemon LLM proxy.

Approvals and permissions

  • Approval and permission notices fill the composer strip. An approval you cannot decide is never rendered as decidable, an unreviewable card says what is true, an unauthorised reviewer is told so, and Approve is not offered on a row the server will reject.
  • A truncated arguments preview no longer blocks approval.

Web

  • Inline "edit from here" editor with an honest Restore control.
  • bash, write, and edit tool rows: zone layout, live counts, and a diff stat.
  • Code blocks always show a copy button. The carousel tab no longer shifts the page sideways. One sidebar opener on every headerless session surface.
  • Session previews stay loaded and both preview frames preload. An HTML file is served, never injected.
  • Triggers keep access across stale reads. The setup-links modal finalizes when it closes.

Change surfaces

  • One vocabulary and one file list for every change surface.

Under the hood

  • CI moved to Blacksmith runners with tiered sizes, a kill switch, sticky-disk Docker cache, and a portable image-digest recipe. PR test lanes run natively.
  • Secrets hygiene: prod dotenvx keys are owner-only, non-prod profiles carry no prod-reaching credential, and a separation tripwire enforces it.
  • The release pipeline refuses a version tag collision.
August 24, 2026

Faster sessions, resilient multimodal runs, and safer previews

v0.13.5

Sessions

  • Sessions start faster with OpenCode 1.18.19, leaner runtime assets, reusable Git bundles, and guarded image preparation.
  • Existing sessions recover after sleep, runtime loss, dropped streams, and interrupted connections.
  • Transcripts catch up after missed events, render long threads sooner, and load attachment bytes only when needed.
  • Unsent drafts persist per project and session. The composer can reference recent session files from the / menu.
  • Fixed duplicate prompts, stale status snapshots, malformed runtime responses, and inaccessible backend-origin sessions.

Product experience

  • Every sandbox preview port can use its own origin across cloud and self-hosted deployments.
  • ZIP archives can be browsed and extracted in the file viewer.
  • The CLI now covers models, sessions, agents, connectors, triggers, access, billing, reviews, and project settings.
  • Added ranked command-palette results, a resizable sidebar, clearer change indicators, a rebuilt Apps gallery, and a simpler Customize chooser.
  • Retired the experimental voice runtime and its unused product surfaces.

Security and reliability

  • Preview origins enforce trusted CORS, cross-site write protection, read-only shares, immediate revocation, and host-scoped cookies.
  • Sandbox credentials stay confined to their session. Connector-bound secrets receive tighter delivery boundaries.
  • Experimental network-enforced secrets support streaming bodies, Server-Sent Events, large payloads, and credential substitution in authorization and cookie headers.
  • Paid legacy subscriptions pass the wallet floor correctly and receive renewal credits based on actual payments.
  • The LLM gateway handles large image requests without repeated base64 copies and survives overload without process crashes.
  • Gateway and edge failures return structured retryable errors instead of intermediary HTML or invalid compressed bodies.
  • Audit writes no longer block API traffic. Audit reads use bounded barriers under continuous traffic.
  • Added database connection limits, secret-write coalescing, per-project session controls, safer live-turn reaping, and initial-prompt replay protection.

What's Changed

  • Release v0.9.15 — SOC 2 compliance baseline + gated release flow by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3303
  • Release v0.9.16 — Live-prove auto version-sync by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3304
  • Release v0.9.17 — Single-leader background workers, contact/demo flow, and build + env fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3305
  • Release v0.9.18 — Restore the site — fix the production render crash by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3307
  • Release v0.9.19 — Project memory, runtime feature controls, and a typed API by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3310
  • Release v0.9.20 — inject kortix llm router into sandbox by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3312
  • Release v0.9.21 — fix tier fetch by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3314
  • Release v0.9.22 — show claim button only for legacy users by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3318
  • Release v0.9.23 — stripe webhook reconciliation by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3323
  • Release v0.9.24 — Auth, billing & connector fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3324
  • Release v0.9.25 — windowed migration — latest 25 by default + offset by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3327
  • Release v0.9.26 — suna migration fix + connector fix by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3330
  • Release v0.9.27 — og suna migrations by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3332
  • Release v0.9.28 — pat authentication by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3334
  • Release v0.9.29 — rehydrate chat on migration by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3337
  • Release v0.9.30 — Platinum sandbox provider, connectors redesign, and admin provider controls by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3339
  • Release v0.9.31 — Billing tier fix, smoother account migration, and UI polish by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3342
  • Release v0.9.32 — Editable connectors, hibernating sandboxes, and sandbox-preview auth fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3348
  • Release v0.9.33 — Static-token auth for webhook triggers by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3351
  • Release v0.9.34 — Desktop app, unified channel delivery & reliability fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3362
  • Release v0.9.35 — Fix fleet-wide 30s API timeouts (DB connection-pool starvation) by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3368
  • Release v0.9.36 — bake secrets into sandbox by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3376
  • Release v0.9.37 — Mobile app v2 (account management, files, terminal) + team billing fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3379
  • Release v0.9.38 — Connector actions fixed across apps by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3380
  • Release v0.9.39 — Fix phantom shadow account members; GitOps/EKS deploy foundation by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3393
  • Release v0.9.40 — E2E Kubernetes setup with ArgoCD by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3397
  • Release v0.9.41 — Release pipeline & infra — internal, no user-facing changes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3400
  • Release v0.9.42 — Slack and scheduled sessions are now visible to the whole team by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3402
  • Release v0.9.43 — CI/CD — traffic-aware canary analysis (internal, no user-facing changes) by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3407
  • fix(eks): prod → plain rolling Deployment (drop fragile canary) by @lillyboga in https://github.com/kortix-ai/suna/pull/3410
  • Release v0.9.44 — EKS prod: rolling Deployment delivery (canary retired) by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3413
  • Release v0.9.45 — Add memory_mb to /health by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3427
  • Release v0.9.46 — Design system refresh and app router cleanup by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3437
  • Release v0.9.47 — Bring docs back by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3439
  • Release v0.9.48 — ArgoCD bug in HPAs by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3450
  • Release v0.9.49 — ChatGPT subscription login, steadier Slack, and a Skills file tree by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3457
  • Release v0.9.50 — API routing: Cloudflare Worker switch + ECS Fargate hot-standby by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3458
  • Release v0.9.51 — Reliability: bulletproof ECS hot-standby + managed-git fix by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3459
  • Release v0.9.52 — Faster, more reliable sessions + PDF/PPTX viewers + security hardening by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3465
  • Release v0.9.53 — Smoother session loading — chat input no longer jumps by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3466
  • Release v0.9.54 — Smoother, more reliable session loading by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3467
  • Release v0.9.55 — Faster, more reliable session start by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3472
  • Release v0.9.56 — Session reliability, Slack polish, and shareable previews by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3477
  • Release v0.9.57 — Slack webhook reliability and unified invocation engine by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3481
  • Release v0.9.58 — Marketing homepage refresh, compare pages, and Cloud pricing update by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3482
  • Release v0.9.59 — Redeploy by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3496
  • Release v0.9.60 — More memory headroom so the API stops restarting under load by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3499
  • Release v0.9.61 — Warm pool fast starts, live first-turn streaming, and project workspace polish by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3510
  • Release v0.9.62 — Sandbox boot time improvements, UI improvements by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3511
  • Release v0.9.63 — Instant session shell, per-agent access, and a faster colocated backend by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3514
  • Release v0.9.64 — Fix warm-pool trigger runtime auth by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3516
  • Release v0.9.65 — Fix private repo provisioning failures by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3518
  • Release v0.9.66 — Sandboxes auto-stop reliably + deterministic compute billing by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3550
  • Release v0.9.67 — Fix sandbox template snapshot builds by @markokraemer in https://github.com/kortix-ai/suna/pull/3561
  • Release v0.9.68 — Session reliability: drain stuck-active cap leak + /sessions 500 resilience + Daytona billing reaper by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3616
  • ops(prod): complete EKS cutover — restore fleet-wide crons by @markokraemer in https://github.com/kortix-ai/suna/pull/3622
  • Release v0.9.69 — Reliable scheduled triggers by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3632
  • Release v0.9.70 — Full cron coverage + correct stall detection by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3637
  • Release v0.9.71 — LLM Gateway: BYOK, managed Kortix models, and live cost observability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3641
  • Release v0.9.72 — Gateway EKS deploy in prod pipeline + correct ingress cert by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3644
  • Release v0.9.73 — Slack channel connector and stability release by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3686
  • Release v0.9.74 — LLM Gateway: Bedrock-native managed models, BYOK fallback, and streaming reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3712
  • Release v0.9.75 — Gateway improvements by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3716
  • Release v0.9.76 — Gateway improvements by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3720
  • Release v0.9.77 — Faster model responses and a fallback for blocked previews by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3727
  • revert(prod): roll back FE & BE to v0.9.68 [INCIDENT] by @markokraemer in https://github.com/kortix-ai/suna/pull/3729
  • fix(prod): keep gateway on 0.9.77 (un-wedge Argo; gateway not in 0.9.68 stack) by @markokraemer in https://github.com/kortix-ai/suna/pull/3737
  • Release v0.9.78 — Marketplace runtime, managed gateway defaults, and staging release hardening by @markokraemer in https://github.com/kortix-ai/suna/pull/3859
  • Release v0.9.79 — Production release v0.9.79 by @markokraemer in https://github.com/kortix-ai/suna/pull/3868
  • Release v0.9.80 — Connect Slack and email in place, fix inbound email, and steadier live previews by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3873
  • Release v0.9.81 — AgentMail email connect error handling by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3884
  • Release v0.9.82 — GLM 5.2 in the model picker, a cleaner Slack connect flow, and reliability fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3900
  • Release v0.9.83 — Slack identity and project session reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3934
  • Release v0.9.84 — Production hotfix: account membership repair by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3939
  • Release v0.9.85 — Release v0.9.85 — Slack identity and account bootstrap hardening by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3943
  • Release v0.9.86 — Fix false 'agent switch requires a new session' on new sessions by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3950
  • Release v0.9.87 — Allow in-session agent switching + wake-race retry + deploy self-heal by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3957
  • Release v0.9.88 — Guided onboarding, a unified Slack panel, and tool-card fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3967
  • Release v0.9.89 — Refreshed marketing site, new blog, and default-agent connector fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3976
  • Release v0.9.90 — Fix the dropped first prompt in new sessions by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/3993
  • Release v0.9.91 — Hotfix gateway Unicode trace logging by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4018
  • Release v0.9.92 — Sandbox reliability fixes, per-project provider override, and gateway logging fix by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4023
  • Release v0.9.93 — Reliable LLM completions, plus sandbox and gateway fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4109
  • Release v0.9.94 — Fix GLM stream failures: pin Z.AI host + trace in-stream upstream errors by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4149
  • Release v0.9.95 — Turn auto-resume for transient provider errors by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4154
  • Release v0.9.96 — Fix session-page reconnect storm against stopped sandboxes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4161
  • Release v0.9.97 — Per-account session-limit override + session delete/provision race fix by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4203
  • Release v0.9.98 — Marketplace by default, People Search, SCIM provisioning, and session reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4263
  • Release v0.9.99 — Project-wide provider keys, marketplace fixes, and sharper project permissions by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4278
  • Release v0.9.100 — Marketplace 1-click imports, groups and custom roles for every plan, and a sandbox that recovers when a build fails by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4343
  • Release v0.9.101 — Agents now always answer your first message, plus SSO and gateway fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4364
  • Release v0.9.102 — slack bind-thread + pending main by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4392
  • Release v0.9.103 — Staging release: auth, chat input, Slack defaults, and runtime reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4476
  • Release v0.9.104 — Reliable session uploads and production migration recovery by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4485
  • Release v0.9.105 — Steadier session switching, email-code sign-in, and a batch of fixes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4490
  • Release v0.9.106 — Smoother session open and switch, plus marketing and maintenance-banner polish by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4498
  • Release v0.9.107 — Idle-stopped sessions come back on their own by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4511
  • Release v0.9.108 — Idle sessions wake on their own, invitation fix, and quieter UI by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4519
  • Release v0.10.0 — Self-hosting: one generic Docker deployment, VPS-first by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4730
  • Release v0.10.1 — Self-host: verified laptop and VPS deployments, guided setup by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4740
  • Release v0.10.2 — Self-host SSO out of the box, unified sign-in, and safer defaults by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4749
  • Release v0.10.3 — Self-host hardening, experimental local-docker sandboxes, and an auth refresh fix by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4774
  • Release v0.10.4 — Restore Kortix managed model availability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4790
  • Release v0.10.5 — Restore production EKS gateway origin TLS by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4796
  • Release v0.10.6 — Restore EKS gateway release parity by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4802
  • Release v0.10.7 — v0.10.7 by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4847
  • Release v0.10.8 — Fixes for OpenAI model routing, provider keys, terminals, and toasts by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4865
  • Release v0.10.9 — Easy panel polish: reliable terminal, browser landing, truthful tool cards by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4880
  • Release v0.10.9 — Self-host SSO sign-in fix and a Cloudflare Access setup guide by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4885
  • Release v0.10.10 — Session panel layout fix and inline file previews in chat by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/4889
  • Release v0.10.11 — The LLM Gateway, rebuilt on the Vercel AI SDK and live models.dev — per-model controls, OpenAI/Anthropic APIs, and a full UX overhaul by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5022
  • revert(prod): roll back api+gateway to v0.10.10 [ROLLBACK] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5048
  • Release v0.10.12 — Reliable session starts + re-shipped LLM gateway by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5073
  • Release v0.10.13 — Codex models fixed, gateway hardening, and a Git-first project flow by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5134
  • Release v0.10.14 — Session provisioning, sandbox runtime, and release reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5342
  • Release v0.10.15 — Scheduler reliability and webhook freshness by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5465
  • Release v0.10.16 — Independent maintenance failover by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5509
  • chore(release): promote Retry-After gate fix to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5663
  • chore(release): promote latest main and bounded ke2e gate by @markokraemer in https://github.com/kortix-ai/suna/pull/5670
  • chore(release): include latest Pi runtime fix in staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5673
  • chore(release): final main cutoff for v0.11.0 staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5679
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5695
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5703
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5709
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5713
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5719
  • chore(release): promote latest main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5720
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5725
  • chore(release): freeze v0.11.0 source at 3729edc1 by @markokraemer in https://github.com/kortix-ai/suna/pull/5730
  • chore(release): promote latest main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5729
  • Release v0.11.0 — Realtime voice, session rewind, warm sessions, and Marketing Department by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5732
  • fix(prod): preserve API deployment selector by @markokraemer in https://github.com/kortix-ai/suna/pull/5737
  • fix(release): carry production Supabase guard to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5750
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5929
  • chore(release): promote main to staging — db-reset harness fix by @markokraemer in https://github.com/kortix-ai/suna/pull/5934
  • chore(release): promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5942
  • Merge main into staging — user menu reorder (#5941) by @sutharjay1 in https://github.com/kortix-ai/suna/pull/5945
  • chore(release): promote main to staging — v0.12.0 gate unblock by @markokraemer in https://github.com/kortix-ai/suna/pull/5950
  • chore(release): promote main to staging — final gate fixes (AUD-5, COVD-1) by @markokraemer in https://github.com/kortix-ai/suna/pull/5954
  • Release v0.12.0 — Audit log, session costs, session scope controls, and a rebuilt kortix.com by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5955
  • chore(release): promote main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/5959
  • release(staging): session list rebuild + error boundary copy details by @sutharjay1 in https://github.com/kortix-ai/suna/pull/5990
  • Promote main → staging: v0.12.1 candidate (45 commits since v0.12.0) by @markokraemer in https://github.com/kortix-ai/suna/pull/5991
  • Promote main → staging: shadow-region release-gate fix by @markokraemer in https://github.com/kortix-ai/suna/pull/5994
  • Release v0.12.1 — Connector-aware sessions, project icons, and sandbox reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/5997
  • Targeted staging fix: valid deploy-prod syntax (re-release v0.12.1) by @markokraemer in https://github.com/kortix-ai/suna/pull/6001
  • Release v0.12.1 — Connector-aware sessions, project icons, and sandbox reliability by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6004
  • chore(release): staging VERSION → 0.12.2 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6012
  • hotfix(session): prevent passive reads from waking stopped sandboxes by @markokraemer in https://github.com/kortix-ai/suna/pull/6041
  • release(web): /download close button, and mobile marked coming soon by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6061
  • chore(release): promote main 86d7a634 to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6064
  • chore(release): refresh staging to main f2f4f840 by @markokraemer in https://github.com/kortix-ai/suna/pull/6066
  • Release v0.12.2 — Runtime reliability, session controls, and infrastructure updates by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6068
  • chore(release): staging VERSION → 0.12.3 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6071
  • fix(web,sdk): keep in-flight sends, tell the truth about tool failures, one code palette (#6058) by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6105
  • fix: slow project page navigation, and upgrade to Next.js 16.2.0 (#6102) by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6107
  • fix(web): give the landing code panels a keyboard tab stop by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6108
  • chore(release): promote main 7fd16e28 to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6116
  • fix(qa): deflake the staging a11y gate (networkidle → element waits) by @markokraemer in https://github.com/kortix-ai/suna/pull/6117
  • Release v0.12.3 — Sandbox hardening, faster navigation, and honest sessions by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6118
  • chore(release): staging VERSION → 0.12.4 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6121
  • release(staging): /legal/terms → specific Drive file (#6123) by @markokraemer in https://github.com/kortix-ai/suna/pull/6124
  • fix(ke2e): COST-2 must compute the gap-fill count from its own window (staging) by @markokraemer in https://github.com/kortix-ai/suna/pull/6130
  • release(staging): email provider-chain transport (cherry-pick #6139) by @markokraemer in https://github.com/kortix-ai/suna/pull/6140
  • Release v0.12.4 — Email delivery that survives a provider outage by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6141
  • chore(release): staging VERSION → 0.12.5 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6149
  • chore(release): promote main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6187
  • chore(release): promote main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6191
  • release: promote main c7023f12 to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6193
  • release: promote main to staging after v0.12.5 gate fix by @markokraemer in https://github.com/kortix-ai/suna/pull/6196
  • Release candidate: refresh staging from main by @markokraemer in https://github.com/kortix-ai/suna/pull/6200
  • Release candidate: promote latest main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6203
  • release: refresh staging with current main by @markokraemer in https://github.com/kortix-ai/suna/pull/6211
  • release: refresh staging with current main by @markokraemer in https://github.com/kortix-ai/suna/pull/6217
  • Release candidate: main → staging (v0.12.5) by @markokraemer in https://github.com/kortix-ai/suna/pull/6229
  • Release v0.12.5 — Secret delivery controls, unified connectors, and flat credit plans by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6188
  • chore(release): staging VERSION → 0.12.6 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6238
  • release candidate: main → staging for v0.12.6 by @markokraemer in https://github.com/kortix-ai/suna/pull/6256
  • Promote main (dab76851b9) to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6258
  • Release v0.12.6 — Legacy chat restore, billing correctness, and admin consoles by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6261
  • chore(release): staging VERSION → 0.12.7 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6269
  • fix(sandbox): promote agent-bound lifecycle correctness by @markokraemer in https://github.com/kortix-ai/suna/pull/6285
  • Release candidate: main @ d1ed3589 → staging for v0.12.7 by @markokraemer in https://github.com/kortix-ai/suna/pull/6331
  • Release v0.12.7 — Agent-bound sandboxes, terminal attach, and feature flags by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6345
  • chore(release): staging VERSION → 0.12.8 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6351
  • Release candidate: main → staging (v0.12.8) by @markokraemer in https://github.com/kortix-ai/suna/pull/6387
  • Release candidate v0.12.8 r2: connector deny-list hardening by @markokraemer in https://github.com/kortix-ai/suna/pull/6391
  • Release v0.12.8 — Entitlement overrides, act-as support sessions, and one-call agent secret grants by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6389
  • chore(release): staging VERSION → 0.12.9 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6400
  • Release candidate: main → staging (v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6402
  • Release candidate r2: main → staging (v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6405
  • Release candidate r3: main → staging (v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6412
  • Release candidate r4: main → staging (v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6416
  • Release candidate r5: main → staging (v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6419
  • Release candidate r6: main → staging (v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6424
  • Release candidate: main → staging (2026-08-18, v0.12.9) by @markokraemer in https://github.com/kortix-ai/suna/pull/6435
  • Release candidate: main → staging (v0.13.0, second attempt) by @markokraemer in https://github.com/kortix-ai/suna/pull/6548
  • Release candidate: main → staging (v0.13.0) + Terraform apply fix (#6549) by @markokraemer in https://github.com/kortix-ai/suna/pull/6550
  • Release candidate: main → staging (v0.13.0) + sharded-gate runtime fixes (#6552) by @markokraemer in https://github.com/kortix-ai/suna/pull/6553
  • Release candidate: main → staging (v0.13.0) + sweep-can't-skip-shards fix (#6556) by @markokraemer in https://github.com/kortix-ai/suna/pull/6557
  • Release candidate: main → staging (v0.13.0) + group-grants Strix fix (#6560) + shard fleet tuning (#6561) by @markokraemer in https://github.com/kortix-ai/suna/pull/6563
  • Release v0.13.0 — Apps goes stable, Monitors lands experimental, and a big session-reliability pass by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6564
  • chore(release): staging VERSION → 0.13.1 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6568
  • chore(release): VERSION → 0.13.1 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6569
  • docs(learnings): CIC under a 5s lock_timeout cannot land on live prod (v0.13.0 deploy incident) by @markokraemer in https://github.com/kortix-ai/suna/pull/6570
  • perf(sandbox): warm OpenCode instance in fast image by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6571
  • perf(sandbox): precompile fast OpenCode tools by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6572
  • infra(selfhost): bake a daily docker-prune timer into the box by @markokraemer in https://github.com/kortix-ai/suna/pull/6573
  • infra(selfhost): drop a deployment name from the prune comment by @markokraemer in https://github.com/kortix-ai/suna/pull/6574
  • perf(sandbox): align fast runtime base with Ubuntu by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6575
  • fix(slack): let another bot @-mention Kortix — the gate blocked every bot, not just us by @kubet in https://github.com/kortix-ai/suna/pull/6577
  • fix: every managed model works in every sandbox + session.error renders in place + keyboard scroll intent by @markokraemer in https://github.com/kortix-ai/suna/pull/6576
  • fix(sandbox): disable slower fast boot experiment by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6578
  • ci(release-gate): 6 api shards + serial-tail shard, 60-min cap, dry-run dispatch against staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6580
  • test(ke2e): fix tests typecheck break from #6554 (iam.flow.ts:1739) by @markokraemer in https://github.com/kortix-ai/suna/pull/6581
  • test(ke2e): preflight tolerates traffic-degraded gateway, 180s deployed flow budget, no cross-shard shared-state collisions by @markokraemer in https://github.com/kortix-ai/suna/pull/6582
  • test(e2e): harden the recurring deployed-target browser specs; quarantine the non-deterministic ones into a nightly lane by @markokraemer in https://github.com/kortix-ai/suna/pull/6584
  • ci(release-gate): E2E_EXCLUDE_TAGS='@quarantine' on the browser shards (companion to #6584) by @markokraemer in https://github.com/kortix-ai/suna/pull/6587
  • Bound the per-session audit event rate so one runaway turn cannot take the API down by @markokraemer in https://github.com/kortix-ai/suna/pull/6583
  • fix(starter): reflector + reviewer agents run without approval prompts by @markokraemer in https://github.com/kortix-ai/suna/pull/6589
  • fix(api,ke2e): account deletion stops+removes every sandbox, revoked tokens stop authenticating, gc reclaims sessions+tokens by @markokraemer in https://github.com/kortix-ai/suna/pull/6586
  • Give CONCURRENTLY migrations a lock_timeout that can actually land on live prod by @markokraemer in https://github.com/kortix-ai/suna/pull/6588
  • Release candidate: main → staging (v0.13.1): gate-green work by @markokraemer in https://github.com/kortix-ai/suna/pull/6591
  • fix(slack): a bot @-mention still did nothing — the identity gate refuses it, silently by @kubet in https://github.com/kortix-ai/suna/pull/6590
  • feat(connectors): one-click OAuth 2.1 for MCP servers (RFC 9728 + 8414 + 7591 + 8707) by @markokraemer in https://github.com/kortix-ai/suna/pull/6579
  • Canonical RBAC cutover: role_assignments is the only store — legacy tables → views, old engine + parity harnesses deleted by @markokraemer in https://github.com/kortix-ai/suna/pull/6594
  • fix(daemon): managed-model overlay never blocks the spawn; reconcile once before readiness by @markokraemer in https://github.com/kortix-ai/suna/pull/6592
  • fix(sessions): session sharing is the owner's call, not a manager's by @markokraemer in https://github.com/kortix-ai/suna/pull/6593
  • perf(sandbox): arm Platinum secrets during create by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6596
  • feat(email): one EMAIL_URL configures every email Kortix sends by @markokraemer in https://github.com/kortix-ai/suna/pull/6585
  • perf(sessions): stop paying two provider round trips to resume a stopped box by @markokraemer in https://github.com/kortix-ai/suna/pull/6595
  • fix(gateway): disable Bun idleTimeout stream-kill + Bedrock request/response fixes by @markokraemer in https://github.com/kortix-ai/suna/pull/6599
  • fix(email): nodemailer 7.0.13 -> 9.0.5 (open advisories, incl. one high) by @markokraemer in https://github.com/kortix-ai/suna/pull/6597
  • test(ke2e): GW-1 tolerates a traffic-degraded gateway (aligns with #6582 preflight) by @markokraemer in https://github.com/kortix-ai/suna/pull/6603
  • Release candidate: main → staging (v0.13.1): RBAC-cutover code + gate round-2 fixes by @markokraemer in https://github.com/kortix-ai/suna/pull/6604
  • docs(runbook): switching dev/staging/prod auth email onto the send-email hook by @markokraemer in https://github.com/kortix-ai/suna/pull/6601
  • fix(db): unblock dev deploys — reconcile retired role_permissions actions before the cutover's catalog-FK VALIDATE (runtime override) by @markokraemer in https://github.com/kortix-ai/suna/pull/6602
  • fix(slack): link-bot documented the one input form Slack cannot send by @kubet in https://github.com/kortix-ai/suna/pull/6606
  • docs(learnings): reconcile a retired constraint value by remapping, never deleting by @markokraemer in https://github.com/kortix-ai/suna/pull/6605
  • docs(runbook): hook-enable PATCH clears custom SMTP; promote-safety proof by @markokraemer in https://github.com/kortix-ai/suna/pull/6608
  • Never render sandbox readiness 503s as errors — waking state + retry across all surfaces by @markokraemer in https://github.com/kortix-ai/suna/pull/6610
  • refactor(gateway): AI-SDK-native /language-model path for lossless opencode passthrough (flag-gated, dormant) by @markokraemer in https://github.com/kortix-ai/suna/pull/6609
  • fix(slack): link-bot should not require owner/admin — it delegates only your own authority by @kubet in https://github.com/kortix-ai/suna/pull/6612
  • infra(staging): API 3×2vCPU/4GiB — the release gate saturates 2×1vCPU tasks by @markokraemer in https://github.com/kortix-ai/suna/pull/6613
  • Release candidate: main → staging (v0.13.1): staging API 3×2vCPU (#6613) by @markokraemer in https://github.com/kortix-ai/suna/pull/6614
  • feat(secrets): exposure/usage model — one enforcement mechanism on all providers by @markokraemer in https://github.com/kortix-ai/suna/pull/6611
  • refactor(gateway): wire API in-process gateway + session env to enable the native path (flag off) by @markokraemer in https://github.com/kortix-ai/suna/pull/6615
  • fix(slack): users.info was sent as JSON, so Slack never saw the user param by @kubet in https://github.com/kortix-ai/suna/pull/6616
  • fix(queue): forwarded prompts cannot strand, Stop cannot leak, bubbles keep one identity by @markokraemer in https://github.com/kortix-ai/suna/pull/6598
  • perf(api): take audit writes and the owner-email fan-out off the request path by @markokraemer in https://github.com/kortix-ai/suna/pull/6618
  • Release candidate: main → staging (v0.13.1): request-path latency fix (#6618) by @markokraemer in https://github.com/kortix-ai/suna/pull/6620
  • perf(ci): dev single-arch + layer cache + fix the frontend-skip by @markokraemer in https://github.com/kortix-ai/suna/pull/6619
  • perf(ci): build staging images natively per arch, with a layer cache by @markokraemer in https://github.com/kortix-ai/suna/pull/6622
  • fix(gateway): re-apply gateway-side provider shaping (codex store:false + 3 more) on the native path by @markokraemer in https://github.com/kortix-ai/suna/pull/6623
  • ci(dev): explicit Deploy Dev action instead of per-push storm by @markokraemer in https://github.com/kortix-ai/suna/pull/6621
  • fix(web): boot-time composer shows the session's real agent; panels survive boot→ready by @markokraemer in https://github.com/kortix-ai/suna/pull/6625
  • deploy-staging: Cloudflare auth failure must not freeze the staging frontend by @markokraemer in https://github.com/kortix-ai/suna/pull/6626
  • ci(dev): auto-deploy latest + cancel-stale (builds are fast now) by @markokraemer in https://github.com/kortix-ai/suna/pull/6627
  • ke2e: never replay a create through an edge-laundered 5xx (fixes all 22 release-gate failures) by @markokraemer in https://github.com/kortix-ai/suna/pull/6628
  • fix(web): boot composer reads the stashed agent pick before /start answers by @markokraemer in https://github.com/kortix-ai/suna/pull/6629
  • fix(gateway): upgrade @ai-sdk/amazon-bedrock 5.0.24→5.0.59 (parse redacted reasoning; fixes GPT-on-Bedrock 502) by @markokraemer in https://github.com/kortix-ai/suna/pull/6630
  • refactor(gateway): make the AI-SDK-native path the default everywhere (verified across all providers) by @markokraemer in https://github.com/kortix-ai/suna/pull/6631
  • Unblock the release browser gate, and stop leaking the Vercel bypass secret by @markokraemer in https://github.com/kortix-ai/suna/pull/6632
  • Promote main to staging: gate flow + browser fixes, fast builds by @markokraemer in https://github.com/kortix-ai/suna/pull/6633
  • gate: 1 api worker per shard — 19 concurrent collapsed the staging write path by @markokraemer in https://github.com/kortix-ai/suna/pull/6634
  • Promote main to staging: gate worker concurrency by @markokraemer in https://github.com/kortix-ai/suna/pull/6635
  • gate: survive a transient 503 at world bootstrap; staging API floor 6 tasks by @markokraemer in https://github.com/kortix-ai/suna/pull/6636
  • Promote main to staging: bootstrap resilience + 6-task floor by @markokraemer in https://github.com/kortix-ai/suna/pull/6637
  • gate: fix the four session residuals, and stop reruns colliding with themselves by @markokraemer in https://github.com/kortix-ai/suna/pull/6638
  • edge: laundered 503 parses as an AI-SDK error; Worker deploy survives a dead credential by @markokraemer in https://github.com/kortix-ai/suna/pull/6639
  • Promote main to staging: edge error shape + session residual fixes by @markokraemer in https://github.com/kortix-ai/suna/pull/6640
  • staging: raise the request deadline to 55s (cross-region DB) by @markokraemer in https://github.com/kortix-ai/suna/pull/6641
  • Promote main to staging: 55s request deadline by @markokraemer in https://github.com/kortix-ai/suna/pull/6642
  • gate: boundary-asserting skips and named quarantines are legitimate --require-all outcomes by @markokraemer in https://github.com/kortix-ai/suna/pull/6643
  • Promote main to staging: skip semantics + SESS-23 quarantine by @markokraemer in https://github.com/kortix-ai/suna/pull/6644
  • gate: a one-step assert-then-skip flow counts as asserted by @markokraemer in https://github.com/kortix-ai/suna/pull/6645
  • Promote main to staging: assert-then-skip step semantics by @markokraemer in https://github.com/kortix-ai/suna/pull/6646
  • IAM-12: poll effective-permission probes through the cross-task IAM cache window by @markokraemer in https://github.com/kortix-ai/suna/pull/6648
  • Promote main to staging: IAM-12 settle poll by @markokraemer in https://github.com/kortix-ai/suna/pull/6649
  • perf(boot): remove fresh-session Git network round trips by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6647
  • perf(boot): deliver exact Git delta during sandbox creation by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6650
  • docs(boot): record deployed Git timing by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6651
  • perf(boot): make Git bundle reuse durable by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6652
  • docs(boot): record durable Git cache benchmark by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6653
  • Release v0.13.1 — Release gate goes green: sharded, self-cleaning, right-sized staging by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6654
  • chore(runtime): bump OpenCode 1.17.11 -> 1.18.19 everywhere by @markokraemer in https://github.com/kortix-ai/suna/pull/6655
  • chore(release): staging VERSION → 0.13.2 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6659
  • chore(release): VERSION → 0.13.2 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6660
  • fix(turns): box-initiated turns get authority; busy roots are never read as terminal by @markokraemer in https://github.com/kortix-ai/suna/pull/6657
  • learnings: three rules from the v0.13.1 release-gate campaign by @markokraemer in https://github.com/kortix-ai/suna/pull/6661
  • fix(session): polish the session UX end to end by @markokraemer in https://github.com/kortix-ai/suna/pull/6663
  • refactor: stop inferring chronology from OpenCode message ids by @markokraemer in https://github.com/kortix-ai/suna/pull/6665
  • fix(turns): turn-begin relay must authenticate as the sandbox, not a PAT by @markokraemer in https://github.com/kortix-ai/suna/pull/6664
  • fix(billing): resolve entitlement from the subscription, not the stored tier by @markokraemer in https://github.com/kortix-ai/suna/pull/6662
  • perf(boot): shrink OpenCode config runtime by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6656
  • chore(billing): backfill the renewal credits zero-grant legacy tiers never gave by @markokraemer in https://github.com/kortix-ai/suna/pull/6666
  • perf(boot): bake the generic scaffold checkout by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6668
  • fix(billing): teach the entitlement invariant what a renewal now grants by @markokraemer in https://github.com/kortix-ai/suna/pull/6671
  • perf(boot): make starter Git bundles provider-portable by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6672
  • chore(billing): reconcile stripe_subscription_status drift before #6662 promotes by @markokraemer in https://github.com/kortix-ai/suna/pull/6669
  • feat(runtime): converge every sandbox onto the API it talks to by @markokraemer in https://github.com/kortix-ai/suna/pull/6673
  • fix(boot): invalidate stale scaffold images by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6674
  • fix(runtime-assets): hash the sandbox binaries at startup, not on the request by @markokraemer in https://github.com/kortix-ai/suna/pull/6676
  • docs(boot): record scaffold benchmark by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6678
  • feat(secrets): gate egress-enforced delivery behind experimental secrets_egress flag; default to environment by @markokraemer in https://github.com/kortix-ai/suna/pull/6677
  • fix(sdk): sub-agent panels stop throwing 'Invalid session id' + quieter landing hero by @markokraemer in https://github.com/kortix-ai/suna/pull/6680
  • gateway: remove the AI-SDK-native transport — OpenAI-compat only (reliability) by @markokraemer in https://github.com/kortix-ai/suna/pull/6679
  • fix(secrets): relay substitutes handles in Authorization/Cookie (egress works for Bearer auth) by @markokraemer in https://github.com/kortix-ai/suna/pull/6683
  • Serve every sandbox preview on its own origin by @markokraemer in https://github.com/kortix-ai/suna/pull/6681
  • fix(web): sub-agent row hierarchy — one rail per level, agent rows that open by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6682
  • enh(web): landing page hero scenes and marketing rebuild by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6658
  • feat(secrets): stream the relay — no body caps, SSE, truncation sentinel by @markokraemer in https://github.com/kortix-ai/suna/pull/6685
  • fix(boot): the managed-skill overlay no longer counts as the user's changes by @markokraemer in https://github.com/kortix-ai/suna/pull/6684
  • refactor(session): one source of truth for what a session changed + the tracked package.json by @markokraemer in https://github.com/kortix-ai/suna/pull/6687
  • fix(session): a finished turn stays finished by @markokraemer in https://github.com/kortix-ai/suna/pull/6688
  • perf(web): verify the session JWT in-process instead of calling GoTrue on every navigation by @markokraemer in https://github.com/kortix-ai/suna/pull/6690
  • fix(session): a retry is not the end of a turn by @markokraemer in https://github.com/kortix-ai/suna/pull/6691
  • fix(queue): the inbox owns the queue by @markokraemer in https://github.com/kortix-ai/suna/pull/6692
  • perf(sandbox): reduce cold OpenCode startup latency by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6694
  • perf(snapshots): materialize Platinum templates before activation by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6695
  • Prepare active Platinum images before cold boots by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6696
  • fix(slack): an app_mention was answered by whichever project got the callback, not the bot that was mentioned by @kubet in https://github.com/kortix-ai/suna/pull/6689
  • fix(sessions): list and lifecycle answer manager standing from one predicate by @kubet in https://github.com/kortix-ai/suna/pull/6697
  • fix(api): an algorithm the local verifier cannot check is not a bad token by @markokraemer in https://github.com/kortix-ai/suna/pull/6698
  • perf(sandbox): add guarded project-image cold boot by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6700
  • fix(api): fail closed on unsafe FAST activation by @Ino-Bagaric in https://github.com/kortix-ai/suna/pull/6703
  • fix(api,selfhost): isolate audit writes + Caddy retry so a slow audit write can't 502 the gateway by @markokraemer in https://github.com/kortix-ai/suna/pull/6702
  • revert(queue): put the queue back the way it was by @markokraemer in https://github.com/kortix-ai/suna/pull/6699
  • fix(web): stop the session boot shell vanishing at handover by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6701
  • fix(edge): accept webhooks without User-Agent by @markokraemer in https://github.com/kortix-ai/suna/pull/6709
  • fix(gateway): bound per-request memory so the LLM path can actually autoscale by @markokraemer in https://github.com/kortix-ai/suna/pull/6708
  • fix(web): restore voice input and subordinate menu styling — main was red by @markokraemer in https://github.com/kortix-ai/suna/pull/6711
  • docs(learnings): a 'tried and reverted' comment is a decision record by @markokraemer in https://github.com/kortix-ai/suna/pull/6704
  • docs(gateway): state the in-flight budget's unit, and pin it with a test by @markokraemer in https://github.com/kortix-ai/suna/pull/6710
  • fix(dev): stop OOM-killing the dev API — 1024 MiB was a quarter of every other environment by @markokraemer in https://github.com/kortix-ai/suna/pull/6705
  • fix(gateway): size the in-flight budget from the container, not from a constant by @markokraemer in https://github.com/kortix-ai/suna/pull/6712
  • docs(learnings): a limit larger than the thing it protects is not a limit by @markokraemer in https://github.com/kortix-ai/suna/pull/6713
  • fix(triggers): stop initial prompt replay loops by @markokraemer in https://github.com/kortix-ai/suna/pull/6716
  • hotfix(webhooks): accept unsigned-agent requests and stop prompt replay by @markokraemer in https://github.com/kortix-ai/suna/pull/6717
  • Release v0.13.2 — Fix production webhook delivery and initial prompt completion by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6718
  • chore(release): VERSION → 0.13.3 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6720
  • chore(release): staging VERSION → 0.13.3 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6721
  • fix(reaper): stop killing live turns on a box that is merely transitioning by @markokraemer in https://github.com/kortix-ai/suna/pull/6719
  • fix(platform): storm controls — coalesced env fan-out, secret-write budget, per-project session cap by @kubet in https://github.com/kortix-ai/suna/pull/6715
  • fix(api): bound database connections during rollouts by @markokraemer in https://github.com/kortix-ai/suna/pull/6722
  • fix(prod): bound database connections during rolling deployment by @markokraemer in https://github.com/kortix-ai/suna/pull/6724
  • test(browser): await account render before retry by @markokraemer in https://github.com/kortix-ai/suna/pull/6727
  • fix(release): isolate audit writes from API database pool by @markokraemer in https://github.com/kortix-ai/suna/pull/6728
  • Release v0.13.3 — Bound database connections and isolated audit writes by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6733
  • fix(preview): make preview origins a MUST on a public domain, never a silent downgrade by @markokraemer in https://github.com/kortix-ai/suna/pull/6732
  • fix(release): bind Vercel runtime version per deployment by @markokraemer in https://github.com/kortix-ai/suna/pull/6735
  • fix(release): bind Vercel runtime version per deployment by @markokraemer in https://github.com/kortix-ai/suna/pull/6736
  • refactor(gateway): bound memory and simplify passthrough by @markokraemer in https://github.com/kortix-ai/suna/pull/6737
  • fix(gateway): wire API proxy to standalone service by @markokraemer in https://github.com/kortix-ai/suna/pull/6738
  • fix(deploy): persist gateway target in ECS revisions by @markokraemer in https://github.com/kortix-ai/suna/pull/6740
  • test(release): prove warm adoption on the target row by @markokraemer in https://github.com/kortix-ai/suna/pull/6739
  • Fix warm-session adoption release assertion by @markokraemer in https://github.com/kortix-ai/suna/pull/6741
  • feat(cli): UI→CLI parity — every operable dashboard action has a kortix command by @markokraemer in https://github.com/kortix-ai/suna/pull/6731
  • feat(composer): persist unsent drafts per project and per session by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6743
  • test(release): require Apps list after enabling flag by @markokraemer in https://github.com/kortix-ai/suna/pull/6747
  • test(release): require Apps list after enabling flag by @markokraemer in https://github.com/kortix-ai/suna/pull/6749
  • fix(session): make runtime recovery single-flight and non-destructive by @markokraemer in https://github.com/kortix-ai/suna/pull/6748
  • fix(worktree): warn at start when another stack is live on the shared DB (worker cross-talk) by @markokraemer in https://github.com/kortix-ai/suna/pull/6752
  • docs(sdk): close runtime recovery progress by @markokraemer in https://github.com/kortix-ai/suna/pull/6754
  • security: enforce the sandbox credential boundary by @markokraemer in https://github.com/kortix-ai/suna/pull/6751
  • fix(cli): replay manifest CAS 409 once; projects ls honors --host/--account by @markokraemer in https://github.com/kortix-ai/suna/pull/6753
  • fix(worktree): tunnel watchdog — rotate a dead quick tunnel and respawn the API with the new KORTIX_URL by @markokraemer in https://github.com/kortix-ai/suna/pull/6755
  • test(release): allow later session activity writes by @markokraemer in https://github.com/kortix-ai/suna/pull/6756
  • docs(learnings): never resolve a merge inside a worktree whose API runs --hot by @markokraemer in https://github.com/kortix-ai/suna/pull/6758
  • test(release): allow later session activity writes by @markokraemer in https://github.com/kortix-ai/suna/pull/6757
  • fix(worktree): run the quick tunnel over HTTP/2, not QUIC by @markokraemer in https://github.com/kortix-ai/suna/pull/6759
  • fix(api): inbox delivery converges the box before every prompt, not only with an opencodeEnv override by @markokraemer in https://github.com/kortix-ai/suna/pull/6761
  • security: enforce the sandbox credential boundary by @markokraemer in https://github.com/kortix-ai/suna/pull/6760
  • Release v0.13.4 — Bound database capacity and reliable production web deploys by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6746
  • chore(release): VERSION → 0.13.5 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6762
  • chore(release): staging VERSION → 0.13.5 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6763
  • fix(web): the Apps gallery goes back to 16:9, two across, with a size control by @markokraemer in https://github.com/kortix-ai/suna/pull/6764
  • fix(api,dev): instance-scoped background work on a shared local DB (KORTIX_INSTANCE_ID) by @markokraemer in https://github.com/kortix-ai/suna/pull/6765
  • fix(triggers): validate webhook secret delivery by @markokraemer in https://github.com/kortix-ai/suna/pull/6768
  • fix(web): an App card names the App, not its hostname by @markokraemer in https://github.com/kortix-ai/suna/pull/6767
  • kortixd: standalone compute-node daemon and sandbox runtime by @markokraemer in https://github.com/kortix-ai/suna/pull/6686
  • docs(learnings): a cancelled deploy-dev can advertise a SHA it never promoted by @markokraemer in https://github.com/kortix-ai/suna/pull/6769
  • fix(self-host): expose the public LLM gateway route by @markokraemer in https://github.com/kortix-ai/suna/pull/6770
  • fix(kortixd): connect through deployed WebSocket edge by @markokraemer in https://github.com/kortix-ai/suna/pull/6773
  • fix(web): the model dialog IS the Models page, not a second copy of it by @markokraemer in https://github.com/kortix-ai/suna/pull/6771
  • fix(web): trim the project settings rail, and a floating way back from the account hub by @markokraemer in https://github.com/kortix-ai/suna/pull/6772
  • feat(web): rebuild the Customize index as a chooser by @markokraemer in https://github.com/kortix-ai/suna/pull/6774
  • fix(kortixd): complete reliable sandbox relay rollout by @markokraemer in https://github.com/kortix-ai/suna/pull/6776
  • fix(relay): cross Cloudflare for PTY sockets by @markokraemer in https://github.com/kortix-ai/suna/pull/6777
  • fix(kortixd): disable node-channel compression by @markokraemer in https://github.com/kortix-ai/suna/pull/6778
  • fix(api): wait through Platinum archive restore by @markokraemer in https://github.com/kortix-ai/suna/pull/6779
  • fix(api): converge kortixd after Daytona wake by @markokraemer in https://github.com/kortix-ai/suna/pull/6780
  • fix(api): bootstrap kortixd on legacy sandboxes by @markokraemer in https://github.com/kortix-ai/suna/pull/6781
  • fix(api): restore runtime environment for legacy kortixd by @markokraemer in https://github.com/kortix-ai/suna/pull/6782
  • fix(api): serialize legacy kortixd repair by @markokraemer in https://github.com/kortix-ai/suna/pull/6783
  • fix(api): preserve legacy sandbox entrypoint by @markokraemer in https://github.com/kortix-ai/suna/pull/6784
  • fix(api): protect sandbox PID 1 by @markokraemer in https://github.com/kortix-ai/suna/pull/6785
  • fix(kortixd): adopt legacy sandbox runtime by @markokraemer in https://github.com/kortix-ai/suna/pull/6786
  • revert: restore stable sandbox relay while kortixd stays in worktree by @markokraemer in https://github.com/kortix-ai/suna/pull/6787
  • fix(deploy): complete reviewed kortixd rollback by @markokraemer in https://github.com/kortix-ai/suna/pull/6788
  • fix(sdk,web): a runtime list endpoint never hands back a non-list ('t is not iterable') by @markokraemer in https://github.com/kortix-ai/suna/pull/6790
  • docs(learnings): normalize remote list responses at the SDK seam by @markokraemer in https://github.com/kortix-ai/suna/pull/6791
  • release(staging): backport 5 web changes — sub-agent rows, landing rebuild, sidebar alerts, zip viewer, share view by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6789
  • fix(api,web,sdk): terminal attach wakes a parked sandbox instead of looping on 1006 by @markokraemer in https://github.com/kortix-ai/suna/pull/6792
  • fix(env): default managed git to github for local and dev runs by @markokraemer in https://github.com/kortix-ai/suna/pull/6793
  • docs(learnings): a websocket upgrade must obey the HTTP wake policy by @markokraemer in https://github.com/kortix-ai/suna/pull/6794
  • fix(api): retire code.storage as a provisioning target everywhere by @markokraemer in https://github.com/kortix-ai/suna/pull/6796
  • fix(web): stop path detection from turning a code fence into [object Object] by @markokraemer in https://github.com/kortix-ai/suna/pull/6795
  • fix(deploy): pin MANAGED_GIT_PROVIDER=github in the staging env bundle by @markokraemer in https://github.com/kortix-ai/suna/pull/6799
  • fix(router): accept the session PAT that every built-in tool actually presents by @markokraemer in https://github.com/kortix-ai/suna/pull/6800
  • fix(ci): run dev channel promotions after skipped surfaces by @markokraemer in https://github.com/kortix-ai/suna/pull/6798
  • Fix OpenCode resolution in generated sandbox templates by @markokraemer in https://github.com/kortix-ai/suna/pull/6801
  • fix(session): stop claiming a live session is "waking" before we have looked by @markokraemer in https://github.com/kortix-ai/suna/pull/6802
  • docs(agents): remove the dangling tdd skill and fix stale AGENTS.md facts by @markokraemer in https://github.com/kortix-ai/suna/pull/6803
  • fix(models): a connected ChatGPT subscription can be removed again by @markokraemer in https://github.com/kortix-ai/suna/pull/6804
  • Resolve native OpenCode from the installed pnpm shim by @markokraemer in https://github.com/kortix-ai/suna/pull/6805
  • fix(session,db): a finished turn stays finished; drop the reverted kortixd schema by @markokraemer in https://github.com/kortix-ai/suna/pull/6807
  • fix(session,db): finish the turn-end fix + three defects an audit found by @markokraemer in https://github.com/kortix-ai/suna/pull/6808
  • fix(sdk): a status snapshot may fill a gap, never overwrite the live stream by @markokraemer in https://github.com/kortix-ai/suna/pull/6809
  • perf(session): bound what a long thread retains by @markokraemer in https://github.com/kortix-ai/suna/pull/6810
  • fix(session): a queued prompt asks the inbox whether it survived, not the runtime by @markokraemer in https://github.com/kortix-ai/suna/pull/6811
  • Fix duplicate prompts from CLI new-session chat by @markokraemer in https://github.com/kortix-ai/suna/pull/6812
  • Files: one header row per surface, faster change-request open, calmer review panels by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6813
  • fix(session): the runtime's output is evidence, not an opinion about the runtime by @markokraemer in https://github.com/kortix-ai/suna/pull/6814
  • fix(starter): disable harness reflector by default by @kubet in https://github.com/kortix-ai/suna/pull/6806
  • fix(sdk,session): the transcript comes from the runtime, never from disk by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6819
  • A wait is not a fault: one connection answer for the session view by @markokraemer in https://github.com/kortix-ai/suna/pull/6817
  • fix(api): namespace OpenCode gateway model refs by @markokraemer in https://github.com/kortix-ai/suna/pull/6820
  • Drop a foreign key the schema declared and no database ever had by @markokraemer in https://github.com/kortix-ai/suna/pull/6818
  • The transcript must catch up — five things stopped it by @markokraemer in https://github.com/kortix-ai/suna/pull/6821
  • fix(sandbox): recover missing OpenCode runtime by @markokraemer in https://github.com/kortix-ai/suna/pull/6822
  • fix(ci): preserve frontend channel promotion by @markokraemer in https://github.com/kortix-ai/suna/pull/6823
  • The read is the liveness check — stop the session page waiting on a probe by @markokraemer in https://github.com/kortix-ai/suna/pull/6824
  • The first page is 20 messages, not 50 by @markokraemer in https://github.com/kortix-ai/suna/pull/6825
  • Take over OpenCode's own v1 page handling by @markokraemer in https://github.com/kortix-ai/suna/pull/6826
  • Wait for a sandbox to wake, not for three tries by @markokraemer in https://github.com/kortix-ai/suna/pull/6827
  • A human is not a sandbox: backend-origin sessions open again by @markokraemer in https://github.com/kortix-ai/suna/pull/6828
  • The transcript stops shipping attachment bytes by @markokraemer in https://github.com/kortix-ai/suna/pull/6829
  • Learnings: the 2026-08-24 session-open incident by @markokraemer in https://github.com/kortix-ai/suna/pull/6830
  • One read where there were three, one entry where there were two by @markokraemer in https://github.com/kortix-ai/suna/pull/6832
  • fix(gateway): zero-copy image passthrough, measured memory envelope, image window, framing headers by @markokraemer in https://github.com/kortix-ai/suna/pull/6831
  • Promote main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6834
  • perf(session): remove residual page-load contention by @markokraemer in https://github.com/kortix-ai/suna/pull/6836
  • fix(gateway): survive overload instead of dying — no OOM, no lease leak, no 502 by @markokraemer in https://github.com/kortix-ai/suna/pull/6835
  • Bound failed existing-session resume loops by @markokraemer in https://github.com/kortix-ai/suna/pull/6837
  • Fix release gate audit stalls and stale fixtures by @markokraemer in https://github.com/kortix-ai/suna/pull/6838
  • Promote current main to staging by @markokraemer in https://github.com/kortix-ai/suna/pull/6839
  • Release v0.13.5 — Faster sessions, resilient multimodal runs, and safer previews by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6842

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.0...v0.13.5

August 22, 2026

Bound database capacity and reliable production web deploys

v0.13.4

Fixed

  • Bound API database pools against the maximum rolling deployment fleet. This prevents PostgreSQL 53300 connection exhaustion.
  • Isolated audit writes on a dedicated pool. Slow audit inserts cannot starve request handlers.
  • Coalesced project environment updates, bounded secret writes, and capped concurrent project sessions to contain request storms.
  • Bound public web version metadata to each Vercel deployment. Production web deploys now complete with the correct release version.
  • Strengthened release verification for warm-session adoption.

What's Changed

  • chore(release): VERSION → 0.13.3 [skip ci] by @github-actions[bot] in https://github.com/kortix-ai/suna/pull/6720
  • fix(reaper): stop killing live turns on a box that is merely transitioning by @markokraemer in https://github.com/kortix-ai/suna/pull/6719
  • fix(platform): storm controls — coalesced env fan-out, secret-write budget, per-project session cap by @kubet in https://github.com/kortix-ai/suna/pull/6715
  • fix(api): bound database connections during rollouts by @markokraemer in https://github.com/kortix-ai/suna/pull/6722
  • test(browser): await account render before retry by @markokraemer in https://github.com/kortix-ai/suna/pull/6727
  • fix(preview): make preview origins a MUST on a public domain, never a silent downgrade by @markokraemer in https://github.com/kortix-ai/suna/pull/6732
  • fix(release): bind Vercel runtime version per deployment by @markokraemer in https://github.com/kortix-ai/suna/pull/6735
  • refactor(gateway): bound memory and simplify passthrough by @markokraemer in https://github.com/kortix-ai/suna/pull/6737
  • fix(gateway): wire API proxy to standalone service by @markokraemer in https://github.com/kortix-ai/suna/pull/6738
  • fix(deploy): persist gateway target in ECS revisions by @markokraemer in https://github.com/kortix-ai/suna/pull/6740
  • test(release): prove warm adoption on the target row by @markokraemer in https://github.com/kortix-ai/suna/pull/6739
  • feat(cli): UI→CLI parity — every operable dashboard action has a kortix command by @markokraemer in https://github.com/kortix-ai/suna/pull/6731
  • feat(composer): persist unsent drafts per project and per session by @sutharjay1 in https://github.com/kortix-ai/suna/pull/6743
  • test(release): require Apps list after enabling flag by @markokraemer in https://github.com/kortix-ai/suna/pull/6747
  • fix(session): make runtime recovery single-flight and non-destructive by @markokraemer in https://github.com/kortix-ai/suna/pull/6748
  • fix(worktree): warn at start when another stack is live on the shared DB (worker cross-talk) by @markokraemer in https://github.com/kortix-ai/suna/pull/6752
  • docs(sdk): close runtime recovery progress by @markokraemer in https://github.com/kortix-ai/suna/pull/6754
  • security: enforce the sandbox credential boundary by @markokraemer in https://github.com/kortix-ai/suna/pull/6751
  • fix(cli): replay manifest CAS 409 once; projects ls honors --host/--account by @markokraemer in https://github.com/kortix-ai/suna/pull/6753
  • fix(worktree): tunnel watchdog — rotate a dead quick tunnel and respawn the API with the new KORTIX_URL by @markokraemer in https://github.com/kortix-ai/suna/pull/6755
  • test(release): allow later session activity writes by @markokraemer in https://github.com/kortix-ai/suna/pull/6756
  • docs(learnings): never resolve a merge inside a worktree whose API runs --hot by @markokraemer in https://github.com/kortix-ai/suna/pull/6758
  • fix(worktree): run the quick tunnel over HTTP/2, not QUIC by @markokraemer in https://github.com/kortix-ai/suna/pull/6759
  • fix(api): inbox delivery converges the box before every prompt, not only with an opencodeEnv override by @markokraemer in https://github.com/kortix-ai/suna/pull/6761
  • security: enforce the sandbox credential boundary by @markokraemer in https://github.com/kortix-ai/suna/pull/6760

Full Changelog: https://github.com/kortix-ai/suna/compare/v0.13.2...v0.13.4

Read the full release on GitHub
Release on GitHub
Read the full release on GitHub
Release on GitHub
Release on GitHub
Read the full release on GitHub
Release on GitHub
Read the full release on GitHub
Release on GitHub
Previous
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
Next