Collection of small scripts to automate stuff.
- branchname - Generates a git branch name from type, issue key, and description
- taskbranch - Selects an assigned Jira task and turns it into a branch name
- msgit - Generates a git commit message from staged changes using the shared AI package
- createpr - Creates a pull request in Azure DevOps from the current branch
- gwt - Git worktree manager for bare repos (clone, list, add, remove)
- revu - Reviews Azure DevOps pull requests from the terminal; injects PR comments into source files
Reusable libraries that can be imported by scripts.
- azure - Azure DevOps REST API v7.2 client
- branchname - Branch name building and slugification helpers
- fzf - Wrapper around
fzffor interactive selection - git - Git helpers
- jira - Jira REST API v2 client with PAT authentication
- prompt - Helpers for interactive terminal prompts
- repocontext - Derives Azure DevOps project and repo from working directory path
- ai - Provider-agnostic AI abstraction and factory
- Go 1.24+
# Install all binaries to $GOPATH/bin (make available system-wide)
go install ./...
# Or install individually
go install ./branchname
go install ./taskbranch
go install ./msgit
go install ./createpr
go install ./gwt
go install ./revu
# Check installed binary version (git commit hash) and compare with current repo
go version -m $(which branchname) # look for vcs.revision in the output
git rev-parse HEAD
# Run tests
go test ./...
# Format
go fmt ./...
# Lint
go vet ./...Required environment variables (see individual script/library READMEs for details):
AZURE_DEVOPS_ORG- Azure DevOps organisation nameAZURE_DEVOPS_TOKEN- Azure DevOps Personal Access TokenJIRA_DOMAIN- Jira instance domain (e.g.your-company.atlassian.net)JIRA_TOKEN- Jira Personal Access TokenOLLAMA_HOST- Ollama API base URLZEN_API_KEY- opencode.ai API key (zen provider)
Nice and easy to run, no need to install dependencies, just run.
Also, I have been meaning to learn Go for a while, so this is a good excuse to do so.