tsubotax/melta-ui/ban-pattern
Claude Code and agent skill by tsubotax/melta-ui
- community
Checking that the SKILL.md file is still in the repository.
Register AI-generated-looking UI patterns as prohibited rules in the design system. Use when user says \"AIっぽい\", \"AI臭い\", \"これ禁止\", \"このパターンやめたい\", \"ban this pattern\", \"add to prohibited\", or points out a generic/cookie-cutter UI element.
Install
npx vskill@latest install tsubotax/melta-ui/ban-patternSKILL.md
AI生成UIに頻出する「それっぽい」装飾パターンを特定し、DS全体の禁止ルールとして登録する。
手順
Step 1: パターンを特定する
ユーザーの説明(テキスト or スクリーンショット)から、禁止対象のパターンを特定する。
以下を明確にする:
- 何が問題か: どの視覚要素がAI生成っぽいのか
- 該当する Tailwind クラス / CSS: 具体的な実装パターン(例:
border-l-4,bg-gradient-to-r) - 代替パターン: DS準拠の代わりの実装
不明点があれば AskUserQuestion で確認する。推測で進めない。
Step 2: 既存ルールと重複がないか確認する
以下を読み込む:
design/contracts/rules.jsonのrules[](SSOT。機械可読版。同じ pattern / 趣旨のルールが無いか)foundations/prohibited.mdの「AI生成パターンの排除」セクション(人間向けミラー)
既に同じ or 類似のルールが存在する場合は、ユーザーに報告して既存ルールの更新で対応するか確認する。
Step 3: 禁止ルールを登録する
SSOT は `design/contracts/rules.json`。CI / MCP check_rule / PostToolUse hook はすべて rules.json を参照する。ここに機械可読ルールを足して初めて「ban → 即 enforcement」が成立する。 prohibited.md は人間向けの解説ミラーであり、enforcement の実体ではない。順序厳守:
3-1. design/contracts/rules.json — 機械可読ルールを追加(最優先)
rules[] 配列にルールオブジェクトを 1 件追加する。スキーマは design/schemas/rule.schema.json。
detector の選び方(これで自動検出されるか・人手参照に留まるかが決まる):
| detector | いつ使う | 必須フィールド | 例 | |
|---|---|---|---|---|
tailwind-class | 単一の固定クラスを禁止 | pattern(クラス名) | border-l-4, shadow-2xl | |
tailwind-class-prefix | 前方一致で複数バリアントを一網打尽 | pattern(接頭辞)。任意値回避経路があれば prefixPatterns も | bg-gradient- | |
tailwind-class-segment | クラスを - 分割したセグメント一致(色名等) | matchPatterns(セグメント配列)、pattern: null | purple/violet | |
manual | 静的検出が原理的に不能(文脈判断) | pattern: null、contractLint: "skip" | 「色だけで状態を伝達」 |
フィールド規約:
id: 大文字スネーク(^[A-Z][A-Z0-9_]+$)。AI生成装飾はAI_NO_*、特定コンポーネントは<COMPONENT>_NO_*category:ai-pattern(AI装飾)/ または該当カテゴリ(colorspacingform等、schema の enum 参照)severity:error(明確なNG)/warn(文脈次第・段階導入)alternative: DS準拠の代替実装(必須・具体的に)contractLint:enforce(自動検出可・contract も検査)/warn/skip(manual・html-attr・文脈依存)
テンプレ(自動検出する典型の AI パターン):
テンプレ(manual = 文脈判断が要るもの):
3-2. 人間向けドキュメントと件数の整合
foundations/prohibited.mdの該当セクション(AIパターンなら「## AI生成パターンの排除」、無ければ
## コンポーネント の直前に同テンプレで新設)のテーブルに prose 行を追加する: ```
`` **detector が manual のルールは orphan 0 検証の対象**なので、行末に <!-- RULE_ID -->`(HTMLコメント・ レンダリング不可視・表非破壊)を必ず付け、drift-check が参照経路を見つけられるようにする。 auto 系(tailwind-*)は contract / lint で到達できるためコメントは任意。
- ルール総数が 1 件増えるので、prose に書かれた件数を全て +1 する:
DESIGN.md(全ルール(N 件))/ README.md(N 禁止ルール N ルール 複数箇所)/ AGENTS.md(N 禁止ルール N ルール)/ README.en.md(英語: N prohibition rules / N rules)。 どこが古いかは 3-4 の design:drift がファイル名・数値付きで指摘するので(英語入口の数値整合も検証する)、それに従って直す。
- パターンが特定コンポーネントに紐づく場合、該当
components/*.mdの禁止事項にも追記する(任意)。
3-3. 生成ビューを再生成する
3-4. 検証 — 「即 CI / MCP 反映」を自分で確認する
- どちらも green になって初めて登録完了。落ちたら指摘に従って直してから報告する。
- auto detector のルールは、違反 HTML を 1 つ作って
npm run design:lint-generated -- <file>で
実際に発火することを確認すると「enforcement に乗った」証拠になる(任意・デモ向け)。
Step 4: 既存サンプルを走査・修正する
examples/ と docs/ 配下のHTMLファイルを Grep で走査し、禁止パターンに該当する実装が既にないか確認する。
該当がある場合:
- 全箇所をリストアップしてユーザーに報告する
- ユーザーの承認後、DS準拠の代替パターンに修正する
該当がない場合:
- 「既存サンプルに該当なし」と報告する
Step 5: 結果を報告する
以下のフォーマットで報告する:
トラブルシューティング
| 問題 | 対処 | |
|---|---|---|
design/contracts/rules.json のスキーマ検証で落ちる | design:check のエラー文に従う。id は大文字スネーク、detector に応じた必須フィールド(tailwind-class→pattern / segment→matchPatterns / manual→pattern:null + contractLint:skip)を確認 | |
design:drift が件数 mismatch を出す | 指摘されたファイル・数値の「N ルール」「全ルール(N 件)」を実数に直し、design:build / update-showcase / design:coverage を再実行 | |
| manual ルールを足したら orphan 0 検証で落ちる | prohibited.md(または該当 foundations/patterns md)の行末に <!-- RULE_ID --> を付けて参照経路を作る | |
| 禁止パターンの Tailwind クラスが特定できない | AskUserQuestion でスクリーンショットや具体例を求める。単一クラスでなく色名なら tailwind-class-segment、接頭辞バリアント群なら tailwind-class-prefix を検討 | |
| 既存ルールと部分的に重複する | 既存ルールの拡張(pattern / matchPatterns の追加)で対応するか、新規ルールにするかをユーザーに確認する |
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/ban-pattern/SKILL.md
Popularity
- Repository stars
- 200
- Repository forks
- 21
- 7-day trend score
- 27
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 23 Mar 2026, 7 months ago.
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/tsubotax/melta-ui/ban-pattern)