A CLI utility to consolidate project context for LLMs.
Project description
DeepBase
DeepBase is a command-line tool that analyzes a project directory, extracts the folder structure and the content of all significant code files, and consolidates them into a single text/markdown file.
This unified "context" is perfect for providing to a Large Language Model (LLM) to enable it to deeply understand the entire codebase.
Features
- Project Structure: Generates a tree view of the folder and file structure.
- Smart Filtering: Automatically ignores common unnecessary directories (e.g.,
.git,venv,node_modules). - Configurable: Customize ignored directories and included extensions via a
.deepbase.tomlfile. - Extension Selection: Includes only files with relevant code or configuration extensions.
- Unified Output: Combines everything into a single file, easy to copy and paste.
- PyPI Ready: Easy to install via
pip.
Installation
You can install DeepBase directly from PyPI:
pip install deepbase
How to Use
Once installed, you will have the deepbase command available in your terminal.
Basic Usage:
Navigate to your project folder (or a parent folder) and run:
deepbase .
The dot . indicates the current directory.
This command will create a file called llm_context.md in the current directory.
Specify Directory and Output File:
deepbase /path/to/your/project -o project_context.txt
Advanced Configuration
You can customize DeepBase's behavior by creating a .deepbase.toml file in the root of the project you are analyzing.
Example .deepbase.toml:
# Add more directories to ignore.
# These will be added to the default ones.
ignore_dirs = [
"my_assets_folder",
"experimental"
]
# Add more extensions or filenames to include.
significant_extensions = [
".cfg",
"Makefile"
]
License
This project is released under the GPL 3 license. See the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deepbase-1.2.0.tar.gz.
File metadata
- Download URL: deepbase-1.2.0.tar.gz
- Upload date:
- Size: 43.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af5068bd432df08599ab9c0287005467abba473cd26f64b4c4afb1871b27576c
|
|
| MD5 |
bb33c20b3fe3066d8034616ec5160d9e
|
|
| BLAKE2b-256 |
4144f81754fcc98be776b87914df83f32a4dae97ad05482a4984efafe672f261
|
File details
Details for the file deepbase-1.2.0-py3-none-any.whl.
File metadata
- Download URL: deepbase-1.2.0-py3-none-any.whl
- Upload date:
- Size: 30.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84750d1d0343cc8c88fa5d7982271aed506d9de6c4963e819cbef0d6a43b0c33
|
|
| MD5 |
ef8080eb7c4b818a138fed3abe17b6d6
|
|
| BLAKE2b-256 |
0d78c9a2aa23ce4873b11b05493d1d8565733054735f1a5ebad9aac00eaa99f0
|