Kaset supports user-installed WebKit-compatible browser extensions. No extensions are pre-installed, so you're in full control.
Open Settings (⌘,) and navigate to the Extensions tab.
- Click the + button in the Extensions tab header.
- Choose the root directory of a WebKit-compatible extension — the folder that contains
manifest.json. - Kaset reads the extension name from
manifest.jsonand adds it to the list. - Restart Kaset to load it.
Compatibility: Extensions must use the WebKit Web Extensions API. Standard Manifest V3 extensions (Chrome/Firefox) may work if they don't rely on browser-specific APIs. Extensions built specifically for Safari/WebKit are the best starting point.
Toggle the switch next to any extension. The change takes effect after a restart.
Click the trash icon next to any extension, then restart Kaset.
- Storage: The list is saved as JSON at
~/Library/Application Support/Kaset/extensions.json. - Imported files: Kaset copies each added extension into
~/Library/Application Support/Kaset/ManagedExtensions/and loads that local snapshot. - Security: Kaset may store a local security-scoped bookmark for the copied extension folder when WebKit needs sandbox-friendly access.
- Loading: At launch,
WebKitManagerloads all enabled extensions in order viaWKWebExtensionController, granting them all requested permissions.
- Extension not loading: Open Console.app, filter by subsystem
com.sertacozercan.Kasetand categoryExtensionsorWebKit. - Extension updates not appearing: Re-import the extension after changing the original source folder, since Kaset loads the copied snapshot in Application Support.
- Manifest not found: Ensure your extension directory contains a
manifest.jsonat its root.
See ADR 0014 for the full architectural decision record.