Skip to content

CLI Tools

JP IT edited this page Jan 22, 2026 · 1 revision

CLI Tools

User Management

Users are managed via the users-cli.js command-line utility. User data is stored in the SQLite database (sessions.db).

# List all users
node users-cli.js list

# Add a new user (roles: admin, normal, readonly)
node users-cli.js add alice mypassword normal

# Add an admin user
node users-cli.js add bob adminpass123 admin

# Change a user's password
node users-cli.js passwd alice newpassword

# Change a user's role
node users-cli.js role alice admin

# Delete a user (also removes their sessions)
node users-cli.js remove alice

Note: If the server is running, users-cli.js notifies it to disconnect active sessions on delete/password change.

User Roles

Role Description
admin Full access, can manage widget glow rules and visibility
normal Standard access; visibility rules apply
readonly Same visibility filtering as normal (role does not block item commands)

Session Management

Manage sessions from the command line with session-cli.js:

# List all sessions
node session-cli.js list

# Show session details
node session-cli.js show <session_id>

# Update a session setting
node session-cli.js set <session_id> darkMode=true

# Delete a specific session
node session-cli.js delete <session_id>

# Run cleanup of expired sessions (uses sessionMaxAgeDays)
node session-cli.js cleanup

# Purge sessions older than a specific time
node session-cli.js purge 7days    # Also: Nsecs, Nmins, Nhours

Session Storage

Sessions are stored in SQLite (sessions.db) and include:

  • User preferences (theme, layout settings)
  • Last access timestamp
  • Authentication state

Sessions are automatically cleaned up based on server.sessionMaxAgeDays (default: 14 days).

Clone this wiki locally