VibeStash — AI Asset Marketplace with Universal Format
What Is This
A Rails 8 + Jumpstart Pro multi-tenant platform for managing and distributing AI coding agent assets — Claude prompts, Cursor rules, GitHub Copilot instructions — across platforms.
The core engineering contribution: a Universal Asset Format (UAF) intermediate representation that can parse assets from any supported platform and regenerate them for any target platform.
3,156 commits.
Why This Approach
AI coding agents are proliferating, but their configuration formats are incompatible. A developer who writes a great Claude prompt can’t easily share it with a Cursor user. The UAF solves this at the format level rather than the UI level.
Key engineering decisions:
-
Universal Asset Format. A
UniversalAssetFormatServicedefines a platform-neutral intermediate representation. Assets are parsed from their native format (Claude.yml, Cursor.cursorrules, Copilot.md) into UAF, then regenerated for any target. This avoids N-to-N format conversion — every platform-pair goes through the same IR. -
Platform registry pattern. A
PlatformRegistryclass-based registry maps platform names to handlers, validators, file extensions, and asset types. New platforms are added by registering a handler, not by editing conditionals. -
Three recommendation strategies.
AssetRecommendationServiceimplements context-based relevance scoring, collaborative filtering (users with similar installation patterns), and effectiveness-based ranking. These compose rather than compete.
What Would Break
- New AI agent platforms could introduce format concepts that don’t map to the current UAF schema.
- The collaborative filtering needs a minimum user base to produce useful signals. Cold-start is a real problem.
What I Learned
- Intermediate representations are worth the upfront cost when N > 2 platforms. The alternative — direct conversion between each pair — becomes quadratic.
- Platform registries beat conditionals for extensibility, but they need good test coverage per handler. A registration-time validator prevents silent failures.
Repo: github.com/plentyofsaas/vibestash-app (private)
Status: Active development.