Terminal · Pairwise · AI-powered

pairwise-tui
Test smarter,
not exhaustively

A keyboard-driven terminal UI for generating PICT pairwise combinatorial test cases. Define parameters, add constraints, let the AI help — then export to CSV, JSON, or Excel in seconds.

Why pairwise-tui?

Everything you need to generate comprehensive test coverage without the busywork.

Pairwise Coverage

Powered by Microsoft PICT. Reduce thousands of combinations to a minimal high-coverage set — typically a 40–70% reduction with no loss of pairwise coverage.

AI Parameter Generation

Describe your feature in plain English. Claude AI identifies test parameters, values, and constraints automatically — no manual model building needed.

Keyboard-Driven Workflow

Three-tab interface — Model, Options, Results — fully navigable by keyboard. No mouse required. Single-keypress actions for every operation.

Export Anywhere

Save results as plain TXT, JSON, CSV, or native XLSX. Press s once — the format you chose in Options is applied instantly.

Zero Dependencies

Single self-contained binary for Linux and Windows. No runtime, no installer, no package manager. Download and run.

Themes & Persistence

Tokyo Night Dark, Tokyo Night Storm, Catppuccin Mocha. Cycle with t. All settings — theme, output format, model storage path — persist across sessions automatically.

See it in action

Four views of the app — click the tabs to explore each screen.

pairwise-tui — Model
 pairwise-tui                                                        
 ──────────────────────────────────────────────────────────────────── 
 [1] Model  [2] Options  [3] Results

┌ Parameters ───────────────────────┐┌ Values: OS ──────────────────────────┐
 > OS            Windows,Linux,m... Comma-separated values:              
   Browser       Chrome,Firefox,S... Windows, Linux, macOS               
   Language      EN, DE, FR                                            
                                    3 values: Windows  Linux  macOS    
                                                                        
└───────────────────────────────────┘└─────────────────────────────────────┘
┌ Constraints ─────────────────────────────────────────────────────────────┐
 IF [OS] = "Linux" THEN [Browser] <> "Safari";                         
└──────────────────────────────────────────────────────────────────────────┘
 [a] Add  [d] Del  [e] Edit values  [c] Constraints  [g] Generate  [?] Docs  [q] Quit

Getting Started

From download to your first test cases in under two minutes.

  1. Download the binary

    Head to the Releases page and grab the executable for your OS. No installer needed — it's a single file.

  2. Make it executable Linux only

    Give the binary execute permission:

    chmod +x pairwise-tui
  3. Run the app

    ./pairwise-tui

    Windows: double-click pairwise-tui.exe or run it from PowerShell.

  4. Define parameters

    Press a to add a parameter. Enter a name (e.g. Browser), then press Tab to move to the values field and type comma-separated values (e.g. Chrome, Firefox, Safari). Repeat for each test dimension.

  5. Generate test cases

    Press g from any tab. PICT runs instantly and the Results tab shows your minimal pairwise test suite.

  6. Export results

    Choose your format in Options (2 → Format field → Enter to cycle), then press s to save. Done.

Keyboard Shortcuts

Every action is one keypress away. Click a group to expand.

Global — available in all tabs
gGenerate test cases (run PICT)
sSave results to output file
wSave current model to storage
oOpen a saved model (file picker)
1 / 2 / 3Switch to Model / Options / Results tab
[ / ]Previous / next tab (cycle)
tCycle through color themes
mOpen message log overlay
iOpen AI prompt (or AI setup if no key configured)
F2Open AI setup overlay
?Open built-in PICT documentation
q / Ctrl+CQuit application
Model tab — Parameters panel
aAdd new parameter
dDelete selected parameter
eEdit values for selected parameter
cJump to constraints editor
xClear entire model (with confirmation)
/ Navigate parameter list
TabSwitch to values / constraints panel
EscCancel / return to parameters panel
Options tab
TabFocus next field
EnterToggle or cycle current field (format, randomize, AI model…)
EscUnfocus current field
Results tab
/ Scroll through test cases
sSave results to file
Overlays — Message log, AI, Documentation, File picker
/ Navigate entries / chapters
c (log)Copy selected entry to clipboard
a (log)Copy all log entries to clipboard
Ctrl+G (AI)Generate parameters from description
Enter (docs/picker)Open selected chapter / file
Esc / mClose overlay

AI-Powered Parameter Generation

Describe your feature. Claude builds the model.

Instead of manually listing every parameter and value, press i and describe your test scenario in plain English. The AI identifies the key test dimensions, suggests 2–6 values for each, and adds PICT constraints where logical dependencies exist.

Setup (one-time)

  1. Get an API key from console.anthropic.com
  2. Press F2 in pairwise-tui to open AI Setup
  3. Paste your key and press Enter
  4. Key is saved to ~/.config/pairwise-tui/credentials.json

You can also set the ANTHROPIC_API_KEY environment variable — it takes precedence over the stored key.

Available Models

Model Speed Best for
claude-haiku-4-5 Fastest ⚡ Quick parameter sketches (default)
claude-sonnet-4-6 Balanced Most scenarios
claude-opus-4-6 Thorough Complex domain models

PICT Model Format

Models are saved as plain text files compatible with the PICT engine. Each line defines a parameter with a colon-separated list of values. Constraints use IF / THEN rules with comparison operators. Press w to save and o to reload.

model_2025-04-01.txt
OS: Windows, Linux, macOS
Browser: Chrome, Firefox, Safari
Language: EN, DE, FR
APIVersion: v1, v2

IF [OS] = "Linux" THEN [Browser] <> "Safari";
IF [APIVersion] = "v1" THEN [Browser] <> "Chrome";