Host command execution: Run approved captured, background, and monitor commands as ordinary host subprocesses, and retire sandbox configuration, status fields, and commands
Interactive provider switching: Move provider selection to /setup and remove the /provider slash command while keeping the top-level fx provider command
New Features
Codex subscriptions: Sign in with an eligible subscription through fx login codex, then use authenticated Codex models for interactive sessions, fx ask, native ACP, images, subagents, and automatic reviews
Grok subscriptions: Sign in with an eligible Grok subscription through fx login grok, then use authenticated xAI models, effort levels, images, local tools, persistent sessions, and automatic reviews
Workspace status line: Opt in to the active workspace path and Git branch through /settings, /statusline workspace, or statusLine.workspace
fx-native workspace skills: Discover project skills from .fx/skills before other workspace and compatibility roots
External skill authorities: Allow symlinked skills under explicitly trusted external directories through FX_SKILL_SYMLINK_AUTHORITIES
Improvements
Provider setup: Activate a catalog-valid model after subscription login, reauthenticate logged-out providers through /setup, and show Codex authorization as a clickable terminal link
Provider model catalogs: Show provider-advertised models, context windows, and effort levels in /model and the status line
Session listings: Show saved session names, readable UTC timestamps, language names, and singular turn counts while preserving the existing JSON fields
Session cache reads: Keep session listings and latest-session resume responsive while another session defers cache publication
Terminal tab titles: Label interactive tabs with the session or workspace and active model, keep them current across rename, resume, and model changes, and clear them on exit
Terminal activity: Keep each command or shell attached to its terminal activity row through completion, distinguish graceful close from force close, and hide no-op cd . && prefixes
Terminal action arguments: Advertise only the fields relevant to the selected action and limit unsaved fx ask sessions to terminal.exec
Auto mode reads: Run routine read-only commands and hardened Git inspection directly without automatic review
Automatic denial recovery: Return destructive actions to the agent for replanning and finish repeated no-progress denials as normal assistant output instead of opening a permission prompt
One-off subagents: Keep active one-off subagents visible, deliver one final result, and retire them after completion while leaving persistent subagents reusable
Startup preferences: Show saved reasoning effort and Fast mode immediately while model capabilities load
Dev build identity: Add the commit and [dev] marker to dev-channel welcome headers without changing stable release headers
MCP reload feedback: Replace internal health details with concise server availability and recovery guidance
Help layout: Keep command descriptions close to command names on wide terminals
Native binary size: Reduce the macOS arm64 release footprint while preserving existing behavior
Stable upgrades: Restore forward-only version ordering across manual, automatic, and Ctrl+G upgrades
Bug Fixes
Oversized images: Normalize large macOS image snapshots without changing the originals and reject attachments locally when a bounded snapshot cannot be prepared
Corrupt memory stores: Report malformed, oversized, or unreadable stores and preserve their original bytes instead of overwriting them
Non-regular file reads: Reject FIFOs and other non-regular read_file targets before they can block
Malformed tool loops: End a turn after three consecutive malformed-only tool batches and reset recovery after a valid batch
Terminal null placeholders: Treat textual "null" values as absent for unused terminal fields while preserving real command text that contains the word
Terminal keyboard input: Ignore unknown completed escape sequences and handle Ghostty kitty Escape reports with Caps Lock, Num Lock, and event suffixes
Credential fallback: Continue to a stored API key when saved fx login credentials cannot load or refresh while keeping the login failure available for diagnostics
Vision recovery: Retry replay-safe requests once after a post-Vision assistant-prefill rejection
Thinking status: Keep the Thinking indicator and elapsed timer visible while automatic command review runs
Terminal helper compatibility: Reject unsupported start, signal, and force-close requests from stale terminal helpers without losing unrelated sessions
WASM project context: Skip unavailable local project-instruction probes in browser hosts while preserving host-supplied context
Idle terminal traffic: Stop polling the terminal theme while idle and continue retinting after supported theme notifications
Security
Command approval patterns: Restrict wildcard command allows to static shell words and keep destructive shell commands and file deletion outside automatic review
macOS login storage: Store native fx login sessions in Keychain with verified migration, refresh, restart, and logout behavior
MCP configuration writes: Save ~/.fx/mcp.json atomically with private permissions, reject linked targets, and preserve the previous configuration when a write fails