online-auth
Secure online authentication client for Kodachi OS
Version: 9.8.4 (build 319) | Size: 4.4MB | Author: Warith Al Maawali
License: Proprietary | Website: https://digi77.com
File Information
| Property | Value |
|---|---|
| Binary Name | online-auth |
| Version | 9.8.4 (build 319) |
| Build Date | REDACTED-BUILD-TIME |
| Rust Version | 1.82.0 |
| File Size | 4.4MB |
| Author | Warith Al Maawali |
| License | Proprietary |
| Category | Kodachi Binary |
| Description | Secure online authentication client for Kodachi OS |
| Git Commit | unknown |
| Metadata Generated | 2026-06-28T11:16:34Z |
| Binary Timestamp | Unknown |
| JSON Data | View Raw JSON |
SHA256 Checksum
973df1129e8a894d113575a211fc27a4aa9005a5e5f6e6203c71ac2995aa8061
Features
| # | Feature |
|---|---|
| 1 | Secure authentication with certificate pinning |
| 2 | Session management with automatic heartbeat |
| 3 | API key synchronization |
| 4 | User group and status checking |
| 5 | Comprehensive logging and error handling |
| 6 | Multi-language architecture integration |
| 7 | TLS 1.3 encrypted communications |
| 8 | Real-time status monitoring |
| 9 | Automatic retry mechanisms |
Security Features
| Feature | Description |
|---|---|
| Authentication | Not provided by cli-core (see online-auth) |
| Encryption | Not provided by cli-core |
| Input Validation | Argument parsing via clap; per-command validation is the consumer's responsibility |
| Rate Limiting | Not provided by cli-core |
System Requirements
| Requirement | Value |
|---|---|
| OS | Linux (Debian-based) |
| Privileges | root/sudo for system operations |
| Dependencies | OpenSSL, libcurl |
Global Options
| Flag | Description |
|---|---|
-h, --help |
Print help information |
-v, --version |
Print version information |
-n, --info |
Display detailed information |
-e, --examples |
Show usage examples |
--json |
Output in JSON format |
-o, --output-format <FORMAT> |
Force output format (text|json) |
--json-pretty |
Pretty-print JSON output with indentation |
--json-human |
Enhanced JSON output with improved formatting (like jq) |
--fields <FIELD_LIST> |
Select specific fields to include in output (comma-separated) |
--limit <NUMBER> |
Limit number of results returned |
--offset <NUMBER> |
Skip first N results (for pagination) |
-d, --work-dir <PATH> |
Working directory (defaults to auto-detected base directory) |
--port <PORT> |
Set custom port number (1024-65535) |
--log-level <LEVEL> |
Set log level (error|warn|info|debug) |
--verbose |
Enable verbose output |
--quiet |
Suppress non-essential output |
--no-color |
Disable colored output |
--config <FILE> |
Use custom configuration file |
--timeout <SECS> |
Set operation timeout in seconds (optional; no default applied) |
--retry <COUNT> |
Retry attempts (optional; no default applied) |
Commands
API Management
sync-api-key
Manually sync API key with server
Usage:
online-auth sync-api-key [OPTIONS]
Examples:
online-auth sync-api-key
online-auth sync-api-key --json
Authentication
authenticate
Authenticate with the server
Usage:
online-auth authenticate [OPTIONS]
Examples:
online-auth authenticate
online-auth authenticate --json
online-auth authenticate --keep-alive
online-auth authenticate --keep-alive --json
online-auth authenticate --relogin
online-auth authenticate --keep-alive --relogin
check-login
Check if currently logged in
Usage:
online-auth check-login [OPTIONS]
Examples:
online-auth check-login
online-auth check-login --json
logout
End the current session
Usage:
online-auth logout [OPTIONS]
Examples:
online-auth logout
online-auth logout --json
check-if-blocked
Check if user ID is blocked
Usage:
online-auth check-if-blocked [OPTIONS]
Examples:
online-auth check-if-blocked
online-auth check-if-blocked --json
get-ids
Show user and session IDs
Usage:
online-auth get-ids [OPTIONS]
Examples:
online-auth get-ids
online-auth get-ids --json
check-all-status
Show all status information at once
Usage:
online-auth check-all-status [OPTIONS]
Examples:
online-auth check-all-status
online-auth check-all-status --json
Heartbeat
send-heartbeat
Send a single heartbeat
Usage:
online-auth send-heartbeat [OPTIONS]
Examples:
online-auth send-heartbeat
online-auth send-heartbeat --json
send-heartbeat-with-retry
Send heartbeat with retry
Usage:
online-auth send-heartbeat-with-retry [OPTIONS]
Examples:
online-auth send-heartbeat-with-retry
online-auth send-heartbeat-with-retry --json
start-heartbeat
Start automatic heartbeat service
Usage:
online-auth start-heartbeat [OPTIONS]
Examples:
online-auth start-heartbeat
online-auth start-heartbeat --json
stop-heartbeat
Stop automatic heartbeat service
Usage:
online-auth stop-heartbeat [OPTIONS]
Examples:
online-auth stop-heartbeat
online-auth stop-heartbeat --json
check-heartbeat
Check if heartbeat service is running
Usage:
online-auth check-heartbeat [OPTIONS]
Examples:
online-auth check-heartbeat
online-auth check-heartbeat --json
Information
get-card
Get user card URL
Usage:
online-auth get-card [OPTIONS]
Examples:
online-auth get-card
online-auth get-card --json
which-group
Check which user group you belong to (VIP = premium)
Usage:
online-auth which-group [OPTIONS]
Examples:
online-auth which-group
online-auth which-group --json
License
activate-license
Activate a license key for premium features
Usage:
online-auth activate-license [OPTIONS]
Examples:
online-auth activate-license --key "H7KM-P2Q9-R5TW-X3YZ-A4B2"
online-auth activate-license -k "H7KM-P2Q9-R5TW-X3YZ-A4B2" --json
release-license
Release license to allow transfer to another device
Usage:
online-auth release-license [OPTIONS]
Examples:
online-auth release-license
online-auth release-license --json
license-status
Check current license status and details
Usage:
online-auth license-status [OPTIONS]
Examples:
online-auth license-status
online-auth license-status --json
dismiss-message
Dismiss an admin popup message for this device (records dismissal server-side)
Usage:
online-auth dismiss-message [OPTIONS]
Examples:
online-auth dismiss-message --message-id "c6b13abe-0f4f-4db6-b1eb-61933bd543ce"
online-auth dismiss-message -m "c6b13abe-0f4f-4db6-b1eb-61933bd543ce" --json
Permission Guard
enable-permission-guard
Enable permission guard daemon to monitor and fix file permissions
Usage:
online-auth enable-permission-guard [OPTIONS]
Examples:
online-auth enable-permission-guard
online-auth enable-permission-guard --json
disable-permission-guard
Disable permission guard daemon
Usage:
online-auth disable-permission-guard [OPTIONS]
Examples:
online-auth disable-permission-guard
online-auth disable-permission-guard --json
permission-guard-status
Check permission guard daemon status
Usage:
online-auth permission-guard-status [OPTIONS]
Examples:
online-auth permission-guard-status
online-auth permission-guard-status --json
Operational Scenarios
Scenario-oriented workflows generated from the binary's built-in -e --json examples.
Scenario 1: Authentication Management
Basic authentication operations
Step 1: Authenticate with the server
sudo online-auth authenticate
Step 2: Authenticate with JSON output
sudo online-auth authenticate --json
Step 3: Authenticate and enable auto-heartbeat
sudo online-auth authenticate --keep-alive
Step 4: Authenticate with auto-relogin on disconnection
sudo online-auth authenticate --relogin
Note
Automatically enables heartbeat (--keep-alive) and re-authenticates when session expires
Step 5: Authenticate with explicit heartbeat and auto-relogin
sudo online-auth authenticate --keep-alive --relogin
Note
Both flags can be used together for clarity
Step 6: Check if currently logged in
sudo online-auth check-login
Step 7: End the current session
sudo online-auth logout
Step 8: Check if user ID is blocked
sudo online-auth check-if-blocked
Step 9: Show all status information
sudo online-auth check-all-status
Scenario 2: User Information
Identity and account information
Step 1: Show user and session IDs
sudo online-auth get-ids
Step 2: Get IDs in JSON format
sudo online-auth get-ids --json
Step 3: Check user group (VIP = premium)
sudo online-auth which-group
Step 4: Get user card URL
sudo online-auth get-card
Scenario 3: Heartbeat Management
Session keepalive and heartbeat operations
Step 1: Send a single heartbeat
sudo online-auth send-heartbeat
Step 2: Send heartbeat with retry logic
sudo online-auth send-heartbeat-with-retry
Step 3: Start automatic heartbeat service
sudo online-auth start-heartbeat
Step 4: Stop automatic heartbeat service
sudo online-auth stop-heartbeat
Step 5: Check if heartbeat service is running
sudo online-auth check-heartbeat
Scenario 4: Permission Guard Management
Control permission guard daemon for file permission monitoring
Step 1: Start permission guard daemon to monitor file permissions
sudo online-auth enable-permission-guard
Note
Ensures files maintain correct ownership and prevents root-owned files in user directories
Step 2: Stop permission guard daemon
sudo online-auth disable-permission-guard
Note
Stops automatic permission monitoring and correction
Step 3: Check if permission guard daemon is running
sudo online-auth permission-guard-status
Step 4: Enable permission guard with JSON output
sudo online-auth enable-permission-guard --json
Note
Useful for automation scripts and monitoring
Step 5: Get permission guard status in JSON format
sudo online-auth permission-guard-status --json
Scenario 5: API Management
API key synchronization and management
Step 1: Manually sync API key with server
sudo online-auth sync-api-key
Step 2: Sync API key with JSON output
sudo online-auth sync-api-key --json
Scenario 6: Program Information
Version and program details
Step 1: Show version number
online-auth --version
Step 2: Show detailed program information
online-auth --info
Step 3: Show help information
online-auth --help
Step 4: Show usage examples
online-auth --examples
Scenario 7: Workflow Combinations
Complete authentication workflows
Step 1: Authenticate and check group
sudo online-auth authenticate && sudo online-auth which-group
Note
Useful for setup scripts
Step 2: Auth with heartbeat and get card
sudo online-auth authenticate --keep-alive && sudo online-auth get-card
Step 3: Check login or authenticate if needed
sudo online-auth check-login || sudo online-auth authenticate
Note
Ensures authenticated state
Scenario 8: Troubleshooting
Debug and error resolution
Step 1: Check connection status
sudo online-auth check-login --json
Step 2: Refresh API credentials
sudo online-auth sync-api-key
Note
Use when authentication fails
Step 3: Reset authentication
sudo online-auth logout && sudo online-auth authenticate
Step 4: Restart heartbeat service
sudo online-auth stop-heartbeat && sudo online-auth start-heartbeat
Scenario 9: Advanced Options
Global configuration options (provided by cli-core)
Step 1: Set 30 second timeout
sudo online-auth authenticate --timeout 30
Note
Global option - applies to network operations
Step 2: Use custom port
sudo online-auth authenticate --port 8080
Note
Global option - for services that support custom ports
Step 3: Enable debug logging
sudo online-auth authenticate --log-level debug
Note
Global option - useful for diagnosing issues
Scenario 10: JSON Output
Working with JSON formatted responses
Step 1: Extract status from JSON
sudo online-auth authenticate --json | jq '.status'
Step 2: Extract user ID from JSON
sudo online-auth get-ids --json | jq '.data.userId'
Step 3: Get all status data as JSON
sudo online-auth check-all-status --json | jq '.data'
Note
Useful for monitoring scripts
Scenario 11: License Management
License activation, status, and transfer operations
Step 1: Activate a license key for premium features
sudo online-auth activate-license --key "H7KM-P2Q9-R5TW-X3YZ-A4B2"
Note
Key format: XXXX-XXXX-XXXX-XXXX-XXXX (24 chars with dashes)
Step 2: Activate license with JSON output
sudo online-auth activate-license -k "H7KM-P2Q9-R5TW-X3YZ-A4B2" --json
Step 3: Check current license status and details
sudo online-auth license-status
Step 4: Get license status in JSON format
sudo online-auth license-status --json
Note
Useful for scripting and automation
Step 5: Release license to transfer to another device
sudo online-auth release-license
Note
Use when moving to new hardware or reinstalling
Step 6: Release license with JSON confirmation
sudo online-auth release-license --json
Environment Variables
| Variable | Description | Default | Values |
|---|---|---|---|
RUST_LOG |
Set logging level | info | error|warn|info|debug|trace |
NO_COLOR |
Disable all colored output when set | unset | 1|true|yes (any value disables color) |
Exit Codes
| Code | Description |
|---|---|
| 0 | Success |
| 1 | General error |
| 2 | Invalid arguments |
| 3 | Permission denied |
| 4 | Network error |
| 5 | File not found |