本文へ移動
cccskills
無料GitHub で公開

zod-validation

Use this skill when validating API input, environment variables, form data, or DB responses at runtime boundaries. Trigger words: バリデーション, 入力検証, Zod, スキーマ, env 検証, 型強制, parse, safeParse, ランタイム境界.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md1.9 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Zod バリデーション

いつ使うか

  • API / Server Action の入力を受け取るとき。
  • 環境変数(process.env)を読むとき。
  • 外部 API や DB の応答を信用する前。

やること

  • ランタイム境界(入力・env・外部応答)に Zod スキーマを置く。
  • 失敗を例外にするか値で返すかを使い分ける(parse vs safeParse)。
  • env は起動時に 1 度だけ検証し、型付き設定オブジェクトとして公開する。
  • Zod の infer で TypeScript 型を導出し、二重定義を避ける。

守るルール

  • ✅ 入力・env・DB 応答は必ず Zod を通す。
  • ✅ ユーザー向け入力は safeParse でエラーを丁寧に返す。
  • ✅ env スキーマは server-only 側に置き、クライアント露出を防ぐ。
  • ❌ as キャストで検証を飛ばさない(unknown → Zod が正解)。
  • ❌ 同じ形を Zod と interface で二重管理しない(z.infer を使う)。

典型例(コード片)

// lib/env.ts — 起動時に env を検証
import { z } from 'zod';

const EnvSchema = z.object({
  MONGODB_URI: z.string().url(),
  AUTH_SECRET: z.string().min(32),
  NODE_ENV: z.enum(['development', 'test', 'production']),
});

export const env = EnvSchema.parse(process.env); // 失敗時は起動で落とす
export type Env = z.infer<typeof EnvSchema>;

アンチパターン

  • 入力を as MyType でキャストして検証した気になる。
  • env を直接 process.env.X! で参照し、欠落に実行時まで気づかない。
  • 型と検証ロジックがズレて、通るはずの値が弾かれる。

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

api-routes-hardening

無料日本語概要

Use this skill when creating or reviewing Next.js Route Handlers (app/api), adding rate limiting, input validation, or auth to API endpoints. Trigger words: API ルート, Route Handler, app/api, エンドポイント, レート制限, 入力検証, CORS, ヘッダー, 認証付き API, hardening.

Akira-Papa/claude-code-nextjs-mongo-template-162026年5月24日 更新

atlas-search-vector

無料日本語概要

Use this skill when implementing full-text search, autocomplete, or vector/semantic search and RAG with MongoDB Atlas. Trigger words: 全文検索, あいまい検索, オートコンプリート, ベクトル検索, セマンティック検索, 類似検索, Atlas Search, $search, $vectorSearch, RAG, embedding.

Akira-Papa/claude-code-nextjs-mongo-template-162026年5月24日 更新

auth-better-auth

無料日本語概要

Use this skill when implementing sign-in, sessions, authorization checks, or protecting routes and Server Actions. Trigger words: 認証, ログイン, サインイン, セッション, 認可, 権限チェック, Better Auth, Auth.js, 保護, ミドルウェア, getSession.

Akira-Papa/claude-code-nextjs-mongo-template-162026年5月24日 更新

bootstrap

無料日本語概要

Use this skill when starting a new session, opening this project for the first time, or when you need to recall the project's tech stack, hard rules, and which other skills exist. Trigger words: セッション開始, このプロジェクト, 全体像, どのスキル, 何から, getting started, overview.

Akira-Papa/claude-code-nextjs-mongo-template-162026年5月24日 更新

ci-github-actions

無料日本語概要

Use this skill when setting up or modifying CI pipelines, GitHub Actions workflows, or automated checks (lint, typecheck, test, build) for this project. Trigger words: CI, GitHub Actions, ワークフロー, パイプライン, 自動テスト, lint チェック, typecheck, ビルド検証, .github/workflows.

Akira-Papa/claude-code-nextjs-mongo-template-162026年5月24日 更新

e2e-playwright

無料日本語概要

Use this skill when writing end-to-end tests, browser automation, or verifying user flows in a real browser. Trigger words: E2E, Playwright, ブラウザテスト, ユーザーフロー, 結合テスト, シナリオテスト, ログインテスト, getByRole, expect.

Akira-Papa/claude-code-nextjs-mongo-template-162026年5月24日 更新

Akira-Papa のスキルをすべて見る

このスキルの問題を報告する