Skip to main content

Turn repositories into AI-friendly summaries

Project description

tria

Python Version PyPi Package PyPI Downloads

Turn Python repositories into AI-friendly format (.md / .json/ .xml)

tria scans a git repository, analyzes commits, branches, and contributors, extracts and chunks files intelligently, and produces concise Markdown, JSON or XML summaries that are ready for LLM consumption. Perfect for onboarding and documentation generation.

🚀 Features

  • ✅ Basic CLI with essential flags
  • ✅ Local repository scanning
  • ✅ Create project structure tree
  • ✅ Analyze commits, branches and contributors
  • ✅ Exclude binary files and common ignore patterns, default gitignore file support & custom exclusions
  • ✅ Python, Markdown, Dockerfile and License parsers
  • ✅ Simple line-based chunking
  • ✅ Multiple output formats
  • PyPI package (git2mind)

📦 Installation

# Install from PyPI
pip install tria

# or install from source
git clone https://github.com/yegekucuk/tria.git
pip install -e tria

🎯 Usage

Basic Usage

# Generate summary of current directory (markdown by default)
tria .


# Generate XML summary of current directory
tria . -f xml

# Include git history
tria . --git-history

# Specify the name of output file (gitignore is used by default)
tria /path/to/repo -o summary.md

# If you want to ignore .gitignore and include all files, disable it:
tria /path/to/repo -o summary.md --no-gitignore

# Exclude specific patterns
tria ./my-repo --exclude "tests" --exclude "*.log" --format md --output summary.md

# Verbose output with custom chunk size
tria . --verbose --chunk-size 100 --format json

Command Line Options

Usage: tria PATH [OPTIONS]

Options:
  -f, --format [md|json|xml]    Output format (default: md)
  -o, --output PATH             Output file path (default: ./tria_output.[md|json|xml])
  --exclude PATTERN             Exclude path pattern (can be repeated)
  --no-gitignore                Do not use .gitignore to exclude files (gitignore is used by default)
  --git-history                 Include git history (commits, contributors). Disabled by default
  --git-commits INT             Number of recent commits to include (default: 20)
  --chunk-size INT              Lines per chunk (default: 50)
  --max-files INT               Max files to process (default: 1000)
  --dry-run                     Do everything except writing output
  -v, --verbose                 Verbose logging
  -h, --help                    Show help message

📋 Default Exclusions

The following patterns are excluded by default:

  • *.pyc, __pycache__
  • .git, .venv, venv
  • node_modules, dist, build
  • *.egg-info
  • Binary files
  • Files larger than 100KB

🤝 Use Cases

  • Documentation Generation - Create automatic project overviews
  • Onboarding - Help new team members understand codebases
  • AI Context Preparation - Prepare repositories for LLM analysis
  • Project Auditing - Quick overview of project structure and content

📝 License

  • Author: Yunus Ege Küçük
  • MIT License - see LICENSE file for details

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

tria-0.4.3.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

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

tria-0.4.3-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file tria-0.4.3.tar.gz.

File metadata

  • Download URL: tria-0.4.3.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tria-0.4.3.tar.gz
Algorithm Hash digest
SHA256 1eea89588a10b4a3780a763c556a3046230dc6188e841fea12a1502f903debb6
MD5 6a54d74f8d46cfff20fe8b05b68861ed
BLAKE2b-256 b55cb8b05150e20b6423e42fb74453c64b86eea5406f37891980f283f6657825

See more details on using hashes here.

File details

Details for the file tria-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: tria-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tria-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 501c8aa6830755ddcdcbc44b4b7a088ad42414f73645794fdadf68ebae8023ce
MD5 26765806dabd6e78b84a3a2962525494
BLAKE2b-256 230178d6017705db9e38f49a7b0bb4012123d867a01453fc36f8579f348202da

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