@tanstack/cli
Version:
TanStack CLI
141 lines (99 loc) • 3.91 kB
Markdown
---
name: choose-ecosystem-integrations
description: >
Map tanstack ecosystem partner metadata to installable add-on ids using
tanstack ecosystem --json, tanstack create --list-add-ons --json, and
tanstack create --addon-details --json. Covers exclusive categories,
provider options, and router-only compatibility constraints.
type: composition
library: tanstack-cli
library_version: "0.62.1"
requires:
- create-app-scaffold
- query-docs-library-metadata
---
This skill requires familiarity with scaffold and discovery workflows. Read `create-app-scaffold` and `query-docs-library-metadata` first.
# Choose Ecosystem Integrations
Use this skill at the seam between user requirements and valid CLI integration choices.
## Setup
```bash
npx @tanstack/cli ecosystem --json
npx @tanstack/cli create --list-add-ons --json
```
## Core Patterns
### Map partner intent to add-on ids explicitly
```bash
npx @tanstack/cli ecosystem --category database --json
npx @tanstack/cli create --list-add-ons --json
```
### Inspect option surfaces before final provider choice
```bash
npx @tanstack/cli create --addon-details drizzle --json
npx @tanstack/cli create --addon-details prisma --json
```
### Enforce one choice per exclusive category
```bash
npx @tanstack/cli create my-app \
--framework react \
--add-ons clerk,drizzle \
--deployment cloudflare \
-y
```
## Common Mistakes
### HIGH Treat ecosystem partner id as add-on id
Wrong:
```bash
npx @tanstack/cli add <partner-id-from-ecosystem>
```
Correct:
```bash
npx @tanstack/cli ecosystem --json
npx @tanstack/cli create --list-add-ons --json
npx @tanstack/cli add <mapped-addon-id>
```
`ecosystem` includes partners that are not directly installable add-ons, so direct reuse of partner ids can fail late in add/apply flows.
Source: tanstack ecosystem --json output + tanstack create --list-add-ons --json output
### HIGH Skip addon-details before choosing provider
Wrong:
```bash
npx @tanstack/cli create my-app --add-ons prisma -y
```
Correct:
```bash
npx @tanstack/cli create --addon-details prisma --json
npx @tanstack/cli create my-app --add-ons prisma -y
```
Optionized providers can default silently, producing the wrong data-layer stack for the requested integration.
Source: tanstack create --addon-details prisma --json
### HIGH Select multiple exclusive integrations together
Wrong:
```bash
npx @tanstack/cli create my-app --add-ons clerk,workos -y
```
Correct:
```bash
npx @tanstack/cli create my-app --add-ons clerk -y
```
Exclusive categories permit only one active choice, so multi-select commands can drop or replace intended providers.
Source: packages/create/src/frameworks/*/*/info.json
### CRITICAL Assume router-only supports deployment integration
Wrong:
```bash
npx @tanstack/cli create my-app --router-only --deployment cloudflare -y
```
Correct:
```bash
npx @tanstack/cli create my-app --router-only -y
```
Router-only mode ignores deployment integration, so the command succeeds without applying the intended ecosystem target.
Source: packages/cli/src/command-line.ts:349
### HIGH Tension: Compatibility mode vs explicit intent
This domain's patterns conflict with create-app-scaffold. Integration planning tends to over-assume command intent is preserved, but compatibility mode silently strips integration flags.
See also: create-app-scaffold/SKILL.md § Common Mistakes
### HIGH Tension: Single-command convenience vs integration precision
This domain's patterns conflict with query-docs-library-metadata. Integration choices tend to drift when discovery metadata is skipped in favor of one-shot scaffold commands.
See also: query-docs-library-metadata/SKILL.md § Common Mistakes
## References
- [Authentication providers](references/authentication-providers.md)
- [Data layer providers](references/data-layer-providers.md)
- [Deployment targets](references/deployment-targets.md)