Getting Started
Installation
Install via Homebrew
brew install daileyo/tap/omgitworks
!!! note "Homebrew 7.0 and untrusted taps" The command above works as-is. If you instead tap first and install by bare name, Homebrew 7.0 will refuse to load the formula until the tap is trusted:
```bash
brew tap daileyo/tap
brew trust daileyo/tap
brew install omgitworks
```
Install on Windows (PowerShell)
Download the latest release and extract to $HOME\.local\bin:
Using Invoke-WebRequest:
# Set the version you want to install
$VERSION = "2.19.1"
# Download and extract
$url = "https://github.com/daileyo/omgitworks/releases/download/v$VERSION/omgitworks_${VERSION}_windows_amd64.zip"
$zip = "$env:TEMP\omgitworks.zip"
Invoke-WebRequest -Uri $url -OutFile $zip
New-Item -ItemType Directory -Force -Path "$HOME\.local\bin" | Out-Null
Expand-Archive -Path $zip -DestinationPath "$HOME\.local\bin" -Force
Remove-Item $zip
Using curl.exe:
# Set the version you want to install
$VERSION = "2.19.1"
# Download and extract
curl.exe -Lo "$env:TEMP\omgitworks.zip" "https://github.com/daileyo/omgitworks/releases/download/v$VERSION/omgitworks_${VERSION}_windows_amd64.zip"
New-Item -ItemType Directory -Force -Path "$HOME\.local\bin" | Out-Null
Expand-Archive -Path "$env:TEMP\omgitworks.zip" -DestinationPath "$HOME\.local\bin" -Force
Remove-Item "$env:TEMP\omgitworks.zip"
Verify checksum (optional):
curl.exe -Lo "$env:TEMP\checksums.txt" "https://github.com/daileyo/omgitworks/releases/download/v$VERSION/checksums.txt"
(Get-FileHash "$HOME\.local\bin\omgitworks.exe" -Algorithm SHA256).Hash
Get-Content "$env:TEMP\checksums.txt" | Select-String "windows_amd64"
Verify installation:
& "$HOME\.local\bin\omgitworks.exe" --version
Build from Source
Linux / macOS:
git clone https://github.com/daileyo/omgitworks.git
cd omgw
make build
# The binary will be in ./build/omgitworks
# Optionally, install to your PATH
make install
Windows (PowerShell):
git clone https://github.com/daileyo/omgitworks.git
cd omgw
# Build and install to ~/.local/bin in one step
New-Item -ItemType Directory -Force -Path "$HOME\.local\bin" | Out-Null
go build -o "$HOME\.local\bin\omgitworks.exe" ./cmd/omgitworks
Note: The Makefile requires a Unix shell (
bash/zsh). On Windows, usego builddirectly as shown above.
Shell Integration
Linux / macOS (bash / zsh)
Add these lines to your ~/.zshrc (or ~/.bashrc):
export PATH="$HOME/.local/bin:$PATH"
eval "$(omgitworks shell-init zsh)" # or: shell-init bash
Windows (PowerShell)
Add the following to your PowerShell $PROFILE. To find your profile path, run echo $PROFILE in PowerShell.
# Add omgitworks to PATH
$env:Path = "$HOME\.local\bin;$env:Path"
# Set up the omgw function and tab completion
Invoke-Expression (& omgitworks shell-init powershell | Out-String)
To add automatically via Add-Content:
# Create profile if it doesn't exist
if (!(Test-Path -Path $PROFILE)) { New-Item -ItemType File -Path $PROFILE -Force | Out-Null }
# Append shell integration
Add-Content -Path $PROFILE -Value "`n# omgitworks shell integration"
Add-Content -Path $PROFILE -Value '$env:Path = "$HOME\.local\bin;$env:Path"'
Add-Content -Path $PROFILE -Value 'Invoke-Expression (& omgitworks shell-init powershell | Out-String)'
Restart your PowerShell session (or run . $PROFILE) to activate.
This gives you the omgw function with tab completion. See Shell Integration for full details.
Quick Start
1. Initialize a Workspace
Scan a directory for git repositories:
# Initialize in current directory
omgw init
# Initialize in a specific directory
omgw init ~/projects
# Initialize with absolute path
omgw init /path/to/your/workspace
This command will:
- Recursively scan the directory for git repositories
- Extract repository metadata (name, path, remote URL)
- Detect repository type and user configuration
- Save the configuration to
~/.config/gws/config.json
2. List Your Repositories
Once initialized, run omgw with no arguments to see your repositories:
omgw
Output (compact multi-column names):
Found 15 repositories:
my-project work-api client-site my-api
frontend-app docs-site infra-tools backend-svc
mobile-app shared-libs auth-service data-pipeline
ml-models cli-tools test-harness
3. View Repository Details
Use verbose mode to see more information:
omgw list -v
Output:
Found 15 repositories:
NAME TYPE VISIBILITY TAGS PATH
---------------- --------- ---------- ---------------- ------------------------------------
my-project github private personal, web /home/user/projects/my-project
work-api gitlab private work /home/user/projects/work-api
client-site bitbucket unknown client, archived /home/user/projects/client-site
4. Navigate Your Workspace
With shell integration set up, omgw changes directory for you:
# Jump to a repository by name
omgw my-project
# Jump back to the workspace root
omgw cd
5. Check Version
omgw --version
Output:
omgitworks version dev
commit: abc1234
built: 2025-12-25T21:00:00Z
Next Steps
- Core Commands — Listing, filtering, refreshing, and more
- User Management — Managing git user profiles
- Tagging — Organizing repositories with custom tags
- Shell Integration — Navigation and tab completion
- Configuration — Config file structure and fields