Reading Archive
← 返回文章列表
darkzodchi @zodchiii · 2026-05-06

The Claude Code Starter Kit for New Projects (All Config Files Included)

The average developer spends 2-3 hours configuring Claude Code per project. This kit does it in 5 minutes.

Every new project starts with no CLAUDE.md, no settings.json, no skills, no deny rules. Claude doesn't know your stack, asks permission for every command, and reads your .env without asking.

One folder with 4 config files and 9 slash commands fixes all of this. Drop it into any project and Claude Code is fully configured before your first prompt.

Here's the full kit 👇

Before we dive in, I share daily notes on AI & vibe coding in my Telegram channel: https://t.me/zodchixquant🧠

![Article image](/assets/2026-05-06-the-claude-code-starter-kit-for-new-projects-(all-config-fil-433db4cab6/01.jpg)

What's inside

your-project/ ├── CLAUDE.md → project context + rules ├── .gitignore → secrets + AI tool protection ├── .claude/ │ ├── settings.json → permissions + hooks │ ├── settings.local.json → personal overrides (gitignored) │ └── skills/ │ ├── review/SKILL.md → /review │ ├── test/SKILL.md → /test │ ├── commit/SKILL.md → /commit │ ├── pr/SKILL.md → /pr │ ├── debug/SKILL.md → /debug │ ├── refactor/SKILL.md → /refactor │ ├── docs/SKILL.md → /docs │ ├── deploy-check/SKILL.md → /deploy-check │ └── security/SKILL.md → /security

5 minutes to set up. Every session after that starts with full context, proper permissions, and 9 ready-to-use slash commands.

File 1: CLAUDE.md

This is the first file Claude reads. Stack, commands, architecture, rules. Under 60 lines.

CLAUDE.md

Project

[One line: what this project does]

Stack

[Framework, language, database, deployment target]

Commands

  • Dev: pnpm dev
  • Build: pnpm build
  • Test single: pnpm vitest run src/lib/__tests__/[file]
  • Test all: pnpm test
  • Lint: pnpm lint --fix
  • Type check: npx tsc --noEmit

Architecture

  • src/app/ → pages and API routes
  • src/components/ → stateless UI components
  • src/lib/services/ → business logic and data fetching
  • src/lib/hooks/ → custom React hooks
  • src/lib/utils/ → shared helpers
  • src/lib/types/ → TypeScript types

Rules

  • NEVER commit .env files or secrets
  • All database queries through src/lib/services/, never in components
  • All async calls must use try/catch
  • Prefix commits: feat:, fix:, docs:, refactor:, test:, chore:
  • IMPORTANT: run type check after every code change
  • No console.log in production code

Workflow

  • Ask before making architectural decisions
  • Make minimal changes, don't refactor unrelated code
  • Run tests after every change, fix failures before moving on
  • Create separate commits per logical change
  • When unsure between two approaches, explain both and let me choose

Out of scope

  • migrations/ → managed by ORM CLI, don't create manually
  • public/assets/ → static files, don't modify
  • .github/workflows/ → CI/CD, don't touch without asking

Replace the brackets with your project's details. Delete sections that don't apply.

File 2: settings.json

Permissions + hooks. Claude stops asking permission for safe commands and stays blocked from dangerous ones.

json { "permissions": { "allow": [ "Read", "Glob", "Grep", "LS", "Edit", "MultiEdit", "Write(src/)", "Write(tests/)", "Write(docs/)", "Bash(npm run )", "Bash(pnpm )", "Bash(npm install )", "Bash(npm test )", "Bash(npx tsc )", "Bash(npx vitest )", "Bash(npx prettier )", "Bash(npx eslint )", "Bash(git status)", "Bash(git diff )", "Bash(git log )", "Bash(git add )", "Bash(git commit )", "Bash(git checkout )", "Bash(git branch )", "Bash(cat )", "Bash(head )", "Bash(tail )", "Bash(wc )", "Bash(find )", "Bash(echo )" ], "deny": [ "Read(/.env)", "Read(/.dev.vars)", "Read(/*.pem)", "Read(/.key)", "Read(/secrets/)", "Read(/credentials/)", "Read(/.aws/)", "Read(/.ssh/)", "Read(/.npmrc)", "Write(/.env)", "Write(/secrets/)", "Write(/.ssh/)", "Write(.github/workflows/)", "Write(package-lock.json)", "Bash(rm -rf )", "Bash(sudo )", "Bash(git push )", "Bash(git merge )", "Bash(git rebase )", "Bash(npm publish )", "Bash(docker )", "Bash(curl * | sh)", "Bash(wget )", "Bash(chmod )" ], "defaultMode": "acceptEdits" }, "hooks": { "PostToolUse": [ { "matcher": "Write(.ts)", "hooks": [ { "type": "command", "command": "npx prettier --write $file" } ] }, { "matcher": "Write(.tsx)", "hooks": [ { "type": "command", "command": "npx prettier --write $file" } ] } ] } }

File 3: .gitignore

Protects secrets, AI tool configs, and build artifacts from ever reaching git.

Dependencies

node_modules/ .pnp.*

Build

dist/ build/ .next/ out/

Environment

.env .env.* !.env.example

AI tools

.claude/settings.local.json .cursor/ .aider* .continue/ .cody/

Secrets & credentials

.pem .key .p12 credentials.json service-account.json .npmrc .aws/ .ssh/ .docker/config.json

IDE

.vscode/settings.json .idea/

OS

.DS_Store Thumbs.db

Logs & coverage

*.log coverage/ .nyc_output/

Terraform

.terraform/ .tfstate .tfstate.backup

Note: .claude/settings.local.json is gitignored (personal overrides), but .claude/settings.json and .claude/skills/ are committed so your team shares them.

File 4: The 9 skills

Each skill is a SKILL.md file inside .claude/skills/[name]/.

Here are the 3 most-used ones.

The other 6 are in the full kit download at the end.

/review


name: review description: Review code for bugs, security issues, and style violations. Use when reviewing PRs, checking code quality, or when user mentions "review", "PR", "code quality". allowed-tools: Read, Grep, Glob, Bash(git diff *)


Review the current diff or specified files for:

  1. Bugs: logic errors, null handling, race conditions
  2. Security: hardcoded secrets, SQL injection, XSS
  3. Performance: N+1 queries, unnecessary re-renders
  4. Style: naming, dead code, TODOs

Output as checklist grouped by severity: CRITICAL / WARNING / INFO End with summary: "X critical, Y warnings, Z info"

/commit


name: commit description: Create structured git commits from current changes. Use when user says "commit", "save changes", or after finishing a feature. allowed-tools: Read, Bash(git *)


  1. Run git status and git diff to see all changes
  2. Group related changes into logical units
  3. For each unit, create a commit:

type(scope): description under 50 chars

  • What changed
  • Why (if not obvious)
  1. Stage and commit each unit separately
  2. Show summary: "Created N commits: [titles]"

Types: feat, fix, refactor, docs, test, chore

/deploy-check


name: deploy-check description: Run pre-deployment checks. Use when user mentions "deploy", "ship", "release", or "production". allowed-tools: Read, Bash(npm ), Bash(npx tsc ), Bash(git *), Grep


Run in order, stop at first failure:

  1. npx tsc --noEmit — types pass
  2. npm test — tests pass
  3. npm run lint — no lint errors
  4. npm run build — build succeeds
  5. grep for console.log in src/
  6. Check for .env references in committed code
  7. git status — no uncommitted changes

Output: ✅ or ❌ per check Summary: "Ready to deploy" or "N issues to fix first"

How to install

Option A: New project

mkdir my-project && cd my-project git init

Create CLAUDE.md (paste the template above)

Create .claude/settings.json (paste above)

Create .gitignore (paste above)

Copy skills into .claude/skills/

git add -A git commit -m "chore: add Claude Code starter kit"

Option B: Existing project

cd your-project

Add CLAUDE.md to root (fill in your details)

Merge settings.json into existing .claude/settings.json

Update .gitignore with missing rules

Copy skills folder

git add -A git commit -m "chore: add Claude Code config files"

Option C: Global (every project)

Copy settings.json to ~/.claude/settings.json

Copy skills to ~/.claude/skills/

CLAUDE.md stays per-project (different stack each time)

The workflow after setup

Your first session in a new project now looks like this:

Before the kit: 1. Open Claude Code 2. Type your stack, commands, and rules manually 3. Click "Allow" 30 times for basic operations 4. Realize .env was read 5 minutes ago 5. Try to remember your commit format 6. Give up and type prompts from scratch

After the kit: 1. Open Claude Code 2. Claude already knows your stack, commands, and rules 3. Permission prompts: 0-3 per session 4. .env is blocked at system level 5. /commit, /review, /deploy-check ready to go 6. Start working

What to customize first

Don't use these files as-is forever. They're a starting point. After your first week:

  • CLAUDE.md — add rules every time Claude makes a mistake. "Update CLAUDE.md so this doesn't happen again" is the most powerful prompt in Claude Code

  • settings.json — adjust Write scopes for your folder structure, add Bash rules for your specific tools

  • Skills — modify /review to check for patterns specific to your codebase

  • .gitignore — add entries for any new tools or credentials your project uses

The kit compounds over time. By month three, your CLAUDE.md has captured every mistake Claude has made in your project and prevents all of them automatically.

Thanks for reading!

I share daily notes on AI, finance, and vibe coding in my Telegram channel: https://t.me/zodchixquant

![Article image](/assets/2026-05-06-the-claude-code-starter-kit-for-new-projects-(all-config-fil-433db4cab6/02.jpg)

查看原文 ↗