Skip to content

Quickstart

This guide gets you from zero to a working LumenFlow setup in under 5 minutes.

The fastest way to start using LumenFlow is with just the GitHub App.

  1. Install the GitHub App

    Go to the GitHub Marketplace and click Install. Select your repository and authorize.

  2. Add configuration file

    Create .lumenflow.config.yaml in your repo root:

    version: 1
    project:
    name: my-project
    tasksDir: docs/tasks
    stampsDir: .beacon/stamps
    lanes:
    - id: Core
    description: Core application features
    - id: Ops
    description: DevOps and infrastructure
    gates:
    lint: npm run lint
    typecheck: npm run typecheck
    test: npm test
  3. Create the tasks directory

    Create docs/tasks/backlog.md:

    # Backlog
    ## Ready
    - [WU-001 — My first task](wu/WU-001.yaml)
    ## In Progress
    ## Done
  4. Create your first Work Unit

    Create docs/tasks/wu/WU-001.yaml:

    id: WU-001
    title: My first task
    lane: Core
    type: feature
    status: ready
    priority: P2
    description: |
    A simple task to test LumenFlow.
    acceptance:
    - The feature works
    code_paths:
    - src/
  5. Open a Pull Request

    Create a branch, make changes, and open a PR. The LumenFlow GitHub App will:

    • Validate your WU spec
    • Run your configured gates
    • Add status checks to the PR

After your first PR or wu:done, you should see:

  • ✅ WU status changed to done
  • ✅ Stamp file created in .beacon/stamps/
  • ✅ PR checks pass (if using GitHub App)
  • ✅ Backlog updated

Here’s a complete .lumenflow.config.yaml for reference:

version: 1
project:
name: my-project
tasksDir: docs/tasks
stampsDir: .beacon/stamps
lanes:
- id: Core
description: Core application features
gates: [lint, typecheck, test]
- id: UI
description: Frontend components
gates: [lint, typecheck, test]
- id: Ops
description: DevOps and infrastructure
gates: [lint]
gates:
lint: npm run lint
typecheck: npm run typecheck
test: npm test
build: npm run build
defaults:
requiresReview: true
exposure: backend-only