# anti: Unified CLI Toolbox Specification

## Overview

`anti` is a single binary CLI toolbox that quietly ignores the traditional Unix philosophy and crams a bunch of linux system and network essentials into an easy to use interface. It's a toolkit for the imposter, the hobbyist and anyone seeking to know just enough to be dangerous. Professionals and pursists, look away, nothing to see here.

If you're an engineer for whom "linux system admin" means always running the same 15 basic commands, anti may capture just enough essential functionality (the essential 50%) to become the fastest way to accelerate you in your efforts to pretend you know what you're doing.

It's strictly a pet, for fun, for hacking, it's a guilty pleasure. No warranties here.

`anti` is *also* an experiment in the effectiveness of collating an LLM’s averaged view of common unix software into a cohesive interface. Nearly every line of code, every design choice, every is shamelessly drawn from LLM’s view of "how people generally do this."

By its nature, this means anti is composed of strictly average code. (Average across the training set, average across decades of Unix tool design, average in performance. It may be less than average in terms of correctness, as this is heavily influenced by the author's ability to string correctly string together the generated functionality.

The theory: Combine enough "good-enough" functionality together into a harmonious interface and it may be possible to approach something genuinely useful, even if the internals are enough to make any seasoned professional grumpy.

## Global CLI Structure

```
anti <domain> <command> [options]
```

Domains group related functionality. Commands perform specific actions. Options are consistent and kept minimal.

## Domains and Commands

### 1. net (Networking)

#### net ping

```
anti net ping <host> [--count N] [--timeout S]
```

Lightweight ICMP ping.

#### net trace

```
anti net trace <host> [--tcp]
```

Traceroute using ICMP or TCP fallback.

#### net scan

```
anti net scan <host> [--ports 20-100] [--common]
```

Quick TCP port scanner.

#### net summary

```
anti net summary <host>
```

Runs ping, trace, DNS resolve, and scan sequentially. Outputs a compact health report.

#### net blitz

```
anti net blitz <host>
```

Combines summary with bandwidth and latency checks.

### 2. fs (Filesystem)

#### fs du

```
anti fs du <path> [--depth N] [--human]
```

Summarized directory sizes.

#### fs ls

```
anti fs ls <path> [--all] [--long]
```

Simplified directory listing.

#### fs find

```
anti fs find <path> <pattern> [--name|--ext]
```

Case-insensitive file search.

#### fs clean

```
anti fs clean <path>
```

Interactive cleaner: lists large files and directories for deletion.

#### fs summary

```
anti fs summary
```

Shows disk usage, mounts, and inode stats.

#### fs blitz

```
anti fs blitz
```

Scans for low disk space, largest files, and broken symlinks.

### 3. sys (System Information)

#### sys info

```
anti sys info
```

System summary including CPU, memory, uptime, disks, and network.

#### sys top

```
anti sys top
```

Basic live resource monitor.

#### sys mem

```
anti sys mem
```

Show memory usage snapshot.

#### sys blitz

```
anti sys blitz
```

One-shot system triage: CPU, memory, disk usage.

### 4. web (Web Utilities)

#### web fetch

```
anti web fetch <url> [--head] [--json]
```

Minimal HTTP client for GET and HEAD requests. No support for advanced features.

#### web tls

```
anti web tls <host>
```

Inspect TLS certificate expiry and chain.

#### web summary

```
anti web summary <url>
```

Fetch + DNS resolve + TLS check combined.

### 5. sec (Security Tools)

#### sec hash

```
anti sec hash <file> [--md5|--sha1|--sha256]
```

Generate basic file hashes.

#### sec audit

```
anti sec audit
```

Minimal security audit: open ports, SUID files, and sudoers.

#### sec blitz

```
anti sec blitz <host>
```

Quick host scan for open ports and TLS issues.

### 6. combo (Combined Workflows)

#### combo diagnose

```
anti combo diagnose <host>
```

Runs net summary, web summary, and sys info together.

#### combo triage

```
anti combo triage
```

Interactive guided diagnosis of common issues.

#### combo blitz

```
anti combo blitz <host>
```

Ping host, check disk space, list top processes, and output a summary.

## Global Options

- `--json` - Output machine-readable JSON
- `--quiet` - Suppress non-essential output
- `--verbose` - Enable detailed output
- `--no-color` - Disable colored output
- `--help` - Show help for any command

## Planned (Post-MVP)

### anti tui

Interactive terminal UI for exploring anti functionality.

### anti serve

Serves a local web UI for browser-based usage.

## Design Principles

- Consistent and minimal options across commands
- Results cached between commands to avoid retyping inputs
- Partial implementations covering the most common use cases
- Single static binary for portability
