范围:Chrome Manifest V3 官方支持的全部顶层字段 + 关键嵌套字段;不是 本仓库项目配置清单。
基线:MV3 自 Chrome 88(2020-12)起可用 ;仅支持 manifest_version: 3。
资料来源:Chrome Extensions 官方 Manifest / What's New / API Reference(整理日期:2026-07-24)。
标注说明:
- 88 (MV3 基线):随 MV3 一起可用(或更早 MV2 时代已有、MV3 仍保留)
- 更早:该键在 MV1/MV2 时代就已存在,并非「新字段」
- 版本号以 Stable 可用 为准;个别字段曾长期「文档有、实现忽略」
0. 一眼看懂:最老 vs 最新
最老(平台根基,可追溯到早期扩展平台)
这些键在 Chrome 扩展早期就存在,MV3 仍保留(形态可能有变化):
| 字段 |
说明 |
manifest_version / name / version |
必填三件套(最老) |
description / icons / default_locale / short_name |
身份与商店展示 |
permissions / content_scripts / background / web_accessible_resources |
核心能力(MV3 语义大改) |
options_page / devtools_page / omnibox / commands |
早期 UI / 输入能力 |
update_url / homepage_url / key / incognito |
分发与行为 |
chrome_url_overrides / chrome_settings_overrides |
覆盖浏览器页面 / 设置 |
最新(MV3 落地之后才新增或真正生效)
按 Chrome 大版本由新到旧(仅列 Manifest 相关):
| Chrome |
年份约 |
Manifest / 嵌套字段 |
说明 |
| 130 |
2024 |
web_accessible_resources[].use_dynamic_url |
此前文档有、实现忽略;130 起真正生效 |
| 126 |
2024 |
trial_tokens |
Origin Trial / Deprecation Trial |
| 120 |
2023 |
权限 "userScripts"(配合 API,非独立顶层键形态) |
User Scripts API |
| 114 |
2023 |
side_panel |
侧边栏默认页 |
| 112 |
2023 |
ChromeOS file_handlers(实验→完善) |
文件类型处理 |
| 111 |
2023 |
content_scripts[].world |
静态声明 MAIN/ISOLATED |
| 109 |
2023 |
权限 "offscreen" |
Offscreen Document(无独立顶层键) |
| 102 |
2022 |
optional_host_permissions |
MV3 可选主机权限独立键 |
| 99 |
2022 |
content_scripts[].match_origin_as_fallback |
about/data/blob 等帧注入 |
| 95 |
2022 |
scripting.executeScript({ world }) |
API 侧 MAIN world(非 manifest 静态键) |
| 91 |
2021 |
background.type: "module" |
Service Worker ES Module |
| 88 |
2020 |
MV3 整套新形态字段 |
见下表「MV3 基线新形态」 |
MV3 基线即引入/改形态的字段(相对 MV2,Chrome 88):
background.service_worker(取代 scripts / page)
action(合并 browser_action + page_action)
host_permissions(从 permissions 拆出)
web_accessible_resources 改为 对象数组 (含 resources + matches / extension_ids)
content_security_policy 改为 对象 (extension_pages / sandbox)
declarative_net_request(配合 DNR,替代阻塞式 webRequest)
1. 必填字段
| 字段 |
类型 |
最早支持 |
最新相关变更 |
说明 |
manifest_version |
number |
88 (值必须为 3) |
现仅允许 3 |
MV2=2 已淘汰 |
name |
string |
更早 |
123:商店英文名长度统一上限 75 |
≤75 字符 |
version |
string |
更早 |
--- |
点分数字版本规则 |
2. Chrome Web Store 要求字段
| 字段 |
类型 |
最早支持 |
说明 |
description |
string |
更早 |
≤132 字符;商店与扩展管理页展示 |
icons |
object |
更早 |
建议 16 / 48 / 128 |
3. 可选顶层字段(官方全量)
按官方 Manifest file format 列出的 全部 可选键。
3.1 架构与脚本
| 字段 |
最早支持 |
最新子字段/变更 |
说明 |
background |
88(SW 形态) |
91 :type: "module";121:MV2 子键 scripts/page/persistent 改为警告而非报错 |
MV3 仅 service_worker + 可选 type |
content_scripts |
更早 |
见 §4 嵌套表 |
静态内容脚本 |
content_security_policy |
更早 (字符串);88(对象形态) |
102 :允许 wasm-unsafe-eval;103:Wasm 需该指令 |
MV3 为对象 |
sandbox |
更早 |
--- |
沙箱页,无扩展 API |
declarative_net_request |
88(随 MV3/DNR) |
后续多轮规则能力增强(见 DNR API) |
静态规则集声明 |
devtools_page |
更早 |
--- |
DevTools 扩展页 |
background 子字段:
| 子字段 |
最早支持 |
说明 |
service_worker |
88 |
单个 JS 路径 |
type |
91 |
仅 "module",启用静态 import |
3.2 UI 与用户交互
| 字段 |
最早支持 |
最新相关 |
说明 |
action |
88 |
127:action.openPopup 全面可用;130:onUserSettingsChanged |
工具栏图标/弹窗 |
side_panel |
114 |
116:sidePanel.open();140:getLayout() |
侧边栏默认 HTML |
options_page |
更早 |
--- |
独立选项页 |
options_ui |
更早 |
--- |
嵌入式选项(chrome://extensions) |
commands |
更早 |
103:快捷键变更即时生效 |
键盘快捷键 |
omnibox |
更早 ;MV3 API 完善约 102 |
--- |
地址栏关键字 |
chrome_url_overrides |
更早 |
138:新标签页 UI 变更影响体验 |
覆盖 NTP 等 |
chrome_settings_overrides |
更早 |
--- |
覆盖搜索引擎/主页等 |
side_panel 子字段:
| 子字段 |
最早支持 |
说明 |
default_path |
114 |
扩展内相对路径 HTML |
action 常见子字段(均随 action / 早期 browser_action):
| 子字段 |
说明 |
default_popup |
弹窗 HTML |
default_icon |
图标 |
default_title |
悬停标题 |
default_badge_* 等 |
通过 API 设置更多,不在此展开 |
3.3 权限与主机访问
| 字段 |
最早支持 |
说明 |
permissions |
更早 |
API 权限名列表(不含主机,MV3) |
optional_permissions |
更早 |
运行时请求的可选 API 权限 |
host_permissions |
88 |
MV3 独立主机权限 |
optional_host_permissions |
102 |
MV3 可选主机权限(MV2 曾塞在 optional_permissions) |
3.4 资源暴露与互联
| 字段 |
最早支持 |
最新子字段 |
说明 |
web_accessible_resources |
更早 (字符串数组);88(对象数组) |
130 :use_dynamic_url 真正生效 |
暴露给网页/其他扩展 |
externally_connectable |
更早 |
--- |
外部网页/扩展可消息连接 |
export / import |
更早 |
--- |
共享模块导出/导入 |
web_accessible_resources[] 子字段:
| 子字段 |
最早支持 |
说明 |
resources |
88(对象形态) |
资源路径 |
matches |
88 |
可访问的网页匹配 |
extension_ids |
88 |
可访问的其他扩展 ID |
use_dynamic_url |
130(此前忽略) |
会话级动态 ID,防指纹 |
3.5 身份、分发、兼容
| 字段 |
最早支持 |
说明 |
key |
更早 |
开发时固定扩展 ID |
update_url |
更早 |
自托管更新 XML/JSON |
homepage_url |
更早 |
主页 URL |
minimum_chrome_version |
更早 |
最低 Chrome 版本;低于则无法安装/不更新 |
version_name |
更早 |
展示用版本文案(如 1.0 beta) |
short_name |
更早 |
≤12 字符短名 |
default_locale |
更早 |
有 _locales 时必填 |
incognito |
更早 |
spanning / split / not_allowed |
oauth2 |
更早 |
OAuth 客户端配置 |
requirements |
更早 |
如 3D 等硬件要求 |
trial_tokens |
126 |
Origin / Deprecation Trial token 数组 |
3.6 存储与其它能力声明
| 字段 |
最早支持 |
说明 |
storage |
更早 |
managed storage 的 JSON Schema |
tts_engine |
更早 |
注册 TTS 引擎 |
mime_types_handler |
更早 |
MIME 处理(如 PDF) |
cross_origin_embedder_policy |
88+(COOP/COEP 配套) |
扩展页 COEP |
cross_origin_opener_policy |
88+ |
扩展页 COOP |
3.7 ChromeOS 专用(可选)
| 字段 |
最早支持(约) |
说明 |
file_browser_handlers |
更早(ChromeOS) |
文件浏览器处理器 |
file_handlers |
112~120 区间落地 |
按 MIME/扩展名打开文件 |
file_system_provider_capabilities |
更早(ChromeOS) |
虚拟文件系统能力 |
input_components |
更早(ChromeOS) |
IME 输入法组件 |
4. content_scripts[] 嵌套字段(全量)
| 子字段 |
必填 |
最早支持 |
说明 |
matches |
是 |
更早 |
URL 匹配模式 |
js / css |
其一 |
更早 |
注入资源 |
exclude_matches |
否 |
更早 |
排除匹配 |
include_globs / exclude_globs |
否 |
更早 |
Glob 二次过滤 |
run_at |
否 |
更早 |
document_start / end / idle |
all_frames |
否 |
更早 |
是否所有 frame |
match_about_blank |
否 |
更早 |
about:blank |
match_origin_as_fallback |
否 |
99 (Canary 起);动态注册文档标 119+ |
about/data/blob/filesystem 等 |
world |
否 |
111(manifest 静态) |
ISOLATED(默认)/ MAIN |
对比:通过 chrome.scripting.executeScript({ world }) 注入 MAIN 世界更早,约 Chrome 95 ;静态 manifest world 才是 111。
5. 与 Manifest 强相关、但写在 permissions 里的「新能力」
这些不是独立顶层键,但常被误当成「manifest 字段」;列出版本便于选型:
| 权限字符串 |
最早支持(约) |
对应能力 |
scripting |
88 |
程序化注入 |
declarativeNetRequest |
84+ / MV3 主力 |
声明式网络请求 |
declarativeNetRequestWithHostAccess |
96 |
需主机权限的 DNR |
declarativeNetRequestFeedback |
MV3 期 |
DNR 调试反馈 |
offscreen |
109 |
Offscreen Document |
sidePanel |
114 |
侧边栏 API |
userScripts |
120 |
用户脚本 API |
favicon |
104(MV3 新路径) |
Favicon API |
tabGroups |
89 左右(MV3) |
标签组 |
readingList |
较新(Chromium Reading List API) |
阅读清单 |
webAuthenticationProxy |
较新 |
WebAuthn 代理 |
storage(含 storage.session) |
storage 更早;session:102 |
会话存储 |
6. MV2 → MV3:被移除 / 改名(对照,避免混用)
| MV2 |
MV3 |
说明 |
browser_action / page_action |
action |
合并 |
background.scripts / page / persistent |
background.service_worker |
121 起误写仅警告 |
permissions 里的主机模式 |
host_permissions |
拆分 |
optional_permissions 里的主机 |
optional_host_permissions(102+) |
拆分 |
web_accessible_resources: string[] |
object[] |
必须带 matches/extension_ids |
content_security_policy: string |
object |
分上下文 |
webRequestBlocking(阻塞) |
declarativeNetRequest |
能力模型变更 |
7. 推荐:按功能设定 minimum_chrome_version
| 若你依赖... |
建议最低版本 |
| 仅 MV3 基线(SW + action + host_permissions) |
88 |
background.type: "module" |
91 |
executeScript({ func, args }) |
92 |
scripting 动态注册内容脚本 |
96 |
optional_host_permissions |
102 |
| Offscreen |
109 |
manifest content_scripts.world |
111 |
| Side Panel |
114 |
| User Scripts API |
120 |
trial_tokens |
126 |
use_dynamic_url |
130 |
{
"manifest_version": 3,
"minimum_chrome_version": "111"
}
8. 官方入口
9. 修订记录
| 日期 |
说明 |
| 2026-07-24 |
初版:按官方 MV3 全量顶层字段整理;标注最老/最新与关键嵌套字段 Chrome 版本。 |