关于 wxt
面向 WXT 浏览器扩展项目的参考技能,帮助开发者处理配置、入口文件、测试和多浏览器构建等常见开发任务,并提示关键限制。
主要功能
- 01配置与清单指导
- 02入口文件与内容脚本
- 03存储和消息传递模式
- 04使用 WxtVitest 和 fakeBrowser 测试
- 05模块与多浏览器构建
适用场景
- 01实现 WXT 后台脚本
- 02使用前端框架构建扩展界面
- 03测试浏览器扩展行为
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ timeraa/ skills --skill wxt安装后在 Claude Code 中输入/wxt确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
GENERATION.mdreferences/config.mdcontent-scripts.mdentrypoints.mdfrontend-frameworks.mdmessaging.mdmodules.mdmulti-browser.mdpatterns.mdstorage.mdtesting.md详细介绍
WXT - 浏览器扩展框架
适用场景
适用于以下情况:
- 项目根目录中有
wxt.config.ts - 代码使用
defineBackground、defineContentScript、defineUnlistedScript package.json将wxt列为依赖项- 入口点目录包含扩展入口文件
- 代码从
#imports或wxt/*导入内容
快速参考
| 主题 | 参考资料 |
|---|---|
| 配置、清单、环境变量、TypeScript | references/config.md |
| 入口点(后台、HTML 页面、未列出脚本) | references/entrypoints.md |
| 内容脚本(UI、主世界、SPA) | references/content-scripts.md |
| 存储 API、defineItem、迁移、监听器 | references/storage.md |
| 消息传递(跨上下文通信) | references/messaging.md |
| 使用 WxtVitest 和 fakeBrowser 进行测试 | references/testing.md |
| WXT 模块(使用与创建) | references/modules.md |
| 多浏览器构建和运行时检测 | references/multi-browser.md |
| Vue、React、Svelte、Solid 配置 | references/frontend-frameworks.md |
| 常见模式和反模式 | references/patterns.md |
最常见模式
// entrypoints/background.ts
export default defineBackground({
main() {
// ALL runtime code must be inside main() - cannot be async
browser.runtime.onInstalled.addListener(() => {
console.log('Extension installed');
});
},
});
重要:main() 不能是 async。main() 之外的代码会在 Node.js 中于构建时运行。
评论
支持 Markdown