firefox-proxy-demo.mp4
Reconstruction of the Raycast Companion browser extension for learning purposes. TypeScript sources mirror the original Parcel bundles while keeping the runtime behavior intact.
This project provides:
- π Browser Extension: Reconstructed Raycast Companion extension for Chrome and Firefox
- π WebSocket Proxy: Server that enables Firefox to communicate with Raycast (required for Firefox due to origin restrictions)
- π¦ Multiple Installation Options: Install scripts, Homebrew formula, and pre-built binaries for all platforms
-
Clone and build:
git clone https://github.com/Yukaii/raycast-context-bridge.git cd raycast-context-bridge npm install && npm run build
-
Load
dist/chromeas an unpacked extension in Chrome
-
Install the proxy server (required):
curl -fsSL https://raw.githubusercontent.com/Yukaii/raycast-context-bridge/main/scripts/install.sh | bash -
Build and load the extension:
npm install && npm run build # Load dist/firefox in Firefox (or run npm run firefox:zip)
-
Start the proxy:
raycast-proxy
-
Install dependencies:
npm install
-
Build the extension:
npm run build
-
Load the extension in your browser:
- Chrome: Load
dist/chromeas an unpacked extension - Firefox: Load
dist/firefoxor create a ZIP withnpm run firefox:zip(outputs todist/firefox-artifacts/raycast-companion-firefox.zip)
- Chrome: Load
- In
about:config, setxpinstall.signatures.requiredtofalseto allow unsigned add-ons - In
about:addons, use the gear menu β "Install Add-on From Fileβ¦" (or drag the ZIP onto the page) - Important: Firefox requires the proxy server (see below) due to origin restrictions
Raycast currently rejects moz-extension:// origins, so the Firefox extension requires the proxy workaround. See the Firefox guide for details.
The raycast-proxy is a WebSocket proxy server that enables the Firefox extension to communicate with Raycast by forwarding connections with the correct origin header.
Choose one of the following installation methods:
Works on macOS, Linux, and Windows. Automatically detects your platform and installs the latest release:
curl -fsSL https://raw.githubusercontent.com/Yukaii/raycast-context-bridge/main/scripts/install.sh | bashTap this repository with an explicit remote (the repo name isn't homebrew-*), then install:
# Tap with custom remote
brew tap Yukaii/raycast-context-bridge https://github.com/Yukaii/raycast-context-bridge
# Install
brew install Yukaii/raycast-context-bridge/raycast-proxy
# Start the proxy
raycast-proxy
# Or run as a background service
brew services start raycast-proxy- Download the binary for your platform from the releases page
- Make it executable:
chmod +x raycast-proxy-* - Run it:
./raycast-proxy-*
Available platforms:
- macOS (Intel & Apple Silicon)
- Linux (x64 & ARM64)
- Windows (x64 & ARM64)
cd proxy
go build -o raycast-proxy ./cmd/raycast-proxy
./raycast-proxyConfigure the proxy using environment variables or command-line flags:
# Using flags
raycast-proxy --listen-port 9999
# Using environment variables
RAYCAST_PROXY_PORT=9999 raycast-proxy| Environment Variable | Flag | Default | Description |
|---|---|---|---|
RAYCAST_PROXY_HOST |
--listen-host |
127.0.0.1 |
Host to listen on |
RAYCAST_PROXY_PORT |
--listen-port |
8787 |
Port to listen on |
RAYCAST_PROXY_TARGET_HOST |
--target-host |
127.0.0.1 |
Raycast host to connect to |
RAYCAST_PROXY_FORWARD_ORIGIN |
--forward-origin |
chrome-extension://raycast-proxy |
Origin header forwarded to Raycast |
π Complete Installation Guide - Detailed instructions for all platforms, service setup, and troubleshooting
π¦ Homebrew Guide - Homebrew-specific documentation and tips
- π Proxy Installation Guide - Complete proxy installation instructions for all platforms
- πΊ Homebrew Guide - Homebrew-specific documentation and tips
- π¦ Firefox Setup - Firefox behavior, origin limitation, and proxy workaround
- π§ Project Structure - Reconstruction notes and project structure
See LICENSE for terms; Raycast Technologies Ltd. retains all rights to the original product and assets.