feat: migrate blox CLI to sq blox and conditionally show remote branches#74
Merged
wesbillman merged 3 commits intomainfrom Feb 12, 2026
Merged
feat: migrate blox CLI to sq blox and conditionally show remote branches#74wesbillman merged 3 commits intomainfrom
wesbillman merged 3 commits intomainfrom
Conversation
- Replace direct `blox` binary calls with `sq blox` in blox.rs and driver.rs - Make `find_command` public in acp-client for reuse across crates - Add `sq_binary()` helper that locates `sq` via `find_command` - Update all error messages to reference `sq`/`sq blox` - Add `is_sq_available` Tauri command to detect `sq` CLI presence - Add `isSqAvailable()` frontend command binding - Conditionally render remote branch toggle in NewBranchModal only when `sq` is available on the system
- Use public re-export `acp_client::find_command` instead of private `acp_client::types::find_command` in blox.rs - Remove unused `FLUSH_INTERVAL` constant and `Duration` import from driver.rs
- Add sq.svelte.ts store with sqState reactive object and refreshSqAvailability() function that checks once and caches - Call refreshSqAvailability() in App.svelte onMount (non-blocking) - Update NewBranchModal to read sqState.available from the store instead of calling isSqAvailable() on every dialog open - Removes per-open delay when launching the new branch dialog
0c78d4d to
9c4bd9a
Compare
loganj
added a commit
that referenced
this pull request
Feb 26, 2026
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
Migrate all
bloxCLI invocations tosq bloxand conditionally render the remote branch UI based on whether thesqCLI is available on the user's system.Changes
Rust (
acp-client)types.rs: Makefind_commandpublic so it can be reused across crateslib.rs: Re-exportfind_commandfrom the crate rootdriver.rs: Replacefind_command("blox")withfind_command("sq")and update args to["blox", "acp", ...]; remove unusedFLUSH_INTERVALconstant andDurationimportRust (
staged/src-tauri)blox.rs: Addsq_binary()helper that locatessqviafind_command; updaterun()to invokesq blox <args…>instead ofblox <args…>; addis_sq_available()public function; update all error messages to referencesq/sq bloxlib.rs: Registeris_sq_availableas a Tauri command; remove unusedsetup_worktreecommandFrontend (
staged/src)commands.ts: AddisSqAvailable()binding; remove unusedsetupWorktreeexportsq.svelte.ts(new): Reactive store that cachessqCLI availability — checked once at startup, read synchronously by componentsApp.svelte: CallrefreshSqAvailability()on mount (non-blocking)NewBranchModal.svelte: ReadsqState.availablefrom the store; only render the Local/Remote toggle whensqis detectedTesting
sqinstalled: remote branch toggle appears, remote branch creation works viasq bloxsq: toggle is hidden, only local branches are offered