Use an Extension in One Profile Only
Separate installation, default scope, per-profile overrides, and the local device switch so an extension starts only in the browser profiles that need it.
Updated Sep 9, 2026The “Scope” setting on a MaskPilot extension’s detail page defines its default loading rule: all profiles, profiles matching selected tags, or disabled by default. The profile editor then stores enable or disable overrides that differ from that default for one profile.
A local extension also has an enabled state on the current device. Keeping the default rule, profile override, and device switch separate lets you temporarily disable an extension without losing its scope and avoids deleting the local copy merely to remove it from one profile.
Load an extension in one profile
- Install a store extension or import a trusted local Manifest V3 extension from the Extensions page.
- Open that extension’s detail page, set Scope to “Disabled by default,” and save.
- Fully close the browser profile you are going to edit.
- Edit the target profile and expand Extensions and notes.
- Under Extensions loaded at startup, change the extension from “Inherit default” to “Enable,” then save.
- Relaunch the target profile and verify the extension icon, required permissions, and core behavior.
- Launch a test profile that still inherits the default and confirm that the extension is not loaded there.
Scope and profile overrides are evaluated when a profile starts. Saving while the profile is running does not remove an extension already loaded in that process. Fully close and relaunch the profile.
Installation, scope, profile overrides, and the device switch
- Install a store extension: adds it to the MaskPilot account’s installed library and saves its initial scope.
- Set its scope: chooses All profiles, Profile tags, or Disabled by default as the inherited rule.
- Set a profile override: chooses Inherit default, Enable, or Disable in the profile editor and affects only that profile.
- Disable a local extension: uses a device-level switch. New launches stop loading it, while scope and profile overrides remain. Re-enabling restores the original rules.
- Delete a local extension: removes the local copy and clears its scope and profile overrides on the current device.
- Remove a store extension: removes it from the installed library and stops profiles matched by its default rule or overrides from loading it.
For a temporary compatibility investigation, first add a Disable override in a test profile or use the local extension’s device switch. Do not immediately delete the extension or manually remove its files.
Why the extension appears in another profile
Common reasons include:
- The extension’s scope is All profiles.
- Its scope uses Profile tags and the profile has at least one matching tag.
- The profile stores an explicit Enable override.
- The profile was copied and inherited tags or profile overrides.
- The rule changed, but the running browser was refreshed instead of fully closed and relaunched.
- A local extension was re-enabled, restoring its preserved scope and profile overrides.
To keep a copy free of those extensions, add a Disable override before its first launch or change the extension’s default scope. A profile received through a one-time share does not receive the sender’s extension bindings. See share a profile configuration copy for that boundary.
Why a profile must close before a local extension is disabled
A running profile may still be using the extension files. MaskPilot requires profiles using that local extension to close before its device-level switch changes, preventing the running browser and local state from disagreeing.
Disabling affects future launches only. It does not delete the local package or clear scope and profile overrides. After re-enabling, fully relaunch the profiles that need it. If the extension is missing on another device, remember that local extensions and their rules remain on the device where they were imported. See import and manage local browser extensions.
Assign extensions to the smallest necessary scope
Extensions may receive access to websites, cookies, the clipboard, or browser settings. Assign an extension only to profiles that require it, and review permission changes after an update. Use Disabled by default plus profile overrides when only a few profiles need it, Profile tags for one defined group, and All profiles only when every profile genuinely needs it. See Organize Browser Profiles with Tags for tag creation, bulk assignment, and deletion effects.
For an important workflow:
- Add an Enable override to a test profile first.
- Verify the target website’s sign-in, submission, and sign-out flow.
- Confirm that the extension version is compatible with the browser version.
- Set the production scope only after its permissions match its purpose.
If an extension stops loading after a browser update, continue with what to do when a browser update disables an extension.
Before contacting support
Record the extension name and version, whether it comes from the store or a local import, its current scope, matching tags, profile overrides, whether the local extension is enabled, the browser version, the full relaunch time, and the original message. Redact website accounts, cookies, tokens, and business data shown by the extension. Do not send an untrusted package or one containing confidential source code.
Chrome’s managed-profile documentation treats extensions and other browser data as part of a profile boundary. The Chrome extension privacy guidance recommends requesting only the permissions needed for functionality. Narrowing an extension’s profile scope does not replace a permission review, but it reduces exposure to unrelated profiles.