スキル plans-handler
📦

plans-handler

安全

Abonnement-Pläne und Preise verwalten

Die Verwaltung von Abonnement-Plänen und Kontingenten über Datenbank-, Validierungs- und UI-Ebenen ist fehleranfällig und zeitaufwendig. Diese Skill bietet einen strukturierten Workflow zum Hinzufügen von Plan-Funktionen, Aktualisieren von Limits und Erstellen konsistenter Preisseiten.

対応: Claude Codex Code(CC)
📊 70 十分
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「plans-handler」を使用しています。 Füge ein neues 'api_calls'-Kontingent zu unseren Plänen hinzu

期待される結果:

Ich werde das 'api_calls'-Kontingent gemäß dem plans-handler-Workflow hinzufügen:

1. **DB Schema**: Feld zu `quotaSchema` in `src/db/schema/plans.ts` hinzufügen
2. **Validation**: Feld zu `planFormSchema` in `src/lib/validations/plan.schema.ts` hinzufügen
3. **UI**: Eingabe zu `src/components/forms/plan-form.tsx` hinzufügen
4. **Data**: Bitte aktualisiere den Plan über das `/super-admin/plans`-Dashboard

「plans-handler」を使用しています。 Wie prüfe ich, welchen Plan der aktuelle Benutzer hat?

期待される結果:

**Client-seitig (React/SWR):**
```tsx
import useCurrentPlan from '@/hooks/useCurrentPlan'
const { data: plan } = useCurrentPlan()
```

**Server-seitig:**
```ts
import { withAuthRequired } from '@/lib/middleware'
import { getCurrentPlan } from '@/lib/plans'

// Use withAuthRequired wrapper, then call getCurrentPlan()
```

セキュリティ監査

安全
v6 • 1/21/2026

All 29 static findings are false positives. The backtick patterns are markdown code fences, not shell execution. Network and filesystem references are JSON metadata fields. No actual security risks detected in skill code.

3
スキャンされたファイル
431
解析された行数
0
検出結果
6
総監査数
セキュリティ問題は見つかりませんでした
監査者: claude 監査履歴を表示 →

品質スコア

38
アーキテクチャ
100
保守性
87
コンテンツ
21
コミュニティ
100
セキュリティ
91
仕様準拠

作れるもの

Neues Kontingent zu Abonnement-Plänen hinzufügen

Ein neues nutzungsbasiertes Limit wie 'max_projects' oder 'storage_gb' über Datenbankschema, Formularvalidierung und Admin-UI-Komponenten hinzufügen.

Preisseite erstellen

Eine Preistabellen-Komponente erstellen, die verfügbare Pläne, Funktionen und Abonnement-Buttons unter Verwendung der Plans-API anzeigt.

Benutzer-Abonnementstatus prüfen

Den aktuellen Plan und die Kontingentnutzung des Benutzers auf dem Client mit SWR-Hooks oder auf dem Server mit Authentifizierungs-Wrappern abrufen.

これらのプロンプトを試す

Neues Plan-Limit hinzufügen
Ich muss ein neues Kontingentlimit namens '{quota_name}' zu unseren Abonnement-Plänen hinzufügen. Folge dem plans-handler-Workflow: Aktualisiere das Datenbankschema, füge Validierung hinzu und erstelle die UI-Eingabe.
Preis-Komponente erstellen
Erstelle eine Preistabellen-Komponente für unsere Abonnement-Pläne. Sie sollte Pläne über API abrufen, Funktionen aus plan.quotas anzeigen und Abonnement-Buttons mit den richtigen URLs enthalten.
Benutzer-Plan-Informationen abrufen
Zeige mir, wie ich auf den Abonnement-Plan des aktuellen Benutzers zugreifen kann. Ich benötige Beispiele sowohl für Client-seitige (SWR) als auch für Server-seitige (withAuthRequired) Implementierungen.
Plan-Schemas synchronisieren
Prüfe unsere planungsbezogenen Dateien und stelle sicher, dass Datenbankschema, Validierungsschema und Formularschema alle synchron sind. Melde alle Unstimmigkeiten.

ベストプラクティス

  • Verwende immer die Super-Admin-Dashboard-UI für Planänderungen anstatt manuellem Datenbank-Seeding
  • Halte Datenbankschema, Validierungsschema und Formularschema beim Hinzufügen von Kontingenten synchron
  • Verwende nutzungsbasierte Kontingentnamen wie 'images' anstatt zeitgebundener Namen wie 'monthly_images'

回避

  • Manuelle Direktanlage von Plänen in der Datenbank anstelle der Verwendung des Dashboards
  • Hinzufügen eines Kontingents zu nur einer Ebene (DB, Validierung oder UI) und Vergessen der anderen
  • Hardcodierung von Plan-IDs oder Provider-IDs anstelle deren Konfiguration im Plan-Dashboard

よくある質問

Welche Benennungskonvention sollte ich für Kontingente verwenden?
Verwende nutzungsbasierte Namen wie 'images' oder 'storage_gb' anstatt zeitgebundener Namen wie 'monthly_images'. Dies macht Kontingente flexibler für unterschiedliche Abrechnungszeiträume.
Wie füge ich ein neues Kontingentlimit hinzu?
Füge das Feld an drei Stellen hinzu: quotaSchema im Datenbankschema, planFormSchema in der Validierung und im Plan-Formular-UI. Aktualisiere dann den Plan über das Super-Admin-Dashboard.
Wie greife ich auf den Plan eines Benutzers auf dem Client zu?
Verwende den useCurrentPlan()-Hook mit SWR. Für serverseitigen Zugriff verwende den withAuthRequired-Middleware-Wrapper und rufe getCurrentPlan() auf.
Kann ich Pläne manuell in der Datenbank erstellen?
Nein. Verwende immer das Super-Admin-Dashboard (/super-admin/plans) zum Erstellen oder Ändern von Plänen. Manuelles Seeding kann zu Inkonsistenzen führen.
Wie erstelle ich einen Abonnement-Button?
Verwende die getSubscribeUrl-Hilfsfunktion aus src/lib/plans/getSubscribeUrl.ts mit den Parametern: { codename, type, provider }.
Was ist, wenn meine Schemas nicht synchron sind?
Prüfe die drei Dateien: src/db/schema/plans.ts, src/lib/validations/plan.schema.ts und src/components/forms/plan-form.tsx. Stelle sicher, dass alle neuen Kontingente zu jeder hinzugefügt wurden.

開発者の詳細

ファイル構成