Background workflows gain real-time control, preserving revision comments upon plan approval
When assigning long-running automated tasks, you can now directly track real-time activity for background operations.
Typing /workflow lists, stops, or resumes background workflows (ordered sequences of automated tasks), which also appear synchronously alongside stop buttons in the task panel. Running /workflow stop or /workflow resume accurately targets the currently active workflow.
Comments left during plan revision runs are fully preserved and submitted when approving the plan. If a background command discovers its working directory is missing, it immediately reports failure without flipping back to a running state due to lingering subsequent output.
FEATURE
Headless mode reliably waits for goal outcomes, stabilizing background task pauses and resumes
When running scripts to batch-process project goals in the background, you no longer have to guess whether tasks completed cleanly.
When running grok -p in headless mode (execution without a terminal window), the process waits for background goals to fully finish and reports the final outcome. Supplying the --background-wait-timeout flag automatically terminates the goal when the deadline expires, without printing extraneous pause notices upon completion.
Pressing Ctrl+C pauses an active goal, allowing you to resume its progress directly when reopening the conversation. If goal features are disabled in settings, headless mode treats an entered /goal command as a standard text query.
FEATURE
Worktrees support Jujutsu repositories, avoiding stalls on special files and missing directories
When switching branches across complex projects, managing separate copies now avoids path pitfalls.
grok worktree (a feature enabling parallel copies of a project) supports Jujutsu repositories. Creating a copy no longer hangs even when named pipes or sockets are present.
When GROK_HOME is set to a symlink (a shortcut file pointing to another location), copies created with -w maintain active tracking. If the original launch folder was deleted, grok -w falls back to the root directory with a helpful notice.
Running grok -p --output-format json reports the directory used, clarifying name collisions. Both grok sessions list and /resume display sessions started from the same subdirectory while hiding adjacent submodule records.
FEATURE
Worktree cleanup protects against accidental deletion, accelerating launches with many copies
When cleaning up retired parallel development copies, safeguards and scanning efficiency both see tangible improvements.
Running grok worktree rm or gc (a maintenance command that cleans up discarded copies) cleans up properly and restores registered names even after manually deleting folders or rebuilding the database. Untracked content that consists only of empty folders is permitted for deletion. Without the -f flag, the copy is preserved if checks for unsaved changes fail or time out.
Running grok worktree list now displays unfinished copies left behind by interruptions. All grok worktree commands skip loading model directories at startup. Opening the /resume picker is also noticeably smoother when managing large numbers of copies.
BUGFIX
Slash command and skill completion update promptly, protecting input cursors and hidden commands
When quickly typing commands or referencing files in the prompt box, automatic suggestions no longer disrupt your typing flow.
Only slash commands positioned at the very beginning of a message now trigger a skill (a functional module granting specific capabilities to the model). Entering undocumented commands like /cd manually executes the intended command instead of getting intercepted by similarly named skills.
When project skills change, the autocomplete menu for slash commands updates instantly, accurately displaying filenames under the commands/ directory and applying proper project tags in nested projects. Completion popups no longer hide characters trailing the cursor. When rapidly entering filenames, @ file completion no longer mistakenly applies stale results from previous searches.
When tools request file deletion, web searches, or rewrites, confirmation panels now clearly identify the origin of each check.
When a hook (a script triggered by specific events) requests confirmation for web searches or file deletions, the review card displays its name. Tool calls from MCP (Model Context Protocol, an interface connecting AI to external tools) also prompt with explicit names.
File write review cards display the existing content about to be overwritten. When permission prompts, questions, or MCP cards appear, keystrokes from typing, arrow keys, Enter, or Ctrl+Enter will no longer trigger unintended selections.
Custom commands located outside the configuration directory, such as my-guard, are automatically located and executed from PATH. Loading errors in the /hooks list can also be expanded and inspected directly.
BUGFIX
Oversized prompts automatically offload to files, keeping image drags and long pastes uninterrupted
When pasting massive code blocks or screenshots into prompts, input channels no longer freeze the interface from data overload.
When pasting exceptionally long questions or prompts, the system offloads them into separate files for delivery instead of cramming them into conversation strings. In terminal environments lacking bracketed paste support, long text no longer stalls around 1 KB and reads through completely.
You can now drag and drop images directly from file managers into terminal windows as attachments. Pasting images alongside skill commands like /pr-workflow delivers the images faithfully to the model. Images from external tools undergo format verification so corrupted files do not crash the session, which continues running smoothly even when writing large files or capturing multiple screenshots.
FEATURE
Terminal shortcuts and dialogs get refreshed, streamlining search scrolling and multi-select choices
When navigating menus inside cramped terminal windows, key responsiveness and screen layout become significantly smoother.
In tmux (a terminal multiplexer that splits windows into panes) with extended keys enabled, Shift+Enter, Ctrl+., Ctrl+/, and Ctrl+[ / ] are now recognized. When browsing /feedback drafts, pressing G, Home, or End jumps directly to the first or last entry.
For multi-select questions, number keys toggle multiple choices before submitting. Running /find continues counting matches accurately during streaming output and scrolls directly to wrapped lines containing results.
Pressing Ctrl+C while dialogs are open still cancels the turn. In terminals with limited vertical height, dialogs such as /feedback preserve readability, and delivery failure states wrap cleanly within the dialog box.
BUGFIX
Dashboard session pins persist across restarts, supporting quoted paths and safe deletions
When frequently inspecting and switching between multiple project sessions, panel ordering and operational safeguards are far more dependable.
Pinned sessions in the dashboard (an overview panel managing all conversation tasks) now strictly preserve their original pinning order even after restarting. Closing a session clears the item completely instead of leaving it stranded in the inactive list.
Entering /exit from the detail view closes only the currently viewed session. During Peek previews, moving focus with arrow keys before pressing number keys no longer assigns tasks to unintended agents.
Executing /cd or using the location picker now permits paths containing quotes or escaped characters. Entering /delete with trailing characters returns an immediate error instead of accidentally deleting the active session.
BUGFIX
Resending edited messages preserves workspace files, clarifying login steps and halting turns on logout
When repeatedly refining requirements throughout long conversations, code files and account states receive more comprehensive protection.
Canceling and re-editing submitted messages during long sessions no longer mistakenly reverts files in the workspace. Logging out immediately halts active turns in local sessions.
Login failures provide clear next steps instead of dumping raw errors. If grok -p has no saved login credentials, it automatically executes the configured authentication command (auth_provider_command).
Opening a session falls back to the Auto model when failing to retrieve the model list. Running /compact (a command condensing conversation history to free space) on an empty session also no longer resets reported context window values.
FEATURE
Tool Permission Flags Align with Model Names, Memory Simplifies to a Toggle, and Density Controls Are Added
When fine-tuning models from the command line, configuration options and tool permissions become more intuitive.
--disallowed-tools accepts the exact names seen by the model (such as run_terminal_command or spawn_subagent). Headless mode adds --allowed-tools as an alias for --allow.
/density and the Tool call density setting control the level of detail in tool calls. --system-prompt automatically appends rules from --append-system-prompt.
Memory is simplified into a straightforward toggle, requiring only the enabled key under [memory] in configuration files. The command line removes the /share command and session sharing features.
Original changelog
Original changelogBackground workflows gain real-time control, preserving revision comments upon plan approval
`/workflow` lists, stops, and resumes background workflow runs, and those runs appear in the tasks pane with a stop button
Plan comments added while a revision runs are preserved and sent when the plan is approved
`/workflow stop` and `/workflow resume` target the live run
Background shell commands fail immediately when the working directory does not exist, and no longer flip back to running when late output arrives
Original changelogHeadless mode reliably waits for goal outcomes, stabilizing background task pauses and resumes
Headless `grok -p` waits for background goals to finish and reports their outcome
`--background-wait-timeout` also stops an active headless goal after the timeout
`Ctrl+C` on a goal pauses the goal
Reopening a chat with an active goal continues the goal
Headless goal runs no longer print a spurious "Goal paused" after completion
With goals disabled, a headless `/goal` line is treated as a normal prompt
Original changelogWorktrees support Jujutsu repositories, avoiding stalls on special files and missing directories
`grok -p --output-format json` reports the worktree folder used, including after `-w` name collisions
`grok sessions list` and `/resume` show worktree sessions started from the same subfolder, and hide sessions from a sibling submodule
`grok worktree` works inside Jujutsu repositories
Worktree creation no longer hangs when the repo contains named pipes or sockets
`grok -w` opens at the worktree root, with a note, when the original launch folder is missing
Worktrees created with `-w` stay tracked when `GROK_HOME` is a symlink
Original changelogWorktree cleanup protects against accidental deletion, accelerating launches with many copies
`grok worktree rm` and `gc` clean up names after a folder is deleted by hand, and restore names after a db rebuild
`grok worktree list` shows unfinished copies left by an interrupted create
`grok worktree rm` without `-f` keeps worktrees when the unsaved-work check fails or times out
`grok worktree rm` and `gc` remove worktrees whose only untracked content is empty folders
Opening the resume picker is faster on machines with many worktrees
`grok worktree` commands start faster by skipping model catalog work at boot
Original changelogSlash command and skill completion update promptly, protecting input cursors and hidden commands
Slash command completion updates live when skills change, and shows the correct name for files under `commands/`
Slash command suggestions no longer hide the text after the cursor
Typing a hidden command such as `/cd` runs it instead of a near-match skill
`@`-file completion no longer accepts a match from an earlier query when you type quickly
Only slash commands at the start of a message trigger skills
Project skills are labeled correctly for nested projects
Original changelogReview cards identify trigger sources, preventing accidental keystrokes on permission prompts
Bare hook commands such as `my-guard` run from PATH when they are not next to the hook file
Hooks that ask about web searches or file deletes show the hook name on the approval card
Hook load errors in `/hooks` can be expanded
Typing, arrows, Enter, or send-now (`Ctrl+Enter`) no longer answers a permission, question, or MCP prompt card
Write approval cards show the existing file contents that will be replaced
MCP tool calls show hook permission prompts, and cards name the hook
Original changelogOversized prompts automatically offload to files, keeping image drags and long pastes uninterrupted
Images pasted with skill commands such as `/pr-workflow` are sent to the model
Very large pasted prompts are offloaded to a file instead of being sent inline
Images from tools are validated so a bad file no longer breaks the turn
Dragging images from a file manager onto a terminal attaches them
Long pastes without bracketed-paste markers are read in full instead of stalling after about 1 KB
Large file writes or many screenshots no longer end the session
Original changelogTerminal shortcuts and dialogs get refreshed, streamlining search scrolling and multi-select choices
`/feedback` Drafts supports `G` / `Home` and `End` to jump to the first or last draft
`Shift+Enter`, `Ctrl+.`, `Ctrl+/`, and `Ctrl+[` / `]` work inside tmux when extended-keys are enabled
`/find` keeps match counts accurate while output streams, and scrolls to the wrapped row that contains the match
`Ctrl+C` during a turn cancels the turn even when a modal is open
Multi-select questions let you toggle several answers with number keys before submitting
Dialogs such as `/feedback` stay readable on a short terminal, and failed send status wraps inside the dialog
Original changelogDashboard session pins persist across restarts, supporting quoted paths and safe deletions
Pinned dashboard sessions stay in the order you pinned them, and survive restarts
`/exit` in a dashboard details view closes only that session
`/cd` and the location picker accept quoted or escaped folder paths
`/delete` with extra text shows an error instead of deleting the current session
Number-key picks in the dashboard peek no longer go to the wrong agent after Up/Down
Closing a session in the dashboard no longer leaves it listed under Inactive
Original changelogResending edited messages preserves workspace files, clarifying login steps and halting turns on logout
Cancel and edit-resend on long sessions no longer revert workspace files
`grok -p` runs `auth_provider_command` when no login is stored
Sessions that open without a model list use Auto
Sign-in failures show a clear next step instead of a raw error
Logging out stops running turns on local sessions
`/compact` on an empty session no longer resets the reported context window
Original changelogTool Permission Flags Align with Model Names, Memory Simplifies to a Toggle, and Density Controls Are Added
Memory is only an on or off switch (`[memory] enabled`)
The `/share` command and session sharing are removed from the CLI
`/density` and the Tool call density setting control how much detail tool calls show
`--allowed-tools` is accepted as an alias for `--allow` in headless mode
`--disallowed-tools` accepts the names shown to the model, such as `run_terminal_command` and `spawn_subagent`
`--system-prompt` appends rules from `--append-system-prompt`