github kortix-ai/CompanyOS v0.15.10
v0.15.10 — Connect ChatGPT and Claude from the composer, one Slack workspace per Kortix, and a wide batch of mobile and web fixes

latest release: dev-latest
2 hours ago

New

  • Connect ChatGPT and Claude right above the first-chat composer (#12559).
  • A Slack workspace now runs in one Kortix workspace; agents move between workspaces by their own rules (#12499).
  • Provider keys need no feature flag; "Pooled Provider Secrets" moves out of Feature flags (#12561).
  • Agent reports fold into a single row over the answers on web and mobile (#12566).
  • status.kortix.com now shows the worker through a Better Stack heartbeat (#12591).
  • Mobile dev builds upload to TestFlight on a version change (#12562).

Improved

  • The project gate reads the canonical Workspace record, and the resolver owns the deleting view (#12540).
  • Mobile settings drop their dead surfaces and the prompt tile collapses (#12544).
  • Session-cost records are served from @kortix/sdk (#12539).
  • Mobile reuses one paged gallery, one bundled-asset text reader, one debounce hook, and unified pixel/config/upload helpers (#12532, #12550).
  • The connector invalidation helper moves to the hooks layer, and the credential move ledger records why a transfer leaves it (#12531).
  • Session-row rules live in one place for both hosts (#12525).
  • CLI: the tokens command splits by resource, the Dockerfile lint splits into named checks, and the sessions help checks share splitHelp (#12587, #12600, #12593).
  • One migration-ledger module with one sha256 and one safety header (#12606); the registry reuses the manifest-schema issue model (#12608); the TUI shares one action hook, time ladder and clip (#12603).

Fixed

  • Web sign-in on a phone no longer opens the app (#12543).
  • /auth no longer logs "Encountered a script tag" on load (#12565).
  • The demo booking calendar loads again and the CSP report noise stops (#12568).
  • More options shows progress and keeps the suggested workspace name (#12570).
  • Upgrade opens on $50 and Confirm rows name their question (#12574).
  • The CLI authorize page offers a retry when the workspace list fails to load (#12573).
  • Rapid follow-up input is kept when starting a session (#12586).
  • Notifications move to the person-level Inbox (#12582); pending questions list and settings gates are preserved (#12595).
  • Sent prompts no longer vanish from a session (#12602).
  • Agent · Model tabs show on iOS and in the iOS model sheet; the Android workspace switcher header and search lay out correctly (#12548, #12560, #12601).
  • Mobile: a null search text reads as empty (#12546); drawer pages open at once instead of after 2–3 s (#12558); drawer sections show only with rows and Show more always loads one (#12577); iOS content sheets open at content height as Liquid Glass (#12585).
  • A dialog opened inside another dialog dims the parent again (#12556); no busy row shows under the answer while it streams (#12547); chat links to the app open in place with no page reload (#12581).
  • Returning to a streaming session shows the whole answer so far (#12588); reload snapshots are retained and disconnected runtimes are explained (#12594); a live answer no longer freezes on Thinking when the stream joins mid-reply (#12596).
  • Admins of an MFA workspace get repository access again (#12551).
  • A git push of kortix.yaml applies its triggers and policies at once (#12563).
  • No false "queued" reply in chat; failed box recoveries cap at 3 (#12567).
  • The audit archive resumes after a worker restart instead of starting over (#12571).
  • The workspace-invariants run survives a timeout and scans by index (#12578).
  • API stops dialling a box proved dial-dead at the proxy (#12479) and surfaces a dead Daytona key instead of "provider state is unknown" (#12549).
  • A failed deploy's cleanup no longer fails on its restore step (#12599); a leader tick names its timer and SQLSTATE on failure (#12590).
  • Persistent provider auth outages page with the right provider's remediation (#12557).
  • Noisy warn lines are throttled: the preview-sandbox 403 storm (#12529), person role-denial lines (#12583), and agent-access denial lines (#12592).
  • The gateway remembers a refused model's typed refusal (#12470).
  • An account-state event-trigger refusal answers 402, not 500 (#12524).
  • The composer offers a model right after a plan checkout (#12575); one subprocessor notice email per person (#12605).
  • Drive refreshes folder listings after failed reads (#12580).
  • A Composio app gets no empty shared account, and revoke turns it off at Composio (#12584).
  • Account-wide PATs are minted at /settings/tokens, and fence errors name the binding workspace (#12564).
  • Plain CLI prompts settle on end of input instead of hanging (#12598).
  • No sparse row list after a mid-result statement error (#12604).

Security

  • hono 4.13.17 and @hono/node-server 2.1.6 in the sandbox daemon and scanner lockfiles, closing six moderate advisories (#12621).

Internal

  • Dropped the Suna-era schemas, 224.7 GB of the prod database (#12569), and the unused pgjwt extension that blocks Postgres 17 (#12589).
  • The v0.15.9 contract lanes match the merged behavior (#12533).
  • Learnings: check CSP reports after enforcing a script allowlist (#12572).
  • Test pins: the palette pick on a debounced group (#12545), the trigger-runs spend read index-only (#12553), and the streaming busy-row gate (#12555).
  • Mobile store version bumps (#12552); dev VERSION targets 0.15.10.

What's Changed

  • Release v0.15.10 — Connect ChatGPT and Claude from the composer, one Slack workspace per Kortix, and a wide batch of mobile and web fixes by @github-actions[bot] in #12615

Full Changelog: v0.15.9...v0.15.10

Don't miss a new CompanyOS release

NewReleases is sending notifications on new releases.