# Changelog # 0.2.101 — 2026-07-13 ## Features - **grok inspect** now shows effective compatibility settings for Cursor, Claude, and Codex sessions. - **New setting** "Match display refresh rate" lets high-refresh displays run the TUI at native cadence. ## Bug Fixes - **Parked subagent status** no longer duplicates or interleaves incorrectly in scrollback. - **Status line** during waits now shows elapsed time before the queued-message hint. - **Queued messages sent with Enter** now appear immediately instead of vanishing briefly. - **Resume hint** after quitting minimal mode now prints the correct grok --minimal --resume command. - **Rate-limit messages** now correctly direct API-key users to team plans instead of personal upgrades. # 0.2.100 — 2026-07-13 ## Features - **Session picker** now discovers and resumes recent Claude Code, Codex, and Cursor sessions. - **Welcome screen** now offers a one-click resume nudge for recent Claude, Codex, or Cursor sessions. ## Bug Fixes - **Web fetch tool** preserves full truncated page content as readable artifacts instead of discarding it. - **Multiline mode** now correctly sends the top queued message on empty Enter when a turn is running. - **Queued commands** no longer disappear or delay when pressing Enter twice quickly during a running turn. - **Minimal mode** text is now readable on dark terminals with proper contrast and highlighted user prompts. - **Grok no longer crashes** when printing resume hints after the terminal pane has closed. - **Long-running turns** with multiple waits now show updated status markers in the transcript instead of appearing stuck. - **Claude and Cursor hooks** are now correctly disabled at session start when disabled in config. # 0.2.99 — 2026-07-12 ## Features - **Multiline input** now works on the agent dashboard the same way it does in regular sessions. - **PageUp and PageDown** now scroll the conversation while the prompt is focused. - **Keyboard Shortcuts** modal now follows Vim mode navigation keys when enabled. # 0.2.98 — 2026-07-12 ## Breaking Changes - You can now pin authentication to API key or OIDC in config.toml; the unpinned method is no longer tried automatically. ## Features - **`/context`** now shows token costs for skills and MCP servers. - **`env_key`** in config now accepts an array of environment variable names. - Linux middle-click paste from the primary selection now works; clipboard errors are handled more reliably. - **/terminal-setup** now shows your terminal's color support level and which themes are available. - **grok setup --json** prints your team's managed configuration without installing it. - Messages you type while the model waits on tasks now stay queued; pressing Enter twice sends them immediately by cancelling the current turn. - **How-to Guides** modal now shows a tip linking to Ask Grok above the footer shortcuts. - **Subagent** `task` and `spawn_subagent` tools now accept an optional `model` parameter in the CLI. - **Keyboard Shortcuts** modal now lists the paste key binding for images under the Input section. ## Bug Fixes - A `pre_tool_use` deny now feeds the reason back so the model can retry instead of cancelling the turn. - Plan mode now strictly rejects edits outside the plan file, even under always-approve. - **Web search** and X search no longer fail when both a local function tool and the backend hosted tool are active. - **Content-filter refusals** from providers now show an explanation instead of ending silently with no output. - **SQLite databases** no longer cause bus errors on network filesystems such as NFS. - **Resuming** a session that is already open now focuses the existing view instead of creating duplicates. - **Turn completion** markers in scrollback now read "Worked for …" instead of "Turn completed in …". - **/btw** loading spinner now animates correctly when the main session is idle. - **Mid-turn** wait spinners now correctly show "Waiting on task output…" instead of Thinking. - **Scrollbar thumb** is now visible in the oscura-midnight theme. - Status messages for background work now end with a period. - **Editing queued prompts** no longer freezes the terminal or duplicates text into the composer. # 0.2.97 — 2026-07-11 ## Features - **Headless JSON output** now includes token usage and cost per prompt and session. - **SDK turns** now expose detailed token usage and cost information via Turn.usage. - **Double-click or Enter** on a previous user message now lets you edit and resubmit it directly from the transcript. - **Text selection** in scrollback now works better when starting on chrome, gaps, or while scrolling. - **Shell commands using `rg`** (ripgrep) no longer require permission prompts by default. - **Voice mode** is now available for API-key sessions. - **New environment variables** allow tuning scroll and draw cadence for high-refresh displays. ## Bug Fixes - **Background tasks** started by the model in headless mode are now killed on exit instead of leaking. - **Agent process leaks** on failed spawns and missing-stdio teardown are now prevented. - **Parked turn markers** no longer appear after interjections and now count down as background tasks finish. - **The /context** tool definitions line no longer shows the cryptic disclaimer suffix. - **Terminal release** waits boundedly for the process to exit and repeated waits share the drain grace. - **Fixed a crash** when the agent asked a question on narrow terminals. - **Fixed misleading keyboard hints** in the /mcps panel in minimal mode. - **Clipboard copy** now reports success correctly when using iTerm2 over SSH. - **Fixed scroll/input conflicts** when plan approval appeared over an open edit block. - **Fixed frequent MCP and skills reloads** that could freeze sessions on devboxes. - **MCP servers using HTTP** (such as streamable HTTP MCP servers) now automatically recover from disconnects. - **Next reset time** in /usage now shows in your local timezone instead of Pacific Time. # 0.2.96 — 2026-07-10 ## Features - **System notifications** now carry structured kind/title/body for better rendering. - **x.ai/pr/status** now reports whether an open PR is in the merge queue. - **Compact mode** now activates automatically on very small terminals. - **Up arrow** on an empty prompt now browses prompt history; `/history` searches it. - **Stop hook runs** now appear inline on the turn-completed line instead of a separate block. - **Subagent rows** now fold into verb-group headers and the tasks pane shows live activity labels. - **Dashboard shortcuts** now advertise ? instead of Ctrl+. on terminals that cannot deliver the latter. - **Double-clicking** scrollback while Text selection is fold/nav now shows a tip offering Ctrl+Y to enable Word select. - **`grok worktree ls`** now works as a short alias for `grok worktree list`. - **MCP tool output truncation** can now be set per-repo in `.grok/config.toml`. - **Auto-send of queued follow-ups** during task waits can now be enabled fleet-wide via remote settings. - **Welcome screen** now offers one-click resume of a recent Claude Code session via ctrl+u. ## Bug Fixes - **Vim `l` key** now opens the selected agent detail view in the dashboard. - **Terminal commands** with no args now run through a shell, matching the CLI. - **Agent teardown** no longer crashes on slim Linux images that lack the ps command. - **Esc** now dismisses an open /btw panel before backing out of a dashboard overlay. - **Resumed grok.com chats** now use the conversation's last model instead of the gateway default. - **JetBrains terminals on Windows** now default to minimal mode to avoid raw mouse-report leaks in the prompt. - **Skill token highlights** now survive line wraps and the slash menu opens when typing / before existing text. - **Truncated or tiny images** are now dropped before sending and previously poisoned sessions self-heal on restart. - **Session switch hints** after `/new` or fork now show the working command in minimal mode. - **Progress bars** in Ghostty and WezTerm now stop correctly for parked task waits. - **`/effort`** now rejects levels the current model does not support instead of sending a bad value to the API. - **`/recap`** on a fresh session now says "No messages yet" instead of failing. - **Monitor and system messages** no longer appear as user prompts when resuming old sessions. - **`/rewind`** completion now appears as a brief toast instead of a permanent transcript line. - **Auto recaps** no longer appear under a newer user message when you start typing again. - **Authentication retries** after token refresh no longer hang for minutes or days. - **Text selection tip** no longer appears on the first double-click or on non-assistant blocks. - **Skill slash commands** queued while a turn runs can now be sent immediately with Enter or the interject chord. - **Drag text selection** now works inside the dashboard dispatch input box. - **Multi-line paste chips** in dashboard inputs now support preview and expand like the main prompt. - **Live previews** now always fetch the latest content without browser or CDN caching. # 0.2.95 — 2026-07-09 ## Features - **Teams** can now ship default allowed commands via managed_config.toml (user deny rules still win). - **Mid-turn interjections** now appear as normal user prompts (❯) instead of a separate cyan block. ## Bug Fixes - **IME text input in Otty** no longer attaches unrelated clipboard images on every character. - **Rewind** now fully removes the selected turn from both scrollback and the model's conversation history. - **Queued prompts** now abort long blocking waits instead of waiting for the full timeout. - **File links and media** now work for worktree sessions under ~/.grok/worktrees/. - **Collapsed Read/Edit tool rows** now show only the filename instead of long absolute paths. - **Clipboard copies on Wayland** now succeed even when the terminal loses focus mid-copy. - **User messages queued** behind an auto-wake turn are no longer lost when the user presses Ctrl+C. - **Slash completion** now shows sibling skills that share a frontmatter name and correctly sizes wrapped descriptions. - **Single tool calls** that belong to a verb group now collapse into an aggregated header row. - **Fixed sessions** that became permanently stuck after tool-use history corruption. - **/always-approve** and **/auto** now toggle their mode on and off when run repeatedly. - **Terminal command cards** on grok.com now correctly settle after foreground bash tasks. - **Copy failure** toast now recommends trying /minimal for native terminal rendering. ## Performance - **File watching** on Linux now uses far fewer system resources for large projects with many dependencies. # 0.2.94 — 2026-07-09 ## Features - **/sessions** now opens the Agent Dashboard instead of a separate picker. - **New /goal ** slash command** is now available when the workspace supports it. - **grok inspect** now lists skills from [skills].paths and correctly labels bundled vs user skills. - **--minimal** and **--fullscreen** choices are now remembered for future plain grok launches. ## Bug Fixes - **Queued bash commands** promoted at turn end now render their output instead of disappearing. - **Xcode / Foundation ACP clients** can now drive grok agent stdio without silent parse drops on session/* calls. - **read_file** now returns full single-line content (minified JSON, large dumps) instead of silently clipping at 2000 characters. - **Background task** command preambles with newlines now render on separate lines instead of collapsing. - **Text selections** now highlight uniformly even over inline code, links, and syntax-colored spans. - **grok --minimal** now supports native drag-select on classic Windows conhost terminals. - Skill tokens such as /pr-workflow are now highlighted teal when used mid-sentence. - Fixed a crash when a filtered list shrinks while the filter is active. - Scroll lines and scroll speed settings now support fine unit-step adjustments. - Project-specific Claude plugins are no longer visible outside their project directory. - First prompt no longer stalls for many seconds on large repositories while the filesystem watcher starts. # 0.2.93 — 2026-07-08 ## Breaking Changes - **Esc** no longer cancels a running turn; use **Ctrl+C** instead. Double-Esc rewind now works while focused on scrollback. ## Features - MCP permission prompts now show the planned arguments so you can judge what the tool will actually do. - The "Managed by grok.com" link in the Extensions modal is now clickable and underlined. - Dragging inside rendered markdown tables now selects whole cells or rectangular ranges and copies as TSV. - Shift+Tab now goes straight to Plan mode when the plan-mode tip is showing. ## Bug Fixes - **grok --minimal** now aligns the prompt, status bar, and messages flush-left with the welcome card. - **/plugins** no longer lists never-installed Claude marketplace entries and now groups plugins by their real source. - Successful image compression no longer leaves a permanent line in the transcript. - **--no-ask-user** now also disables ask_user_question for subagents. - **--no-ask-user** now also disables ask_user_question for subagents. - **Fixed a crash** shortly after launch on some systems caused by the telemetry exporter. # 0.2.92 — 2026-07-08 ## Features - **/minimal** and **/fullscreen** commands let you switch the current session between minimal and fullscreen modes. - **ask_user_question tool** can now be enabled or disabled via config.toml, environment variables, or remote flags while defaulting to on. ## Bug Fixes - **User-run shell commands** now display their complete output after finishing instead of silently dropping middle lines. - **Edit tool output** now correctly highlights multi-line strings and scopes that previously spilled across hunks. - **Always allow** grants for MCP, web_fetch and bash now take effect immediately in auto mode without re-prompting. - **Cmd/Ctrl+click** on bare http(s) links now opens only once on Warp terminals. - **Cmd/Ctrl+click** now works on imagine media paths and URLs that wrap across multiple terminal rows. - **grok update** on Windows no longer fails when a previous.old executable is still running. ## Performance - **Pasting images** on macOS is now ~65× faster by reading the pasteboard directly instead of via osascript. # 0.2.91 — 2026-07-07 ## Bug Fixes - **Voice dictation indicator** and stop button now remain visible and clickable during plan mode review. - **New Worktree dialog** now expands to show long names and scrolls with a leading … when the terminal is narrow. # 0.2.90 — 2026-07-07 ## Features - **New /minimal and /fullscreen slash commands** let you switch the current session between minimal and fullscreen modes without quitting. - **Session titles** from /rename now appear on the prompt box border after resume. - **grok models** banner now correctly reports per-model API keys and deployment keys. - MCP tool output size limit is now configurable via environment variable, config.toml, or remote settings (default unchanged). - Chat conversations listed in the unified sidebar can now be renamed or deleted from the desktop app. - You can now add a local directory as a plugin marketplace source with `grok plugin marketplace add`. - **Auto permission mode** now prompts far less often on routine development commands. - Short media paths the model prints (images/1.jpg) are now clickable and open the file. - **Preview** now prefers common dev ports like 8080 when multiple HTTP servers are detected. ## Bug Fixes - **Model list now refreshes** after upgrading from a free to a paid subscription tier. - **Extensions modal** now shows clearer enable/disable and install hints that match what each key actually does. - **Folder trust** no longer prompts for or scans the entire home directory when it is a git repo. - **Code blocks** no longer lose their background shading on the final line of unterminated fences. - **Plan mode** now activates immediately when toggled during an active turn instead of waiting for the next prompt. - Clicking back into the terminal window now focuses the prompt immediately when a permission or plan-approval panel is waiting. - Paths the model emits inside quotes no longer end with literal backslash-n characters and cause file-not-found errors. - **Next reset** time shown by /usage is now correct during daylight saving time. - The ask-user-question tool now waits up to 30 minutes by default before timing out. - The free-usage paywall no longer offers a Try Again button. - Inline images no longer bleed through when entering or leaving the fullscreen subagent view. - The [Open Image] button under generated media is now colored like a link. - **Preview routing** now auto-selects well-known ports like 8080 even with framework signals on obscure ports. - **Login screen** now centers the authentication URL when it fits on one line. - **Enter key** now queues follow-ups by default while the agent waits on task output. # 0.2.89 — 2026-07-07 ## Features - **Voice dictation** now works on Linux (requires pipewire, pulseaudio-utils or alsa-utils). - **New /auto slash command** switches to classifier permission mode; the menu now shows only the other mode. - **--effort** and **--reasoning-effort** are now interchangeable CLI flags for setting reasoning effort. - **Image edits** now use the higher-quality Imagine model for better output. ## Bug Fixes - **Try Again** on the free-usage paywall now correctly resubmits after rate-limit retries. - **Cursor** now respects your terminal's default blink style instead of always blinking. - **Skill commands** in scrollback now highlight only the command name, not the arguments. - **Plan files** now default to.grok/plan.md to match Grok conventions. - **LaTeX math** renders correctly for display equations and complex subscripts. - **Queue hint** in the terminal no longer shows incorrect bold text on part of the message. ## Performance - **Git operations** like rebase no longer cause long pauses from repeated full-repo scans. # 0.2.88 — 2026-07-06 ## Features - **Scrolling** feels smoother with better trackpad and wheel handling plus configurable speed and mode. - **Session search** now returns tighter multi-word results and handles filenames and plurals better. - **Session picker** now always searches conversation content for queries of two or more characters. - **Tool call grouping** is now enabled by default, folding consecutive reads and searches into single rows. - **Plugins tab** now supports `u` to update the selected plugin and shows non-blocking success feedback. - **Reasoning effort** used for a session is now recorded in summary.json and conversation history. ## Bug Fixes - **Session content search** now correctly indexes messages containing escape sequences like newlines and quotes. - **Formatted links** now keep their link color when wrapped in bold, italic, or strikethrough. - **Resuming sessions** no longer fails permanently when history files contain corrupted lines from interrupted writes. # 0.2.87 — 2026-07-05 ## Features - **Subscription upgrades** are now detected automatically without restarting the CLI. - **Bash permission prompts** now offer a "Never allow" choice that persists the deny rule. - **New `/docs` slash command** opens How-to Guides picker, browses web docs, or jumps directly to a guide by title. - **Per-model reasoning effort menus** are now configurable from the server and config.toml without a client release. - **Finished thinking blocks** now fold into grouped tool-call rows when group_tool_verbs is enabled. ## Bug Fixes - **--minimal** mode now always uses your terminal's own colors so text stays readable on any background. - **Invalid fields** in [model.*] config blocks no longer cause the whole model to disappear from the picker. - **File tools** no longer target paths with literal trailing newlines or whitespace from model output. - **Fixed interactions** in no-freeform question modals so clicks below the last option no longer enter input mode. - **Background tasks** now correctly wake the agent after a cancelled blocking wait instead of staying idle. - **Copying quoted text** from rendered responses no longer includes the quote bar prefix in pretty mode. # 0.2.86 — 2026-07-04 ## Features - **Voice language** setting now lets you pick speech-to-text language (including System) in the Editor settings. - **Tab autocomplete** now suggests your next prompt as ghost text after each turn. - **/usage** (and /cost) is now hidden for free and X Basic personal accounts. - **Media generation** no longer hits per-session file limits; image and video byte budgets increased. ## Bug Fixes - **--minimal** flag now shows in `grok --help`. - **Session resume notifications** no longer appear when a workspace boots for the first time. - **Claude-style Bash(cmd:*)** permission rules are now correctly translated to prefix matches. # 0.2.85 — 2026-07-03 ## Features - **Pressing Enter** on an empty prompt now sends the top queued follow-up immediately while a turn is running. - **Tool call grouping** can now be enabled via config.toml or settings to collapse consecutive read/search/list calls. - **Consecutive tool calls** of the same kind can now be folded into a single row when group_tool_verbs is enabled. - **Subagent conversations** now receive the same type-specific instructions in gateway chat as in the CLI. - **Scheduled automation tasks** now show their header panel correctly in gateway chat sessions. - **Promotional announcements** now appear with clickable CTAs and can be non-dismissible. - **Subagents** now run in the background by default unless explicitly set to false. ## Bug Fixes - **Permission prompts** now correctly wrap long bash commands while preserving structure and quotes. - **Claude Code settings** with permissions.defaultMode are now correctly honored. - **Project skills and commands** are now discovered even when their directories are gitignored. - **Inline LaTeX math** with padding spaces now renders correctly instead of showing raw dollar signs. - **Manual /recap** now works on the same turn and long auto recaps are hidden from view while still saved. - **Always allow** for common commands like ls and git status now remembers just the command instead of extra arguments. # 0.2.84 — 2026-07-03 ## Features - **Announcements** now update live during active sessions without restart or `/new`. - **Hiding** an announcement no longer suppresses later criticals; new ones reappear automatically. - **run_terminal_cmd** now requires a one-sentence `description` rationale in every invocation. - **ask_user_question** timeout policy is now configurable in config.toml and `/settings`. - **Ask-Question timeout** can now be toggled from `/settings` (Agent & Approval). - **Thinking/reasoning blocks** are now shown by default while the model is working. - **Critical announcements** now show a red title with a clickable [hide] button and aligned message. - **Added remote_fetch option** under [features] in config.toml to disable all backend catalog and settings fetches for air-gapped environments. ## Bug Fixes - **Images** pasted or read from GIF, BMP or TIFF files are now automatically converted so they work with image generation. - **Queue panel** now shows action buttons on hover and the status bar displays a compact done/total task count. - **Hook matchers** now correctly see the real MCP tool name instead of the internal dispatcher name. - **Copy** now succeeds when running inside containers even when the terminal brand cannot be detected. - **Tool result previews** no longer paint opaque panels in `grok --minimal`. - **grok wrap** now correctly handles quoted strings and shell aliases. - **Text selection** settings now correctly honor explicit keep_text_selection values even when legacy keys remain. - **Fixed a freeze** that could occur when editing and sending the last message in the queue. - **Fixed a startup crash** on minimal Linux systems lacking system CA certificates. ## Performance - **Grep** now stops early on broad searches, returning faster results with far less memory use. - **Idle CPU and memory** usage after long sessions or resume is now dramatically lower. # 0.2.83 — 2026-07-02 ## Features - **Critical announcements** now appear in a top banner during active sessions with a hide command. - **Pasting the same text again** next to a paste chip now expands the chip into editable text instead of duplicating it. - **Paste preview** now shows a hint explaining how to expand the chip. # 0.2.82 — 2026-07-02 ## Features - **Managed connectors links** now include the team ID when opening from a team session. - **AGENTS.md files** are now discovered and shown for workspace/hub sessions. - **Chat conversation titles** from the gateway are now shown in the sidebar. - New `/effort` slash command changes reasoning effort on the active model. - Double-click a pasted text chip to expand it into editable text. ## Bug Fixes - **Skill descriptions** are now recovered correctly even when frontmatter YAML is malformed. - **[Esc] hint** in /btw panels now stays visible even on narrow terminals. - **Background monitors** now wake the agent on natural exit the same way bash tasks do. - Long option labels in question prompts are now always visible instead of disappearing when unfocused. - Pasted text preview now appears immediately after inserting a paste chip. - Hex color codes now render as colored dots with no extra space. - Pressing voice on the welcome screen now starts a new session. # 0.2.81 — 2026-07-01 ## Features - **Chat sessions** no longer send workspace binding hints that belong to the backend. - **New stream transforms** let hosts hide, unwrap, or rewrite tool calls for display without affecting agent transcripts. - **cancel()** now accepts a timeout so a stuck turn cannot hang the session forever. - **Run tool blocks** now show the model's description as the main title when provided. - **Hex color codes** in prose now render as colored dots on truecolor terminals. - **New setting** "Show thinking blocks" controls whether agent reasoning is visible in the scrollback. - **Spinners** now show the description or short command of the task being waited on when available. ## Bug Fixes - **Fixed sessions** that remained stuck on the thinking indicator after the model finished responding. - **Mermaid diagrams** now correctly display angle brackets and symbols instead of literal HTML entities in labels. - **Recap requests** no longer trigger context-length 400 errors on long conversations. ## Performance - **Grep searches** now time out after 20 seconds by default (60s on WSL) instead of always waiting 60s. # 0.2.80 — 2026-07-01 ## Features - **Command timeouts** can now be configured per-session with a foreground-only ceiling. - **Background tasks and TODO lists** now survive compaction and remain visible to the model. - **Voice dictation** STT feature: uses Ctrl+Space or F8, with optional hold-to-talk on supported terminals. - **Contextual hints** can now be toggled individually for undo, plan mode, and image input. ## Bug Fixes - **Subagent dialogs** now reliably show full transcripts on open and reopen. - **Recap blocks** now copy only the summary body, not the header label. - **Vim navigation keys** now type into dashboard prompts; modals properly handle Esc/Left. ## Performance - **Network connections** are now more resilient to proxy/LB drops. # 0.2.79 — 2026-06-30 ## Features - **Contextual hints** now show shortcuts like plan mode or clipboard paste when relevant. - **Graceful shutdowns** now allow interrupted turns to resume with a configurable pause budget. - **Grok.com chat sessions** now integrate fully with the gateway bridge for model catalog and resume. ## Bug Fixes - **Question prompts** now time out after 6 minutes instead of blocking forever. - **Fixed a crash** that could occur during conversation integrity repairs while a turn was active. ## Performance - **Compaction** can now run part of its work in the background before it blocks the session. # 0.2.78 — 2026-06-30 ## Features - **Chat sessions show the grok.com model catalog** in the picker. ## Bug Fixes - **Tabs pasted into the prompt** now align correctly with proper cursor positioning. - **Pasting images into dashboard peek replies** now works and survives turn cancellation. - **Links in /btw panels** are now clickable and highlight on hover. - **Prompt history is now saved** even on fast Ctrl+C quit. - **Stuck scrollback text selection** can now be cleared with Esc or any non-drag input. - **LaTeX math now renders** inside markdown tables in the TUI. - **Background shell commands** started by the agent are now cleaned up when the CLI exits. ## Performance - **`grok update`** downloads have a longer timeout. # 0.2.77 — 2026-06-30 ## Features - **Pasting images** from the local clipboard now works when running commands through `grok wrap`. - **Turn status spinner** now shows what the agent is waiting on (response, subagent, task output, etc.). - **Double-click word selection** is now a discoverable option in the Text selection setting and stays in sync with highlight behavior. ## Bug Fixes - **Credit limit errors** now show clearer upgrade or buy-credits messaging based on billing type. # 0.2.76 — 2026-06-30 ## Features - **Auto permission mode** is now added to the top of Shift+Tab cycles and enabled by default in settings. - **grok agent stdio** now checks for updates in the background like other modes. ## Performance - **Idle sessions** no longer send repeated empty frames to the terminal, reducing CPU usage in the terminal emulator. # 0.2.75 — 2026-06-29 ## Features - **Prompt history** (Up arrow / Ctrl+R) now shows only the current session's prompts, with the newest selected at the bottom. # 0.2.74 — 2026-06-29 ## Features - **Esc now cancels a running turn immediately**; double-Esc clears prompt or opens rewind when idle. - **grok wrap** now shows copy success over SSH and suggests native drag-select when paste fails. ## Bug Fixes - **Clipboard copy** now succeeds reliably on Wayland and KDE desktops instead of showing false positives. # 0.2.73 — 2026-06-28 ## Features - **Keep text selection highlight** setting added so drag selections stay visible until dismissed. ## Bug Fixes - **Doubled lines** after tab switches or focus changes in tmux or editor terminals are now healed. - **Clipboard copy** now only shows success when the pasteboard actually received the text via a trusted path. # 0.2.72 — 2026-06-28 ## Bug Fixes - **No longer triggers browser login** at startup when an API key is already configured for inference. # 0.2.71 — 2026-06-27 ## Bug Fixes - **Fixed `grok agent stdio` hangs** on Windows when used with persistent clients such as VS Code. # 0.2.70 — 2026-06-27 ## Breaking Changes - **Added `grok wrap`** to run any command with local clipboard support. ## Features - **Ctrl+4** now toggles the prompt queue on local macOS VS Code terminals. ## Bug Fixes - **Session recaps** (/recap and return-from-away) now show the full summary instead of being cut off mid-sentence. - **Vim mode** now focuses the prompt when you press / on a brand-new empty session. - **Fixed `grok agent stdio` startup hangs** on Windows when used with persistent clients such as VS Code or grok-desktop. - **`/mcps` list** no longer shows stale disabled entries when managed gateway tools are enabled. - **Mermaid diagrams opened via [Open Image]** now render at higher resolution instead of terminal size. - **Pressing `r` in scrollback** no longer accidentally rewinds the session. - **Shortcuts cheatsheet** now shows Ctrl+X on terminals that cannot deliver Ctrl+. - **Folder trust prompts** no longer re-appear for every standalone worktree clone. - **Reasoning effort** no longer silently resets from a user-chosen value after catalog refreshes. - **Fixed clipboard copy** inside editor terminals nested in tmux by emitting plain OSC 52. # 0.2.69 — 2026-06-26 ## Features - The agent dashboard now shows each agent's model and mode in the peek panel, lets you cycle modes with Shift+Tab, collapses the Inactive section by default, and hides older idle agents behind a "N more" row. - Tool usage cards for search, directory listing, file deletion and glob now render as distinct typed cards instead of generic MCP entries. - The keyboard shortcuts help now shows richer descriptions and correctly scrolls wrapped text in the detail view. - You can now pass --json-schema to grok -p and receive a validated JSON object instead of free text. - **Ctrl+L** now interjects mid-turn in VS Code, Cursor, Windsurf, and Zed terminals. ## Bug Fixes - Local plugins installed from your home directory are now automatically refreshed when you start a session, so new agents or skills added to the source appear immediately. - The /context command now reports the same number of tool definitions that are actually sent to the model. - In vim mode the agent dashboard peek no longer steals keyboard focus from the list, so j and k keep moving between agents. - **/sessions** on the agent dashboard no longer freezes the interface. - **Dashboard** now focuses the overview list immediately when agents exist. # 0.2.68 — 2026-06-26 ## Features - **MCP servers** from host integrations can now be added, replaced, or removed without restarting the session. - **Agent-run terminal commands** now set `GROK_AGENT=1` so host tools can tell them apart from interactive shells. ## Bug Fixes - **Attached images** are now saved to real disk paths so the model can read them in any terminal. - **/resume** now selects the correct model when a saved model name is ambiguous. - **Slash and completion menus** no longer crash if the terminal is resized while open. # 0.2.67 — 2026-06-25 ## Features - **Added --json-schema** flag for headless mode to constrain model output to a supplied JSON Schema. - **Idle detection** can now ignore background tasks when the env flag is set (off by default). ## Bug Fixes - **Preview panes** no longer hibernate while actively viewed or polled. - **Manual /rename** now persists correctly and appears in /session-info even after auto title generation or resume. ## Performance - **Find and grep** now transparently use faster bfs and ugrep binaries when present in the harness. # 0.2.66 — 2026-06-25 ## Features - **Custom sandbox profiles** can now kernel-deny specific files and directories for reads/writes. - **Marketplace plugins** in subdirectories of a git repo can now be installed and loaded correctly. - **Folder trust prompt** now appears before starting a session when the feature is enabled. - **Preview panes** no longer hibernate while actively viewed. - **Keyboard shortcuts help** now expands inline for individual entries instead of only sections. - **Idle detection** can now ignore background tasks when the env flag is set (off by default). - **Sandbox deny lists** now accept glob patterns like **/*.pem** in addition to exact paths. ## Bug Fixes - **Local MCP servers** now auto-recover after disconnects or session expiry. - **OIDC sessions** with XAI_API_KEY present no longer lose refresh on idle. - **Inline video previews** now show an install command only when the package manager is on PATH. - **list_dir** now reliably shows all immediate child directories even inside large monorepos. - **Clicking a model** in the dashboard /model dropdown no longer opens the wrong session. - **Strikethrough** now only applies to ~~double tildes~~; single ~tildes~ render literally. - **Session cycling** with Ctrl+[ / ] now switches from the session you are currently viewing. - **Prompt history** (Up / Ctrl+R) now shows the complete recent list instead of a scrambled partial one. - **Authentication** now correctly prefers the session method when both API key and cached token are present. - **xychart-beta** diagrams with category labels now render correctly as images. # 0.2.65 — 2026-06-24 ## Features - **grok -w --ref ** now creates worktrees based on the specified ref instead of HEAD. ## Bug Fixes - **Unidentified Windows consoles** are now treated as Windows Terminal for capability decisions. - **Esc** in the dashboard input now moves focus to the list without clearing your typed draft. - **Copying** a tool header now copies just the path or command, not the Read/Run label. - **Execute activity** lines and headers no longer repeat a redundant cd into the session directory. - **Inline video previews** now show an install hint instead of a spinner when ffmpeg is missing. ## Performance - **Headless and stdio sessions** no longer start unnecessary filesystem watchers, saving CPU and IO. - **Scrolling** feels more responsive in VS Code, Cursor, and Windsurf integrated terminals. # 0.2.64 — 2026-06-24 ## Features - **Dashboard** now displays the current directory and branch; click or press Ctrl+L to change location, or Ctrl+W to dispatch new agents into fresh git worktrees. - **/recap** now appears as a collapsible tool-style block with a loading spinner while generating. ## Bug Fixes - **Dashboard** arrow keys open agent details and exit overlays; closing an agent now selects the neighboring row. - **/usage** command and credit warnings are now hidden for API-key authentication. - **MCP servers** from your user config no longer appear labeled as project-scoped when running from your home directory. # 0.2.63 — 2026-06-23 ## Bug Fixes - **Fixed hook matchers** so pipe-list and alias patterns no longer silently over-match unrelated tool names. # 0.2.62 — 2026-06-23 ## Features - **Hosts can now register hooks** over the agent connection instead of only on-disk files. - **Prompt and /usage warnings** now correctly reflect prepaid credits and auto top-up status. - **Desktop clients can now detect** when a terminal is busy running a foreground process. - **TODO list** remains visible to the model after compaction so it can continue working on pending items. - **/recap** is now available by default — it generates a quick summary of your current session so you can catch up on what's happened so far. ## Bug Fixes - **MCP server connections** no longer time out during slow cold starts of stdio servers that download dependencies. - **File paths containing spaces** (e.g. macOS app bundles) are now correctly turned into clickable hyperlinks in the terminal. - **Resume** now correctly picks the most recently active session instead of one that only had metadata updates. - **/goal** slash command now appears in the menu on the welcome screen before any prompt is sent when the feature is enabled. - **Session picker** no longer shows a stale row highlight when keyboard focus moves to the search bar. - **Usage percentages** in /usage and warnings now match backend flooring and show pay-as-you-go limits when applicable. - **Team accounts** can now list sessions after re-login; previously returned 403 on conversations API. # 0.2.61 — 2026-06-22 ## Features - **Closing a terminal tab** with a running process now shows a confirmation dialog instead of killing it immediately. - **/usage** now shows prepaid credits balance and auto top-up status. - **Clipboard copy** on Wayland now also tries wl-copy; per-leg outcomes are now logged for diagnostics. - **Goal mode toggles and limits** can now be set in config.toml under the [features] table. - **All /goal options** (toggles, limits, role models) are now configurable together in a [goal] table. - **Clipboard copies** from VS Code over SSH now warn when non-ASCII text may be garbled. ## Bug Fixes - **Focus reports** no longer leak as literal text when split across reads over SSH. - **--disable-web-search** now honored in grok -p and grok agent; auxiliary model routing respects catalog overrides. - **Focus events** now fire correctly for SSH-split focus reports. - **Boolean tool flags** now accept "true"/"false"/"yes"/"no"/1/0 strings and numbers in addition to native booleans. - **Session last-active timestamps** and message counts no longer regress under concurrent writers. - **iTerm2** now always uses text/metadata image fallback instead of broken OSC 1337 overlays. - **Model switches** no longer leave the prompt queue stuck after a reconnect. - **Closing a terminal tab** with a running process no longer shows a confirmation dialog. - **Custom agent profiles** now correctly use the harness required by their pinned model. - **Subagents** under custom profiles now adopt the correct harness from the parent's model. - **Changelog and release-notes** modals now scroll with the mouse wheel and arrow keys. # 0.2.60 — 2026-06-21 ## Features - **/resume** now shows sessions from your current working directory's repo at the top of the list. - **Too-wide Mermaid diagrams** now show a hint below the fallback box pointing to the Open Image button. - **Cancel behavior for running subagents** can now be set to always stop or always continue in config.toml. ## Bug Fixes - **Compaction** no longer hangs indefinitely when the summarizer stream stalls after the server has finished. - **Slash command completion** now shows consistent suggestions and remembers recently used commands. - **Queued prompts** now reappear reliably after deleting the last item and re-queuing. - **Headless sessions** no longer produce authentication error noise from unauthenticated MCP servers. - **Mermaid flowchart labels** with long identifiers are now kept whole instead of being cut mid-word. - **Cmd+Backspace** now deletes only from the cursor to the start of the line instead of clearing the whole prompt. - **Inline Mermaid previews** now break long identifiers at word boundaries instead of mid-segment. - **Signed git commits** no longer corrupt the TUI by letting pinentry draw over the screen. - **Arrow keys** now move the prompt cursor or open history while a /btw answer panel is visible. - **Long option descriptions** in question prompts now expand fully when the row is focused. ## Performance - **Large MCP tool results** are now truncated inline and saved to disk to avoid unnecessary context compaction. # 0.2.59 — 2026-06-19 ## Bug Fixes - **Session recaps** no longer display doubled labels and manual recap now correctly suppresses the next automatic recap. # 0.2.58 — 2026-06-19 ## Bug Fixes - Terminal command output files are now capped at 5 GB during execution and truncated to 64 MB after the process exits. - Interjection messages now display the actual user text instead of a generic header. - The legacy `agent` command is now kept in sync with `grok` after running `grok update`. - Headless (`grok -p`) runs now wait for background tasks and subagents to finish before exiting. # 0.2.57 ## Features - Improved resilience to network blips during long responses by resuming instead of failing the turn. - **`grok plugin install `** now resolves plugins from registered marketplaces instead of only local paths. ## Bug Fixes - Fixed cases where long-running conversation compaction could hang indefinitely. - Notification hooks now fire only for real user-attention events and no longer trigger constantly during tool use. - Fixed literal display of HTML entities such as < and > in responses and tool output. - **Typing `[`** in the pager prompt no longer appears delayed. - **Copy** now tries all available Linux clipboard tools so paste works reliably in more terminals. # 0.2.56 ## Features - **resume_from** now continues a finished sub-agent in place instead of forking a new conversation. - **grok sessions delete ** command now lets you permanently remove a session from the CLI. ## Bug Fixes - **MCP server connections** no longer get torn down during rapid config reloads. - **Stale leader processes** are now cleaned up when leader mode is disabled via config or remote settings. - **Sandbox profile** is now preserved when resuming sessions so commands continue to work as before. - **list_dir** now shows more relevant files when a large directory appears early in alphabetical order. - **Cancel button** in turn status always shows [stop]; queue pane highlight now follows theme changes. - **grok quit** no longer hangs when background git or network tasks are slow. - The token count shown after auto-compaction now matches the context bar exactly. - The git branch icon now renders correctly in iTerm2 without a Nerd Font. - **list_dir** now gives clearer guidance when a directory is too large, using the actual tool names available in your session. - **Ctrl+Enter** now sends the prompt when the agent is idle (same behavior as Enter). - **resume_from** now correctly continues a sub-agent in the same working directory it was using before. - Files with non-ASCII names (e.g. Chinese) no longer crash the session when plan mode checks for markdown. - Session lists (welcome screen, /resume, grok sessions list) are now sorted by the same activity time shown in the UI. - **Fixed bash tool failures** when models send numeric arguments such as timeout as JSON strings instead of numbers. - **Prevented crashes** during bash command output streaming when building progress frames. - **Disabled inline image rendering** on iTerm2 terminals where scrollback overlays cannot be supported. ## Performance - Fast tools like grep now show as completed immediately even when other tools in the same round are still running. - Long sessions that display inline images no longer grow to multi-GB memory usage. # 0.2.55 ## Features - **Added option** to fully disable the hunk tracker via --hunk-tracker-mode, GROK_HUNK_TRACKER, or config. ## Bug Fixes - **Windows install scripts** now download and run cleanly via irm | iex without spurious BOM errors. - **Tables and wide content** no longer leave stray characters next to timestamps in the scrollback. - **Mermaid diagrams** now render node labels cleanly without HTML tags or raw markdown syntax. - **MCP servers using HTTP** now recover automatically after temporary connection drops instead of becoming permanently unavailable. - **Very long sessions** can now scroll all the way to the bottom of the conversation history. # 0.2.54 ## Features - **Rewind** now works end-to-end across conversation and file state with proper CAS handling. ## Bug Fixes - **Git branch icons** now render correctly on Windows without Nerd Fonts. - **Mermaid diagrams** now render inline without the model suggesting external viewers. - MCP connection errors now show the actual failure reason to the model. - MCP servers with noisy stdout no longer disconnect unexpectedly. - **Usage warnings** now always display "Usage left: N%" instead of varying between "Free credits left" and "Credits left". - **Window title** no longer flashes or oscillates during permission prompts while the terminal window is focused. ## Performance - **Fixed pager freezes** and 100% CPU usage when rendering very long agent reasoning outputs with thousands of styled spans. # 0.2.53 ## Bug Fixes - Minor bug fixes. # 0.2.52 ## Features - **Tool auto-approval (YOLO)** state is now tracked end-to-end in server-side agent sessions. - **ER diagrams** now render as entity boxes with attributes and relationships in the TUI. - New "Respect manual folds" setting keeps hand-expanded blocks stable while content streams in. - **Ctrl+X** now stops running turns or closes sessions from inside the agent detail view. - **Grok** can now export usage metrics and events to your own OpenTelemetry collector when enabled. - **WezTerm users** now receive guidance when Shift+Enter fails because kitty keyboard protocol is disabled. - **Long-running sessions** now tell the model when the local calendar date changes past midnight. - **Agent Dashboard** now works without leader mode and shows local idle sessions from disk. ## Bug Fixes - **Fixed oversized session replay logs** that prevented large sessions from loading. - **MCP server connections** no longer flood reconnects on repeated stream errors. - **ZDR and team upload flags** are now populated immediately on login instead of only after background refresh. - **Mermaid PNG export** now handles quoted cardinalities in class diagrams and readable ER rows on dark theme. - **Skill catalog** no longer shows duplicate "Use when:" labels and check-work skill now prompts the model to read its instructions. - Compaction now rejects overly-short summaries that would discard real conversation state. - Background tasks no longer emit spurious failure messages when a session is resumed. - **Fixed Windows path handling** so external tools and model prompts receive clean paths without \?\ prefixes. - **Images and media** no longer remain visible when switching from an agent view to the dashboard. - **Clipboard paste** (Ctrl+V) now works for images on pure Wayland sessions. - **Modals** such as /sessions no longer crash on narrow terminals. - **ptyctl resize** now correctly notifies the child process. - **Concurrent updates** to the same version no longer fail with permission or EEXIST errors. - **Mermaid diagrams** containing CJK or other non-Latin text now render correctly instead of tofu boxes. - **`grok dashboard`** now reliably opens the dashboard instead of silently falling through to a normal session. - **Sessions** no longer remain blocked forever after a transient model catalog outage during reconnect. - **Cancel** no longer leaves the interface stuck on "Cancelling…" after lost responses during reconnects. - **Forked sessions** now retain the parent's full pre-compaction transcripts instead of only the compacted summary. - **web_fetch** errors on GitHub hosts now recommend using the gh CLI when internal access is blocked. - **MCP server connections** no longer hang when stdio servers emit undecodable lines. - **Ctrl+C cancels** now complete in under 50 ms instead of blocking for seconds. - **Repeated varied edit failures** on one file no longer trigger doom-loop warnings or terminations. ## Performance - **Compaction** now reuses cached prompt prefix instead of full prefill. # 0.2.51 ## Breaking Changes - **`grok mcp add`** now accepts positional arguments (e.g. `grok mcp add filesystem -- npx...`), supports --scope project, and adds -e/-H flags for env/headers. ## Features - **Mermaid flowcharts** now render subgraph blocks as titled frames with correct internal and cross-boundary edges. - **Class diagrams** in Mermaid now render as proper UML boxes with attributes, methods and inheritance arrows instead of raw source. - **Permission prompts** now accept a double-click on an option to submit it, matching the existing Enter and number-key shortcuts. - **New /code-review slash command** now ships with the CLI and is always available. ## Bug Fixes - **Plan mode exit reminders** no longer appear after the model has already started implementing the plan. - **Expanded thinking blocks** in scrollback now remain expanded when the agent finishes them. - **`grok update`** no longer downloads the same binary twice when multiple updaters or leader checks run concurrently. - **Background task IDs** after /compact are now shown verbatim so the model can reference them correctly in later tool calls. - **Typing /** while scrollback is focused now focuses the prompt and opens the slash-command dropdown. - **Dashboard empty state** is now a single hint line; dispatch and peek placeholders appear only when unfocused. - **Fixed memory leaks** that could cause the CLI to use tens of gigabytes during long sessions with many tool calls. - **Login on SSH or headless machines** now tells you when the browser cannot be opened automatically and shows the URL to visit manually. - **Fixed git clone failures** on Windows when the CLI tries to clone marketplace plugins into ~/.grok. ## Performance - **Large code blocks** inside lists no longer cause multi-second UI stalls while streaming responses. # 0.2.50 ## Features - **Mermaid flowcharts** now render edge crossings clearly instead of fusing unrelated connections. ## Bug Fixes - **Sequence diagrams** with activate, autonumber, par, and more now render instead of showing parse errors. - **MCP servers menu** and slash commands now work when starting grok outside a project directory. - **Ctrl+W** in the prompt now deletes whole words like bash instead of stopping at punctuation. - **Login** no longer quits when an authentication code contains the letter q. # 0.2.49 ## Features - Marketplace plugin listings now show skills, MCP servers, and commands when the catalog is published. - Mermaid flowcharts now render with fewer avoidable edge crossings. - **stateDiagram** mermaid blocks now render as Unicode diagrams instead of source fallback. ## Bug Fixes - **Skill reloads** no longer corrupt active tool calls or produce duplicate results in the conversation. - **grok --resume** now correctly finds the real session instead of failing on empty image-only folders. - Pasted images and relative paths now use the correct directory when resuming a session created elsewhere. - **Mermaid flowcharts** now correctly render node groups, arrow endings, self-loops and line styles. - **Fixed** "unknown session id" errors that occurred after the leader process crashed or was killed. - **Pasted images** now survive interjections and queue edits instead of being dropped. - **Managed MCP connectors** (Slack, Linear, etc.) now appear correctly when using leader mode. # 0.2.47 ## Features - **stateDiagram** Mermaid blocks now render as diagrams instead of source fallback. ## Bug Fixes - **Pasted images** now survive interjections and queue edits instead of being dropped. - **Managed MCP connectors** (Slack, Linear, etc.) now appear correctly when using leader mode. # 0.2.46 ## Features - **Mermaid flowcharts** now render with fewer avoidable edge crossings. ## Bug Fixes - **Fixed `grok --resume`** failing on empty image-only session folders left by cross-directory pastes. - **Fixed pasted images** and relative paths using the wrong directory after cross-cwd resume. - **Fixed Mermaid flowcharts** that silently rendered wrong diagrams for & groups, circle/cross endings and self-loops. - **Fixed zsh tab-completion** for subcommands after the optional prompt argument was added. - **Fixed "unknown session id" errors** after the leader process crashed or was killed. - **Fixed repeated auto-compaction attempts** when the session is credit-blocked or auth is non-refreshable. ## Performance - **Parallel tool calls** on the same path (multiple greps etc.) now execute concurrently. # 0.2.45 ## Features - **Mermaid diagrams** now render to images when you click Open in a code block (on by default). ## Bug Fixes - **Fixed** rare conversation corruption when skills changed while a tool call was still running. - **Fixed** `grok --resume` failing on empty image-only session folders left by cross-directory pastes. - **Fixed** pasted images and relative paths using the wrong directory after resuming a session from another folder. - **Welcome screen logo** no longer renders as invalid characters on legacy Windows command prompts and PowerShell. - **Fixed** "unknown session id" errors that occurred after the leader process crashed or was killed. # 0.2.44 ## Features - **K/J** keys now snap the viewport to the top of previous or next assistant responses. - **J/K** (vim mode) now navigate between assistant responses in scrollback. - **sequenceDiagram** mermaid blocks now render as Unicode lifeline diagrams instead of source fallback. ## Bug Fixes - **Interjecting** while editing a queued prompt no longer strands the composer or blocks the queue. - **Mid-turn interjections** now appear as separate user messages instead of being appended to tool results. - **Project MCP config** touches no longer trigger repeated reload storms. ## Performance - **Inference requests** recover faster from silent engine stalls instead of waiting the full idle timeout. # 0.2.43 ## Bug Fixes - **ask_user_question** tool can now be enabled in allowlists without requiring plan-mode tools. - **Shift+Tab** mode cycling (Normal → Plan → Auto-Approve) works again in the agent view. - **Ctrl+C** now cancels a blocking `grok update` cleanly instead of leaving an orphaned download repainting the terminal. # 0.2.42 ## Bug Fixes - **ask_user_question** tool can now be enabled in allowlists without requiring plan-mode tools. - **MCP servers** provided at session start now persist across config hot-reloads. # 0.2.41 ## Features - **Compaction completion message** now shows the before → after token reduction instead of only the final count. ## Bug Fixes - **Fixed token count after compaction** so the displayed number no longer jumps back up on the next model response. - **Fixed plugin skill loading** when a manifest lists skill directories directly instead of a parent skills/ folder. ## Performance - **Fixed memory context injection** on resume so the prompt prefix stays byte-stable and KV cache is preserved. # 0.2.40 ## Features - **`grok --debug`** now produces per-session log files under ~/.grok/debug/ even with a leader process. ## Bug Fixes - **Doom-loop warnings** now correctly describe cycles and distinct edit failures instead of claiming identical arguments. - **Model list changes** from config or cache now appear in already-connected TUI and IDE clients without restart. # 0.2.39 ## Features - **run_terminal_cmd** can stream live stdout/stderr chunks when the workspace flag is enabled. - **/session-info** now displays the current turn index. - Server-synced and bundled skills are now discovered from launcher-injected directories. - **Background `&` operator** is now allowed by default in terminal commands. ## Bug Fixes - **Resumed subagents** no longer loop forever during auto-compaction on large context windows. - **Background task** descriptions and & rejection messages now correctly name the real parameters. - **Doom-loop detection** no longer falsely triggers on distinct failing tool calls. # 0.2.38 ## Features - **Watching status line** now appears when background monitors, loops, or subagents can wake the agent. ## Bug Fixes - **Default model selection** now correctly chooses the intended entry when multiple models share a slug. - Minor bug fixes # 0.2.37 ## Features - **MCP tool result queries** now list only command-line tools actually present on your system. - **`grok update`** now restarts any older running leader so all clients get the new binary. - **Long-running bash commands** that hit the timeout are now moved to the background by default instead of killed. ## Bug Fixes - **Subagents** now correctly receive web_search and x_search tools from the parent session. # 0.2.36 ## Features - **Large MCP tool results** are now saved with the correct extension and the model receives better hints for querying them. ## Bug Fixes - **Fixed false-positive doom-loop terminations** when many parallel tool calls fail together in one batch. - **Fixed a crash** that could occur during auto-compaction when resuming a session containing reasoning content. # 0.2.35 # 0.2.34 ## Features - **`grok login`** now defaults to device code flow, which works reliably in SSH, WSL, VPN, and browser-restricted environments. ## Bug Fixes - **Fixed a hang during auth refresh.** # 0.2.33 ## Bug Fixes - **Fixed duplicate turn output** when attaching a second client to an active leader session. - Fixed **Send now** on queued prompts. # 0.2.32 ## Features - **Slash commands** from project plugins now appear correctly in every open conversation after a plugin change. ## Bug Fixes - **Prompts submitted rapidly** now stay in correct submission order in the queue. ## Performance - **Grep searches** on large repositories are now substantially faster and no longer hit the 60-second timeout. # 0.2.31 ## Bug Fixes - **Marketplace skills** without proper descriptions are now hidden from listings instead of flooding the model with tables. - **Prompts submitted rapidly** now stay in correct submission order in the queue. ## Performance - **Grep searches** on large repositories are now substantially faster and no longer hit the 60-second timeout. # 0.2.30 ## Features - A new plugin install suggestion appears above the prompt when you type a known marketplace plugin name or domain. ## Bug Fixes - **Trace uploads** and remote session restores now succeed with a deployment key and no browser login. - **Resumed sessions** no longer pad the sticky prompt with empty rows; cancelling a turn now keeps the rest of the prompt queue intact. - Cancelling a running prompt no longer leaves the interface stuck on the cancelling spinner. # 0.2.29 ## Bug Fixes - **`/rewind`** before a compaction boundary no longer leaves later prompts in context. ## Performance - **Resuming large sessions** is now substantially faster with no data loss. # 0.2.28 ## Bug Fixes - **Images** read via read_file are now downscaled even when small in bytes but large in pixels. # 0.2.27 ## Features - **Image and video generation** tools now include the saved filename and session folder in their output. ## Bug Fixes - **Monitor output** no longer appears as raw XML in the conversation view during leader sessions. - **Windows commands** containing `&` are no longer incorrectly rejected by `run_terminal_cmd`. - **Python -c** save-to-file reminder now suggests correct commands on Windows. # 0.2.26 ## Bug Fixes - **Large pasted content** no longer triggers context-window errors or breaks compaction and memory flush. - **API-key users** can now run `grok agent --leader` without forced interactive login or timeouts. - **Compaction** no longer retries endlessly on credit, size, or auth failures; shows a clear message instead. - **Windows PowerShell and cmd.exe** no longer falsely reject commands containing `&`. - **web_fetch** no longer crashes the CLI on pages whose root element matches a cleaning selector. # 0.2.25 ## Bug Fixes - **Session titles** now generate reliably even for very long initial messages. # 0.2.24 ## Bug Fixes - Minor bug fixes # 0.2.23 ## Features - **Leader sessions** can now be viewed and controlled from multiple clients with a live dashboard. - **Sessions** can now be deleted directly from the /resume history picker. ## Bug Fixes - **MCP plugin servers** with bundled OAuth client IDs now authenticate correctly. # 0.2.22 ## Bug Fixes - **Authentication errors** with static API keys now surface a clear error instead of hanging the turn. # 0.2.21 ## Features - **allowed_models** in config.toml now restricts which models appear in the picker and `/model` command. ## Bug Fixes - **Code navigation** now returns correct results for secondary project windows with different working directories. # 0.2.20 ## Bug Fixes - **MCP servers** declared in both a plugin's.mcp.json and plugin.json are now registered instead of dropped. - **Git operations** now correctly target the repository for each session's working directory. # 0.2.19 ## Features - **Monitors** now appear labeled in background-task reminders after compaction and can be terminated by name. ## Bug Fixes - **Reading images** with text-only models no longer triggers repeated 400 errors that brick the session. # 0.2.18 ## Features - **Official xAI plugin marketplace** now appears automatically in the Marketplace tab on first launch. - **Image and video generation** now use api.x.ai directly for all users. - **New image-to-video and reference-to-video tools** are now available for generating videos from images. - **New imagine skill** provides prompt-craft and workflow guidance for image generation and editing tools. ## Bug Fixes - **image_edit** now correctly resolves pasted or attached images referenced as [Image #N]. - **Background subagent completions** are no longer reported twice when the agent is idle. - **Subagents** now use the same model as the parent session by default. # 0.2.17 ## Features - **Image and video generation** tools now emit structured paths so the pager renders media without regex scraping. - **Compaction summaries** now use a more detailed structure that improves recovery after context reset. - **image_gen** can now be enabled via the harness model using [features] in config.toml or the GROK_IMAGE_GEN_HARNESS env var. - **Improved config refresh** on new sessions from the shell. ## Bug Fixes - **--restore-code** no longer detaches the source repository when resuming a forked-worktree session from a different directory. - **Read tool** string coercion bug fixes. - **ICO images** pasted or read from disk are now automatically converted to PNG before being sent to the model. # 0.2.16 ## Features - **New segments compaction mode** writes per-segment markdown files that the model can read to recover pre-compaction detail. - **Claude and Cursor compatibility scanning** (skills, rules, AGENTS.md) can now be toggled individually via env vars or config.toml. - **grok inspect** now shows the resolved on/off state and source for every Claude/Cursor compatibility toggle. - **Cursor MCP servers and hooks** are now discovered and can be disabled independently via GROK_CURSOR_MCPS_ENABLED / GROK_CURSOR_HOOKS_ENABLED. ## Bug Fixes - **Streaming tool output** (bash/write_file) now renders completely in the pager instead of only the latest chunk. - **Streaming bash tool output** now appears correctly in the pager scrollback. - **Routing a native tool** (e.g. scheduler_create) through use_tool now gives a clear corrective error instead of an unrecoverable loop. - **"Starting session..."** spinner no longer gets stuck when zero MCP servers are configured. - **Subagents** now use the correct harness after switching models mid-session. - **Fixed long startup delays** when an external auth provider binary hangs or fails. - **Subagent conversations** no longer receive unrelated monitor events or background task completions from the parent. - **The /loop command** now accepts natural-language intervals instead of always defaulting to 10 minutes. - **Fixed blank output** on completed bash or code-execution cards after shell restart or reconnect. ## Performance - **Large pasted images** no longer bust the prompt cache or exceed the 50 MiB request limit. # 0.2.15 ## Features - **Permission prompts** now remember your last choice across tools and let you configure the first-prompt default in config.toml. # 0.2.14 ## Features - **Generated images and videos** can now be opened directly from the terminal UI via buttons or clicks. - **Background tasks panel** now groups items, supports collapsible sections, and has clearer styling for monitors and loops. ## Bug Fixes - **Session titles** are now generated reliably using a fixed default model. - **--permission-mode** now correctly overrides the permission_mode setting from config.toml when launching sessions. # 0.2.13 ## Bug Fixes - Miscellaneous bug fixes # 0.2.12 ## Features - **Computer connection status** now shows a connecting pill during terminal session initialization. - **/check** and subagents now read and follow full AGENTS.md rules from the repo. ## Bug Fixes - **--max-turns** now correctly counts tool-use cycles instead of total messages. - **@-mention file search** now works again for local agent sessions. - **Rendered images, files, and citations** now replay correctly in chunk-mode history. - **`/context`** now displays the correct auto-compact threshold for the active model instead of always 85%. - **Model responses** are no longer silently dropped when the gateway emits legacy channel values. - **Prompt responses** no longer resolve before the turn's final output chunks reach the client. # 0.2.11 ## Bug Fixes - Minor bug fixes # 0.2.10 ## Features - **`/check`** has been renamed to **`/check-work`**; old command continues to work during transition. ## Bug Fixes - **Images smaller than 8×8 pixels** are now rejected with a clear message instead of producing blocky results. # 0.2.9 ## Features - **Added --device-code** as alias for device authentication and improved headless auth error messages. # 0.2.8 ## Features - **New /login** slash command lets you re-authenticate from within a session without quitting. - **Compaction summaries** now include the full transcript path so the model can reference prior details. - **Cursor skills and rules** are now discovered alongside Grok and Claude directories. ## Bug Fixes - **Fixed monitor tool** schema to show the correct 10-hour default timeout. - **Fixed a panic** that could occur when installing marketplace plugins. # 0.2.7 ## Features - **Image generation and image editing** can now be toggled independently via [features] in config.toml. ## Bug Fixes - **Background tasks** started inside subagents now continue running after the subagent session ends. # 0.2.6 ## Bug Fixes - **Background tasks** started inside subagents now continue running after the subagent session ends. - **Image description** now reliably uses the grok-build model instead of falling back to the active session model. # 0.2.5 ## Bug Fixes - **Drag-and-drop** and pasting images or files now works correctly on Windows. # 0.2.4 ## Features - **image_gen** now uses the higher-quality grok-imagine-image-quality model. ## Bug Fixes - **read_file** now correctly passes embedded base64 images to the model as vision tokens instead of truncated fragments. # 0.2.3 ## Features - Memory system: /remember command, note modal with raw/enhanced preview, x.ai/memory/rewrite ACP extension, Ctrl+F fullscreen toggle for /memory modal. - Agent configuration: /config-agents modal with agents, personas, and defaults. - Goal classifier: end-to-end goal tracking with subagent-powered classification. # 0.2.2 # 0.2.1 ## Bug Fixes - **Pasting or dropping images** now succeeds for truncated, CRC-corrupt, or tiny files instead of failing silently. # 0.2.0 ## Performance - **Large chat sessions** now use substantially less memory and run faster during forks, rewinds, and compaction. # 0.1.220-alpha.4 ## Features - **Version output** now shows [alpha] or [stable] in `--version`, banners, `/session-info`, and `grok inspect`. - **New "always-approve"** option appears first in permission dialogs. Bash commands now resolve reliably on NixOS and Homebrew installs. ## Bug Fixes - **Auxiliary model calls** such as session titles and image descriptions now succeed for API-key users. # 0.1.220-alpha.3 ## Bug Fixes - **Pasting or dropping files from Finder** and handling multiple images now works reliably on macOS. - **Clipboard copy and paste** now works reliably on Linux Wayland desktops. # 0.1.220-alpha.2 ## Bug Fixes - **Web and X search tools** now activate correctly after switching to a model that supports backend search. # 0.1.220-alpha.1 ## Features - **Release notes** are now fetched from the CDN instead of being bundled inside the binary. ## Bug Fixes - **--restore-code** now stashes dirty changes before restoring and shows clear success or failure messages. - **Shell** background tasks now create their output file immediately and AwaitShell exits early on pattern match. # 0.1.220 ## Features - **Model selection** now respects API-key permissions and defaults auxiliary calls like summaries to your current model. - **Release notes** command now loads the latest notes from the network instead of bundled files. - **Version output** now shows [alpha] or [stable] labels based on the release-channel pointer. - **Permission prompts** now offer an always-approve option; shell commands resolve more reliably across installs. ## Bug Fixes - **--restore-code** now safely stashes your uncommitted changes before restoring and shows clear success or failure messages. - **Pasting or dropping files** from Finder now works reliably and images no longer lose their numbers or chips. - **Background shell output** is now available immediately after starting and AwaitShell exits early when a pattern matches. - **Copy to clipboard** now works reliably on Linux Wayland desktops using wl-copy or xclip fallbacks. - **Web and X search** now activate correctly after switching to a backend-search model without restarting the session. # 0.1.219-alpha.1 ## Bug Fixes - **read_file** now always returns the file content instead of a duplicate-read message after compaction. # 0.1.219 ## Bug Fixes - **read_file** tool now always returns file content instead of a duplicate-read message after compaction. # 0.1.218-alpha.1 ## Features - **Project instruction files** now recognize.claude/CLAUDE.md and.claude/CLAUDE.local.md. ## Bug Fixes - **run_terminal_command** on Windows PowerShell no longer suggests unavailable Unix utilities. # 0.1.218 ## Features - **Project instruction files** named.claude/CLAUDE.md are now discovered automatically. ## Bug Fixes - **Windows PowerShell users** no longer see model suggestions for Unix commands that do not exist. # 0.1.217-alpha.5 ## Features - **New `/export` slash command** and `grok export` CLI command let you save or copy conversation transcripts as Markdown. ## Bug Fixes - **Image pasting** now correctly prefers images from the clipboard and keeps dragged screenshots visible instead of losing them. - **Video generation** no longer forces short 5-second clips; longer durations now work as requested. # 0.1.217-alpha.4 ## Features - **New `grok plugin` commands** let you manage plugins and marketplaces directly from the terminal. ## Bug Fixes - **Image pasting** now correctly prefers images from the clipboard and keeps dragged screenshots visible. - **Subagents** now correctly use bring-your-own-key credentials when the parent model specifies them. - **MCP server connections** no longer fail with initialization errors under concurrent tool calls. - **Signal sync** is more resilient to transient authentication hiccups. - **Authentication recovery** after subscription changes no longer causes duplicate IdP calls. # 0.1.217-alpha.3 ## Features ## Bug Fixes - **Image description** now works correctly when using custom models with bring-your-own-key configs. - **Subagents** now correctly show the parent model's display name instead of the internal routing slug. # 0.1.217-alpha.2 ## Bug Fixes - **Model picker** now correctly shows all entries including aliases when multiple models share the same slug. # 0.1.217-alpha.1 ## Features ## Bug Fixes - **Tool calls** now appear in the output as soon as they start instead of waiting until they finish. # 0.1.217 ## Features - **Todo list reminders** now appear at turn end when pending tasks remain after compaction. - **Laziness detection** can now be enabled per-model to automatically nudge idle agents. - **New `grok plugin` commands** let you manage plugins and marketplaces directly from the terminal. - New `/export` command and `grok export` let you save or copy conversation transcripts as Markdown. ## Bug Fixes - **Pasting images** from the clipboard or dragged screenshots now works reliably without temporary paths or duplicates. - **Subagents** now correctly use per-model API keys instead of falling back to OAuth when both are present. - **Model picker** now shows all models including aliases like "auto" when multiple entries share a slug. - **Tool calls** now appear in the scrollback immediately when dispatched. - **Cursor image and PDF handling** now processes attachments reliably without errors. - Signal tracking for sessions is now more resilient to temporary login hiccups. - Subscription detection now correctly respects access gates from the server. - Image description now works reliably with custom models and bring-your-own-key configs. - Subagents now show the correct parent model name instead of an internal routing slug. - Authentication recovery after subscription changes no longer causes duplicate login attempts. - Video generation no longer forces short ~5s clips when no duration is specified. - **Fixed excessive authentication errors** that could occur during token refresh in background operations. # 0.1.216-alpha.1 ## Features - **Grok** now reminds itself to take action in very long conversations while still obeying instructions like "just plan". # 0.1.216 ## Features - **Grok** now reminds itself to execute plans in long conversations while strictly following instructions like "just plan". ## Bug Fixes - **Image pasting** on Linux now works reliably when the clipboard contains images. # 0.1.215-alpha.1 ## Features - **Default models** now use plan mode tools (enter/exit plan mode, ask user) unless overridden. ## Bug Fixes - **Skills** now resolve relative links to bundled files like reference docs inside the skill directory. - **Subagents** no longer cause the parent session to lose write or execute tools. # 0.1.215 ## Features - **Default agent behavior** now uses plan mode tools for models without an explicit agent_type. ## Bug Fixes - **Relative links** inside skill files now resolve to absolute paths automatically. - **Subagents** no longer cause the parent session to lose access to tools. # 0.1.214-alpha.1 # 0.1.214 ## Features ## Bug Fixes - **Image and video generation** no longer causes the model to repeat internal instructions about inline display. - **Sessions** now resume reliably even if the original model is removed from the catalog. - **Fixed crashes** when tool output or prompts contain multibyte characters like CJK or emoji. - **Web search** now correctly switches between local and hosted tools when changing models. - **Custom agent profiles** from clients are now respected for default models. # 0.1.213-alpha.7 ## Features - **New settings pane** lets users configure appearance, themes, and behavior directly in the terminal UI. - **New image_edit tool** supports reference-based editing using uploaded photos or data URLs. - **Goal mode** now surfaces verification-blocked pauses with human-readable reasons and resume guidance. - **Added `grok logout` subcommand** to sign out from the terminal without launching the TUI. - **Backend search** is now enabled by default for web_search and x_search. - **Added per-MCP-server `expose_image_base64` option** so raw image data remains available in tool output. - **Improved credit-limit experience** for max-tier users with an inline scrollback card instead of a modal. - **Automatically detects** mid-session subscription upgrades after a credit-limit error. ## Bug Fixes - **Goal mode** now auto-pauses on repeated failures or doom loops and resumes cleanly without errors. - **Fixed sessions** in directories with very long or CJK names that previously failed with "File name too long". - **Fixed /btw errors** on Anthropic opus models caused by orphaned tool calls and temperature conflicts. - **Doom-loop halts** now correctly report harness termination instead of misleading "user cancelled" messages. - **API-key users** no longer see unavailable models such as grok-build that 404 on selection. - **Image and video generation** now recover better from network issues and large response bodies. - **Improved error messages** when hitting a subscription wall with an API key set, suggesting `grok logout`. - **Removed --budget flag** from /goal and made goal verification stricter. - **Fixed a crash** on exit when using MCP servers that require token refresh. - **Fixed follow-up errors** after backend search and prevented unsupported tools from reaching certain models. # 0.1.213-alpha.6 ## Performance - **Large sessions** now upload and process without long stalls or excessive memory use. # 0.1.213-alpha.5 ## Features - **Web search and X search** can now execute server-side with full session persistence when GROK_BACKEND_SEARCH is enabled. - **read_file** can now append configurable rule reminders for matching.cursor/rules files when enabled. - **read_file** now extracts text from PowerPoint (.pptx) files in addition to PDF and images. ## Bug Fixes - **run_terminal_cmd** now reports clearer "exit: killed (reason)" headers for processes terminated by timeout or cancellation. - **Fixed model errors** when switching to non-reasoning models after previously setting reasoning effort. - **Compaction summaries** no longer cause the model to echo the original summarization instructions after resume. # 0.1.213-alpha.4 ## Features - **New /goal slash command** for tracking multi-step coding goals with live status and automatic pausing on Ctrl+C. - **Goal mode** is now opt-in via config.toml or the GROK_GOAL environment variable. - **Commands** in workspace/proxy mode now preserve environment variables, cwd, functions, and aliases across calls. - **Background tasks** now report termination signals, reject self-killing patterns, and support unbounded timeouts. - **Grok CLI** now runs natively on Intel Macs via x86_64 builds. ## Bug Fixes - **Goal mode prompts** now work on all platforms and correctly place source code in your project directory. - **Background tasks** now correctly trigger auto-wake even when a blocking wait times out. - **Goal status bar** now shows the correct deliverable number matching the detail modal. - **Task tool** now accepts model-emitted paths containing stray quotes or a leading tilde. - **Subagent task output** no longer appears twice in the scrollback or leaves trailing system reminders. - **Failed background subagents** now report errors and appear in task lists instead of silently disappearing. - **Subscription purchases** now correctly refresh authentication so API calls succeed after the paywall lifts. ## Performance - **MCP tool output** is now truncated earlier to reduce wasted context when models rarely follow up. # 0.1.213-alpha.3 ## Bug Fixes - **Credit status** now updates live after topping up or changing spending limits when at your usage cap. - **Paywall** now lifts automatically after subscribing via grok login or external purchase without needing to re-login. - **Images from /imagine** no longer render twice in the scrollback. # 0.1.213-alpha.2 ## Bug Fixes - **Fixed terminal UI corruption** on macOS that occurred when system malloc messages interleaved with the interface. # 0.1.213-alpha.1 ## Features - **Marketplace plugins** from URLs can now be pinned to a specific commit SHA for tamper protection. - **Terminal output** now shows both the start and end of long command results instead of only the tail. - **/imagine** now works reliably after session reload and shows images directly in tool results. - **Images and PDFs** read with the file tool now appear immediately instead of in a later message. ## Bug Fixes - **Plugins and Marketplace** reloads now show a clear loading indicator instead of misleading per-item badges. - **Search tool** now gives the model better guidance for finding MCP tools by server and action name. - **Windows users** now get a more reliable shell (PowerShell preferred) that avoids path mangling. - **Model list** no longer gets stuck on only grok-build after waking from sleep on macOS. - **Custom xai_api_base_url** settings in config.toml now correctly route session commands for enterprise deployments. # 0.1.213 ## Features - **/imagine** now renders generated images inline in tool results. - **Images from read_file** now appear inline inside tool results instead of a follow-up message. - **Goal mode** (opt-in) now tracks objectives and deliverables with live progress updates via the UpdateGoal tool. - **New `/goal` slash command** lets you set objectives, track deliverables, pause/resume, and receive live progress updates during long tasks. - **New Settings pane** (consolidated) for configuring appearance, themes, and general options directly from the UI. - **Goal mode** is now opt-in via `[features] goal = true` in config.toml or the GROK_GOAL environment variable. - **Rewind (Ctrl+Z)** now works in proxy/hub mode by routing file-state tracking through the remote workspace. - **Paywall** now lifts automatically after subscribing via grok login or external purchase without needing to re-login. - **Commands** in workspace/proxy mode now preserve environment variables, cwd, functions, and aliases across calls. - **New /goal slash command** for tracking multi-step coding goals with live status and automatic pausing on Ctrl+C. - **Grok CLI** now runs natively on Intel Macs via x86_64 builds. - **New `image_edit` tool** supports editing images from reference photos. - **Goal mode** now supports a "verification blocked" pause state with a user-visible reason. - **read_file** now extracts text from PowerPoint (.pptx) files in addition to PDF and images. - **Goal mode** verifiers now act as reviewers and subagent resumes use the latest ID. - **New `grok logout` command** clears your cached login session directly from the terminal. - **Web search and X search** now run server-side by default for improved results. - **MCP image tools** can now expose raw base64 data so agents can forward images via file tools. - **Max-tier users** now see an inline message with pay-as-you-go options when hitting credit limits. ## Bug Fixes - **Windows shell detection** now prefers PowerShell and prevents Git Bash path mangling. - **Fixed model list** getting stuck on only grok-build after waking from sleep on macOS by refreshing the catalog on every auth token update. - **Fixed cross-platform prompt** text and ensured goal-mode workers write source code in the project workspace rather than temporary directories. - **Enterprise config fix**: setting `xai_api_base_url` in config.toml now correctly routes session commands without also needing to set `cli_chat_proxy_base_url`. - **Fixed hub disconnects** so the CLI degrades gracefully instead of panicking when the Computer Hub WebSocket drops. - **Doom-loop terminations** now show "Agent was unable to make progress — turn ended in Xs." instead of the misleading user-cancel message. - **Fixed terminal UI corruption** on macOS that occurred when system malloc messages interleaved with the interface. - **Images from /imagine** no longer render twice in the scrollback. - **Goal status bar** now shows the correct deliverable number matching the detail modal. - **Task tool** now accepts model-emitted paths containing stray quotes or a leading tilde. - **Subagent task output** no longer appears twice in the scrollback or leaves trailing system reminders. - **Background tasks** now report termination signals, reject self-killing patterns, and support unbounded timeouts. - **Failed background subagents** now report errors and appear in task lists instead of silently disappearing. - **Subscription purchases** now correctly refresh authentication so API calls succeed after the paywall lifts. - **run_terminal_cmd** now reports clearer "exit: killed (reason)" headers for processes terminated by timeout or cancellation. - **Fixed model errors** when switching to non-reasoning models after previously setting reasoning effort. - **Compaction summaries** no longer cause the model to echo the original summarization instructions after resume. - **Fixed /btw** 400 errors on certain Anthropic models by cleaning up mid-turn tool state. - **API key users** no longer see unavailable models like grok-build in the model list. - **Image and video generation** now handles slow or interrupted network responses more reliably without generic decode errors. - **Fixed error messages** when hitting a subscription wall with an API key set, now suggesting `grok logout`. - **Fixed a crash** on exit when using MCP servers that require token refresh. - **Reduced 400 errors** on background flush/dream operations for thinking models. - **Fixed follow-up search errors** and ensured backend search only activates on supported models. - **Subscription tier upgrades** are now detected automatically after a credit limit error without needing to log out. ## Performance - **Large sessions** now upload and process without long stalls or excessive memory use. # 0.1.212-alpha.5 ## Bug Fixes - **Fixed /btw side questions** failing with 400 errors on models that use extended thinking. # 0.1.212-alpha.4 ## Breaking Changes - **Subagents** now always start fresh and must be fully briefed via the prompt instead of inheriting parent conversation history. ## Features - **Memories** now avoid storing low-value tool counts and file lists while skipping near-duplicate entries via semantic similarity checks. # 0.1.212-alpha.3 ## Features - **Added configuration options** for the auto-compaction threshold on a per-model or global basis. - **Shows 'Logged in with API key'** indicator on the welcome screen when using an API key. ## Bug Fixes - **Improved error messages** when calling use_tool with an invalid or built-in tool name. - **Fixed context window** incorrectly dropping to 128k for some models, preventing mid-session cascading compactions. - **Fixed incorrect context windows** for models referenced by multiple catalog entries with different keys. # 0.1.212-alpha.2 ## Features - **Linkify URLs and file paths** across all TUI output - **Improve /sessions modal** and /new /fork banners - **Improve review plan UX** in the TUI ## Bug Fixes - **Use multipart upload** for S3 payloads exceeding 8 MiB # 0.1.212-alpha.1 ## Features - **web_fetch** now downloads and saves images and videos to disk (with magic-byte checks) instead of rejecting them. # 0.1.212 ## Breaking Changes - **Subagents** no longer support fork_context; they always start fresh and must be fully briefed via the prompt. ## Features - **Images and videos** now display directly in the scrollback with click-to-play support. - **Skills** now show their author in the extensions list and search results. - **web_fetch** now downloads and saves images and videos to disk instead of rejecting them. - **Added configuration options** for the auto-compaction threshold on a per-model or global basis. - **Shows 'Logged in with API key'** indicator on the welcome screen when using an API key. ## Bug Fixes - **Long bash task output** no longer inflates context; full logs remain available via disk pointers. - **Auth file locking** is now more robust against hung processes and concurrent refreshes. - **Concurrent logins** and refreshes now wait efficiently without timeouts or retry storms. - **Improved error messages** when calling use_tool with an invalid or built-in tool name. - **Fixed context window** incorrectly dropping to 128k for some models, preventing mid-session cascading compactions. - **Fixed incorrect context windows** for models referenced by multiple catalog entries with different keys. - **Improved memory quality** by removing noisy auto-saved details and avoiding duplicate stored memories. - **Fixed `/btw` errors** on models that use extended thinking by excluding internal reasoning from side-question requests. ## Performance - **search_tool** now instantly finds exact tool names instead of falling back to fuzzy search. - **search_tool** now better matches compound tool names like grafana-ai__SearchDashboards. # 0.1.211-alpha.3 ## Features - **New browser tools** for tab and network inspection. - **Browser tools security hardening** with cookie mode and domain allowlisting. - **Plugin install shorthand** now accepts owner/repo format. - **Memory modal** now renders markdown with mouse interaction and scrollbar. - **Keyboard shortcut dialog** (Ctrl+.) redesigned for discoverability. - **Ask-question modal UX** with double-click selection and copy support. - **Loading spinner** added to image viewer overlay. - **PowerShell install scripts** added for Windows users. ## Bug Fixes - **Fixed diff line numbers** to show correct absolute positions. - **Fixed tasks stuck** in killing state in tasks pane. - **Privacy opt-out** now persists across token refresh. - **Fixed infinite restart loop** during auto-update failures. - **Gitignored files** now readable by default. - **Fixed auth refresh storm** on expired tokens. - **/privacy opt-out** now works for personal OIDC users. - **Model catalog** now retries after sleep/resume. - **Fixed terminal rendering leak** on exit. # 0.1.211-alpha.2 ## Bug Fixes - **Login now handles corrupt authentication files** by backing them up instead of prompting repeatedly. - **Fixed loops getting stuck** when resuming sessions. - **Stopped duplicate notifications** for background tasks and subagents waited on directly. - **Loop indicators now disappear** properly when subagents shut down. # 0.1.211 ## Features - **Added browser tools** for navigation, screenshots, and network inspection via Chrome. - **Background tasks and subagents** now automatically notify the agent when they finish. - **Browser tools** now use safer cookie handling and domain restrictions by default. ## Bug Fixes - **Skills** now reliably apply persona instructions to subagents via shared definitions. - **Notifications** from background tasks now render correctly without duplication. - **Login** now recovers from corrupted auth files instead of failing repeatedly. - **Loop tasks** no longer get stuck when resuming previous sessions. - **Directly waited** background tasks no longer trigger extra notifications. - **Loop indicators** are now properly removed when subagents shut down. - **run_terminal_cmd** tool name restored; background parameter rename preserved. - **Model picker** now recovers automatically after sleep/resume or temporary network issues instead of staying stuck on Grok Build. - **MCP server connections** now succeed for servers that enforce audience binding on OAuth tokens. - **read_file** now accesses gitignored files by default (grep/list_dir/search_replace still block them unless configured). - **--no-ask-user** flag now correctly disables the ask_user_question tool in both TUI and headless modes. # 0.1.210-alpha.6 ## Bug Fixes - **File writes on Windows** now automatically retry if briefly locked by editors or antivirus. - **Login process** now waits up to 10 minutes instead of 5 and shows a clearer timeout message. - **Terminal interface** no longer gets garbled by subprocesses like git or npm. - **Plan mode** no longer activates unexpectedly from tool descriptions containing similar phrases. - **Authentication** now recovers immediately when using multiple terminals after token refreshes. # 0.1.210-alpha.5 # 0.1.210-alpha.4 ## Bug Fixes - **`grok sessions search`** now finds local and remote sessions correctly, and **`grok -r `** restores remote sessions reliably. # 0.1.210-alpha.3 # 0.1.210-alpha.2 ## Features - **Tool permission prompts and lists** now clearly show server name followed by action. # 0.1.210-alpha.1 ## Bug Fixes - **Model list** no longer collapses to default after long inactivity or re-login. - **Session restore** no longer crashes on Windows after system reboot. - **Fixed authentication failures** after token refresh errors. - **Completed background tasks** now remain queryable via get_task_output. ## Performance - **Interactive sessions** now initialize MCP servers progressively for faster startup. # 0.1.210 ## Features - **Faster startup** for interactive sessions with progressive MCP loading. - **MCP tools now show** as 'Server: Action' in permission screens. ## Bug Fixes - **Full model list** now survives long inactivity, logins, and token refreshes. - **Fixed crash** restoring sessions on Windows after system reboot. - **Windows file saves** now retry brief editor or AV locks automatically. - **Completed background tasks** now remain queryable via get_task_output. - **Fixed terminal garbage** during auto-updates on macOS. - **`grok sessions search`** now finds local and remote sessions correctly, and **`grok -r `** restores remote sessions reliably. - **Login timeout** increased to 10 minutes with clearer error message. - **Fixed pager getting stuck in plan mode** due to tool titles mentioning plan commands. # 0.1.209 ## Features - **Read file** now renders PDF pages as images with optional page range. - **PDF files now render as images** when read by the AI assistant. - **PDF files can now be read as text** by specifying pages='text' in the read tool. ## Bug Fixes - **Subagents** now show as cancelled when you reject dangerous commands like `rm -rf`. - **Model selection** no longer resets on login or token refresh. - **Background tasks** now wait for completion when `block=true` is requested. - **Subagent summaries** now show accurate tool calls and turns. - **AI now sees** completed background bash tasks between turns. - **Sessions with content** now appear in desktop sidebar after restart. - **AI warns** about duplicate background tasks before starting new ones. - **Resumed sessions now inform** the AI about any background tasks still running from before. - **Background tasks automatically resume** the conversation when they finish, even if idle. - **Python background scripts now stream output** in real-time without buffering delays. # 0.1.208-alpha.2 ## Features - **PDF files** can now be read to extract and display rendered page images. - **PDF files now render as page images** when using the read_file tool. - **Extract plain text from PDFs** using pages="text" or format="text" in read_file. ## Bug Fixes - **Subagents cancelled by permission prompts** now correctly reported to parent agents. - **Custom model selections** no longer reset on login, logout, or token refresh. - **Blocking task output requests** now wait reliably for completion. - **Subagent stats** in task output and session cards now accurate. - **Background task completions** now promptly visible to model between turns. - **Saved sessions** now appear correctly in desktop sidebar after restart. - **Resumed sessions now inform model** about previously running background tasks. - **Model automatically wakes up** when background tasks complete. # 0.1.208-alpha.1 ## Features - **Shell command suggestions** from history and PATH now appear as ghost text. - **File and directory completion** now available in shell suggestions. - **AI shell command suggestions** enabled via GROK_SUGGESTIONS_AI=1 environment variable. - **Plan approval status** now clickable; new Abandon option exits plan mode. ## Bug Fixes - **Fixed restoring sessions** from cloud without local cache. - **Fixed image errors** when loading old sessions with bad images. - **Skill commands** now display cleanly in history, titles, and search. - **Cloud sessions** now report correct OS, shell, paths, and git status. # 0.1.208 ## Features - **Shell command suggestions** now appear as dim italic ghost text after the cursor. - **File and directory path completion** now available in shell suggestions. - **AI-powered shell suggestions** configurable via `[suggestions]` or env vars. - **Plan status** now clickable; new **Abandon plan** button and `d` key. ## Bug Fixes - **Remote session restores** no longer fail with 401 auth errors. - **Corrupt images** in history are now skipped or replaced with placeholders. - **Skill commands** now display cleanly in history, search, and titles. - **Cloud sessions** now use correct remote OS, shell, paths, and git status. - **Bundled skills** like `/check` and `/best-of-n` now work in TUI sessions. # 0.1.207 ## Features - **New /check-work (/verify, /check) and /best-of-n (/bon)** slash commands now work in headless mode. ## Bug Fixes - **Fixed session workspace setup** so git, shell, and file operations no longer fail. # 0.1.206-alpha.1 ## Features - **Simple mode** now persists across sessions in config.toml. ## Bug Fixes - **Git and bash commands now work** reliably in the desktop app on Windows. - **Slash command autocomplete** no longer duplicates unique skill entries. - **Git branch changes** now update the status bar after shell commands. # 0.1.206 ## Features - **Simple mode** now saved in config.toml across restarts. ## Bug Fixes - **Fixed git and bash commands** failing in Grok Desktop on Windows. - **Fixed duplicate slash commands** in autocomplete dropdown. # 0.1.205-alpha.1 ## Features - **New `/check-work`** and **`/best-of-n`** commands** for self-verification and parallel task solving. ## Bug Fixes - **Fixed authentication failures** during file uploads. - **Fixed terminal display corruption** from mouse events and subprocess output. - **Fixed sessions stuck** on read-only filesystem after login. # 0.1.205 ## Features - **New `/check-work` and `/best-of-n`** commands for self-verification and parallel solving. ## Bug Fixes - **Fixed authentication failures** during file and artifact uploads. - **Fixed terminal garbling** from mouse events and child process output. # 0.1.204-alpha.3 ## Features - **Remote tools** from hub-registered workspace servers are now discoverable and callable in sessions. - **Worktree folders** now use readable names like 'projects-my-repo' instead of session IDs. - **Session lists** now show AI-generated titles, git branches, repo names, and worktree labels. - **`grok -w my-worktree`** creates a custom-named worktree folder. - **Session picker** now groups entries by repository with headers and indents. - **Remote workspaces** now handle multiple sessions over one connection. - **`/usage manage`** now opens billing page; **`grok login`** enforces tiers correctly after refresh. ## Bug Fixes - **Fixed AI-suggested paths** missing leading slash or quotes in tools like grep. - **Fixed file upload failures** during large batch transfers over unstable connections. # 0.1.204-alpha.2 ## Bug Fixes - **Error messages for model not found or auth failures** now show available models, auth type, version, and login fix instructions. # 0.1.204-alpha.1 ## Features - **Subagents** now enabled by default, fixing skills like `/implement` and `/execute-plan`. ## Bug Fixes - **Legacy web login** no longer treated as first-party xAI account for sharing and billing; prompts **`grok login`** upgrade. - **Billing display** now includes pay-as-you-go status and monthly limits with better error handling. - **Copy auth URLs** now works in Docker containers and displays cleanly for external providers. ## Performance - **Large tool outputs** shortened when sent to Grok, full text saved to file in session folder. # 0.1.204 ## Breaking Changes - **Legacy authentication** removed; run **`grok login`** to upgrade to OAuth. ## Features - **Hub tools** like read_file now discoverable and callable in pager sessions. - **Worktree directories** now named readably (e.g., projects-my-repo) instead of random IDs. - **Session lists** show AI-generated titles, branches, repos, and worktree labels. - **Session picker** now groups entries by repository for easier navigation. - **Remote workspace servers** supported via **`--hub-workspace-mode remote=`**. - **Subagents** now enabled by default, fixing `/implement` and `/execute-plan` skills. - **`/usage manage`** opens billing page; **`/usage`** or `show` displays credits. ## Bug Fixes - **Legacy web login** no longer treated as premium xAI account; run **`grok login`** instead. - **Session picker** removes duplicate blank sessions from same folder. - **Sessions from deleted worktrees** still appear in picker after restart. - **Credit bar** now shows pay-as-you-go status and monthly usage limits. - **Auth URLs copy** correctly in Docker containers and display cleanly for external providers. - **Model/auth errors** now show available models, auth type, version, and login fixes. - **Tool path resolution** fixed for absolute paths missing leading slash. - **Fixed upload failures** from HTTP/2 connection degradation. - **Memory search** now reliably includes global and workspace MEMORY.md files. ## Performance - **Large tool results** shortened in chat; full text saved to file with path link. # 0.1.203-alpha.2 ## Bug Fixes - **`/btw` slash command** now works correctly with all backends including Anthropic. # 0.1.203-alpha.1 ## Features - **New `grok-build-v2` agent** available in config.toml for prompt/tool testing. ## Bug Fixes - **Fixed duplicate MCP and skill reminders** when resuming sessions. - **Plan review overlay** now always shown, even in always-approve mode. - **Fixed empty model list** and unknown model after login or logout. - **Fixed unwanted login prompts** during brief network issues at startup. - **Fixed `grok sessions list`** auth failures. # 0.1.203 ## Features - **New `grok-build-v2` agent** option in config.toml for testing prompt and tool changes. - **Session picker `/load`** deep search now shows spinner, content matches, and previews on expand. ## Bug Fixes - **Resumed sessions** no longer duplicate MCP server and skill reminders. - **Plan mode exits** now always show interactive approval, even in always-approve mode. - **Model picker** now updates correctly after login/logout without empty lists or 'unknown'. - **`grok sessions list`** now works reliably after login. - **`/btw` slash command** now supports all backends like Anthropic Messages API. # 0.1.202-alpha.1 ## Features - **Added /usage command** to view account usage and billing information. - **Integrated Computer Hub client** for remote computer-use sessions. - **Added --hub-url flag** to configure Computer Hub endpoint. - **Implemented /rewind** with inline overlay, message picker, and live dimming preview. - **Added /memory slash command** with browse and toggle routing. - **Memory save notifications** in scrollback with remember/forget/recall instructions. - **Added grok memory clear** CLI command with scope selection and confirmation. - **Added /memory on|off** to toggle memory mid-session. - **Vision support** for base64 images extracted from user queries. - **Added --allow/--deny CLI flags** with PolicyDeny variant and deny rule UX improvements. - **Configurable parallel verifiers** with improved verification prompt. - **MCP connection progress UI** with system reminders and progressive strategy fix. ## Bug Fixes - **Fixed session resume** defaulting to legacy auth instead of OIDC. - **Reject WebLogin tokens** and force interactive login; fixed devbox auth. - **Normalized skill names** by converting underscores to hyphens. - **Fixed auth revalidation** to always check token validity. - **Fixed memory search scoring**, modal UX, and pager display. # 0.1.202 ## Features - **Add /usage command** and billing extension fix - **Computer Hub integration** into xai-grok-shell - **--hub-url flag** and thread hub config to shell - **Implement /rewind** with inline overlay, picker, and live dimming preview - **Stream tool-call argument deltas** via the buffered path - **LocalRegistry cloneable handle** with shared dispatch across workspace - **Add /memory slash command** with browse and toggle routing - **Memory save notifications** in scrollback with remember, forget, and recall instructions - **grok memory clear command** with scope and confirmation - **Support /memory on|off** to toggle memory mid-session - **Extract base64 images** from user queries as vision tokens - **--allow/--deny CLI flags** with PolicyDeny variant and deny rule UX improvements - **Configurable parallel verifiers** with improved prompt - **MCP connection progress UI** with system reminders and progressive strategy fix - **require_plan_approval config flag** in pager - **Best-of-N mode** for grok-build - **Anthropic Messages backend** with streaming reasoning traces end-to-end ## Bug Fixes - **Fix terminal tool calls** when agent runs via scheduled task on Windows - **Fix resume** defaulting to legacy auth instead of OIDC - **Reject WebLogin tokens** and force interactive login; fix devbox auth - **Normalize underscores to hyphens** in skill names - **Fix auth** to always revalidate - **Fix memory search scoring**, modal UX, and pager display # 0.1.201-alpha.1 ## Features - **New `--self-verify` flag** starts automatic work-checking after each response. ## Bug Fixes - **Reasoning effort settings** no longer incorrectly apply to unsupported models like grok-build. - **Web search, image gen, and video gen tools** now avoid 401 errors during auth provider gaps. - **`/share` command** now works in token's final 5 minutes and guides API key users to login. - **`/billing` command** now works reliably in token's final 5 minutes. - **Deny rules in config** now block actions even with `--always-approve`. - **Skills** now provide follow-up context automatically after use. # 0.1.201 ## Features - **New `--self-verify` flag** starts sessions with automatic work-checking after each response. ## Bug Fixes - **Reasoning effort settings** no longer incorrectly apply to models without support, like grok-build. - **Web search, image generation, and video generation tools** no longer fail with missing API key errors. - **Deny rules in config.toml** now block tool calls even with auto-approval enabled. # 0.1.200-alpha.1 ## Features - **grok-build model** now defaults to Chat Completions API. ## Bug Fixes - **MCP tools** now work more reliably by always fetching schemas before use. - **MCP tool calls** preserve all custom arguments without dropping extras. # 0.1.200 ## Bug Fixes - **MCP tools** now work more reliably by enforcing schema lookup before calls. # 0.1.197-alpha.5 ## Bug Fixes - **MCP tools** now always use correct parameters by requiring schema lookup first. # 0.1.197-alpha.4 ## Features - **`/model` command** now lets you pick reasoning effort levels like high/medium/low for supported models. - **Images in tool output** now appear as pictures the AI can see, not long base64 strings. ## Bug Fixes - **Shell commands now work** in Grok Desktop on Windows. - **Image compression messages** now explain if size, dimensions, or both triggered resizing. # 0.1.197-alpha.1 ## Features - **Agent profiles** now support tool allow/deny lists, reasoning effort, turn limits, and reliable model overrides. - **Custom models** in config.toml now support both Bearer token and x-api-key authentication. - **Built-in docx, xlsx, pptx skills** now available for office document editing. - **MCP tools** now time out after 100 minutes by default instead of 1 minute. - **MCP server reminders** now include instructions to discover and use tools correctly. - **New Verify mode** (Shift+Tab) runs automatic checks and fixes after each agent turn. - **Tool call arguments** now stream progressively as generated by the model. ## Bug Fixes - **Agents auto-exit plan mode** without prompts when started in always-approve mode. # 0.1.196-alpha.6 ## Bug Fixes - **Fixed interactive shell, command syntax, and git editor issues** on Windows. # 0.1.196-alpha.2 ## Features - **New `grok-build-orchestrator` agent** uses a lead model to coordinate subagents for builds. ## Bug Fixes - **Custom UI settings in config.toml** no longer get lost when saving other changes. # 0.1.196 ## Features - **New `grok import`** resumes Claude Code sessions with `grok import `. - **New `grok-build-orchestrator`** coordinates subagents for complex builds. - **`/skills` panel** now includes **toggles** to enable or disable individual skills. ## Bug Fixes - **Discovers CLI tools** from `.zshrc`/`.bashrc`/virtualenvs (e.g., tclips). - **Custom UI settings** like timestamps persist across config saves. - **Model switches** rebuild harness and hold prompts until complete. - **Model list refreshes** correctly after login or logout. - **Subagents** now execute tools in the **specified working directory** instead of always using the parent's. - **Generated session titles** now display correctly in `/sessions` list and terminal. - **Fixed shell detection on Windows** for interactive PTYs, command syntax, and git editors. - **Fixed `grok share`** failing with backend ZodError due to duplicate request headers. ## Performance - **Faster session startup** on large repositories by backgrounding project info. # 0.1.195-alpha.7 ## Features - **New `grok login --devbox`** option for signing in from headless devbox environments without browser access. - **Skill file reads** now display as **'Skill {name}'** for cleaner scrollback view. # 0.1.195-alpha.4 ## Features - **Billing credits and usage** now fetchable for display in pager/desktop. - **New `grok mcp doctor`** diagnoses MCP servers and suggests fixes. - **Session picker** now shows precise last activity times. ## Bug Fixes - **Fixed generation hangs** on persistent authentication failures. # 0.1.195-alpha.3 ## Bug Fixes - **Image and video generation** now works reliably after long idle periods. - **Fixed crashes** from large images read by the Read tool. - **Improved Windows support** for auto-updates, installation, and shell commands. # 0.1.195-alpha.2 # 0.1.195-alpha.1 ## Bug Fixes - **Terminal stays responsive** when cancelling shell commands. - **Fixed requests** to Anthropic models from remote model lists. # 0.1.195 ## Features - **New `grok mcp doctor`** diagnoses MCP server configuration and connectivity. - **Subagents** can now target specific directories without new worktrees. - **Session picker** now shows accurate last activity times. ## Bug Fixes - **Image and video generation** now works reliably after long idle periods. - **Large images read from files** no longer crash API requests. - **Terminal stays responsive** when cancelling long-running shell commands. - **Anthropic models** from remote lists now route to correct API endpoints. - **Fixed resume and fork crashes** from old session files. - **Fixed crashes from large images** in tools and attachments. - **Fixed generation hangs** on persistent authentication failures. # 0.1.194-alpha.1 ## Features - **After plan approval**, Grok suggests `/implement` for structured coding when available. ## Bug Fixes - **Model lists and pickers** now show only models accessible via your `GROK_CODE_XAI_API_KEY`. # 0.1.194 ## Features - **Plan mode** now recommends the **/implement** skill after user approval when available. ## Bug Fixes - **`grok models`** and TUI picker now show team-specific models when **`GROK_CODE_XAI_API_KEY`** is set. # 0.1.193-alpha.4 # 0.1.193-alpha.3 ## Features - **Pressing Ctrl+C** before any response now restores your prompt to the input box, ready to edit or resend. - **Native Windows x86_64 support** now available via install script and auto-updater. ## Bug Fixes - **Configured MCP tools** now appear reliably in initial session context messages. # 0.1.193-alpha.2 ## Bug Fixes - **Fixed false-positive loop warnings** for different shell commands during edit-test cycles. # 0.1.193-alpha.1 ## Features - **Native Windows support** now available experimentally for running Grok without WSL. - **Interactive menu for importing Claude settings** lets you select items like permissions or MCP servers on welcome screen or `/import-claude`. ## Bug Fixes - **Image compression** now skips small files and warns if large images can't be resized under 3.75 MB limit. - **Feedback errors** now appear in the session instead of failing silently. - **Clearer login error messages** now suggest `grok login`, API key env var, or config.toml. # 0.1.193 ## Features - **Native Windows support** (opt-in) lets you run Grok CLI directly without WSL, with MCP server compatibility. - **New interactive import** for Claude settings (Ctrl-I or /import-claude) lets you pick permissions, env vars, MCP servers, hooks, or paths to migrate. - **Cancel with Ctrl+C** before any response to restore your unsent prompt (text and images) to the input box. - **dontAsk permission mode** now auto-rejects tools without prompting in headless sessions. ## Bug Fixes - **Large images** (>3.75MB after decoding) now compress to JPEG efficiently, keeping originals if needed. - **Authentication errors** now clearly suggest `grok login`, env var, or config.toml api_key. - **Fixed false-positive loop warnings** for different shell commands during edit-test cycles. - **Configured MCP servers** now appear reliably in the initial session prompt. # 0.1.192-alpha.3 ## Features - **Import settings** from `.claude/` (permissions, env vars, MCP servers) into `config.toml` using startup prompt or `/import-claude`. - **Claude migration** now fully disables legacy `.claude/` fallbacks after import. ## Bug Fixes - **Worktree errors** now display the specific failure reason instead of generic messages. - **Shell commands** now appear immediately in the status bar during execution. # 0.1.192-alpha.2 ## Breaking Changes - **Temporarily removed the `Auto` option** from the `/model` picker. # 0.1.192-alpha.1 ## Features - **Skills reload automatically** when editing and saving SKILL.md files without restarting. ## Bug Fixes - **Slash commands like `/loop`** now only appear when supported by the current model. - **Fixed empty model hash** display in status bar and feedback channels. - **Fixed authentication errors** for OIDC users with per-model API keys in config.toml. # 0.1.192 ## Breaking Changes - **Temporarily removed the `Auto` option** from the `/model` picker. ## Features - **Import Claude settings** from `.claude/` into `.grok/config.toml` via welcome screen ('i') or `/import-claude`. - **Skills reload automatically** when editing/saving SKILL.md files without restarting `grok`. ## Bug Fixes - **Slash commands like `/loop`** now only appear when the current model supports them. # 0.1.191-alpha.6 ## Features - **Skills reload automatically** when you edit and save SKILL.md files without restarting. ## Bug Fixes - **Slash commands like `/loop`** now only appear when supported by the current model. # 0.1.191-alpha.5 # 0.1.191-alpha.4 # 0.1.191-alpha.3 ## Bug Fixes - **Ctrl+C clears drafts** without cancelling turns; press twice on empty prompt to cancel. # 0.1.191-alpha.2 # 0.1.191-alpha.1 ## Bug Fixes - **Context bar** now reflects live token usage and matches **`/context`**. # 0.1.191 ## Features - **Improved `grok login`** with automatic code delivery from browser consent page. ## Bug Fixes - **Context bar** now accurately reflects live token usage matching `/context`. - **Ctrl+C clears drafts** without cancelling turns; press twice on empty prompt to cancel. # 0.1.190-alpha.3 ## Features - **New `[[version_overrides]]`** sections apply config patches for specific CLI version ranges. ## Bug Fixes - **`/context`** now updates correctly with token usage per conversation turn. # 0.1.190-alpha.2 # 0.1.190-alpha.1 ## Features - **New `cli.minimum_version`** config enforces version floor and prompts updates. # 0.1.190 # 0.1.189-alpha.4 # 0.1.189-alpha.3 # 0.1.189-alpha.2 ## Features - **New slash command** `/feedback` available in headless and stdio agent modes. - **New `error_reporting` config** enables Sentry independently of telemetry. ## Bug Fixes - **Fixed session cleanup race** preventing errors in concurrent headless sessions. # 0.1.189-alpha.1 # 0.1.189 ## Bug Fixes - **Auth screen** now has consistent styling and better spacing. - **Fixed authentication errors** when starting new sessions after long idle. - **Prevents auth errors** on welcome screen from background tasks during idle. # 0.1.188-alpha.1 ## Bug Fixes - **Fixed misleading auth errors** for OIDC sessions with per-model API keys in config.toml. # 0.1.188 ## Bug Fixes - **Fixed misleading 'Invalid API key' errors** for OIDC sessions with per-model credentials. # 0.1.187 ## Features - **Added reset button** for tool permissions in desktop agent settings. - **Added mid-turn interjection** via Ctrl+Enter without canceling the turn. ## Bug Fixes - **Fixed OIDC session refresh** when using per-model API keys in config.toml. - **Fixed write denials** on symlinked paths like `/tmp` after prior reads. # 0.1.186-alpha.1 ## Performance - **Reduced CPU spikes** during git operations like pull and checkout. # 0.1.186 ## Performance - **Reduced CPU spikes** from file watcher during git pull, checkout, and other operations. # 0.1.185-alpha.2 # 0.1.185-alpha1 # 0.1.185 # 0.1.184-alpha.2 # 0.1.184-alpha.1 ## Bug Fixes - **Large images** now compressed client-side before API with user notification. - **Plan mode reentry** reminder now includes explicit exit instructions to prevent hangs. - **Model unavailability** on account changes now handled gracefully with auto-switch. - **Session picker** shows all sessions; remote fetches now have timeouts. - **Credential prompts** no longer corrupt TUI by detaching child processes from terminal. - **Remote sessions** now matched by repo URL across machines and protocols. - **Fixed ghost text in input field** from config warnings and log messages. # 0.1.184 ## Bug Fixes - **Large images** now compressed client-side before API with user notification. - **Model unavailability** after account switch now handled with clear notifications. - **Session picker** now shows all sessions; remote loads have timeouts. - **Credential prompts** no longer corrupt TUI in terminal commands. - **Remote sessions** now matched by normalized repo URL across machines. - **TUI input field** no longer shows ghost text from config warnings and log messages. # 0.1.183-alpha.1 ## Features - **New `grok trace`** command uploads or exports session data for debugging. - **Slash command arguments** now support fuzzy autocompletion with Tab. # 0.1.183 ## Features - **New `grok trace`** command exports or uploads session data for debugging. # 0.1.182-alpha.4 ## Bug Fixes - **Model list** refreshes correctly after **account or team switch** to prevent auth errors. - **MCP tools** no longer corrupt **TUI display** with credential prompts like GPG pinentry. # 0.1.182-alpha.3 ## Features - **`grok models`** now lists available models and the default. - **Permission prompts** improved with numeric shortcuts and scope selector. ## Bug Fixes - **Same-file edits** now serialize to prevent lost concurrent changes. # 0.1.182-alpha.2 # 0.1.182-alpha.1 # 0.1.182 ## Features - **`grok models`** command now lists available models and authentication status. - **Permission prompts** now use numeric shortcuts, scope selector, and syntax highlighting. ## Bug Fixes - **Improved auth token refresh** prevents 401 failures in long conversations. - **Login checks** now use shared client with 5s timeout to prevent hangs. - **Concurrent edits** to the same file now serialize to prevent lost changes. - **Fixed TUI corruption** from credential prompts in MCP tools like GPG pinentry. # 0.1.181-alpha.2 ## Bug Fixes - **Improved auth token refresh** prevents failures during long conversations. - **Added timeout** to login checks prevents indefinite hangs. # 0.1.181-alpha.1 ## Features - **X Premium and Premium+** tiers now grant access to Grok Build. ## Bug Fixes - **Model picker** now shows config alias names instead of internal slugs. # 0.1.181 ## Bug Fixes - **Model picker** now displays config key names like `grok-build` for aliased models. # 0.1.180-alpha.3 # 0.1.180-alpha.2 # 0.1.180-alpha.1 ## Features - **New `--restore-code` flag** restores original git commit on session resume. - **Session resume** warns if current git HEAD **diverged** from original commit. - **Welcome screen** shows **SuperGrok upsell** without active subscription. - **`/share`** slash command hidden when sharing disabled remotely. ## Bug Fixes - **`/privacy opt-out`** now works for OAuth2 and CLI team tokens. - **Esc** unfocuses prompt; double-Esc cancels running turns. # 0.1.180 ## Features - **New `--restore-code`** flag restores session commit when resuming with `-w`. - **Session resume** now warns if **codebase HEAD** diverged from original. - **Welcome screen** restricts actions and upsells SuperGrok without subscription. - **`/share` slash command** now hidden when sharing is disabled remotely. ## Bug Fixes - **`/privacy opt-out`** now works for **OAuth2 and CLI team tokens**. - **Esc unfocuses prompt** during turns; **double-Esc from scrollback** cancels running turns. - **Safety and policy errors** no longer trigger unnecessary re-authentication. - **`list_dir`** cleans display paths for `.`, empty, and `./` targets. # 0.1.179-alpha.5 ## Bug Fixes - **Prevents disk accumulation** from orphaned upload files and scratch directories in long sessions. # 0.1.179-alpha.4 ## Bug Fixes - **Prevents disk accumulation** from orphaned upload files and scratch directories in long sessions. # 0.1.179-alpha.3 ## Bug Fixes - **Fixed conversation retries** on empty model responses lacking content. - **Improved bash commands** in permission prompts with syntax highlighting, wrapping, and allow-always persistence. # 0.1.179-alpha.2 # 0.1.179-alpha.1 # 0.1.179 ## Features - **How-to guides** bundled in binary, accessible via Ctrl+P and model-readable. - **`/logout`** slash command clears credentials and returns to login. - **`/privacy`** slash command toggles coding data retention opt-in/out. - **SuperGrok upsell** shown on welcome screen without subscription. - **Live countdown** and direct cancel added for `/loop` scheduled tasks. # 0.1.178-alpha.1 ## Bug Fixes - **Fixed authentication failures** and web search disabling during token refresh periods. # 0.1.178 ## Bug Fixes - **Fixed authentication failures** during token refresh periods preventing 401 errors. # 0.1.177-alpha.1 ## Bug Fixes - **New file creations** now render as all-green diffs with 'Creating' prefix. # 0.1.177 ## Bug Fixes - **write_file tool outputs** now render as proper diffs with 'Creating' prefix. - **Authentication token refreshes** now robust across shell, pager, and desktop. # 0.1.176-alpha.1 ## Features - **`grok sessions search`** now finds sessions by content with scores and snippets. - **Session picker** now combines fuzzy matches with deep content search. ## Bug Fixes - **Scheduled tasks** now require explicit user confirmation before cancellation. - **Ctrl+V image paste** now handles empty clipboard text and bracketed paste. # 0.1.176 ## Features - **`grok sessions search`** now supports **full-text queries** across chat content and tools. - **Session picker** now combines fuzzy matching with **deep content search** results. - **Unified logs** now saved to `~/.grok/logs/unified.jsonl` with **Download Logs** in desktop. ## Bug Fixes - **Scheduled tasks** now require **user confirmation** before cancellation. - **Image pasting** now handles **Ctrl+V** and whitespace-only clipboard events. # 0.1.175-alpha.1 ## Features - **Configurable announcements and tips** now load from local config files. - **Live MCP server toggle** enables enable/disable without session restart. - **New slash command** `/session-info` displays model, context usage, turns, and session title. ## Bug Fixes - **Auto-update restart** now launches the correct new version. - **Auth.json hot-reload** fixed for grok login in other terminals. - **Claude permission settings** now merge rules across all files with correct precedence. ## Performance - **Status bar git info** updates faster without synchronous spawns. # 0.1.175 ## Features - **New slash command** `/dream` triggers **manual memory consolidation**. ## Bug Fixes - **Context bar** now updates **token count** immediately after **compaction**. - **Remote session restore** with `-w` now targets **worktree** without source pollution. # 0.1.174-alpha.2 ## Features - **Configurable announcements and tips** now load from local config files. - **Live MCP server toggle** enables/disables without session restart. ## Bug Fixes - **Auto-update restart** now launches the correct new version. - **Auth.json hot-reload** fixed for `grok login` in other terminals. ## Performance - **Status bar git info** updates instantly without synchronous spawns. # 0.1.174-alpha.1 ## Features - **Announcements and tips** now load from local config files. - **MCP servers** can now be toggled live without restarting the session. ## Bug Fixes - **Auto-update restart** now launches the correct new version. - **Auth.json hot-reload** now detects `grok login` from other terminals. - **API error messages** no longer include request body for privacy. - **Status bar counting fixed**, **diff indentation preserved**, and **bash timeout** increased to 10 hours. - **Rate limit errors** now show friendly messages with **upgrade instructions**. - **External auth tokens** now refresh correctly on 401 errors. ## Performance - **Status bar git info** now updates without synchronous git spawns. # 0.1.174 ## Features - **New slash command** `/session-info` displays model, context usage, turns, and session title. # 0.1.173-alpha.2 ## Features - **Configurable announcements and tips** now load from local config files. - **Live MCP server toggle** enables/disables without session restart. ## Bug Fixes - **Auto-update restart** now launches the correct new version. - **Auth.json hot-reload** fixed for `grok login` in other terminals. - **Fixed status bar counting**, **diff indentation**, and **increased bash timeout** to 10 hours. - **Rate limit errors** now show friendly messages with **upgrade instructions**. ## Performance - **Status bar git info** updates faster without synchronous spawns. # 0.1.173-alpha.1 ## Features - **Announcements and tips** now configurable from local files like config.toml. - **Live MCP server toggle** enables disable/re-enable without session restart. - **New config options** `[features] managed_config` and `[endpoints] managed_config_url` for enterprises. - **Crash handler** opt-in via `[diagnostics] crash_handler`. - **`/loop` slash command** and **monitor tool** for recurring tasks. - **Vim-style quit commands** `:q`, `:q!`, `:wq`, `:wq!` now exit TUI. ## Bug Fixes - **Auto-update restart** now launches correct new version via symlink. - **External `grok login`** now hot-reloads auth without app restart. - **Fixed hangs** from broken streaming responses. - **Stale background tasks** now marked complete on session reload. - **MCP servers** loaded from `~/.claude.json` and `.mcp.json` files. ## Performance - **Status bar git info** renders faster using cached notifications. # 0.1.173 ## Features - **Live MCP server toggle** enables disable/re-enable without session restart. - **Blocked state** now displayed in settings with profile images and manage button. - **New config flags** `managed_config` and `managed_config_url` for enterprise setups. - **MCP servers** now load from ~/.claude.json and.mcp.json files. - **Opt-in crash handler** captures SIGSEGV/SIGBUS dumps via config or env var. - **New /loop slash command** schedules recurring tasks with monitor tool. - **Vim quit commands** :q, :q!, :wq, :wq! now exit TUI. - **Signal-safe crash handler** wired into pager with opt-in config gate. ## Bug Fixes - **Auth refresh** now handles re-auth, OIDC principal context, and stale tokens. - **Stale background tasks** now marked complete on session reload. # 0.1.172-alpha.1 ## Features - **Configurable announcements and tips** now load from local config files. ## Bug Fixes - **Auto-updates** now restart with the correct new version. - **Auth.json hot-reload** fixed for `grok login` in other terminals. ## Performance - **Status bar** git info updates faster without synchronous spawns. # 0.1.172 ## Features - **Announcements and tips** now configurable from local files like config.toml. ## Bug Fixes - **Auto-updates** now restart with the correct new version displayed. - **External `grok login`** now hot-reloads auth without restarting. ## Performance - **Status bar git info** renders faster using cached notifications. # 0.1.171-alpha.5 ## Bug Fixes - **Auto-update restart** now launches the correct new version and displays updated version number. # 0.1.171-alpha.4 ## Bug Fixes - **Exit plan mode** now shows full approve/revise/feedback options instead of simple y/n prompt. # 0.1.171-alpha.3 ## Features - **New `grok ssh`** command enables clipboard copy from remote sessions in Apple Terminal. # 0.1.171-alpha.2 # 0.1.171-alpha.1 ## Features - **MCP servers** can now be enabled or disabled from the UI. # 0.1.170-alpha.2 ## Features - **`grok login --device-auth`** enables login from SSH, Docker, and other headless environments without port forwarding. - **Skills tab** added to the hooks/plugins modal. - **Permission rules** now support path globs like `Edit(src/**/*.rs)` and recursive `**` patterns. - **Slash command dropdown** widened to show plugin names. - **`Ctrl+P` command palette** for quick access to commands and actions. - **MCP integration tools** are now discoverable and usable via `search_tool` and `use_tool`. - **Terminal multiplexer clipboard support** with automatic routing and diagnostics for tmux/zellij/screen. - **`/btw` side-questions** now appear as a compact inline panel above the prompt instead of a fullscreen overlay. - **Command palette sections** group commands by category for easier navigation. - **'New Session in Worktree'** command added to the palette. - **Environment variables** from `.claude/settings.json` are now loaded into sessions. - **`Ctrl+Shift+V` / `Cmd+Shift+V`** pastes text inline without triggering tool calls. - **Marketplace** now supports GitHub source type and a known_marketplaces.json registry. ## Bug Fixes - **Login with cached credentials** no longer fails when upgrading between auth methods. - **`Shift+1` in VSCode terminal** now correctly triggers bash mode. - **Single-line command display** no longer shows extra newlines. ## Performance - **Streaming zstd compression** for file uploads reduces transfer size. # 0.1.170-alpha.1 # 0.1.170 ## Features - **`grok login --device-auth`** enables login from SSH, Docker, and other headless environments without port forwarding. - **Skills tab** added to the hooks/plugins modal. - **Permission rules** now support path globs like `Edit(src/**/*.rs)` and recursive `**` patterns. - **Slash command dropdown** widened to show plugin names. - **`Ctrl+P` command palette** for quick access to commands and actions. - **MCP integration tools** are now discoverable and usable via `search_tool` and `use_tool`. - **Terminal multiplexer clipboard support** with automatic routing and diagnostics for tmux/zellij/screen. - **`/btw` side-questions** now appear as a compact inline panel above the prompt instead of a fullscreen overlay. - **Command palette sections** group commands by category for easier navigation. - **'New Session in Worktree'** command added to the palette. - **Environment variables** from `.claude/settings.json` are now loaded into sessions. - **`Ctrl+Shift+V` / `Cmd+Shift+V`** pastes text inline without triggering tool calls. - **Marketplace** now supports GitHub source type and a known_marketplaces.json registry. ## Bug Fixes - **Login with cached credentials** no longer fails when upgrading between auth methods. - **`Shift+1` in VSCode terminal** now correctly triggers bash mode. - **Single-line command display** no longer shows extra newlines. ## Performance - **Streaming zstd compression** for file uploads reduces transfer size. # 0.1.169-alpha.2 ## Features - **Added** `grok login --device-auth` **flag** for headless environments like SSH and Docker. # 0.1.169 # 0.1.168-alpha.1 ## Features - **`/compact-mode`** slash command toggles denser UI layout. # 0.1.168 ## Features - **`/compact-mode`** slash command toggles denser UI layout. # 0.1.167-alpha.2 # 0.1.167-alpha.1 ## Bug Fixes - **Automatic cleanup** deletes stale session files older than 30 days. - **Linux binaries** now fully static for older distro compatibility. # 0.1.167 # 0.1.162 ## Features - **Marketplace plugin provenance** tracked in InstalledRepo with source metadata and name collision warnings. - **web_fetch tool** enables web content fetching with domain permissions and proxy support. - **video_gen tool** integrated with remote settings gating and session-based authentication. - **/feedback command** activates dedicated mode for submitting session feedback to x.ai. - **Git stash-all** via ACP extension and desktop Changes panel button including untracked files. - **Pager --oauth flag** forces OAuth flow for deferred welcome-screen authentication. - **Fractional bash timeouts** like 30.5s now supported in toolset.bash config.toml. - **.mcp.json support** enables team-shared MCP servers via project root config with full precedence. - **Auth info extension** returns login method ID and email via x.ai/auth/info ACP method. - **Branch diff section** shows PR-style diffs vs default branch in desktop changes panel. - **Jujutsu VCS support** enables detection, operations, routing, and workspaces. - **Startup announcements** emits x.ai/announcements/refreshed ACP notification on agent init. - **Auto-enroll updates** defaults to enabling automatic updates without interactive prompt. - **Subagent visualizations** in pager now show persona, role, and model metadata. - **Bundled agents** discovered from ~/.grok/bundled/agents/ with lowest precedence after project/user/built-in. - **Pager welcome screen** displays rotated tip-of-the-day from RemoteSettings honoring config and env overrides. - **image_gen/video_gen tools** instruct model to display generated media inline via markdown. - **Project plugins** default disabled with enable via [plugins].enabled and added counts for UI. - **Enterprise managed configs** via ~/.grok/managed_config.toml/requirements.toml with `grok inspect` and `grok setup`. - **web_fetch tool** enabled via [features] web_fetch in config.toml alongside env/remote settings. - **grok login defaults to OAuth** instead of legacy relay; use --legacy or GROK_OAUTH_ENABLED=0 for old behavior. - **Clipboard copy over SSH/tmux** now reaches local terminal via OSC 52 alongside native clipboard writes. ## Bug Fixes - **Cross-CWD session resume** now finds local sessions under any stored directory before remote restore. - **Automatic cleanup** removes old grok/grok-pager binaries post-update, keeping current + previous. - **Preserves legacy credentials** when clearing OAuth scope in auth.json during login. - **Plan file path fix** includes session-specific path in EnterPlanMode output for correct writes. - **Rewind truncation fix** skips synthetic system-reminder messages when counting user prompts. - **User prompt history** excludes subagent prompts preventing Ctrl+R pollution. - **Path-not-found hints** from remote settings now reach TUI and shell agent config. - **Legacy WebLogin users** regain managed MCP config fetching post-OIDC migration. - **Skill discovery** handles missing frontmatter using dir name and normalizes spaced names to hyphens. - **web_fetch PDFs** saved to disk with read_file guidance instead of garbled text. ## Performance - **Parallel tool dispatch** accelerates multi-tool batches via concurrent execution. - **Faster session memory staleness** via 7-day half-life default and equalized session source weights. # 0.1.161-alpha.3 ## Features - **Interactive plan approval dialog** enables approve/reject/feedback on exit_plan_mode before building. ## Bug Fixes - **Prevents model crashes** on large files by capping hashline_read output at MAX_LINES_READ like read_file. - **Automatic cleanup** removes old grok/grok-pager binaries post-update, keeping only current and previous. # 0.1.161-alpha.2 ## Features - **Parallel tool dispatch by default** accelerates multi-tool execution via batched skills and timing fixes. - **Web fetch tool** enables controlled web content retrieval with interactive domain permissions and config gating. ## Bug Fixes - **Fixed pager login screen** for enterprise OIDC via centralized interactive auth detection. - **Per-key error streak detection** prevents cross-tool interference in doom loop termination. # 0.1.161-alpha.1 ## Features - **Force OAuth login** from pager welcome screen using new `--oauth` startup flag. # 0.1.160-alpha.8 ## Features - **Per-hook enable/disable toggles** via ~/.grok/disabled-hooks file and 'e' key with **multi-line j/k navigation fix**. - **Bash-mode execute blocks auto-expand** after completion to display output immediately. - **Video generation tool** supports xAI API with async polling, download and sequential MP4 naming. - **Marketplace plugin installs** route through git_install with provenance tracking. - **Parallel tool dispatch** via GROK_PARALLEL_TOOL_DISPATCH=1 runs concurrent Phase 2 execution. - **VideoGenConfig threading** gates video_gen tool via feature flag and session auth. - **/feedback command** enters teal-accent mode for fire-and-forget session feedback POST. - **modelId in UserMessageChunk _meta** enables frontend turn-to-model association. - **Git stash-all** via x.ai/git/stash ACP extension wired to desktop Changes panel. - **Float timeout_secs** in toolset.bash config.toml enables fractional second timeouts. ## Bug Fixes - **Silent refresh prevents re-auth** on near-expiry tokens, fixes auth_type propagation and telemetry staleness. # 0.1.160-alpha.7 ## Features - **Mid-session hook reloading** on trust/untrust/add/remove without restart. - **Per-turn Stop hooks** plus **UserPromptSubmit** event fire before processing with scrollback annotations. - **OAuth login option** via --oauth/--legacy flags, GROK_OAUTH_ENABLED env, feature flag (legacy default). ## Bug Fixes - **Cross-CWD session resume** finds local sessions from worktrees via --resume/--load. ## Performance - **Sequential N.jpg filenames** replace UUIDs in image_gen for massive token savings. # 0.1.160-alpha.6 ## Features - **Live auto-refresh** of open hooks/plugins modal on registry changes like install + reload. - **Adds live PR status display** in desktop changes panel via new ACP x.ai/pr/status extension. - **Adds domain allowlist and typed WebFetchOutput enum** with DomainNotAllowed and CrossHostRedirect variants. ## Bug Fixes - **Prevents false-positive background '&' detection** inside heredoc bodies like `cat << EOF... &http.Request... EOF`. - **Restores web search functionality** by reinjecting required proxy headers like x-grok-client-version. - **Ensures config.toml base_url fully overrides** default model api_base_url across all credential paths. # 0.1.160-alpha.5 ## Features - **GrokNight default theme** with **runtime color quantization** ensures correct rendering across truecolor, 256-color, and 16-color terminals. - **ACP endpoints for hooks/plugins listing** enable pager modals to display loaded hooks and discovered plugins. - **ACP action endpoints** for hooks/plugins management support trust, install, reload, and update operations via pager. - **Legacy relay auth flow** via `grok login --legacy` restores pre-OIDC accounts.x.ai token exchange. ## Bug Fixes - **Terminal-width-constrained tables** wrap cell text proportionally without overflow or column misalignment. - **Auth fallback to legacy scope** reads old accounts.x.ai tokens on devboxes provisioned via x setup. # 0.1.160-alpha.4 ## Features - **WebFetch tool** enables secure URL fetching, HTML-to-markdown conversion, SSRF guards, and in-memory caching. # 0.1.160-alpha.3 ## Breaking Changes - **OIDC OAuth replaces relay auth**; removed `--auth-signin-url`/`exchange-code-url`/`redirect-target` flags, run `grok login` to migrate. ## Features - **LSP integration** injects diagnostics as reminders and exposes opt-in code intelligence tools via `.grok/lsp.json`. - **Glob-aware permission rules** support prefix/suffix wildcards, tool=* and refined bash/edit matching. - **Claude settings.json compatibility** loads legacy rules as fallback when native TOML absent. - **Path-specific Read permissions** match against file paths from read_file/list_dir tools. - **Web search model override** via CLI, config.toml or env defaults to grok-4-1-fast-reasoning. - **Grep-specific permissions** enable path-only matching for Claude-compatible rules. - **Remote bash timeout toggle** via remote settings auto-backgrounds foreground commands with local override. - **Image generation tool** creates Imagine API images saved to session/images/ folder. - **Configurable web search disable** from config.toml via `disable_web_search = true`, OR-ed with CLI flag. - **Image generation tool** gated behind a server-side flag or `GROK_IMAGE_GEN=1` env var with session auth. - **Dynamic nested skill discovery** in `.grok/skills/` subdirs with runtime system reminder announcements. ## Bug Fixes - **Quit confirmation** responds immediately on second ^D without infinite delay. - **Terminal restore** disables raw mode before CSI sequences to prevent garbage output. - **Session summary** falls back to prompt prefix on tool parse failure avoiding crash. - **Prevents YOLO auto-approval** of plan reviews by switching ExitPlanMode to independent ext_method channel. # 0.1.160-alpha.2 ## Features - **Configurable permission policies** enable automatic allow/deny rules via ~/.grok/config.toml before existing checks. - **Prevents timeout doom loops** by auto-backgrounding foreground commands exceeding default 120s without explicit timeout. - **ACP git extensions** enable desktop git info/branches/checkout without local shelling, supporting cloud workspaces. - **Richer hook annotations** add HTTP URL/status/response previews to scrollback for pre-tool-use summaries. ## Bug Fixes - **Robust session cancellation** shares logic with 5s safety-net timer to prevent stuck working states. - **Suppresses config warning** for [desktop] section owned by grok-desktop using opaque serde sink field. - **Prevents hook reload panics** by wrapping registry in Arc to avoid RefCell borrows across awaits. ## Performance - **6x faster worktree creation** skips redundant LFS smudge filters on BTRFS snapshots using GIT_LFS_SKIP_SMUDGE=1. # 0.1.160-alpha.1 ## Features - **New TUI slash commands** /clear alias, /context usage breakdown, /version, and /login auth status. - **Skills discovery expands** to.agents/skills directories alongside.grok and.claude. ## Performance - **Fast btrfs worktree creation** on rootless devboxes via gRPC delegation to explorer agent. # 0.1.160 ## Breaking Changes - **OIDC OAuth2 replaces legacy relay login** for `grok login`; add `--legacy` flag for old flow and remove `--auth-signin-url` etc. CLI flags (migrate by deleting auth.json). - **Adds `grok login --legacy`** fallback; removes `--auth-signin-url` etc flags (use env/config defaults, no migration needed for most users). ## Features - **ACP git extensions** (`x.ai/git/info`, `/branches`, `/checkout`) enable cloud-local git ops without subprocesses. - **Detailed hook scrollback** shows HTTP POST URLs, status codes, and response previews per executed hook. - **Remote bash timeout config** via remote settings `auto_background_on_timeout` overrides local config.toml. - **ACP hooks/plugins listing** (`x.ai/hooks/list`, `/plugins/list`) exposes loaded configs for pager modals. - **Image generation tool** via xAI Imagine API saves to session/images/ folder. - **Management actions for hooks/plugins** via x.ai/{hooks,plugins}/action with live modal refresh. - **disable_web_search now honors config.toml** value ORed with CLI flag. - **WebFetch tool scaffold** securely fetches URLs to markdown with SSRF protection. - **Dynamic discovery of nested skills** from.grok/skills/ subdirs at runtime via reminders. - **PR status extension (x.ai/pr/status)** fetches branch PR state, title, number, and URL via gh CLI. - **Web fetch domain allowlist support** with enum outputs for blocked domains and cross-host redirects. ## Bug Fixes - **Readable markdown tables** in narrow terminals via proportional column shrinking and smart cell text wrapping. - **Improved permission UX** by reordering 'don't ask again' option first across TUI, pager, and desktop clients. - **Reliable prompt cancellation** via shared logic and 5s safety-net timer prevents stuck 'working' states. - **Silent [desktop] config handling** consumes grok-desktop section without spurious 'unrecognized key' warnings. - **Panic-free hook reloads** via Arc-wrapped registry prevents BorrowMutError during concurrent plugin updates. - **Clean terminal restore** disables raw mode before CSI sequences to avoid garbage on Ctrl+D exit. - **Robust session summaries** handle chat completion errors gracefully without panics. - **Eliminates compiler unused import warnings** by scoping test imports to cfg-gated function. - **Prevents YOLO auto-approval of exit plans** by switching to independent ext_method. - **Fixes web search 426 errors** from missing client version header in requests to the API proxy. - **Config.toml base_url fully overrides** default models' api_base_url for all credential sources. ## Performance - **6x faster worktree creation** by skipping redundant LFS smudge filters on snapshot checkouts and resets. # 0.1.159-alpha.11 ## Breaking Changes - **Default model updated** enables seamless checkpoint swaps; migrate by renaming `[internal_models]` to `[models]` in config.toml. ## Features - **New hooks-remove and hooks-untrust commands** with shared helpers across shell and TUI. - **Bash mode (`! cmd`)** enables direct shell execution from pager, bypassing agent loop. - **Subagents default_model config** forces all subagents to one model, overriding others. ## Performance - **Faster exit-plan-mode** by sending plan content inline, eliminating client readFile round-trip. - **Longer inference idle timeout** default raised to 10min for complex responses. # 0.1.159-alpha.10 ## Breaking Changes - **Default model updated** enables seamless checkpoint swaps; migrate by renaming `[internal_models]` to `[models]` in config.toml. # 0.1.159-alpha.9 ## Breaking Changes - **Config validation warns** on unknown keys with typed sections; migrate `auto_update` etc. to `[cli]`, `[models]`. ## Features - **Resolved model ID** now shown in `/session-info` output and feedback submissions. - **Model sees task completions** as `` tags in tool results, eliminating polling loops. - **Ctrl+R fuzzy history search** in pager prompt supports Up/Down navigation and mouse. ## Bug Fixes - **Consistent tool/parameter names** in model-facing text and errors via TemplateRenderer resolution. - **Single progress lines** during remote session restore, eliminating duplicates. - **Plan mode UI updates** correctly on agent entry and across session switches. - **Compaction succeeds** for Responses API models by preserving encrypted reasoning. # 0.1.159-alpha.8 ## Features - **Question-answer panel** in pager with **GrokBuildPlanNoSubagents** mode excluding subagent tools. - **New hook events** Stop, Notification, UserPromptSubmit, SubagentStart/Stop plus **Claude-compatible** toolUseId schema. - **Resume completed subagents** via task `resume_from` inheriting raw transcript, tool state, model; schema/docs/provenance/observability. - **`/clear` slash command** aliases `/new` to start a fresh session. # 0.1.159-alpha.7 ## Features - **Install and uninstall plugins** via `/plugins install ` and `/plugins uninstall ` supporting git refs, subdirs, local symlinks, and multi-plugin repos. ## Bug Fixes - **Prevents delimiter deletion** in hashline_edit replace by clarifying inclusive anchor/end_anchor range in tool docs. - **Prevents 413 errors** by compressing large `read_file` images to max 1024px JPEG under 768KB with progressive quality reduction. - **Eliminates TUI model jump** by patching leader initialize response to use client's `default_model` instead of agent's. # 0.1.159-alpha.6 ## Features - **Execute inline hooks and MCP servers** from plugin manifests with shell `/plugins add/remove` and HTTP handler support. - **Redesigned OAuth consent page** uses icon cards; shell callback pages now styled with success/error feedback. - **MCP catalogs expose scope_name** for human-readable labels alongside scope/scope_id. - **Discover skills from**.claude/skills directories alongside.grok/skills. - **TUI hook messages render** inline as scrollback annotations with hashline aliases. ## Bug Fixes - **use_tool now normalizes** double-encoded JSON strings in tool_input to objects for reliable MCP dispatch. - **Hashline anchor docs/errors** now specify LINE:HASH1:HASH2 format accurately. - **Codex grep_files uses** shared rg_path() matching grok_build pattern. - **Safe truncation prevents** mid-character cuts in subagent/sampling previews. - **insert_after empty content** now inserts blank line matching docs. - **Config watcher deduplicates** events per debounce batch for stability. # 0.1.159-alpha.5 ## Features - **Dev tool usage stats pane** shows real-time activity breakdown, timeline, and inter-token latency. - **Claude frontmatter parity** parses allowed-tools lists/strings, model, and effort in skill frontmatter. - **Auto-injected managed MCPs** from grok.com for WebLogin, deduped with config.toml opt-out. - **ACP worktree management** adds list/show/gc/db methods with filters and dry-run. - **ACP x.ai/auth/logout** removes scopes from ~/.grok/auth.json. - **Custom npm registry** via config.toml or GROK_NPM_REGISTRY respects enterprise.npmrc. - **CLI worktree commands use ACP** with repo-wide session resolution for -w -r. - **Repo-wide worktree session resume** resolves locally across same-repo directories via ACP before remote fallback. - **TUI worktree mode** uses repo-wide ACP resolution for interactive and headless resume. ## Bug Fixes - **Legacy search_replace** skips nearest-match hint computation matching confusable_hint gating. - **Shorter run_terminal_cmd error messages** revert verbose background & operator wording. - **fsnotify forwards.git events** to watch_git clients including HEAD/index changes. # 0.1.159-alpha.4 ## Features - **ACP worktree management** adds list/show/gc/db methods with filters and dry-run support. ## Bug Fixes - **Legacy search_replace** skips nearest-match hint for 0.4.10 clients matching confusable_hint pattern. # 0.1.159-alpha.3 ## Features - **Subagent worktrees preserved** after completion with path in output; role-level fork and isolation defaults added. - **Always-approve mode** renames yolo flag/slash command with backward-compatible aliases preserved. - **Help skill reads ~/.grok/config.toml** to answer MCP server and model configuration queries. - **Deployment keys supported** on all API proxy endpoints including storage and sessions. - **Public install-grok.sh script** supports deployment keys and channels without VPN. - **Subagent prompts** use dedicated compact template with system role/persona. - **SubagentSessionMetadata v1** enables GCS persistence with full provenance and registry extensions. ## Bug Fixes - **Subagents inherit parent file toolset** resolving hashline vs standard configuration correctly. - **Subagent forking fixed** with system prompt injection, conversation loading, and provenance tracking. - **Subagent personas override model/reasoning** with full precedence chain and PromptMode::Extend for built-ins. - **TUI no longer stuck after auto-compact** by preserving original turn ID. - **Blocks nested subagent spawning** by limiting depth to 1. - **Subagent permission prompts show tool details**; hashline_edit now requires approval. - **Forked subagent context normalized** to System + BackgroundContext + Task for recency. - **Subagents inherit parent yolo mode and OTEL trace**; depth limited to prevent recursion. - **Unified skill resolution** rejects ambiguities across shell, TUI, backends with qualified names and alternatives. - **Prevents TUI session errors** on leader connect by skipping eager new session creation. - **Multi-edit diff previews** for hashline_edit tool parse details array in TUI. - **Fixes subagent terminal stalls** using spawn_local on LocalSet single-threaded runtimes. - **Prunes orphaned kill_task/get_task_output** after capability filtering removes providers. ## Performance - **Eliminates hyper DispatchGone errors** with 2 idle connections and 90s pool timeout. # 0.1.159-alpha.2 ## Features - **Namespaced plugin skills and agents** enable qualified resolution with deduping and plugin provenance. - **/plugins slash commands** add list, reload, trust with plugin config in config.toml. - **Remote default_model** resolution falls back silently if unavailable in user list. - **Subagent permission attribution** enriches TUI dialogs and events with child provenance. - **Subagent lineage tree structures** enable recursive depth-sorted display in TUI tasks panel. - **Structured subagent details and lineage** render diagnostics below selected TUI tasks rows. - **TUI /plugins commands** support live reload, qualified autocomplete, and plugin source display. - **Subagent safety guards** fallback to parent model on unknown config or fork context overflow. - **Bundled /help skill** extracts README.md to ~/.grok/ for slash command and model self-help. - **Identifies worktree sessions** in client sidebars via session_kind and source_workspace_dir metadata in summary.json. ## Bug Fixes - **Per-edit diff metadata** prevents cascade from line shifts in hashline multi-edits. - **Prevents SQLITE_BUSY errors** during concurrent SQLite WAL setup by setting busy_timeout before journal_mode. # 0.1.159-alpha.1 ## Features - **Subagent persona support** enables layered instructions from config.toml and.grok/personas/*.toml with fail-closed resolution. - **Compaction-safe fork inheritance** preserves parent prefix while summarizing only child-owned suffix. - **Enhanced task tool guidance** coaches model on fork_context, capability_mode, overrides, and personas. - **External auth providers** support custom login binaries with TUI/headless flows. - **Configurable feedback/trace endpoints** route enterprise telemetry independently. - **Subagent capability enforcement** filters disallowed built-in tools at spawn time. - **--no-memory flag** disables cross-session persistence overriding all other configs. - **Subagent diagnostics** in TUI tasks panel display fork source, capability mode, and persona. - **Worktree isolation** enables subagents to edit without affecting parent workspace. - **A/B retry** discards failed forks and replays prompt via new ACP extension method. - **Synchronous user questions** via client RequestPermission block agent until answered. - **User approval** for exit_plan_mode via RequestPermission blocks until build or revise. - **Reasoning deltas** streamed to thinking panel for real-time visibility. ## Bug Fixes - **Fork-safety filtering** removes synthetic messages and truncates incomplete turns from subagent inherited context. - **Compact ACP diff metadata** returns only changed lines for scattered edits spanning over 80 lines. - **Per-client terminal/FS routing** prevents misrouting in leader mode across mixed clients. - **BYOK model api_keys** preserved during proactive auth refresh by skipping session token overwrite. - **Unified turn_number** across remote traces and backend storage enables reliable data joins post-rewind. - **Clean error messages** for session restore failures in non-git directories without backtraces. - **Stable slash autocomplete** prevents tick refreshes overwriting command suggestions. - **Explicit AuthType** gates refresh to prevent overwriting user-provided api_keys. # 0.1.159 ## Breaking Changes - **Default model updated**; rename `[internal_models]` to `[models]` in config.toml. ## Features - **Server-controlled default model** via remote settings with CLI/config fallback. - **Subagent capability modes** enforce toolset filtering at spawn time. - **--no-memory flag** disables cross-session persistence overriding all configs. - **Subagent metadata** shows fork source, capability, and persona in TUI. - **Worktree isolation** runs subagents in private git worktrees. - **A/B retry handler** replays failed dual forks with same prompt. - **Permission dialogs** attribute requests to child subagents. - **Lineage tree builder** groups subagents by parent for diagnostics. - **Subagent detail pane** shows diagnostics and child lineage tree. - **Synchronous user questions** intercept ask_user_question tool to block agent on client answers via RequestPermission. - **TUI plugin management** adds /plugins list/reload/trust with live hook reload and CLI --plugin-dir. - **Interactive plan approval** intercepts exit_plan_mode to block until client Build/Revise. - **Question-answer panel** adds pager UI for interactive permissions and subagent-free GrokBuildPlan agent. - **Live reasoning deltas** stream raw text chunks to thinking panel. - **Dev tool stats pane** docks below scrollback with timeline, ITL p50/p99, and category breakdowns. - **Skills reject ambiguous short names** with qualified alternatives listed. - **Subagents use dedicated prompt template** excluding persona catalog. - **Subagent role/persona now in system prompt** for durable behavioral identity. - **Skills parse Claude frontmatter** for allowed-tools, model, effort overrides. - **Plugin install/uninstall commands** support git repos, tags, subdirs, local paths. - **Auto-injects managed MCPs** from grok.com into CLI/TUI for WebLogin users. - **ACP worktree management** adds list/show/gc/db methods with filters and dry-run. - **ACP logout method** removes scopes from ~/.grok/auth.json. - **Discovers skills from.claude/skills** alongside.grok/skills across local, repo, and user directories. - **Inline TUI scrollback annotations** for hooks with ✓ success indicator and hashline_* Claude aliases. - **New hook events** Stop/Notification/UserPromptSubmit/SubagentStart/Stop with Claude-compatible PreToolUse schema. - **Exposes resolvedModelId** in feedback submissions and /session-info slash command. - **Warns on unrecognized config.toml keys** at startup using serde_ignored and typed sections. - **/clear slash command alias** starts new session like /new. - **Full resume command** shown on TUI exit including cd and --resume with session ID. - **Git staging awareness** in hunk-tracker with batch get-all-file-contents endpoint. - **Direct bash mode** (`! cmd`) in pager bypassing agent for shell execution. - **Global subagent default_model** config overrides all other model sources. ## Bug Fixes - **Preserves BYOK api_keys** during proactive session token refresh. - **Unified turn_number** across traces and DB enables reliable remote data joins. - **Clean errors** on session restore without backtraces or panics. - **Slash autocomplete** no longer clobbered by tick-driven arg refreshes. - **Prevents token refresh overwriting** user-provided API keys via explicit AuthType tracking. - **A/B forks strip reasoning** from assistant messages to prevent CoT leakage. - **Per-edit diff metadata** captures regions directly avoiding cascade in multi-edits. - **TUI no longer stuck streaming** after auto-compact turn_id desync. - **Prevents recursive subagent spawning** by limiting depth to 1. - **Subagent permission prompts** now display full tool details and paths. - **Forked subagents get normalized prompts** as [System, BackgroundContext, Task]. - **Leader TUI avoids session conflicts** by skipping eager new session. - **TUI renders multi-edit diffs** correctly for hashline_edit tools. - **Subagent tool stalls fixed** via spawn_local for terminal actor. - **Prevents subagent toolset failures** by pruning orphaned kill_task/get_task_output after capability filtering. - **Skips nearest-match hint computation** for legacy 0.4.10 search_replace clients. - **Shortens run_terminal_cmd & error messages** by removing redundant background clause. - **Fixes deployment key auth** in feedback/sampling clients and external endpoint headers. - **Normalizes double-encoded tool_input** strings to objects in use_tool dispatch. - **Clarified hashline anchor formats** to LINE:HASH1:HASH2 in tool descriptions, docs, and errors. - **Codex grep_files uses shared rg_path** matching grok_build and opencode patterns. - **Char-boundary-safe truncation** prevents invalid UTF-8 in subagent, sampling, and prompt previews. - **insert_after empty content inserts blank line** matching tool docs and replace behavior. - **Deduplicated config watcher events** within debounce batches prevents flaky rapid-write tests. - **hashline_edit docs specify inclusive replace range** preserving endpoint delimiters like }. - **Compresses read_file images to JPEG max 1024px/768KB** preventing oversized payload 413 errors. - **Frictionless desktop auto-auth** by refreshing auth_manager from disk in initialize(). - **Eliminates duplicate summary** in BackgroundTaskStarted tool output. - **Suppresses duplicate reminders** after kill_task or completed get_task_output. - **Prevents false non-git warnings** from unexpected libgit2 errors. - **Blocks unsafe pipelines** by tree-sitter parsing all command segments. ## Performance - **Fewer `DispatchGone` errors** via larger HTTP pool (2 idle connections, 90s timeout). - **Inline plan content** in exit_plan_mode avoids client readFile round-trip. # 0.1.158-alpha.14 ## Features - **Full-text search across past sessions** via x.ai/session/search ACP method with FTS5 indexing and workspace filtering. - **ACP resume session in worktree** via x.ai/git/worktree/resume_session for programmatic clients. ## Bug Fixes - **Scoped subagent cancellation** targets only current turn with TUI confirmation modal. - **Prevents corrupted post-session diffs** by awaiting hooks before root repo replication. - **Fast AB cancellation** with async hook awaits and 30s timeouts to avoid hangs. - **Compact snippets for scattered edits** using per-region views with gap markers over 80 lines. - **Large session sharing** via signed GCS URLs bypassing 413 payload limits. ## Performance - **Efficient subagent progress updates** with coalescing, adaptive 1-5s polling, stale indicators, and elapsed time display. # 0.1.158-alpha.12 ## Features - **Live subagent progress tracking** in TUI tasks panel via ACP `list_running`/`get` polling and push notifications. - **Configurable bash tool params** like timeouts injected from config.toml `[toolset.bash]` into GrokBuild actors. ## Bug Fixes - **Precise io::ErrorKind mapping** from ACP file errors enables consistent NotFound and PermissionDenied handling. - **Silent grok-pager installation** hides internal details from install and auto-update user output. - **Improved batch edit errors** explicitly state atomic all-or-nothing semantics and retry guidance. # 0.1.158-alpha.11 ## Features - **Configurable hashline toolset** with mutual exclusion validation, scheme parameters, and dynamic descriptions. - **Multi-source Claude-compatible hooks** from settings files and directories with project trust gating and unified /hooks commands. - **Live subagent progress** shows turns, tool calls, token usage, tools used, and errors while running. ## Bug Fixes - **SSE stream parsing** handles flat error format from Grok proxy without deserialization failure. - **Grep and list_dir outputs** use display paths to prevent leaking internal worktree paths to model. # 0.1.158-alpha.10 ## Features - **Plan mode state machine** integrates into session lifecycle with persistence and tool support. - **Post-A/B session hooks** via GROK_AB_POST_SESSION_HOOK capture worktree changes. ## Bug Fixes - **Prevents Linux Docker overlayfs hangs** in A/B sessions using git-based worktree replication. - **Eliminates false tool timeouts** for long-running builds after fixing overlayfs hangs. - **Fixes grep large-output gRPC errors** by raising tools-server limit to 128 MiB. # 0.1.158-alpha.8 ## Features - **Enhanced announcement UX** adds paging, prev/next commands, and `GROK_DEV_ANNOUNCEMENTS` override. - **`--disable-web-search` flag** omits web search tool from agent for benchmark isolation. - **`hashline_read` tool** outputs files with line anchors using chunk h=3 c=8 scheme. - **Optional auth for feedback** enables unauthenticated submissions with `GROK_USER_METADATA`. - **Plan mode tools** add `enter_plan_mode`, `exit_plan_mode`, and `ask_user_question` with notifications. - **Auto-installs grok-pager** alongside grok during internal and GitHub release updates. - **Mid-session token refresh** re-runs external auth or uses OIDC refresh_token on expiry. - **`hashline_edit` tool** supports replace/insert_after/write with anchor validation and overlap checks. - **Tiered range warnings** for hashline edits caution on medium/large multi-line rewrites. - **Shifted-anchor recovery** in hashline edits suggests retry anchors, reports ambiguities, with wider context. - **Anchor-annotated grep** injects stable anchors into ripgrep output for seamless edit workflows. - **Hooks v0 system** runs project scripts on pre/post-tool-use and session lifecycle events. - **Independent feedback gating** via GROK_FEEDBACK_ENABLED separates it from telemetry controls. - **Leader CLI tooling** supports discovery, targeting, profiling commands, dev spawn. ## Bug Fixes - **Bash `run_terminal_cmd` respects `enabled_background=false`** by hiding `is_background` in schema and rejecting at runtime. - **Structured CLI errors** in tool-server with code, message, and retryable fields. - **Async metadata** in list_dir prevents blocking the executor on overlayfs-backed paths. - **Overlay path rewriting** in AcpSessionFs guards AB isolation against display path leaks. - **ESC cancel recovery** clears cancelling state on prompt-complete notifications. ## Performance - **Runtime CPU profiling foundation** enables leader process profiling via control protocol and pprof. # 0.1.158-alpha.7 ## Features - **Managed MCPs flag** resolves env>config>remote settings>default, disabled in headless mode. - **Grok 4.20 default model** with CLI/env/config/remote-settings overrides for catalog models. ## Bug Fixes - **Prevents queued prompts flushing together** in TUI via turn IDs ignoring stale responses. - **Fixed viewport height** enables full prompt dropdown expansion in one frame. - **Respects explicit yoloMode=false** per-session overriding client defaults. - **Aborts path walks on first timeout** preventing 25-minute hangs on slow filesystems. - **5-minute tool timeouts** prevent registry lock hangs with execution tracing spans. ## Performance - **Tuned HTTP client for IC** adds keepalives, disables Nagle, sets fast connect timeout. - **Streams request bodies directly** to IC without buffering on common non-rewrite path. # 0.1.158-alpha.6 # 0.1.158-alpha.5 ## Breaking Changes - **Context window requirement** forces BYOK users to explicitly set it in config.toml, with migration via Serde error messages. ## Features - **Dynamic model context updates** ensure the chat shell uses the latest limits from the backend for accurate operations. - **Custom models endpoint** lets users configure their own OpenAI-compatible proxy for enterprise needs. - **Configurable AB turn timeout** enables dynamic limits via remote settings without redeploying. - **Automatic file re-reading after compaction** injects recent file contents for immediate model context. - **Persisted memory reminders** maintain context in chat history for improved session continuity. - **Timeout for AB comparisons** cancels stalled sessions after a set time, improving reliability. - **Configurable memory injection** enables controlling first-turn searches for better session starts. ## Bug Fixes - **Alpha channel updates** now correctly select the latest version, fixing issues with stale releases. - **Non-blocking memory flushes** ensure sessions progress without delays during idle operations. - **Accurate prompt completion handling** prevents errors from being misreported as cancellations. - **Stable application startup** fixes crashes from nested runtimes during initialization. - **Correct A/B session context windows** ensure auto-compaction uses the right thresholds. - **Reliable TUI startup** eliminates panics from nested runtimes. - **Async file handling** prevents session hangs on slow filesystems in AgentsMdTracker. - **TUI layout fixes** keep prompt anchored and status visible for smoother user interaction. ## Performance - **Faster SSE error detection** reduces CPU overhead by avoiding full JSON parses on normal chunks. - **Reused HTTP connections** speed up turns by eliminating TLS handshakes between requests. - **Single-pass request serialization** cuts overhead for large conversations in streaming paths. # 0.1.158-alpha.4 ## Features - **Remote announcements** surfaced from remote settings with tolerant parsing, periodic refresh, expiry filtering, and persistent hide/show state. - **`grok completions` subcommand** generates bash/zsh completion scripts, with fast-path exit before any network or auth warmup. - **Running subagents preserved after compaction** with IDs, types, and descriptions injected into the post-compaction system reminder. - **External auth provider** delegates login to a user-supplied binary for sandboxed VMs, CI, and air-gapped environments with automatic mid-session token refresh. - **Unicode confusable resilience** across search_replace, read_file, and doom-loop paths — smart quotes and em-dashes no longer cause silent edit failures. ## Bug Fixes - **use_tool works in all server contexts** by dispatching through ToolCallContext instead of session-actor interception, fixing silent failures in grok-tools-server. - **MCP tool calls use fresh auth** by looking up the current client at call time, fixing silent 401s after OAuth token refresh. - **Remote settings forwarded through proxy** — telemetry, trace upload, tool search, and writeback flags were silently dropped and never reached the client. - **Leader startup fetches remote settings** so telemetry, doom loop, and other remote-settings-gated features work in leader mode. - **AuthManager uses configured proxy URL** instead of a hardcoded default proxy host for user-info fetches. - **Stale todo spinners cleared at turn end** via transient Plan notification that marks lingering in_progress items as completed for display. - **Config.toml model overrides applied correctly** — custom api_key, env_key, and base_url on built-in model keys were silently dropped by the enum's per-variant field layout. - **AB comparison cancel cleanup** now uses canonical teardown path, fixing overlay mount and FS isolation registration leaks. - **Connect timeout for sampling clients** (10s default, configurable) prevents frozen CLI on unreachable inference servers; TLS warmup now targets the sampling path. - **Leader protocol backwards compatibility** by defaulting the `ready` field when connecting to older leader binaries. - **Custom skill path discovery** now works end-to-end — paths added via `x.ai/skills/add` or config.toml are included in agent skill lookup. # 0.1.158-alpha.2 ## Features - **Configurable telemetry destinations** via `[telemetry]` config section and env overrides, with a trace-upload kill switch for noisy GCS warnings. - **Pull-on-miss session restore** fetches remote sessions when not found locally, with remote-settings-gated writeback for TUI sessions. - **Session restore with dedup archives** materializes GCS-referenced patches, blobs, and untracked files before applying. - **Binary file attachments** persisted to session storage with content-hash dedup and surfaced as path hints for model context. - **Subagent support** gated behind `--subagents` flag, env var, config, or remote settings — disabled by default. - **Non-git-repo startup warning** with blocking quit/continue prompt, gated behind a server-side feature flag. - **Line-numbered memory_get output** matching read_file format, with config-backed search defaults from `[memory.search]`. - **Richer session auto-save** captures tool-usage breakdown and file paths touched; shell commands excluded to avoid persisting secrets. - **`grok memory reindex` and `doctor` CLI commands** for index maintenance, plus access-frequency boost in hybrid search. - **Cursor-based session reconnect** skips already-seen replay events, forwarding only post-cursor updates as live. - **Subagent support in web UI** with clickable session cards, persistent spawn/finish notifications, and structured completion output. - **Session restore progress tracking** with phase-level events, elapsed timers, and explicit incomplete-vs-complete outcome differentiation. - **Per-subagent model routing** via `[subagents.models]` config and agent definition `model` field, with conditional override for heavy parent models. - **Transparent stdio bridge reconnect** replays cached `initialize` and `session/load` after leader restart so external clients resume immediately. - **Leader/client version mismatch notification** surfaces a TUI banner and headless log warning when client and leader binaries diverge. - **OIDC manual paste fallback** races stdin against the loopback server so remote VM users can paste auth codes directly, with `[auth]` config alias. - **Session ID clipboard copy** on /session-info, with a transient status banner for success and error feedback. - **Telemetry defaults to off** with centralized env > config > remote settings > default precedence for telemetry and trace uploads. - **User-defined subagents** via .grok/agents/*.md files with per-subagent config toggles and dynamic Task tool descriptions. ## Bug Fixes - **Doom-loop detection hardened** with whitespace-normalized fingerprints, per-file failure tracking, nearest-match hints, and outcome-aware error streaks. - **Restore no longer overwrites git identity** — synthetic commits use scoped env vars instead of writing to repo-local git config. - **Session token routing fixed** for default models — `grok login` users no longer get 400 errors on proxy-routed models. - **Richer API error diagnostics** with redacted headers, request body previews, and response metadata in failure messages. - **Worktree list preserves full IDs** by computing dynamic column width instead of truncating to 16 characters. - **Restored remote sessions create distinct local children** with parent tracking, preventing identity reuse and duplicate restores on repeated `grok -r`. - **Auto A/B testing works on non-macOS** by treating absent worktree pool as passthrough instead of gate. - **Worktree ID collision eliminated** by switching from time-based UUID v7 prefix to random UUID v4. - **Cancelled and restored sessions no longer hang** by sending explicit shutdown commands before dropping session handles. - **Memory search config and watcher correctly applied** — `[memory.search]` was silently ignored and first-use sessions missed watcher startup. - **Auto-continue prompts excluded from real user query counts** in compaction, memory hooks, and session-end telemetry. - **Deleted memory files removed from search results** and appended content indexed immediately without watcher restart. - **Doom-loop detection overhaul** with polling-aware stagnation tracking, turn-scoped resets, targeted per-context warnings, and richer error classification. - **A/B overlay path sanitization** across system prompt, tool results, URL-encoded paths, error messages, and `get_task_output` command display. - **MCP server retry on init failure** by restoring HTTP config after handshake errors instead of permanently dying. - **Sessions no longer hang on stalled inference** — content-aware idle timeout distinguishes keepalive SSE events from real completion tokens. - **Turn completion signaled after empty-response retry** by emitting a fallback `AgentMessageChunk` when streaming events were lost. - **Up-arrow no-op on empty history** prevents entering history search mode when no previous prompts exist. - **Safer conversation compaction** by stripping orphaned tool results and falling back when validation fails. - **Reliable prompt persistence** by gating persist_ack on chat history acceptance and flush barrier completion. - **Leader startup deadlock resolved** by releasing the file lock before connecting so the leader can reach readiness. ## Performance - **Faster session restore** by downloading codebase, memory, and state archives concurrently instead of sequentially. - **Bounded hunk tracker memory** — binary and >1MB files tracked without retaining content, fixing 1.2GB retention from large files. - **Non-blocking telemetry uploads** prevent prompt turns from stalling when the GCS proxy is unhealthy. - **Reduced conversation query overhead** with narrow targeted queries that avoid full O(n) conversation clones. - **Faster session resume** via selective prompt extraction that skips full deserialization of non-prompt update lines. - **Bounded long-session memory** via eager in-memory pruning of old tool results after each user turn. # 0.1.158-alpha.1 ## Breaking Changes - **Repeated failed edits now trigger reread guidance** and search_replace NoMatchesFound responses changed shape to include file_path; update ACP/tool-output parsers. - **Bounded hunk-tracker memory usage** adds explicit file-content status views to the ACP response; clients should migrate from legacy content fields to `baseline` and `current` metadata. ## Features - **Configurable telemetry routing** with custom event endpoints, Mixpanel controls, and remote kill switches for analytics and trace uploads. - **Remote session restore on local miss** by hydrating backend sessions into local storage and gating writeback sync with a server-side flag. - **More complete remote restores** by materializing deduplicated patches and blobs before replay, with partial-restore warnings for external users. - **Binary file attachments are now supported** by decoding blob resources to session storage with MIME metadata, size limits, and content-hash deduplication. - **Subagent task execution** adds child agent sessions with lifecycle tracking, progress rendering, and background-task management across the CLI stack. - **Opt-in subagent spawning** adds a `--subagents` flag plus env, config, and remote settings controls to gate the task tool. - **Safer startup outside repositories** with a feature-flagged non-git warning that lets users quit before losing git-backed tracking and rewind features. - **More useful memory tooling** with line-numbered memory_get, config-backed memory_search defaults, clearer memory docs, and richer auto-saved summaries that omit shell commands. - **Memory maintenance commands** with reindex/doctor workflows and search ranking that lightly boosts frequently retrieved memories. - **Versioned tool contracts** with preset-selected legacy behavior for run_terminal_cmd and read_file, plus contract metadata for integrators. - **Subagent transcripts in web** with persisted status cards, structured completion data, and reload-safe child session replay. - **Per-subagent model routing** with config and agent-definition overrides, plus correct inheritance from each parent session's live model. - **Transparent stdio reconnect recovery** by replaying cached `initialize` and session state after leader restarts, then notifying clients. - **Remote-VM sign-in fallback** by accepting pasted OIDC redirect URLs or tokens when the browser runs on another machine. - **One-click session ID copying** from session info, with a transient status banner and clipboard error reporting. - **Telemetry stays off by default**, with env, config, and remote settings precedence for telemetry and trace uploads. ## Bug Fixes - **Stronger repeated-edit detection** by normalizing whitespace in search_replace fingerprints so indentation-only retries now trigger doom-loop warnings. - **Faster edit recovery after misses** with nearest-match hints in search_replace errors and tighter guidance to use minimal unique anchors. - **Session restore no longer overwrites repo git identity** by scoping synthetic commit author details to the restore subprocess only. - **Error-loop termination is more reliable** by tracking per-file tool failures separately and only resetting warnings after successful writes. - **Longer repeating tool cycles are detected** by raising doom-loop cycle length coverage and using deterministic fingerprint hashing. - **Logged-in ACP clients can use default fast models again** by routing session tokens through the chat API proxy instead of api.x.ai. - **API failures are easier to diagnose** with redacted request and response context in sampling errors and improved error propagation. - **Full worktree IDs in listings** prevent truncated UUIDs and hashes, with dynamic column sizing in `worktree list` output. - **Restored sessions keep local lineage** by creating a new local child session and tracking the remote parent for repeatable resumes. - **Auto A/B works on Linux and other non-macOS systems** by falling back to on-demand worktree creation when no pool exists. - **Concurrent worktree creation avoids collisions** by switching temporary worktree IDs from time-based UUID prefixes to random UUID v4 values. - **Cancelled and restored sessions stop getting stuck** by routing prompt-complete notifications correctly and sending explicit shutdowns during teardown. - **More reliable cross-session memory** by sharing one backend configuration, filtering synthetic prompts, fixing delete and append reindexing, and correcting telemetry counts. - **Cursor-aware reconnect replay** skips already processed updates and resumes session streams from the last seen event. - **Fewer false doom-loop stops** with smarter polling detection, per-turn resets, targeted warnings, and synthetic warning tags. - **A/B comparison path isolation** so prompts, tool results, and task output no longer expose overlay worktrees or wrapper commands. - **Recoverable MCP startup failures** by restoring HTTP configs for retries and surfacing readable MCP App handshake errors. - **Clearer restore progress and failure states** with phased events, elapsed times, and explicit incomplete-session-state reporting. - **Hung streaming requests now fail fast** by timing out keepalive-only SSE streams that stop producing real model content. - **Leader startup no longer races client connects** by binding the IPC socket early and gating ACP traffic on explicit readiness. - **More reliable A/B filesystem isolation** with a configurable non-overlay scratch base before falling back to tmpfs mounts. - **Clients can distinguish auto-update restarts** by propagating explicit leader shutdown reasons through the IPC protocol and reconnect state. - **Completed turns no longer disappear downstream** by emitting a fallback text chunk when streaming events were lost after retries. - **Leader/client version mismatches are surfaced immediately** with ACP notifications, TUI banners, and headless warnings after registration. - **Prompt history search no longer opens empty** by ignoring Up-arrow history mode when both queued prompts and saved history are absent. - **Legacy list_dir compatibility** for older clients, restoring empty-directory, error, and depth-threshold output parity. - **Safer conversation compaction** by stripping orphaned tool results and falling back when replayable history validation fails. - **More reliable prompt persistence** by acknowledging prompts only after chat history accepts them and the flush barrier completes. - **Legacy task error parity** for older clients, restoring exact not-found wording in get_task_output and kill_task. ## Performance - **Faster session restore** downloads codebase, memory, and state archives concurrently while surfacing clearer restore strategy and warning summaries. - **Prompt turns stay responsive** by moving GCS telemetry uploads to fire-and-forget paths when retries or queue fallbacks occur. - **Lower memory use in long sessions** by replacing full conversation clones, selectively scanning updates, and pruning retained tool results. - **Faster startup before code navigation** by lazily building indexes only for web clients that advertise x.ai/codeNavigation. # 0.1.158 ## Features - **Remote announcements** from remote settings with tolerant deserializer. - **Shell completions** via `grok completions `, leader CLI, and stdio reconnect replay. - **User-defined subagents** via.grok/agents/*.md with config toggles. - **Post-compaction reminder includes running subagents** with IDs, types, and poll/cancel instructions. - **External auth provider binary** enables login via custom commands in sandboxed/air-gapped environments. - **Custom models_base_url auto-fetches** OpenAI-compatible model list for enterprise proxies. - **Guarded normalized fallback matching** enables search_replace on confusable Unicode typography (gated by flag). - **Full-text search across sessions** via new `x.ai/session/search` ACP extension with FTS5 indexing. - **Retained file context post-compaction** by re-reading up to 5 recent files into history. - **Persisted memory reminders** upsert into conversation system prompt without duplicating transient injections. - **Configurable AB turn timeout** cancels stalled comparisons after wall-clock limit with cleanup and observability. - **Configurable first-turn memory injection** with dedicated thresholds and remote settings support. - **Managed MCPs feature flag** skips fetching by default in headless mode. - **Paged announcement UX** adds prev/next commands with reliable startup visibility. - **Disables web search tool** via `--disable-web-search` flag or `GROK_DISABLE_WEB_SEARCH=1` for benchmarks. - **hashline_read tool** annotates file output with anchors like `LINE:LOCAL:CONTEXT→CONTENT`. - **Grok 4.20 default model** with CLI/env/config/remote-settings overrides for web search and summaries. - **Unauthenticated feedback submission** via optional tokens and `GROK_USER_METADATA` env. - **Plan mode tools** EnterPlanMode, ExitPlanMode, AskUserQuestion send structured notifications. - **Auto-installs grok-pager** alongside grok during internal and GitHub release updates. - **Mid-session token refresh** via OIDC grants or external auth binaries prevents expiry. - **Hashline toolset** enables anchor-stable file read/edit/grep with validation, recovery, ranges, and config integration. - **Hooks system** executes custom scripts for pre/post-tool and session events from ~/.grok/hooks/ with deny-wins trust controls. - **Independent feedback flag** gates /feedback and popups separately from telemetry via GROK_FEEDBACK_ENABLED. - **Leader CLI** adds `grok leader list/info/profile/kill/dev` for discovery and CPU profiling. - **Plan mode state machine** enables agent planning phase with enter/exit tools and session persistence. - **Hooks from Claude settings** loads from `~/.claude/settings.json` and project `.claude/settings.json`. - **Live subagent progress** shows turns, tools, tokens, errors in `get_task_output` for running tasks. - **Unified `/hooks` command** supports `list`, `trust`, `add ` with fuzzy autocomplete. - **ACP `x.ai/subagent/list_running`** queries live progress for all running subagents of parent session. - **Bash tool params from config.toml** override schema defaults like `timeout_secs` for GrokBuild. - **Live subagent progress** in TUI tasks panel via ACP polling and push notifications. - **ACP extension resumes sessions in worktrees** via single call matching `grok -w -r` CLI flow. - **Signed GCS uploads for shares** bypass proxy limits to prevent 413 errors on large sessions. ## Bug Fixes - **Prompt persistence ack** gated on chat history flush barrier completion. - **Leader spawn deadlock** resolved by releasing lock before connect. - **Headless clipboard failures** handled silently in session info. - **Server-side flags forwarded** via proxy for telemetry and other features. - **Leader fetches settings** enabling remote-settings-gated runtime features. - **AuthManager respects configured proxy URL** instead of hardcoding the default proxy host. - **Clears stale todo spinners** at turn end with transient Plan notification without mutating underlying state. - **Config.toml model overrides now apply** custom api_key/base_url to built-in models. - **Prevents queued prompts flushing together** via per-turn ID guarding race between notification and response. - **Alpha updates pick max(stable, alpha)** and harden channel admissibility across all installers. - **Unicode confusables now detected and normalized** in search_replace/read_file with diagnostics, reminders, and guarded fallback matching. - **Fixes overlay mount and FS isolation leaks** on AB comparison cancel by using canonical cleanup. - **Adds connect timeout to sampling clients** and warms TLS roots for first-chat cold-start latency. - **Leader protocol compatibility** by defaulting `ServerMessage::Registered.ready` to true. - **Custom skills now discoverable** via config.toml paths and `x.ai/skills/add` in system prompts. - **Non-blocking memory flushes** by spawning idle-timer tasks asynchronously. - **Accurate turn end display** by not defaulting missing prompt-complete stop reasons to cancelled. - **Correct error display** for retries by checking explicit `Cancelled` stop reason only. - **Startup panic eliminated** by replacing nested tokio runtime with direct await. - **Correct auto-compact in AB forks** by overriding context_window from target model registry. - **Async FS operations** in AgentsMdTracker prevent hangs on overlayfs-backed filesystems. - **Fixed TUI viewport layout** anchors prompt at bottom with reliable status bar. - **run_terminal_cmd exported schema** hides and rejects `is_background` when disabled via params. - **Fixed viewport height** enables single-frame dropdown resize without animation. - **Respects explicit per-session yoloMode=false** overriding client defaults in leader and TUI. - **Aborts path walks on first filesystem timeout** preventing 25-minute hangs on slow mounts. - **5-minute tool execution timeout** prevents registry hangs with diagnostic tracing spans. - **Non-blocking list_dir** uses tokio::fs::metadata to avoid executor hangs on overlayfs-backed paths. - **A/B fork writes** are guarded by display-to-overlay path rewriting in AcpSessionFs. - **ESC cancel** resets [cancelling] state via relaxed prompt-complete guard. - **Linux A/B forks** skip overlayfs and replicate via git diff to prevent container syscall hangs. - **No tool timeouts** allows long-running builds without false positives. - **Matches tools server gRPC limits** to 128 MiB preventing `OutOfRange` on large grep outputs. - **SSE parsing handles flat errors** from Grok proxy alongside OpenAI-standard nested format. - **ACP file errors map to `io::ErrorKind`** ensuring consistent `NotFound`/permission dispatch. - **Display paths in grep/list_dir** prevent internal worktree leaks to model in A/B forks. - **Silent grok-pager installation** hides implementation details from install/update output. - **Improved hashline_edit batch errors** state atomicity and retry-all guidance. - **Scoped subagent cancellation** targets only current-turn subagents. - **Post-session hooks await before** replication avoids root-repo diff corruption. - **AB cancellation unblocked** via async hooks and cleanup timeouts. - **Per-region snippets for scattered edits** cap output at ~40 lines instead of 10K+ for distant changes. ## Performance - **SSE error detection skips JSON parse** on normal chunks via fast contains("\"error\"") guard. - **Faster LLM turns** by persisting HTTP/2 client with connection pooling across conversation turns. - **Faster streaming completions** by single-pass serialization replacing serde Value mutation. - **Tuned reqwest client** enables keepalives, nodelay, and timeouts for faster IC backend requests. - **Streamed request bodies** skip buffering and parsing for large non-rewritten payloads. # 0.1.157-alpha.1 ## Features - **Subagent support** gated behind `--subagents` flag, `GROK_SUBAGENTS` env var, config.toml, or remote settings — disabled by default. ## Bug Fixes - **Cancelled and restored sessions no longer hang** by sending explicit shutdown commands before dropping session handles. ## Performance - **Faster session restore** by downloading codebase, memory, and state archives concurrently instead of sequentially. # 0.1.157 ## Features - **Remote session restore on miss** fetches session data from backend when not found locally, with remote-settings-gated writeback. - **Dedup-referenced codebase content materialised during restore** by downloading GCS-backed patches and blobs before replay. - **Binary file attachments** decoded from base64, written to session storage with content-hash dedup, and surfaced as path hints to the model. - **Subagent spawning and lifecycle management** with coordinator tracking, TUI progress rendering, and task tool integration. - **Non-git directory warning** with blocking confirmation modal at startup, gated behind a server-side feature flag. - **Line-numbered `memory_get` output** matching `read_file` format, with `memory_search` defaults now respecting `[memory.search]` config. - **Richer session-end auto-saves** now include tool-usage breakdown and file paths touched; shell commands excluded to prevent credential leakage. - **`grok memory reindex` and `doctor` CLI commands** for index maintenance, plus access-frequency boosting for retrieved memory chunks. ## Bug Fixes - **Doom-loop detection hardened** with whitespace-normalized fingerprints, per-file failure tracking, nearest-match hints, and error-streak termination. - **Session restore no longer overwrites git identity** — synthetic commits use subprocess env vars instead of repo-local config. - **Session-authenticated users no longer get 400 errors** on default models — credential routing checks actual token source, not advertisement method. - **API error messages include structured context** — request URL, relevant headers, and body preview surfaced on auth, payload, and server failures. - **Worktree list displays full IDs** with dynamic column width instead of truncating to 16 characters. - **Memory search config honored** — `[memory.search]` settings were silently ignored across all three backend construction paths. - **Correct memory injection after compaction** — first-turn context now uses the real user query, not the auto-continue prompt. - **Deleted memory files no longer searchable** — watcher sync removes stale chunks, and `/memory append` content is indexed immediately. ## Performance - **Reduced session memory pressure** by replacing 8 full-conversation clone sites with narrow single-field actor queries. - **Faster session resume** via selective `updates.jsonl` scanning that skips full deserialization of irrelevant update types. - **Bounded long-session memory** by eagerly pruning old tool results from the retained conversation after each user turn. # 0.1.156 ## Features - **Per-session tip rotation** via a persistent cursor so each launch shows the next tip in sequence instead of the same UTC-day tip. - **Cross-devbox session restore** via `grok sessions list/search` CLI subcommands and hardened `grok -r` with upload-ordering safety, cwd-scoped lookups, and staged-vs-unstaged correctness. ## Bug Fixes - **Scoped MCP connector selection** so multiple connectors with the same URL but different auth scopes (Personal/Team/Org) route to the correct token. - **GCS upload reliability** with panic-catching upload tasks, full error-chain logging, and aggressive HTTP connection pool eviction to prevent stale-connection retries. - **Doom loop detection for repetitive edits** that were previously invisible because interleaved bash commands reset the detector. - **Binary blob size cap** enforced during archive building, preventing multi-GB binaries from attempting uploads that would timeout. - **Graceful upload drain on shutdown** so pending GCS uploads complete before exit instead of being silently abandoned. - **Malformed tool-call JSON sanitization** replaces invalid arguments with `{}` before sending to providers, preventing permanent 400 loops from broken model output. - **MCP tool name validation** skips tools with invalid characters (e.g. spaces) that cause Anthropic/OpenRouter 400 errors, instead of crashing the session. - **Patch restore compatibility with older git** by removing `--allow-empty` flag and pre-checking for diff content before calling `git apply`. ## Performance - **Streaming multipart upload for large files** (>50 MB) bypasses proxy body limits and avoids loading entire files into memory. # 0.1.155-alpha.6 ## Features - **Tip of the day** shown at startup, served dynamically from remote settings with local opt-out via `[cli] show_tips = false`. - **OAuth2 Authorization Code + PKCE** login flow replacing legacy relay auth, with server-controlled rollout and permanent legacy fallback. ## Bug Fixes - **Gitignore enforcement** on `read_file` and `search_replace` to reduce accidental secret exposure — aligns with `list_dir` and `grep` behavior. - **Session resume race fix** — prevents `--resume` from creating a shadow session when `LoadSession` is in-flight via leader IPC. - **Atomic summary writes** via temp-file + rename — fixes EOF parse errors when A/B comparison startup races with summary updates. - **Memory tool labels** — `memory_search` and `memory_get` now render as "Memory Search" and "Memory Read" instead of generic labels. - **HTTP/2 connection poisoning fix** — rebuilds the sampling client on final retry to recover from stale connections after server GOAWAY/RST_STREAM. # 0.1.155-alpha.5 ## Features - **Tip of the day** shown at startup from remote settings, rotated daily; opt out with `[cli] show_tips = false`. - **Gitignore-aware file tools** — read_file and search_replace now refuse access to ignored paths, matching grep and list_dir. ## Bug Fixes - **Session resume no longer races or silently creates a new session** when leader IPC or replay fails. - **Atomic summary.json writes** prevent EOF parse errors during concurrent A/B comparison session loads. - **Memory Search and Memory Read labels** in TUI instead of generic Search/Read for memory tool calls. - **HTTP/2 connection poisoning recovery** via idle timeout eviction and fresh client rebuild on final retry attempt. - **Bash command output appears immediately** by flushing the replay buffer before turn end in `!` prefix mode. # 0.1.155-alpha.4 ## Features - **End-to-end distributed tracing** across clients and the API proxy via W3C `_meta.traceparent` propagation into a single distributed trace. ## Bug Fixes - **Structured error variants** for read_file, list_dir, search_replace, and todo_write so callers can distinguish file-not-found, permission-denied, and duplicate-id failures. - **Replay notifications now guaranteed before session/load response** via `forward_with_completion()` drain; removes public `acp_send_fire_and_forget` from xai-acp-lib. - **Writeback sync now includes cwd and title** in backend metadata on every flush and rename, fixing null values in remote session listings. - **Typed TaskNotFound errors** for kill_task and get_task_output with known-task-ID hints, enabling Python-side structured error classification. - **Terminal commands detached from controlling TTY** via `setsid()` so subprocesses like ssh cannot steal input from the TUI. # 0.1.155-alpha.3 ## Features - **MCP Apps support** for rendering interactive UI tools served via `ui://` resources from MCP servers. - **OpenID Connect login** with PKCE, local callback server, and configuration via config.toml or environment variables. - **On-demand MCP tool discovery** via BM25 search and `use_tool` meta-dispatch for KV cache-stable definitions. - **Kill background tasks by task_id** via new `x.ai/task/kill` ACP extension method. - **Integration tool names visible in TUI** instead of generic search_tool/use_tool plumbing labels. ## Bug Fixes - **Rewind correctness overhaul** — mutation-free preview, ghost message filtering, compaction-aware replay for all targets. - **Memory flush and compaction no longer fail** on orphaned tool_result messages by stripping tool blocks before summarization. - **Slash command autocomplete enters argument phase** instead of executing immediately, and option-key word traversal corrected. - **Cancel cleanup awaits child process exit** to reclaim memory before returning, preventing cascading OOM kills. ## Performance - **Parallel tool execution** via shared resources and explicit ToolCallId, removing the sequential single-tool bottleneck. # 0.1.155-alpha.2 ## Features - **Config hot-reload** watches auth, MCP servers, memory, skills, UI, and models for live changes without restart. - **`/memory` slash command** appends notes to workspace or global MEMORY.md with smart Markdown heading normalization. - **cgroup v2 memory limits for spawned commands** gracefully OOM-kill only the offending process, keeping the session alive. - **Debugging technique retention** across sessions by capturing API endpoints, CLI commands, and investigation workflows in memory flush. - **File overwrite guard** on search_replace prevents empty old_string from silently replacing existing file contents. - **Full command preview in scrollback** for long or multi-line bash commands that exceed the status bar. ## Bug Fixes - **Duplicate tool name validation** prevents unreachable tools when two share the same client-facing name. - **Large pasted text written to disk** so the model's read_file fallback finds the content instead of file-not-found. - **TUI reconnect no longer hangs permanently** after leader restart — 30s timeout and guaranteed completion signal. - **Duplicate leader exits cleanly** with 30s lock timeout and early bail-out when an existing socket is detected. - **A/B fork session traces** now include repo_root and remote_url via shared git2 discovery logic. - **Distinct fs tool error messages** differentiate 'does not exist' from 'is a file, not a directory' to prevent agent loops. - **Drain timeout for inherited pipes** prevents `cmd &` without stdout redirect from blocking the actor loop indefinitely. - **Leader log level defaults to info** instead of debug, cutting log volume ~10x over long-running sessions. - **Memory flush sanitization** strips tool_result blocks before windowing to prevent orphaned tool_use_id 400 errors. - **A/B comparison disk leak fix** — correct overlay unmount ordering prevents 4.9 GB leak, and primaryModelId now reflects the actual variant model. - **Revert memory flush sanitization** that stripped tool messages and broke flush request formatting. ## Performance - **Faster first prompt on large repos** by capping startup git_status at 2s instead of blocking 10-20s on index refresh. - **Dedup blob existence pre-check** skips redundant uploads when another agent has already written the same SHA256 content. - **Session eviction on client disconnect** drops SessionHandles to reclaim ~100-500MB per session when IPC clients leave. - **mimalloc allocator on macOS Apple Silicon** for alpha builds, fixing 15GB+ RSS from system allocator's unreturned pages. # 0.1.155 ## Bug Fixes - **HTTP/1.1 fallback for sampling requests** when HTTP/2 connections fail with transport errors from GOAWAY or RST_STREAM frames. - **Handle response.failed and error streaming events** from the Responses API instead of silently dropping them. - **Prevent file descriptor exhaustion on macOS** by capping parallel walker threads and raising the soft FD limit at startup. # 0.1.154-alpha.6 ## Features - **Overlay-based A/B replication** replaces fsnotify+hunk-tracker with overlayfs to capture all terminal-created files during A/B sessions, fixing lost-file bugs on Linux. - **/flush slash command** in the TUI triggers an on-demand memory flush to disk via the existing backend extension method. # 0.1.154-alpha.5 ## Features - **Tool execution tracing** via call_id passthrough, follow-up messages, and structured error detail fields in CLI output. - **Mandatory AGENTS.md discovery** — runtime-discovered project instruction files must now be read before proceeding. - **PTY notification routing** to originating client via targetClientId, with cwd fallback and terminal UI polish. - **`--no-auto-update` flag** for leader mode to prevent update-triggered shutdowns in long-running sessions. - **On-demand memory flush** via `/flush` command and `x.ai/memory/flush` extension with concurrent-flush prevention. - **Tool state export/import** via GetToolState RPC and initial_tool_state_json, enabling session warm-start and cloning. - **`GROK_MEMORY=0` force-disables memory** regardless of config.toml or remote settings; CLI flag still overrides. - **Per-tool MCP timeout overrides** via `tool_timeouts` in config.toml and `toolTimeoutsMs` in ACP session meta. ## Bug Fixes - **Slash command completion** now respects optional arguments, fixing `/load`, `/model`, `/compact`, and `/theme` execution. - **Per-session model, sampling, and YOLO tracking** in leader mode, preventing cross-client state contamination. - **Complete session replay on reconnect** by switching to unbounded client channels, preventing silently dropped notifications. - **Zombie process prevention** on leader respawn with child reaper, config.toml auto_update respect, and stale-binary resolution. - **OOM prevention in codebase indexer** via 5MB file-size cap, binary detection, and hidden-directory filtering. - **Per-client YOLO mode isolation** in leader mode — toggling no longer contaminates other clients' sessions. - **A/B merge-back recovers files in new directories** created via terminal, fixing the inotify recursive-watch race. - **Worktree cwd preserves subdirectory offset** instead of resetting to the repo root. - **8 MiB stack for session threads** prevents stack overflow on macOS where the default is 512 KB. - **Grep tool description clarifies raw regex syntax** to prevent the model from quoting patterns. - **Tool kind params merge across all tools** of the same ToolKind, fixing template render failures for multi-tool configs. - **User query placed before attached file contents** in the prompt for better model attention. - **Read file errors now include the file path and underlying cause** across all tool implementations. ## Performance - **Lightweight index status queries** via GetFileCount/GetStats, eliminating a full ScopeGraphIndex clone on every status check. - **Hunk tracker skips unnecessary file reads** in AgentOnly mode and eliminates a redundant content clone. # 0.1.154-alpha.4 ## Features - **Background command lifecycle** reworked with graceful SIGTERM→SIGKILL escalation, non-blocking I/O, and proper agent tracking for user-backgrounded commands. ## Bug Fixes - **Auto A/B comparisons deferred until worktree pool is ready**, preventing 30-60s stall on large repos. - **Headless mode (`grok -p`) exit panic** fixed by flushing telemetry before runtime teardown. # 0.1.154-alpha.3 ## Features - **MCP server management** via mcp/list, mcp/call, and mcp/servers_updated extension methods with multi-scope connector resolution. ## Bug Fixes - **PTY notifications reach the correct client** via _meta routing metadata, with shared helpers and session-aware cwd fallback. - **Concurrent tool calls no longer crash** the tools server; semaphore serializes access to the thread-local toolset. - **Cross-session notification leaks eliminated** in leader mode for relay, dead-client, and ext/notification routing paths. - **Leader auto-update pre-downloads the binary** before shutdown and resolves the ~/.grok/bin symlink at spawn time. - **First-compaction memory flush fires correctly** by pre-incrementing the compaction counter before the flush guard. - **Interval memory flush resumes after compaction** by resetting the conversation length counter when history is compacted. - **Session content restored on TUI reconnect** by clearing stale scrollback, resetting turn state, and gating live updates during replay. - **Memory flush entries accumulate across cycles** by appending to daily log files instead of overwriting each flush. - **A/B experiment tool output shows original project paths** instead of internal worktree directories in streaming updates. - **File write truncation eliminated** by switching to tokio::fs and disabling ACP filesystem routing from the TUI. - **Token refresh works for JWTs with aud claims** by disabling audience validation during expiration parsing. - **Session resume and fork no longer crash** with "Is a directory" error caused by a regression in the Tool trait migration. # 0.1.154-alpha.2 ## Features - **Structured headless prompts** via --prompt-json and --prompt-file flags, with --verbatim to skip query wrapping. - **Bring-your-own-key for A/B comparisons** by reading [ab] openrouter_api_key from config.toml. # 0.1.154-alpha.1 ## Features - **Mid-session MCP server toggling** via x.ai/session/update_mcp_servers extension method with optimistic rollback. - **Sandbox profile configurable via GROK_SANDBOX env variable**, defaulting to workspace profile on devboxes. - **Agent version exposed in InitializeResponse** metadata for relay and client version discovery. - **`grok worktree` subcommand** for listing, inspecting, removing, and garbage-collecting session worktrees. - **Character-budget BFS directory listing** replaces depth-based summarization, expanding small deep directories when budget allows. ## Bug Fixes - **Tool-server finalize subcommand aligned** with the Python client via named --tools/--truncation args and --json output. - **Completion requirement tracking restored** in recovery loop, fixing duplicate tool calls introduced by the DynTool migration. - **Foreground command cancellation no longer deadlocks** — terminal backend access moved outside the registry mutex. - **A/B session filesystem isolation fixed** by replacing overlayfs with bind-mounts, eliminating split brain between bash and file tools. - **ACP file operations** were silently bypassing the client filesystem backend, breaking ask-mode write rejection in GrokCode. - **Zero-argument MCP tool calls** no longer fail with JSON parse error when the model emits an empty arguments string. - **Model selection in leader mode** now persists across sessions — changing models mid-session no longer reverts on /clear. - **Git index.lock contention on devboxes** resolved by adding --no-optional-locks to all background git operations. - **System reminders** now fully respect the disabled flag, and template parameter defaults auto-populate from input schemas. - **Memory tools now render in TUI and web UIs** with search/read cards, query text, and file path display. ## Performance - **Session thread isolation** via per-session tokio runtimes, preventing tool execution in one session from blocking another. # 0.1.154 ## Features - **`/flush` slash command** in the TUI for on-demand memory flush to disk. ## Bug Fixes - **A/B session file preservation** via host-side overlayfs, fixing terminal-created files silently lost during merge-back. - **Memory flush no longer infers preferences** from unchallenged assistant actions, requiring explicit user statements. # 0.1.152-alpha.1 ## Features - **Slash command autocomplete** with ACP-advertised built-in and skill commands, keyboard navigation, and fuzzy filtering. - **Compact and rewind controls** exposed to the web frontend via typed SessionClient methods with backwards-compatible camelCase aliases. - **OpenCode agent mode** with 8 dedicated tools (bash, read, edit, write, grep, glob, todowrite, skill) using opencode conventions. ## Bug Fixes - **Codex agent tool accuracy** restored by switching to dedicated codex-specific read, list-dir, and grep implementations. - **File editing on macOS** fixed by canonicalizing search_replace paths to match read_file's case-normalized tracker keys. - **Workspace disambiguation in /load** prevents session list overwrites when multiple workspaces share the same directory basename. - **ACP agent profile support** restored for JSON object payloads, fixing permission mode and prompt loss for web and remote clients. # 0.1.151 ## Features - **Interactive web terminals** let clients run full PTY shells over ACP WebSocket with resize, reconnect replay, and unified terminal lifecycle APIs. - **Configurable Codex system prompts** let builds toggle custom base templates per agent definition while preserving correct agent-type resolution from the active default model. ## Bug Fixes - **Graceful tool cancellation handling** prevents agent-loop aborts when gRPC calls are cancelled, with structured CANCELLED errors and end-to-end cancellation coverage. - **Accurate edit preview line numbers** now appear before approval by sending diff metadata through standard tool_call_update events instead of permission payload plumbing. # 0.1.149 ## Features - **Offline relay session sync** keeps shared sessions resilient with reconnect and persisted cursors, adding connection-state notifications for reliable TUI status updates. - **Foreground tool progress visibility** shows active tool execution in the TUI status bar, generalizing streaming state beyond bash commands. - **Config-driven skill loading** lets users add and ignore custom skill paths from config.toml, extending discovery beyond default local and user directories. - **Persistent leader availability after disconnects** by spawning leader with --no-exit-on-disconnect, allowing new clients to reconnect without restarting the subprocess. ## Bug Fixes - **Reliable CLI updates** now refresh grok-latest during installs, ensuring symlink-based setups launch the newly installed binary in fresh shells. - **Parallel tool-call stability** prevents Anthropic ordering errors by deferring follow-up user messages until all tool_result blocks in a batch are emitted. - **Channel-aware update checks** correctly install alpha builds during channel switches by combining semver comparison with explicit stable-versus-alpha mismatch logic. - **More reliable tool execution in forks** validates concatenated JSON against the named tool schema and preserves FileReadTracker state by copying tool_state.json. - **Client disconnect cancellation** now stops running tools and triggers cleanup for foreground commands in unary and streaming execution paths. - **Stable A/B fork path behavior** keeps model-visible project paths consistent while resolving stale absolute paths safely to worktrees and preserving edit-read tracking state. - **Reliable session resume across providers** by repairing dangling tool calls throughout conversation history, preventing persistent 400 errors on interrupted legacy sessions. - **Accurate replayed terminal state** by skipping streaming bash update handling during replay, preventing ghost in-progress timers from out-of-order persisted chunks. - **Cleaner TUI tool-call logs** by sending no placeholder raw_input until tagged ToolInput arrives, eliminating repeated 'missing field variant' parse errors. # 0.1.146 ## Features - **A/B filesystem isolation** prevents cross-session contamination by running forked sessions in overlayfs and syncing winner side-effects safely. - **A/B safety guardrails** now block unsafe side-effecting commands during comparisons and abort contaminated experiments before execution. ## Bug Fixes - **Responsive A/B cancellation** now interrupts worktree preparation and mid-copy operations, avoiding stuck comparisons and stale vote blocking. - **Background task visibility** now shows immediate execution feedback and caps blocking waits, preventing apparent freezes during long-running commands. # 0.1.145 ## Bug Fixes - **Reliable hunk acceptance and replication** by refreshing baselines on git state changes and preserving tracked paths after accept/reject workflows. - **Cleaner client tool event stream** by suppressing updates for skipped tool calls while still persisting cancellation context in conversation history. # 0.1.144 ## Features - **Offline-safe feedback retention** writes feedback and A/B votes to local session JSONL before network submission, including previously dropped vote rationale fields. - **Agent environment metadata becomes queryable** by merging GROK_AGENT_METADATA into initialize responses and persisting the full blob in backend agent records. - **Dynamic leader-mode control** resolves from CLI, local config, then remote settings, and startup also adopts remote upload limits. ## Bug Fixes - **Complete prompt trace capture** preserves full pre-truncation text in GCS and records truncation metadata for reliable debugging of long prompts. - **Backward-compatible metadata semantics** distinguish absent legacy prompt flags from explicit false values by serializing truncation/image indicators as optional booleans. - **Rewind preview no longer crashes** on multibyte text by truncating at UTF-8 character boundaries instead of raw byte offsets. - **Large file attachments are safely bounded** by emitting metadata stubs above a token threshold, preventing context blowups while preserving file discoverability. - **Non-interactive edit workflows** no longer fail read-before-edit checks because tools server defaults `skip_read_before_edit` to true at startup. - **A/B forks now keep subdirectory context** so comparison sessions run in the same repo subpath and replicate changes correctly. - **Server-side A/B gating is now enforced** by honoring classification results before forking, reducing unnecessary comparisons for low-value prompts. - **Forked A/B sessions now inherit current YOLO mode** so tool permissions stay consistent with user state and comparisons avoid approval stalls. ## Performance - **Faster A/B fork creation** removes backend registration latency from fork setup by spawning session sync as background telemetry work. - **Lower A/B fork overhead** skips low-value telemetry calls for ephemeral comparison forks, avoiding extra session-load work during experiments. - **Quicker dual-worktree setup** reuses one precomputed dirty-state scan across both A/B syncs, eliminating redundant git status calls on large repos. - **Shorter A/B comparison startup** overlaps both fork-and-spawn flows with concurrent joins, reducing sequential network wait in dual-fork initialization. - **Pool restart latency drops** by adopting valid orphan worktrees instead of recreating them, with tested cleanup and adoption flow hardening. # 0.1.143 ## Features - **Prompt introspection from the CLI** is available via `grok prompt`, with JSON or section output and persisted session prompt_context snapshots. - **Prompt image tracing** now captures user-supplied images as decoded per-turn files in GCS, improving multimodal debugging and auditability. - **A/B comparisons now support ask/plan read-only mode** by forking sessions without git worktrees, enabling comparisons outside repositories with safer non-mutating defaults. - **Per-server MCP timeouts** can be set via `_meta.mcpConfig`, with relay passthrough and precedence over config defaults during server startup and tool calls. - **Ask/plan A/B can force worktrees** through `[cli].ab_force_worktrees`, overriding read-only defaults when operators need full filesystem-isolated comparisons. - **Installation diagnostics** help troubleshoot conflicting grok binaries by listing canonical and invoked paths, versions, update status, and optional JSON output. ## Bug Fixes - **Reliable todo status updates** now accept merge-only status patches by defaulting missing content to todo IDs instead of rejecting updates. - **Accurate prompt re-rendering** now respects active tool overrides and disabled tools by centralizing all prompt assembly through a shared PromptContext. - **A/B cancellation no longer double-finishes comparisons** by suppressing completion notifications and after-uploads when cancel handlers already removed active comparison state. - **Running outside git repos no longer panics** by skipping gitignore construction without a repo root and guarding absolute-path ignore checks. - **npm installs now use a canonical Grok binary path** via postinstall copy to `~/.grok/bin/grok`, preventing installer conflicts and version confusion. # 0.1.142 ## Features - **Hidden directories now appear in file listings** by defaulting fs list requests to include hidden paths and removing unused session fs/git handlers. - **Faster A/B comparisons in large macOS repos** via reusable prefilled worktree pools, atomic claiming, and preparation signaling. - **CLI self-update downloads** now use authenticated, time-limited URLs with environment-scoped auth for updates. - **Prompt context now includes editor focus state** by rendering focused files, open files, and regular resource links in structured system reminders. - **Richer editor context in prompts** now includes focused and open files as resource links with cursor metadata for better code-grounded responses. - **More reliable self-updates in restricted environments** by falling back to GitHub Releases via `gh` when npm or internal installers fail. ## Bug Fixes - **Web search works again** by passing sampling credentials through toolset overrides so the web_search tool is registered correctly. - **Unique agent identities across containers** by incorporating Linux HOSTNAME into ID derivation and normalizing stored agent IDs to UUIDv5. - **Embedded file attachments parse more URI formats** by accepting optional file:// prefixes and both #Lstart-end and #Lstart-Lend fragments. - **Single-@ file references now work in TUI prompts** by broadening reference parsing to support optional @ and L-prefixed line ranges. - **Compacted conversations preserve query structure** by wrapping summaries in `` tags so resumed sessions keep consistent context formatting. - **Duplicate session messages are prevented** by making saveSessionData append only unseen message tails based on persisted message counts. - **A/B winner changes now land in your main repo** by replicating worktree edits to the original source directory explicitly. - **Debug extension methods now accept camelCase params** while keeping snake_case aliases, improving client compatibility without breaking existing callers. - **Fewer stale HTTP client failures** by disabling idle connection pooling for sampling requests and relying on HTTP/2 keep-alive checks. ## Performance - **Faster worktree pool operations** reduce acquire and cleanup overhead with skip-clean paths and streamlined removal logic. # 0.1.141 ## Breaking Changes - **Per-model concise behavior** replaces global [toolset].use_concise; migrate by setting model..use_concise=true because the old global key is ignored. ## Features - **Faster completion acceptance** lets you confirm prompt, file, and history suggestions with Right Arrow alongside Enter and Tab. - **Inline code review comments** can now be created and deleted via new extension methods, with append-only GCS event records for pipelines. - **Machine-readable update checks** add --check and --json support to update and version commands for automation-friendly version status reporting. - **Automatic project-instruction discovery** surfaces newly encountered AGENTS.md and Claude.md paths during tool access, including post-compaction reminders outside the initial directory chain. ## Bug Fixes - **Cleaner pager command output** relies on shell no-color mode, removing local ANSI stripping and preserving streamed text exactly. - **Accurate restored session metrics** persist full SessionSignals snapshots and reload them on resume, avoiding turn-count drift after compaction. - **More reliable long streaming requests** use per-sampling HTTP clients with keep-alive tuning instead of a shared global client. - **Startup stability for external instruction files** avoids gitignore panics by skipping ignore checks for paths outside the repository root. - **Tool-call protocol compliance** now emits cancellation and rejection outputs for unexecuted tools, preventing model errors when expected tool results are missing.