·
Last changedVersion:
No hardening report available.
Installs and initializes the right LaunchDarkly SDK for the user’s project by following three nested skills in order. Do not skip ahead to feature flags here—the parent LaunchDarkly onboarding continues with Step 4: First flag.
| SDK Type | Variable (logical) | Source in LaunchDarkly |
|---|---|---|
Server-side |
| Environments → SDK key |
Client-side | Client-side ID (bundler-prefixed env names) | Environments → Client-side ID |
Mobile |
| Environments → Mobile key |
Never hardcode keys. Full env rules, consent, and bundler tables: Apply code changes Step 2.
Execute all three unless the detect decision tree short-circuits (e.g. skip to apply only). Each nested skill may contain decision points — some blocking (marked D<N> -- BLOCKING, where you must call your structured question tool and wait for the user's response before continuing) and some non-blocking (where you present information and continue unless the user objects). Do NOT batch tool calls across blocking boundaries.
| Order | Nested skill | Role |
|---|---|---|
1 | Language, package manager, monorepo target, entrypoint, existing LD usage | |
2 | SDK choice, files to change, env plan -- presented to user for explicit approval (blocking; see plan SKILL.md D6) | |
3 | Install package(s), |
Shared references for all steps: SDK recipes, SDK snippets.
Observability plugin: When the user explicitly asks for observability, session replay, error monitoring, logs, or tracing (in the first message or later), tell the user that session replay, logs, and tracing may capture personal data, then carry that into plan and apply: the plugin package(s) and the plugins entry on the client from Observability plugin. Same client, same key. If the client is already initialized, go straight to the plugin change: show the user the plugin package(s) and the file to edit, get confirmation through your structured question tool, then add the plugin to the existing init, then return to the parent flow (first flag during onboarding; nothing further for a follow-up after onboarding finished).
Continue with the parent skill:
Do not add standalone “sample flag” evaluation in this skill unless the user explicitly needs a throwaway check; the parent flow creates the first flag in order.
.env.example entries when the project uses dotenv, with placeholder values only (real keys go only where the user chose at D7)..env in .gitignore before any real value is written; keep key values out of chat responses; put only the client-side ID in bundler-prefixed public variables and keep the server SDK key and mobile key in server-only variables; change other dependencies only with D8 approval; keep edits inside the chosen package subtree unless the user approves more.Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.
skills.cgr.dev/public/github.com/launchdarkly/skills/onboarding/sdk-install:latest
Apache-2.0
HARDENING.md
LICENSE
SKILL.md
apply/SKILL.md
detect/SKILL.md
plan/SKILL.md