howoii/smartbookmark/chrome-extension-dev
Claude Code and agent skill by howoii/smartbookmark
Trust tier 3
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
Chrome extension development standards using Manifest V3. Use when building, modifying, or reviewing Chrome extensions, browser extensions, popup pages, content scripts, background service workers, or manifest.json files.
Install
npx vskill@latest install howoii/smartbookmark/chrome-extension-devSKILL.md
Chrome Extension Development
这个 skill 只放“扩展开发时额外需要的工作流和项目约束”,不重复通用 clean code 或验证规则。
Use This Skill For
- 修改
manifest.json - 调整 background / popup / quickSearch / settings / content script 行为
- 新增或修改 Chrome 扩展权限、消息通信、存储、国际化、主题或 UI 交互
Task Workflow
- 先阅读
docs/architecture/PROJECT_ARCHITECTURE.md,确认本项目的运行时、存储层和同步链路。 - 再识别改动落在哪个运行时:
- background
- popup / quickSearch / settings
- content script
- 画清楚本次改动涉及的状态来源、事件入口和消息链路。
- 再检查是否会影响:
- 权限
- 生命周期
- i18n
- 主题变量
- 现有交互回归
Runtime-Specific Checklist
Background / Service Worker
- 不依赖常驻内存。
- 跨请求状态要可恢复。
- 设计消息和存储时优先考虑生命周期中断后的恢复路径。
Popup / QuickSearch / Settings
- 关注键盘事件、弹窗层级、编辑模式、搜索模式之间的优先级。
- 任何新增交互都要评估是否会和现有全局快捷键或
Escape行为冲突。 - UI 文案变化要同步 i18n。
Content Script
- 遵循最小权限原则。
- 避免把重逻辑塞在页面上下文里。
- 与 background 的交互要显式,不要假设共享状态。
Project-Specific Guardrails
Architecture First
- 涉及以下主题时,优先以
docs/architecture/PROJECT_ARCHITECTURE.md为入口再看代码: - 书签聚合
background消息处理- Chrome 书签同步
- WebDAV / cloud 同步
- 本地存储与设置存储分层
Bookmark Data Sanitization
- 书签对象有两类清洗:
sanitizeBookmarkForStorage:仅删除纯运行时字段sanitizeBookmarkForExport:删除所有_前缀字段- 新增
_字段时,要先确认它属于运行时字段还是存储字段,再同步检查这两个清洗入口。
i18n
- 新增用户可见文案时同步更新
_locales/zh_CN/messages.json和_locales/en/messages.json。 - 优先复用已有 key 命名风格,不要引入单次使用的随意命名。
Theme / UI
- 不要硬编码颜色,优先复用
css/theme.css中的变量。 - popup 和 quickSearch 的改动要同时考虑桌面窄宽度下的可用性。
Packaging / Build Hygiene
- 当前打包链路以
build.sh为入口,流程是: - 先用
build.py和config/manifest.*.json生成目标环境配置 - 再通过
rsync --exclude-from='exclude_list.txt'复制到临时目录 - 最后对临时目录执行
zip - 因此“哪些文件不能进扩展包”的单一事实来源是
exclude_list.txt;调整打包内容时,优先改这里。 - 变更打包排除规则前,先按运行时入口核对真实依赖:
manifest.jsonbackground.jspopup.htmlquickSave.htmlquickSearch.htmlsettings.htmlintro.html- 当前项目里应排除的开发期内容包括:
docs/AGENTS.mdskills/.cursor/.codex/.trae/.idea/.vscode/.claude/build/.git/build.shbuild.pyenv.jsonconfig/exclude_list.txt.gitignoretmp_build- 注意不要误排这些运行时仍会用到的资源:
intro.html和intro.js:安装/升级后会由background.js打开videos/:intro.html会引用,且manifest.json已把videos/*声明为web_accessible_resourcesicons/、css/、_locales/、各页面 HTML/JS 入口:都由 manifest 或页面直接引用- 如果新增了新的开发工具目录或仓库级文档目录,在同一次提交里同步更新
exclude_list.txt。 - 修改排除规则后,用下面的 dry-run 校验打包结果里是否仍混入开发文件:
rsync -avn --exclude-from='exclude_list.txt' . /tmp/smart-bookmark-packcheck- 然后检查输出里是否还出现
docs、skills、.cursor、.codex、.trae、AGENTS.md等开发期路径
When In Doubt
- API 兼容性不确定时,优先查官方文档。
- 权限或生命周期影响较大时,先缩小方案,再决定是否扩展。
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/chrome-extension-dev/SKILL.md
Popularity
- Repository stars
- 328
- Repository forks
- 26
- 7-day trend score
- 29
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/howoii/smartbookmark/chrome-extension-dev)