Capability-bounded streaming file and event follower with inotify tracking, truncate safety, and oote palettes.
Universal Standalone Binary:
curl -fsSL https://openooda-tools.github.io/ootail/install.sh | bash
# Fedora / RHEL / CentOS (DNF)
curl -fsSL https://openooda-tools.github.io/ootail/install.sh | bash -s -- --dnf
# Ubuntu / Debian (APT)
curl -fsSL https://openooda-tools.github.io/ootail/install.sh | bash -s -- --deb
# Arch Linux / Manjaro (Pacman / PKGBUILD)
curl -fsSL https://openooda-tools.github.io/ootail/install.sh | bash -s -- --pkgbuild
Remove ootail binaries, package registrations, and symlinks at any time:
# Locally installed companion CLI
ootail-uninstall
# Standalone web uninstaller
curl -fsSL https://openooda-tools.github.io/ootail/uninstall.sh | bash
| Dimension | Conventional Alternatives | openOODA ootail |
|---|---|---|
| Security | Ambient file handle tracking | Bounded by &FsReadCap and &SysCap |
| Rotation | Stalls or fails on log rotate | Seamless follow across truncation and rotation (-F) |
| Theming | Raw monochrome stream | Real-time syntax and status token highlighting via oote |
| AI Agents | No agent interface | Native MCP stdio server (--mcp) with tail_file and tail_stream |
| Windowing | Line-only or rigid buffers | High-speed byte windowing (-c) and line offsets (+NUM) |
ootail -f /var/log/app.log # Follow file stream with inotify events
ootail -n 50 system.journal # Inspect trailing 50 lines
ootail -c 512 service.log # Inspect trailing 512 bytes
ootail -n +100 app.log # Emit lines starting from line 100
ootail --mcp # Run Model Context Protocol stdio server