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.1.tar.gz (29.8 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.1-py3-none-any.whl (34.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for xyz_manager-0.1.1.tar.gz
Algorithm Hash digest
SHA256 cce58ace3af38f7bed3478a6c6016595451b1d826037676319ad093e2ec87f36
MD5 e3baa829f9fa9845d256d821375960c4
BLAKE2b-256 7acc2f28f4510f3aab4ed4c8c7cbfc0fed338f40d15d70f3b6ea89d9db15a0c2

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for xyz_manager-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c5f3f54c8ead72860d4f4a062cc969f3c7e3a79a1312ddedf9446ee3d0054a99
MD5 dc7a97ef358642c562830bae2cefb95e
BLAKE2b-256 1190b637c4d4c63871b214690b8e61f19c5d3ed8deccf2843ffddbc4eb9ed77b

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