Get from zero to a customer journey map.
Prerequisites
Setup
Create and configure
# Create a config file with sensible defaults
uvx skene config --init
# Set up your LLM provider and API key interactively
uvx skene config
The interactive setup walks you through provider, model, and API key selection.
Tip: You can skip config setup entirely by passing
--api-keyand--providerflags directly to each command, or by setting theSKENE_API_KEYandSKENE_PROVIDERenvironment variables.
Analyse your journey
Run the analysis
uvx skene analyse-journey .
The pipeline runs code and schema agents when you supply their inputs. Each proposes candidate milestones. A deterministic merge step with no model in the loop reconciles the two sets, a per-milestone classification pass places them, and the run assembles one validated Customer Journey across seven lifecycle stages: discovery, onboarding, activation, engagement, retention, expansion, and virality.
The result is written to ./skene-context/journey.yaml.
Include your database schema
The schema agent needs one of two inputs, never both:
# SQL files: a directory of pre-exported *.sql files
uvx skene analyse-journey . --schema-dir ./schemas
# Live database: use the verified source revision; published 0.5.1 has no --db-url
uvx --from git+https://github.com/SkeneTechnologies/skene.git@8eb7942f569a4f99387e5c05b086c7babc8ce3d3 skene analyse-journey . --db-url "postgresql://user:pass@localhost:5432/mydb"
Tip: Use
-oto change the output path (default./skene-context/journey.yaml) and--product-nameto override the inferred product name.
Verify and deploy
Check implementation status
If your project has a skene-context/engine.yaml, verify engine/migration alignment:
uvx skene status
Checks skene-context/engine.yaml structure and verifies action-enabled features have matching migration triggers.
Push upstream
To deploy your Skene bundle to Skene Cloud, log in and push:
uvx skene login --upstream https://skene.ai/workspace/<my-workspace-name>
uvx skene push
Publication: A normal CLI run writes the journey locally. A linked TUI run using the Skene provider can automatically publish the first journey if the workspace has none. You can also run
skene pushexplicitly. Push uploads existing bundle files and includes engine metadata or the latest trigger migration when present; it does not generate them.
What you get
analyse-journey writes journey.yaml. Other workflows may add the following bundle files:
| File | Description |
|---|---|
journey.yaml | Customer journey map across seven lifecycle stages, produced by analyse-journey |
engine.yaml | Engine model (subjects + features), validated by status and uploaded by push |
feature-registry.json | Features tracked across analysis runs, linked to engine features |
Alternative: Quick one-liner
If you want to try the analysis without setting up a config file first, pass your API key inline:
uvx skene analyse-journey . --api-key "your-key"
This uses the default provider (openai) and model (gpt-4o). To use a different provider:
uvx skene analyse-journey . --api-key "your-key" --provider gemini --model gemini-3-flash-preview
Local providers need no API key at all:
uvx skene analyse-journey . --provider ollama --model llama3.3
Next steps
- CLI reference: journey flags and related commands, with version-specific options identified
- Push command in depth: Supabase migrations and upstream deployment
- Status command in depth: engine/migration validation
- Features: managing and exporting the feature registry
- Login: authenticating with Skene Cloud upstream
- Configuration reference: config files, environment variables, precedence rules
- LLM providers: setup for OpenAI, Gemini, Anthropic, LM Studio, Ollama, and generic endpoints