Repository navigation
Conversation
GPUI was replaced by the NSH native backends on rust-preview, so the Quick Tools panel now runs as a nonactivating NSPanel subclass that hosts an NSH AppView instead of a GPUI window. - panel.rs: QuickPanel (NSPanel) with becomeKey/resignKey hooks, present/dismiss that restore the previous app, and a file picker shown as a sheet on the panel so it never activates the app or hands key status to the main window. - appkit.rs: connect the quick-tools control on startup, reconnect on follow(), and close panels on quit and barrier. - Cargo.toml: drop GPUI deps, add objc2 / objc2-app-kit / block2. - bundle tsconfig: exclude quick-tools runtime/ and tools/, which are NSH UI-side sources checked by the ui_types step. - Remove the leftover MAKA_GPUI env var and GPUI wording in the README.
…cher off The panel now becomes key as a nonactivating panel without activating Maka, so the app the user was in keeps its menu bar and focus, as Spotlight and Raycast do. A fresh install registers no global shortcut; turning the launcher on in settings still picks Alt+Space.
…tings Settings rows take an optional note, shown muted after the label and truncated first. Plugin rows use it for the manifest description, the expanded command list lines up with the plugin name and keeps the row background, and four built-in descriptions are rewritten to fit one line.
ARE404
force-pushed
the
feat/quick-tools-rust
branch
from
November 8, 2026 16:09
bc465c6 to
a17b233
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Moves Quick Tools and the assistant panel from the Electron app to the native Rust desktop on
rust-preview.NSPanelhosting an NSH view. Summoning it gives the panel the keyboard without activating Maka. The app the user was in stays frontmost and keeps its menu bar, as with Spotlight and Raycast. Closing the panel returns to that app.SettingsRowgains an optionalnotefor this.scripts/quick-tools/import-legacy.mjsimports Electron-era data.Verification
node --test products/maka/workbench/tests/quick-tools.test.mjs: 11 passedplugin-sdkgenerate.mjscheck: 5 runtime declaration files verifiedtsc: passnpx biome formaton the touched TS/TSX files: cleancargo build --locked -p maka-cli -p maka-desktop-shell -p maka-host-shell: pass;quick_toolsunit tests passnode scripts/quick-tools/run.mjs --root <temp>):biome format(it already fails on files this branch doesn't touch) andcargo fmt --check(its only diff is pre-existing, inquick_tools/mod.rs).AI use
Tool(s) and scope: Claude Code and Codex helped with implementation and debugging; the design, review and testing are mine.
Checklist
Does this PR entail a change in behavior?