# ericfreese/rat

Compose shell commands to build interactive terminal applications

Repository: https://github.com/ericfreese/rat
Canonical: https://ross.abutalabs.com/products/rat
Language: Go
License: MIT
License Family: permissive
Topics: rat, command-line, shell, git, terminal
Last push: 2021-09-23T15:29:04+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 3492, "days_push": 1805, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1285, forks 50 (observed 2026-08-28T04:04:14.720526+00:00)

## What it is
Rat is a Go-based tool that lets you compose ordinary shell commands into interactive terminal applications. It captures command output in pagers and uses configurable annotators and key bindings to make parts of the text actionable.

## Use cases
- build a tig-like git log viewer from shell commands
- turn any shell command output into an interactive terminal UI
- add clickable annotations to terminal output with regex or external annotators
- create custom keybindings to act on text in a terminal pager
- prototype terminal apps without writing UI code

## When to choose
- you want interactive terminal UIs driven entirely by shell commands and config files
- you prefer minimal, unopinionated tooling you can configure yourself
- you want to build tig-style views on top of tools like git log

## When to avoid
- you need a polished, stable TUI framework with a mature API
- you want a full-featured terminal application out of the box
- you need Windows support or long-term maintenance guarantees

## Facets
- artifact type: cli-tool
- maturity: experimental
- function: cli, terminal-ui, developer-tools
- domain: developer-tools
- platform: cli, go
- tags: tui, shell-scripts, pager, keybindings, annotators, command-line, linux, macos

## Member repositories
- ericfreese/rat (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:14.720526+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:56:39.233719+00:00, confidence not recorded.
  - readme: https://github.com/ericfreese/rat (fetched 2026-08-28T04:04:14.720526+00:00, sha d77de9811dfb)
- Data as of 2026-08-30T08:39:29.467469+00:00.
