This handles the complete file storage workflow in Convex, from generating upload URLs to serving files back via URLs. You'll use it when you need users to upload images, PDFs, or any other files, and also when your actions generate files (like PDFs or AI images) that need to be stored. The skill shows the three-step upload pattern (get URL, POST file, save reference), how to pull file metadata from the system tables, and proper deletion that cleans up both storage and database records. One thing to note is that file URLs from `ctx.storage.getUrl()` are temporary, so you'll want to fetch them fresh in queries rather than storing them long-term in your database.
npx skills add https://github.com/waynesutton/convexskills --skill convex-file-storage