AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Stripe Projects provides a unified interface for provisioning and managing cloud infrastructure, databases, authentication, and other third-party services. This skill enables AI agents to interact with the Stripe Projects CLI to search for available services, initialize project environments, and manage environment variables securely. It acts as a bridge between user requests for infrastructure and the automated provisioning capabilities of the Stripe ecosystem, ensuring that configuration state is managed consistently through the CLI rather than manual file editing.
What it does
- Searches and browses the available service catalog for infrastructure and third-party tools.
- Initializes and manages project workspaces and environment configurations.
- Provisions requested services like databases, caching, and observability tools.
- Retrieves and manages API keys and credentials for provisioned services.
- Handles environment variable synchronization across project environments.
- Provides status updates on provisioned resources and project health.
When to use it
- When you need to provision a new database, cache, or authentication service.
- When you need to retrieve API keys or credentials for a third-party service.
- When you want to check the status of your current project infrastructure.
- When you need to configure environment variables for your application.
- When you are unsure which services are available for your project requirements.
Advantages
- Centralized management of infrastructure and service credentials.
- Reduces manual configuration errors by using the CLI as the source of truth.
- Secure handling of environment variables and sensitive credentials.
- Streamlined workflow for adding and connecting cloud services.
Usage examples
- “I need a Postgres database for my project.”
- The agent searches the catalog for Postgres providers, initializes the project if necessary, and provisions the database, returning the relevant environment variable names.
- “How do I get an API key for my search service?”
- The agent checks the project status and retrieves the necessary credentials or configuration details via the Stripe Projects CLI.
- “What services can I provision for my app?”
- The agent lists the available providers and services from the Stripe Projects catalog to help you choose the right tools.
- “Set up monitoring for my current environment.”
- The agent identifies the monitoring options in the catalog and proceeds to provision the service within the active project workspace.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/stripe/stripe-projects/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip stripe-projects.zip -d .agents/skills
Documentation by Stripe
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 the CLI is missing or its output says a newer version is required, install or upgrade to the current release on macOS or Linux with the install script:
curl -fsSL https://cli.stripe.com/install.sh | shFollow the installer’s PATH instructions, then run stripe --version to verify that the CLI is available before continuing. For other platforms, follow the installation or upgrade 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 status reports that this workspace has no initialized project, run:
stripe projects init --accept-tos --yes --jsonIf init returns a browser pairing handoff (
BROWSER_AUTH_REQUIREDwithdetails.reasonset tohandoff_prepared), show the userdetails.browser_urlanddetails.verification_code. Wait for them to approve in the browser and confirm, then retry the same init command with its original arguments. Rerunning re-presents the same code until it expires; don’t start a separatestripe login.For other status or init failures, follow the CLI’s message, next steps, and retry conditions. Share any required action with the user. Don’t treat every status failure as an uninitialized project or retry a failed mutation without CLI guidance.
stripe projects init installs the local stripe-projects-cli skill with the post-init command reference.
Step 4: Hand Off to stripe-projects-cli
Use Read to open .agents/skills/stripe-projects-cli/SKILL.md, falling back to .claude/skills/stripe-projects-cli/SKILL.md if needed. If neither file exists, retry stripe projects init --accept-tos --yes --json once to repair the installation, then check both paths again. If init fails or the skill is still missing, follow the CLI’s message and next steps, report the problem to the user, and stop. Don’t keep retrying init.
Continue with the locally installed skill to add the requested provider, manage credentials, or configure the project. Invoke stripe-projects-cli with the Skill tool when available; otherwise follow the SKILL.md you read directly. Let the CLI output guide any provider-specific next steps. Keep the user’s chosen project and account; don’t switch accounts automatically. Browser approval alone does not establish Projects readiness.
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> --yesCommand results
Use each CLI response as the source for its message, next steps, and retry conditions. Present browser handoffs and other user actions without exposing account identifiers, credentials, or secret values. Wait for the user where the CLI requires their action, then retry only the command and arguments the CLI says can be retried. Leave account selection and provider choices with the user; don’t infer eligibility, approval, or a recovery command from an error code alone.
Files
- ATTRIBUTION.mdAdded by AutoGineer827 B
- LICENSELicence file added by AutoGineer1.1 KiB
- SKILL.md7.0 KiB
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Declares allowed tools, Needs network access, Needs an API key
Security
What our scanner noticed· Medium risk
- Instructions that use the network
- Downloads piped into a shell
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- Stripe
- Publisher
- Stripe (Official)
- Source
- stripe/ai · skills/stripe-projects · commit 38fa045
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Also distributed in
- stripe/ai, stripe/ai, stripe/ai, stripe/ai, stripe/ai
AutoGineer is not affiliated with or endorsed by Stripe or Stripe.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download stripe-projects.zip