by pr-pm
The universal registry for AI coding tools
# Add to your Claude Code skills
git clone https://github.com/pr-pm/prpmLast scanned: 5/30/2026
{
"issues": [
{
"type": "npm-audit",
"message": "@aws-sdk/client-cloudfront: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/client-s3: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/client-sso: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/core: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-env: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-http: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-ini: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-node: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-process: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-sso: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/credential-provider-web-identity: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/middleware-flexible-checksums: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/middleware-sdk-s3: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/middleware-user-agent: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/nested-clients: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/s3-request-presigner: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/signature-v4-multi-region: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/token-providers: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/util-user-agent-node: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@aws-sdk/xml-builder: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@esbuild-kit/core-utils: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@esbuild-kit/esm-loader: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@fastify/ajv-compiler: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@fastify/fast-json-stringify-compiler: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@fastify/jwt: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@fastify/multipart: Unlimited consumption of resources in @fastify/multipart",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@mapbox/node-pre-gyp: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@nangohq/frontend: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@nangohq/node: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@nangohq/types: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@next/eslint-plugin-next: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@opensearch-project/opensearch: Malware in @opensearch-project/opensearch",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "ajv: ajv has ReDoS when using `$data` option",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "axios: Axios has a NO_PROXY Hostname Normalization Bypass that Leads to SSRF",
"severity": "high"
},
{
"type": "npm-audit",
"message": "bcrypt: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "bn.js: bn.js affected by an infinite loop",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "brace-expansion: brace-expansion: Zero-step sequence causes process hang and memory exhaustion",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "diff: jsdiff has a Denial of Service vulnerability in parsePatch and applyPatch",
"severity": "low"
},
{
"type": "npm-audit",
"message": "drizzle-kit: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "drizzle-orm: Drizzle ORM has SQL injection via improperly escaped SQL identifiers",
"severity": "high"
},
{
"type": "npm-audit",
"message": "esbuild: esbuild enables any website to send any requests to the development server and read the response",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "eslint-config-next: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "fast-json-stringify: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "fast-jwt: Fast-JWT Improperly Validates iss Claims",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "fast-uri: fast-uri vulnerable to path traversal via percent-encoded dot segments",
"severity": "high"
},
{
"type": "npm-audit",
"message": "fast-xml-parser: fast-xml-parser has RangeError DoS Numeric Entities Bug",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "fastify: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "fastify-zod: Vulnerability found",
"severity": "low"
},
{
"type": "npm-audit",
"message": "flatted: flatted vulnerable to unbounded recursion DoS in parse() revive phase",
"severity": "high"
},
{
"type": "npm-audit",
"message": "follow-redirects: follow-redirects leaks Custom Authentication Headers to Cross-Domain Redirect Targets",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "glob: glob CLI: Command injection via -c/--cmd executes matches with shell:true",
"severity": "high"
},
{
"type": "npm-audit",
"message": "handlebars: Handlebars.js has JavaScript Injection via AST Type Confusion by tampering @partial-block",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "js-yaml: js-yaml has prototype pollution in merge (<<)",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "jws: auth0/node-jws Improperly Verifies HMAC Signature",
"severity": "high"
},
{
"type": "npm-audit",
"message": "lodash: Lodash has Prototype Pollution Vulnerability in `_.unset` and `_.omit` functions",
"severity": "high"
},
{
"type": "npm-audit",
"message": "mdast-util-to-hast: mdast-util-to-hast has unsanitized class attribute",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "minimatch: minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern",
"severity": "high"
},
{
"type": "npm-audit",
"message": "next: Next Vulnerable to Denial of Service with Server Components",
"severity": "high"
},
{
"type": "npm-audit",
"message": "picomatch: Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching",
"severity": "high"
},
{
"type": "npm-audit",
"message": "postcss: PostCSS has XSS via Unescaped </style> in its CSS Stringify Output",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "preact: Preact has JSON VNode Injection issue",
"severity": "high"
},
{
"type": "npm-audit",
"message": "qs: qs's arrayLimit bypass in comma parsing allows denial of service",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "rollup: Rollup 4 has Arbitrary File Write via Path Traversal",
"severity": "high"
},
{
"type": "npm-audit",
"message": "smol-toml: smol-toml: Denial of Service via TOML documents containing thousands of consecutive commented lines",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "tar: node-tar Vulnerable to Arbitrary File Creation/Overwrite via Hardlink Path Traversal",
"severity": "high"
},
{
"type": "npm-audit",
"message": "vite: Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling",
"severity": "high"
},
{
"type": "npm-audit",
"message": "vite-node: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "vitest: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "yaml: yaml is vulnerable to Stack Overflow via deeply nested YAML collections",
"severity": "medium"
}
],
"status": "FAILED",
"scannedAt": "2026-05-30T16:58:10.935Z",
"npmAuditRan": true,
"pipAuditRan": true
}prpm is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by pr-pm. The universal registry for AI coding tools. It has 105 GitHub stars.
prpm failed SkillsLLM's automated security scan, which flagged one or more high-severity issues. Review the Security Report section carefully before using it.
Clone the repository with "git clone https://github.com/pr-pm/prpm" and add it to your Claude Code skills directory (see the Installation section above).
prpm is primarily written in TypeScript. It is open-source under pr-pm on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh prpm against similar tools.
No comments yet. Be the first to share your thoughts!
Requires a passing catalog security scan. Resolve the flagged issues and resubmit to enable featuring.
The universal registry for AI coding tools.
Discover and install cross-platform prompts, rules, skills, and agents that work with Cursor, Claude, Continue, Windsurf, GitHub Copilot, OpenAI Codex, Google Gemini, Kiro, and more — all from one file.
npm install -g prpm
prpm install collections/nextjs-pro # Entire Next.js setup in one command
Installs 20 packages: backend-architect, cloud-architect, database-architect, and more
7,5000+ cross platform packages
Docs | Search Packages | Search Collections
PRPM = Package manager for AI coding tools. Install prompts, rules, skills, and agents that work across all editors.
npm install -g prpm
| Command | Purpose |
|---|---|
prpm search <query> --no-interactive |
Find packages by keyword (non-interactive for agents) |
prpm ai-search <query> |
Semantic search with natural language (free, no login) |
prpm install <package> |
Install a package (auto-detects editor) |
prpm install <package> --as <format> |
Install for specific editor format |
prpm info <package> |
Get package details, description, install count |
prpm trending |
See popular packages |
prpm collections |
Browse curated package bundles |
prpm collections info <id> |
Get collection details |
Important: Always use --no-interactive with search to avoid interactive pagination prompts.
Packages convert automatically to any editor format during install:
# Same package → different editors
prpm install @sanjeed5/react --as cursor # → .cursor/rules/
prpm install @sanjeed5/react --as claude # → .claude/skills/
prpm install @sanjeed5/react --as continue # → .continue/rules/
prpm install @sanjeed5/react --as windsurf # → .windsurf/rules/
prpm install @sanjeed5/react --as copilot # → .github/instructions/
prpm install @sanjeed5/react --as kiro # → .kiro/steering/
Available formats: cursor, claude, continue, windsurf, copilot, kiro, gemini, opencode, codex, droid, aider, agents.md, generic
Subtypes (use with --subtype): rule, agent, skill, slash-command, hook, tool, chatmode, prompt
When working on a task, search PRPM for relevant expertise:
# Keyword search (use --no-interactive to avoid prompts)
prpm search react --no-interactive
prpm search "testing best practices" --no-interactive
# AI-powered semantic search (better for natural language queries)
prpm ai-search "how to structure a React project with TypeScript"
prpm ai-search "rules for writing clean API endpoints"
# Filter by format or subtype
prpm search react --format cursor --no-interactive
prpm search typescript --subtype agent --no-interactive
# Install what looks useful
prpm install @username/package-name
Find and install a package:
prpm search "your topic" --no-interactive
prpm info @scope/package-name # Check details
prpm install @scope/package-name
Install a collection (multiple related packages):
prpm collections search frontend --no-interactive
prpm collections info nextjs-pro
prpm install collections/nextjs-pro
Check what's installed:
prpm list # Show installed packages
prpm list --format json # Machine-readable output
| Format | Default Location |
|---|---|
| cursor | .cursor/rules/ |
| claude | .claude/skills/ (skills), .claude/commands/ (slash-commands), .claude/agents/ |
| continue | .continue/rules/ |
| windsurf | .windsurf/rules/ |
| copilot | .github/instructions/ |
| kiro | .kiro/steering/ |
Help users share their prompts, rules, and agents with the community.
Get expert help with prpm.json:
# Install the PRPM manifest skill for detailed guidance
prpm install @prpm/prpm-json-best-practices-skill
This skill has comprehensive knowledge of prpm.json structure, required fields, multi-package setups, and publishing best practices.
Quick publish flow:
# 1. Initialize a package manifest
prpm init
# 2. Validate before publishing
prpm publish --dry-run
# 3. Publish to registry
prpm publish
The prpm.json manifest:
{
"name": "my-package-name",
"version": "1.0.0",
"description": "What this package does and when to use it",
"author": "username",
"format": "cursor",
"subtype": "rule",
"files": [".cursor/rules/my-rule.mdc"],
"tags": ["react", "testing"]
}
Key fields:
name: Package name (lowercase, hyphens allowed)format: Source format (cursor, claude, continue, windsurf, copilot, kiro, etc.)subtype: Package type (rule, agent, skill, slash-command, hook, prompt)files: Array of files to includetags: Keywords for discoverabilityPublishing to an organization:
# Add organization to manifest
{
"organization": "my-org",
...
}
# Or specify at publish time
prpm publish --org my-org
Multi-package publishing (one repo, multiple packages):
{
"author": "username",
"packages": [
{ "name": "react-rules", "format": "cursor", "files": [...] },
{ "name": "react-agent", "format": "claude", "subtype": "agent", "files": [...] }
]
}
When installing:
prpm install <package> works.prpm info shows download counts and descriptions to assess quality.When to suggest publishing:
.cursor/rules/, .claude/, or similar directory with reusable contentPrompt to ask: "I notice you've created some useful [rules/prompts/agents]. Would you like to publish them to PRPM so others (or your team) can install them easily?"

Give your IDE the ability to self improve by installing packages that it finds useful:

Every package works in any AI editor. No conversion tools, no separate downloads:
# Same package, different editors
prpm install @sanjeed5/react --as cursor # → .cursor/rules/
prpm install @sanjeed5/react --as claude --subtype agent # → .claude/agents/
prpm install @sanjeed5/react --as continue # → .continue/prompts/
prpm install @sanjeed5/react --as windsurf # → .windsurf/rules/
prpm install @sanjeed5/react --as copilot # → .github/instructions/
prpm install @sanjeed5/react --as kiro # → .kiro/steering/
PRPM supports all major AI coding assistants:
| Format | Tool | Subtypes | Install Path | Documentation |
|---|---|---|---|---|
cursor |
Cursor | rule, agent, slash-command, tool | .cursor/rules/, .cursor/agents/ |
Cursor Docs |
claude |
Claude Code | skill, agent, slash-command, tool, hook | .claude/skills/, .claude/agents/, .claude/commands/, .claude/hooks/ |
Claude Docs |
continue |
Continue | rule, agent, slash-command, tool | .continue/rules/, .continue/prompts/ |
Continue Docs |
windsurf |
Windsurf | rule, agent, slash-command, tool | .windsurf/rules/ |
Windsurf Docs |
copilot |
GitHub Copilot | tool, chatmode | .github/instructions/, .github/chatmodes/ |
Copilot Docs |
kiro |
Kiro | rule, agent, tool, hook | .kiro/steering/, .kiro/agents/, .kiro/hooks/ |
Kiro Docs |
gemini |
Gemini CLI | slash-command | .gemini/commands/ |
Gemini Docs |
opencode |
OpenCode | agent, skill, slash-command, tool | .opencode/agent/, .opencode/skills/, .opencode/command/, .opencode/tool/ |
OpenCode Docs |
ruler |
Ruler | rule, agent, tool | .ruler/rules/ |
Ruler Docs |
droid |
Factory Droid | skill, slash-command, hook | .factory/skills/, .factory/commands/, .factory/hooks/ |
Factory Droid Docs |
agents.md |
Agents.md | agent, tool | .agents/, AGENTS.md |
Agents.md Docs |
generic |
Cross-platform | all | .prompts/ |
- |
Note: Each package is automatically converted to your preferred format during installation.