[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-stripe-stripe-projects":3,"mdc--qeoju5-key":41,"related-org-stripe-stripe-projects":1463,"related-repo-stripe-stripe-projects":1583},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":36,"sourceUrl":39,"mdContent":40},"stripe-projects","bootstrap apps with Stripe Projects","Use when the user wants to provision infrastructure or third-party services using Stripe Projects. Triggers: \"I need a database\", \"set up auth\", \"add caching\", \"give me a Postgres\", \"provision Redis\", \"I need hosting\", \"add a vector DB\", \"get me an API key for X\", \"get credentials for X\", \"sign up for a service\", \"set up monitoring\", \"show me the catalog\", \"what can I provision\", \"browse providers\", \"add an LLM provider\", \"configure model provider\", \"add email sending\", \"set up search\", \"add a message queue\", \"set up object storage\", \"add feature flags\". Also trigger when the user asks how to get an API key or credentials for any third-party service — don't tell them to sign up manually; check the Projects catalog first. Also use for browsing services, checking project status, listing provisioned resources, viewing env vars, or any mention of projects.dev or adding\u002Fprovisioning\u002Fconnecting a cloud service.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"stripe","Stripe","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fstripe.png",[12,16,19,22],{"name":13,"slug":14,"type":15},"SaaS","saas","tag",{"name":17,"slug":18,"type":15},"Local Development","local-development",{"name":20,"slug":21,"type":15},"CLI","cli",{"name":9,"slug":8,"type":15},1696,"https:\u002F\u002Fgithub.com\u002Fstripe\u002Fai","2026-07-17T05:32:51.44023",null,309,[29,30,31,32,33,34,35],"ai","llm","llm-agents","mcp","python","typescript","workflows",{"repoUrl":24,"stars":23,"forks":27,"topics":37,"description":38},[29,30,31,32,33,34,35],"One-stop shop for building AI-powered products and businesses with Stripe.","https:\u002F\u002Fgithub.com\u002Fstripe\u002Fai\u002Ftree\u002FHEAD\u002Fskills\u002Fstripe-projects","---\nname: stripe-projects\ndescription: >\n  Use when the user wants to provision infrastructure or third-party services\n  using Stripe Projects. Triggers: \"I need a database\", \"set up auth\", \"add\n  caching\", \"give me a Postgres\", \"provision Redis\", \"I need hosting\", \"add a\n  vector DB\", \"get me an API key for X\", \"get credentials for X\", \"sign up for a\n  service\", \"set up monitoring\", \"show me the catalog\", \"what can I provision\",\n  \"browse providers\", \"add an LLM provider\", \"configure model provider\", \"add\n  email sending\", \"set up search\", \"add a message queue\", \"set up object\n  storage\", \"add feature flags\". Also trigger when the user asks how to get an\n  API key or credentials for any third-party service — don't tell them to sign\n  up manually; check the Projects catalog first. Also use for browsing services,\n  checking project status, listing provisioned resources, viewing env vars, or\n  any mention of projects.dev or adding\u002Fprovisioning\u002Fconnecting a cloud service.\nallowed-tools:\n  - Bash(stripe *)\n  - Bash(which stripe)\n  - Bash(brew install stripe\u002Fstripe-cli\u002Fstripe)\n  - Bash(brew upgrade stripe\u002Fstripe-cli\u002Fstripe)\n  - Skill\n  - Read\n\n---\n\n## Stripe Projects — Service Provisioning\n\nProvision third-party services (databases, auth, hosting, analytics, caching, AI, observability) and retrieve API keys\u002Ftokens using the Stripe Projects CLI plugin.\n\n## Workflow\n\n### Step 1: Ensure Stripe CLI + Projects Plugin\n\nCheck if the Stripe CLI is available:\n\n```bash\nwhich stripe && stripe --version\n```\n\nIf not installed or below version 1.40.0:\n\n- **macOS (Homebrew):** `brew install stripe\u002Fstripe-cli\u002Fstripe` (or `brew upgrade stripe\u002Fstripe-cli\u002Fstripe`)\n- **Other platforms:** Direct the user to https:\u002F\u002Fdocs.stripe.com\u002Fstripe-cli\u002Finstall for up-to-date instructions.\n\nThen ensure the Projects plugin is installed:\n\n```bash\nstripe plugin install projects\n```\n\n### Step 2: Search the Catalog\n\nConfirm the requested provider\u002Fservice exists:\n\n```bash\nstripe projects search \u003Cquery> --json\n```\n\nIf `result_count` is 0, inform the user the service was not found and stop.\n\nIf the user’s request is vague (for example, “I need a database”), browse the catalog to suggest options:\n\n```bash\nstripe projects catalog --json\n```\n\n### Step 3: Initialize a Project\n\nCheck if a project is already initialized:\n\n```bash\nstripe projects status --json\n```\n\nIf not initialized, run a preflight check first to reveal all blockers at once:\n\n```bash\nstripe projects init --preflight --json\n```\n\nIf all preflight checks pass (or the only failures are `TOS_ACCEPTANCE_REQUIRED` or `Stripe session authenticated`), proceed:\n\n```bash\nstripe projects init --accept-tos --yes\n```\n\n**Important:** `stripe projects init` installs the `stripe-projects-cli` skill locally at `.claude\u002Fskills\u002Fstripe-projects-cli`. This skill contains the full post-init command reference.\n\n### Step 4: Hand Off to stripe-projects-cli\n\nVerify the skill was installed:\n\n```bash\ntest -f .claude\u002Fskills\u002Fstripe-projects-cli\u002FSKILL.md && echo \"OK\" || echo \"MISSING\"\n```\n\nIf `MISSING`: re-run `stripe projects init --accept-tos --yes` — the skill is bundled with the Projects plugin and installed during init.\n\nIf `OK`: use the locally-installed `stripe-projects-cli` skill (invoke using the Skill tool with name `stripe-projects-cli`) to continue the workflow — adding services, managing credentials, and configuring the project.\n\n### Step 5: Summarize and Suggest\n\nAfter a successful service addition, provide output in this format:\n\n| Field | Value |\n| --- | --- |\n| Provider | `\u003Cprovider name>` |\n| Service | `\u003Cservice type>` |\n| Tier | `\u003Ctier>` |\n| Env vars | `\u003Cvariable names only — never values>` |\n\nThen suggest 3–5 complementary services from different categories in the catalog (for example, if user added a database, suggest auth, hosting, or observability). Only reference services that actually appear in `stripe projects catalog --json` output — never fabricate commands or provider names.\n\n## CLI as Source of Truth\n\nThe CLI manages all state under `.projects\u002F` and generates `.env` files. Don’t hand-edit these files. If you need to inspect project state, use the appropriate CLI command:\n\n| Task | Command |\n| --- | --- |\n| View provisioned services | `stripe projects status --json` |\n| List env var names | `stripe projects env --json` |\n| Check project health | `stripe projects status --json` |\n| Browse available services | `stripe projects catalog --json` |\n\nOnly inspect `.projects\u002F` or `.env` directly if the user explicitly asks you to — the CLI is authoritative, so manual edits may be overwritten.\n\n## Project Variables\n\nUse project variables when the user wants to store an environment variable that doesn’t come from a provisioned provider resource, such as an app URL, feature flag, or self-managed API key.\n\nCreate or update a project variable for the active environment:\n\n```bash\nstripe projects variables set \u003Cname> --env-key \u003CENV_KEY> --value \u003Cvalue>\n```\n\nA successful `variables set` syncs the active environment output file immediately. If the user doesn’t provide the value, run the command without `--value` only in interactive mode so the CLI can prompt securely. Never print secret values in your response.\n\nBind an existing project variable to the active environment:\n\n```bash\nstripe projects env add \u003Cname> --variable --env-key \u003CENV_KEY>\n```\n\nRemove a variable binding from the active environment without deleting the stored variable:\n\n```bash\nstripe projects env remove \u003Cname> --variable\n```\n\nList and delete project variables:\n\n```bash\nstripe projects variables list --json\nstripe projects variables delete \u003Cname> --yes\n```\n\n## Error Handling\n\n| Error code | Cause | Recovery |\n| --- | --- | --- |\n| `BROWSER_AUTH_REQUIRED` | No auth session and browser needed | Tell user to run `stripe login` — you cannot fix this |\n| `ACCOUNT_NOT_ELIGIBLE` | Account not onboarded for Projects | Tell user to run `stripe login` or visit https:\u002F\u002Fprojects.dev |\n| `TOS_ACCEPTANCE_REQUIRED` | Developer or provider terms not accepted | Re-run with `--accept-tos` |\n| `PROVIDER_NOT_LINKED` | Provider requires OAuth linking | Run `stripe projects link \u003Cprovider>` — may open a browser |\n| `PLAN_REQUIRED` | Deployable needs a plan provisioned first | Provision the plan listed in the error, then retry |\n| `UNKNOWN_ERROR` | Unexpected failure | Show the full error message to the user and suggest running with `--debug` for diagnostics |\n| Service not in catalog | Query returned 0 results | Inform user; suggest `stripe projects catalog --json` to browse alternatives |\n| CLI not found | Stripe CLI not installed | Install using Homebrew (macOS) or follow https:\u002F\u002Fdocs.stripe.com\u002Fstripe-cli\u002Finstall |\n",{"data":42,"body":50},{"name":4,"description":6,"allowed-tools":43},[44,45,46,47,48,49],"Bash(stripe *)","Bash(which stripe)","Bash(brew install stripe\u002Fstripe-cli\u002Fstripe)","Bash(brew upgrade stripe\u002Fstripe-cli\u002Fstripe)","Skill","Read",{"type":51,"children":52},"root",[53,62,68,74,81,86,132,137,189,194,223,229,234,284,297,302,329,335,340,367,372,404,425,457,490,496,501,573,592,617,623,628,724,737,743,764,852,870,876,881,886,978,999,1004,1073,1078,1126,1131,1203,1209,1457],{"type":54,"tag":55,"props":56,"children":58},"element","h2",{"id":57},"stripe-projects-service-provisioning",[59],{"type":60,"value":61},"text","Stripe Projects — Service Provisioning",{"type":54,"tag":63,"props":64,"children":65},"p",{},[66],{"type":60,"value":67},"Provision third-party services (databases, auth, hosting, analytics, caching, AI, observability) and retrieve API keys\u002Ftokens using the Stripe Projects CLI plugin.",{"type":54,"tag":55,"props":69,"children":71},{"id":70},"workflow",[72],{"type":60,"value":73},"Workflow",{"type":54,"tag":75,"props":76,"children":78},"h3",{"id":77},"step-1-ensure-stripe-cli-projects-plugin",[79],{"type":60,"value":80},"Step 1: Ensure Stripe CLI + Projects Plugin",{"type":54,"tag":63,"props":82,"children":83},{},[84],{"type":60,"value":85},"Check if the Stripe CLI is available:",{"type":54,"tag":87,"props":88,"children":93},"pre",{"className":89,"code":90,"language":91,"meta":92,"style":92},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","which stripe && stripe --version\n","bash","",[94],{"type":54,"tag":95,"props":96,"children":97},"code",{"__ignoreMap":92},[98],{"type":54,"tag":99,"props":100,"children":103},"span",{"class":101,"line":102},"line",1,[104,110,116,122,127],{"type":54,"tag":99,"props":105,"children":107},{"style":106},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[108],{"type":60,"value":109},"which",{"type":54,"tag":99,"props":111,"children":113},{"style":112},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[114],{"type":60,"value":115}," stripe",{"type":54,"tag":99,"props":117,"children":119},{"style":118},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[120],{"type":60,"value":121}," &&",{"type":54,"tag":99,"props":123,"children":125},{"style":124},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[126],{"type":60,"value":115},{"type":54,"tag":99,"props":128,"children":129},{"style":112},[130],{"type":60,"value":131}," --version\n",{"type":54,"tag":63,"props":133,"children":134},{},[135],{"type":60,"value":136},"If not installed or below version 1.40.0:",{"type":54,"tag":138,"props":139,"children":140},"ul",{},[141,169],{"type":54,"tag":142,"props":143,"children":144},"li",{},[145,151,153,159,161,167],{"type":54,"tag":146,"props":147,"children":148},"strong",{},[149],{"type":60,"value":150},"macOS (Homebrew):",{"type":60,"value":152}," ",{"type":54,"tag":95,"props":154,"children":156},{"className":155},[],[157],{"type":60,"value":158},"brew install stripe\u002Fstripe-cli\u002Fstripe",{"type":60,"value":160}," (or ",{"type":54,"tag":95,"props":162,"children":164},{"className":163},[],[165],{"type":60,"value":166},"brew upgrade stripe\u002Fstripe-cli\u002Fstripe",{"type":60,"value":168},")",{"type":54,"tag":142,"props":170,"children":171},{},[172,177,179,187],{"type":54,"tag":146,"props":173,"children":174},{},[175],{"type":60,"value":176},"Other platforms:",{"type":60,"value":178}," Direct the user to ",{"type":54,"tag":180,"props":181,"children":185},"a",{"href":182,"rel":183},"https:\u002F\u002Fdocs.stripe.com\u002Fstripe-cli\u002Finstall",[184],"nofollow",[186],{"type":60,"value":182},{"type":60,"value":188}," for up-to-date instructions.",{"type":54,"tag":63,"props":190,"children":191},{},[192],{"type":60,"value":193},"Then ensure the Projects plugin is installed:",{"type":54,"tag":87,"props":195,"children":197},{"className":89,"code":196,"language":91,"meta":92,"style":92},"stripe plugin install projects\n",[198],{"type":54,"tag":95,"props":199,"children":200},{"__ignoreMap":92},[201],{"type":54,"tag":99,"props":202,"children":203},{"class":101,"line":102},[204,208,213,218],{"type":54,"tag":99,"props":205,"children":206},{"style":124},[207],{"type":60,"value":8},{"type":54,"tag":99,"props":209,"children":210},{"style":112},[211],{"type":60,"value":212}," plugin",{"type":54,"tag":99,"props":214,"children":215},{"style":112},[216],{"type":60,"value":217}," install",{"type":54,"tag":99,"props":219,"children":220},{"style":112},[221],{"type":60,"value":222}," projects\n",{"type":54,"tag":75,"props":224,"children":226},{"id":225},"step-2-search-the-catalog",[227],{"type":60,"value":228},"Step 2: Search the Catalog",{"type":54,"tag":63,"props":230,"children":231},{},[232],{"type":60,"value":233},"Confirm the requested provider\u002Fservice exists:",{"type":54,"tag":87,"props":235,"children":237},{"className":89,"code":236,"language":91,"meta":92,"style":92},"stripe projects search \u003Cquery> --json\n",[238],{"type":54,"tag":95,"props":239,"children":240},{"__ignoreMap":92},[241],{"type":54,"tag":99,"props":242,"children":243},{"class":101,"line":102},[244,248,253,258,263,268,274,279],{"type":54,"tag":99,"props":245,"children":246},{"style":124},[247],{"type":60,"value":8},{"type":54,"tag":99,"props":249,"children":250},{"style":112},[251],{"type":60,"value":252}," projects",{"type":54,"tag":99,"props":254,"children":255},{"style":112},[256],{"type":60,"value":257}," search",{"type":54,"tag":99,"props":259,"children":260},{"style":118},[261],{"type":60,"value":262}," \u003C",{"type":54,"tag":99,"props":264,"children":265},{"style":112},[266],{"type":60,"value":267},"quer",{"type":54,"tag":99,"props":269,"children":271},{"style":270},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[272],{"type":60,"value":273},"y",{"type":54,"tag":99,"props":275,"children":276},{"style":118},[277],{"type":60,"value":278},">",{"type":54,"tag":99,"props":280,"children":281},{"style":112},[282],{"type":60,"value":283}," --json\n",{"type":54,"tag":63,"props":285,"children":286},{},[287,289,295],{"type":60,"value":288},"If ",{"type":54,"tag":95,"props":290,"children":292},{"className":291},[],[293],{"type":60,"value":294},"result_count",{"type":60,"value":296}," is 0, inform the user the service was not found and stop.",{"type":54,"tag":63,"props":298,"children":299},{},[300],{"type":60,"value":301},"If the user’s request is vague (for example, “I need a database”), browse the catalog to suggest options:",{"type":54,"tag":87,"props":303,"children":305},{"className":89,"code":304,"language":91,"meta":92,"style":92},"stripe projects catalog --json\n",[306],{"type":54,"tag":95,"props":307,"children":308},{"__ignoreMap":92},[309],{"type":54,"tag":99,"props":310,"children":311},{"class":101,"line":102},[312,316,320,325],{"type":54,"tag":99,"props":313,"children":314},{"style":124},[315],{"type":60,"value":8},{"type":54,"tag":99,"props":317,"children":318},{"style":112},[319],{"type":60,"value":252},{"type":54,"tag":99,"props":321,"children":322},{"style":112},[323],{"type":60,"value":324}," catalog",{"type":54,"tag":99,"props":326,"children":327},{"style":112},[328],{"type":60,"value":283},{"type":54,"tag":75,"props":330,"children":332},{"id":331},"step-3-initialize-a-project",[333],{"type":60,"value":334},"Step 3: Initialize a Project",{"type":54,"tag":63,"props":336,"children":337},{},[338],{"type":60,"value":339},"Check if a project is already initialized:",{"type":54,"tag":87,"props":341,"children":343},{"className":89,"code":342,"language":91,"meta":92,"style":92},"stripe projects status --json\n",[344],{"type":54,"tag":95,"props":345,"children":346},{"__ignoreMap":92},[347],{"type":54,"tag":99,"props":348,"children":349},{"class":101,"line":102},[350,354,358,363],{"type":54,"tag":99,"props":351,"children":352},{"style":124},[353],{"type":60,"value":8},{"type":54,"tag":99,"props":355,"children":356},{"style":112},[357],{"type":60,"value":252},{"type":54,"tag":99,"props":359,"children":360},{"style":112},[361],{"type":60,"value":362}," status",{"type":54,"tag":99,"props":364,"children":365},{"style":112},[366],{"type":60,"value":283},{"type":54,"tag":63,"props":368,"children":369},{},[370],{"type":60,"value":371},"If not initialized, run a preflight check first to reveal all blockers at once:",{"type":54,"tag":87,"props":373,"children":375},{"className":89,"code":374,"language":91,"meta":92,"style":92},"stripe projects init --preflight --json\n",[376],{"type":54,"tag":95,"props":377,"children":378},{"__ignoreMap":92},[379],{"type":54,"tag":99,"props":380,"children":381},{"class":101,"line":102},[382,386,390,395,400],{"type":54,"tag":99,"props":383,"children":384},{"style":124},[385],{"type":60,"value":8},{"type":54,"tag":99,"props":387,"children":388},{"style":112},[389],{"type":60,"value":252},{"type":54,"tag":99,"props":391,"children":392},{"style":112},[393],{"type":60,"value":394}," init",{"type":54,"tag":99,"props":396,"children":397},{"style":112},[398],{"type":60,"value":399}," --preflight",{"type":54,"tag":99,"props":401,"children":402},{"style":112},[403],{"type":60,"value":283},{"type":54,"tag":63,"props":405,"children":406},{},[407,409,415,417,423],{"type":60,"value":408},"If all preflight checks pass (or the only failures are ",{"type":54,"tag":95,"props":410,"children":412},{"className":411},[],[413],{"type":60,"value":414},"TOS_ACCEPTANCE_REQUIRED",{"type":60,"value":416}," or ",{"type":54,"tag":95,"props":418,"children":420},{"className":419},[],[421],{"type":60,"value":422},"Stripe session authenticated",{"type":60,"value":424},"), proceed:",{"type":54,"tag":87,"props":426,"children":428},{"className":89,"code":427,"language":91,"meta":92,"style":92},"stripe projects init --accept-tos --yes\n",[429],{"type":54,"tag":95,"props":430,"children":431},{"__ignoreMap":92},[432],{"type":54,"tag":99,"props":433,"children":434},{"class":101,"line":102},[435,439,443,447,452],{"type":54,"tag":99,"props":436,"children":437},{"style":124},[438],{"type":60,"value":8},{"type":54,"tag":99,"props":440,"children":441},{"style":112},[442],{"type":60,"value":252},{"type":54,"tag":99,"props":444,"children":445},{"style":112},[446],{"type":60,"value":394},{"type":54,"tag":99,"props":448,"children":449},{"style":112},[450],{"type":60,"value":451}," --accept-tos",{"type":54,"tag":99,"props":453,"children":454},{"style":112},[455],{"type":60,"value":456}," --yes\n",{"type":54,"tag":63,"props":458,"children":459},{},[460,465,466,472,474,480,482,488],{"type":54,"tag":146,"props":461,"children":462},{},[463],{"type":60,"value":464},"Important:",{"type":60,"value":152},{"type":54,"tag":95,"props":467,"children":469},{"className":468},[],[470],{"type":60,"value":471},"stripe projects init",{"type":60,"value":473}," installs the ",{"type":54,"tag":95,"props":475,"children":477},{"className":476},[],[478],{"type":60,"value":479},"stripe-projects-cli",{"type":60,"value":481}," skill locally at ",{"type":54,"tag":95,"props":483,"children":485},{"className":484},[],[486],{"type":60,"value":487},".claude\u002Fskills\u002Fstripe-projects-cli",{"type":60,"value":489},". This skill contains the full post-init command reference.",{"type":54,"tag":75,"props":491,"children":493},{"id":492},"step-4-hand-off-to-stripe-projects-cli",[494],{"type":60,"value":495},"Step 4: Hand Off to stripe-projects-cli",{"type":54,"tag":63,"props":497,"children":498},{},[499],{"type":60,"value":500},"Verify the skill was installed:",{"type":54,"tag":87,"props":502,"children":504},{"className":89,"code":503,"language":91,"meta":92,"style":92},"test -f .claude\u002Fskills\u002Fstripe-projects-cli\u002FSKILL.md && echo \"OK\" || echo \"MISSING\"\n",[505],{"type":54,"tag":95,"props":506,"children":507},{"__ignoreMap":92},[508],{"type":54,"tag":99,"props":509,"children":510},{"class":101,"line":102},[511,516,521,526,530,535,540,545,550,555,559,563,568],{"type":54,"tag":99,"props":512,"children":513},{"style":106},[514],{"type":60,"value":515},"test",{"type":54,"tag":99,"props":517,"children":518},{"style":112},[519],{"type":60,"value":520}," -f",{"type":54,"tag":99,"props":522,"children":523},{"style":112},[524],{"type":60,"value":525}," .claude\u002Fskills\u002Fstripe-projects-cli\u002FSKILL.md",{"type":54,"tag":99,"props":527,"children":528},{"style":118},[529],{"type":60,"value":121},{"type":54,"tag":99,"props":531,"children":532},{"style":106},[533],{"type":60,"value":534}," echo",{"type":54,"tag":99,"props":536,"children":537},{"style":118},[538],{"type":60,"value":539}," \"",{"type":54,"tag":99,"props":541,"children":542},{"style":112},[543],{"type":60,"value":544},"OK",{"type":54,"tag":99,"props":546,"children":547},{"style":118},[548],{"type":60,"value":549},"\"",{"type":54,"tag":99,"props":551,"children":552},{"style":118},[553],{"type":60,"value":554}," ||",{"type":54,"tag":99,"props":556,"children":557},{"style":106},[558],{"type":60,"value":534},{"type":54,"tag":99,"props":560,"children":561},{"style":118},[562],{"type":60,"value":539},{"type":54,"tag":99,"props":564,"children":565},{"style":112},[566],{"type":60,"value":567},"MISSING",{"type":54,"tag":99,"props":569,"children":570},{"style":118},[571],{"type":60,"value":572},"\"\n",{"type":54,"tag":63,"props":574,"children":575},{},[576,577,582,584,590],{"type":60,"value":288},{"type":54,"tag":95,"props":578,"children":580},{"className":579},[],[581],{"type":60,"value":567},{"type":60,"value":583},": re-run ",{"type":54,"tag":95,"props":585,"children":587},{"className":586},[],[588],{"type":60,"value":589},"stripe projects init --accept-tos --yes",{"type":60,"value":591}," — the skill is bundled with the Projects plugin and installed during init.",{"type":54,"tag":63,"props":593,"children":594},{},[595,596,601,603,608,610,615],{"type":60,"value":288},{"type":54,"tag":95,"props":597,"children":599},{"className":598},[],[600],{"type":60,"value":544},{"type":60,"value":602},": use the locally-installed ",{"type":54,"tag":95,"props":604,"children":606},{"className":605},[],[607],{"type":60,"value":479},{"type":60,"value":609}," skill (invoke using the Skill tool with name ",{"type":54,"tag":95,"props":611,"children":613},{"className":612},[],[614],{"type":60,"value":479},{"type":60,"value":616},") to continue the workflow — adding services, managing credentials, and configuring the project.",{"type":54,"tag":75,"props":618,"children":620},{"id":619},"step-5-summarize-and-suggest",[621],{"type":60,"value":622},"Step 5: Summarize and Suggest",{"type":54,"tag":63,"props":624,"children":625},{},[626],{"type":60,"value":627},"After a successful service addition, provide output in this format:",{"type":54,"tag":629,"props":630,"children":631},"table",{},[632,651],{"type":54,"tag":633,"props":634,"children":635},"thead",{},[636],{"type":54,"tag":637,"props":638,"children":639},"tr",{},[640,646],{"type":54,"tag":641,"props":642,"children":643},"th",{},[644],{"type":60,"value":645},"Field",{"type":54,"tag":641,"props":647,"children":648},{},[649],{"type":60,"value":650},"Value",{"type":54,"tag":652,"props":653,"children":654},"tbody",{},[655,673,690,707],{"type":54,"tag":637,"props":656,"children":657},{},[658,664],{"type":54,"tag":659,"props":660,"children":661},"td",{},[662],{"type":60,"value":663},"Provider",{"type":54,"tag":659,"props":665,"children":666},{},[667],{"type":54,"tag":95,"props":668,"children":670},{"className":669},[],[671],{"type":60,"value":672},"\u003Cprovider name>",{"type":54,"tag":637,"props":674,"children":675},{},[676,681],{"type":54,"tag":659,"props":677,"children":678},{},[679],{"type":60,"value":680},"Service",{"type":54,"tag":659,"props":682,"children":683},{},[684],{"type":54,"tag":95,"props":685,"children":687},{"className":686},[],[688],{"type":60,"value":689},"\u003Cservice type>",{"type":54,"tag":637,"props":691,"children":692},{},[693,698],{"type":54,"tag":659,"props":694,"children":695},{},[696],{"type":60,"value":697},"Tier",{"type":54,"tag":659,"props":699,"children":700},{},[701],{"type":54,"tag":95,"props":702,"children":704},{"className":703},[],[705],{"type":60,"value":706},"\u003Ctier>",{"type":54,"tag":637,"props":708,"children":709},{},[710,715],{"type":54,"tag":659,"props":711,"children":712},{},[713],{"type":60,"value":714},"Env vars",{"type":54,"tag":659,"props":716,"children":717},{},[718],{"type":54,"tag":95,"props":719,"children":721},{"className":720},[],[722],{"type":60,"value":723},"\u003Cvariable names only — never values>",{"type":54,"tag":63,"props":725,"children":726},{},[727,729,735],{"type":60,"value":728},"Then suggest 3–5 complementary services from different categories in the catalog (for example, if user added a database, suggest auth, hosting, or observability). Only reference services that actually appear in ",{"type":54,"tag":95,"props":730,"children":732},{"className":731},[],[733],{"type":60,"value":734},"stripe projects catalog --json",{"type":60,"value":736}," output — never fabricate commands or provider names.",{"type":54,"tag":55,"props":738,"children":740},{"id":739},"cli-as-source-of-truth",[741],{"type":60,"value":742},"CLI as Source of Truth",{"type":54,"tag":63,"props":744,"children":745},{},[746,748,754,756,762],{"type":60,"value":747},"The CLI manages all state under ",{"type":54,"tag":95,"props":749,"children":751},{"className":750},[],[752],{"type":60,"value":753},".projects\u002F",{"type":60,"value":755}," and generates ",{"type":54,"tag":95,"props":757,"children":759},{"className":758},[],[760],{"type":60,"value":761},".env",{"type":60,"value":763}," files. Don’t hand-edit these files. If you need to inspect project state, use the appropriate CLI command:",{"type":54,"tag":629,"props":765,"children":766},{},[767,783],{"type":54,"tag":633,"props":768,"children":769},{},[770],{"type":54,"tag":637,"props":771,"children":772},{},[773,778],{"type":54,"tag":641,"props":774,"children":775},{},[776],{"type":60,"value":777},"Task",{"type":54,"tag":641,"props":779,"children":780},{},[781],{"type":60,"value":782},"Command",{"type":54,"tag":652,"props":784,"children":785},{},[786,803,820,836],{"type":54,"tag":637,"props":787,"children":788},{},[789,794],{"type":54,"tag":659,"props":790,"children":791},{},[792],{"type":60,"value":793},"View provisioned services",{"type":54,"tag":659,"props":795,"children":796},{},[797],{"type":54,"tag":95,"props":798,"children":800},{"className":799},[],[801],{"type":60,"value":802},"stripe projects status --json",{"type":54,"tag":637,"props":804,"children":805},{},[806,811],{"type":54,"tag":659,"props":807,"children":808},{},[809],{"type":60,"value":810},"List env var names",{"type":54,"tag":659,"props":812,"children":813},{},[814],{"type":54,"tag":95,"props":815,"children":817},{"className":816},[],[818],{"type":60,"value":819},"stripe projects env --json",{"type":54,"tag":637,"props":821,"children":822},{},[823,828],{"type":54,"tag":659,"props":824,"children":825},{},[826],{"type":60,"value":827},"Check project health",{"type":54,"tag":659,"props":829,"children":830},{},[831],{"type":54,"tag":95,"props":832,"children":834},{"className":833},[],[835],{"type":60,"value":802},{"type":54,"tag":637,"props":837,"children":838},{},[839,844],{"type":54,"tag":659,"props":840,"children":841},{},[842],{"type":60,"value":843},"Browse available services",{"type":54,"tag":659,"props":845,"children":846},{},[847],{"type":54,"tag":95,"props":848,"children":850},{"className":849},[],[851],{"type":60,"value":734},{"type":54,"tag":63,"props":853,"children":854},{},[855,857,862,863,868],{"type":60,"value":856},"Only inspect ",{"type":54,"tag":95,"props":858,"children":860},{"className":859},[],[861],{"type":60,"value":753},{"type":60,"value":416},{"type":54,"tag":95,"props":864,"children":866},{"className":865},[],[867],{"type":60,"value":761},{"type":60,"value":869}," directly if the user explicitly asks you to — the CLI is authoritative, so manual edits may be overwritten.",{"type":54,"tag":55,"props":871,"children":873},{"id":872},"project-variables",[874],{"type":60,"value":875},"Project Variables",{"type":54,"tag":63,"props":877,"children":878},{},[879],{"type":60,"value":880},"Use project variables when the user wants to store an environment variable that doesn’t come from a provisioned provider resource, such as an app URL, feature flag, or self-managed API key.",{"type":54,"tag":63,"props":882,"children":883},{},[884],{"type":60,"value":885},"Create or update a project variable for the active environment:",{"type":54,"tag":87,"props":887,"children":889},{"className":89,"code":888,"language":91,"meta":92,"style":92},"stripe projects variables set \u003Cname> --env-key \u003CENV_KEY> --value \u003Cvalue>\n",[890],{"type":54,"tag":95,"props":891,"children":892},{"__ignoreMap":92},[893],{"type":54,"tag":99,"props":894,"children":895},{"class":101,"line":102},[896,900,904,909,914,918,923,928,932,937,941,946,951,955,960,964,969,973],{"type":54,"tag":99,"props":897,"children":898},{"style":124},[899],{"type":60,"value":8},{"type":54,"tag":99,"props":901,"children":902},{"style":112},[903],{"type":60,"value":252},{"type":54,"tag":99,"props":905,"children":906},{"style":112},[907],{"type":60,"value":908}," variables",{"type":54,"tag":99,"props":910,"children":911},{"style":112},[912],{"type":60,"value":913}," set",{"type":54,"tag":99,"props":915,"children":916},{"style":118},[917],{"type":60,"value":262},{"type":54,"tag":99,"props":919,"children":920},{"style":112},[921],{"type":60,"value":922},"nam",{"type":54,"tag":99,"props":924,"children":925},{"style":270},[926],{"type":60,"value":927},"e",{"type":54,"tag":99,"props":929,"children":930},{"style":118},[931],{"type":60,"value":278},{"type":54,"tag":99,"props":933,"children":934},{"style":112},[935],{"type":60,"value":936}," --env-key",{"type":54,"tag":99,"props":938,"children":939},{"style":118},[940],{"type":60,"value":262},{"type":54,"tag":99,"props":942,"children":943},{"style":112},[944],{"type":60,"value":945},"ENV_KE",{"type":54,"tag":99,"props":947,"children":948},{"style":270},[949],{"type":60,"value":950},"Y",{"type":54,"tag":99,"props":952,"children":953},{"style":118},[954],{"type":60,"value":278},{"type":54,"tag":99,"props":956,"children":957},{"style":112},[958],{"type":60,"value":959}," --value",{"type":54,"tag":99,"props":961,"children":962},{"style":118},[963],{"type":60,"value":262},{"type":54,"tag":99,"props":965,"children":966},{"style":112},[967],{"type":60,"value":968},"valu",{"type":54,"tag":99,"props":970,"children":971},{"style":270},[972],{"type":60,"value":927},{"type":54,"tag":99,"props":974,"children":975},{"style":118},[976],{"type":60,"value":977},">\n",{"type":54,"tag":63,"props":979,"children":980},{},[981,983,989,991,997],{"type":60,"value":982},"A successful ",{"type":54,"tag":95,"props":984,"children":986},{"className":985},[],[987],{"type":60,"value":988},"variables set",{"type":60,"value":990}," syncs the active environment output file immediately. If the user doesn’t provide the value, run the command without ",{"type":54,"tag":95,"props":992,"children":994},{"className":993},[],[995],{"type":60,"value":996},"--value",{"type":60,"value":998}," only in interactive mode so the CLI can prompt securely. Never print secret values in your response.",{"type":54,"tag":63,"props":1000,"children":1001},{},[1002],{"type":60,"value":1003},"Bind an existing project variable to the active environment:",{"type":54,"tag":87,"props":1005,"children":1007},{"className":89,"code":1006,"language":91,"meta":92,"style":92},"stripe projects env add \u003Cname> --variable --env-key \u003CENV_KEY>\n",[1008],{"type":54,"tag":95,"props":1009,"children":1010},{"__ignoreMap":92},[1011],{"type":54,"tag":99,"props":1012,"children":1013},{"class":101,"line":102},[1014,1018,1022,1027,1032,1036,1040,1044,1048,1053,1057,1061,1065,1069],{"type":54,"tag":99,"props":1015,"children":1016},{"style":124},[1017],{"type":60,"value":8},{"type":54,"tag":99,"props":1019,"children":1020},{"style":112},[1021],{"type":60,"value":252},{"type":54,"tag":99,"props":1023,"children":1024},{"style":112},[1025],{"type":60,"value":1026}," env",{"type":54,"tag":99,"props":1028,"children":1029},{"style":112},[1030],{"type":60,"value":1031}," add",{"type":54,"tag":99,"props":1033,"children":1034},{"style":118},[1035],{"type":60,"value":262},{"type":54,"tag":99,"props":1037,"children":1038},{"style":112},[1039],{"type":60,"value":922},{"type":54,"tag":99,"props":1041,"children":1042},{"style":270},[1043],{"type":60,"value":927},{"type":54,"tag":99,"props":1045,"children":1046},{"style":118},[1047],{"type":60,"value":278},{"type":54,"tag":99,"props":1049,"children":1050},{"style":112},[1051],{"type":60,"value":1052}," --variable",{"type":54,"tag":99,"props":1054,"children":1055},{"style":112},[1056],{"type":60,"value":936},{"type":54,"tag":99,"props":1058,"children":1059},{"style":118},[1060],{"type":60,"value":262},{"type":54,"tag":99,"props":1062,"children":1063},{"style":112},[1064],{"type":60,"value":945},{"type":54,"tag":99,"props":1066,"children":1067},{"style":270},[1068],{"type":60,"value":950},{"type":54,"tag":99,"props":1070,"children":1071},{"style":118},[1072],{"type":60,"value":977},{"type":54,"tag":63,"props":1074,"children":1075},{},[1076],{"type":60,"value":1077},"Remove a variable binding from the active environment without deleting the stored variable:",{"type":54,"tag":87,"props":1079,"children":1081},{"className":89,"code":1080,"language":91,"meta":92,"style":92},"stripe projects env remove \u003Cname> --variable\n",[1082],{"type":54,"tag":95,"props":1083,"children":1084},{"__ignoreMap":92},[1085],{"type":54,"tag":99,"props":1086,"children":1087},{"class":101,"line":102},[1088,1092,1096,1100,1105,1109,1113,1117,1121],{"type":54,"tag":99,"props":1089,"children":1090},{"style":124},[1091],{"type":60,"value":8},{"type":54,"tag":99,"props":1093,"children":1094},{"style":112},[1095],{"type":60,"value":252},{"type":54,"tag":99,"props":1097,"children":1098},{"style":112},[1099],{"type":60,"value":1026},{"type":54,"tag":99,"props":1101,"children":1102},{"style":112},[1103],{"type":60,"value":1104}," remove",{"type":54,"tag":99,"props":1106,"children":1107},{"style":118},[1108],{"type":60,"value":262},{"type":54,"tag":99,"props":1110,"children":1111},{"style":112},[1112],{"type":60,"value":922},{"type":54,"tag":99,"props":1114,"children":1115},{"style":270},[1116],{"type":60,"value":927},{"type":54,"tag":99,"props":1118,"children":1119},{"style":118},[1120],{"type":60,"value":278},{"type":54,"tag":99,"props":1122,"children":1123},{"style":112},[1124],{"type":60,"value":1125}," --variable\n",{"type":54,"tag":63,"props":1127,"children":1128},{},[1129],{"type":60,"value":1130},"List and delete project variables:",{"type":54,"tag":87,"props":1132,"children":1134},{"className":89,"code":1133,"language":91,"meta":92,"style":92},"stripe projects variables list --json\nstripe projects variables delete \u003Cname> --yes\n",[1135],{"type":54,"tag":95,"props":1136,"children":1137},{"__ignoreMap":92},[1138,1162],{"type":54,"tag":99,"props":1139,"children":1140},{"class":101,"line":102},[1141,1145,1149,1153,1158],{"type":54,"tag":99,"props":1142,"children":1143},{"style":124},[1144],{"type":60,"value":8},{"type":54,"tag":99,"props":1146,"children":1147},{"style":112},[1148],{"type":60,"value":252},{"type":54,"tag":99,"props":1150,"children":1151},{"style":112},[1152],{"type":60,"value":908},{"type":54,"tag":99,"props":1154,"children":1155},{"style":112},[1156],{"type":60,"value":1157}," list",{"type":54,"tag":99,"props":1159,"children":1160},{"style":112},[1161],{"type":60,"value":283},{"type":54,"tag":99,"props":1163,"children":1165},{"class":101,"line":1164},2,[1166,1170,1174,1178,1183,1187,1191,1195,1199],{"type":54,"tag":99,"props":1167,"children":1168},{"style":124},[1169],{"type":60,"value":8},{"type":54,"tag":99,"props":1171,"children":1172},{"style":112},[1173],{"type":60,"value":252},{"type":54,"tag":99,"props":1175,"children":1176},{"style":112},[1177],{"type":60,"value":908},{"type":54,"tag":99,"props":1179,"children":1180},{"style":112},[1181],{"type":60,"value":1182}," delete",{"type":54,"tag":99,"props":1184,"children":1185},{"style":118},[1186],{"type":60,"value":262},{"type":54,"tag":99,"props":1188,"children":1189},{"style":112},[1190],{"type":60,"value":922},{"type":54,"tag":99,"props":1192,"children":1193},{"style":270},[1194],{"type":60,"value":927},{"type":54,"tag":99,"props":1196,"children":1197},{"style":118},[1198],{"type":60,"value":278},{"type":54,"tag":99,"props":1200,"children":1201},{"style":112},[1202],{"type":60,"value":456},{"type":54,"tag":55,"props":1204,"children":1206},{"id":1205},"error-handling",[1207],{"type":60,"value":1208},"Error Handling",{"type":54,"tag":629,"props":1210,"children":1211},{},[1212,1233],{"type":54,"tag":633,"props":1213,"children":1214},{},[1215],{"type":54,"tag":637,"props":1216,"children":1217},{},[1218,1223,1228],{"type":54,"tag":641,"props":1219,"children":1220},{},[1221],{"type":60,"value":1222},"Error code",{"type":54,"tag":641,"props":1224,"children":1225},{},[1226],{"type":60,"value":1227},"Cause",{"type":54,"tag":641,"props":1229,"children":1230},{},[1231],{"type":60,"value":1232},"Recovery",{"type":54,"tag":652,"props":1234,"children":1235},{},[1236,1266,1300,1327,1357,1379,1409,1434],{"type":54,"tag":637,"props":1237,"children":1238},{},[1239,1248,1253],{"type":54,"tag":659,"props":1240,"children":1241},{},[1242],{"type":54,"tag":95,"props":1243,"children":1245},{"className":1244},[],[1246],{"type":60,"value":1247},"BROWSER_AUTH_REQUIRED",{"type":54,"tag":659,"props":1249,"children":1250},{},[1251],{"type":60,"value":1252},"No auth session and browser needed",{"type":54,"tag":659,"props":1254,"children":1255},{},[1256,1258,1264],{"type":60,"value":1257},"Tell user to run ",{"type":54,"tag":95,"props":1259,"children":1261},{"className":1260},[],[1262],{"type":60,"value":1263},"stripe login",{"type":60,"value":1265}," — you cannot fix this",{"type":54,"tag":637,"props":1267,"children":1268},{},[1269,1278,1283],{"type":54,"tag":659,"props":1270,"children":1271},{},[1272],{"type":54,"tag":95,"props":1273,"children":1275},{"className":1274},[],[1276],{"type":60,"value":1277},"ACCOUNT_NOT_ELIGIBLE",{"type":54,"tag":659,"props":1279,"children":1280},{},[1281],{"type":60,"value":1282},"Account not onboarded for Projects",{"type":54,"tag":659,"props":1284,"children":1285},{},[1286,1287,1292,1294],{"type":60,"value":1257},{"type":54,"tag":95,"props":1288,"children":1290},{"className":1289},[],[1291],{"type":60,"value":1263},{"type":60,"value":1293}," or visit ",{"type":54,"tag":180,"props":1295,"children":1298},{"href":1296,"rel":1297},"https:\u002F\u002Fprojects.dev",[184],[1299],{"type":60,"value":1296},{"type":54,"tag":637,"props":1301,"children":1302},{},[1303,1311,1316],{"type":54,"tag":659,"props":1304,"children":1305},{},[1306],{"type":54,"tag":95,"props":1307,"children":1309},{"className":1308},[],[1310],{"type":60,"value":414},{"type":54,"tag":659,"props":1312,"children":1313},{},[1314],{"type":60,"value":1315},"Developer or provider terms not accepted",{"type":54,"tag":659,"props":1317,"children":1318},{},[1319,1321],{"type":60,"value":1320},"Re-run with ",{"type":54,"tag":95,"props":1322,"children":1324},{"className":1323},[],[1325],{"type":60,"value":1326},"--accept-tos",{"type":54,"tag":637,"props":1328,"children":1329},{},[1330,1339,1344],{"type":54,"tag":659,"props":1331,"children":1332},{},[1333],{"type":54,"tag":95,"props":1334,"children":1336},{"className":1335},[],[1337],{"type":60,"value":1338},"PROVIDER_NOT_LINKED",{"type":54,"tag":659,"props":1340,"children":1341},{},[1342],{"type":60,"value":1343},"Provider requires OAuth linking",{"type":54,"tag":659,"props":1345,"children":1346},{},[1347,1349,1355],{"type":60,"value":1348},"Run ",{"type":54,"tag":95,"props":1350,"children":1352},{"className":1351},[],[1353],{"type":60,"value":1354},"stripe projects link \u003Cprovider>",{"type":60,"value":1356}," — may open a browser",{"type":54,"tag":637,"props":1358,"children":1359},{},[1360,1369,1374],{"type":54,"tag":659,"props":1361,"children":1362},{},[1363],{"type":54,"tag":95,"props":1364,"children":1366},{"className":1365},[],[1367],{"type":60,"value":1368},"PLAN_REQUIRED",{"type":54,"tag":659,"props":1370,"children":1371},{},[1372],{"type":60,"value":1373},"Deployable needs a plan provisioned first",{"type":54,"tag":659,"props":1375,"children":1376},{},[1377],{"type":60,"value":1378},"Provision the plan listed in the error, then retry",{"type":54,"tag":637,"props":1380,"children":1381},{},[1382,1391,1396],{"type":54,"tag":659,"props":1383,"children":1384},{},[1385],{"type":54,"tag":95,"props":1386,"children":1388},{"className":1387},[],[1389],{"type":60,"value":1390},"UNKNOWN_ERROR",{"type":54,"tag":659,"props":1392,"children":1393},{},[1394],{"type":60,"value":1395},"Unexpected failure",{"type":54,"tag":659,"props":1397,"children":1398},{},[1399,1401,1407],{"type":60,"value":1400},"Show the full error message to the user and suggest running with ",{"type":54,"tag":95,"props":1402,"children":1404},{"className":1403},[],[1405],{"type":60,"value":1406},"--debug",{"type":60,"value":1408}," for diagnostics",{"type":54,"tag":637,"props":1410,"children":1411},{},[1412,1417,1422],{"type":54,"tag":659,"props":1413,"children":1414},{},[1415],{"type":60,"value":1416},"Service not in catalog",{"type":54,"tag":659,"props":1418,"children":1419},{},[1420],{"type":60,"value":1421},"Query returned 0 results",{"type":54,"tag":659,"props":1423,"children":1424},{},[1425,1427,1432],{"type":60,"value":1426},"Inform user; suggest ",{"type":54,"tag":95,"props":1428,"children":1430},{"className":1429},[],[1431],{"type":60,"value":734},{"type":60,"value":1433}," to browse alternatives",{"type":54,"tag":637,"props":1435,"children":1436},{},[1437,1442,1447],{"type":54,"tag":659,"props":1438,"children":1439},{},[1440],{"type":60,"value":1441},"CLI not found",{"type":54,"tag":659,"props":1443,"children":1444},{},[1445],{"type":60,"value":1446},"Stripe CLI not installed",{"type":54,"tag":659,"props":1448,"children":1449},{},[1450,1452],{"type":60,"value":1451},"Install using Homebrew (macOS) or follow ",{"type":54,"tag":180,"props":1453,"children":1455},{"href":182,"rel":1454},[184],[1456],{"type":60,"value":182},{"type":54,"tag":1458,"props":1459,"children":1460},"style",{},[1461],{"type":60,"value":1462},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":1464,"total":1582},[1465,1482,1495,1511,1528,1535,1550,1565],{"slug":1466,"name":1466,"fn":1467,"description":1468,"org":1469,"tags":1470,"stars":23,"repoUrl":24,"updatedAt":1481},"connect-recommend","configure Stripe Connect marketplace and payments","Use this skill when the user asks about Stripe Connect configuration, charge patterns, Dashboard access, or how to get started with Connect, is building a marketplace, platform, multi-vendor store, gig platform, or subscription platform, needs to pay out sellers, vendors, or providers, mentions split payments, revenue sharing, multi-party payments, or similar payment distribution concepts, provides a company URL or business description for a recommendation, builds SaaS that routes money between parties (for example, POS, booking, invoicing — not operational SaaS without payment routing), asks about onboarding or KYC for merchants, sellers, and vendors, mentions connected account Dashboard or responsibility configurations, or asks about payment flows, white-label payments, or embedded payments.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1471,1474,1477,1480],{"name":1472,"slug":1473,"type":15},"Configuration","configuration",{"name":1475,"slug":1476,"type":15},"Payments","payments",{"name":1478,"slug":1479,"type":15},"Sales","sales",{"name":9,"slug":8,"type":15},"2026-07-24T06:09:04.823685",{"slug":1483,"name":1483,"fn":1484,"description":1485,"org":1486,"tags":1487,"stars":23,"repoUrl":24,"updatedAt":1494},"stripe-best-practices","architect Stripe payment integrations","Guides Stripe integration decisions across API selection (Checkout Sessions vs PaymentIntents), Connect platform setup (Accounts v2, controller properties), billing\u002Fsubscriptions, tax and registrations (Stripe Tax, automatic_tax, product tax codes), Treasury financial accounts, integration options (Checkout, Payment Element), migrating from deprecated Stripe APIs, and security best practices (API key management, restricted keys, webhooks, OAuth). Use when building, modifying, or reviewing any Stripe integration, including accepting payments, building marketplaces, integrating Stripe, processing payments, setting up subscriptions, collecting sales tax, VAT, or GST, creating connected accounts, or implementing secure key handling.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1488,1491,1492,1493],{"name":1489,"slug":1490,"type":15},"Architecture","architecture",{"name":1475,"slug":1476,"type":15},{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},"2026-07-30T05:28:51.39802",{"slug":1496,"name":1496,"fn":1497,"description":1498,"org":1499,"tags":1500,"stars":23,"repoUrl":24,"updatedAt":1510},"stripe-directory","search the Stripe partner directory","Use when the user wants to find businesses, software, service providers, or partners for a specific industry, workflow, pain point, capability, or job to be done. Also use when the agent needs to programmatically purchase or consume a service. Use Stripe Directory to build a short relevant shortlist, even if the user does not mention Stripe Directory explicitly.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1501,1502,1505,1506,1509],{"name":1475,"slug":1476,"type":15},{"name":1503,"slug":1504,"type":15},"Research","research",{"name":13,"slug":14,"type":15},{"name":1507,"slug":1508,"type":15},"Search","search",{"name":9,"slug":8,"type":15},"2026-06-10T07:45:48.374075",{"slug":1512,"name":1512,"fn":1513,"description":1514,"org":1515,"tags":1516,"stars":23,"repoUrl":24,"updatedAt":1527},"stripe-docs","search Stripe documentation and API","Use when the user or agent needs to read, search, or look up Stripe documentation or API reference. Prefer this over curl or WebFetch for any docs.stripe.com content.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1517,1520,1523,1526],{"name":1518,"slug":1519,"type":15},"API Development","api-development",{"name":1521,"slug":1522,"type":15},"Documentation","documentation",{"name":1524,"slug":1525,"type":15},"Reference","reference",{"name":9,"slug":8,"type":15},"2026-07-21T06:07:31.016426",{"slug":4,"name":4,"fn":5,"description":6,"org":1529,"tags":1530,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1531,1532,1533,1534],{"name":20,"slug":21,"type":15},{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},{"slug":1536,"name":1536,"fn":1537,"description":1538,"org":1539,"tags":1540,"stars":23,"repoUrl":24,"updatedAt":1549},"upgrade-stripe","upgrade Stripe API versions and SDKs","Guide for upgrading Stripe API versions and SDKs",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1541,1544,1545,1548],{"name":1542,"slug":1543,"type":15},"Migration","migration",{"name":1475,"slug":1476,"type":15},{"name":1546,"slug":1547,"type":15},"SDK","sdk",{"name":9,"slug":8,"type":15},"2026-07-30T05:28:52.433023",{"slug":1551,"name":1551,"fn":1552,"description":1553,"org":1554,"tags":1555,"stars":1562,"repoUrl":1563,"updatedAt":1564},"create-payment-credential","get secure payment credentials from Stripe","Gets secure, one-time-use payment credentials (cards, tokens) from a Link wallet so agents can complete purchases on behalf of users. Use when the user says \"get me a card\", \"buy something\", \"pay for X\", \"make a purchase\", \"I need to pay\", \"complete checkout\", or asks to transact on any merchant site. Use when the user asks to connect or log in to or sign up for their Link account.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1556,1557,1558,1561],{"name":1518,"slug":1519,"type":15},{"name":1475,"slug":1476,"type":15},{"name":1559,"slug":1560,"type":15},"Security","security",{"name":9,"slug":8,"type":15},626,"https:\u002F\u002Fgithub.com\u002Fstripe\u002Flink-cli","2026-07-30T05:32:09.679894",{"slug":1566,"name":1566,"fn":1567,"description":1568,"org":1569,"tags":1570,"stars":1579,"repoUrl":1580,"updatedAt":1581},"pay-for-http-request","make HTTP requests with x402 payments","Make HTTP requests with automatic x402 payment support using the purl command line interface.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1571,1572,1575,1576,1577],{"name":1518,"slug":1519,"type":15},{"name":1573,"slug":1574,"type":15},"HTTP","http",{"name":1475,"slug":1476,"type":15},{"name":9,"slug":8,"type":15},{"name":1578,"slug":1578,"type":15},"x402",177,"https:\u002F\u002Fgithub.com\u002Fstripe\u002Fpurl","2026-04-06T18:53:35.680714",8,{"items":1584,"total":1628},[1585,1592,1599,1607,1614,1621],{"slug":1466,"name":1466,"fn":1467,"description":1468,"org":1586,"tags":1587,"stars":23,"repoUrl":24,"updatedAt":1481},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1588,1589,1590,1591],{"name":1472,"slug":1473,"type":15},{"name":1475,"slug":1476,"type":15},{"name":1478,"slug":1479,"type":15},{"name":9,"slug":8,"type":15},{"slug":1483,"name":1483,"fn":1484,"description":1485,"org":1593,"tags":1594,"stars":23,"repoUrl":24,"updatedAt":1494},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1595,1596,1597,1598],{"name":1489,"slug":1490,"type":15},{"name":1475,"slug":1476,"type":15},{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},{"slug":1496,"name":1496,"fn":1497,"description":1498,"org":1600,"tags":1601,"stars":23,"repoUrl":24,"updatedAt":1510},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1602,1603,1604,1605,1606],{"name":1475,"slug":1476,"type":15},{"name":1503,"slug":1504,"type":15},{"name":13,"slug":14,"type":15},{"name":1507,"slug":1508,"type":15},{"name":9,"slug":8,"type":15},{"slug":1512,"name":1512,"fn":1513,"description":1514,"org":1608,"tags":1609,"stars":23,"repoUrl":24,"updatedAt":1527},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1610,1611,1612,1613],{"name":1518,"slug":1519,"type":15},{"name":1521,"slug":1522,"type":15},{"name":1524,"slug":1525,"type":15},{"name":9,"slug":8,"type":15},{"slug":4,"name":4,"fn":5,"description":6,"org":1615,"tags":1616,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1617,1618,1619,1620],{"name":20,"slug":21,"type":15},{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},{"slug":1536,"name":1536,"fn":1537,"description":1538,"org":1622,"tags":1623,"stars":23,"repoUrl":24,"updatedAt":1549},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1624,1625,1626,1627],{"name":1542,"slug":1543,"type":15},{"name":1475,"slug":1476,"type":15},{"name":1546,"slug":1547,"type":15},{"name":9,"slug":8,"type":15},6]