Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions scripts/generate_cli_docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -187,9 +187,8 @@ def generate_command_section(cmd: Command) -> list[str]:


def generate_documentation(
regular_commands: list[Command],
regular_commands: list[Command],
advanced_commands: list[Command],
version: str
) -> str:
"""Generate the complete markdown documentation."""
doc_lines = []
Expand All @@ -213,7 +212,7 @@ def generate_documentation(
"To install the LocalStack CLI, follow the [installation guide](/aws/getting-started/installation/#installing-localstack-cli).",
"",
":::note",
f"This documentation was auto-generated from LocalStack CLI version `{version}`.",
"[`lstk`](/aws/developer-tools/running-localstack/lstk/) is our new Go-based CLI with an interactive terminal UI for lifecycle (`start`, `stop`), monitoring (`status`, `logs`), storage (`snapshot`), and more.",
":::",
"",
"## Global Options",
Expand Down Expand Up @@ -282,18 +281,14 @@ def main() -> None:
total = len(regular_commands) + len(advanced_commands)
print(f"Found {len(regular_commands)} commands and {len(advanced_commands)} advanced commands", file=sys.stderr)

# Get version
version_output = run_command(["localstack", "--version"])
version = version_output.strip() if version_output else "latest"

# Populate details for each command (including subcommands)
all_commands = regular_commands + advanced_commands
for i, cmd in enumerate(all_commands):
print(f"Processing command {i + 1}/{total}: localstack {cmd.name}", file=sys.stderr)
populate_command_details(cmd)

print("Generating documentation...", file=sys.stderr)
documentation = generate_documentation(regular_commands, advanced_commands, version)
documentation = generate_documentation(regular_commands, advanced_commands)

if args.dry_run:
print(documentation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ It provides convenience features to interact with LocalStack features like Cloud
To install the LocalStack CLI, follow the [installation guide](/aws/getting-started/installation/#installing-localstack-cli).

:::note
This documentation was auto-generated from LocalStack CLI version `LocalStack CLI 2026.5.3`.
[`lstk`](/aws/developer-tools/running-localstack/lstk/) is our new Go-based CLI with an interactive terminal UI for lifecycle (`start`, `stop`), monitoring (`status`, `logs`), storage (`snapshot`), and more.
:::

## Global Options
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,7 @@ It provides a built-in terminal UI (TUI) for interactive use and plain text outp
Running `lstk` with no arguments takes you through the entire flow automatically.

:::note
`lstk` is in early release and does not yet support advanced features like **Cloud Pods**, **Extensions**, and **Ephemeral Instances**. For these features, use the [LocalStack CLI](/aws/developer-tools/running-localstack/localstack-cli/).
Both tools can be installed and used on the same machine.
`lstk` covers the everyday emulator workflow: lifecycle (`start`, `stop`), monitoring (`status`, `logs`), storage (`snapshot`), and more.
:::

## Prerequisites
Expand Down Expand Up @@ -456,14 +455,6 @@ Restart your shell after persisting completions.

## FAQ

### What is the difference between `lstk` and the `localstack` CLI?

Both tools can start, stop, and manage the LocalStack emulator.
`lstk` is a newer CLI built in Go with a TUI, while the `localstack` CLI is the established Python-based tool with support for Cloud Pods, Extensions, Ephemeral Instances, and other advanced features.

Both can be installed side by side.
Use `lstk` for fast daily start/stop workflows and `localstack` for advanced platform features.

### Can I use `lstk` with Docker Compose?

No. `lstk` manages its own Docker container directly.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, if the configs are compatible, you can use lstk to interact with (e.g. view status, view logs, manage snapshots) the localstack instance started with docker-compose, but should leave lifecycle management to docker-compose.

No need to change right now but we do need to have a good think on whether we want to recommend complementing docker-compose with the CLI.

Expand Down