Chrome extension (MV3) that lets developers and QA add custom HTTP request headers on specific websites — without the DevTools ritual.
- Set headers per site (
https://example.comor*.example.com) - Toggle rules on/off globally or per site
- Headers apply via declarativeNetRequest (reliable, non-blocking)
- Docker and Docker Compose
- Chrome on the host (for manual smoke only — extension runs in host browser)
All build, test, and lint commands run inside Docker. No local Node.js required.
make setupmake check # lint + typecheck + test
make build # production bundle → dist/
make dev # watch rebuild (foreground)
make test
make lint
make shell # interactive container shellAfter code changes: rebuild (or keep make dev running) and click Reload on the extension card in chrome://extensions.
make build- Open
chrome://extensions - Enable Developer mode
- Load unpacked → select the
dist/folder - Open Manage headers from the popup, add a rule for
https://httpbin.org - Visit httpbin.org/headers and confirm your header appears
| What | Where |
|---|---|
| Node, npm, dependencies | Docker volume node_modules (not on host) |
| Source code | Bind-mounted from host (edit locally) |
Build output dist/ |
Written to host (Chrome loads unpacked from here) |
| Chrome / manual QA | Host browser only |
- Agent context: add_header_CONTEXT.md
- Agent routing: AGENTS.md
- Docker details: docs/engineering/docker.md
- Status & roadmap: docs/project/
In scope: per-origin header rules, popup + options UI, local storage, DNR apply.
Out of scope for now: cloud sync, Firefox/Safari, full API client, backend.