with one click
initialize-project
// Project initialization and setup workflow. Use when starting a new project, setting up AI-assisted development environment, or bootstrapping an existing codebase with Samuel framework structure.
// Project initialization and setup workflow. Use when starting a new project, setting up AI-assisted development environment, or bootstrapping an existing codebase with Samuel framework structure.
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | initialize-project |
| description | Project initialization and setup workflow. Use when starting a new project, setting up AI-assisted development environment, or bootstrapping an existing codebase with Samuel framework structure. |
| license | MIT |
| metadata | {"author":"samuel","version":"1.0","category":"workflow"} |
Set up new projects or adopt CLAUDE.md system in existing projects.
This skill handles two scenarios:
Both paths result in a fully configured .claude/ directory with project-specific context.
Ask user these questions to configure the project:
1. Tech Stack
2. Architecture
3. Testing
4. Deployment
5. Database
6. Additional Requirements
1. CLAUDE.md
Document all tech stack decisions and architecture.
2. Directory Structure Create language-appropriate structure (see references/process.md for templates).
3. Configuration Files Generate:
4. Essential Files
.gitignore (language-specific).env.example (with secure defaults)README.md (setup instructions)Automatically scan and analyze:
1. Tech Stack Detection
# Check package managers
ls package.json requirements.txt go.mod Cargo.toml
# Identify language
find . -name "*.ts" -o -name "*.py" -o -name "*.go" -o -name "*.rs"
2. Directory Structure Examination
3. Code Pattern Analysis
# Naming conventions
grep -r "function\|class\|interface" src/
# Testing patterns
head -20 tests/*.test.ts
# Database usage
grep -r "SELECT\|INSERT\|UPDATE" src/
4. Git History Review
# Commit message style
git log --pretty=format:"%s" -10
# Branching strategy
git branch -a
5. Existing Tooling Check
1. CLAUDE.md
Document discovered tech stack and observed patterns.
Example:
# Project: ExistingApp
## Discovered Tech Stack
- **Language**: TypeScript 5.1
- **Framework**: Next.js 14 (App Router)
- **Database**: PostgreSQL with Prisma ORM
- **Testing**: Jest + React Testing Library
- **Styling**: Tailwind CSS
- **Deployment**: Vercel
## Observed Patterns
- API routes in `app/api/`
- Components use `use client` directive
- Server actions for mutations
- Zod for API validation
- Conventional commits (mostly followed)
## Gaps Identified
- Test coverage: 45% (target: >60%)
- No pre-commit hooks
- ESLint config basic (missing recommended rules)
- Some files exceed 300 lines (needs refactoring)
- Missing .env.example
2. CLAUDE.md
Extract coding patterns from existing codebase.
Example:
# Patterns
## API Error Handling
All API routes use this pattern:
\`\`\`typescript
try {
const data = await validateInput(req.body);
const result = await service.process(data);
return NextResponse.json(result);
} catch (error) {
return handleAPIError(error);
}
\`\`\`
## Database Queries
Always use Prisma with error handling:
\`\`\`typescript
const user = await prisma.user.findUnique({
where: { id }
}).catch(handlePrismaError);
\`\`\`
3. Gap Analysis & Recommendations
Propose improvements:
Confirm with user:
Then proceed to:
.claude/New Projects:
# Install dependencies
npm install # or pip install -r requirements.txt
# Run tests (should pass even if empty)
npm test
# Start dev server
npm run dev
# Check linting
npm run lint
Existing Projects:
# Verify .claude/ structure created
ls .claude/
# Read project documentation
cat CLAUDE.md
# Review proposed improvements
cat CLAUDE.md
Review CLAUDE.md
Review CLAUDE.md (if existing project)
Prioritize Improvements (if existing project)
Start Development
.claude/Node.js:
rm -rf node_modules package-lock.json
npm cache clean --force
npm install
Python:
python -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
Go:
go clean -modcache
go mod download
Rust:
cargo clean
cargo build
Use version managers:
# Node.js
nvm install 20 && nvm use 20
# Python
pyenv install 3.11 && pyenv local 3.11
# Go
gvm install go1.21 && gvm use go1.21
# Rust
rustup update stable
Manually specify in CLAUDE.md:
# Project: MyApp
**Tech Stack**: TypeScript + React + Express
**Database**: PostgreSQL
**Testing**: Jest
Then: "I've updated project.md. Please load the appropriate language guide."
Edit .claude/skills/initialize-project/SKILL.md to customize:
Create .claude/company-standards.md:
# Company Standards
## Required Tools
- ESLint with company config
- Prettier with company config
- Husky for pre-commit hooks
## Required Files
- SECURITY.md
- CONTRIBUTING.md
- LICENSE (MIT)
## Deployment
- All projects deploy to AWS
- Use Terraform for infrastructure
- CI/CD via GitHub Actions
AI will reference this during initialization.
CLAUDE.md created with accurate tech stackCLAUDE.md created (if existing project).gitignore includes language-specific entries.env.example created with secure defaultsFor detailed templates and examples, see:
references/process.md - Full directory structures and configuration templates.claude/skills/{language}-guide/SKILL.md - Language-specific patternsRemember: Initialization is a one-time setup. The .claude/ directory grows organically as the project evolves. Don't over-document upfront - let patterns emerge naturally.