Skip to content

v0.9.2 — Headless fix & chat UI polish

Latest

Choose a tag to compare

@AdamMagued AdamMagued released this 04 May 12:00
· 810 commits to main since this release

What's new in v0.9.2

🐛 Bug Fixes

Headless mode — Gemini prompts now always send

The browser window was being resized to 1×1 px when hidden offscreen. This collapsed CSS layout so Gemini's <rich-textarea> got offsetParent = null, causing isVisible() to return false, findGeminiInput() to return null, and prompts to silently never be sent.

Fix: the hidden browser window is now set to 1024×768 while remaining at position (−10000, −10000) — invisible to the user, but with a valid viewport that keeps the DOM layout intact.

Fixes #1.

Chat UI no longer refreshes after Kim answers

After Kim completed a task, the welcome section (browser provider picker, What Kim can do, example prompts, keyboard shortcuts) was re-appearing at the top of the scroll container. This pushed the conversation messages down, creating a visible "scroll reset" that forced the user to scroll back down.

Fix: a hasSentMessageRef now latches to true the moment the user sends their first message and stays true for the entire new-chat session. The welcome section is permanently hidden from that point on.

Cancel widget scoping

The cancel widget (stop button overlay) now only appears when Kim actually takes a screenshot — simple tasks run without it.

Browser provider — no system prompt re-injection

The system prompt was being re-injected into the browser LLM on every task iteration. Fixed to inject once per session.


📦 Changelog since v0.9.1

  • fix(headless) — browser window viewport 1×1 → 1024×768 so isVisible() works offscreen
  • fix(chat) — welcome section permanently hides after first message sent
  • fix(chat) — scroll reset after task completion resolved as side-effect of above
  • fix(ui) — cancel widget only shown when agent is taking screenshots
  • fix(browser) — stop re-injecting system prompt on every task
  • fix(ci) — stable Node 20 + improved npm cache in GitHub Actions
  • fix(rust) — clippy warnings cleaned up