mirror of
https://github.com/akadeepesh/contextzip.git
synced 2026-10-20 08:36:20 +02:00
72 lines
3.3 KiB
Markdown
72 lines
3.3 KiB
Markdown
<img width="1536" height="1024" alt="cz" src="https://github.com/user-attachments/assets/a930b49c-34a0-447b-8f3a-1909eae977c8" />
|
|
|
|
# contextzip
|
|
|
|
> Package exactly the right parts of your codebase and paste it into any AI tool — in one command.
|
|
|
|
```bash
|
|
pip install contextzip
|
|
```
|
|
|
|
**📖 Full docs, every flag, every config option: [contextzip.vercel.app](https://contextzip.vercel.app)**
|
|
|
|
---
|
|
|
|
## Why contextzip
|
|
|
|
Every AI session starts the same way: hunt down the relevant files, skip `node_modules` and build artifacts by hand, zip it, find the zip, upload it — then do it all again next session.
|
|
|
|
contextzip eliminates that. Run it from your project root — it detects your stack, applies smart exclusions, and produces a lean ZIP ready to paste into Claude, ChatGPT, or any AI tool. When the AI hands changes back, `contextzip apply-zip` writes them into your project safely.
|
|
|
|
## Quick start
|
|
|
|
```bash
|
|
cd ~/projects/my-app
|
|
contextzip
|
|
```
|
|
|
|
That's it — no flags required. contextzip detects your framework, excludes the noise, and writes a ZIP to `.contextzip/`.
|
|
|
|
## The essentials
|
|
|
|
| Command | What it does |
|
|
|---|---|
|
|
| `contextzip` | Detect stack, exclude noise, package the project |
|
|
| `contextzip --prompt "task"` | Let Gemini pick only the files relevant to a task |
|
|
| `contextzip --git-changes` | Package only modified/staged/untracked files |
|
|
| `contextzip apply-zip` | Write an AI-returned ZIP back into your project, safely |
|
|
| `contextzip watch -- npm run dev` | Auto-package debug context the moment an error appears |
|
|
| `contextzip config --ui` | Set include/exclude rules visually in a local browser tab |
|
|
|
|
Every command supports `--dry-run`, `--verbose`, `--include`, `--exclude`, and more — see the [full CLI reference](https://contextzip.vercel.app/cli).
|
|
|
|
contextzip respects your `.gitignore`, detects Node.js, Next.js, Python, Django, FastAPI, Rust, Go, and Ruby (including in monorepos), and never packages secrets — SSH keys, cloud credentials, and Terraform state are always excluded. Details: [contextzip.vercel.app/features](https://contextzip.vercel.app/features).
|
|
|
|
## Also a Python library
|
|
|
|
```python
|
|
from contextzip import get_git_changes, create_zip
|
|
|
|
collection = get_git_changes()
|
|
pkg = create_zip(collection, output="/tmp/changes.zip")
|
|
```
|
|
|
|
Full function reference: [contextzip.vercel.app/cli#python-api](https://contextzip.vercel.app/cli#python-api)
|
|
|
|
## Learn more
|
|
|
|
- [Packaging & detection](https://contextzip.vercel.app/features) — frameworks, exclusion rules, safety
|
|
- [AI-powered file selection](https://contextzip.vercel.app/ai-selection) — `--prompt`, Gemini setup
|
|
- [Terminal error watcher](https://contextzip.vercel.app/watch) — `contextzip watch`
|
|
- [Applying changes back](https://contextzip.vercel.app/apply-zip) — `apply-zip`, backups, safety
|
|
- [Configuration](https://contextzip.vercel.app/configuration) — personal & project config, visual config UI
|
|
- [CLI & Python API reference](https://contextzip.vercel.app/cli)
|
|
|
|
## Contributing
|
|
|
|
Contributions are welcome — especially new framework rule sets and edge-case fixes. See [CONTRIBUTING.md](https://github.com/akadeepesh/contextzip/blob/main/CONTRIBUTING.md). Please open an issue before starting a large PR.
|
|
|
|
## License
|
|
|
|
MIT — see [LICENSE](https://github.com/akadeepesh/contextzip/blob/main/LICENSE) for details.
|