# Gentleman-Skills: On-Demand AI Agent Skills for Claude Code and Cursor

> Gentleman-Skills is a MIT-licensed collection of SKILL.md files that give AI coding assistants (Claude Code, OpenCode, Gemini CLI, Cursor, and others) framework-specific coding conventions on demand. Skills cover Angular, React 19, Next.js 15, TypeScript, Tailwind 4, Django REST Framework, Playwright, and more, split between curated files from the repository owner and community-contributed additions that pass a voting process.

**Gentleman-Programming/Gentleman-Skills** — Community-driven AI agent skills for Claude Code, OpenCode, and other AI assistants. Curated patterns and community contributions.

- Repository: https://github.com/Gentleman-Programming/Gentleman-Skills
- Stars: 657 · Forks: 97
- Language: Unknown
- License: MIT
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/gentleman-programming-gentleman-skills

## What Gentleman-Skills Is and Who It Serves

Gentleman-Skills is a version-controlled collection of instruction files designed to be loaded by AI coding assistants when working with specific frameworks or libraries. The README describes skills as specialized instruction sets that teach AI assistants how to work with specific frameworks, libraries, and patterns, providing on-demand context so the AI writes code following best practices and conventions.

The primary audience is developers who want their AI assistant to produce code that matches a specific architectural style, such as Angular standalone components with signals, React 19 with the React Compiler, or TypeScript strict mode patterns, without embedding all of those conventions into every project's global instruction file. The skills are meant to be invoked when relevant rather than applied universally.

The repository targets eight AI coding assistants: Claude Code, OpenCode, Gemini CLI, Cursor, VS Code Copilot, Codex, Windsurf, and Antigravity. Each agent reads skills from a different directory on disk, so the same SKILL.md file can serve multiple agents if copied to the right location.

## How the SKILL.md Discovery System Works

Each skill is a folder containing a single SKILL.md file. The folder name becomes the invocation name. Agents that support this convention scan a designated skills/ directory on startup and expose the skills as slash commands or triggered instructions.

The directory layout the README specifies looks like this:

```text
skills/
  react-19/SKILL.md
  typescript/SKILL.md
  angular/core/SKILL.md
  playwright/SKILL.md
```

For Claude Code, the skills directory is ~/.claude/skills/. For Gemini CLI it is ~/.gemini/skills/. The full table in the README lists paths for each agent on both macOS/Linux and Windows.

A SKILL.md file contains trigger conditions (when the AI should load the skill), patterns and rules (coding conventions), code examples, and anti-patterns to avoid. The trigger mechanism varies by agent, but the convention is consistent: the agent consults the file when a task matches the declared trigger. This means the skill adds context only when needed, rather than inflating the agent's system prompt on every interaction.

## Curated Skills Versus Community Skills

The repository divides skills into two categories. Curated skills are authored by @Gentleman-Programming and described in the README as personally crafted and battle-tested, reflecting the owner's approach to code architecture, including a Scope Rule, file naming conventions, and a signals-first approach for Angular. Some curated skills (testing and Python) were developed in collaboration with the team at Prowler.

Curated skills cover Angular (four skills: core, forms, performance, architecture), React 19, Next.js 15, TypeScript, Tailwind CSS 4, Zod 4, Zustand 5, the Vercel AI SDK 5, Django REST Framework, Playwright, pytest, Jira workflow (task and epic), a github-pr skill for pull request creation, and a skill-creator skill for authoring new skills.

Community skills go through a democratic voting process before being accepted. As of the last push on 2026-03-28, six community skills are available: Electron (for cross-platform desktop apps), Elixir anti-patterns, hexagonal architecture for Java, Java 21, React Native (with Expo and bare workflow), and Spring Boot 3.

The asymmetry between the two categories is notable. Curated skills are opinionated by design; they encode specific conventions that reflect one developer's experience. Teams with different architectural preferences will need to fork or author their own SKILL.md files rather than adjusting the curated ones.

## Installing Skills for Claude Code and Other Agents

The fastest path to using these skills is to clone the repository and copy the curated directory to the target agent's skills folder. For Claude Code on macOS or Linux:

```bash
git clone https://github.com/Gentleman-Programming/Gentleman-Skills.git
cp -r Gentleman-Skills/curated/* ~/.claude/skills/
```

For Cursor, the destination changes:

```bash
cp -r Gentleman-Skills/curated/* ~/.cursor/skills/
```

For individual skills rather than the full curated set:

```bash
cp -r curated/react-19 ~/.claude/skills/
```

After copying, the README recommends referencing the skill in the agent's configuration file. For Claude Code, this means adding an entry to CLAUDE.md such as: When working with React, read ~/.claude/skills/react-19/SKILL.md first. For agents that auto-discover skills directories, the reference may not be necessary.

The skills directory must be created manually if it does not already exist. On macOS and Linux, mkdir -p ~/.claude/skills creates it. The README includes mkdir commands for both Claude Code and Gemini CLI as examples.

## Framework Depth: Angular, React, and TypeScript Coverage

The Angular coverage is the deepest in the curated collection. Four separate skills address different concerns: core handles standalone components, signals, the inject function, and a zoneless architecture; forms covers Signal Forms and Reactive Forms; performance targets NgOptimizedImage, the @defer block, lazy loading, and SSR; architecture defines the Scope Rule, project structure, and file naming conventions.

The React 19 skill focuses on patterns that use the React Compiler. The Next.js 15 skill is scoped specifically to App Router patterns. Both are separate skills, so a project using Next.js would benefit from loading both rather than either alone.

The TypeScript skill covers strict mode patterns. The Zod 4, Zustand 5, and Tailwind CSS 4 skills follow the same format: each targets a specific library at a specific major version. This specificity is a strength for projects pinned to those versions, but it also means the skills may not apply cleanly to older versions of the same library.

## Limitations and Missing Coverage

The community section is sparse. As of the last push on 2026-03-28, six community skills are available. Go, Rust, Vue, Svelte, Python backend frameworks beyond Django, Ruby on Rails, and database-specific patterns are absent. Teams that do not use Angular, React, or the supported JavaScript ecosystem will find little ready-made here.

The curated skills encode one specific architectural style. The Angular Scope Rule, the signals-first approach, and the file naming conventions are the author's personal preferences, not community standards. Developers who follow different conventions (feature modules instead of standalone components, for instance) will need to write their own SKILL.md files from the provided SKILL_TEMPLATE.md.

The repository has no GitHub releases and no versioning scheme beyond the main branch commit history. Pinning a specific version of a skill requires checking out a specific commit, which is inconvenient for teams that update skills automatically. The last push was on 2026-03-28, which is exactly six months before today.

## Comparison with Global Instruction Files

The main alternative to a skills collection is a global instruction file: CLAUDE.md for Claude Code, .cursorrules for Cursor, or similar always-on files. The difference is scope and load: a global instruction file applies to every interaction, adding tokens to every request regardless of whether the current task involves the specified framework. A skill file is loaded only when the developer invokes it or when the agent detects a matching trigger.

For small projects with a single primary stack, a well-written CLAUDE.md is likely sufficient. For developers who switch between frameworks across projects or within a monorepo, on-demand skills avoid the problem of conflating Angular patterns with React patterns in the same global file.

The skills format is not exclusive to this repository. Any developer can write SKILL.md files for their own conventions and store them in the same directory alongside the community contributions. The SKILL_TEMPLATE.md file in the repository provides a starting structure.

## Conclusion

Developers who work with Angular, React 19, Next.js 15, or Tailwind 4 and want their AI assistant to follow specific architectural conventions without writing those conventions into every project's CLAUDE.md will get direct value from the curated skills. Teams using less common stacks will find the community section thin; the six community skills available as of the last push on 2026-03-28 cover Electron, Elixir, Java, and Spring Boot but nothing in Go, Rust, or Python backend frameworks beyond Django. The MIT license places no restrictions on forking or customizing SKILL.md files for internal use.

## FAQ

### Which AI agents does Gentleman-Skills support?

The README lists eight agents: Claude Code, OpenCode, Gemini CLI, Cursor, VS Code Copilot, Codex, Windsurf, and Antigravity. Each agent reads skills from a different directory path listed in the README.

### How do I contribute a new skill to the Gentleman-Skills repository?

Community skills go through a voting process before acceptance. The README points to the github-pr skill in curated/github-pr and CONTRIBUTING.md as the starting point for contributors who want to submit a new skill.

### Can Gentleman-Skills work with frameworks not listed in the curated directory?

Yes. The SKILL_TEMPLATE.md file in the repository provides a structure for writing new SKILL.md files. Any SKILL.md placed in the correct skills directory for your agent will be available alongside the curated ones.

## Sources

- [Gentleman-Programming/Gentleman-Skills on GitHub](https://github.com/Gentleman-Programming/Gentleman-Skills)
- [Issues](https://github.com/Gentleman-Programming/Gentleman-Skills/issues)
- [License: MIT](https://github.com/Gentleman-Programming/Gentleman-Skills/blob/main/LICENSE)
- [README](https://github.com/Gentleman-Programming/Gentleman-Skills/blob/main/README.md)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/gentleman-programming-gentleman-skills
