New
- See the model behind each answer. A session shows which model answered and what the answer cost.
- pi 1.0. The pi harness is on pi 1.0. It brings compaction and slash commands, and pi now runs only inside the sandbox.
- Config releases follow your repository. A release is a checkout of the base branch with the repository's own layout. An unbuildable or quarantined tip no longer drops a session's configuration without notice.
- Security settings: a redesigned authenticator-app enrollment, and a list of every signed-in device. Signing a device out stops its access at once.
- Viewers: the session file and App viewers show an address bar. App previews show calmer loading and build states, and hover cards name running ports and links as well as files.
- Mobile: an updated app, with JavaScript changes now delivered as over-the-air updates. It adds channel cards for Slack and Teams prompts and one progress indicator per running turn. The Files row opens the Files page, and the project's Apps are listed.
- Downloads: the desktop installer has a drag-to-install window, and /download links to the App Store and Google Play listings.
- The website describes Kortix as the open-source AI Operating System.
Improved
- When a ChatGPT usage limit is reached, the gateway falls back to the project's model chain and says when the limit resets.
- A failed sandbox template build names its cause.
- Adding a member by email is faster.
- Sandbox shells no longer write core dumps.
Fixed
- Editing a sent prompt keeps its attachments, and so does editing a prompt queued while the session boots.
- A manual trigger run no longer fails when it races a new session that creates the same agent identity.
- Relative OpenCode instructions read from the release, not from the workspace.
- The demo booking confirmation stays open until you close it.
- The Kortix web app is patched against three new vulnerabilities in its dependencies.
What's Changed
- chore(secrets): rotate the dev/staging web gate password by @markokraemer in #9151
- brand+seo: Kortix, the open-source AI Operating System (soft rebrand, SEO/GEO pass, AI OS pillar page) by @markokraemer in #9152
- fix(api): a concurrent agent service account create re-reads the winner instead of failing by @markokraemer in #9155
- chore(release): staging VERSION → 0.13.51 [skip ci] by @github-actions[bot] in #9156
- chore(release): VERSION → 0.13.51 [skip ci] by @github-actions[bot] in #9157
- perf(db): plan legacy user role auth calls once (KRTX-1150) by @agent-kortix in #8880
- fix(db): scope the legacy public.credit_usage policies to their roles (KRTX-1164) by @agent-kortix in #8927
- fix(db): drop the legacy public.agents select policy flagged by the supabase advisor (KRTX-1158) by @agent-kortix in #9065
- fix(db): wrap public.resources RLS auth.uid() in an initplan (KRTX-1147) by @agent-kortix in #9066
- fix(db): wrap user_memories RLS auth.uid() in initplan form (KRTX-1149) by @agent-kortix in #9069
- perf(db): dedupe legacy credit purchase RLS policies (KRTX-1163) by @agent-kortix in #9075
- test(db): point the credit_usage policy-roles test at the renamed migration by @markokraemer in #9158
- refactor(api): split the config-releases builder seam, stop wasted archive builds (KRTX-1595) by @agent-kortix in #9141
- test(db): point the credit_purchases single-policy test at the renamed migration by @markokraemer in #9159
- fix(db): scope the legacy audit_log policies to their JWT roles (KRTX-1159) by @agent-kortix in #9082
- fix(db): wrap the legacy auth.role() policy on renewal_processing (KRTX-1146) by @agent-kortix in #9086
- test(kortixd): write the first five monitor lines in one write by @markokraemer in #9160
- test: fail when code names a migration file that does not exist by @markokraemer in #9161
- fix(db): wrap project_select_policy auth.uid() in an initplan (KRTX-1144) by @agent-kortix in #9090
- test(db): give the credit_purchases single-policy suite its own probe role by @markokraemer in #9162
- test: skip the migration-reference guard's own fixtures by @markokraemer in #9163
- fix(db): wrap public.audit_log RLS auth calls in initplan scalar subqueries (KRTX-1134) by @agent-kortix in #9104
- fix(db): defuse the armed legacy account-deletion cascade (KRTX-1517) by @agent-kortix in #9108
- fix(db): give agent_templates_backup a surrogate primary key (KRTX-1169) by @agent-kortix in #9113
- perf(db): drop the unused profiles_email_idx on kortix_yolo.profiles (KRTX-1217) by @agent-kortix in #8935
- chore(secrets): rotate leaked Betterstack credentials + web-gate verifier learning by @markokraemer in #9165
- feat(mobile): channel cards for current Slack and Teams prompts, one shared parser by @Ino-Bagaric in #9168
- fix(session): keep attachments when editing a sent prompt by @sutharjay1 in #8961
- fix(web): plain session header menu items, use Copy icon by @sutharjay1 in #9169
- feat(web): address-pill header for the session file and app viewers by @sutharjay1 in #9171
- feat(mobile): ship JS/TS as OTA updates from CI, guarded by the native fingerprint by @sutharjay1 in #8767
- fix(gateway): a ChatGPT usage limit falls back to the project chain and says when it resets by @Ino-Bagaric in #9172
- fix(api): add-member email lookup uses the auth.users index (request_deadline on staging) by @Ino-Bagaric in #9173
- fix(gateway): round the ChatGPT usage-limit reset wait by @Ino-Bagaric in #9174
- fix(mobile): compare OTA native code only against builds of the current app id by @sutharjay1 in #9175
- fix(sandbox): no core dumps in sandbox shells; a crash dump carries the agent env by @markokraemer in #9177
- feat(mobile): one shimmer per running turn, Files row opens the Files page (KRTX-1638, KRTX-1636) by @sutharjay1 in #9176
- feat(web): show hover card names running ports and links, not only files by @sutharjay1 in #9178
- fix(web): demo booking keeps its confirmation open and closes only on request by @sutharjay1 in #9179
- feat(kortixd): pi 1.0.0, compaction and slash commands on pi by @DimitrijeGlibic in #8738
- fix(mobile): list the project's Apps instead of always showing "No apps yet" by @sutharjay1 in #9183
- fix(kortixd): pi 1.0.3 + daemon bun.lock, so the API image builds again by @DimitrijeGlibic in #9186
- feat(web): redesign authenticator app enrollment in Security settings by @sutharjay1 in #9185
- fix(config-releases): an unbuildable or quarantined tip never silently drops a session's config by @DimitrijeGlibic in #9187
- feat(web): list every signed-in device in Settings > Security by @sutharjay1 in #9184
- feat(desktop): drag-to-install DMG window with a dithered background by @sutharjay1 in #9190
- fix(auth): a signed-out device's bearer stops working at once; label the device routes by @DimitrijeGlibic in #9193
- fix(mobile): scroll the drawer nav pills with the session list by @sutharjay1 in #9192
- feat(web): calm preview states: load line page, dot-matrix while building, debug harness by @sutharjay1 in #9188
- refactor(pi): remove the pi_worker split and the compiled-boot pipeline; pi runs only in the sandbox by @DimitrijeGlibic in #9189
- fix(desktop): show the DMG background on macOS 26 by @sutharjay1 in #9194
- Promote selected main commits (through 2010294) to staging by @sutharjay1 in #9195
- feat(config-releases): a release is a checkout of the base branch, with the repository's own layout by @DimitrijeGlibic in #9197
- fix(snapshots): a failed Platinum template build names its cause by @kubet in #9198
- fix(config-releases): relative OpenCode instructions read the release, not /workspace by @DimitrijeGlibic in #9199
- feat(session): show the model that answered and what it cost by @DimitrijeGlibic in #8759
- feat(web): link the App Store and Google Play listings on /download by @sutharjay1 in #9202
- fix(web): Edit on a message queued during boot keeps its files by @Ino-Bagaric in #9204
- Promote e4d68df (store links on /download) to staging by @sutharjay1 in #9203
- fix(deps): seroval 1.6.3 and source-map-js 1.2.2 for three new CVEs by @markokraemer in #9207
- Promote main 34c9f9d to staging by @markokraemer in #9210
- Release v0.13.51 — See the model behind each answer, pi 1.0, and config releases that follow your repository by @github-actions[bot] in #9196
Full Changelog: v0.13.50...v0.13.51