treelyze


Nametreelyze JSON
Version 0.1.2 PyPI version JSON
download
home_pagehttps://github.com/mandgie/treelyze
SummaryA CLI tool for analyzing directory structures and summarizing files
upload_time2024-12-02 17:51:15
maintainerNone
docs_urlNone
authorMagnus
requires_python<4.0,>=3.10
licenseNone
keywords cli directory analysis summarization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Treelyze

Treelyze is a powerful CLI tool for analyzing directory structures and optionally summarizing file contents using Language Models (LLMs). It provides an easy-to-use interface for exploring and understanding complex directory hierarchies.

## Features

- Analyze directory structures with customizable depth
- Exclude specific directories from analysis
- Summarize file contents using LLMs (optional)
- Configurable settings for model and prompt customization
- Output results to file or console

## Installation

You can install Treelyze using pip:

```bash
pip install treelyze
```

## Usage

### Basic Usage

To analyze the current directory:

```bash
treelyze run
```

To analyze a specific directory:

```bash
treelyze run /path/to/directory
```

### Options

- `--max-depth, -d`: Set the maximum depth for directory traversal
- `--exclude, -e`: Specify directories to exclude (can be used multiple times)
- `--summarize, -s`: Enable file content summarization using LLM
- `--output, -o`: Specify an output file for the analysis results
- `--model`: Override the default language model for summarization
- `--prompt`: Override the default summarization prompt

### Examples

Analyze a directory with a maximum depth of 3, excluding 'node_modules':

```bash
treelyze run /path/to/directory --max-depth 3 --exclude node_modules
```

Analyze and summarize files, outputting results to a file:

```bash
treelyze run /path/to/directory --summarize --output results.txt
```

### Configuration

You can manage Treelyze configuration using the `config` subcommand:

```bash
# Show current configuration
treelyze config --show

# Set a configuration value
treelyze config --set model "gpt-3.5-turbo"
treelyze config --set prompt "Summarize this file concisely:"
```

**Note:** The configuration file is located at `~/.treelyze/config.yaml` in your home folder.

## Contributing

Contributions to Treelyze are welcome! Please feel free to submit a Pull Request.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mandgie/treelyze",
    "name": "treelyze",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": "cli, directory, analysis, summarization",
    "author": "Magnus",
    "author_email": "magnus.uno.friberg@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/07/a9/f0c9641a7fa06f9cf32e042bef8d67a9fe00e922cfcf8a1a6e5369dd0397/treelyze-0.1.2.tar.gz",
    "platform": null,
    "description": "# Treelyze\n\nTreelyze is a powerful CLI tool for analyzing directory structures and optionally summarizing file contents using Language Models (LLMs). It provides an easy-to-use interface for exploring and understanding complex directory hierarchies.\n\n## Features\n\n- Analyze directory structures with customizable depth\n- Exclude specific directories from analysis\n- Summarize file contents using LLMs (optional)\n- Configurable settings for model and prompt customization\n- Output results to file or console\n\n## Installation\n\nYou can install Treelyze using pip:\n\n```bash\npip install treelyze\n```\n\n## Usage\n\n### Basic Usage\n\nTo analyze the current directory:\n\n```bash\ntreelyze run\n```\n\nTo analyze a specific directory:\n\n```bash\ntreelyze run /path/to/directory\n```\n\n### Options\n\n- `--max-depth, -d`: Set the maximum depth for directory traversal\n- `--exclude, -e`: Specify directories to exclude (can be used multiple times)\n- `--summarize, -s`: Enable file content summarization using LLM\n- `--output, -o`: Specify an output file for the analysis results\n- `--model`: Override the default language model for summarization\n- `--prompt`: Override the default summarization prompt\n\n### Examples\n\nAnalyze a directory with a maximum depth of 3, excluding 'node_modules':\n\n```bash\ntreelyze run /path/to/directory --max-depth 3 --exclude node_modules\n```\n\nAnalyze and summarize files, outputting results to a file:\n\n```bash\ntreelyze run /path/to/directory --summarize --output results.txt\n```\n\n### Configuration\n\nYou can manage Treelyze configuration using the `config` subcommand:\n\n```bash\n# Show current configuration\ntreelyze config --show\n\n# Set a configuration value\ntreelyze config --set model \"gpt-3.5-turbo\"\ntreelyze config --set prompt \"Summarize this file concisely:\"\n```\n\n**Note:** The configuration file is located at `~/.treelyze/config.yaml` in your home folder.\n\n## Contributing\n\nContributions to Treelyze are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.",
    "bugtrack_url": null,
    "license": null,
    "summary": "A CLI tool for analyzing directory structures and summarizing files",
    "version": "0.1.2",
    "project_urls": {
        "Homepage": "https://github.com/mandgie/treelyze",
        "Repository": "https://github.com/mandgie/treelyze"
    },
    "split_keywords": [
        "cli",
        " directory",
        " analysis",
        " summarization"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8d41c1ab06e82131820e978b3c87ab20655f8446f83c861e55f5d59d26d446a1",
                "md5": "5e2399001c75d0c1a39e32360f9be974",
                "sha256": "81460a273d55b269adb44a536f3781c4f1dc0d1671b068c0eca41d87892789df"
            },
            "downloads": -1,
            "filename": "treelyze-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5e2399001c75d0c1a39e32360f9be974",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 7479,
            "upload_time": "2024-12-02T17:51:14",
            "upload_time_iso_8601": "2024-12-02T17:51:14.339811Z",
            "url": "https://files.pythonhosted.org/packages/8d/41/c1ab06e82131820e978b3c87ab20655f8446f83c861e55f5d59d26d446a1/treelyze-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "07a9f0c9641a7fa06f9cf32e042bef8d67a9fe00e922cfcf8a1a6e5369dd0397",
                "md5": "761b1b7db4a1ee53cab5130ef1b6eb41",
                "sha256": "7c59cdd833f8f68dc322cb62350f3ccc75ac20c8f993228df9edabfe945b5d22"
            },
            "downloads": -1,
            "filename": "treelyze-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "761b1b7db4a1ee53cab5130ef1b6eb41",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 5979,
            "upload_time": "2024-12-02T17:51:15",
            "upload_time_iso_8601": "2024-12-02T17:51:15.956169Z",
            "url": "https://files.pythonhosted.org/packages/07/a9/f0c9641a7fa06f9cf32e042bef8d67a9fe00e922cfcf8a1a6e5369dd0397/treelyze-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-02 17:51:15",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mandgie",
    "github_project": "treelyze",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "treelyze"
}
        
Elapsed time: 0.42957s