Chrome Manifest V3 extension that intercepts personal data and substitutes it with user-defined replacements before sending to Claude.ai. Hooks fetch() in the page's main world to catch API requests, with bidirectional substitution (real→fake on send, fake→real on display via reveal mode). Includes popup UI with mapping management, live test/diff view, activity log with badge count, options page with import/export, and Shadow DOM traversal for Claude.ai compatibility. https://claude.ai/code/session_01Dvgwe7XMoSxnWXkih8p1Cw
48 lines
1.1 KiB
JSON
48 lines
1.1 KiB
JSON
{
|
|
"manifest_version": 3,
|
|
"name": "Silent Send",
|
|
"version": "0.1.0",
|
|
"description": "Intercepts personal info and substitutes it with user-defined replacements before sending to AI services.",
|
|
"permissions": [
|
|
"storage",
|
|
"activeTab",
|
|
"scripting"
|
|
],
|
|
"host_permissions": [
|
|
"https://claude.ai/*"
|
|
],
|
|
"background": {
|
|
"service_worker": "src/background/service-worker.js",
|
|
"type": "module"
|
|
},
|
|
"content_scripts": [
|
|
{
|
|
"matches": ["https://claude.ai/*"],
|
|
"js": ["src/content/injector.js"],
|
|
"css": ["src/content/content.css"],
|
|
"run_at": "document_start",
|
|
"all_frames": true
|
|
}
|
|
],
|
|
"action": {
|
|
"default_popup": "src/popup/popup.html",
|
|
"default_icon": {
|
|
"16": "icons/icon16.svg",
|
|
"48": "icons/icon48.svg",
|
|
"128": "icons/icon128.svg"
|
|
}
|
|
},
|
|
"options_page": "src/options/options.html",
|
|
"icons": {
|
|
"16": "icons/icon16.svg",
|
|
"48": "icons/icon48.svg",
|
|
"128": "icons/icon128.svg"
|
|
},
|
|
"web_accessible_resources": [
|
|
{
|
|
"resources": ["src/content/content.js"],
|
|
"matches": ["https://claude.ai/*"]
|
|
}
|
|
]
|
|
}
|