Token导航 LogoToken导航

Agent Skill · 研究检索

webflow-code-component%3apre-deploy-check(Webflow 代码 component 3apre 部署 check)

用于辅助云资源、部署、容器、基础设施和运维自动化任务。它适合让 Agent 检查配置、整理部署步骤、分析资源状态、生成排障思路或辅助云服务接入。使用时需要明确目标环境、账号权限、区域和资源组,区分本地测试与生产操作;涉及删除资源、重启服务、修改网络或权限配置时,应先确认影响范围。

webflow-code-component%3apre-deploy-check 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为操作浏览器;许可证信息还不明确,暂无第三方扫描结果,按安装量在研究检索类的 73,675 个 Skill 里排第 21,270。

总安装 4,918周安装 207GitHub Stars 62下载 1,722核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:webflow-code-component%3apre-deploy-check(Webflow 代码 component 3apre 部署 check)
来源仓库:https://github.com/webflow/webflow-skills
仓库路径:skills/webflow-code-component%3Apre-deploy-check
安装命令:
npx skills add https://github.com/webflow/webflow-skills --skill webflow-code-component:pre-deploy-check
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/webflow/webflow-skills --skill webflow-code-component:pre-deploy-check

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

用于 Webflow 代码组件的部署前检查,验证依赖关系和构建配置。检测 styled-components 装饰器缺失、Webpack 语法错误等关键问题。提供修复建议和调试标志支持,确保组件库可正常部署。安装方式通过 npx skills add 指定 GitHub 仓库路径。

建议结合项目构建环境核验,避免忽略重要配置错误。

来源仓库内路径:skills/webflow-code-component%3Apre-deploy-check

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/webflow/webflow-skills --skill webflow-code-co…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要操作浏览器,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

webflow-code-component%3apre-deploy-check 怎么安装?

在终端执行 npx skills add https://github.com/webflow/webflow-skills --skill webflow-code-component:pr…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

webflow-code-component%3apre-deploy-check 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

webflow-code-component%3apre-deploy-check 需要什么权限?

权限级别是操作浏览器。该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

webflow-code-component%3apre-deploy-check 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

webflow-code-component%3apre-deploy-check 用的人多吗?

公开数据是累计安装 4,918 次,近一周安装 207 次,下载 1,722 次,GitHub 62 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

webflow-code-component%3apre-deploy-check 安全吗?

没有查到第三方扫描结果,安全性无法从公开资料判断,安装前请自行审查源码、依赖和命令行为。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 没有第三方扫描结果,安全性只能靠自己读源码判断。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 要求有安全扫描结论才肯安装的团队。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
webflow-code-component%3apre-deploy-check

Webflow 代码 component 3apre 部署 check · 本页

4,91862操作浏览器未明确未收录

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Build Validate

Validate code components before deployment to catch issues early.

When to Use This Skill

Use when:

  • User is about to deploy and wants to check for issues first
  • Proactively before running webflow library share
  • User asks to validate, check, or verify their components
  • After making significant changes to components

Do NOT use when:

  • Deployment already failed (use troubleshoot-deploy instead)
  • Just building for local development
  • Auditing code quality (use component-audit instead)

Instructions

Phase 1: Project Structure Check

  1. Verify webflow.json exists:

- Check for required fields (library.name, library.components) - Validate glob pattern matches component files — the recommended pattern is "./src/**/*.webflow.@(js|jsx|mjs|ts|tsx)" covering all supported extensions - Check globals path if specified — file must exist and be importable - Check bundleConfig path if specified — file must exist

  1. Check dependencies:

- Verify @webflow/webflow-cli installed - Verify @webflow/data-types installed - Verify @webflow/react installed - Check for version compatibility (check installed versions, don't assume specific versions)

  1. Verify component files:

- Find all .webflow.tsx / .webflow.ts files matching the glob pattern - Ensure matching React components exist - Check for orphaned definition files

  1. Validate imports in .webflow.tsx files:

- Must import declareComponent from @webflow/react - Must import props from @webflow/data-types (if props are defined) - Must import the actual React component being declared

Phase 2: Component Analysis

  1. For each component, check:

- declareComponent is called with the component and a config object - name is provided in the config - All props have name properties and appropriate defaultValue where applicable - Prop types are valid — the 11 supported types are: - Text (alias: String) — single line text input - RichText — multi-line text with formatting - TextNode — single/multi-line text editable on canvas - Link — URL input (returns {href, target, preload} object) - Image — image upload and selection - Number — numeric input - Boolean — true/false toggle - Variant — dropdown with predefined options (requires options array) - Visibility — show/hide controls - Slot — content areas for child components - ID — HTML element ID

  1. Validate component options:

- If options object is present, validate: - applyTagSelectors is a boolean (default: false) — enables site tag selectors in Shadow DOM - ssr is a boolean (default: true) — controls server-side rendering

  1. Check for SSR issues:

- Scan for browser-only API usage outside of useEffect or guarded blocks: - window, document, localStorage, sessionStorage, navigator - Flag dynamic/personalized content patterns (user-specific dashboards, authenticated views) - Flag heavy/interactive UI that doesn't benefit from SSR (charts, 3D scenes, maps, animation-heavy elements) - Flag non-deterministic output (random numbers, time-based values that differ server vs client) - Suggest ssr: false in options if component is purely interactive or browser-dependent

  1. Check styling:

- Verify styles are imported in .webflow.tsx or via globals file - Check for site class usage — site classes do NOT work in Shadow DOM - Site variables DO work: var(--variable-name, fallback) - Inherited CSS properties DO work: font-family: inherit - Tag selectors work IF applyTagSelectors: true is set in component options - Validate CSS-in-JS setup if used (see CSS-in-JS detection below)

  1. Check for Shadow DOM + React Context issues:

- If a component uses slots (props.Slot) AND imports/uses useContext or a Context Provider: - Warn that parent and child components in slots cannot share React Context — each child renders in its own Shadow DOM with a separate React root - Suggest alternatives: Nano Stores, custom events, URL parameters, or browser storage

Phase 3: Build Test

  1. Run TypeScript/build check:

- Check for TypeScript compilation errors - Verify all imports resolve correctly - Identify any build-time issues

  1. Check bundle size:

- If a build output exists, verify total bundle size is under 50MB (maximum bundle limit) - If over limit, flag as error and suggest optimization

  1. Run local bundle test (optional, suggest to user):

- Suggest running npx webflow library bundle --public-path http://localhost:4000/ to test bundling before sharing - If bundling issues occur, suggest --debug-bundler flag to inspect the final webpack config

Phase 4: Detect Framework-Specific Setup

  1. CSS-in-JS library detection:

- If project uses styled-components: verify @webflow/styled-components-utils is installed and styledComponentsShadowDomDecorator is exported from globals decorators array - If project uses Emotion or Material UI (@emotion/styled, @emotion/react, @mui/material): verify @webflow/emotion-utils is installed and emotionShadowDomDecorator is exported from globals decorators array

  1. Tailwind CSS detection:

- If project uses Tailwind CSS (tailwindcss in dependencies): - Verify @tailwindcss/postcss is installed - Verify postcss.config.mjs exists with @tailwindcss/postcss plugin - Verify Tailwind CSS is imported in globals file (e.g., @import "tailwindcss" in globals.css)

  1. Sass/Less preprocessor detection:

- If project uses Sass (.scss files or sass in dependencies): verify sass and sass-loader are installed, and a webpack config adds the .scss rule - If project uses Less (.less files or less in dependencies): verify less and less-loader are installed, and a webpack config adds the .less rule - For either: verify bundleConfig is set in webflow.json pointing to the webpack config

  1. Webpack custom config validation (if bundleConfig is specified):

- Verify the file exists at the specified path - Verify it uses CommonJS exports (module.exports) - Warn if it attempts to override blocked properties: entry, output, target (these are silently filtered out) - Verify module.rules uses function syntax (currentRules) => {...}, not an array

Phase 5: Report Results

  1. Generate validation report:

- List all checks performed - Show passed/failed/warning status - Provide fix suggestions for failures - Indicate deployment readiness

Validation Checks

Required Checks

CheckSeverityDescription
webflow.json existsErrorRequired for CLI
Dependencies installedError@webflow/webflow-cli, @webflow/data-types, @webflow/react
Component files existErrorReact + definition files present
declareComponent calledErrorRequired in.webflow.tsx with correct imports
Valid prop typesErrorOnly the 11 supported types (Text/String, RichText, TextNode, Link, Image, Number, Boolean, Variant, Visibility, Slot, ID)
Build succeedsErrorNo compilation errors
Bundle size < 50MBErrorMaximum bundle limit enforced by Webflow

Warning Checks

CheckSeverityDescription
Props have defaultsWarningBetter designer experience
SSR compatibilityWarningBrowser APIs, dynamic content, heavy UI, non-deterministic output
Styles importedWarningStyles may not appear in Shadow DOM
Site class usageWarningSite classes don't work in Shadow DOM — use component-specific classes
Shadow DOM + ContextWarningSlots prevent React Context sharing between parent/child
CSS-in-JS decoratorWarningstyled-components/Emotion need Shadow DOM decorators
Tailwind setupWarningMissing postcss config or globals import
Sass/Less setupWarningMissing loaders or webpack config
Webpack blocked propsWarningentry, output, target overrides are silently ignored
Webpack rules formatWarningMust use function syntax, not array
Component optionsWarningapplyTagSelectors and ssr must be booleans
Glob pattern coverageWarningPattern should cover all supported extensions (.js,.jsx,.mjs,.ts,.tsx)
bundleConfig fileWarningFile must exist if specified in webflow.json

Info Checks

CheckSeverityDescription
Component countInfoNumber of components
Prop countInfoProps per component
Bundle sizeInfoCurrent bundle size vs 50MB limit
Frameworks detectedInfoCSS-in-JS, Tailwind, Sass/Less usage

Examples

User prompt:

Check if my components are ready to deploy

Response:

🔍 Build Validation: My Component Library

Running pre-deployment checks...

---

## Project Structure

✅ webflow.json found
✅ library.name: "My Component Library"
✅ library.components: "./src/**/*.webflow.@(js|jsx|mjs|ts|tsx)"
✅ globals: "./src/globals.ts"
✅ bundleConfig: not specified (using defaults)

---

## Dependencies

✅ @webflow/webflow-cli: installed
✅ @webflow/data-types: installed
✅ @webflow/react: installed
✅ react: installed
✅ typescript: installed

---

## Frameworks Detected

✅ Tailwind CSS detected
  ✅ @tailwindcss/postcss installed
  ✅ postcss.config.mjs found
  ✅ globals.css imports Tailwind

---

## Components Found (4)

### 1. Button ✅
- File: src/components/Button/Button.webflow.tsx
- Imports: ✅ declareComponent, ✅ props, ✅ Button component
- Props: label (Text), variant (Variant), disabled (Boolean)
- All props have defaults ✅
- SSR compatible ✅
- Options: applyTagSelectors: true ✅
- Styles imported ✅

### 2. Card ✅
- File: src/components/Card/Card.webflow.tsx
- Imports: ✅ declareComponent, ✅ props, ✅ Card component
- Props: title (Text), image (Image), content (RichText), link (Link)
- All props have defaults ✅
- SSR compatible ✅
- Styles imported ✅

### 3. Modal ⚠️
- File: src/components/Modal/Modal.webflow.tsx
- Imports: ✅ declareComponent, ✅ props, ✅ Modal component
- Props: title (Text), isOpen (Boolean), content (Slot)
- All props have defaults ✅
- ⚠️ SSR Issue: Uses `document.body` in render
  → Suggestion: Add `ssr: false` to options or wrap in useEffect
- Styles imported ✅

### 4. CartIcon ⚠️
- File: src/components/CartIcon/CartIcon.webflow.tsx
- Imports: ✅ declareComponent, ✅ CartIcon component
- Props: none
- ⚠️ Missing props - component has no editable properties
  → Suggestion: Consider adding props for designer customization
- ⚠️ Uses localStorage without SSR guard
  → Suggestion: Wrap in useEffect or useState initializer
- Styles imported ✅

---

## Build Test

✅ Build completed successfully
✅ No TypeScript errors
✅ No webpack errors
✅ Bundle size: 2.3MB / 50MB limit

---

## Summary

| Category | Status |
|----------|--------|
| Project Structure | ✅ Pass |
| Dependencies | ✅ Pass |
| Frameworks | ✅ Pass |
| Components | ⚠️ 2 warnings |
| Build | ✅ Pass |

---

## Ready to Deploy: ⚠️ WITH WARNINGS

You can deploy, but consider fixing these issues:

1. **Modal SSR Issue**
   Add to Modal.webflow.tsx:

options: { ssr: false }


1. **CartIcon localStorage Usage** Update CartIcon.tsx: `const [count, setCount] = useState(() => {if (typeof window === "undefined") return 0; return parseInt(localStorage.getItem("cartCount") || "0");});`

---

💡 To deploy: `npx webflow library share` 💡 To test locally first: `npx webflow library bundle --public-path http://localhost:4000/`

Example: Build Failure


🔍 Build Validation: My Component Library

Running pre-deployment checks...

---

## Project Structure

✅ webflow.json found ⚠️ library.components uses narrow glob: "./src/**/*.webflow.tsx" → Recommendation: Use "./src/**/*.webflow.@(js|jsx|mjs|ts|tsx)" to cover all supported extensions

---

## Dependencies

❌ Missing: @webflow/react Fix: npm install --save-dev @webflow/react

---

## Build Test

❌ Build Failed

Error in src/components/Button/Button.webflow.tsx:

Module not found: Error: Can't resolve '@webflow/react'


---

## Summary

| Category | Status |
| --- | --- |
| Dependencies | ❌ 1 error |
| Build | ❌ Failed |

---

## Ready to Deploy: ❌ NO

Fix the following before deployment:

1. **Install missing dependency** `npm install --save-dev @webflow/react`
2. **Re-run validation** After installing, run this check again.

Example: CSS-in-JS Missing Decorator


🔍 Build Validation: My Component Library

---

## Frameworks Detected

⚠️ styled-components detected but Shadow DOM decorator not configured → Install: npm install @webflow/styled-components-utils → Add to globals.ts: `typescript import {styledComponentsShadowDomDecorator} from "@webflow/styled-components-utils"; export const decorators = [styledComponentsShadowDomDecorator];` → Reference globals in webflow.json: `json {"library": {"globals": "./src/globals.ts"}}`

Without this, styled-components styles will be injected into document.head instead of the Shadow DOM, and your components will appear unstyled.

Example: Webpack Config Issues


🔍 Build Validation: My Component Library

---

## Webpack Configuration

⚠️ webpack.webflow.js: `module.rules` uses array syntax → Must use function syntax: `rules: (currentRules) => {return [...];}` → Array syntax will not work — the function receives current rules to extend

⚠️ webpack.webflow.js: overrides `output` property → The `output` property is blocked and will be silently ignored → Blocked properties: entry, output, target

💡 Use `--debug-bundler` flag to inspect the final merged webpack config: npx webflow library bundle --debug-bundler

Example: Shadow DOM Context Warning


## Components Found (2)

### 1. ThemeProvider ⚠️

- File: src/components/ThemeProvider/ThemeProvider.webflow.tsx
- Props: theme (Variant), children (Slot)
- ⚠️ Shadow DOM + React Context Issue: Component uses Slot prop AND React Context (ThemeContext). Children placed in slots render in separate Shadow DOM containers with their own React roots — they cannot access this Context. Alternatives for cross-component state:
  - Nano Stores (lightweight reactive state)
  - Custom events (window.dispatchEvent/addEventListener)
  - URL parameters (for shareable state)
  - Browser storage (localStorage/sessionStorage)

Guidelines

Validation Order

Run checks in this order for efficiency:

  1. Project structure (fast, catches obvious issues)
  2. Dependencies (medium, required for build)
  3. Component analysis (medium, catches code issues)
  4. Framework detection (medium, validates CSS-in-JS/Tailwind/Sass setup)
  5. Build test (slow, but required)

SSR Detection Patterns

Look for these patterns that indicate SSR issues:

// Direct browser API usage (will break SSR)
window.innerWidth
document.getElementById
localStorage.getItem
navigator.userAgent
sessionStorage.getItem

// Dynamic/personalized content (may cause hydration mismatch)
// User-specific dashboards, authenticated views

// Heavy/interactive UI (SSR adds no value, re-renders anyway)
// Charts, 3D scenes, maps, animation-driven elements

// Non-deterministic output (differs server vs client)
Math.random()
new Date().toLocaleString()

// Safe patterns (in useEffect or state initializer)
useEffect(() => {
  // Browser APIs here are fine
}, []);

useState(() => {
  if (typeof window === "undefined") return default;
  return window.innerWidth;
});

When SSR issues are found, prominently suggest the ssr: false option:

export default declareComponent(MyComponent, {
  name: "My Component",
  options: {
    ssr: false  // Disables server-side rendering
  },
});

CSS-in-JS / Tailwind / Preprocessor Detection

Check project dependencies and files to detect styling frameworks:

styled-components:

  • Detect: styled-components in package.json dependencies
  • Require: @webflow/styled-components-utils installed
  • Require: styledComponentsShadowDomDecorator in globals decorators array

Emotion / Material UI:

  • Detect: @emotion/styled, @emotion/react, or @mui/material in dependencies
  • Require: @webflow/emotion-utils installed
  • Require: emotionShadowDomDecorator in globals decorators array

Tailwind CSS:

  • Detect: tailwindcss in dependencies
  • Require: @tailwindcss/postcss installed
  • Require: postcss.config.mjs with @tailwindcss/postcss plugin
  • Require: Tailwind import in globals CSS (@import "tailwindcss")

Sass:

  • Detect: .scss files in src or sass in dependencies
  • Require: sass and sass-loader installed as dev dependencies
  • Require: webpack config with .scss rule using function syntax for module.rules
  • Require: bundleConfig set in webflow.json

Less:

  • Detect: .less files in src or less in dependencies
  • Require: less and less-loader installed as dev dependencies
  • Require: webpack config with .less rule using function syntax for module.rules
  • Require: bundleConfig set in webflow.json

Webpack Config Validation Rules

When bundleConfig is specified in webflow.json:

  1. File must exist at the specified path
  2. Must use CommonJS: module.exports = {...}
  3. Blocked properties that are silently ignored: entry, output, target
  4. module.rules must be a function, not an array: rules: (currentRules) => {...}
  5. ModuleFederationPlugin and MiniCssExtractPlugin are auto-deduplicated

Common Build Errors

ErrorCauseFix
"Can't resolve '@webflow/react'"Missing dependencynpm i -D @webflow/react
"Cannot find module './Component'"Wrong import pathCheck relative paths
"Type 'X' is not assignable"TypeScript errorFix type mismatch
"Unexpected token"Syntax errorCheck JSX/TS syntax
"Maximum call stack"Circular importBreak dependency cycle
Bundle exceeds 50MBToo many/large dependenciesTree-shake, lazy load, replace heavy libs
Styles not appearingMissing Shadow DOM decoratorAdd CSS-in-JS decorator or import styles in.webflow.tsx

Bundle Size Optimization

Quick wins for reducing bundle size:

  1. Use production build: Ensure minification is enabled
  2. Tree-shake imports: Import specific exports
  3. Replace heavy libraries: moment → date-fns, lodash → lodash-es
  4. Lazy load: Dynamic imports for heavy components
  5. Check for duplicates: Multiple React versions, etc.
  6. Monitor size: Bundle must stay under 50MB limit

平台分布

Codex

38.7%
按下载量换算666

Claude

28.48%
按下载量换算490

Cursor

19.11%
按下载量换算329

Gemini CLI

9.29%
按下载量换算160

安全审计

暂无安全审计结果可展示。

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills