Reference

Command reference

CLI l syntax, options, configuration priority, and exit status.

Global command

l [options] [command]
OptionPurpose
-V, --versionDisplay the version from package.json
-h, --helpDisplay help
--profile <name>Override the project profile for this command

Auth priority: --profileprofile in the nearest project config → default. Global options can appear before or after the command, including Lambda subcommands. -p still means Lambda prefix; profiles only use --profile. See multiple profiles for complete examples and session locations.

l init

Interactively initialize project configuration in the current folder.

l init
l init --profile production

Prompts cover auth profile, project name, resource region, Lambda configuration mode, a name/prefix or function selection, then save confirmation. Available Lambda modes:

  • Select a function from AWS (requires login).
  • Enter a function name manually.
  • Use a function name prefix.
  • Skip Lambda configuration.

An existing file requires update confirmation; old values become defaults. Cancellation does not write a file. Ctrl+C/EOF cancels input. Invalid configs must be fixed first. The command requires an interactive terminal; --yes, --force, and piped input are not supported.

See project configuration for the schema and behavior. With --profile, the profile question is skipped and that value is saved.

l login

Authenticate through AWS Sign-In in your browser.

l login
l login --profile production
l login --profile staging --region us-east-1

The command:

  1. Selects a profile from option/config/default and an auth region from --region, AWS_REGION, AWS_DEFAULT_REGION, then ap-southeast-1.
  2. Creates OAuth state, a PKCE verifier/challenge, and a DPoP key.
  3. Starts a callback server on 127.0.0.1 at a random port.
  4. Opens AWS Sign-In in the browser.
  5. Exchanges the authorization code for temporary credentials.
  6. Verifies credentials with STS.
  7. Saves a local session for the selected profile only.

-r, --region <region> sets the AWS Sign-In region for this login. The project region remains specific to Lambda resources. See login and sessions for security details.

l whoami

Display the AWS identity from the selected profile's session.

l whoami
l whoami --profile production

Output includes:

FieldSource
ProfileProfile selected through option/config/default
AccountSTS GetCallerIdentity response
IdentityARN from the STS response
RegionLogin session
ExpiresCredentials used by STS

If credentials are near expiry, the provider attempts to refresh them first.

l lambda list

Fetch all ListFunctions pages and display functions in a table.

l lambda list
l lambda list --prefix billing-
l lambda list -p billing-
OptionRequiredPurpose
-p, --prefix <prefix>NoShow function names starting with this prefix
-r, --region <region>NoOverride the resource region for this command

The default prefix comes from the project. --prefix overrides it; use --prefix "" to show all functions. Region priority is CLI option, project config, then login session.

Prefix filtering happens after fetching all pages. Current output columns: name, runtime, memory, and timeout.

Required AWS permission: lambda:ListFunctions.

l lambda info

Display configuration for one Lambda function.

l lambda info billing-worker
l lambda info
l lambda info billing-worker --region us-east-1

The name argument is optional when the project stores lambda.functionName. An explicit name overrides the project value. -r, --region <region> overrides the project region. name may be a function name or another identifier accepted by the AWS SDK for GetFunction. Output includes runtime, handler, memory, timeout, architecture, state, last update status, modification time, and execution role.

Required AWS permission: lambda:GetFunction.

l pull and l push

l pull [names...]
l push [names...]
l pull billing-api --region us-east-1
l pull billing-api billing-worker
l push billing-api billing-worker --dry-run
l pull --prefix billing-
l push --all --dry-run
l push --dry-run
l push --yes
l pull --all --profile production --dry-run

A project config is required. Multiple name arguments are processed in one command. Without arguments or selectors, the target comes from the configured function or a single function selected by prefix. Code lives in lambda/<function-name>/.

OptionPurpose
-r, --region <region>Override the project region
--dry-runPreview without applying changes
-y, --yesSkip normal confirmation; conflicts are still rejected
--allAll AWS functions (pull) or local folders (push), respecting the configured prefix if any
-p, --prefix <prefix>All targets with this prefix, overriding the configured prefix
--profile <name>Global option selecting the auth session for the entire batch

Explicit names cannot be combined with --all/--prefix. Without a configured prefix, --all covers every target even if lambda.functionName is set. All targets are checked before one confirmation. A first push without a baseline still needs approval. Execution failure stops subsequent targets; previous successes remain applied. A summary records each function's result. See pull and push for AWS permissions, packaging, backups, and recovery.

Exit status

  • 0: the command completed without errors.
  • 1: the command action threw an error, including missing sessions, denied AWS access, or failed resource reads.
  • 130: interactive l init input was cancelled with Ctrl+C/EOF. Answering no to init confirmation is normal cancellation with status 0.

Cancelling pull/push prompts also returns 130; answering no to normal confirmation returns 0 without applying the operation.

Errors go to standard error. Tables and normal status messages go to standard output.