Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6e7525241d | ||
|
|
b7faa9e17c | ||
|
|
97a0b34f9c | ||
|
|
b975ffc5e3 |
No files matched your search
@@ -0,0 +1,3 @@
|
||||
graft devgen/templates
|
||||
include README.md
|
||||
include LICENSE
|
||||
@@ -23,13 +23,13 @@
|
||||
|
||||
```bash
|
||||
# Stable release from PyPI
|
||||
pip install devgen
|
||||
pip install devgen-cli
|
||||
|
||||
# Using pipx (recommended for isolated CLI)
|
||||
pipx install devgen
|
||||
pipx install devgen-cli
|
||||
|
||||
# Using uv (fast Python package manager)
|
||||
uv tool install devgen
|
||||
uv tool install devgen-cli
|
||||
```
|
||||
|
||||
## 🚀 Quick Start
|
||||
@@ -63,12 +63,14 @@ devgen commit run --force-rebuild
|
||||
```
|
||||
|
||||
**How it works:**
|
||||
|
||||
- DevGen detects all staged and unstaged changes
|
||||
- Groups files by directory
|
||||
- Generates semantic commit messages for each group using AI
|
||||
- Follows [Conventional Commits](https://www.conventionalcommits.org/) format
|
||||
|
||||
**Additional commit commands:**
|
||||
|
||||
```bash
|
||||
# View cached commit messages
|
||||
devgen commit list-cached
|
||||
@@ -96,6 +98,7 @@ devgen changelog generate --output CHANGES.md
|
||||
```
|
||||
|
||||
The changelog follows Semantic Release conventions, categorizing commits into:
|
||||
|
||||
- **BREAKING CHANGES**
|
||||
- **Features**
|
||||
- **Bug Fixes**
|
||||
@@ -136,6 +139,7 @@ devgen gitignore generate --offline Python
|
||||
```
|
||||
|
||||
**Options:**
|
||||
|
||||
- `--append` / `--overwrite` - Append to or overwrite existing `.gitignore`
|
||||
- `--output` - Specify output file path (default: `.gitignore`)
|
||||
- `--offline` - Use only cached templates
|
||||
@@ -149,12 +153,14 @@ devgen license generate
|
||||
```
|
||||
|
||||
This will:
|
||||
|
||||
1. Show available licenses (MIT, Apache-2.0, GPL-3.0, etc.)
|
||||
2. Prompt for author name
|
||||
3. Prompt for year (defaults to current year)
|
||||
4. Generate the license file
|
||||
|
||||
**Available licenses:**
|
||||
|
||||
- MIT
|
||||
- Apache-2.0
|
||||
- GPL-2.0, GPL-3.0
|
||||
@@ -176,6 +182,7 @@ devgen setup config
|
||||
```
|
||||
|
||||
**Configuration options:**
|
||||
|
||||
- `provider` - AI provider: `gemini`, `openai`, `anthropic`, `huggingface`, or `openrouter`
|
||||
- `model` - Model name (e.g., `gemini-2.5-flash`, `gpt-4`, `claude-3-opus`)
|
||||
- `api_key` - Your API key
|
||||
@@ -184,6 +191,7 @@ devgen setup config
|
||||
## 📋 Command Reference
|
||||
|
||||
### Commit Commands
|
||||
|
||||
```bash
|
||||
devgen commit run [--dry-run] [--push] [--debug] [--force-rebuild]
|
||||
devgen commit validate
|
||||
@@ -192,27 +200,32 @@ devgen commit clear-cache
|
||||
```
|
||||
|
||||
### Changelog Commands
|
||||
|
||||
```bash
|
||||
devgen changelog generate [--output FILE] [--from REF]
|
||||
```
|
||||
|
||||
### Release Commands
|
||||
|
||||
```bash
|
||||
devgen release notes [--version VERSION] [--output FILE] [--from REF]
|
||||
```
|
||||
|
||||
### Gitignore Commands
|
||||
|
||||
```bash
|
||||
devgen gitignore generate [TEMPLATES...] [--output FILE] [--append/--overwrite] [--offline]
|
||||
devgen gitignore list [--cached]
|
||||
```
|
||||
|
||||
### License Commands
|
||||
|
||||
```bash
|
||||
devgen license generate [--output FILE]
|
||||
```
|
||||
|
||||
### Setup Commands
|
||||
|
||||
```bash
|
||||
devgen setup config
|
||||
```
|
||||
|
||||
+1
-1
@@ -132,7 +132,7 @@ def delete_file(filepath: Path | str) -> bool:
|
||||
|
||||
|
||||
def load_template_env(sub_dir: str) -> Environment:
|
||||
template_dir = Path(__file__).parent / "prompt_templates" / sub_dir
|
||||
template_dir = Path(__file__).parent / "templates" / sub_dir
|
||||
return Environment(loader=FileSystemLoader(template_dir))
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -3,8 +3,8 @@ requires = ["setuptools>=61", "wheel"]
|
||||
build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "devgen"
|
||||
version = "0.2.0"
|
||||
name = "devgen-cli"
|
||||
version = "0.2.1"
|
||||
description = "A collection of developer tools"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.10"
|
||||
|
||||
@@ -5,8 +5,8 @@ Setup script for devgen package.
|
||||
from setuptools import find_packages, setup
|
||||
|
||||
setup(
|
||||
name="devgen",
|
||||
version="0.2.0",
|
||||
name="devgen-cli",
|
||||
version="0.2.1",
|
||||
packages=find_packages(),
|
||||
include_package_data=True,
|
||||
install_requires=[
|
||||
|
||||
@@ -188,8 +188,8 @@ wheels = [
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "devgen"
|
||||
version = "0.1.0"
|
||||
name = "devgen-cli"
|
||||
version = "0.2.0"
|
||||
source = { editable = "." }
|
||||
dependencies = [
|
||||
{ name = "anthropic" },
|
||||
@@ -262,7 +262,7 @@ name = "exceptiongroup"
|
||||
version = "1.3.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
||||
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219", size = 30371, upload-time = "2025-11-21T23:01:54.787Z" }
|
||||
wheels = [
|
||||
|
||||
Reference in new issue
Block a user