agentleFS
aleolidevaleolidev/claude-react-kit/.claude/skills/setup/SKILL.md

setup

Skill2 starsChanged 9 months agoMITView on GitHub

Analyze the current project and install claude-react-kit customized for its actual stack, structure, and conventions

191 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use add-voice-transcription, add-discord and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • juancruzmunozalbeloSkill

    add-voice-transcription

    Add voice message transcription to NanoClaw using OpenAI's Whisper API. Automatically transcribes WhatsApp voice notes so the agent can read and respond to them.

    Also in 5 projects that use this

  • MicrosoftSkill

    add-discord

    Add Discord bot channel integration via Chat SDK.

    Also in 11 projects that use this

  • MicrosoftSkill

    add-slack

    Add Slack channel integration via Chat SDK.

    Also in 11 projects that use this

  • juancruzmunozalbeloSkill

    add-telegram-swarm

    Add Agent Swarm (Teams) support to Telegram. Each subagent gets its own bot identity in the group. Requires Telegram channel to be set up first (use /add-telegram). Triggers on "agent swarm", "agent teams telegram", "telegram swarm", "bot pool".

    Also in 7 projects that use this

  • +8 more from microsoft

The file

Show its rules and text

We split this skill into the rules it gives an agent

35 rules. 0 are common, 25 are distinctive, and 10 are very specific to this project.

  • 0

    Common

    Most of the 171 edited versions we read keep these.

  • 25

    Distinctive

    This author's own choices. Worth a look.

  • 10

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    After analysis, present your findings to the user in a concise summary:

    line 33
  2. Distinctive:

    If the architecture doesn't clearly match the 5-layer model, ask how they want to map their directories

    line 48
  3. Distinctive:

    If there are conventions you noticed but aren't sure if they're intentional

    line 49
  4. Distinctive:

    If there's an existing CLAUDE.md, ask what to keep vs replace

    line 50
  5. Distinctive:

    Do NOT ask about things you already know from reading the code.

    line 53
  6. Distinctive:

    If they had an existing CLAUDE.md, merge in any project-specific rules that don't conflict

    line 64
  7. Distinctive:

    All hooks wired up with correct paths

    line 71
  8. Distinctive:

    Use their real directory names (not generic ones)

    line 76
  9. Very specific:

    If they use app/ (Next.js/Expo), reference that as the route layer

    line 77
  10. Very specific:

    If they use pages/, screens/, or something else, adapt accordingly

    line 78
  11. Very specific:

    If they have a lib/ or utils/ directory, map it into the layer model

    line 79
  12. Very specific:

    If they use CSS Modules → reference .module.css files in the component structure

    line 85
  13. Distinctive:

    If they use Tailwind → no separate styles file, mention className patterns

    line 86
  14. Very specific:

    If they use styled-components → reference styles.ts with styled exports

    line 87
  15. Very specific:

    If they use React Native StyleSheet → reference styles.ts with StyleSheet.create

    line 88
  16. Distinctive:

    If they use Storybook → mention story files in component structure

    line 89
  17. Distinctive:

    If React Query → add query key conventions, hook patterns from their code

    line 95
  18. Distinctive:

    If Zustand → add store patterns, useShallow if they use it

    line 96
  19. Distinctive:

    If Redux/RTK → add slice conventions, selector patterns

    line 97
  20. Distinctive:

    If Apollo → add fragment/query patterns

    line 98
  21. Distinctive:

    If they use multiple → document how each is used (server state vs client state)

    line 99
  22. Distinctive:

    Keep this mostly generic but adapt:

    line 103
  23. Distinctive:

    If they use barrel files extensively, don't ban them — warn about deep chains

    line 104
  24. Distinctive:

    If they have a monorepo, add cross-package import rules

    line 105
  25. Very specific:

    Check if their hooks follow use prefix consistently

    line 112
  26. Distinctive:

    Check their service/API file naming

    line 113
  27. Distinctive:

    Document what they ACTUALLY do, not an ideal — unless they ask for a migration

    line 114
  28. Distinctive:

    Keep this generic — it's about Claude Code behavior, not project-specific.

    line 118
  29. Distinctive:

    After generating all files, show the user a summary of what was created:

    line 136
  30. Very specific:

    NEVER use placeholder values like YOUR_COMMAND_HERE — always use real detected values

    line 143
  31. Distinctive:

    NEVER contradict their existing ESLint/Prettier configuration

    line 144
  32. Distinctive:

    NEVER assume a directory exists — check first

    line 145
  33. Distinctive:

    If the project doesn't have a clear layered architecture yet, set up the rules as aspirational but note this in the CLAUDE.md

    line 146
  34. Very specific:

    If .claude/ already exists, MERGE intelligently — don't overwrite custom rules the user may have added

    line 148
  35. Very specific:

    Keep CLAUDE.md under 70 lines — move details to .claude/rules/

    line 149

“Common” is measured: kept by at least 6 in 10 of the 171 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

claude-react-kit — Setup

You are setting up claude-react-kit in this project. Your job is to analyze the codebase, understand its real stack and conventions, and generate perfectly customized configuration files.

Phase 1: Deep Analysis

Analyze the project thoroughly. Read and extract information from:

  1. package.json — framework, dependencies, scripts, package manager (check for packageManager field too)
  2. Lock file — which exists? (package-lock.json, yarn.lock, pnpm-lock.yaml, bun.lock, bun.lockb)
  3. tsconfig.json — path aliases, strict mode, baseUrl, target
  4. Framework config — next.config.*, vite.config.*, app.json/app.config.* (Expo), metro.config.*, remix.config.*
  5. Linter/formatter — .eslintrc*, eslint.config.*, .prettierrc*, biome.json
  6. Existing CLAUDE.md — if one exists, read it to preserve any project-specific rules the user already has
  7. Existing .claude/ — if it exists, read settings.json and any custom rules to preserve them
  8. Source directory structure — ls src/ or equivalent to understand the current architecture (do they already have features/, shared/, core/, design-system/, or different names?)
  9. Routing — ls app/ or ls pages/ or ls src/screens/ to understand routing structure
  10. State management patterns — grep for store/slice/atom definitions to understand actual usage
  11. Test setup — jest.config.*, vitest.config.*, test file patterns
  12. CI/CD — .github/workflows/, check what checks run

Build a complete mental model of the project before writing anything.

Phase 2: Ask What You Can't Detect

After analysis, present your findings to the user in a concise summary:

Here's what I detected:
- Framework: [X]
- Package manager: [X]
- Source structure: [describe what you found]
- State management: [X]
- Testing: [X]
- Styling: [X]
- Existing CLAUDE.md: [yes/no, summary if yes]
- Path aliases: [X]

Then ask ONLY about things you genuinely couldn't determine:

  • If the architecture doesn't clearly match the 5-layer model, ask how they want to map their directories
  • If there are conventions you noticed but aren't sure if they're intentional
  • If there's an existing CLAUDE.md, ask what to keep vs replace
  • Any ambiguities in their setup

Do NOT ask about things you already know from reading the code. Be efficient.

Phase 3: Generate Files

3.1: CLAUDE.md

Generate a CLAUDE.md that is:

  • Under 70 lines
  • Has the REAL commands from their package.json scripts (not placeholders)
  • Architecture diagram adapted to their ACTUAL directory structure and framework
  • References their real path aliases
  • If they had an existing CLAUDE.md, merge in any project-specific rules that don't conflict

3.2: .claude/settings.json

Generate settings with:

  • Permission allow list using their ACTUAL package manager and script names
  • Permission deny list for their sensitive files
  • All hooks wired up with correct paths

3.3: .claude/rules/architecture.md

Customize based on their ACTUAL structure:

  • Use their real directory names (not generic ones)
  • If they use app/ (Next.js/Expo), reference that as the route layer
  • If they use pages/, screens/, or something else, adapt accordingly
  • If they have a lib/ or utils/ directory, map it into the layer model
  • Define boundaries based on what directories ACTUALLY exist

3.4: .claude/rules/components.md

Adapt to their conventions:

  • If they use CSS Modules → reference .module.css files in the component structure
  • If they use Tailwind → no separate styles file, mention className patterns
  • If they use styled-components → reference styles.ts with styled exports
  • If they use React Native StyleSheet → reference styles.ts with StyleSheet.create
  • If they use Storybook → mention story files in component structure
  • Detect their actual component size patterns and set realistic limits

3.5: .claude/rules/state-management.md

Customize based on what they ACTUALLY use:

  • If React Query → add query key conventions, hook patterns from their code
  • If Zustand → add store patterns, useShallow if they use it
  • If Redux/RTK → add slice conventions, selector patterns
  • If Apollo → add fragment/query patterns
  • If they use multiple → document how each is used (server state vs client state)

3.6: .claude/rules/code-quality.md

Keep this mostly generic but adapt:

  • If they use barrel files extensively, don't ban them — warn about deep chains
  • If they have a monorepo, add cross-package import rules
  • Match their existing lint rules (don't contradict ESLint config)

3.7: .claude/rules/naming-conventions.md

Extract from their ACTUAL code:

  • Scan a few directories to detect whether they use PascalCase, kebab-case, or camelCase for component folders
  • Check if their hooks follow use prefix consistently
  • Check their service/API file naming
  • Document what they ACTUALLY do, not an ideal — unless they ask for a migration

3.8: .claude/rules/session-management.md

Keep this generic — it's about Claude Code behavior, not project-specific.

3.9: .claude/hooks/

Generate all 4 hooks:

  • validate-architecture.sh — use their REAL directory names in the boundary checks
  • protect-files.sh — use their REAL lock file and framework-specific protected paths
  • post-compact-context.sh — summarize THEIR architecture rules, not generic ones
  • pre-compact-save.sh — this one is generic, keep as-is

3.10: .claude/skills/

Install both skills:

  • audit-architecture/SKILL.md — adapt grep patterns to their real directory structure
  • scaffold-feature/SKILL.md — adapt the scaffold to their conventions (CSS approach, test files, etc.)

Phase 4: Present and Confirm

After generating all files, show the user a summary of what was created:

  • List every file with a one-line description of what was customized
  • Highlight any decisions you made that they might want to review
  • Suggest they run /audit-architecture to see their current state

Important Rules

  • NEVER use placeholder values like YOUR_COMMAND_HERE — always use real detected values
  • NEVER contradict their existing ESLint/Prettier configuration
  • NEVER assume a directory exists — check first
  • If the project doesn't have a clear layered architecture yet, set up the rules as aspirational but note this in the CLAUDE.md
  • Preserve any existing .claude/settings.local.json — never touch it
  • If .claude/ already exists, MERGE intelligently — don't overwrite custom rules the user may have added
  • Keep CLAUDE.md under 70 lines — move details to .claude/rules/

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.