semvec/pypi-packages huggingface dataset:
vibedir 0.1.0
Utility to prompt for and apply changes to a code base using prepdir and applydir.
License: MIT
Requires Python: >=3.8
Keywords: ai, artificial intelligence, apply changes, code review, directory traversal, file content, project documentation, code sharing, developer tools, large language models, llm, project structure

# VibeDir

VibeDir is a utility to facilitate code modifications by integrating with `prepdir` and `applydir`. It generates prompts for large language models (like Grok 3) to modify a codebase, producing a `modified_prepped_dir.txt` file that can be applied to update your project. VibeDir supports both manual workflows and future API integration with Grok 3.

# Functionality is "COMING SOON" #

## Features
- Generate prompts for code changes based on `prepped_dir.txt` from `prepdir`.
- Support manual editing or API-driven workflows.
- Preserve the structure of `prepped_dir.txt` for compatibility with `applydir`.
- Configurable via a YAML file for custom prompt templates and logging.

## Installation
```bash
pip install vibedir
```

## Usage
1. Generate a `prepped_dir.txt` file using `prepdir` (requires `prepdir` installed):
   ```bash
   prepdir --output prepped_dir.txt
   ```
2. Use `vibedir` to create a prompt for Grok 3 or another LLM:
   ```bash
   vibedir prepped_dir.txt --request "Refactor test_file.py to use async functions" --output modified_prepped_dir.txt --manual
   ```
   - This outputs a prompt to copy into Grok 3. Save the response as `modified_prepped_dir.txt`.
3. Apply changes using `applydir` (requires `applydir` installed):
   ```bash
   applydir modified_prepped_dir.txt
   ```

## Configuration
VibeDir uses a `vibedir.yaml` file for settings. Example:
```yaml
logging:
  level: INFO
prompt_template: |
  You are a code modification assistant. Below is the content of a prepped_dir.txt file generated by prepdir, listing files and additional commands for a project. Your task is to apply the following changes: {user_request}. Return the modified content in a file named modified_prepped_dir.txt, preserving the original format, including delimiters (e.g., =-=, ===---===), file markers (Begin File, End File), and additional commands section. Ensure filenames in Begin File and End File markers match exactly, and only include valid code changes.

  === prepped_dir.txt Content ===
  {prepped_dir_content}
  === End prepped_dir.txt Content ===

  Output the modified content as modified_prepped_dir.txt with the same structure.
```

## Development
- Clone the repository: `git clone https://github.com/eyecantell/vibedir`
- Install with PDM: `pdm install -G test`
- Run tests: `pdm run pytest`
- Build and publish: `pdm build && pdm publish`

## License
MIT License. See [LICENSE](LICENSE) for details.

## Contributing
Issues and PRs are welcome at [https://github.com/eyecantell/vibedir](https://github.com/eyecantell/vibedir).