Skip to content

Kody v2026.08.15

Choose a tag to compare

@kody-bot kody-bot released this 15 Aug 10:01
· 14 commits to main since this release
5817077

Kody v2026.08.15

This release closes the biggest gap in package apps: your attached remote connectors now work everywhere Kody builds a caller context, not just in chat. We also shipped an interactive Google OAuth walkthrough, stabilized client navigation so blog and guide pages stop looping, and pinned homepage scroll restoration so refreshing a scrolled page lands in the same spot every time.

New

  • Package apps, services, and subscriptions can now call attached remotes. If you've connected a remote connector in /account/remote-connectors, it's already the grant — but until now, package apps, package services, and subscription handlers couldn't see those connectors the way chat and execute can. You can now use kody.remote["home"] from any of those background contexts, and nested package invocations inherit the same refs. (#1451, #1453)

  • There's a new interactive Google OAuth guide. When inbox reading requires your own Google credentials, Kody now walks you through the Google Auth Platform one step at a time — refusing to accept secrets in chat, sending a prefilled connect URL, and smoke-testing your Gmail profile when you're done. It lives at /guides/google-oauth and shares the same interactive transcript UI as the How Kody works walkthrough, which now plays as a real coding-agent conversation. (#1448)

Improved

  • Homepage scroll restoration no longer drifts on refresh. If you scrolled to a mid-page section and hit refresh, the page used to land slightly off — and each refresh made it worse because the browser clamped an early scroll to whatever the document height was before fonts and images settled. The restorer now holds the saved position until the document is tall enough to reach it, so repeated refreshes land on the exact same scrollY every time. (#1444)

Fixed

  • Client navigation no longer infinite-loops on blog and guide pages. When a SPA navigation fell back to a client route fetch and Remix aborted the fetch on a re-render, the blog, blog-post, guides, guide-detail, timeline, and account-stars loaders would re-queue indefinitely until the scheduler's update guard threw. Route loads now latch the pending href with a per-attempt guard, so an aborted fetch clears only its own attempt and a newer load for the same path stays intact. (#1449, #1450, #1452)

  • Admin audit log queries no longer fail on negative IDs. SQLite integer primary keys can be negative — especially for legacy or manually inserted rows — and the audit log schema was rejecting them. The validation constraint is gone, so admin_audit_log_query parses every valid entry again. (#1447)