## Lesson — Avoid bypassing visibility checks with bracket notation

**Tags:** typescript, architecture, async
**Scope:** packages/cli/src/commands/**/*.ts, !**/*.test.ts, !**/*.spec.ts

Avoid bypassing visibility checks with bracket notation to call private initialization methods. Use a public static factory method to encapsulate asynchronous setup and dynamic imports, providing a clean and type-safe way to instantiate classes.
