Grok Build 1.0.13 — length-truncated turns auto-continue, hooks gain confirm/deferral/post-tool context, and reliability/performance land across inference, sessions, MCP, and installs. Tree: xai-org/grok-build.
Changelog
[new]Length-truncated responses continue automatically instead of failing the turn.
[new]Hooks can ask the user to confirm a tool call instead of always allowing or denying.
[new]Hooks can request deferral or add context shown to the model after a tool runs (including richer PostToolUse feedback and optional model-facing output replacement).
[new]Session close records detailed timing data for performance analysis.
[new]Credit limit upsell offers a Try Again button to retry the last prompt.
[new]Pasted images show a live pixel preview in the prompt box on iTerm2.
[new]grok usage <session-id> [turn] prints persisted per-turn token and cost totals as JSON (session-wide totals included).
[fix]Transient inference failures (stalls, drops, 5xx) retry automatically instead of ending the turn.
[fix]Windows users can correctly open ~/.grok and worktree sessions.
[fix]Session data is more reliably saved after prompts and on power loss.
[fix]Compaction failures show the actual error instead of a generic message.
[fix]Truncation error messages show the right guidance instead of an unhelpful retry suggestion.
[fix]Truncated tool calls are executed instead of failing the turn when arguments are complete.
[fix]Images larger than 2000px no longer brick sessions on many-image requests.
[fix]Wrapped hyperlinks in the pager remain fully clickable on Windows Terminal (not only the first line).
[fix]Recurring scheduled tasks include a reminder to stop the monitor when work finishes.
[fix]Scheduled task IDs are full UUID strings, avoiding collisions when tasks are created in the same millisecond.
[changed]Subagent spawning is faster when connections drop during bursts.
[changed]Session startup with MCP servers is much faster when auth is already configured.
[changed]MCP server startup no longer stalls behind a fixed batch size.
[changed]CLI downloads are compressed, so fresh installs and updates are substantially faster.
[changed]Strict sandbox reads CWD + system paths + ~/.grok; writes are limited to CWD + ~/.grok/sessions + temp (not the whole ~/.grok tree).
[changed]Read/Edit/Grep permission checks follow in-path symlinks for deny/ask on the resolved target; unresolved in-path symlinks prompt when deny/ask file rules apply.
Agent & tools
[changed]PreToolUse / hook decisions: hooks may prompt for user confirmation on a tool call, not only allow or deny.
[changed]PostToolUse: hooks run after the tool finishes; they can feed block reasons and additionalContext to the model, and settings-file hooks can replace the model-facing tool output (updatedToolOutput / updatedMCPToolOutput) while scrollback and telemetry keep the original. Default timeout for PostToolUse matches other gates (600s). Exit code 2 now feeds stderr to the model for this event.
[changed] Hook event envelopes include both hookEventName (Grok snake_case) and hook_event_name (Claude-style PascalCase). PostToolUse also exposes a tool_response alias for toolResult.
[changed] Session-end hook budgeting is clearer: each SessionEnd hook is bounded by its own timeout (default 1.5s; override with GROK_SESSION_END_HOOKS_TIMEOUT_MS, capped at 60s).
Subagent resume-window handling for faster recovery when connections drop mid-burst.
Compressed CLI download payload for installs/updates.
Additional model id surface: grok-4-1-fast-non-reasoning.
Dependency add: hmac in the workspace Cargo manifest.
Upgrade notes
If you ship PostToolUse hooks that end with exit $? from checkers that use exit 2 (e.g. some linters/tests), end with an explicit exit 0 when you only meant to log — exit 2 now forwards stderr to the model.
Output replacement on PostToolUse is settings-file (command/HTTP) only; SDK-registered hooks can still send block reasons and additionalContext but cannot replace tool output.
Replacements for built-in tools must match Grok’s own tool output shape (from toolResult); bad shapes are dropped and marked failed while the original result stands.
Review strict sandbox expectations if you relied on writing outside ~/.grok/sessions under that profile.
From source: sync to bb7f39d5858c (or the 1.0.13 tree) and rebuild as usual; no Cargo.lock package-count churn beyond the version bump set.