AI Skill StudioAI Skill Studio
Skill Library
Presets:

Target Standard & File Format

AI Agent Rules & Skills
Context Shields & Privacy (Ignore Files)
Integrations & Machine Documentation
AI Governance & Multi-Agent Planning Suite

.claudeignore Shield

Define boundary exclusions for Claude Code CLI to guard credentials and reduce prompt bloat:

Full Protection
Tokens Saved / Turn
~190k tokens
Secret Leak Guards
2 Active Guards
Shield Categories
8 of 8 Enabled

Indexing Boundary Categories

Toggle specific categories to mask secrets and exclude heavy artifacts:

Custom Rules & Negate Exceptions

Append repo-specific file globs or re-include allowed files with negation patterns (!path):

Frontend · Claude Code (via permissions.deny)

Next.js 16 App Router .claudeignore

A .claudeignore for Next.js 16 App Router: the paths Claude Code should stay out of, with matching permissions.deny rules.

Path
.claudeignore
Loads
Pattern list
Format
gitignore syntax
Used by
Claude Code (via permissions.deny)
All .claudeignore presets and how .claudeignore works

What this file tells the agent

Claude Code reads files while it works. This .claudeignore keeps the list of Next.js 16 App Router paths it should stay out of (build output, large binaries, logs and secrets). Copy the sensitive ones into permissions.deny in .claude/settings.json, which Claude Code enforces.

  • Enforce React Server Components (RSC) by default; restrict 'use client' strictly to interactive leaf components.
  • Mutate state exclusively via Server Actions with Zod safeParse validation.
  • Await the async request APIs (cookies(), headers(), params, searchParams); Next.js 16 removed the sync forms.
  • Avoid pages/ directory conventions or legacy getServerSideProps.
  • Colocate loading.tsx and error.tsx for dynamic route segments.

Code to avoid, and what to write instead

The rule steers the agent away from the left and toward the right.

avoid
"use client";
export function SaveItem() {
  const submit = async (e: any) => {
    e.preventDefault();
    await fetch("/api/items", { method: "POST", body: JSON.stringify({ title: "Test" }) });
  };
  return <button onClick={submit}>Save</button>;
}
write instead
"use server";
import { z } from "zod";
import { db } from "@/lib/db";

const Schema = z.object({ title: z.string().min(3) });

export async function createItem(formData: FormData) {
  const parsed = Schema.safeParse(Object.fromEntries(formData));
  if (!parsed.success) return { ok: false, errors: parsed.error.flatten().fieldErrors };
  await db.item.create({ data: parsed.data });
  return { ok: true };
}

Install it in one command

  1. 01

    Go to your project root

    The file goes at .claudeignore, relative to the root.

  2. 02

    Download the file

    Run the command on the right. It downloads this preset and writes the file.

  3. 03

    Make sure it gets used

    Claude Code does not enforce .claudeignore by itself. Copy the sensitive paths into permissions.deny in .claude/settings.json, which it does enforce.

$ curl -fsSL "https://www.devscratchpad.tech/api/raw/claudeignore/nextjs-16" -o ".claudeignore"

writes .claudeignore

path

.claudeignore

To write the file from your own code instead, use Read your code or Convert Legacy Rules in the editor above.

Questions

Does Claude Code honor .claudeignore?
Not by itself. Claude Code enforces permission rules, so copy the sensitive paths into permissions.deny in .claude/settings.json, for example Read(./.env). Keep .claudeignore in the repository root as the reviewable list.
What should I put in .claudeignore?
Exclude large build caches, minified bundles, lockfiles, and environment files containing sensitive credentials.