claude-skills

Framework

alirezarezvani/claude-skills

Comprehensive library of AI coding agent skills and plugins for 13 tools.

Overview

Open-source collection of 354 production-ready skills and plugins for Claude Code, OpenAI Codex, Gemini CLI, Cursor, and 9 other coding agents. Covers engineering, marketing, product, security, compliance, C-level advisory, research, and productivity domains. Includes Python CLI scripts, templates, and reference docs.

README Preview

# Claude Code Skills & Plugins — Agent Skills for Every Coding Tool\n\n**354 production-ready Claude Code skills, plugins, and agent skills for 13 AI coding tools.**\n\nThe most comprehensive open-source library of Claude Code skills and agent plugins — also works with OpenAI Codex, Gemini CLI, Cursor, and 9 more coding agents. Reusable expertise packages covering engineering, DevOps, marketing (incl. AEO — Answer Engine Optimization for LLM citation), security (PreToolUse hooks), compliance, C-level advisory (incl. founder-mode CFO/CMO/CRO/CPO/COO/CHRO/CISO/GC/CDO/CAIO/CCO/VPE personas + 21 /cs:* slash commands), productivity (capture/email/reflect), an academic research stack (litreview/grants/dossier/patent/syllabus/pulse/notebooklm/deep-research + hybrid router), and enterprise Research Operations (clinical-research/research-finance/market-research/product-research, v2.9.0).\n\n**Works with:** Claude Code · OpenAI Codex · Gemini CLI · OpenClaw · Hermes Agent[^hermes] · Mistral Vibe[^vibe] · Cursor · Aider · Windsurf · Kilo Code · OpenCode · Augment · Antigravity\n\n[^hermes]: Hermes Agent is **BYO-sync tier**: the repo ships a pre-generated `.hermes/skills/claude-skills/` tree, but you run `python scripts/sync-hermes-skills.py` once locally to install into `~/.hermes/skills/`. Uses the same agentskills.io SKILL.md standard — no format conversion.\n[^vibe]: Mistral Vibe is also **BYO-sync tier**: the repo ships a pre-generated `.vibe/skills/claude-skills/` tree, run `./scripts/vibe-install.sh` once locally to install into `~/.vibe/skills/`. Same agentskills.io SKILL.md standard — no format conversion. Docs: .\n\n[](https://opensource.org/licenses/MIT)\n[](#skills-overview)\n[](#agents)\n[](#personas)\n[](#commands)\n[](https://github.com/alirezarezvani/claude-skills/stargazers)\n[](https://getskillcheck.com)\n\n> **5,200+ GitHub stars** — the most comprehensive open-source Claude Code skills & agent plugins library.\n\n---\n\n## What Are Claude Code Skills & Agen

FAQ (5)

Troubleshooting
How to fix pw-testrail and pw-browserstack MCP servers showing 'Failed to connect - CONNECTION_CLOSED' in Claude Code?

Upgrade the pw plugin to **v2.12.0 or later**. In v2.9.0, .mcp.json automatically starts pw-testrail and pw-browserstack, but their @modelcontextprotocol/sdk dependency is never installed, causing ERR_MODULE_NOT_FOUND and permanent CONNECTION_CLOSED errors. v2.12.0 moves these servers to integrations/mcp-servers.example.json, so they no longer fail for every user.

If you need TestRail or BrowserStack integration, explicitly opt in:

cd "$CLAUDE_PLUGIN_ROOT/integrations/testrail-mcp"
npm install

cd "$CLAUDE_PLUGIN_ROOT/integrations/browserstack-mcp"
npm install

Then copy or merge integrations/mcp-servers.example.json into the plugin's .mcp.json, configure the required TESTRAIL_* or BROWSERSTACK_* environment variables, and restart Claude Code.

On v2.9.0, the immediate workaround is to remove the unused pw-testrail and pw-browserstack entries from .mcp.json, or run npm install in each integration directory before using them.

GitHub Issue #978
Troubleshooting
How to fix './hooks/error-capture.sh: No such file or directory' from a Claude Code PostToolUse hook?

The hook command runs from the session's current working directory, not the plugin root, so a cwd-relative path cannot resolve. In engineering-team/self-improving-agent/hooks/hooks.json, replace "command": "./hooks/error-capture.sh" with:

"command": "\"${CLAUDE_PLUGIN_ROOT}/hooks/error-capture.sh\""

${CLAUDE_PLUGIN_ROOT} points to the installed plugin directory, and the escaped quotes support plugin paths containing spaces. Also update the same relative path in the plugin's settings.json install example and the script header comment for consistency.

GitHub Issue #924
Troubleshooting
How to fix Python UnicodeEncodeError: 'charmap' codec can't encode box-drawing or '≥' characters on Windows cp1252?

The Windows console is using cp1252, which cannot encode characters such as ╔, ═, or ≥. Run Python in UTF-8 mode before executing the script:

- Command Prompt:

set PYTHONUTF8=1
  python your_script.py

- PowerShell:
$env:PYTHONUTF8="1"
  python your_script.py

To make it permanent for future Command Prompt sessions:

setx PYTHONUTF8 1

For an application-level fix, add this near the top of each CLI entry point before printing Unicode output:

import sys

if hasattr(sys.stdout, "reconfigure"):
    sys.stdout.reconfigure(encoding="utf-8", errors="replace")
if hasattr(sys.stderr, "reconfigure"):
    sys.stderr.reconfigure(encoding="utf-8", errors="replace")

errors="replace" prevents crashes by substituting unsupported characters instead of raising UnicodeEncodeError. Python 3.7 or later supports UTF-8 mode and reconfigure(). If available, update to a release containing the cp1252 hardening fix for the affected scripts.

GitHub Issue #969
Troubleshooting
Why does write-a-skill check 1 'Description includes triggers' fail on a valid SKILL.md description?

This is a known false-positive bug fixed in claude-skills v2.13.0 (PR #1013, landed via #1038). Two root causes in skill_review_checklist_runner.py: (1) the frontmatter parser only matched bare > and | YAML block scalars, so descriptions written with chomping/indent indicators (>-, >+, |-, |2) caused the function to return the indicator itself as the description, making the trigger check unpassable; (2) the trigger patterns were a fixed two-word list (use when, invoke before, etc.), rejecting valid phrasing like 'Use whenever', 'This skill should be used when', 'Use this before', or 'Load before'. Fix: upgrade to v2.13.0+, which parses all block scalar variants via re.fullmatch(r"[>|][0-9]*[-+]?|[>|][-+]?[0-9]*", val) and replaces the fixed list with a verb-plus-cue regex (verbs: use/used/invoke/apply/run/load/fire/trigger; cues: when/whenever/before/after/during/while/at the start of/on every). Workaround on older versions: use bare > instead of >- in frontmatter, and phrase triggers exactly as 'use when/for/before/during/after/while' or 'invoke when/before/after'.

GitHub Issue #1011
Troubleshooting
Why does derive_counters.py --check pass even with wrong counter deltas (X → Y) in CHANGELOG.md?

In versions before v2.13.0, scripts/derive_counters.py --check only validated absolute totals in five named files (README.md, CLAUDE.md headline lines, marketplace.json, mkdocs.yml, .codex-plugin/plugin.json). It never read CHANGELOG.md, and its CLAIM_PATTERNS only matched absolute totals, not delta claims of the form X → Y — so a fabricated delta like skills 999 → 1234 in the changelog passed CI green. Fixed in v2.13.0 (via PR #1010, landed through #1038): the gate now reads CHANGELOG.md, recognizes delta patterns (A → B and A -> B), and asserts the right-hand side (B) equals the derived value. Upgrade to v2.13.0 or later: https://github.com/alirezarezvani/claude-skills/releases/tag/v2.13.0. Note: the proposed --write auto-generation mode (option 3) was not implemented and may be filed as a separate issue.

GitHub Issue #995