agentleFS
joris887joris887/exosuit/.claude/skills/skill-create/SKILL.md

skill-create

Skill9 starsChanged 3 months agoMITView on GitHub

Analyze the repository's technology stack and generate appropriate skills, rules, and hook configurations.

15 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use pm-discovery, qa-phase 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.
  • ww-w-aiSkill

    pm-discovery

    PM Agent Team - Automated product discovery, strategy, and PRD generation. Runs PM analysis workflow to produce comprehensive PRD before PDCA Plan phase.

    Also in 3 projects that use this

  • ww-w-aiSkill

    qa-phase

    Run QA tests at various levels (L1-L5) for features under PDCA management. Integrates with MCP tools to execute structured test plans.

    Also in 3 projects that use this

  • +10 more from ww-w-ai

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. 0 are common, 10 are distinctive, and 7 are very specific to this project.

  • 0

    Common

    Most of the 14 edited versions we read keep these.

  • 10

    Distinctive

    This author's own choices. Worth a look.

  • 7

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read .claude/skills/SKILLS_INVENTORY.md to avoid creating duplicates.

    line 36
  2. Very specific:

    Create reference docs co-located with the skill (.claude/skills/<tech-name>/references/) when:

    line 51
  3. Distinctive:

    No project-specific patterns worth documenting

    line 64
  4. Distinctive:

    If a linter/formatter was detected, create or update rules referencing its config

    line 127
  5. Very specific:

    If the project has specific file patterns (e.g., *.component.tsx, *.service.py), add path-scoped rules for those patterns

    line 128
  6. Distinctive:

    Create per-module rules if major modules have distinct conventions

    line 129
  7. Very specific:

    Update .claude/hooks/ scripts and .claude/settings.json as needed.

    line 142
  8. Distinctive:

    After creating all skills:

    line 154
  9. Very specific:

    Run bash scripts/update-registry.sh to regenerate skills-registry.json

    line 156
  10. Very specific:

    Update .claude/skills/SKILLS_INVENTORY.md with new technology skills

    line 157
  11. Distinctive:

    Add entries to the Technology Skills category

    line 158
  12. Distinctive:

    NEVER create skills for trivial/standard technologies (basic Python, JSON, HTTP)

    line 200
  13. Distinctive:

    NEVER duplicate content that's already in existing skills

    line 201
  14. Distinctive:

    ALWAYS pin versions in reference docs

    line 202
  15. Distinctive:

    ALWAYS include examples from the actual codebase, not generic examples

    line 203
  16. Distinctive:

    ALWAYS check for existing skills before creating new ones

    line 204
  17. Very specific:

    Follow the skill template in .claude/skills/SKILL_TEMPLATE.md

    line 206

“Common” is measured: kept by at least 6 in 10 of the 14 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

skill-create

Analyzing repository and generating technology skills.

1. Scan Repository

Identify technologies, frameworks, and tools in use:

1a. Parse dependency files

Scan for all dependency/config files in the project:

  • package.json, pyproject.toml, Cargo.toml, Package.swift
  • go.mod, pom.xml, build.gradle, Gemfile, composer.json
  • .pre-commit-config.yaml, CI configuration files

1b. Scan imports and usage

Identify major technology areas by scanning source code imports and configuration files.

1c. Check existing skills

Read .claude/skills/SKILLS_INVENTORY.md to avoid creating duplicates.

2. Classify Technologies

Categorize each technology by impact and relevance:

CategoryExamplesSkill Priority
Core Framework (>20% of codebase)React, Django, Rails, SwiftUIHigh — create skill + reference doc
Major Library (significant usage)SQLite, Redis, PrismaMedium — create skill
Build/Dev Tool (development workflow)webpack, jest, ruffLow — create skill if complex
Minor Dependency (small usage)lodash, httpx, pydanticSkip — standard usage, no skill needed

Decision Criteria for Reference Documents

Create reference docs co-located with the skill (.claude/skills/<tech-name>/references/) when:

  • Technology is core (>20% of codebase interaction)
  • API is complex with project-specific patterns
  • Version-specific gotchas exist that an LLM would miss
  • Official documentation is large and we use a specific subset

Co-locating references with skills keeps everything self-contained and allows relative path references from SKILL.md.

Skip reference doc when:

  • Usage is standard/well-known (e.g., JSON, basic HTTP)
  • Official docs are concise and sufficient
  • No project-specific patterns worth documenting

3. Generate Skills

For each technology that warrants a skill, scaffold using:

bash scripts/init-skill.sh <tech-name>

Execute directly — do NOT read script source first.

Skill File Structure

.claude/skills/<tech-name>/
├── SKILL.md              # Lean (<100 lines): purpose, version, key patterns, pointers
└── references/            # Loaded on demand
    ├── api.md             # API patterns and quick reference
    ├── gotchas.md         # Version-specific issues and workarounds
    └── examples.md        # Code snippets from the actual codebase

SKILL.md Content (keep under 100 lines)

Each generated skill SKILL.md should include:

  1. Purpose: What this technology does in the project
  2. Version: Specific version in use (pinned)
  3. Patterns: Project-specific patterns and conventions (brief)
  4. Common Tasks: How to accomplish typical tasks (brief)
  5. Pointers: "See references/api.md for detailed API patterns" etc.

Move detailed content to references/ to keep SKILL.md lean. The context window is a shared resource — only load detail when needed.

Reference Doc Template (when created, co-located in references/)

# <Technology> Reference (v<version>)

## Usage in This Project
<What we use it for, how it fits in the architecture>

## Key Patterns
<Project-specific patterns with code examples>

## API Quick Reference
<The subset of the API we actually use>

## Configuration
<Our configuration settings and why>

## Gotchas
<Version-specific issues, known bugs, workarounds>

## Official Documentation
<Links to official docs for our version>

4. Generate Path-Scoped Rules

For detected file types that don't already have rules:

  • If a linter/formatter was detected, create or update rules referencing its config
  • If the project has specific file patterns (e.g., *.component.tsx, *.service.py), add path-scoped rules for those patterns
  • Create per-module rules if major modules have distinct conventions

Save rules to .claude/rules/<rule-name>.md with YAML frontmatter containing paths:.

5. Configure Hooks

Based on detected tools:

  • Formatter found → Configure post-edit-format.sh for the detected formatter
  • Linter found → Add to .claude/hooks/rules/quality.yaml
  • Type checker found → Add to .claude/hooks/rules/quality.yaml
  • Test runner found → Add to .claude/hooks/rules/quality.yaml

Update .claude/hooks/ scripts and .claude/settings.json as needed.

6. Version Management

For each technology with a reference doc:

  • Record the current version
  • Note when the reference doc was last verified
  • Flag if a major version update is available

7. Update Inventory

After creating all skills:

  • Run bash scripts/update-registry.sh to regenerate skills-registry.json
  • Update .claude/skills/SKILLS_INVENTORY.md with new technology skills
  • Add entries to the Technology Skills category
  • List each skill with its technology, version, and whether it has a reference doc

8. Output

Present a summary:

### Skill Creation Complete

**Technologies analyzed:** [count]
**Skills created:** [count]
**Reference docs created:** [count]
**Rules created:** [count]
**Hooks configured:** [list]
**Skills skipped (already exists or not needed):** [count]

#### Created Skills:
| Technology | Skill | Reference Doc | Version |
|---|---|---|---|
| [name] | `/[skill-name]` | Yes/No | [version] |

#### Rules Created:
| Rule | Paths | Purpose |
|---|---|---|
| [name] | [patterns] | [what it enforces] |

#### Skipped (standard/minor):
- [list of technologies that didn't warrant skills]

Common Mistakes — NEVER:

Bad OutputWhy It's WrongWhat To Do Instead
Generic content Claude already knowsWastes context window on every invocationOnly include project-specific patterns and gotchas
Skill >150 lines without references/Exceeds context budgetSplit into lean SKILL.md + references/
Examples from training data, not codebaseDoesn't match project conventionsUse actual code from the repo as examples
Documenting standard API usageClaude knows standard APIsDocument project-specific patterns and version gotchas

Rules

  • NEVER create skills for trivial/standard technologies (basic Python, JSON, HTTP)
  • NEVER duplicate content that's already in existing skills
  • ALWAYS pin versions in reference docs
  • ALWAYS include examples from the actual codebase, not generic examples
  • ALWAYS check for existing skills before creating new ones
  • Reference docs go in .claude/skills/<name>/references/ (co-located with the skill)
  • Follow the skill template in .claude/skills/SKILL_TEMPLATE.md

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.