🧩 Blackcap Chrome Extension
Audience: User, Developer, Deployment Administrator Related: Recipe Capture · Release And Privacy · Social Import
The Chrome Extension connects a signed-in user to Blackcap using a user-owned API Token. Its primary workflow captures and reviews recipe content from the current page; Quick Add provides URL-only import. It also supports social-source evidence capture and shopping-related workflows.
Package documentation
More information
- Chrome Extension Recipe Capture — Capture normal and social recipe evidence, review it, and submit it to Blackcap.
- Chrome Extension Shop With — Use supported retailer workflows with an organization Shopping List and the user’s signed-in browser session.
- Chrome Extension Release and Privacy — Package, publish, permission, privacy, and validation requirements for the extension.
Get Help in the Extension
The Extension includes a 🛟 Get Help launcher that opens the same compact popup-style overlay over every supported Extension surface, including Shop With. It uses the existing Blackcap Support Chat backend, and sends a registered surface key so troubleshooting and initial deterministic suggestions can distinguish Shop With, normal Add Recipe/Quick Add/Capture Page, Social Recipe, Settings, and Recipe Sharing. Suggested questions submit immediately, each response can provide a fresh temporarily collapsible suggestion set, and documentation links always open the public microwavepie.com/blackcap/documentation copy rather than an authenticated Blackcap /admin/documentation URL. Human escalation uses the normal reviewed Support Request workflow; it is never submitted merely by opening the escalation form.
No additional broad Chrome permission is required for Support Chat. Support context is deliberately limited to safe Extension/workflow metadata; cookies, site credentials, provider tokens, checkout/payment content, and unrelated DOM or browsing data are excluded. While a chat is active, Extension Get Help launchers show the same server-driven red attention dot concept used by Admin. Send Chat History is shown only after the chat is terminal so the user can email the completed transcript before closing the popup. A Support Case created from the Extension uses the same support-team email renderer as Admin, including the existing chat-bubble transcript when chat history is present.
The same centered Get Help overlay is used on Add Recipe and Shop With even though Shop With itself runs in Chrome's side panel. Suggested questions wrap inside the overlay rather than requiring horizontal scrolling. When the user chooses Create Support Case, the conversation controls temporarily yield space to a vertically scrollable review form with the submit/cancel actions kept reachable at the bottom. Resolved or escalated chats hide the active “Did that solve it?” controls and leave only completed-chat actions such as Send Chat History until the user closes Get Help.
Support Chat continuation is account scoped, not IP or browser scoped. Blackcap looks for a recent active session belonging to the authenticated user ID and organization ID. Extension requests first resolve the API token owner and the organization stored on that token. Separate Blackcap users therefore do not share Support Chats, while the same user/token used from more than one browser can intentionally resume the same active conversation.
Chrome toolbar popup lifetime
The normal Add Recipe surface is Chrome's action popup. Chrome closes an action popup whenever focus moves outside it, so Blackcap cannot force that exact popup window to stay open while the user switches tabs. If a future workflow requires a truly persistent Add Recipe surface, use a Chrome side panel or a dedicated extension-created window rather than attempting to keep the toolbar popup alive. Browser-side draft/workflow state may still be persisted so reopening the popup can restore the user's place.
Browser-backed regression testing
The optional System Admin regression group Browser / Chrome Extension Integration loads this unpacked Manifest V3 extension into one Playwright Chromium persistent context per regression run. Startup is considered successful only after the browser has a real chrome-extension:// service worker, its runtime ID/version can be queried, and an already-authenticated Blackcap page receives the normal content bridge.
The group first connects Blackcap through the Extension's real Options/Test & Save surface. Because Blackcap owns the Extension UI, the harness waits for explicit Options initialization and terminal connection-state markers and targets the exact Options element IDs rather than fuzzy text/label selectors. Because Chrome optional-host permission approval is browser-owned UI and is not reliably automatable in headless server Chromium, the harness loads an ephemeral copy of the exact Extension source whose manifest promotes only the active run's configured Blackcap origin to a required host permission. The checked-in production manifest is not changed or broadened. Options/Test & Save still performs the real API ping, token validation, settings persistence, active-organization resolution, and dynamic content-script registration.
The group then covers user-visible integration paths such as Shop With, Household/External List synchronization, recipe capture, social/video evidence capture, Get Help, and recovery of an already-open Blackcap tab after extension reload. Shop With uses an administrator-selected, environment-configured Extension provider and a real regression shopping list on regression Org A; when none is available the Shop With scenario is skipped. External Shopping List uses a run-scoped connector on that same org. Tests use the same production extension messages and UI surfaces rather than test-only browser-control endpoints. Run-scoped Blackcap fixtures replace external shopping/social accounts for deterministic coverage and disappear when the regression run is no longer active.
Chromium state is deliberately ephemeral. A temporary user-data directory is created for the group and deleted during teardown, live Playwright objects are never persisted, and a resumed Blackcap regression run starts a new extension/browser session. Failure screenshots and optional traces follow Regression History permissions/retention. See Regression Testing.