Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Modern authentication and security patterns for web applications. Expert in JWT tokens, OAuth2 flows, session management, RBAC, MFA, API security, and zero-trust architectures. Framework-agnostic patterns that work with any tech stack.
.claude/skills/aiskillstore-auth/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | -16% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 22% | 0% |
| case-16 | ✗→✓ | ▲ Improved | -20% | 0% |
| case-17 | ✗→✓ | ▲ Improved | -31% | 0% |
| case-21 | ✗→✓ | ▲ Improved | 17% | 0% |
認証と決済機能の実装を担当するスキル群です。
| スキル | 用途 | |--------|------| | auth-impl | Clerk/Supabase Auth による認証実装 | | payments | Stripe による決済実装 |
認証・決済機能は常にセキュリティリスクが高いため、作業開始前に必ず以下を表示:
markdown🔐 セキュリティチェックリスト この作業はセキュリティ上重要です。以下を確認してください: ### 認証関連 - [ ] パスワードはハッシュ化(bcrypt/argon2) - [ ] セッション管理は安全か(HTTPOnly Cookie) - [ ] CSRF 対策は実装されているか - [ ] レート制限(ブルートフォース対策) ### 決済関連 - [ ] 機密情報(カード番号等)をサーバーに保存しない - [ ] Stripe/決済プロバイダの SDK を正しく使用 - [ ] Webhook の署名検証 - [ ] 金額改ざん防止(サーバー側で金額を確定) ### 共通 - [ ] エラーメッセージが詳細すぎないか(情報漏洩防止) - [ ] ログに機密情報を出力していないか
markdown⚠️ 注意レベル: 🔴 高 この機能は以下のリスクがあります: - 認証情報の漏洩 - 不正アクセス - 決済の不正操作 専門家によるレビューを推奨します。
markdown🔐 安全にログイン・決済機能を作るために 1. **パスワードは「ハッシュ化」する** - 元のパスワードを復元できない形で保存 - 万が一データが漏れても安全 2. **カード情報はサーバーに保存しない** - Stripe などの専用サービスに任せる - 自分のサーバーには一切保存しない 3. **エラーメッセージは曖昧に** - 「パスワードが違います」ではなく「認証に失敗しました」 - 悪意ある人にヒントを与えない
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 14,562 | 20,818 | +43% | 1 | 1 | 0% | 3,176 | 3,558 | +12% | 0 | 0 | — |
case-02 | pass→pass | 29,536 | 18,231 | -38% | 1 | 1 | 0% | 4,358 | 3,927 | -10% | 0 | 0 | — |
case-03 | fail→pass | 25,973 | 18,808 | -28% | 1 | 1 | 0% | 3,931 | 3,295 | -16% | 0 | 0 | — |
case-04 | pass→pass | 33,679 | 34,306 | +2% | 1 | 1 | 0% | 5,849 | 4,192 | -28% | 0 | 0 | — |
case-05 | pass→fail | 12,845 | 12,931 | +1% | 1 | 1 | 0% | 1,366 | 2,020 | +48% | 0 | 0 | — |
case-06 | pass→pass | 9,795 | 16,585 | +69% | 1 | 1 | 0% | 1,869 | 2,778 | +49% | 0 | 0 | — |
case-07 | pass→pass | 16,952 | 14,780 | -13% | 1 | 1 | 0% | 2,032 | 2,288 | +13% | 0 | 0 | — |
case-08 | pass→pass | 12,307 | 14,849 | +21% | 1 | 1 | 0% | 2,074 | 2,094 | +1% | 0 | 0 | — |
case-09 | pass→pass | 14,786 | 19,949 | +35% | 1 | 1 | 0% | 2,604 | 3,268 | +25% | 0 | 0 | — |
case-10 | pass→pass | 13,462 | 12,150 | -10% | 1 | 1 | 0% | 2,174 | 2,849 | +31% | 0 | 0 | — |
case-11 | pass→pass | 17,329 | 17,026 | -2% | 1 | 1 | 0% | 3,145 | 3,645 | +16% | 0 | 0 | — |
case-12 | fail→pass | 18,295 | 12,289 | -33% | 1 | 1 | 0% | 2,121 | 2,583 | +22% | 0 | 0 | — |
case-13 | pass→pass | 14,066 | 16,502 | +17% | 1 | 1 | 0% | 1,498 | 2,552 | +70% | 0 | 0 | — |
case-14 | pass→pass | 9,918 | 17,226 | +74% | 1 | 1 | 0% | 1,579 | 2,554 | +62% | 0 | 0 | — |
case-15 | pass→pass | 12,790 | 14,553 | +14% | 1 | 1 | 0% | 1,896 | 2,057 | +8% | 0 | 0 | — |
case-16 | fail→pass | 18,430 | 11,367 | -38% | 1 | 1 | 0% | 2,349 | 1,879 | -20% | 0 | 0 | — |
case-17 | fail→pass | 15,325 | 9,422 | -39% | 1 | 1 | 0% | 1,899 | 1,317 | -31% | 0 | 0 | — |
case-18 | pass→pass | 27,949 | 16,749 | -40% | 1 | 1 | 0% | 2,064 | 2,277 | +10% | 0 | 0 | — |
case-19 | pass→pass | 16,099 | 17,076 | +6% | 1 | 1 | 0% | 1,700 | 2,332 | +37% | 0 | 0 | — |
case-20 | pass→pass | 10,190 | 9,675 | -5% | 1 | 1 | 0% | 910 | 1,310 | +44% | 0 | 0 | — |
case-21 | fail→pass | 12,914 | 4,563 | -65% | 1 | 1 | 0% | 1,229 | 1,434 | +17% | 0 | 0 | — |
case-22 | pass→pass | 18,979 | 7,928 | -58% | 1 | 1 | 0% | 2,227 | 1,112 | -50% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +18 percentage points is the difference between those two pass rates over the 22 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.