Knockoff 是一个用于 Amazon(亚马逊)购物页面的浏览器扩展,主要功能是在搜索结果和商品详情页中识别、隐藏、淡化或标记疑似“伪品牌”“贴牌垃圾品牌”商品,帮助用户优先购买真实、成熟、有信誉的品牌。项目以 Chrome 扩展为主,同时提供 Safari 的 Xcode 包装项目。核心逻辑在本地 content script 中运行,不依赖购物路径上的服务器请求,强调隐私和低延迟。
适用领域
浏览器扩展 / 电商购物辅助 / Amazon 商品过滤 / 品牌识别 / 反垃圾商品 / 前端 JavaScript / Chrome Extension Manifest V3 / Safari Extension / Cloudflare Worker
配置难度
中等。对于普通用户,安装和使用难度较低;对于开发者,项目没有复杂构建链,主要是 JavaScript、Manifest V3、DOM 操作和规则判断,入门相对容易。但如果要长期维护识别准确率、适配 Amazon 多站点页面结构、减少误判并运营上报系统,则需要较强的产品、数据和规则治理能力。
商业价值
该项目的商业价值主要体现在提升 Amazon 购物体验、减少低质商品干扰和增强用户对品牌可信度的判断。对消费者工具、浏览器扩展、购物返利/导购平台、电商品控分析团队都有参考价值。它也可以作为品牌治理、商品质量筛选、规则引擎和本地隐私优先扩展的原型。不过直接商业化需要重点评估许可证、品牌误伤、地域或国别偏见、Amazon 平台政策以及用户数据合规问题。
01
技术亮点
- 无构建步骤,主要是原生 JavaScript,适合直接加载和二次开发。
- 核心检测逻辑在本地运行,不需要用户账号,不在购物路径上进行服务器往返请求。
- 规则链清晰:用户白名单、用户黑名单、伪品牌种子列表、中国成熟品牌列表、已知品牌列表、名称启发式检测。
- 支持大约 5000 个成熟品牌列表,并结合社区 AmazonBrandFilterList。
- 提供多种过滤动作:隐藏、淡化、打标签,兼顾强过滤和用户可控性。
- 每个标签可点击,用户可以信任品牌、屏蔽品牌、临时显示商品或上报误判。
- 产品详情页只显示 verdict chip,不会强制隐藏整个页面,降低破坏浏览体验的风险。
- 检测规则 src/detector.js 可读性较强,适合贡献者调参。
- 项目覆盖 Chrome 和 Safari,具备跨浏览器扩展潜力。
- README 对局限性说明较诚实,包括非英语市场、混合大小写伪品牌、特殊商品卡片布局等问题。
02
目标用户
- 经常在 Amazon 购物、希望减少低质贴牌商品干扰的消费者
- 希望购买真实品牌、成熟品牌而非随机商标品牌的用户
- 关注购物体验和商品可信度的浏览器扩展用户
- 想研究 Chrome 扩展内容脚本、DOM 扫描和本地规则识别的开发者
- 希望维护品牌黑白名单、改进识别规则的开源贡献者
- 电商风控、商品质量分析、品牌治理相关团队
03
配置要求
- Chrome 浏览器需要支持 Manifest V3 扩展。
- 开发模式安装需要在 chrome://extensions 中开启 Developer mode。
- Safari 版本需要支持 Safari Web Extension,并需要 macOS + Xcode 环境。
- 扩展可配置过滤级别:Relaxed、Standard、Strict。
- 可配置处理方式:隐藏、淡化、仅打标签。
- 支持用户维护 allowlist,加入后品牌永远不会被过滤。
- 支持用户维护 blocklist,加入后品牌总是会被过滤。
- 可选择是否将已知中国品牌作为过滤对象,README 中提到 established Chinese-owned brands 是可切换策略。
- 误判上报功能如果没有配置 endpoint,会退化为打开预填 GitHub issue。
- 如果部署自己的误判上报接口,需要 Cloudflare Worker 和 D1,相关代码位于 report-worker/。
04
适用场景
- 在 Amazon 搜索结果页自动隐藏疑似伪品牌商品
- 将可疑商品淡化显示,用户悬停后可恢复查看
- 给商品添加品牌可信度标签,而不是直接隐藏
- 在商品详情页显示品牌判断结果,但不阻止用户浏览页面
- 用户自定义 allowlist 和 blocklist,手动信任或屏蔽某个品牌
- 根据过滤级别选择宽松、标准或严格模式
- 上报误判结果,用于改进品牌列表和检测规则
- 研究如何基于品牌名称特征进行启发式识别
- 将项目作为 Chrome MV3 扩展开发范例
05
部署与配置
- 普通用户可直接从 Chrome Web Store 安装:访问项目 README 中的 Add to Chrome 链接。
- 开发者本地调试:克隆 GitHub 仓库到本地。
- 打开 Chrome 浏览器并访问 chrome://extensions。
- 右上角开启 Developer mode(开发者模式)。
- 点击 Load unpacked(加载已解压的扩展程序)。
- 选择该仓库根目录,即可作为未打包扩展运行。
- Safari 本地调试:打开 safari/Knockoff/Knockoff.xcodeproj。
- 在 Xcode 中运行 Knockoff scheme。
- 进入 Safari → Settings → Extensions 启用 Knockoff。
- 如果是未签名本地构建,需要先在 Safari 的 Develop 菜单中允许 unsigned extensions。
- 修改扩展文件后,如需同步到 Safari 项目,运行 scripts/sync-safari.sh。
06
风险与注意事项
- 品牌误判风险较高:启发式规则可能将新兴品牌、小众品牌或非英语品牌误判为可疑。
- 对中文开发者或中国品牌相关业务较敏感:项目包含对 established Chinese-owned brands 的特殊列表和可切换策略,若用于商业场景需要谨慎处理偏见和合规问题。
- README 中称许可证为 FSL-1.1-MIT,但仓库元数据为 NOASSERTION,商业使用前应人工核验 LICENSE 文件。
- 规则主要针对英语品牌名称,非英语 Amazon 站点效果可能不稳定。
- 不做卖家国家或公司背景查询,因此无法从根本上验证商品真实来源。
- Amazon 页面结构经常变化,DOM 选择器可能失效,需要持续维护 TILE_SELECTORS 等扫描逻辑。
- Carousels 和部分特殊商品卡片布局尚未完全支持。
- 依赖品牌列表质量,列表老化或社区数据错误会影响体验。
- 如果启用误判上报端点,需要注意数据保护、速率限制和后端安全。
- Chrome Web Store 政策变化或 Amazon 页面反爬/反扩展策略可能影响扩展可用性。
2026-07-13
第2名
新收录 · github_search
2026-07-12
第2名
新收录 · github_search
2026-07-11
第3名
新收录 · github_search
2026-07-10
第4名
新收录 · github_search
2026-07-09
第5名
新收录 · github_search
2026-07-08
第18名
新收录 · github_search