plugins/claude-code-expert/archive/v7.6.0/skills/configuration/SKILL.md
# Claude Code Configuration Complete guide to all configuration files, settings, and directory structure. ## Directory Structure ``` project/ ├── .claude/ │ ├── CLAUDE.md # Project-level instructions (checked into git) │ ├── settings.json # Project-level settings (checked into git) │ ├── settings.local.json # Local overrides (gitignored) │ ├── rules/ # Path-scoped rule files │ ├── skills/ # Reusable workflow definitions │ ├── agents/
npx skillsauth add markus41/claude plugins/claude-code-expert/archive/v7.6.0/skills/configurationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Complete guide to all configuration files, settings, and directory structure.
project/
├── .claude/
│ ├── CLAUDE.md # Project-level instructions (checked into git)
│ ├── settings.json # Project-level settings (checked into git)
│ ├── settings.local.json # Local overrides (gitignored)
│ ├── rules/ # Path-scoped rule files
│ ├── skills/ # Reusable workflow definitions
│ ├── agents/ # Custom agent definitions
│ ├── hooks/ # Hook scripts
│ ├── plugins/ # Installed plugins
│ ├── registry/ # Plugin registry metadata
│ └── tools/ # Custom tools
├── .mcp.json # MCP server configuration
├── CLAUDE.md # Root-level project instructions
└── ...
Claude Code loads instructions from multiple levels (all are additive):
~/.claude/CLAUDE.md — Global user instructions./CLAUDE.md — Root project instructions./.claude/CLAUDE.md — Additional project instructionspath/to/dir/CLAUDE.md — Instructions scoped to that directory# Project Instructions
## Build & Test
- Install: `pnpm install`
- Test: `pnpm test`
- Single test: `pnpm test -- --grep "test name"`
- Lint: `pnpm lint`
## Code Style
- Use TypeScript strict mode
- Prefer async/await over callbacks
- Max function length: 50 lines
## Architecture
- Monorepo with packages in `packages/`
- Shared types in `packages/shared`
- API routes in `src/api/`
## Important Context
- Database uses PostgreSQL with Prisma ORM
- Auth uses Keycloak OIDC
- Deploy target: Kubernetes on AWS EKS
Project and user settings files control Claude Code behavior.
.claude/settings.json (checked into git).claude/settings.local.json (gitignored)~/.claude/settings.json (global){
"permissions": {
"allow": [
"Bash(npm test)",
"Bash(npx tsc --noEmit)",
"Read",
"Glob",
"Grep"
],
"deny": [
"Bash(rm -rf /)",
"Bash(curl *)"
]
},
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "bash .claude/hooks/pre-bash.sh"
}
]
}
],
"PostToolUse": [],
"Notification": [],
"Stop": [],
"SubagentStop": []
},
"env": {
"CUSTOM_VAR": "value"
},
"model": "claude-sonnet-4-6",
"smallFastModel": "claude-haiku-4-5-20251001",
"temperature": 1.0,
"autoMemory": true,
"autoCompact": true,
"contextWindow": {
"compactThreshold": 0.8,
"warningThreshold": 0.9
}
}
{
"permissions": {
"allow": [
"Read",
"Write",
"Edit",
"Glob",
"Grep",
"Bash(npm test)",
"Bash(npm run *)",
"Bash(npx tsc *)",
"Bash(git status)",
"Bash(git diff *)",
"Bash(git log *)",
"Bash(ls *)",
"Bash(cat *)",
"mcp__filesystem__*",
"WebFetch(https://docs.*)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(sudo *)",
"Bash(curl * | bash)",
"Bash(wget * | bash)"
]
}
}
* matches any characters within a single argumentBash(npm *) matches npm test, npm install, etc.mcp__server__* matches all tools from an MCP serverRead, Write, Edit, Glob, Grep, Bash, WebFetch, WebSearch, Agent, TodoWrite, NotebookEditMCP server configuration file at project root.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"],
"env": {}
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {
"DATABASE_URL": "postgresql://user:pass@localhost:5432/db"
}
},
"custom-server": {
"command": "node",
"args": ["./my-mcp-server/index.js"],
"env": {
"API_KEY": "..."
}
}
}
}
Rules are markdown files in .claude/rules/ loaded as project instructions.
---
paths:
- "**/*.ts"
- "**/*.tsx"
---
# TypeScript Rules
- Use strict mode
- Prefer interfaces over types for object shapes
# Git Rules
- Never force push to main
- Use conventional commit format
Local overrides that are NOT checked into git. Same schema as settings.json. Values merge with (and override) settings.json.
{
"permissions": {
"allow": [
"Bash(docker *)"
]
},
"env": {
"DATABASE_URL": "postgresql://localhost:5432/mydb"
}
}
development
Enhanced plan-authoring skill with Pre-Writing context gathering, task metadata, non-TDD templates, Red Flags, telemetry, and an automated plan linter. Use when you have a spec or requirements for a multi-step task, before touching code.
tools
Documentation intelligence engine with graph-based API docs, algorithm library, and drift detection
tools
Ultraplan cloud planning — kick off a plan in the cloud from your terminal, review and revise in the browser, then execute remotely or send back to CLI
tools
--- name: mcp description: Configure MCP servers for Claude Code — stdio vs HTTP, authentication, Tools/Resources/Prompts distinction, channels (CI webhook, mobile relay, Discord bridge, fakechat), and cost of always-loaded tools. Use this skill whenever adding an MCP server, debugging connection issues, choosing between MCP Tools vs Prompts vs Resources, installing channel servers, or managing .mcp.json. Triggers on: "MCP server", "mcp config", "add Obsidian MCP", "install context7", "channels"