Repository Initialization is a development Claude Skill built by Diego Rodrigues de Sa e Souza. Best for: Developers starting new projects or onboarding existing repos to Claude Code workflows get standardized infrastructure in minutes..
Initialize new repositories with git, gitignore, CLAUDE.md, justfile, mise, and beads scaffolding.
Scaffold a new or existing repository with standard project infrastructure.
Related skills:
Creates universal scaffolding that works across all project types:
| File | Purpose |
|------|---------|
| .gitignore | Standard ignores + language-specific patterns |
| CLAUDE.md | Project conventions for Claude Code |
| justfile | Build system skeleton |
| .mise.toml | Tool version pinning (empty, ready for mise use) |
| .beads/ | Issue tracking database |
| .envrc.example | Environment variable template |
1. Gather context (language, project type)
2. Create scaffolding
3. Initialize beads
4. Point to language skill for next steps
Before scaffolding, clarify:
Use AskUserQuestion if unclear from context.
# Initialize git if needed
git init
# Create .gitignore with common patterns
Each language skill provides a comprehensive .gitignore in its references/ directory. These include common patterns (.env, .envrc, .DS_Store, Thumbs.db, IDE files) plus language-specific ignores.
Copy from the appropriate language skill:
| Language | Source |
|----------|--------|
| Go | go-pro/references/gitignore → .gitignore |
| Rust | rust-pro/references/gitignore → .gitignore |
| TypeScript | typescript-pro/references/gitignore → .gitignore |
| Python | python-pro/references/gitignore → .gitignore |
For multi-language repos: Start with the primary language's gitignore, then merge patterns from others as needed.
Minimal fallback (if language skill unavailable):
# Environment
.env
.env.local
.env.*.local
.envrc
# OS
.DS_Store
Thumbs.db
# IDE
.idea/
.vscode/
# Build (customize per language)
dist/
build/
target/
node_modules/
__pycache__/
Create project conventions file for Claude Code:
# Project Name - Claude Instructions
## Overview
Brief description of what this project does.
## Development
```bash
just setup # First-time setup
just check # Run all quality gates
Keep it minimal initially. Add conventions as they emerge.
---
## Step 4: Justfile Skeleton
```just
# Project Build System
# Usage: just --list
default:
@just --list
# First-time setup
setup:
mise trust
mise install
@echo "Ready. Run 'just check' to verify."
# Quality gates - add language-specific checks
check:
@echo "Add fmt, lint, test recipes"
# Remove build artifacts
clean:
@echo "Add clean commands"
For language-specific recipes, see:
package-go.just, package-rust.just, etc.)Create empty .mise.toml ready for tool pinning:
[tools]
# Add tools with: mise use <tool>@<version>
# Examples:
# node = "22"
# go = "1.25"
# rust = "1.83"
# just = "latest"
bd init -q
This creates .beads/ directory with issue tracking database.
For teams, consider:
bd init --team - Interactive team workflow setupbd init --stealth - Personal use without affecting collaboratorsCreate .envrc.example (committed) as template for .envrc (gitignored):
# Copy to .envrc and fill in values
# cp .envrc.example .envrc && direnv allow
# Mise integration
if command -v mise &> /dev/null; then
eval "$(mise hook-env -s bash)"
fi
# Project-specific environment
# export DATABASE_URL="postgres://localhost/myapp"
# export API_KEY=""
After scaffolding, point user to language-specific setup:
| Language | Next Step |
|----------|-----------|
| Go | Invoke go-pro skill, run go mod init, copy .golangci.yml |
| Rust | Invoke rust-pro skill, run cargo init, copy clippy.toml |
| TypeScript | Invoke typescript-pro skill, run npm init |
| Multi-language | Follow each lang skill for respective packages |
# Full init sequence
git init
# Create .gitignore, CLAUDE.md, justfile, .mise.toml, .envrc.example
bd init -q
mise use just@latest
# Then follow language skill for specifics
For monorepos, the root gets:
justfile with module imports (see just-pro monorepo patterns).mise.toml with shared tooling.beads/ at rootEach package gets:
justfile/plugin install repository-initialization@diegosouzapwRequires Claude Code CLI.
Developers starting new projects or onboarding existing repos to Claude Code workflows get standardized infrastructure in minutes.
No reviews yet. Be the first to review this skill.