Repository navigation
Update kaset-control extension #32562
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
Merged
Merged
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
87bc98d
Update kaset-control extension
danieltsam ef26db3
chore: keep local tooling out of .gitignore
danieltsam e700942
fix: address Greptile review
danieltsam d689b26
fix(player): never list the playing track in recently played
danieltsam daeedd2
chore: remove tests from the extension and refresh screenshots
danieltsam d9c5d34
Update CHANGELOG.md and optimise images
raycastbot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,73 +1,51 @@ | ||
| # Kaset Raycast Extension | ||
| # Kaset Control | ||
|
|
||
| Control [Kaset](https://github.com/sozercan/kaset) - YouTube Music client for macOS - directly from Raycast. | ||
| Control [Kaset](https://github.com/sozercan/kaset) — the YouTube Music client for | ||
| macOS — from Raycast. | ||
|
|
||
| ## Features | ||
|
|
||
| - **Menu Bar Player** - Shows current track in macOS menu bar with full playback controls | ||
| - **Now Playing** - View current track with artwork, progress, and controls | ||
| - **Toggle Play/Pause** - Quick playback control | ||
| - **Next/Previous Track** - Skip tracks | ||
| - **Volume Control** - Set volume from 0-100% | ||
| - **Toggle Shuffle** - Enable/disable shuffle mode | ||
| - **Cycle Repeat** - Cycle through repeat modes (off → all → one) | ||
| - **Toggle Mute** - Mute/unmute audio | ||
| - **Like/Dislike** - Rate the current track | ||
| Kaset is a separate app: this extension drives it over AppleScript, so Kaset has | ||
| to be installed and running. | ||
|
|
||
| ## Requirements | ||
|
|
||
| - [Kaset](https://github.com/sozercan/kaset) with AppleScript support | ||
| - macOS 14.0 or later | ||
| - **Kaset 0.14.2 or newer.** The queue commands and the merged YouTube Music and | ||
| YouTube search need 0.14.2 or later. | ||
| - macOS. | ||
|
|
||
| ## Commands | ||
|
|
||
| | Command | Description | | ||
| |---------|-------------| | ||
| | Show Menu Bar | Show current track in menu bar with controls | | ||
| | Now Playing | View current track with artwork and controls | | ||
| | Toggle Play/Pause | Play or pause | | ||
| | Next Track | Skip to next | | ||
| | Previous Track | Go back | | ||
| | Set Volume | Choose volume level | | ||
| | Toggle Shuffle | Toggle shuffle mode | | ||
| | Cycle Repeat | Cycle repeat modes | | ||
| | Toggle Mute | Mute/unmute | | ||
| | Like Track | Like or unlike current track | | ||
| | Dislike Track | Dislike or remove dislike | | ||
|
|
||
| ## Menu Bar | ||
|
|
||
| The menu bar player shows the current track and provides quick access to all controls: | ||
|
|
||
| - **Show**: Run "Show Menu Bar" from Raycast | ||
| - **Hide**: Click "Hide Menu Bar" in the menu bar dropdown | ||
|
|
||
| ### Settings | ||
|
|
||
| Configure the menu bar display style in Raycast extension preferences: | ||
|
|
||
| - **Icon only** - Just the music icon | ||
| - **Short** - Track name truncated to 20 characters | ||
| - **Medium** - Track name truncated to 35 characters | ||
| - **Long** - Track name truncated to 50 characters | ||
|
|
||
| ## Development | ||
|
|
||
| ```bash | ||
| # Install dependencies | ||
| npm install | ||
|
|
||
| # Run in development mode | ||
| npm run dev | ||
|
|
||
| # Build for production | ||
| npm run build | ||
|
|
||
| # Lint | ||
| npm run lint | ||
| npm run fix-lint | ||
| ``` | ||
|
|
||
| ## License | ||
|
|
||
| MIT | ||
| | Command | What it does | | ||
| | --- | --- | | ||
| | **Now Playing** | The current track with live progress, the queue, and recently played. Full playback controls, queue actions, and rating. | | ||
| | **Play Song** | Search YouTube Music and YouTube together and play, queue, or play next. | | ||
| | **Toggle Play/Pause**, **Next Track**, **Previous Track** | Playback control, no window. | | ||
| | **Set Volume** | Pick a volume level. | | ||
| | **Toggle Shuffle**, **Cycle Repeat**, **Toggle Mute** | Playback modes. | | ||
| | **Like Track**, **Dislike Track** | Rate the current track. | | ||
| | **Show Menu Bar** | Keep the current track and artwork in the menu bar with controls. | | ||
| | **Record Player State** | Records history in the background. See below. | | ||
|
|
||
| ## Preferences | ||
|
|
||
| - **Play Song Source** — whether Play Song searches YouTube Music, YouTube, or | ||
| both (the default). You can also narrow this inside the search itself. | ||
| - **Menu Bar Style** / **Menu Bar Icon** / **Hide When Idle** — control the menu | ||
| bar item. | ||
|
|
||
| ## Recently Played | ||
|
|
||
| History is recorded without the menu bar. Open **Record Player State** once, or | ||
| turn on its background refresh in Raycast's extension settings, so it can keep | ||
| recording while the Now Playing window is closed. | ||
|
|
||
| A track is added to Recently Played only once it has stopped playing, so the | ||
| track you are listening to never appears in both Now Playing and Recently | ||
| Played. | ||
|
|
||
| ## Notes | ||
|
|
||
| - **Seeking is display-only.** Kaset exposes no AppleScript command to seek, so | ||
| the progress ring tracks playback but cannot scrub. | ||
| - **Album** is resolved by searching YouTube Music, because Kaset's player | ||
| payload does not carry album names. This costs one search per track change. | ||
| - The menu bar item is optional and off unless you enable it. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Oops, something went wrong.
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.
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.
The new release heading replaces
{PR_MERGE_DATE}with a fixed date. Repository rules require new changelog entries to keep that placeholder so publication can set the actual merge date. Restore{PR_MERGE_DATE}before merging.Rule Used: What: Changelog entries must use
{PR_MERGE_DATE}placeholder in titles, be placed at the top of the file, and maintain descending version order. Why: Standardized placeholders and consistent ordering ensure changelogs are maintainable and merge da... (source)Prompt To Fix With AI
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!