Scope
The primary CLI entry-points and session runtime.
Goal
Code review + simplify pass:
nsc/cli/app.py (303 lines) — Typer app definition and top-level callbacks
nsc/cli/runtime.py (320 lines) — per-invocation runtime context
nsc/cli/login_commands.py (310 lines) — nsc login command group
Check for:
- Global state managed in
app.py that should move to runtime.py
- Overly wide callback signatures
- Login flow complexity (credential storage, token refresh, profile creation)
- Opportunities to push output formatting down to
output/
Files
nsc/cli/app.py, nsc/cli/runtime.py, nsc/cli/login_commands.py
- Related tests:
tests/cli/
Scope
The primary CLI entry-points and session runtime.
Goal
Code review + simplify pass:
nsc/cli/app.py(303 lines) — Typer app definition and top-level callbacksnsc/cli/runtime.py(320 lines) — per-invocation runtime contextnsc/cli/login_commands.py(310 lines) —nsc logincommand groupCheck for:
app.pythat should move toruntime.pyoutput/Files
nsc/cli/app.py,nsc/cli/runtime.py,nsc/cli/login_commands.pytests/cli/