DEV Community

Dev Diaries
Dev Diaries

Posted on

PRPM - The Universal Package Manager for AI Prompts

DEV's Worldwide Show and Tell Challenge Submission 🎥

This is a submission for the DEV's Worldwide Show and Tell Challenge Presented by
Mux

What I Built

PRPM (Prompt Package Manager) is npm for AI coding assistants. It's a universal package manager that lets developers install, share, and convert AI prompts, rules, skills, and agents across different AI coding tools like Claude Code, Cursor, Windsurf, GitHub Copilot, Continue, Kiro, and more.

Instead of manually copying prompt files between projects or being locked into one AI tool's ecosystem, PRPM
provides a single command to install packages that work everywhere:

npx prpm install @anthropic/typescript-best-practices --as cursor
npx prpm install @vercel/nextjs-expert --as claude
Enter fullscreen mode Exit fullscreen mode

My Pitch Video

Demo

Try it now without installing:
npx prpm search typescript
npx prpm install @sanjeed5/typescript

The Story Behind It

Every AI coding assistant has its own format for rules and instructions - Cursor uses .cursorrules, Claude Code uses
.claude/ directories, Windsurf uses .windsurfrules, Copilot uses .github/copilot-instructions.md. Developers were
copy-pasting the same best practices between tools and projects, with no way to share or version them.

I built PRPM because prompts are becoming as important as code dependencies. Just like npm revolutionized JavaScript
package sharing, PRPM creates an ecosystem where the community can publish, discover, and reuse AI coding
knowledge.

The "aha moment" was realizing that all these formats are fundamentally similar - they're just markdown with
metadata. A universal converter could translate between them losslessly, letting one package work everywhere.

Technical Highlights

Cross-Format Conversion Engine: PRPM parses each format into a canonical intermediate representation, then converts
to any target format. This handles nuances like:

  • Cursor's MDC frontmatter vs Claude's YAML frontmatter
  • Different directory structures (.cursor/rules/ vs .claude/skills/)
  • Format-specific features (Kiro's fileMatch patterns, Copilot's applyTo globs)

Progressive Disclosure: When a target format doesn't natively support a package type (e.g., Cursor doesn't have
"skills"), PRPM uses the emerging AGENTS.md standard to install packages in a format-agnostic way that still works.

Integrity Verification: Packages are checksummed in prpm.lock to detect tampering, similar to npm's lockfile
approach.

Tech Stack:

  • TypeScript monorepo with Turborepo
  • CLI built with Commander.js
  • Registry API on Fastify + PostgreSQL
  • Webapp on Next.js 15
  • Deployed on AWS Elastic Beanstalk via Pulumi IaC

Top comments (0)