Skip to content

docs: add Phase 1 preview for new Go-based CLI (lstk)#504

Open
quetzalliwrites wants to merge 2 commits intomainfrom
docs-new-cli-phase1
Open

docs: add Phase 1 preview for new Go-based CLI (lstk)#504
quetzalliwrites wants to merge 2 commits intomainfrom
docs-new-cli-phase1

Conversation

@quetzalliwrites
Copy link
Collaborator

@quetzalliwrites quetzalliwrites commented Mar 19, 2026

Resolves: DOC-31

PREVIEW URL:
https://0c3d18ed.localstack-docs.pages.dev/aws/tooling/localstack-cli/#introduction

Updates the CLI reference documentation to include the initial release of the new LocalStack CLI (lstk).

Key changes:

  • Added a high-visibility Note at the top of the doc clarifying the phased rollout and the coexistence of both CLIs.
  • Documented current lstk commands (start, stop, status, etc.)
  • Clearly distinguished between the "New CLI Preview" and the "Legacy CLI" to ensure users understand that advanced features (i.e., Cloud Pods, Extensions) still require the legacy cli.
  • Documented new global options (--config, --non-interactive) of the flat command structure of new Go-based implementation.

The goal is to encourage early adoption for phase 1 rollout of new cli and encourage feedback for the new tooling; all without disrupting users who rely on stable advanced commands of the current cli (legacy cli).

initial release of the new LocalStack CLI
@quetzalliwrites quetzalliwrites self-assigned this Mar 19, 2026
@quetzalliwrites quetzalliwrites added the documentation Improvements or additions to documentation label Mar 19, 2026
@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Mar 20, 2026

Deploying localstack-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 08f2b62
Status: ✅  Deploy successful!
Preview URL: https://3a9cb4a6.localstack-docs.pages.dev
Branch Preview URL: https://docs-new-cli-phase1.localstack-docs.pages.dev

View logs

Copy link
Member

@silv-io silv-io left a comment

Choose a reason for hiding this comment

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

LGTM!

**lstk**: We are currently rolling out a new, high-performance CLI written in Go. During this initial phase, the new CLI (`lstk`) supports core lifecycle commands (start, stop, logs). For advanced features such as **Cloud Pods**, **Extensions**, and **Ephemeral Instances**, please continue to use the current LocalStack CLI. Both tools can be installed and used on the same machine.
:::

`lstk` provides a modern terminal experience with a built-in terminal UI (TUI) and improved performance.
Copy link
Member

Choose a reason for hiding this comment

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

maybe we should stress here a bit that this terminal UI is not fully featured yet. It has some interactivity to it but not yet a dashboard-style long-running TUI.

Copy link
Contributor

@anisaoshafi anisaoshafi left a comment

Choose a reason for hiding this comment

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

LGTM, thanks Quetzalli!

We have lstk completion cmd as well, just in case you think it should go here.

@mmaureenliu
Copy link

LGTM, thanks Quetzalli!

We have lstk completion cmd as well, just in case you think it should go here.

We never documented that for localstack completion so maybe we can leave out detailed docs for all functionalities for now?

Copy link

@mmaureenliu mmaureenliu left a comment

Choose a reason for hiding this comment

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

I've made some suggestions but if there's no capacity I'm happy for it to go out as is and we can address these later. Thanks for the great work!

## lstk

:::note
**lstk**: We are currently rolling out a new, high-performance CLI written in Go. During this initial phase, the new CLI (`lstk`) supports core lifecycle commands (start, stop, logs). For advanced features such as **Cloud Pods**, **Extensions**, and **Ephemeral Instances**, please continue to use the current LocalStack CLI. Both tools can be installed and used on the same machine.

Choose a reason for hiding this comment

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

Do users really care it's "written in Go"? I think this bit is not needed. "high-performance" is all that's important.

## lstk

:::note
**lstk**: We are currently rolling out a new, high-performance CLI written in Go. During this initial phase, the new CLI (`lstk`) supports core lifecycle commands (start, stop, logs). For advanced features such as **Cloud Pods**, **Extensions**, and **Ephemeral Instances**, please continue to use the current LocalStack CLI. Both tools can be installed and used on the same machine.

Choose a reason for hiding this comment

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

I'd like to add a sentence highlighting that advanced features in lstk is coming soon.


`lstk` provides a modern terminal experience with a built-in terminal UI (TUI) and improved performance.

To install the new CLI and test it out, follow the [installation steps.](https://github.com/localstack/lstk/blob/main/README.md#installation)

Choose a reason for hiding this comment

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

Do we have capacity to add an installation guide in the style of the one for localstack here? i.e. tabs for different OS and guides for how to install.

| -h, --help | Show help message and exit |

### Commands
The new CLI uses a flat command structure. Advanced subcommands are not yet available in this preview.

Choose a reason for hiding this comment

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

Let's call it "initial release" rather than preview

Usage: lstk logout
```

#### config

Choose a reason for hiding this comment

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

@silv-io can you provide some basic info re config files for @quetzalliwrites to incorporate here?

  • user can modify config file and the file itself includes guidance
  • if a lstk.toml (or however we decide this to be) is included in local dir, lstk will automatically use this profile
  • (if we don't plan to fix the "default to pull latest" issue right now) global config defaults to pulling latest

Copy link
Member

Choose a reason for hiding this comment

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

We decided on .lstk/config.toml for the local config file.

The readme covers the config quite well: https://github.com/localstack/lstk?tab=readme-ov-file#configuration

We can extract something out of there or just link to it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants