The Lioran S3 CLI
The official Lioran S3 CLI is the terminal interface for Lioran Bastion.
It is developed by Lioran Developer Solutions under Lioran Group, with the project led by Swaraj Puppalwar.
The executable is:
liorans3
Install
npm install -g @liorans3/cli@prealpha
Check it:
liorans3 --help
liorans3 --version
Design
The CLI sits on top of the official @liorans3/driver.
It does not implement a second network protocol stack.
That matters because:
- authentication behavior remains consistent
- multipart behavior remains consistent
- stream handling remains consistent
- API errors remain consistent
- protocol fixes propagate into CLI behavior through the driver
Configure
Interactive setup:
liorans3 configure
Profiles:
liorans3 profile list
liorans3 profile show production
liorans3 profile use production
Create a profile:
liorans3 profile create production --endpoint bastion://admin:secret@storage.example.com
Inspect the current identity:
liorans3 whoami
Ping:
liorans3 ping
Credential precedence
The CLI resolves credentials in this order:
- explicit CLI flags
- environment variables
- explicitly selected profile
- active/default profile
That makes CI usage predictable.
Environment variables
Examples:
LIORANS3_URI=bastion://admin:secret@127.0.0.1:27118
LIORANS3_PROFILE=production
Or separate values:
LIORANS3_ENDPOINT=https://storage.example.com
LIORANS3_USERNAME=admin
LIORANS3_PASSWORD=secret
Access keys:
LIORANS3_ACCESS_KEY=bk_example
LIORANS3_SECRET_KEY=secret
Bucket commands
List:
liorans3 bucket ls
Create:
liorans3 bucket create media --quota-bytes 53687091200
Inspect:
liorans3 bucket info media
Update quota:
liorans3 bucket update media --quota-bytes 107374182400
Delete:
liorans3 bucket rm media
Object commands
List:
liorans3 object ls media --prefix uploads/2026/ --limit 50
Metadata:
liorans3 object stat media uploads/document.pdf
Upload:
liorans3 object put media uploads/document.pdf ./document.pdf --content-type application/pdf
Download:
liorans3 object get media uploads/document.pdf ./downloaded.pdf
Delete:
liorans3 object rm media uploads/document.pdf
Binary stdout
This is one of the more useful CLI behaviors:
liorans3 object cat media logs/app.log
Raw object bytes are written directly to stdout.
That lets Unix pipes remain Unix pipes:
liorans3 object cat media logs/app.log | grep "ERROR"
Archive streaming:
liorans3 object cat media backup.tar.gz | tar -xz
Range reads
liorans3 object range media large.bin --start 0 --end 1048575 --output chunk.bin
Signed URLs
liorans3 object presign media uploads/document.pdf --method GET --expires 3600
Multipart
liorans3 multipart upload media archives/backup.tar.gz ./backup.tar.gz --part-size-mb 16 --concurrency 4
Users
liorans3 user ls
liorans3 user create alice --role readwrite
liorans3 user disable alice
liorans3 user enable alice
liorans3 user reset-password alice
liorans3 user rm alice
Access keys
liorans3 key ls
Create:
liorans3 key create "CI Deployment Key" --expires-days 90 --save-to-profile ci
Rotate:
liorans3 key rotate bk_example
Revoke:
liorans3 key revoke bk_example
Diagnostics
liorans3 doctor
Health:
liorans3 system health
Info:
liorans3 system info
Performance:
liorans3 system performance
Metrics:
liorans3 system metrics
JSON mode
Automation should use:
liorans3 bucket ls --json
The CLI keeps machine-readable JSON on stdout and sends non-result diagnostics elsewhere.
That means a script can safely do:
liorans3 bucket ls --json | jq '.'
Exit codes
The CLI maps failures into deterministic categories including:
- success
- general error
- usage error
- authentication error
- forbidden
- not found
- network error
- conflict
- capacity/storage errors
That makes shell automation much more robust than parsing English error strings.
Summary
The CLI is not intended to be a decorative wrapper around curl.
It is meant to be the operational surface for humans, CI, diagnosis, and storage administration while sharing protocol behavior with the TypeScript driver.
Top comments (0)