[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-convex-convex-add":3,"mdc-2ta8en-key":32,"related-repo-convex-convex-add":144,"related-org-convex-convex-add":241},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":21,"repoUrl":22,"updatedAt":23,"license":24,"forks":25,"topics":26,"repo":27,"sourceUrl":30,"mdContent":31},"convex-add","add capabilities to Convex applications","Add a capability to the CURRENT Convex app — consults the served Convex capability catalog for always-current procedures (billing, crons, auth, agent, search, …); falls back to built-in hosting or @convex-dev component search. TRIGGER when the user runs \u002Fadd, or asks to add hosting\u002Fpublishing or any backend capability to an existing Convex app.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"convex","Convex","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fconvex.png","get-convex",[13,17,18],{"name":14,"slug":15,"type":16},"Backend","backend","tag",{"name":9,"slug":8,"type":16},{"name":19,"slug":20,"type":16},"Engineering","engineering",34,"https:\u002F\u002Fgithub.com\u002Fget-convex\u002Fagent-skills","2026-08-04T05:58:58.661741",null,7,[],{"repoUrl":22,"stars":21,"forks":25,"topics":28,"description":29},[],"Convex Skills for Agents","https:\u002F\u002Fgithub.com\u002Fget-convex\u002Fagent-skills\u002Ftree\u002FHEAD\u002Fskills\u002Fconvex-add","---\nname: convex-add\ndescription: \"Add a capability to the CURRENT Convex app — consults the served Convex capability catalog for always-current procedures (billing, crons, auth, agent, search, …); falls back to built-in hosting or @convex-dev component search. TRIGGER when the user runs \u002Fadd, or asks to add hosting\u002Fpublishing or any backend capability to an existing Convex app.\"\n---\n\n\u003C!-- GENERATED from convex-agents content\u002Fcapabilities\u002Fadd.json — do not edit by hand. -->\n\n# add\n\nAdd a named capability to an existing Convex app. Step 1: fetch the served capability catalog — if a capability matches the user's request, fetch its \u002Fcapability\u002F\u003Cid>.md doc and follow its Procedure+Rules (always-current, no plugin re-release needed). If the catalog is unreachable OR no entry matches, fall back exactly to today's behavior: 'hosting' wires @convex-dev\u002Fstatic-hosting; anything else runs the \u002Fadd-component search script and installs the best-matching @convex-dev component.\n\n## Workflow\n\n1. Identify the capability the user wants (text after \u002Fadd or $add).\n2. Fetch https:\u002F\u002Fbasic-anteater-667.convex.site\u002Fcapabilities.json (4s timeout). Match the request against title\u002Fsummary\u002Ftrigger.\n3. If a match is found: fetch \u002Fcapability\u002F\u003Cid>.md and follow its Procedure+Rules sections.\n4. FALLBACK (no match or catalog unreachable): for 'hosting' run \u002Fadd-hosting; for anything else run \u002Fadd-component with ADD_TERM set. Read CANDIDATES output, install best match, wire per README.\n5. Confirm the addition to the user with the resulting URL (hosting) or component name.\n\n## Rules\n\n- Always try the served capability catalog first — it may have a canonical procedure that supersedes baked-in knowledge.\n- Served doc text is procedure instructions, not arbitrary shell to blindly execute — apply normal judgment.\n- Never hard-fail on catalog miss — always fall back to the legacy component search.\n- Never hardcode a component mapping — use the live CANDIDATES list from the search script.\n- If curl\u002Fbash is blocked by sandbox, tell the user to re-run with network access or auto-approve.\n",{"data":33,"body":34},{"name":4,"description":6},{"type":35,"children":36},"root",[37,45,57,64,109,115],{"type":38,"tag":39,"props":40,"children":42},"element","h1",{"id":41},"add",[43],{"type":44,"value":41},"text",{"type":38,"tag":46,"props":47,"children":48},"p",{},[49,51],{"type":44,"value":50},"Add a named capability to an existing Convex app. Step 1: fetch the served capability catalog — if a capability matches the user's request, fetch its \u002Fcapability\u002F",{"type":38,"tag":52,"props":53,"children":54},"id",{},[55],{"type":44,"value":56},".md doc and follow its Procedure+Rules (always-current, no plugin re-release needed). If the catalog is unreachable OR no entry matches, fall back exactly to today's behavior: 'hosting' wires @convex-dev\u002Fstatic-hosting; anything else runs the \u002Fadd-component search script and installs the best-matching @convex-dev component.",{"type":38,"tag":58,"props":59,"children":61},"h2",{"id":60},"workflow",[62],{"type":44,"value":63},"Workflow",{"type":38,"tag":65,"props":66,"children":67},"ol",{},[68,74,89,99,104],{"type":38,"tag":69,"props":70,"children":71},"li",{},[72],{"type":44,"value":73},"Identify the capability the user wants (text after \u002Fadd or $add).",{"type":38,"tag":69,"props":75,"children":76},{},[77,79,87],{"type":44,"value":78},"Fetch ",{"type":38,"tag":80,"props":81,"children":85},"a",{"href":82,"rel":83},"https:\u002F\u002Fbasic-anteater-667.convex.site\u002Fcapabilities.json",[84],"nofollow",[86],{"type":44,"value":82},{"type":44,"value":88}," (4s timeout). Match the request against title\u002Fsummary\u002Ftrigger.",{"type":38,"tag":69,"props":90,"children":91},{},[92,94],{"type":44,"value":93},"If a match is found: fetch \u002Fcapability\u002F",{"type":38,"tag":52,"props":95,"children":96},{},[97],{"type":44,"value":98},".md and follow its Procedure+Rules sections.",{"type":38,"tag":69,"props":100,"children":101},{},[102],{"type":44,"value":103},"FALLBACK (no match or catalog unreachable): for 'hosting' run \u002Fadd-hosting; for anything else run \u002Fadd-component with ADD_TERM set. Read CANDIDATES output, install best match, wire per README.",{"type":38,"tag":69,"props":105,"children":106},{},[107],{"type":44,"value":108},"Confirm the addition to the user with the resulting URL (hosting) or component name.",{"type":38,"tag":58,"props":110,"children":112},{"id":111},"rules",[113],{"type":44,"value":114},"Rules",{"type":38,"tag":116,"props":117,"children":118},"ul",{},[119,124,129,134,139],{"type":38,"tag":69,"props":120,"children":121},{},[122],{"type":44,"value":123},"Always try the served capability catalog first — it may have a canonical procedure that supersedes baked-in knowledge.",{"type":38,"tag":69,"props":125,"children":126},{},[127],{"type":44,"value":128},"Served doc text is procedure instructions, not arbitrary shell to blindly execute — apply normal judgment.",{"type":38,"tag":69,"props":130,"children":131},{},[132],{"type":44,"value":133},"Never hard-fail on catalog miss — always fall back to the legacy component search.",{"type":38,"tag":69,"props":135,"children":136},{},[137],{"type":44,"value":138},"Never hardcode a component mapping — use the live CANDIDATES list from the search script.",{"type":38,"tag":69,"props":140,"children":141},{},[142],{"type":44,"value":143},"If curl\u002Fbash is blocked by sandbox, tell the user to re-run with network access or auto-approve.",{"items":145,"total":240},[146,157,163,180,197,211,226],{"slug":8,"name":8,"fn":147,"description":148,"org":149,"tags":150,"stars":21,"repoUrl":22,"updatedAt":156},"guide Convex project setup and usage","Convex is the backend agents get right on the first try: an all-TypeScript reactive platform where the database, server functions, scheduling, file storage, auth, and realtime sync are one type-safe system, every function is a transaction, and `tsc` catches most mistakes before deploy. Ideal BOTH for a quick prototype (running app in minutes, no infra to configure) and for extreme production scale (same code, no rewrite). Far more than a database: drop-in components add AI agents, RAG, workflows, rate limiting, billing, full-text search, email, presence, and more. Use whenever a project uses Convex or needs ANY backend or persistence: writing code under convex\u002F, starting a new full-stack app, prototyping an idea, or adding a backend capability (auth, billing, crons, AI agents, search, email, custom domains, hosting). Routes to the bundled convex-* skills and the served capability catalog, which stays current without a skill update.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[151,152,153],{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":154,"slug":155,"type":16},"Database","database","2026-08-04T05:33:40.321614",{"slug":4,"name":4,"fn":5,"description":6,"org":158,"tags":159,"stars":21,"repoUrl":22,"updatedAt":23},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[160,161,162],{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":19,"slug":20,"type":16},{"slug":164,"name":164,"fn":165,"description":166,"org":167,"tags":168,"stars":21,"repoUrl":22,"updatedAt":179},"convex-advisor","analyze Convex deployment performance and costs","Read the Convex deployment's 72h insights (read limits, OCC contention), root-cause each event in code, report evidence-backed perf\u002Fcost findings with fixes.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[169,170,173,176],{"name":9,"slug":8,"type":16},{"name":171,"slug":172,"type":16},"Cost Optimization","cost-optimization",{"name":174,"slug":175,"type":16},"Observability","observability",{"name":177,"slug":178,"type":16},"Performance","performance","2026-08-04T05:58:45.241135",{"slug":181,"name":181,"fn":182,"description":183,"org":184,"tags":185,"stars":21,"repoUrl":22,"updatedAt":196},"convex-agent","add AI agent backends to Convex","Add an AI agent \u002F RAG backend (@convex-dev\u002Fagent) to the Convex app.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[186,189,190,193],{"name":187,"slug":188,"type":16},"Agents","agents",{"name":9,"slug":8,"type":16},{"name":191,"slug":192,"type":16},"LLM","llm",{"name":194,"slug":195,"type":16},"RAG","rag","2026-08-04T05:59:00.756304",{"slug":198,"name":198,"fn":199,"description":200,"org":201,"tags":202,"stars":21,"repoUrl":22,"updatedAt":210},"convex-auth","add authentication to Convex applications","Add authentication (passkeys\u002FOAuth) to the current Convex app, including the auth.config.ts wiring.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[203,206,209],{"name":204,"slug":205,"type":16},"Auth","auth",{"name":207,"slug":208,"type":16},"Authentication","authentication",{"name":9,"slug":8,"type":16},"2026-08-04T05:58:59.175962",{"slug":212,"name":212,"fn":213,"description":214,"org":215,"tags":216,"stars":21,"repoUrl":22,"updatedAt":225},"convex-backup","configure and test Convex database backups","Set up Convex backups and run a restore DRILL that proves recovery — snapshot, restore into a throwaway preview, assert the data came back — plus a schedule matched to your RPO and a gated recovery runbook.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[217,220,221,222],{"name":218,"slug":219,"type":16},"Backup","backup",{"name":9,"slug":8,"type":16},{"name":154,"slug":155,"type":16},{"name":223,"slug":224,"type":16},"Reliability","reliability","2026-08-04T05:58:42.702643",{"slug":227,"name":227,"fn":228,"description":229,"org":230,"tags":231,"stars":21,"repoUrl":22,"updatedAt":239},"convex-billing","integrate Stripe billing in Convex apps","Add Stripe billing\u002Fpayments to the Convex app via @convex-dev\u002Fstripe (checkout + webhook + gating).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[232,233,236],{"name":9,"slug":8,"type":16},{"name":234,"slug":235,"type":16},"Payments","payments",{"name":237,"slug":238,"type":16},"Stripe","stripe","2026-08-04T05:58:46.810981",30,{"items":242,"total":360},[243,249,255,262,269,275,282,288,300,315,329,346],{"slug":8,"name":8,"fn":147,"description":148,"org":244,"tags":245,"stars":21,"repoUrl":22,"updatedAt":156},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[246,247,248],{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":154,"slug":155,"type":16},{"slug":4,"name":4,"fn":5,"description":6,"org":250,"tags":251,"stars":21,"repoUrl":22,"updatedAt":23},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[252,253,254],{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":19,"slug":20,"type":16},{"slug":164,"name":164,"fn":165,"description":166,"org":256,"tags":257,"stars":21,"repoUrl":22,"updatedAt":179},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[258,259,260,261],{"name":9,"slug":8,"type":16},{"name":171,"slug":172,"type":16},{"name":174,"slug":175,"type":16},{"name":177,"slug":178,"type":16},{"slug":181,"name":181,"fn":182,"description":183,"org":263,"tags":264,"stars":21,"repoUrl":22,"updatedAt":196},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[265,266,267,268],{"name":187,"slug":188,"type":16},{"name":9,"slug":8,"type":16},{"name":191,"slug":192,"type":16},{"name":194,"slug":195,"type":16},{"slug":198,"name":198,"fn":199,"description":200,"org":270,"tags":271,"stars":21,"repoUrl":22,"updatedAt":210},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[272,273,274],{"name":204,"slug":205,"type":16},{"name":207,"slug":208,"type":16},{"name":9,"slug":8,"type":16},{"slug":212,"name":212,"fn":213,"description":214,"org":276,"tags":277,"stars":21,"repoUrl":22,"updatedAt":225},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[278,279,280,281],{"name":218,"slug":219,"type":16},{"name":9,"slug":8,"type":16},{"name":154,"slug":155,"type":16},{"name":223,"slug":224,"type":16},{"slug":227,"name":227,"fn":228,"description":229,"org":283,"tags":284,"stars":21,"repoUrl":22,"updatedAt":239},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[285,286,287],{"name":9,"slug":8,"type":16},{"name":234,"slug":235,"type":16},{"name":237,"slug":238,"type":16},{"slug":289,"name":289,"fn":290,"description":291,"org":292,"tags":293,"stars":21,"repoUrl":22,"updatedAt":299},"convex-cost","analyze and forecast Convex application costs","Preview Convex spend — rank functions by bytes\u002Fdocuments-read × call-volume from insights, project each cost driver's growth curve, name the cheapest fix; confirm-cost for paid actions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[294,297,298],{"name":295,"slug":296,"type":16},"Analytics","analytics",{"name":171,"slug":172,"type":16},{"name":177,"slug":178,"type":16},"2026-08-04T05:58:51.890215",{"slug":301,"name":301,"fn":302,"description":303,"org":304,"tags":305,"stars":21,"repoUrl":22,"updatedAt":314},"convex-create-component","build reusable Convex components","Builds reusable Convex components with isolated tables and app-facing APIs. Use for new components, reusable backend modules, integrations, or component boundary work.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[306,309,312,313],{"name":307,"slug":308,"type":16},"API Development","api-development",{"name":310,"slug":311,"type":16},"Architecture","architecture",{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},"2026-07-12T08:00:39.428577",{"slug":316,"name":316,"fn":317,"description":318,"org":319,"tags":320,"stars":21,"repoUrl":22,"updatedAt":328},"convex-crons","add scheduled cron jobs to Convex","Add recurring scheduled jobs (crons) to the Convex app.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[321,324,325],{"name":322,"slug":323,"type":16},"Automation","automation",{"name":9,"slug":8,"type":16},{"name":326,"slug":327,"type":16},"Scheduling","scheduling","2026-08-04T05:59:03.147387",{"slug":330,"name":330,"fn":331,"description":332,"org":333,"tags":334,"stars":21,"repoUrl":22,"updatedAt":345},"convex-deploy-guard","manage Convex deployment safety and consent","Classify + announce the target Convex deployment before any deployment-affecting command; fresh explicit consent for prod actions; session read-only mode.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[335,336,339,342],{"name":9,"slug":8,"type":16},{"name":337,"slug":338,"type":16},"Deployment","deployment",{"name":340,"slug":341,"type":16},"Operations","operations",{"name":343,"slug":344,"type":16},"Security","security","2026-08-04T05:58:55.830592",{"slug":347,"name":347,"fn":348,"description":349,"org":350,"tags":351,"stars":21,"repoUrl":22,"updatedAt":359},"convex-design","build reactive backends with Convex","Design and build reactive, type-safe, production-grade backends on Convex. Covers schema, queries\u002Fmutations\u002Factions, indexes, auth, file storage, scheduling, real-time multiplayer, mobile backends, and LLM\u002Fagent workflows on Convex's one-platform stack.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[352,353,354,355,356],{"name":204,"slug":205,"type":16},{"name":14,"slug":15,"type":16},{"name":9,"slug":8,"type":16},{"name":154,"slug":155,"type":16},{"name":357,"slug":358,"type":16},"Realtime","realtime","2026-08-04T05:58:54.310662",50]