Abstrax Documentation

Commands

Abstrax commands are grouped by area. Every command follows the same pattern:

abstrax <group> <action> [arguments] [flags]

This page introduces the global flags and the top-level commands, then links to detailed documentation for each command group.

Global flags

These flags are available on every command:

Flag Description
--json Output machine-readable JSON instead of text
--dry-run Show the commands that would run without making changes
--yes Skip confirmation prompts for destructive commands
--quiet Reduce output
--verbose Increase output, including the underlying commands being run
--no-color Disable coloured output

Every command also supports --help (alias -h). The root command additionally supports --version (alias -v).

Top-level commands

Command Description Root required
abstrax version Print version, commit, and build date No
abstrax doctor Inspect the system and report platform capabilities No
abstrax log View the Abstrax log file No
abstrax agent Placeholder for the future hosted agent (not implemented) No
abstrax help Show help for any command No
abstrax completion Generate a shell autocompletion script No

The help and completion commands are provided automatically by the command framework. abstrax completion <shell> prints an autocompletion script for bash, zsh, fish, or PowerShell.

version

abstrax version
abstrax version --json

doctor

abstrax doctor reads /etc/os-release, detects the package manager, service manager, and firewall backend, checks whether it is running as root, and reports which managed tools are installed.

abstrax doctor
abstrax doctor --json

It reports:

OS, version, architecture, kernel version
Package manager (apt, dnf, yum, apk, pacman)
Service manager (systemd, sysvinit)
Firewall backend (ufw, firewalld, iptables, none)
Whether running as root
Whether the platform is fully supported
Available tools: nginx, apache2, certbot, mysql, mariadb, supervisor, redis, memcached, ufw, curl, git

log

abstrax log reads the Abstrax log file at /var/log/abstrax/abstrax.log using tail. If the file does not exist, it says so.

abstrax log
abstrax log --lines=100
abstrax log --follow
Flag Default Description
--lines 50 Number of lines to show
--follow, -f false Follow the log output

agent

The agent command and its subcommands (connect, status, run, update) are placeholders. They print a message stating that agent mode is not yet implemented and make no changes. See Supported platforms.

Command groups

Group Purpose Documentation
user Manage Linux users and groups users.md
ssh-key Manage SSH authorised keys for users ssh-keys.md
ssh Manage SSH server configuration ssh-keys.md
package Manage apt packages packages.md
service Manage systemd services system.md
cron Manage scheduled cron jobs cron.md
daemon Manage background processes with Supervisor daemons.md
project Manage nginx-backed web projects projects.md
web Test, reload, and restart the web server projects.md
ssl Manage Let's Encrypt certificates with Certbot certificates.md
mysql Manage MySQL/MariaDB databases and users system.md
cache Manage Redis and Memcached system.md
firewall Manage the UFW firewall system.md
server Show server status and resource usage system.md

For a single page listing every command and flag, see the command reference.

A note on permissions

Many commands change system state and require root. Run them with sudo. Read-only commands such as doctor, version, server status, and the various list, info, and status actions generally do not require root, though some need root to read protected system files. Each command page notes the requirement. See Permissions for the full picture.

Powered by hosted.md