A central collection of Claude Code configurations, conventions, and skills for Open Elements projects. Designed to be integrated into any project's .claude/ directory.
When using Claude Code, project-level CLAUDE.md files define conventions, rules, and context that Claude follows. Writing and maintaining these from scratch for every project is tedious and leads to inconsistencies.
This repository solves that by providing a shared base configuration in claude-project-base/:
CLAUDE.md— Base conventions for code quality, security, testing, and PRsconventions/— Detailed convention documents for languages, architecture, and tooling (selectively included per project)conventions/project-specific/— Place for your own project-specific documentationskills/— Reusable Claude Code skills for common tasks
The base CLAUDE.md explains which conventions to include for different project types (Java library, TypeScript frontend, fullstack app, etc.) so that only relevant context is loaded.
Run the setup script from your project root:
curl -sSL https://raw.githubusercontent.com/OpenElementsLabs/claude-base/main/setup.sh | bashThis copies conventions, skills, hooks, MCP config, and settings into .claude/, merges CLAUDE.md using Claude Code, and updates .gitignore. Existing project-specific files are not overwritten. The script is safe to run multiple times.
The resulting project structure:
project-root/
├── CLAUDE.md ← base conventions (adapt to your project)
├── .claude/
│ ├── settings.json ← permissions and security (see conventions/security.md)
│ ├── conventions/ ← convention documents
│ │ ├── (java conventions moved to skills: java-best-practices, modern-java, java-api-design)
│ │ ├── typescript.md
│ │ ├── security.md
│ │ ├── project-specific/ ← your project-specific docs
│ │ └── ...
│ └── skills/ ← auto-discovered by Claude Code
│ ├── spec-create/
│ ├── quality-review/
│ └── ...
├── specs/ ← created by /spec-create
└── ...
After copying, customize the configuration for your project:
- Edit
CLAUDE.mdto select only the conventions relevant to your project type - Add project-specific documentation in
.claude/conventions/project-specific/ - Add project-specific skills in
.claude/skills/ - Configure security rules in
.claude/settings.json(seeconventions/security.md) - Run
/project-analyzeto auto-generate project context documentation
The shared conventions and skills in this repository evolve over time. To pull updates into your project without overwriting your project-specific customizations, use the included update-claude-base skill:
/update-claude-base
This skill fetches the latest version from github.com/OpenElementsLabs/claude-base and updates everything except your conventions/project-specific/ directory.
This project is licensed under the Apache License 2.0 — see LICENSE for details.