Skip to content

clie

The clie module is the CLIE command-line interface for executing containerized development workflows.

It manages Docker-based extensions that provide isolated, reproducible development environments.

System Context

Shows how clie interacts with developers, Docker, and GitHub Container Registry.

Container Architecture

High-level view of clie's major subsystems.

Subsystem Architecture

Configuration System

Multi-layer configuration management (base, local, personal, dev configs).

Parser System

EBNF-based command-line argument parsing.

Docker Orchestration

Container lifecycle management and execution.

Extension Management

Extension installation and lifecycle management.

Validation System

Configuration and command validation.

Logging System

Structured logging with context management.

Terminal System

Cross-platform terminal handling (Unix/Windows).

GitHub Integration

GitHub Container Registry integration for image management.

Cache System

Registry response and metadata caching.

Session System

CLI session state management.

TUI System

Terminal UI components (spinners, progress bars).

Workflow Diagrams

Run Workflow

The flow when executing clie run <extension> <command>.

Install Workflow

The flow when installing extensions.

Design File

  • Location: specs/clie/.design/workspace.dsl
  • Interactive: clie eac serve design --module clie

Key Features

Feature Description
Containerized Execution Run commands in isolated Docker containers
Multi-Config Support Layer configs from repository, local, personal, and dev
Extension Pinning SHA-based version pinning for reproducibility
TTY Support Full terminal support including interactive sessions
Cross-Platform Works on Linux, macOS, and Windows

Tutorials | How-to Guides | Explanation | Reference

You are here: Reference — information-oriented technical descriptions of the system.