@hallaxius/cli
v1.0.0
Published
Hallaxius CLI - File upload utility
Downloads
77
Maintainers
Readme
@hallaxius/cli
CLI tool for file uploads and shortlink creation via Hallaxius.
Installation
Bun (recommended)
bun install -g @hallaxius/clinpm
npm install -g @hallaxius/cliFrom source
git clone https://github.com/seshstranger/hallaxius-cli
cd hallaxius-cli
bun install
bun run src/index.tsSetup
Before using, configure your API key:
hallaxius configure <your-api-key>Or in interactive mode:
hallaxius> configure <your-api-key>The API key is stored encrypted in %APPDATA%\HallaxiusCli\hallaxius.config.json.
Usage
The CLI works in two modes: interactive and command-line.
Interactive mode
Run without arguments to enter the REPL:
hallaxius hallaxius v1.0.1
Welcome! Type help to see available commands.
ZyRox@DESKTOP >Command-line mode
Pass the command and arguments directly:
hallaxius upload image.png
hallaxius upload https://example.com/image.jpg
hallaxius shortlink https://mysite.com/pageCommands
| Command | Shortcut | Description |
|---|---|---|
| configure <api-key> | cfg | Set your API key |
| upload <file\|url> | up | Upload a file or URL |
| pending | pend | List pending uploads |
| resume <id> | res | Resume a pending upload |
| verify | v | Validate API key |
| reset | rm | Clear stored configuration |
| shortlink <url> | sl | Create a shortlink |
| plan | acc | Show plan and features |
| profile | prof | Show full profile info |
| update [--install] | upd | Check or install updates |
| reinstall | reinst | Reinstall CLI globally |
| clear | cls | Clear the screen |
| exit | q | Exit interactive mode |
| help | h | Show help |
Upload
Local file
hallaxius upload photo.png
hallaxius upload "C:\Users\ZyRox\Documents\report.pdf"
hallaxius up video.mp4 -p mypassword --slug my-videoURL (download + upload)
hallaxius upload https://example.com/archive.zipThe CLI downloads the file to a temp directory, uploads it, and cleans up the temp file afterwards.
Upload options
| Flag | Description |
|---|---|
| -v, --verbose | Verbose output (SHA-256, chunk size) |
| --json | JSON output (for scripting) |
| -p, --password <pass> | Password-protect the file |
| --slug <slug> | Set a custom slug |
JSON output
With --json, the result is printed as JSON:
{
"success": true,
"url": "https://cdn.hallaxi.us/abc123",
"message": "Upload completed successfully. Public URL: https://cdn.hallaxi.us/abc123",
"totalTimeSeconds": 3.42
}Progress bar
During upload, an animated progress bar is displayed:
⠋ [████████████░░░░░░░░░░░░░░░░░░] 42.3% 3/7 12.5 MB/s ETA 00:45Resuming uploads
If an upload is interrupted, it is saved as pending:
hallaxius pending Pending uploads
abc12345...
Size: 150 MB
Path: C:\Users\ZyRox\Videos\video.mp4Resume it:
hallaxius resume abc12345The CLI checks that the file still exists and its size hasn't changed.
Shortlinks
Create short links from long URLs:
hallaxius shortlink https://mysite.com/very/long/url ✓ Shortlink created
URL https://hallaxi.us/s/x7k2
Target https://mysite.com/very/long/urlAccount
Plan and features
hallaxius planDisplays: plan, storage usage (with visual bar), limits, and list of available features.
Full profile
hallaxius profileSame as plan, but includes user ID and username, plus an extended feature list.
Updates
The CLI automatically checks for updates every 24 hours. To check manually:
hallaxius update --installUpdates are downloaded, hash-verified (SHA-256), and installed automatically. Backups of the previous version are kept in %APPDATA%\HallaxiusCli\backup.
Advanced configuration
Data files
| Path | Description |
|---|---|
| %APPDATA%\HallaxiusCli\hallaxius.config.json | Config and encrypted API key |
| %APPDATA%\HallaxiusCli\resume\ | Pending upload states |
| %APPDATA%\HallaxiusCli\backup\ | Version backups |
| %LOCALAPPDATA%\HallaxiusCli\ | Global install directory |
Environment variables
| Variable | Description |
|---|---|
| NO_COLOR=1 | Disable colored output |
Security
- API key is encrypted with DPAPI (Windows Data Protection) before being saved to disk
- URL downloads are validated against blocked MIME types (executables, installers, etc.)
- SHA-256 hash is calculated for all files before upload
- Updates are verified with SHA-256 before installation
- The CLI respects
NO_COLORfor non-interactive environments
Requirements
- Bun 1.0+ (recommended) or Node.js 18+
- Windows (DPAPI support for API key encryption)
Development
bun install
bun run src/index.tsLint and formatting
bunx biome check src/
bunx biome check --fix --unsafe src/Typecheck
bunx tsc --noEmitLicense
MIT
