<h1 align="center">
<a href="https://prompts.chat">
Set up a complete Confluent Cloud streaming application from scratch
Loading actions...
<a href="https://prompts.chat">
TypeScript and ESLint rules that MUST be followed when creating, modifying, or reviewing any file under apps/frontend/, including .ts, .tsx, .js, and .jsx files. Also apply when discussing frontend linting, type safety, or ESLint configuration.
risks
Before starting: If any tool call fails with "Missing required environment variables", tell the user:
"Set your Confluent Cloud API credentials — generate at https://confluent.cloud/settings/api-keys, then export CONFLUENT_CLOUD_API_KEY=... CONFLUENT_CLOUD_API_SECRET=... and restart Claude Code."
Help me set up a complete Confluent Cloud streaming application from scratch.
This is an end-to-end workflow. Use AskUserQuestion interactive forms throughout to collect configuration. Walk me through each step, confirming before proceeding to the next.
Read .confluent-context.json in the project root. If it has an environment_id, use AskUserQuestion to ask:
Use existing environment? (header: "Environment")
If creating new, use AskUserQuestion in a single call:
Question 1 — Environment name (header: "Name")
Question 2 — Stream Governance package (header: "Governance")
Call create_environment with:
display_name: the chosen namestream_governance_package: "ESSENTIALS" if Essentials selected, "ADVANCED" if Advanced selectedDisplay the Environment ID, name, and governance package. Save to .confluent-context.json.
Use the AskUserQuestion tool to collect name, type, and cloud provider in a single call with 3 questions:
Question 1 — Cluster name (header: "Name")
Question 2 — Cluster type (header: "Type")
Question 3 — Cloud provider (header: "Cloud")
After receiving the cloud provider selection, use AskUserQuestion with a single question showing regions specific to the chosen provider. The user can always type a custom region.
If AWS selected (header: "Region"):
If GCP selected (header: "Region"):
If Azure selected (header: "Region"):
If Enterprise or Dedicated selected: Tell the user: "Enterprise and Dedicated cluster types are coming soon to the Claude Code plugin. For now, you can create these through the Confluent Cloud Console." Then re-ask with only Basic and Standard as options.
If Standard selected: Use AskUserQuestion for one more question:
Uptime SLA (header: "SLA")
Show a summary in the Confluent Cloud console style:
Summary
─────────────────────────────
Cluster type: Basic
Provider: Amazon Web Services
Region: N. Virginia (us-east-1)
Uptime SLA: 99.5%, Single zone
Networking: Internet
Minimum eCKUs: 1
Ask for confirmation, then call create_cluster with:
The cluster will start in PROVISIONING status. Poll using get_cluster every 30 seconds until status.phase is PROVISIONED. Show progress updates. Timeout after 15 minutes.
Once cluster is provisioned, automatically call create_api_key. Credentials are automatically saved to .confluent-context.json for use by topic commands. Display:
.confluent-context.jsonFirst, check .confluent-context.json for a stored API key for this cluster (under api_keys[cluster_id]). If found, use it automatically and tell me: "Using stored API key {api_key} for cluster {cluster_id}."
If no stored key is found, call list_api_keys with the cluster's resource_id to check for existing cluster-scoped API keys.
create_api_key (credentials are saved automatically).create_api_key. Credentials are saved automatically to context.Use AskUserQuestion in a single call:
Question 1 — Topic name (header: "Topic")
orders.created, user.events)Question 2 — Partitions (header: "Partitions")
Question 3 — Retention (header: "Retention")
Call create_topic with the cluster ID, environment ID, topic name, partitions count, and retention_ms:
Cluster API credentials are auto-resolved from context — no need to pass them explicitly.
After creating, ask if the user wants to create additional topics. If yes, repeat Step 4b.
Use AskUserQuestion:
Scaffold a starter app? (header: "Scaffold")
If not skipped, create producer + consumer files with:
Show a final summary:
Confluent Cloud Streaming App — Setup Complete
Environment: <name> (<env-id>)
Cluster: <name> (<cluster-id>)
Cloud/Region: <cloud> / <region>
Type: <type> (<availability>)
Endpoints:
Bootstrap: <bootstrap-url>
REST: <rest-endpoint>
API Key: <key-id> (secret was shown above — make sure you saved it!)
Topics:
- <topic-1> (<partitions> partitions, <retention> retention)
- <topic-2> (<partitions> partitions, <retention> retention)
Application files: (if scaffolded)
- producer.<ext>
- consumer.<ext>
Suggest what to do next:
/topics-create"