Chapter 2: Lumen Installation and First Launch
Prerequisites
You need three things before installing Lumen.
Claude Code — the terminal-based CLI from Anthropic. Install it from https://claude.ai/code. If you already use it, make sure it is up to date.
Node.js 18 or higher — Lumen uses Node for validation scripts. Check your version:
$ node --version
v20.11.0
If you are below 18, update via https://nodejs.org.
An Anthropic API key — from https://console.anthropic.com. You will put this in a .env file. Do not skip this step; nothing runs without it.
If your setup fulfill the above requirements, you are ready to get it installed.
Install Lumen
You have two options. Both result in the same installation.
Using the Claude Code marketplace (recommended)
Open Claude Code and run:
/plugin marketplace add ishwarjha/lumen-product-management
/plugin install lumen@lumen-marketplace
You will see output like this:
[lumen] Installing Lumen v2.3.0...
[lumen] Cloning Lumen into /Users/you/.claude/plugins/lumen...
[lumen] Agent stub written to /Users/you/.claude/agents/lumen.md.
[lumen] Registered in installed_plugins.json.
[lumen] Enabled in Claude Code settings.
Lumen v2.3.0 installed.
Next steps:
1. Restart Claude Code
2. Run: /lumen:pmf-discovery
→ SetupGuide starts automatically. No credentials required.
Using the curl installer
From your terminal:
$ curl -fsSL https://raw.githubusercontent.com/ishwarjha/lumen-product-management/main/install.sh | bash
The output is identical to Option A.
After either method, restart Claude Code. The plugin will not be active until you do.
Configure Your Environment
Navigate to your project directory and copy the example config files:
$ cd ~/projects/helix
$ cp ~/.claude/plugins/lumen/lumen-setup.example.json lumen-setup.json
$ cp ~/.claude/plugins/lumen/.env.example .env
Open .env and set your Anthropic API key:
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxx
That is the only required credential. Everything else in .env is optional — you add it when you connect to the MCP servers.
Open lumen-setup.json and fill in your project basics:
{
"project": {
"name": "Helix",
"business_model_type": "B2B SaaS",
"regulatory_jurisdiction": "GDPR"
},
"mcp_connections": {
"posthog": { "enabled": false, "host": "https://app.posthog.com" },
"supabase": { "enabled": false, "url": "" },
"upstash": { "enabled": false, "url": "" },
"slack": { "enabled": false, "ops_channel": "" }
}
}
Leave the MCP connections as false for now. SetupGuide will walk you through connecting them one at a time.
Important: Both lumen-setup.json and .env are in .gitignore. Never commit either file. They contain credentials.
Run Your First Setup
Start Claude Code in your project directory, then run:
/lumen:setup
SetupGuide runs automatically and walks you through each connection step in sequence. Here is what it looks like:
[LUMEN] SetupGuide · Mode 1 — First Run
Type `skip` to skip any step · `done` to finish setup
Step 0 — Project config (no credentials required)
What is your business model type?
1. SaaS
2. Marketplace
3. Transactional
4. Usage-based
5. Hybrid> 1
Got it — B2B SaaS.
What regulatory jurisdiction applies to your product?
1. GDPR (EU/EEA)
2. CCPA (California)
3. HIPAA (US healthcare)
4. RBI (India financial)
5. None> 1
Got it — GDPR. DataLayer will apply EU data handling rules.
Step 1 — Supabase (Knowledge Graph)
Unlocks: persistent decision history, outcome tracking, long-term KG.
Do you have a Supabase project set up?> yes
Paste your SUPABASE_URL:
> https://xxxxxxxxxxx.supabase.co
Paste your SUPABASE_ANON_KEY:
> eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...✓ Supabase connected. Knowledge Graph enabled.
SetupGuide continues through each MCP step. Type skip to skip any step. Type done to stop early and start working.
You do not need to complete every step before running a workflow. Lumen degrades gracefully when MCPs are absent — it just tells you which results are missing and why.
Check Your Status at Any Time
Run this command to see a live summary of what is connected:
/lumen:status
Output:
[LUMEN] Status — Helix
Project: Helix
Model: B2B SaaS
Jurisdiction: GDPR
Tier: Starter
MCP Connections:
PostHog ✓ connected (W1 PMF scoring enabled)
Supabase ✓ connected (Knowledge Graph enabled)
Upstash ✗ not connected (session context will not survive restarts)
Slack ✗ not connected (reports will not be delivered to Slack)
HubSpot ✗ not connected (Growth tier: churn signals unavailable)
Stripe ✗ not connected (Growth tier: NRR decomposition unavailable)
Last workflow: W1 PMF Discovery · 2026-03-12 · Evidence: MEDIUM
The Recommended Setup Order
Not all MCPs matter equally. Connect them in this order for the fastest return on setup time.
1. Supabase — enables the Knowledge Graph. Every decision, experiment, and outcome gets persisted with an outcome tracking ID. Without this, each Lumen session starts from scratch.
2. Upstash — session context survives Claude Code restarts. Without Upstash, closing and reopening Claude Code clears the session context.
3. Slack — reports get delivered to your Slack channel. Level 2 approval notifications also arrive in Slack, so you can respond without being in the terminal.
4. PostHog — required for PMF scoring in W1. Without PostHog, W1 runs in PARTIAL mode and the PMF Scoring section is empty.
5. HubSpot + Stripe — Growth tier. HubSpot adds CRM-based churn signals. Stripe adds billing data for NRR decomposition.
6. Figma — Scale tier. UXLayer reads design specs directly from Figma during feature validation.
7. GitHub + Sentry + Postman — Enterprise tier. Used by EcosystemOS for developer platform work.
You can get meaningful value from Lumen with just Supabase and PostHog connected. The rest is additive.