v1.0.40
Grok Build 1.0.40
- Grok 4.7 has arrived!
Grok Build
The latest fixes, features, and improvements shipping to Grok Build.
Latest v1.0.40·Sep 20, 2026
/context legend shows accurate percentages that always add up to 100%y on a queue row copies the prompt text to the clipboard/model effort picker defaults to the recommended effort levelgrok --sandbox no longer exits when accepting folder trustreasoning_effort values (for example xHigh) are accepted in config.toml[agent] set in config.toml instead of always using a builtin plan--minimal mode no longer inserts extra blank lines or breaks long paths at wrap points/memory modal shows copy confirmations, searches note contents, and works on narrow terminals/rewind no longer fails when older compaction checkpoints are missing after a session sweep/delete or /exit immediately opens a new empty session/new reloads its history instead of showing the wrong session{} line in the permission sheetgrok clone on Windows no longer fails when the repository git config contains backslashes or quotes/feedback typed during plan approval now execute correctly3h14m) instead of stopping at 60 minutes/workflow can pause and stop background runs the agent launched/theme picker matches aliases such as transparent, dark, or system and still inserts the canonical namegrok -c no longer attaches the wrong empty session after starting without --continue then resuming[stop] label as other killable rows/feedback <text> sends immediately again instead of starting a model turn; failures save to Draftsedit_file diffs show real file line numbers instead of starting at line 1/skills picks up newly installed skills even when they were written from another machinegit checkout -- commands/goal (and resume) after Esc starts the goal planner instead of failing with "Planning failed"/loop tasks always run in the background and no longer inject turns into the conversationgrok -p) support --worktreeOpen session instead of Add session/usage works from the dashboard when no session is active/feedback drops unsupported images with a notice and keeps your report text on save errors/feedback <text> saves a local draft before invoking the feedback skill/btw panels highlights cells and copies as TSV/mcps and other tabs) animate/mcps no longer deadlocks the session/copy and /exportgrok usage <session-id> shows persisted per-turn token and cost data--sandbox strict restricts writes to ~/.grok/sessions only~/.grok and worktree sessions/resumemkdir and touch no longer prompt in auto mode or safe-command lists/voice falls back to parec/arecord on older PipeWire installsgrok clone reuses matching local checkouts as linked worktrees for faster session creation/feedback supports attaching images such as screenshots/ slash menu is ordered by recency and groups skills below commands/workflow accepts --agent-budget N or an agent_budget JSON field to set child-agent limits/workflow accepts --effort LEVEL or an effort JSON field to set child reasoning effortgrok-cli User-Agent header so providers can attribute traffic/edit-prompt opens an external editor from the full TUI, not only minimal mode/plugin works as an alias for /plugins in the TUI/agents modal and can be toggled/minimal and /fullscreen switch instantly inside the running session without restarting or losing the current turngrok clone fetches only the selected branch tip by default, with --full-history for legacy full clonesgrok clone can reuse a matching local checkout as a linked worktree instead of always fetching from the network/new and /clear preserve the last-chosen reasoning effort instead of resetting to the model default/copy preserves markdown formatting such as headings and code fencesgrok mcp add correctly treats bare http(s):// URLs as HTTP servers instead of stdio commandsplan.md/workflow autocompletes saved workflow names and shows only valid runs for pause/resume/stop/save/btwGROK_CONNECT_UI_TIMEOUT_SECS environment variablerefresh_interval in config.toml/plugins) lists installed workflows with name, source, and description/workflows command opens the Workflows catalog tab; /workflow runs shows live workflow runs/workflow (or /workflow runs) lists active and recent workflow runs with status and progressgrok clone can fetch a repo into a content store and mount a projected working treeGROK_CONFIG and GROK_CONFIG_PATH environment variables let launchers override selected config settings without editing config.toml~/.grok/worktrees are automatically reclaimed when safe, with safeguards that never delete the last remaining copy/settings)/resume shows a recap and last-turn summary when available/dev/null is removedgrok inspect no longer crashes when its output is piped into a command that closes the pipe early/loop tasks show a one-line expiry notice when they auto-expire after 7 days[toolset.web_search] in config.tomlGROK_SESSION_SEARCH or [features] session_search for hosts sharing $GROK_HOME/session-info supports drag-to-select and copy, plus c and y shortcutsFollow-up Behavior setting in /settings allows queued messages to steer immediately instead of waiting for the turn to finishGROK_SESSION_ID environment variable for the current session[stop] / Ctrl+C inside a subagent overlay or drill-in stops the focused child instead of the root session/btw runs the command instead of sending text to the modelgrok du and worktree commands work on Windows when only USERPROFILE is set/session-info lets you click any row to copy its value, with hover highlights and a copy-all shortcut~/.grok/rewind only truncates conversation history instead of files as well, and asks for confirmation by defaultgrok du command shows disk usage of ~/.grok including worktrees and sessions/usage, /session-info, and /context open in a tabbed modal instead of adding text to the conversationgrok trace exports now bundle memory trace files for easier debugging/rename --auto unpins a manual session title so automatic titling resumes/** grant the parent directory instead of creating a literal ** subdirectoryGROK_CHANNEL reinstall commandgrok -p) no longer fail when the agent asks for user input or plan approval.envrc evaluation blocks/feedback opens a dedicated report box instead of prompt modeCtrl-F/new from the dashboard returns to the dashboard from an empty prompt--restore-code is passed/delete returns to the dashboard when you delete a session opened from it/btw error messages wrap fully/btw side questions reuse the parent session's cached prefix for faster responsesgrok doctor and tmux-backed startup are faster when no live tmux processes remaingrok doctor warns when tmux is reducing colors and can fix the config[stop] / Ctrl+C during /compact now cancels instead of no-opping/btw retries on temporary model overload instead of failing immediatelyGROK_EXTRA_CA_BUNDLE env var allows adding custom TLS root certificateskill_task reports when a task does not exist over ACP connectionsget_task_output no longer waits the full timeout for already-finished tasks over ACP--output-format streaming-json/undo slash command restores files and chat to an earlier turn (alias for /rewind)/privacy close the settings modal on Esc or Enter instead of returning to the listauth_provider_command) on Windows/delete slash command removes the current session after confirmationgrok mcp enable <name> and grok mcp disable <name>y during plan approval or previewconfig.toml no longer prevent Grok from starting; problems are shown in grok inspect/loop stores prompts that include stop conditions so recurring tasks can terminate themselves when done$@) when using persistent or login-capture shells/tutorial slash command opens an opt-in nine-topic onboarding tour of Grok/doctor command with clearer guidance; grok doctor fix can now repair common tmux clipboard and passthrough problems/resume now shows only native Grok sessions by default and shows a hint when external sessions are hiddengrok --resume can now resume a session by its title as well as by IDconfig.toml in addition to JSON files!) now shows yellow prefix and action label in minimal modeconfig.toml or environment variables/session-info now displays whether the session uses OAuth or an API key and where to manage the accountgrok doctor fix commands directly from inside the TUI instead of only from the CLI!cmd commands now allow up to one hour before timing out/doctor for details and fixes/usage now shows token counts and cost for the current sessiongrok doctor fix terminal.ssh-wrap can install the recommended SSH wrapper alias[model_providers.<id>] lets operators share gateway settings across custom modelscombine_queued_prompts setting/doctor is now the main slash command for terminal, tmux, clipboard and keyboard diagnostics/loop iterations no longer overlap when descendant subagents are still runningCtrl+G in minimal mode opens the current prompt draft in an external editor without sending it; fullscreen keeps the tasks panegrok doctor now shows standalone terminal, tmux, clipboard, and keyboard diagnostics without starting the TUIgrok wrap now works on headless remotesCtrl+B now backgrounds running commands; Ctrl+G toggles the tasks paneGROK_CLIPBOARD_NO_OSC52 env var to stop clipboard sequences from appearing as garbage in unsupported terminals--minimal mode is now visible on light terminals/btw now works inside grok --minimal, showing answers in the live area and committing them to scrollback on Esc/summarize slash command is now available as an alias for /recap to request an on-demand session summary~/.grok/rules and compatible vendor homes are now discovered correctlygrok wrap ssh <host> for clipboard and terminal restoregrok and the agent binary now stay in sync even when no update is installedgrok wrap now restores the terminal after SSH disconnects or other abrupt child exitsconfig.toml without requiring grok login--minimal and --fullscreen flags now apply only to the current session/jump slash command lets you quickly jump to any previous turn in the conversation/timeline sidebar shows a clickable tick rail for fast navigation between conversation turnsgrok login now requests Grok Projects scopes so workspace listing works after consent!bash mode now works like a normal terminal (prefix fill, dropdown, directory drill-down)requirements.toml so /voice and Ctrl+Space are hidden for everyone--minimal mode; fullscreen keeps normal weightgrok plugin install now accepts a marketplace's registered name as a qualifiergrok -p --no-wait-for-background so tasks are properly reaped on exit/copy slash command is now available in minimal modegrok inspect now shows effective compatibility settings for Cursor, Claude, and Codex sessionsgrok --minimal --resume commandconfig.toml; the unpinned method is no longer tried automatically/context now shows token costs for skills and MCP servers/terminal-setup now shows your terminal's color support level and which themes are availablegrok setup --json prints your team's managed configuration without installing ittask and spawn_subagent tools now accept an optional model parameter in the CLIpre_tool_use deny now feeds the reason back so the model can retry instead of cancelling the turn/btw loading spinner now animates correctly when the main session is idlerg (ripgrep) no longer require permission prompts by default/context tool definitions line no longer shows the cryptic disclaimer suffix/mcps panel in minimal mode/usage now shows in your local timezone instead of Pacific Timex.ai/pr/status now reports whether an open PR is in the merge queue/history searches it? instead of Ctrl+. on terminals that cannot deliver the latterCtrl+Y to enable Word selectgrok worktree ls now works as a short alias for grok worktree list.grok/config.tomlctrl+ul key now opens the selected agent detail view in the dashboardps commandEsc now dismisses an open /btw panel before backing out of a dashboard overlay/ before existing text/new or fork now show the working command in minimal mode/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/rewind completion now appears as a brief toast instead of a permanent transcript linemanaged_config.toml (user deny rules still win)~/.grok/worktrees/Ctrl+C/always-approve and /auto now toggle their mode on and off when run repeatedly/minimal for native terminal rendering/sessions now opens the Agent Dashboard instead of a separate picker/goal <objective> slash command is now availablegrok 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 launchesread_file now returns full single-line content (minified JSON, large dumps) instead of silently clipping at 2000 charactersgrok --minimal now supports native drag-select on classic Windows conhost terminalsEsc no longer cancels a running turn; use Ctrl+C instead. Double-Esc rewind now works while focused on scrollbackgrok --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--no-ask-user now also disables ask_user_question for subagents/minimal and /fullscreen commands let you switch the current session between minimal and fullscreen modesCmd/Ctrl+click on bare http(s) links now opens only once on Warp terminalsCmd/Ctrl+click now works on imagine media paths and URLs that wrap across multiple terminal rowsgrok update on Windows no longer fails when a previous .old executable is still running/rename now appear on the prompt box border after resumegrok models banner now correctly reports per-model API keys and deployment keysgrok plugin marketplace add/usage is now correct during daylight saving time/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 effortu to update the selected plugin and shows non-blocking success feedback/docs slash command opens How-to Guides picker, browses web docs, or jumps directly to a guide by title--minimal mode now always uses your terminal’s own colors so text stays readable on any background/usage (and /cost) is now hidden for free and X Basic personal accounts--minimal flag now shows in grok --help/recap now works on the same turn and long auto recaps are hidden from view while still saved/newdescription rationale in every invocation/settings/settings (Agent & Approval)grok --minimalgrok wrap now correctly handles quoted strings and shell aliases/effort slash command changes reasoning effort on the active modelEsc] hint in /btw panels now stays visible even on narrow terminalsCtrl+Space or F8, with optional hold-to-talk on supported terminals/btw panels are now clickable and highlight on hoverCtrl+C quitEsc or any non-drag inputgrok update downloads have a longer timeoutgrok wrapShift+Tab cycles and enabled by default in settingsgrok agent stdio now checks for updates in the background like other modesCtrl+R) now shows only the current session’s prompts, with the newest selected at the bottomEsc now cancels a running turn immediately; double-Esc clears prompt or opens rewind when idlegrok wrap now shows copy success over SSH and suggests native drag-select when paste failsgrok agent stdio hangs on Windows when used with persistent clients such as VS Codegrok wrap to run any command with local clipboard supportCtrl+4 now toggles the prompt queue on local macOS VS Code terminals/recap and return-from-away) now show the full summary instead of being cut off mid-sentencegrok 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 enabledr in scrollback no longer accidentally rewinds the sessionCtrl+X on terminals that cannot deliver Ctrl+.Shift+Tab, collapses the Inactive section by default, and hides older idle agents behind a "N more" row--json-schema to grok -p and receive a validated JSON object instead of free textCtrl+L now interjects mid-turn in VS Code, Cursor, Windsurf, and Zed terminals/context command now reports the same number of tool definitions that are actually sent to the model/sessions on the agent dashboard no longer freezes the interfaceGROK_AGENT=1 so host tools can tell them apart from interactive shells/resume now selects the correct model when a saved model name is ambiguous--json-schema flag for headless mode to constrain model output to a supplied JSON Schema/rename now persists correctly and appears in /session-info even after auto title generation or resume**/*.pem in addition to exact pathsXAI_API_KEY present no longer lose refresh on idlelist_dir now reliably shows all immediate child directories even inside large monorepos/model dropdown no longer opens the wrong sessionCtrl+[ / ] now switches from the session you are currently viewingCtrl+R) now shows the complete recent list instead of a scrambled partial onegrok -w --ref <branch> now creates worktrees based on the specified ref instead of HEADCtrl+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/usage command and credit warnings are now hidden for API-key authentication/usage warnings now correctly reflect prepaid credits and auto top-up status/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/goal slash command now appears in the menu on the welcome screen before any prompt is sent when the feature is enabled/usage and warnings now match backend flooring and show pay-as-you-go limits when applicable/usage now shows prepaid credits balance and auto top-up statusconfig.toml under the [features] table/goal options (toggles, limits, role models) are now configurable together in a [goal] table--disable-web-search is now honored in grok -p and grok agent; auxiliary model routing respects catalog overrides/resume now shows sessions from your current working directory’s repo at the top of the listconfig.tomlCmd+Backspace now deletes only from the cursor to the start of the line instead of clearing the whole prompt/btw answer panel is visibleagent command is now kept in sync with grok after running grok updategrok -p) runs now wait for background tasks and subagents to finish before exitinggrok plugin install <name> now resolves plugins from registered marketplaces instead of only local paths< and > in responses and tool output[ in the pager prompt no longer appears delayedresume_from now continues a finished sub-agent in place instead of forking a new conversationgrok sessions delete <id> now lets you permanently remove a session from the CLIlist_dir now shows more relevant files when a large directory appears early in alphabetical ordergrok quit no longer hangs when background git or network tasks are slowlist_dir now gives clearer guidance when a directory is too large, using the actual tool names available in your sessionCtrl+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/resume, grok sessions list) are now sorted by the same activity time shown in the UI--hunk-tracker-mode, GROK_HUNK_TRACKER, or configCtrl+X now stops running turns or closes sessions from inside the agent detail viewShift+Enter fails because kitty keyboard protocol is disabled\?\ prefixesCtrl+V) now works for images on pure Wayland sessions/sessions no longer crash on narrow terminalsptyctl resize now correctly notifies the child processEEXIST errorsgrok dashboard now reliably opens the dashboard instead of silently falling through to a normal sessionweb_fetch errors on GitHub hosts now recommend using the gh CLI when internal access is blockedCtrl+C cancels now complete in under 50 ms instead of blocking for secondsgrok mcp add now accepts positional arguments (e.g. grok mcp add filesystem -- npx ...), supports --scope project, and adds -e/-H flags for env/headersEnter and number-key shortcuts/code-review slash command now ships with the CLI and is always availablegrok update no longer downloads the same binary twice when multiple updaters or leader checks run concurrently/compact are now shown verbatim so the model can reference them correctly in later tool calls/ while scrollback is focused now focuses the prompt and opens the slash-command dropdown~/.grokgrok outside a project directoryCtrl+W in the prompt now deletes whole words like bash instead of stopping at punctuationqstateDiagram mermaid blocks now render as Unicode diagrams instead of source fallbackgrok --resume now correctly finds the real session instead of failing on empty image-only foldersstateDiagram Mermaid blocks now render as diagrams instead of source fallbackgrok --resume failing on empty image-only session folders left by cross-directory pastes& groups, circle/cross endings and self-loopsgrok --resume failing on empty image-only session folders left by cross-directory pastesK/J keys snap the viewport to the top of previous or next assistant responsesJ/K vim mode navigates between assistant responses in scrollbacksequenceDiagram mermaid blocks render as Unicode lifeline diagrams instead of source fallbackask_user_question tool can now be enabled in allowlists without requiring plan-mode toolsShift+Tab mode cycling works again in the agent viewCtrl+C now cancels a blocking grok update cleanly instead of leaving an orphaned downloadgrok --debug now produces per-session log files under ~/.grok/debug/ even with a leader processrun_terminal_cmd can stream live stdout/stderr chunks when the workspace flag is enabled/session-info now displays the current turn index& operator is now allowed by default in terminal commands& rejection messages now correctly name the real parametersgrok update now restarts any older running leader so all clients get the new binaryweb_search and x_search tools from the parent sessiongrok login now defaults to device code flow, which works reliably in SSH, WSL, VPN, and browser-restricted environments/rewind before a compaction boundary no longer leaves later prompts in contextread_file are now downscaled even when small in bytes but large in pixels& are no longer incorrectly rejected by run_terminal_cmdpython -c save-to-file reminder now suggests correct commands on Windowsgrok agent --leader without forced interactive login or timeoutscmd.exe no longer falsely reject commands containing &web_fetch no longer crashes the CLI on pages whose root element matches a cleaning selector/resume history pickerimage_to_video and reference_to_video tools[Image #N] attachment references in image_editEnter for Search and ListDir blockssessionId + bound per-server init/btw overlay panel<analysis> block).mcp.json and plugin.jsongrok inspect/loop interval from the request instead of hardcoded parsing--permission-mode acceptEdits to auto-approve editsconfig.toml--permission-mode override the permission_mode setting from config.toml/loop, monitor, tag colorsShift+Tab cyclesCtrl+V image paste/context always showed "Auto-compact at 85%"Left/Right arrows switch tabs in extensions modalUp/Down arrows at list edges focus search inputFocusGained8×8 images on the clientARM64 DLL_NOT_FOUND/rewind menu is open/rewindtimeout_ms promptingUp/Down in slash menu and history searchCtrl+Delete on WindowsCtrl/Alt+V image inputCtrl+Enter / Ctrl+;read_file tool calls and pass as multimodal vision tokens/login command to reauth from inside the TUI/usageCmd+A in prompt to select all text in Ghosttydefault_modeltmux-inside-ssh copy/paste issuesconfig.toml so it survives restartgt and git in /execute-planShift)!Shift+Enter with Alt+Enter on VTE-based terminals (GNOME Terminal, Ptyxis, kgx, Tilix, etc.)search_replace, write_file, and run_terminal_command calls on scrollbackset_images byte-length collision losing chipsread_file duplicate-read check that breaks after compactionCtrl+X as default shortcuts-help binding on Windowsulimit on macOS and Linux, preventing ENOSPC errors from bricking the CLI/exportgrok -w crash when git index is empty/config-agents modalUTF-8 truncation in tool-call output causing crashesCmd+Click on wrapped linkshookSpecificOutput.tool_input overridex86_64 (Intel) supportARM64 (aarch64) supportShift+Enter newline insertion on Windows TerminalSpace / Enter / click toggle sections in shortcuts help modalread_filecwd for CJK characters to fix path references<user_guide> system promptReadTool blockstderr to /dev/null to fix incorrect TUI text interleavinguse_tool output limit to 20 KBread_file (images and PDFs) directly in tool-result messageOSC9 bug fixesQWERTZ AltGr on WindowsBM25 queriesbash, zsh, and fish/tmp instead of writing inline Python scripts