Skip to main content
IT Staff Resource

CLI Getting Started Guide

Process thousands of course files from the terminal. Bulk accessibility compliance in one command.

Batch Processing
Parallel Processing
Screen Reader Compatible

Why Terminal-Based Tools?

GUI tools seem easier, but for bulk processing and accessibility, the terminal is superior:

More Accessible

"Terminal is pure text... universally accessible." - Blind PhD in Astrophysics. Screen readers work perfectly with CLI tools.

Faster

Process 500 files in parallel vs clicking through 500 files one by one in a GUI. 10x speed improvement.

Automatable

Write bash scripts once, run forever. Schedule cron jobs to process new files automatically.

Scriptable

Generate reports, send notifications, trigger workflows - all from one command.

# GUI approach: Click 500 files, wait 5 seconds each = 42 minutes
# CLI approach: Process 500 files in parallel = 3 minutes
# 14x faster with one command

Installation

The Aelira CLI is distributed as a standalone binary (no dependencies required):

macOS/Linux

# Download and install

curl -fsSL https://aelira.ai/install.sh | bash

# Verify installation

aelira --version

# Output: aelira CLI v1.0.0

Windows (PowerShell)

Homebrew (macOS/Linux)

brew install aelira/tap/aelira

Authentication

Log in with your institutional account:

# Interactive login (opens browser)

aelira login

# Browser opens, you authenticate, CLI receives token

# OR: API key authentication (for automation)

export AELIRA_API_KEY="your-api-key-here"

aelira whoami

# Output: Logged in as it-director@university.edu

Security Tip: For automated scripts, use API keys with limited scopes. Generate keys at https://dashboard.aelira.ai/settings/api

Basic Commands

Scan a Single File

# Scan a PDF

aelira scan pdf lecture_notes.pdf

# Output: 23 issues found (12 critical, 8 high, 3 medium)

# Scan a PowerPoint

aelira scan pptx slides.pptx

# Output: 45 images missing alt text, 12 contrast violations

# Scan LaTeX

aelira scan latex paper.tex

# Output: 87 equations need MathML conversion

Generate Fixes

# Scan and fix automatically

aelira fix pdf lecture_notes.pdf --output lecture_notes_accessible.pdf

# OCR complete, headings added, structure tagged

# Generate alt text for images

aelira fix pptx slides.pptx --auto-alt-text

# AI generates alt text for 45 images (~2 min)

# Convert LaTeX to accessible HTML

aelira fix latex paper.tex --output paper-accessible.html

# MathML generated, ARIA labels added

View Reports

# Generate detailed JSON report

aelira scan pdf lecture.pdf --format json > report.json

# Generate human-readable report

aelira scan pdf lecture.pdf --format text

# Export to Excel for stakeholders

aelira scan pdf lecture.pdf --format xlsx > report.xlsx

Batch Processing Workflows

This is where the CLI shines - process entire departments worth of files in one command.

Process All PDFs in a Directory

# Scan all PDFs recursively

aelira batch scan pdf ./course-materials/ --recursive

# Scanning 487 PDFs... (ETA 8 minutes)

# Fix all PDFs and save to output directory

aelira batch fix pdf ./course-materials/ --output ./accessible/ --recursive

# Processing in parallel (8 workers)...

# Process only files modified in the last 30 days

aelira batch fix pdf ./course-materials/ --modified-since 30d --recursive

Parallel Processing Script

For maximum speed, process multiple courses in parallel:

#!/bin/bash # process-department.sh # Process all courses in a department with parallel processing DEPARTMENT_DIR="/mnt/lms-export/biology-dept" OUTPUT_DIR="/mnt/accessible-output/biology-dept" MAX_PARALLEL=8 # Create output directory mkdir -p "$OUTPUT_DIR" # Find all course directories find "$DEPARTMENT_DIR" -mindepth 1 -maxdepth 1 -type d | \ parallel -j $MAX_PARALLEL \ 'COURSE=$(basename {}); \ echo "Processing $COURSE..."; \ aelira batch fix pdf {}/ --output '"$OUTPUT_DIR"'/$COURSE/ --recursive; \ echo "<Check className="w-4 h-4 text-[var(--feature-success-content)] inline-block" /> $COURSE complete"' # Generate department-wide compliance report aelira report compliance "$OUTPUT_DIR" --format xlsx > biology_compliance_report.xlsx echo "Department processing complete!" echo "Report: biology_compliance_report.xlsx"

Performance: This script processed 200 courses (4,300 files) in 47 minutes using 8 parallel workers. Manual GUI processing would take 40+ hours.

Automated Cron Job

Process new files automatically every night:

# Add to crontab (crontab -e) # Run every night at 2 AM 0 2 * * * /usr/local/bin/aelira batch fix pdf /mnt/lms-export/ \ --output /mnt/accessible/ \ --modified-since 1d \ --recursive \ --notify it-team@university.edu

Advanced Features

Compliance Reporting

# Department-wide compliance report

aelira report compliance ./accessible-files/ --format text

# Output:

# Total files: 4,327

# Compliant: 4,103 (94.8%)

# Issues remaining: 224 files

# Critical: 12, High: 87, Medium: 125

# Export for legal/audit team

aelira report compliance ./accessible-files/ --format pdf --legal-detail

Custom Workflows with Webhooks

# Trigger Slack notification when processing completes

aelira batch fix pdf ./course-materials/ \\

--webhook https://hooks.slack.com/services/YOUR/WEBHOOK \\

--webhook-on-complete

# Send email report to department chair

aelira report compliance ./accessible/ \\

--email chair@university.edu \\

--subject "Weekly Accessibility Compliance Update"

Quality Thresholds

# Only process files below 90% compliance

aelira batch scan pdf ./files/ --threshold 90

# Fail build if any critical issues found

aelira scan pdf file.pdf --fail-on critical

# Exit code 1 if critical issues detected (useful for CI/CD)

Troubleshooting

"Permission denied" errors

Make sure the CLI has read/write access to input and output directories:

chmod -R 755 ./course-materials/

"API rate limit exceeded"

Add delays between requests or upgrade to Enterprise plan for higher limits:

aelira batch fix pdf ./files/ --delay 500ms

"Out of memory" errors

Process fewer files in parallel or increase memory allocation:

# Reduce parallel workers

aelira batch fix pdf ./files/ --workers 4

# OR increase memory limit

export AELIRA_MAX_MEMORY=8G

"Invalid file format" errors

Check file extensions and verify files aren't corrupted:

# Skip invalid files

aelira batch fix pdf ./files/ --skip-invalid

Get Help

Built-in Help

aelira --help

aelira scan --help

aelira batch --help

Ready to Process Your Department?

Start with a free trial. Process 50 files to see the CLI in action.

Related Resources