stripe-projects
Skill4 starsChanged 6 months agoMITView on GitHub
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/provisioning/connecting a cloud service.
- Reads credentials
- Installs packages
6 other projects use a version of this, 3 of them edited.
Adopted by
Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data
Most recently taken up by
- bex-co/bexedited, first seen Oct 28, 2026
- stripe/aiedited, first seen Oct 13, 2026
- openai/pluginsedited, first seen Oct 13, 2026
- fossasia/eventyayword for word, first seen Oct 8, 2026
- NiazMorshed2007/jcrword for word, first seen Sep 20, 2026
- e2b-dev/E2Btheir own version, first seen Sep 2, 2026
Other versions6 projects use a version of this.
Word for word · 2
- fossasia/eventyay★ 1.7k100% same
- NiazMorshed2007/jcr★ 19100% same
Edited · 3
- openai/plugins★ 7.8k95% same
- stripe/ai★ 2k59% same
- bex-co/bex★ 57694% same
Wrote their own version · 1
- e2b-dev/E2B★ 15ksame name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository79 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- 21st-magicSkill
- alpacaSkill
- ask-mattSkill
- autoresearchSkill
- auto-stage-commitSkill
- browser-harnessSkill
- codebase-designSkill
- codeburnSkill
- codex-reviewSkill
- compact-memorySkill
- connect-recommendSkill
- connect-required-verification-informationSkill
- decision-mappingSkill
- delegate-taskSkill
- design-an-interfaceSkill
- design-mdSkill
- diagnosing-bugsSkill
- domain-modelingSkill
- edit-articleSkill
- extract-designSkill
- ffmpegSkill
- find-skillsSkill
- firecrawlSkill
- generateSkill
- git-guardrails-claude-codeSkill
- grillingSkill
- grill-me-codexSkill
- grill-meSkill
- grill-with-docs-codexSkill
- grill-with-docsSkill
- gwSkill
- handoffSkill
- implementSkill
- improve-codebase-architectureSkill
- kie-aiSkill
- lightragSkill
- llmfitSkill
- loop-meSkill
- migrate-to-shoehornSkill
- notebooklmSkill
- obsidian-vaultSkill
- openspaceSkill
- playwrightSkill
- prototypeSkill
- qaSkill
- request-refactor-planSkill
- resolving-merge-conflictsSkill
- reviewSkill
- roastSkill
- scaffold-exercisesSkill
- session-handoffSkill
- setup-matt-pocock-skillsSkill
- setup-pre-commitSkill
- site-teardownSkill
- skill-discoverySkill
- skilluiSkill
- spline-3dSkill
- stripe-appsSkill
- stripe-best-practicesSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
14 rules. 7 are common, 3 are distinctive, and 4 are very specific to this project.
7
Common
Most of the 4 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Common: line 34
Check if the Stripe CLI is available:
- Distinctive: line 40
If not installed or below version 1.40.0:
- Very specific: line 59
If result_count is 0, inform the user the service was not found and stop.
- Common: line 61
If the user’s request is vague (for example, “I need a database”), browse the catalog to suggest options:
- Common: line 69
Check if a project is already initialized:
- Distinctive: line 75
If not initialized, run a preflight check first to reveal all blockers at once:
- Very specific: line 81
If all preflight checks pass, or the only failure is TOS_ACCEPTANCE_REQUIRED, proceed:
- Distinctive: line 95
Verify the skill was installed:
- Very specific: line 103
If OK: use the locally-installed stripe-projects-cli skill (invoke using the Skill tool with name stripe-projects-cli) to continue the …
- Common: line 107
After a successful service addition, provide output in this format:
- Very specific: line 129
Only inspect .projects/ or .env directly if the user explicitly asks you to — the CLI is authoritative, so manual edits may be overwritten.
- Common: line 133
Use project variables when the user wants to store an environment variable that doesn’t come from a provisioned provider resource, such as …
- Common: line 135
Create or update a project variable for the active environment:
- Common: line 149
Remove a variable binding from the active environment without deleting the stored variable:
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Stripe Projects — Service Provisioning
Provision third-party services (databases, auth, hosting, analytics, caching, AI, observability) and retrieve API keys/tokens using the Stripe Projects CLI plugin.
Workflow
Step 1: Ensure Stripe CLI + Projects Plugin
Check if the Stripe CLI is available:
which stripe && stripe --versionIf not installed or below version 1.40.0:
- macOS (Homebrew):
brew install stripe/stripe-cli/stripe(orbrew upgrade stripe/stripe-cli/stripe) - Other platforms: Direct the user to https://docs.stripe.com/stripe-cli/install for up-to-date instructions.
Then ensure the Projects plugin is installed:
stripe plugin install projectsStep 2: Search the Catalog
Confirm the requested provider/service exists:
stripe projects search <query> --jsonIf result_count is 0, inform the user the service was not found and stop.
If the user’s request is vague (for example, “I need a database”), browse the catalog to suggest options:
stripe projects catalog --jsonStep 3: Initialize a Project
Check if a project is already initialized:
stripe projects status --jsonIf not initialized, run a preflight check first to reveal all blockers at once:
stripe projects init --preflight --jsonIf all preflight checks pass, or the only failure is TOS_ACCEPTANCE_REQUIRED, proceed:
stripe projects init --accept-tos --yesIf any check fails with BROWSER_AUTH_REQUIRED, PROJECTS_SESSION_UNUSABLE, or ACCOUNT_NOT_ELIGIBLE, stop here. Report that check’s message and remedy to the user verbatim and let them resolve it — clearing these requires a browser sign-in or a Dashboard visit you cannot perform. Do not run stripe projects init yourself and do not re-run the preflight: neither clears the blocker for you, since only the user can complete a browser sign-in or a Dashboard step.
Follow the remedy the failing check prints rather than assuming stripe login is the fix. If a Stripe CLI session already exists, stripe login reports that you are already logged in and exits 0 without changing anything — an exit code of 0 from a login command does not mean the blocker cleared.
Important: stripe projects init installs the stripe-projects-cli skill locally at .claude/skills/stripe-projects-cli. This skill contains the full post-init command reference.
Step 4: Hand Off to stripe-projects-cli
Verify the skill was installed:
test -f .claude/skills/stripe-projects-cli/SKILL.md && echo "OK" || echo "MISSING"If MISSING: re-run stripe projects init --accept-tos --yes once — the skill is bundled with the Projects plugin and installed during init. If the file is still missing after that single retry, or if init exits non-zero, report init’s error message to the user and stop. Do not keep re-running init.
If 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.
Step 5: Summarize and Suggest
After a successful service addition, provide output in this format:
| Field | Value |
| Provider | <provider name> |
| Service | <service type> |
| Tier | <tier> |
| Env vars | <variable names only — never values> |
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 stripe projects catalog --json output — never fabricate commands or provider names.
CLI as Source of Truth
The CLI manages all state under .projects/ and generates .env files. Don’t hand-edit these files. If you need to inspect project state, use the appropriate CLI command:
| Task | Command |
| View provisioned services | stripe projects status --json |
| List env var names | stripe projects env --json |
| Check project health | stripe projects status --json |
| Browse available services | stripe projects catalog --json |
Only inspect .projects/ or .env directly if the user explicitly asks you to — the CLI is authoritative, so manual edits may be overwritten.
Project Variables
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.
Create or update a project variable for the active environment:
stripe projects variables set <name> --env-key <ENV_KEY> --value <value>A 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.
Bind an existing project variable to the active environment:
stripe projects env add <name> --variable --env-key <ENV_KEY>Remove a variable binding from the active environment without deleting the stored variable:
stripe projects env remove <name> --variableList and delete project variables:
stripe projects variables list --json
stripe projects variables delete <name> --yesError Handling
| Error code | Cause | Recovery |
BROWSER_AUTH_REQUIRED | No Stripe session and browser sign-in needed | Tell the user to run stripe projects init themselves, in a terminal where they can finish the browser sign-in — you cannot fix this, and re-running it yourself will not clear it |
PROJECTS_SESSION_UNUSABLE | A Stripe CLI session exists, but Projects cannot read live-mode credentials from it | Report the message and remedy verbatim and stop. Do NOT retry, and do NOT run stripe login — it reports you are already logged in and exits 0 |
ACCOUNT_NOT_ELIGIBLE | Account not onboarded for Projects | Tell the user to run stripe projects switch-account to choose an account, or continue setup for this account; report the remedy the CLI printed and stop |
TOS_ACCEPTANCE_REQUIRED | Developer or provider terms not accepted | Re-run with --accept-tos |
PROVIDER_NOT_LINKED | Provider requires OAuth linking | Run stripe projects link <provider> — may open a browser |
PLAN_REQUIRED | Deployable needs a plan provisioned first | Provision the plan listed in the error, then retry |
UNKNOWN_ERROR | Unexpected failure | Show the full error message to the user and suggest running with --debug for diagnostics |
| Service not in catalog | Query returned 0 results | Inform user; suggest stripe projects catalog --json to browse alternatives |
| CLI not found | Stripe CLI not installed | Install using Homebrew (macOS) or follow https://docs.stripe.com/stripe-cli/install |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

