实战

用 Claude Code 开发 Chrome 扩展:Manifest V3 + AI 助手从零到发布

Claude Code 开发 Chrome 扩展完整实战:八步流程(项目规划/结构初始化/manifest.json/Service Worker/Popup+ContentScript/构建测试/MV3 坑点排查),含时效对比和三大关键经验。

2026/3/143分钟 阅读ClaudeEagle

Chrome 扩展 Manifest V3 门槛不低。有了 Claude Code,3 小时完成传统 2-4 天的工作。

项目目标

一个网页阅读 AI 助手 Chrome 扩展:

  • 点击扩展图标显示当前页面 AI 摘要
  • 选中文字右键菜单 AI 解释
  • 快捷键 Ctrl+Shift+S 触发摘要

技术栈:Manifest V3 + TypeScript + Claude API

Step 1:规划项目结构

bash
mkdir chrome-reader && cd chrome-reader
claude

输入任务(用英文避免特殊字符问题):

I want to build a Chrome Extension with MV3. Features: 1. Popup shows AI summary of current page 2. Right-click context menu AI Explain on selected text 3. Keyboard shortcut Ctrl+Shift+S triggers summary Plan the project structure and explain MV3 constraints.

Step 2:初始化项目

Create project structure: chrome-reader/ manifest.json src/ background.ts (Service Worker) content.ts (Content Script) popup/popup.html + popup.ts icons/icon128.png tsconfig.json Install: typescript, @types/chrome Configure tsconfig.json output to dist/

Step 3:实现 manifest.json

Generate manifest.json: - Name: AI Reader Assistant, Version 1.0.0, MV3 - Permissions: activeTab, contextMenus, storage, scripting - host_permissions: api.anthropic.com - Background Service Worker: dist/background.js - Content Script injected to all pages - Command Ctrl+Shift+S triggers summarize

Step 4:实现 background.ts

Implement background.ts: 1. Register context menu AI Explain on install 2. On context menu click: call Claude API (claude-haiku-3-5), show result via Content Script 3. On shortcut: get page body, call API for summary, show via Content Script 4. Read API Key from chrome.storage.sync Use fetch() not SDK. API calls in Service Worker only.

Step 5:实现 Popup 和 Content Script

Popup: - API Key input (save to chrome.storage.sync) - Summarize button - Result area with loading state Content Script: - Listen for show_result message from background - Show floating card at bottom-right - Use Shadow DOM to isolate styles

Step 6:构建和测试

bash
npm run build  # tsc + copy assets to dist/

加载测试:chrome://extensions/ -> 开发者模式 -> 加载已解压的扩展,选 dist/

Step 7:排查 MV3 常见坑

Check for MV3 issues: 1. Service Worker cannot use XMLHttpRequest (use fetch) 2. Service Worker cannot access DOM 3. CSP allows external API calls 4. host_permissions correctly declared for api.anthropic.com 5. Cross-origin requests in Service Worker not Content Script

时效对比

步骤传统方式Claude Code
规划和结构2-3 小时15 分钟
manifest.json1-2 小时(踩坑)5 分钟
核心功能实现1-2 天1-2 小时
调试和修复半天30 分钟
总计2-4 天~3 小时

三个关键经验

1. 提前声明 MV3 限制:告诉 Claude use Manifest V3 be careful of all limitations,帮你避开 Service Worker 坑。

2. 贴完整错误信息:Service Worker 错误在 chrome://extensions/ 查,Content Script 错误在页面 DevTools 里看。

3. 权限最小化:Chrome Web Store 审核检查权限最小化,让 Claude 帮你删除不必要的权限。


来源:Anthropic 官方文档 + Chrome Extensions Developer Guide

相关文章推荐

实战Claude Code + NestJS 实战:用 AI 构建企业级 TypeScript 后端服务Claude Code 与 NestJS 框架深度协作实战:模块化架构设计(Module/Controller/Service/Provider)、让 Claude 生成符合 NestJS 惯例的 CRUD 模块、依赖注入系统的 AI 辅助使用、Guards 认证守卫(JWT/Role-based)、Interceptors 全局日志与请求变换、Pipes 数据验证(class-validator)、Exception Filters 统一异常处理、TypeORM 集成与数据库迁移、Swagger 文档自动生成,以及 NestJS 微服务(Microservices)架构入门。2026/3/21实战Claude Code 写 React 组件:从需求描述到单元测试的完整工作流Claude Code 开发 React 组件完整工作流:需求转组件设计、TypeScript Props 定义、Hooks 实现、Tailwind 样式、React Testing Library 测试、Storybook 文档,以及复杂组件(表格/表单/弹窗)的高效开发模式。2026/3/15实战Claude Code + Next.js 15 全栈开发实战:从零搭建现代 Web 应用Claude Code 与 Next.js 15 结合开发完整教程:App Router 结构生成、Server/Client Components、API Routes、Prisma 数据库集成、Tailwind CSS UI、NextAuth 认证、Vercel 部署,以及 Claude Code 加速 Next.js 开发的 10 个核心工作流。2026/3/15实战Claude Code 命令行工具开发实战:用 AI 快速构建专业 CLI 工具Claude Code 辅助命令行工具(CLI)开发的完整实战指南:Python Click/Typer、Go Cobra、Rust Clap 技术栈选型、用 Claude Code 生成完整 CLI 项目结构(参数解析/子命令/全局选项)、交互式提示和彩色输出、配置文件管理、Shell 自动补全生成、跨平台打包(PyInstaller/goreleaser),以及发布到 PyPI/npm/Homebrew 的完整流程。2026/3/26实战Claude Code Vue 3 实战完全指南:Composition API 开发到企业级前端工程化Claude Code 辅助 Vue 3 开发的完整实战指南:Composition API 组件生成(setup/ref/computed)、Pinia 状态管理代码生成、Vue Router 4 路由配置、TypeScript 类型定义生成(Props/Emits)、Composables 抽象、Vitest 单元测试生成、性能优化(虚拟滚动/v-memo),以及 Options API 迁移和响应式丢失问题排查的 Prompt 模板。2026/3/26实战Claude Code Django 实战完全指南:从模型设计到 REST API 开发全流程Claude Code 辅助 Django 开发的完整实战指南:用 Claude Code 生成 Django 项目结构和 Models(含迁移文件)、Django REST Framework(DRF)API 开发(Serializer/ViewSet/Router)、用户认证系统(JWT/Session/第三方登录)、Django ORM 查询优化(select_related/prefetch_related/annotate)、异步任务(Celery + Redis)、测试用例生成(pytest-django)、Docker 化部署,以及在现有 Django 项目中快速定位和修复 Bug 的 Prompt 技巧。2026/3/26