-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Add brightness-pilot extension #20100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
- Improvements and fixes for publishing process - Initial commit
Congratulations on your new Raycast extension! 🚀 You can expect an initial review within five business days. Once the PR is approved and merged, the extension will be available on our Store. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PR Summary
New Brightness Pilot extension added for controlling brightness levels across multiple connected monitors, featuring monitor-specific controls and support detection for different display types.
- Empty
brightness-cli
binary in assets folder is concerning as it's a critical component for monitor control functionality - Uses synchronous execution (
execSync
) insrc/utils/get-monitors.ts
which could block the main thread - Security concern: Executes an unbundled CLI tool from assets without proper validation or integrity checks
showToast
used for success/failure states instead of the recommendedshowFailureToast
from@raycast/utils
inMonitorListItem.tsx
- Race condition potential in
MonitorListItem.tsx
with async brightness updates
13 files reviewed, 1 comment
Edit PR Review Bot Settings | Greptile
Can you check the existing extension https://www.raycast.com/cali/brightness-control? It looks like we already have an extension for adjusting brightness. |
I checked the extension you mentioned, but its implementation differs. The one in the Store uses an AppleScript to “press” the brightness keys, whereas my proposed version uses a Swift-based CLI to set brightness levels directly—supporting both built-in (MacBook) and external displays. I wasn’t sure whether we should merge these into a single extension—especially given the guidance under “When you should consider creating a new extension instead of contributing to an existing one” in the Spotify Controls example (prepare-an-extension-for-store). This is my first Raycast extension, so I’m happy to hear any advice or best practices you might have :) |
Description
Screencast
Checklist
npm run build
and tested this distribution build in Raycastassets
folder are used by the extension itselfREADME
are placed outside of themetadata
folder