Skip to content

helix components

List every URI scheme the binary knows about, or print the parameter documentation for a specific component. The list is curated in cmdComponents; the per-component detail view pulls from the central engine.Describable registry so every component that implements Describe() gets full parameter docs, not just a hand-picked subset.

Usage

helix components            # list every component
helix components <scheme>   # show details for one component

Flags

This subcommand takes no flags.

Behavior notes

  • Requires $HELIX_LICENSE. Verified at process start.
  • The summary list (no argument) is a hand-curated array in cmdComponents. It exists so the listing is grouped by purpose (Core / Data/HTTP / Messaging / Databases / AI / LLM / Vector DB / Reporting / Protocol servers) even when some components don't yet implement Describe().
  • The detail view (helix components <scheme>) consults the Describable registry built from every component that calls RegisterDescribable. The output prints:
  • URI format
  • role (producer / consumer / both)
  • parameters with type, default, required marker, enum values
  • a YAML example using the URI format
  • A scheme listed in the summary but missing from the registry prints Parameter documentation coming soon. — the only honest fallback.
  • An unknown scheme prints Unknown component %q and falls back to the full summary listing.

Examples

List every component:

$ helix components
Available Helix Components:
==========================
  direct://        Synchronous in-process messaging
  seda://          Async in-process messaging (channel-based)
  timer://         Periodic message generation
  cron://          Cron-based scheduling
  ...
Total: 47 components

Run 'helix components <name>' for parameter details. Example: helix components timer

Inspect one component:

$ helix components kafka
Component: kafka://
  Apache Kafka producer/consumer

  URI Format: kafka://topic?param=...
  Role:       both

  Parameters:
  ----------------------------------------------------------------------
  brokers         string     Comma-separated broker addresses [default: localhost:9092]
  groupId         string     Consumer group ID
  autoOffsetReset enum       Where to start reading [default: latest]
                              values: earliest, latest
  ...
  Example:
    trigger:
      uri: kafka://topic?param=...

Source

cmd/helix/main.go lines 1545-1651 (cmdComponents), cmd/helix/describables.go (the registry).

See also