CCL wires up CLAUDE.md, skills, subagents, hooks, and config — automatically. Best practices included. Zero maintenance.
Open source·MIT license·Works with Claude Code·Requires Anthropic API key
Run npx @sushilkulkarni1389/ccl-mcp in your terminal. CCL registers itself as an MCP server in your Claude Code config. Takes 4 seconds.
Type ccl in Claude Code. Choose Auto-Detect or answer 5 quick questions. CCL reads your codebase and builds a complete plan.
CCL shows you the exact content of every file before writing anything. Approve once. Everything scaffolds in one shot.
A staff-engineer onboarding doc for your codebase. Hard limit: 200 lines. Every line must earn its place.
Lazy-loaded instructions for recurring workflows. Deploy, migrate, publish — each with precise auto-activation triggers.
Right model, right tools, right scope. Haiku for bulk reads. Sonnet for implementation. Opus for architecture decisions.
Security hooks on every Bash command and Write operation. Dangerous commands blocked at the permission layer.
30 curated best practices. Self-updates weekly. You approve every change before it's written.
Most CLAUDE.md files bloat past 800 lines and lose their usefulness. CCL enforces a hard 200-line limit and structures the file around 7 questions every senior engineer needs answered.
# auth-service ## What is this? REST API for user authentication and session management. Used by the mobile app (iOS + Android) and the web dashboard. Postgres for persistence, Redis for session store, deployed on Railway. ## Stack - Node.js 20, TypeScript 5.4 - Fastify 4, Zod, Prisma 5 - PostgreSQL 15, Redis 7 - Vitest, Supertest ## Where things live src/routes/ HTTP handlers — one file per resource src/services/ Business logic — no DB calls here src/db/ Prisma client + migration scripts src/lib/ Shared utilities (crypto, email, tokens) ## How to run it npm run dev # start dev server (port 3001) npm test # vitest unit + integration npm run db:migrate # run pending migrations npm run lint # eslint + prettier ## Coding rules - No default exports — named only - Services never import from routes - All env vars via src/lib/env.ts (Zod-validated at startup) - Never throw raw errors — use AppError with a status code ## Common pitfalls - Prisma.$transaction is slow — avoid for reads - Redis sessions expire in 7 days — don't assume they persist ## Never do - Never log request bodies — PII risk - Never call external APIs in route handlers — use a service
Every 7 days, CCL offers to refresh your practices file against the latest Claude Code documentation and community discoveries. You review every change. Nothing is written without your approval.
CCL uses the Anthropic API to generate AI-powered skill content and process plan changes in plain English. Your key is stored only in your local Claude Code config file — it never touches your project directory or leaves your machine.
# Store your key $ npx @sushilkulkarni1389/ccl-mcp --set-key sk-ant-api03-... ✓ API key saved to ~/.claude/claude.json (chmod 600) Restart Claude Code to apply. # Verify it's working $ npx @sushilkulkarni1389/ccl-mcp --check-key ✓ Key valid — claude-sonnet-4-6 reachable # Rotate to a new key $ npx @sushilkulkarni1389/ccl-mcp --update-key sk-ant-api03-... ✓ API key updated. # Remove it entirely $ npx @sushilkulkarni1389/ccl-mcp --remove-key ✓ API key removed from config.
Stored at ~/.claude/claude.json on macOS · %APPDATA%\Claude\claude.json on Windows · ~/.config/Claude/claude.json on Linux
"deny": [ "Bash(rm -rf:*)", "Bash(curl:*)", "Bash(wget:*)" ]
Destructive and network commands blocked at the permission layer before any hook runs.
"PreToolUse": [{ "matcher": "Bash", "hooks": [{ "type": "command", "command": "ccl-validate-bash" }] }], "PostToolUse": [{ "matcher": "Write", "hooks": [{ "type": "command", "command": "ccl-audit-write" }] }]
Every shell command validated before execution. Every file write logged after.
CCL asks for file-write permission once. Grant it once — no further interruptions. Permission never persists across sessions.
CCL tracks both durable aliases and dated snapshot IDs so you can pin to a specific model version when reproducibility matters.
All writes are atomic. Resuming re-executes the full plan — already-written files are overwritten with identical content. State is always consistent.
CCL is built in the open. Two packages, a clear contribution guide, and a community that ships.
MIT License · Docs and public release coming soon
ccl/ ├── packages/ │ ├── core/ ← Plan generation, file writing, practices │ └── mcp/ ← MCP server + npx setup ├── CONTRIBUTING.md ├── LICENSE └── README.md
Requires Node.js 18+, Claude Code, and an Anthropic API key.