https://addons.mozilla.org/en-US/firefox/addon/container-forcer/
A Firefox extension that forces container selection for new tabs. When you open a page in a non-containerized tab, it will prompt you to select a container to continue browsing in.
- Detects when you're browsing without a container
- Shows a user-friendly container selection interface
- Automatically reopens the current page in the selected container
- Displays container icons and colors for easy identification
- Doesn't interfere with already containerized tabs
- Clone this repository:
git clone https://github.com/ledongthuc/firefox-force-container.git
cd firefox-force-container
- Install the extension temporarily in Firefox:
- Open Firefox
- Navigate to
about:debugging
- Click "This Firefox" in the left sidebar
- Click "Load Temporary Add-on"
- Select any file in the extension directory
- Create a new version tag:
git tag -a v1.0.0 -m "Release version 1.0.0"
git push origin v1.0.0
- The GitHub Action will automatically:
- Build the extension
- Create a GitHub release
- Attach the built extension
- (Optional) Submit to Firefox Add-ons store
- bash
- zip
- Make the build script executable:
chmod +x build.sh
- Run the build script:
./build.sh
This will create a ZIP file at build/firefox-force-container.zip
that you can submit to the Firefox Add-ons store.
- Build the extension using either:
- The build script (
./build.sh
) - GitHub Actions (by creating a new tag)
- The build script (
- Go to Firefox Add-ons Developer Hub
- Click "Submit a New Add-on"
- Upload the generated ZIP file
- Follow the submission process
To enable automated submission to Firefox Add-ons:
- Get API credentials from Firefox Add-ons Developer Hub
- Add secrets to your GitHub repository:
AMO_JWT_ISSUER
: Your API keyAMO_JWT_SECRET
: Your API secret
- Enable the "Upload to Firefox Add-ons" step in
.github/workflows/release.yml
The extension consists of:
manifest.json
: Extension configurationbackground.js
: Background script that handles container operations and tab managementselect-container.html
: Container selection pageselect-container.js
: Container selection logicicons/
: Extension iconsbuild.sh
: Build script for packaging the extension.github/workflows/
: GitHub Actions workflow files
MIT License