github kortix-ai/suna v0.13.21
v0.13.21 — Print whole conversations, private provider pools, and Entra SCIM fixes

latest releases: dev-latest, v0.13.22
7 hours ago

New

  • Print a whole conversation. Cmd+P prints the full session as a clean document — every message, not one clipped screen of the app.
  • Queued prompts you can see and edit. Queued messages show in a list above the composer. Press Up to edit the last one, and Resume picks the queue back up reliably.
  • Private provider connection pools. Bring several keys for one provider, keep them private or share them with named members, and let a session hold its own key. Sessions fail over to the next key and report the earliest retry time when a pool is exhausted. Gemini and ChatGPT keys pool too, and pooled keys are managed in Models.
  • Astra is available as a ChatGPT subscription model.

Improved

  • Faster project boot. New sessions fetch the project from storage instead of cloning it, and start sooner.
  • Faster session lists. A project's session list is now a page, not the whole inventory.
  • Menus open instantly. Menus, popovers, tooltips and the command palette no longer wait to appear.
  • Smaller sandbox images, which start faster.
  • Git connections are now organized per account, with one instance backend and an identity that cannot drift.

Fixed

  • Microsoft Entra directory sync. Patches apply atomically, large directories paginate, groups survive while a user is inactive or a sign-in session is stale, deactivation and single-member removal behave correctly, and users resolve across the whole directory.
  • The gateway retries a slow internal call instead of answering "Gateway unavailable".
  • Composer drafts survive session startup, and opening session settings no longer closes itself while the composer takes focus.
  • Session attachments are more reliable.
  • Model prices show correctly in the ChatGPT picker.
  • Security hardening across session cursors, webhook signing keys, and the remaining high-severity scanner findings.
  • Database migrations now apply cleanly on staging and production.

What's Changed

  • feat(sandbox): bake rg, fd, bat, jq, fzf and a shell tool floor into every image by @markokraemer in #7264
  • refactor(sandbox): remove the fast cold boot image, its flag, and the experiments it gated by @markokraemer in #7268
  • test(release): dismiss the welcome card before Save in the repository-access journey by @markokraemer in #7276
  • fix(cli): connectors apps searches the Composio toolkit catalog by @markokraemer in #7277
  • feat(project-snapshot): S3 boot acquires the project 3.5× faster than Git (307 vs 1,078 ms) and boots 0.8 s sooner — presign at create, no HEAD on the boot path, kortixd gated on OpenCode's "server listening" by @DimitrijeGlibic in #7242
  • fix: restore terminal recovery and keep message retries in their session by @sutharjay1 in #7267
  • fix(usage): show zero cost for ChatGPT subscriptions by @markokraemer in #7278
  • chore(release): VERSION → 0.13.19 [skip ci] by @github-actions[bot] in #7285
  • fix: refresh terminal provider credentials after sandbox resume by @markokraemer in #7286
  • fix(session): isolate optional connector failures and preserve prompt queue controls by @sutharjay1 in #7265
  • chore(release): VERSION → 0.13.20 [skip ci] by @github-actions[bot] in #7290
  • chore(release): staging VERSION → 0.13.20 [skip ci] by @github-actions[bot] in #7291
  • fix(session): a queued prompt survives an unreachable runtime instead of being dead-lettered in 5 minutes by @markokraemer in #7289
  • chore(release): back-merge staging into main (resolved) by @markokraemer in #7294
  • chore(release): back-merge v0.13.18 release-gate fixes into main by @markokraemer in #7282
  • fix(sandbox): an image over the provider's snapshot ceiling is a permanent, user-fixable state — not "try again" by @markokraemer in #7293
  • feat(providers): reuse personal connections and subscription pools across projects by @Ino-Bagaric in #7295
  • feat(providers): connect personal subscriptions and API keys across projects by @markokraemer in #7234
  • Fix Azure SCIM ingress, deactivation, and group synchronization by @Ino-Bagaric in #7297
  • fix(web): pin every @tiptap package to 3.27.1 by @sutharjay1 in #7300
  • infra(dev): enable S3 Transfer Acceleration for project snapshots by @DimitrijeGlibic in #7299
  • Fix Azure SSO and SCIM lifecycle, membership, and profile synchronization by @Ino-Bagaric in #7298
  • fix: harden session attachments by @sutharjay1 in #7148
  • Fix SCIM sync for populated Entra default profile mappings by @Ino-Bagaric in #7302
  • perf(web): open menus, popovers, tooltips and the command palette instantly by @sutharjay1 in #7301
  • fix(security): clear the high-severity CodeQL and Trivy findings blocking the staging promote by @markokraemer in #7306
  • perf(sandbox): set modes at COPY time — a chmod/chown RUN was duplicating 290 MB into every image by @markokraemer in #7309
  • fix(security): the three remaining high CodeQL findings, and the prompt-delivery incident learnings by @markokraemer in #7310
  • perf(sessions): the project session list is a keyset page, not the whole inventory by @markokraemer in #7308
  • fix(security): a webhook signing key must never come from Math.random by @markokraemer in #7312
  • perf(sessions): the project session list is a keyset page, not the whole inventory by @markokraemer in #7314
  • fix(dev): load the baked Supabase images, and stop starting the two nothing uses by @markokraemer in #7313
  • Revert provider connection pooling and restore inline provider setup by @markokraemer in #7311
  • Merge staging into main: reconcile #7308/#7314 and repair the learnings register by @markokraemer in #7317
  • chore(release): VERSION → 0.13.21 [skip ci] by @github-actions[bot] in #7322
  • chore(release): staging VERSION → 0.13.21 [skip ci] by @github-actions[bot] in #7323
  • fix(models): restore ChatGPT picker reference prices by @markokraemer in #7320
  • release: main → staging (prompt-delivery fix + 22 commits) by @markokraemer in #7292
  • test(ci): fail the build on a committed git conflict marker by @markokraemer in #7318
  • fix(app): separate send and composer queue placement by @sutharjay1 in #7304
  • fix(security): pin the GCM tag and nonce lengths when opening a session cursor by @markokraemer in #7315
  • refactor(git): one instance backend, account connections, env-immutable identity by @markokraemer in #7321
  • fix(gateway): retry a slow control-plane call instead of serving "Gateway unavailable" by @markokraemer in #7325
  • feat(session): Cmd+P prints the whole conversation as a document by @markokraemer in #7329
  • Allow explicitly granted agent sessions to self merge CRs by @markokraemer in #7324
  • Promote main to staging by @sutharjay1 in #7333
  • fix(db): release the early-applied keyset index so staging and prod can migrate by @sutharjay1 in #7334
  • Promote main to staging (migration order fix) by @sutharjay1 in #7335
  • Add feature-flagged provider secret resources and session pools by @Ino-Bagaric in #7331
  • Pooled provider connections with per-user ChatGPT accounts by @markokraemer in #7319
  • fix(api): copy the early-applied migration repair into the API image by @sutharjay1 in #7338
  • fix(api): copy the early-applied migration repair into the API image (staging) by @sutharjay1 in #7339
  • Release candidate: main → staging (0.13.21) by @markokraemer in #7340
  • Release v0.13.21 — Print whole conversations, Entra SCIM fixes, and faster project boot by @github-actions[bot] in #7336

Full Changelog: v0.13.20...v0.13.21

Don't miss a new suna release

NewReleases is sending notifications on new releases.