From project-setup
Set up or audit Claude Code project memory the right way — a lean CLAUDE.md plus offloaded docs, path-scoped .claude/rules/, and skills — so instructions stay high-signal instead of bloating context and getting ignored. Use this whenever setting up a repo for Claude Code, creating/scaffolding a CLAUDE.md, adding or organizing .claude/rules/, deciding how to structure project instructions, slimming a CLAUDE.md that has grown too long, or deciding which project-instruction content to move out of CLAUDE.md so it loads only when Claude needs it. Also covers monorepos (per-package CLAUDE.md, where to launch Claude, cross-package access). Reach for it even when the user just says "set up this project for Claude", "write a CLAUDE.md", "my CLAUDE.md is too long/getting ignored", or "how should I organize project instructions" — don't answer from memory, consult this skill and its references. NOT for human-facing docs (README, design docs, API docs), source-code comments/docstrings, or linter/formatter/ tooling setup — only files that configure how Claude Code reads a project (CLAUDE.md, .claude/rules/, skills).
How this skill is triggered — by the user, by Claude, or both
Slash command
/project-setup:claude-md-setupThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Claude Code loads `CLAUDE.md` into context at the **start of every session, in full,
Claude Code loads CLAUDE.md into context at the start of every session, in full,
regardless of length. Context is the scarce resource, and adherence drops as it
fills — so a bloated CLAUDE.md doesn't just cost tokens, it makes Claude follow
instructions less reliably. The whole game: a small, high-signal CLAUDE.md,
with everything heavier offloaded to mechanisms that load only when relevant.
Verified against the official docs; primary sources are listed at the bottom of each reference file. Re-fetch if details seem stale.
references/new-project-setup-playbook.md (step-by-step + copy-paste templates).CLAUDE.md, too long / getting ignored → audit and slim. See the
Audit workflow below.references/monorepos.md early; the monorepo-specific
mechanics (especially where you launch Claude) change the whole approach.Apply these whether setting up or auditing:
CLAUDE.md under ~200 lines. For every line ask: "would removing this
cause Claude to make a mistake?" If not, cut it.references/offloading-to-md-files.md):
.claude/rules/*.md with a paths: glob (loads
only when Claude touches matching files)..claude/skills/*/SKILL.md).docs/*.md that CLAUDE.md points to in prose
(loaded on demand).@path imports for a canonical file you accept loading every session.@-imports to "save context." Imported files expand into context
at launch — they're for organization/reuse, not token savings. This is the most
common mistake; prefer prose pointers to docs/*.md for heavy content.npm test before committing" beats "test your
changes." Use headers + bullets. Add IMPORTANT:/YOU MUST: sparingly, only on
genuinely critical rules.IMPORTANT: always run X line from CLAUDE.md, freeing context. See the "Hooks"
section in references/offloading-to-md-files.md.Full version with templates: references/new-project-setup-playbook.md.
/init, or hand-author. Either way, prune to essentials.CLAUDE.md: what it is, build/test commands, layout,
conventions (differences from defaults), a "Docs (read on demand)" section with
prose pointers, and — if useful — a "Start here each session" pointer to a living
roadmap/status doc.docs/*.md, referenced in prose (not @-imported)..claude/rules/*.md (with paths: globs) for area/file-type
reminders. Keep them terse and point them at the docs/ file as the single source
of truth so the two don't drift./memory to confirm what actually loaded./memory to see every loaded file (root, nested, .claude/rules/).docs, any @-imports mistaken for context savings, vague or conflicting
rules.docs/*.md (prose
pointer), area rules to .claude/rules/*.md (paths: glob), procedures to skills.
Cut anything self-evident or inferable outright./memory; confirm the root file is now lean.references/claude-md-best-practices.md — what CLAUDE.md is, all file
locations + load order, include/exclude table, sizing/structure/specificity,
pitfalls, /compact behavior, debugging what loaded.references/offloading-to-md-files.md — the four offloading mechanisms
(@-imports vs .claude/rules/ vs skills vs prose-linked docs/), a decision
matrix, and the @-imports-don't-save-context caveat. Read when deciding where
content should go.references/new-project-setup-playbook.md — step-by-step recipe + copy-paste
templates (lean CLAUDE.md, path-scoped rule, living roadmap) + checklist. Read when
scaffolding a new project.references/monorepos.md — multi-package specifics: where you launch Claude
decides what loads, per-package CLAUDE.md layering, the settings-not-inherited
gotcha, cross-package access, per-package skills, read-reduction. Read when the repo
has multiple packages. (The other three assume a single package.)Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies a firm's KYC/AML rules grid to parsed onboarding records: assigns risk rating, checks required documents, outputs rule outcomes with citations, and routes for escalation.
Removes signs of AI-generated writing from text to make it sound natural and human. Detects and fixes patterns like AI vocabulary, passive voice, and filler phrases.
npx claudepluginhub nebraskacoder/nebraskacoder-claude-plugins --plugin project-setup