<p align="center">
<img src="logo.svg" width="140" alt="cc-praxis logo"/>
</p>
cc-praxis
A curated collection of Claude Code skills for professional software development — with deep Java/Quarkus support and universal principles that apply to any project.
Installation
Quick Start — Claude Code Marketplace
# Add this marketplace to Claude Code
/plugin marketplace add github.com/mdproctor/cc-praxis
# Run the one-time bootstrap wizard
/plugin install install-skills
/install-skills
The /install-skills wizard:
- Configures a session-start hook for automatic CLAUDE.md detection
- Lets you choose what to install (all skills, Java/Quarkus bundle, foundation principles, or individual)
- Automatically resolves and installs dependencies
- Verifies the setup
After the wizard completes, close that conversation — skills are then available in all future sessions.
Dependency resolution note: The official Claude Code marketplace doesn't yet support automatic dependency resolution (Issue #9444). The /install-skills wizard handles this for you. If you prefer installing manually, use the scripts/claude-skill installer below.
To uninstall:
/uninstall-skills
The wizard checks for reverse dependencies and confirms before removing anything.
Web UI — scripts/web_installer.py
If you have the repository cloned locally, the web installer gives you a visual browser for managing skills:
python3 scripts/web_installer.py # opens http://localhost:8765 automatically
python3 scripts/web_installer.py --port 8766 --no-browser
Or after the plugin is installed: just run cc-praxis in your terminal.
Manual Installer — scripts/claude-skill
Clone the repository and use the bundled installer directly. This gives you automatic dependency resolution without the wizard, plus the full local development workflow described in Contributing & Local Development.
git clone https://github.com/mdproctor/cc-praxis.git ~/cc-praxis
cd ~/cc-praxis
# Install individual skills (auto-resolves dependencies)
scripts/claude-skill install java-dev
scripts/claude-skill install quarkus-flow-testing # installs java-dev + quarkus-flow-dev automatically
# Install all skills
scripts/claude-skill install-all -y
# List what's installed
scripts/claude-skill list
# Uninstall
scripts/claude-skill uninstall java-dev
scripts/claude-skill uninstall-all -y
Installed skills location: ~/.claude/skills/
Overview
Each skill encodes battle-tested best practices, common pitfalls, and project-specific conventions so Claude Code gives consistent, production-ready guidance without re-explaining the same things every session. See Key Features for a full breakdown.
Getting Started: Project Type Setup
IMPORTANT: Skills route differently based on project type. First-time commit in any repository will guide you through setup interactively, or you can set it up manually.
Project Types
| Type | When to Use | Documentation | Commit Skill |
|---|
| skills | Claude Code skill repositories (has */SKILL.md files) | README.md + CLAUDE.md (auto-synced) | git-commit |
| java | Java/Maven/Gradle projects | DESIGN.md (required) + CLAUDE.md (optional, auto-synced) | java-git-commit |
| blog | GitHub Pages / Jekyll blogs (date-prefixed posts) | CLAUDE.md optional (auto-synced) | git-commit |
| custom | Working groups, research, docs, advocacy | User-configured primary document (auto-synced) | custom-git-commit |
| generic | Everything else | CLAUDE.md optional (auto-synced) | git-commit |
📖 Complete Project Type Documentation: docs/PROJECT-TYPES.md — Detailed taxonomy, routing logic, decision matrix, and examples for all project types. See docs/PROJECT-TYPES.md for why explicit declaration is used over auto-detection.
Quick Setup
Option 1: Automatic (Recommended)
Just try to commit. If CLAUDE.md is missing or has no project type, git-commit will prompt you to choose one and create it for you:
git add <your files>
# Then say "commit" to Claude - it will guide you through setup
Option 2: Manual
Create CLAUDE.md in your repository root:
For Skills Repositories:
## Project Type
**Type:** skills
For Java Projects:
## Project Type
**Type:** java
Then create docs/DESIGN.md (java-git-commit will block without it).
For Custom Projects (working groups, research, docs, etc.):
## Project Type
**Type:** custom
**Primary Document:** docs/vision.md
**Sync Strategy:** bidirectional-consistency