Skip to content

kodachi-session-helper

Global emergency keyboard shortcut daemon for Kodachi OS

Version: 9.0.1 | Size: 1.9MB | Author: Warith Al Maawali

License: Proprietary | Website: https://digi77.com


File Information

Property Value
Binary Name kodachi-session-helper
Version 9.0.1
Build Date 2026-03-23T08:26:04.359581688Z
Rust Version 1.82.0
File Size 1.9MB
JSON Data View Raw JSON

SHA256 Checksum

f5c5e5c16780030bb6fae79451900bc49807c4c034cbf00d2e76668d8e1c6d30

Features

Feature Description
Feature X11 key grab registration with collision detection
Feature Raw /dev/input hardware corroboration (anti-XTEST)
Feature Hold-to-trigger with auto-repeat rejection (1500ms default)
Feature Local session token authentication (no network required)
Feature Delayed lockdown with cancel capability
Feature Unix socket for dashboard status queries
Feature Atomic config reload via SIGHUP
Feature LUKS device wipe + dashboard nuke combined actions
Feature X11 disconnect detection with auto-reconnect
Feature Memory protection via mlock and PR_SET_DUMPABLE

Security Features

Feature Description
Authentication Local 256-bit session token (no network dependency)
Encryption SHA-256 token digest; memory locked and zeroized on exit
Inputvalidation All configuration validated; key grabs verified against collisions
Ratelimiting Hold-to-trigger with cooldown prevents accidental re-trigger

System Requirements

Requirement Value
OS Linux (Kodachi OS / Debian-based with X11)
Privileges User session (non-root); 'input' group for evdev
Dependencies X11 display server, health-control binary, /dev/input access (input group)

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
--json-pretty Pretty-print JSON output
--json-human Enhanced JSON output (like jq)
--verbose Enable verbose output
--quiet Suppress non-essential output

Commands

Daemon Control

daemon

Start the emergency shortcut daemon

Usage:

kodachi-session-helper daemon

Examples:

kodachi-session-helper daemon

status

Query the running daemon's status

Usage:

kodachi-session-helper status [--json]

Examples:

kodachi-session-helper status
kodachi-session-helper status --json

reload

Send SIGHUP to reload configuration

Usage:

kodachi-session-helper reload

Examples:

kodachi-session-helper reload

Operational Scenarios

Scenario-oriented workflows generated from the binary's built-in -e --json examples.

Scenario 1: Daemon Control

Starting, stopping, and managing the daemon

Step 1: Start the emergency shortcut daemon

kodachi-session-helper daemon
Expected Output: Daemon starts and enters event loop

Note

Run as your user (not root). Requires X11 and input group membership.

Step 2: Check if the daemon is running and view armed shortcuts

kodachi-session-helper status
Expected Output: Daemon status with shortcut list

Step 3: Get daemon status in JSON format

kodachi-session-helper status --json
Expected Output: JSON with running state, shortcuts, and capabilities

Step 4: Reload configuration without restarting

kodachi-session-helper reload
Expected Output: Sends SIGHUP to running daemon

Note

The daemon re-reads its config and re-registers key grabs.

Scenario 2: Program Information

Getting information about the tool

Step 1: Show version

kodachi-session-helper -v
Expected Output: Version string

Step 2: Version in JSON format

kodachi-session-helper -v --json
Expected Output: JSON version envelope

Step 3: Show detailed program information

kodachi-session-helper -n
Expected Output: Features, requirements, and capabilities

Step 4: Program info in JSON format

kodachi-session-helper -n --json
Expected Output: JSON program info envelope

Step 5: Show usage examples

kodachi-session-helper -e
Expected Output: This examples listing

Step 6: Examples in JSON format

kodachi-session-helper -e --json
Expected Output: JSON examples envelope

Step 7: Show help information

kodachi-session-helper -h
Expected Output: Usage and command listing

Step 8: Help in JSON format

kodachi-session-helper -h --json
Expected Output: JSON help envelope

Environment Variables

Variable Description Default Values
DISPLAY X11 display to connect to :0 :0, :1, etc.
XDG_RUNTIME_DIR Runtime directory for socket and state files /run/user/ Directory path

Exit Codes

Code Description
0 Success
1 General error
2 Invalid arguments
3 Permission denied (running as root)
4 X11 not available
5 Wayland session (unsupported)