lstk

command module
v0.23.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2026 License: Apache-2.0 Imports: 5 Imported by: 0

README ΒΆ

lstk

A command-line interface for LocalStack. Built in Go with a modern terminal UI and native CLI experience for managing and interacting with LocalStack deployments. πŸ‘Ύ

npm install -g @localstack/lstk

See Installation for other install methods.

Prerequisites

  • A Docker-API-compatible container engine β€” Docker, Rancher Desktop, Colima, OrbStack, Lima, and Podman are all auto-detected; see container runtimes for details.
  • LocalStack account β€” required for credentials, the CLI will guide you through authentication.

Installation

Homebrew (macOS / Linux)
brew install localstack/tap/lstk
npm
npm install -g @localstack/lstk
Binaries

Pre-built binaries are also available from GitHub Releases. πŸ“¦

Quick Start

lstk

Running lstk will automatically handle authentication, configuration, and container setup, then start LocalStack. On the first interactive run, it also prompts you to pick which emulator to run (AWS, Azure, or Snowflake) and remembers your choice.

Features

  • Start / stop / status / logs β€” manage the full LocalStack emulator lifecycle with a single command
  • Interactive TUI β€” a Bubble Tea-powered terminal UI in interactive terminals, plain output for CI/CD and scripting
  • Browser-based login β€” authenticate via browser and store credentials securely in the system keyring, or use LOCALSTACK_AUTH_TOKEN for CI (it takes precedence over stored credentials)
  • Snapshots β€” save, load, and manage emulator state as local files, cloud snapshots, or in your own S3 bucket
  • Cloud CLI proxies β€” run aws, az, terraform, cdk, and sam commands against LocalStack with the endpoint, credentials, and region pre-configured
  • Target an external emulator β€” pass --endpoint-url <url> (or set LSTK_ENDPOINT_URL) to point most commands at an already-running LocalStack instance β€” docker compose, host-network mode, CI, a different machine, or a cloud-hosted ephemeral instance (https:// is supported) β€” instead of one lstk manages locally
  • Extensions β€” Git-style lstk-<name> executables extend the CLI with new commands; see extension authoring
  • Self-update β€” lstk update checks for and installs the latest release
  • Structured JSON output β€” pass --json to a supported command for a machine-readable envelope instead of formatted text; see structured output

For the full command reference, configuration options, environment variables, and troubleshooting, see the lstk documentation.

Participating

lstk is developed by the LocalStack team. You can read the source, build it, and fork it freely β€” but we don't accept pull requests from outside collaborators.

The best way to participate is to open a well-formed issue. A bug report we can reproduce is worth more to us than a patch, because it captures the part we can't discover ourselves. CONTRIBUTING.md explains what to include in bug reports and feature requests.

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
internal
api
auth
Package auth is a generated GoMock package.
Package auth is a generated GoMock package.
env
extension
Package extension implements lstk's Git-style extension mechanism: when a user runs `lstk <name>` and `<name>` is not a built-in command, lstk resolves and executes an external `lstk-<name>` executable, forwarding arguments, streams, and the exit code.
Package extension implements lstk's Git-style extension mechanism: when a user runs `lstk <name>` and `<name>` is not a built-in command, lstk resolves and executes an external `lstk-<name>` executable, forwarding arguments, streams, and the exit code.
log
output
Package output defines events for the event/sink system
Package output defines events for the event/sink system
proc
Package proc runs wrapped external tools (aws, terraform, cdk, sam, az, and extensions) so that termination signals reach the child gracefully instead of hard-killing it.
Package proc runs wrapped external tools (aws, terraform, cdk, sam, az, and extensions) so that termination signals reach the child gracefully instead of hard-killing it.
runtime
Package runtime is a generated GoMock package.
Package runtime is a generated GoMock package.
snap
Package snap is a minimal file-snapshot testing helper: Match compares a string against a snapshot stored under __snapshots__/ next to the calling test file, and Clean (wired via TestMain) removes snapshots no test uses anymore.
Package snap is a minimal file-snapshot testing helper: Match compares a string against a snapshot stored under __snapshots__/ next to the calling test file, and Clean (wired via TestMain) removes snapshots no test uses anymore.
tracing
Tracing is disabled by default; set LSTK_OTEL=1 to enable it.
Tracing is disabled by default; set LSTK_OTEL=1 to enable it.
ui
validate
Package validate provides reusable, deterministic validators for user-supplied CLI inputs.
Package validate provides reusable, deterministic validators for user-supplied CLI inputs.
test
integration module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL