OpenKnowledge

v0.42.3

Part of the OpenKnowledge changelog.

Patch Changes

  • Agents started from the desktop app now launch even when their CLI was installed through a JavaScript package manager's global bin (pnpm, bun, Volta, Yarn, or npm's user prefix). A desktop app opened from the Dock or Finder inherits a minimal PATH that omits locations like ~/Library/pnpm and ~/.bun/bin, so an agent such as Pi that ran fine in a terminal would fail to start with a "command not found" error. Agent and terminal launches now append the well-known tool directories and package-manager global bins to PATH — the same approach already used for git — so these agents start correctly. When a command still can't be found, the error now explains that Dock/Finder-launched apps don't see your shell's PATH.

  • You can now queue messages to an in-app agent while it's still working. Sending mid-turn no longer fails with "a turn is already running" — the message joins a queue and is sent automatically as soon as the current turn ends, in the order you wrote them. Queued messages appear between the transcript and the composer, where each one can be edited in place or removed before it runs. Stopping the agent clears the queue, and it's never saved to disk, so a crash mid-turn can't resurrect messages you never sent. Up to 20 messages can be queued at once.

  • In-app agent (ACP) threads: four improvements.

    • Numbered lists in agent replies no longer render off-screen. Ordered- and unordered-list markers were being clipped off the left edge of the narrow thread panel; lists now get inline-start padding so their markers stay on screen.
    • Agent settings persist per agent type. Picking a model, reasoning effort, or agent mode in a thread is remembered for that agent, and the next thread you start with the same agent opens on those settings — applied before the first turn (model first, so dependent options like thought level re-validate).
    • A mode that lets the agent act without asking is marked. Because modes carry across threads, a permissive one — Claude's Bypass Permissions and Accept Edits, Codex's Agent (full access), Gemini's YOLO and Auto Edit, goose's Auto — puts a small amber dot on the settings button, with a hover tooltip spelling out what it allows. (Cursor exposes no permissive mode over ACP, and goose's Smart Approve still prompts for risky steps, so neither is flagged.) The marking follows whichever mode is actually in force, whether you just picked it or it carried over from your last thread. It's a recognition heuristic over the mode's name, so it's a hint, not a guarantee — it never blocks or changes a mode.
    • Thread transcripts are stored globally in ~/.ok/threads/ (alongside the existing ~/.ok/acp-agents and ~/.ok/runtimes) instead of per-project, so they survive project-folder moves. Each project still sees only its own threads (matched by working directory). Threads created before this change are read back from their old per-project location — nothing to migrate. Per-project tool-permission grants are unchanged.

View v0.42.3 on GitHub