Skip to content

Clarify Oz/warpctrl CLI install command palette labels#13155

Merged
zachlloyd merged 1 commit into
masterfrom
factory/clarify-cli-install-labels
Jun 28, 2026
Merged

Clarify Oz/warpctrl CLI install command palette labels#13155
zachlloyd merged 1 commit into
masterfrom
factory/clarify-cli-install-labels

Conversation

@warp-dev-github-integration

@warp-dev-github-integration warp-dev-github-integration Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Description

Clarifies the macOS-only "Install/Uninstall Oz CLI command" command palette entries (and the Warp Control / warpctrl equivalents), which a teammate found confusing.

Background. The app bundle's Contents/Resources/bin — which holds the oz/warpctrl wrapper scripts — is automatically appended to PATH for shells Warp spawns (extra_path_entries() in app/src/terminal/local_tty/shell.rs, threaded through WARP_PATH_APPEND). So oz/warpctrl already work inside Warp without installing anything. The install actions only symlink them into /usr/local/bin (install_oz/install_warpctrl in app/src/workspace/cli_install.rs) so they're available outside Warp (Terminal.app, iTerm, VS Code's integrated terminal, SSH, scripts/cron, etc.). The old "Install … CLI command" label gave no hint of that distinction.

Changes

  • Relabel the four command palette entries:
    • "Install Oz CLI command" → "Install Oz CLI globally for use outside of Warp"
    • "Uninstall Oz CLI command" → "Undo global Oz CLI installation (oz will still work within Warp)"
    • "Install Warp Control CLI command" → "Install Warp Control CLI globally for use outside of Warp"
    • "Uninstall Warp Control CLI command" → "Undo global Warp Control CLI installation (warpctrl will still work within Warp)"
  • Align the install/uninstall success toasts with the same "globally / outside of Warp" framing (the old "you can now run … from the command line" wording was misleading, since it already works inside Warp).

warpctrl messaging + install logic review (requested)

Verified. The warpctrl install logic is correct and intentionally differs from Oz: Oz symlinks the shared binary directly (its subcommands live in the normal arg parser), whereas warpctrl symlinks a bundled wrapper that injects the hidden --warpctrl flag (which selects its separate parser). Both wrappers ship in Contents/Resources/bin, so both are auto-injected into Warp-spawned shells — meaning the same "global vs. in-Warp" framing applies. Only the user-facing messaging needed clarifying, which this PR does.

Testing

  • Copy-only change to macOS-gated UI strings (#[cfg(target_os = "macos")]); no logic changed, so no new automated test is warranted.

  • rustfmt --check passes on both edited files.

  • UI / computer-use verification not performed: these entries are macOS-only and this PR was prepared on a Linux runner, where the code is cfg-compiled out and the command palette entries can't be rendered. Worth a quick visual check on macOS during review.

  • I have manually tested my changes locally with ./script/run

Agent Mode

  • Warp Agent Mode - This PR was created via Warp's AI Agent Mode

CHANGELOG-IMPROVEMENT: Clearer command palette labels for installing/uninstalling the Oz and Warp Control CLIs (they now describe global, outside-Warp use vs. in-Warp use).

Slack thread: https://warpdev.slack.com/archives/C0BCE7AELJ2/p1782679562471409?thread_ts=1782679562.471409&cid=C0BCE7AELJ2

Co-Authored-By: Warp agent@warp.dev

The 'Install Oz CLI command' / 'Uninstall Oz CLI command' (and the
warpctrl equivalents) command palette entries were confusing: the
bundle's Contents/Resources/bin (containing the oz/warpctrl wrappers) is
already appended to PATH for shells Warp spawns (extra_path_entries), so
these commands work inside Warp without installing. The install action
only symlinks them into /usr/local/bin for use *outside* of Warp.

Relabel the four entries to make that explicit, and align the
install/uninstall success toasts with the same 'globally / outside of
Warp' framing.

Co-Authored-By: Warp <agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label Jun 28, 2026
@oz-for-oss

oz-for-oss Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

@warp-dev-github-integration[bot]

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@oz-for-oss oz-for-oss Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR clarifies macOS command palette labels and CLI install/uninstall success toasts for Oz and Warp Control, emphasizing that installation is global for use outside Warp. No spec context was available, and the security pass found no security-specific concerns.

Concerns

  • This is a user-facing copy change in the command palette and success toasts, but the PR does not include screenshots or a screen recording demonstrating the updated labels/toasts end to end. For this user-facing change, please include screenshots or a screen recording from macOS demonstrating it working end to end.

Verdict

Found: 0 critical, 0 important, 1 suggestions

Request changes

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@warp-dev-github-integration

Copy link
Copy Markdown
Contributor Author

Thanks for the review. The one suggestion is end-to-end macOS screenshots of the updated labels/toasts.

I can't capture those in this environment: the change only touches #[cfg(target_os = "macos")] code (the command palette entries in app/src/workspace/mod.rs and the success toasts in app/src/workspace/view.rs), and it was prepared on a Linux runner where that code is compiled out and the entries don't render — so Warp can't be driven to show them here, and there's no cross-platform way to produce a macOS screenshot from this runner.

The change is copy-only (label + toast strings; no logic change) and rustfmt --check passes. The rendered strings are best confirmed visually on macOS during human review — @zachlloyd is assigned for that.

Co-Authored-By: Warp agent@warp.dev

@zachlloyd zachlloyd enabled auto-merge (squash) June 28, 2026 21:27
@zachlloyd zachlloyd merged commit 185862d into master Jun 28, 2026
37 checks passed
@zachlloyd zachlloyd deleted the factory/clarify-cli-install-labels branch June 28, 2026 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants