Skip to main content

Universal dependency manager TUI — one terminal, every package manager.

Project description

XYZ — Universal Dependency Manager

Project Logo

One terminal. Every package manager. No more context switching.

Python TUI License PyPI CI

Quick Start · Features · Keybindings · Development · Contributing


What is XYZ?

XYZ is a terminal-based dependency manager that gives you a single interactive interface across your package managers. Instead of juggling pip list, brew info, and npm ls in separate sessions, XYZ aggregates everything into one searchable, actionable TUI — powered by AI.

Select an unfamiliar package and XYZ will tell you exactly what it is, why it's probably on your machine, and whether it's safe to remove. No browser. No tab switching. No guessing.


Features

Highlights

  • Unified package list — aggregates installed packages from detected managers into one view
  • Live search + manager filtering — substring filtering, manager pills, and orphan-only toggle
  • Natural language AI search — prefix search with ? (e.g., ?AI or ?database) to find packages by intent using Gemini
  • Safe package actions — update/delete with dry-run preview modal before confirmation
  • Auto-refresh after actions — package list re-scans after updates/deletes

Intelligence

  • Orphan detection (non-AI) — manager-native orphan checks for pip, npm, and brew
  • AI package explainer (streaming) — streamed Gemini explanations in the detail pane
  • Smart cleanup recommendations — Gemini-powered remove/review suggestions
  • Dependency graph view — dependency graph preview + fullscreen modal (when mermaid-ascii is available)
  • CVE scan — Gemini Search-grounded vulnerability summary for selected package

Keybindings

Key Action
↑/↓ Navigate package list
u Update selected package
d Delete selected package
U Upgrade all outdated packages
a Fetch AI explanation
s Scan selected package for CVEs
g View dependency graph
o Toggle orphan packages filter
m Cycle manager filter
c Run smart cleanup analysis
/ Focus search bar (prefix with ? for AI search)
esc Blur search or close modals
ctrl+q Quit

Supported Package Managers

Manager Platform
pip Python (all platforms)
brew macOS / Linux
npm Node.js (all platforms)

Current release auto-detects and integrates: pip, brew, and npm.


Getting Started

Requirements

  • Python 3.10+
  • One or more of the supported package managers installed

Install (Users)

XYZ inspects the packages available to your current Python environment. For most users, that means installing into your system or user site (not a virtual environment) so XYZ can see the same packages you want to clean up.

pip install --user xyz-manager

Run

xyz
# or
python -m xyz

Gemini API Key (for AI explainer)

export GEMINI_API_KEY=your_key_here
xyz

Without a key, XYZ runs in offline mode: package listing/search/filtering and package actions remain available; AI features (AI search, explainer, smart cleanup, CVE scan) are disabled.


Development Setup

Clone and install

Create an isolated environment

For development, use a virtual environment so you do not pollute your system Python.

Option 1: venv

python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip

Option 2: uv

uv venv .venv
source .venv/bin/activate
git clone https://github.com/xyz-tui/xyz.git
cd xyz
pip install -e ".[dev]"

Run locally

xyz
# or
python -m xyz

Run tests

pytest
ruff check src/ tests/
mypy src/

Tech Stack

Layer Technology
Language Python 3.10+
TUI Framework Textual
AI Integration Google Gemini API
Package parsing Native subprocess calls per manager
Distribution pip / PyPI

Roadmap

  • v1.1 — Snapshot & restore (export full package state to packages.toml, restore on new machine)
  • v1.2 — CVE security overlay via OSV API
  • v1.3 — Duplicate detection (same package across multiple managers)
  • v1.4 — Audit trail with install-reason annotations
  • Post-MVP — expand manager coverage (apt, pacman, bun, cargo, conda, pipx, gem, winget)

Contributing

We welcome contributions! Please see CONTRIBUTING.md for our development workflow and coding standards.


License

MIT. See LICENSE for the full text.


Team

Name Role
Minsu Kim Maintainer
Adithya Nair Contributor
Ryan Shankar Contributor

Originally built at BeaverHacks (May 2nd, 2026), now actively maintained as an open-source project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xyz_manager-0.1.0.tar.gz (29.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xyz_manager-0.1.0-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file xyz_manager-0.1.0.tar.gz.

File metadata

  • Download URL: xyz_manager-0.1.0.tar.gz
  • Upload date:
  • Size: 29.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for xyz_manager-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5a2d7b7c947c26a25a124cdbe730e609cfd9b7e058454abce21bcfb565fad852
MD5 c69b6eab8a1ae2bfb356cea12bba643b
BLAKE2b-256 9d02148965dd465d16ae7021a4f9f18d16969deee80cab320e5526d13b2fd1c5

See more details on using hashes here.

File details

Details for the file xyz_manager-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: xyz_manager-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for xyz_manager-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dbff52a05f804fba7b78f93d3d9645b8a032e793664751d6fda9bd966e6d0ff8
MD5 35ad1f74a914aff818aeac4c04368a66
BLAKE2b-256 5bf00a3c226ac4e0b106a280ce81924112a99357788b36bd5531f4ed1277d319

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page