Development Overview Thread

BetterTouchTool 6.304 (2026032405)

Condition / Rule Editor

  • You can now drag and drop conditions and groups to reorder them or move them between groups
  • Drag handles appear next to each condition row and group header for easy rearranging
  • Drop indicators show exactly where an item will be placed
  • Improved the visual alignment of the group connector lines
  • Improved reliability of the live "Currently True / Currently False" evaluation indicator

Variables View

  • Significantly improved performance of the built-in variables list — expensive system queries (mouse position, trackpad state, accessibility lookups, Dock item detection) are now only performed when the relevant variables are actually visible on screen
  • Only visible variable values are refreshed, reducing CPU usage when scrolling through large variable lists

Context Menu

  • The "Transform Plugin to Individual Actions" option is now always visible in the right-click menu (previously it was only shown for JSON plugin actions)

BetterTouchTool 6.303 (2026032404)

AI & Automation

  • Fixed a race condition where rapidly switching between documents could cause the AI assistant to miss detecting the current project context
  • Updated the default plugin identifier format for user-created Swift plugins to use com.bttuserplugin.swift.* instead of com.btt.swift.*, making it clearer which plugins are user-created vs. built-in

BetterTouchTool 6.302 (2026032403)

Icon Picker

  • The icon picker in the rule editor now opens a full icon picker popover when clicked, making it much easier to browse and select icons
  • Updated the hint text to "Click, paste or drag" to reflect the new click-to-browse functionality

Conditional Activation Groups

  • You can now create new Conditional Activation Groups from scratch without needing an existing app entry first

Actions

  • Added new "Transform Plugin to Individual Actions" option in the main menu

BetterTouchTool 6.301 (2026032402)

JSON Action Plugins

  • Added support for a new JSON Action Plugin system — simple JSON files that define reusable actions with configurable form fields, no compiled code required
  • Added a "Transform Plugin to Individual Actions" option in the right-click context menu, allowing you to expand a JSON plugin action into its individual component actions with all form values applied

Conditions

  • Added new condition variables for detecting which app is being hovered over in the Dock: hovered app name, hovered app path, and hovered app bundle identifier

AI Assistant

  • The built-in AI assistant now knows about JSON Action Plugins and can help you create and configure them

BetterTouchTool 6.300 (2026032401)

JSON Action Plugins

  • Added a new JSON Action Plugin system — create reusable action plugins using simple JSON files (.bttjsonplugin) without writing any compiled code
  • JSON plugins support configurable form fields (text fields, sliders, checkboxes, dropdowns, color pickers, etc.) with placeholder values that get substituted at runtime
  • Right-click any action(s) and choose "Export Selected Action(s) as JSON Action Plugin..." to package them into a shareable plugin file
  • JSON plugins appear alongside compiled plugins in the action selector under "Custom Plugin Actions"
  • Plugins are automatically detected and hot-reloaded when added to or removed from the Plugins folder
  • Double-clicking a .bttjsonplugin file will install it into BetterTouchTool

Hovered Dock Item Variables

  • Added three new variables for the currently hovered Dock item: app name, app path, and bundle identifier
  • These variables are available in the Variables Viewer, conditional activation rules, and the rule editor
  • Can be used in trigger conditions to create actions that respond to which app you're hovering over in the Dock

AI / Automation

  • The "Activate Hovered App in Dock" AI tool now correctly activates the app

Window Switcher

  • Improved window positioning so the switcher properly stays within screen bounds after content loads

Plugin Manager

  • Added support for browsing and managing JSON Action Plugins in the Plugin Manager
  • Added an optional plugin notarization feature for developers (sign, notarize, and staple plugins directly from the Plugin Manager)

BetterTouchTool 6.299 (2026032313)

Clipboard Manager

  • Hover previews in the clipboard manager now appear faster, making browsing through clipboard entries feel more responsive

BetterTouchTool 6.298 (2026032312)

Clipboard Manager

  • Added a new "Show preview on hover" option (experimental) — hover over clipboard entries to see a quick preview without clicking
  • New setting available in Clipboard Manager settings

Keyboard Shortcuts

  • Fixed an issue where modifier keys (e.g. left-CMD vs right-CMD) could lose their left/right distinction after executing a shortcut while holding a modifier key
  • Improved modifier key state restoration to prevent held modifiers from being incorrectly released after shortcut execution

Logitech Device Support

  • Fixed an issue where choosing to divert no specific keys on a Logitech device would not properly undivert all keys
  • The "Save" button in the Logitech key recorder is no longer disabled when no keys are recorded, allowing you to clear your key configuration

BetterTouchTool 6.297 (2026032310)

Floating Menus

  • Fixed maximum width handling for floating menus — menus now correctly respect the configured maximum width in all sizing modes, including content-sized and min/max layouts
  • Improved floating menu item wrapping behavior so items properly wrap to the next row when a maximum width is set

Configuration UI

  • Fixed an issue where certain configuration options (like SF Symbol settings) could incorrectly appear or disappear depending on unrelated tab selections

BetterTouchTool 6.296 (2026032309)

Keyboard Shortcuts

  • Fixed an issue where modifier keys (Shift, Command, Option, Control) could sometimes not be detected correctly after other apps posted synthetic keyboard events, which could cause keyboard shortcuts to stop working until the modifier key was pressed again
  • Fixed modifier key restoration when using left/right-specific modifier keys (e.g., Left Command vs Right Command) in shortcut sequences — previously, holding a modifier during a shortcut action could fail to be recognized afterward

BetterTouchTool 6.295 (2026032308)

AI Chat & Plugins

  • Improved AI response handling for CLI-based providers: When using Claude Code, Codex CLI, or OpenCode CLI as AI providers, BetterTouchTool now correctly retrieves a final text summary after the AI finishes executing tools, preventing cases where the chat would end without a visible response.
  • Better plugin compilation feedback: After compiling a Swift plugin, the AI now provides more specific guidance on where to find and use the plugin based on its type (action plugin, trigger plugin, Stream Deck widget, Touch Bar widget, or floating menu widget).
  • AI now knows your file system paths: The AI chat assistant automatically has access to your home directory and plugins folder path, making it easier to help with plugin compilation and file-related tasks without needing to ask.

Configuration UI

  • Fixed dropdown menus in plugin configuration forms: Dropdown/popup menus in the configuration panel now correctly handle plain text and dictionary-based options provided by Swift plugins, preventing potential crashes or empty menus.

BetterTouchTool 6.291 (2026032304)

Conditional Activation Rules

  • Improved the labels for mouse position condition fields in the rule editor to be clearer and more descriptive (e.g., "Mouse Dist X From Active Win Top Left" instead of the previous abbreviated labels)

BetterTouchTool 6.290 (2026032303)

Trigger Plugins

  • Added support for Trigger Plugins — custom plugins that can observe system events and fire BetterTouchTool triggers when conditions are met. Find them under Other Triggers > Trigger Plugins in the trigger selector.

Rule Editor

  • Fixed a crash that could occur when parsing certain condition rules with unexpected expression types
  • Fixed incorrect handling of true/false values in condition rules
  • Improved spacing and layout of the rule editor interface

AI Integration

  • Updated the AI assistant's knowledge to include the new Trigger Plugin system

BetterTouchTool 6.288 (2026032301)

Trigger Plugins

  • Added a new Trigger Plugin system — you can now create custom triggers that monitor system events and fire BetterTouchTool actions when conditions are met. Trigger plugins appear under Other Triggers > Trigger Plugins in the trigger selector.
  • Trigger plugins support custom configuration options, so plugin authors can expose user-facing settings directly in the BTT UI.
  • The AI assistant can now create and edit trigger plugins alongside existing plugin types (action plugins, floating menu widgets, Stream Deck plugins, and Touch Bar plugins).

Plugin Manager

  • Added a built-in source code editor for Swift plugins — click the pencil icon on any plugin with a .swift source file to view and edit its code directly in BTT.
  • You can now save, revert, and recompile plugins from the editor without leaving the Plugin Manager.
  • Added an "Ask AI To Modify Plugin" button in the editor to get AI assistance with changing existing plugin code.
  • The "Ask AI" button in the Plugin Manager now opens a dedicated Plugin Creator AI chat with the appropriate skills pre-loaded.

AI Assistant

  • New Plugin Creator skill — a specialized AI mode for building all five plugin types with guided assistance.
  • New Plugin Editor skill — a specialized AI mode for modifying existing plugins, with the source code automatically provided as context.
  • Fixed an issue where the AI spotlight window would dismiss when opening a file picker or save dialog in compact mode.
  • Fixed an issue in the AI setup wizard where selecting a model from the model browser could be overwritten by default settings.

Condition / Rule Editor

  • Fixed a crash that could occur when evaluating trigger conditions or activation group rules that reference undefined variables.

BetterTouchTool 6.287 (2026032001)

Condition & Rule Editor

  • New modern rule editor for trigger conditions and activation groups on macOS 13+ — provides a cleaner, more intuitive interface for building complex conditions
  • Added a predicate text editor toggle for advanced users who prefer editing conditions as text
  • The previous editor is still used on macOS 12 and earlier

Plugin Manager

  • Added a new Plugin Manager window, accessible from the toolbar and the View menu
  • Browse, filter, and manage all installed plugins (floating menu widgets, actions, Stream Deck, Touch Bar) in one place
  • Load new plugins or open the Plugins folder directly from the manager

AI Assistant

  • The AI assistant now has dedicated reference documentation for all four plugin types: Floating Menu Widgets, Actions, Stream Deck, and Touch Bar
  • Improved guidance when creating Swift plugins — the assistant will automatically retrieve the correct reference for the plugin type you're building

Magic Mouse

  • Magic Mouse single-finger tap click delay and double-tap threshold are now configurable via the hidden preferences BTTMMTapClickDelay and BTTMMDoubleTapThreshold (useful for users who find taps registering too quickly or too slowly)
3 Likes