Fuzzy interactive CVE explorer powered by fzf and vulnx.
Search, preview, and sort vulnerabilities from your terminal — results update as you type.
git clone https://github.com/YOUR_USER/fvulnx
cd fvulnx
# make all scripts executable
chmod +x fvulnx.sh fvulnx-convert fvulnx-preview fvulnx-sort-reload fvulnx-ctrl-action
# optionally symlink to PATH
ln -sf "$PWD/fvulnx.sh" ~/.local/bin/fvulnxRequirements: fzf · jq · vulnx
fvulnxJust start typing. Results stream in as you type, with a live preview of the highlighted CVE in the top pane.
| Key | Action |
|---|---|
| Type | Search — results update on every keystroke |
↑ ↓ |
Navigate results |
Ctrl-S |
Cycle sort field: severity → cvss → age → name → none |
Enter |
View full CVE details and exit |
Esc |
Quit |
SEVERITY | NAME | CVE-ID | AGE | CVSS
- SEVERITY — 🔴 critical · 🟠 high · 🟡 medium · 🟢 low · ⚪ unknown
- AGE — days since disclosure (
0d= new today) - CVSS — numeric score or
N/A
fvulnx --list <query>Prints matching CVEs to stdout without launching fzf. Useful for scripting or piping.
fvulnx.sh
└── on keystroke: vulnx search {q} -n 100 -j | fvulnx-convert → fzf list
└── on Ctrl-S: fvulnx-ctrl-action {q} → cycles sort state
└── fvulnx-sort-reload {q} → vulnx search ... --sort-asc <field> | fvulnx-convert
└── preview pane: fvulnx-preview {CVE-ID} → vulnx id <cve>
Sort state is persisted in /tmp/fvulnx-sort and /tmp/fvulnx-sort-index so the label survives reloads.
MIT


