# butler
> Command-line tool for publishing games to itch.io

## Summary
Official itch.io CLI for pushing game builds with delta patching and CI/CD integration.

## Capabilities
- Push game builds to itch.io with automatic delta patching
- Authenticate with itch.io account via browser
- Upload builds with channel/platform tagging
- Verify and validate uploaded builds
- Extract multi-format archives (7z, RAR, ZIP)
- Integrate into CI/CD pipelines (GitHub Actions, etc.)
- Check build status and manage versions

## When to Use
- You are a game developer publishing to itch.io
- You want to automate game build uploads in a CI/CD pipeline
- You need fast, incremental uploads with delta patching

## When NOT to Use
- You are publishing to platforms other than itch.io
- You just want to download or play games from itch.io
- You need a GUI for uploading (use the itch.io web dashboard instead)

## Usage Patterns
### Login to itch.io
```
butler login
```
Opens a browser window to authenticate with your itch.io account

### Push a build
```
butler push ./build username/game:windows
```
Uploads the build directory to itch.io with the 'windows' channel tag

### Check build status
```
butler status username/game
```
Shows the current status and channels for a game on itch.io

### Validate a build
```
butler push --dry-run ./build username/game:linux
```
Performs a dry run to verify the build without uploading

---
Source: https://littlescripts.sh/tools/butler
