Glide is a context-aware command orchestrator that adapts to your project environment, streamlining complex development workflows through an extensible plugin system. It detects what you're working on and provides the right tools at the right time.
- π― Context-Aware: Automatically detects your project type and provides relevant commands
- π Extensible: Add custom commands through a powerful plugin system
- π³ Worktree-Optimized: First-class support for Git worktrees to work on multiple features simultaneously
- β‘ Fast: Written in Go for instant command execution
- π οΈ Developer-First: Built by developers, for developers who value efficient workflows
# macOS/Linux
curl -sSL https://raw.githubusercontent.com/glide-cli/glide/main/install.sh | bash
# Or download directly from releases
# https://github.com/glide-cli/glide/releases# See what Glide detected about your project
glide context
# List all available commands
glide help
# Manage plugins
glide plugins list
# Update Glide itself
glide self-updateGlide adapts to your project structure automatically:
- Single-Repo Mode - Standard Git repository development
- Multi-Worktree Mode - Work on multiple features simultaneously with isolated environments
- Standalone Mode - Use Glide in any directory with just a
.glide.ymlfile (no Git required)
# Check your current mode
glide help # Shows mode in the header
# Switch between modes
glide setup
# In multi-worktree mode, additional commands become available
glide project status # Check all worktrees
glide project worktree # Create new worktreesDefine custom commands directly in your .glide.yml configuration:
commands:
# Simple format
build: docker build --no-cache .
test: go test ./...
# Structured format with metadata
deploy:
cmd: ./scripts/deploy.sh $1
alias: d
description: Deploy to environment
help: Deploy the application to staging or production
category: deployment
# Multi-line scripts with shell features
reset:
cmd: |
echo "Resetting project..."
if [ -f .env ]; then
echo "Keeping .env file"
fi
rm -rf build/ dist/ node_modules/
echo "Reset complete!"
description: Clean project build artifactsThese commands become available immediately:
glide build # Run your custom build command
glide test # Run your test suite
glide deploy staging # Pass arguments with $1, $2, etc.
glide d production # Use aliases for frequently used commands
glide reset # Run multi-line shell scriptsUse Glide in any directory without a Git repository. Just create a .glide.yml file:
# Create a .glide.yml in any directory
cat > .glide.yml << 'EOF'
commands:
hello:
cmd: echo "Hello from Glide!"
description: Say hello
EOF
# Commands are immediately available
glide hello # Works without any Git repository!
glide help # Shows "π Standalone mode" at the topThis is perfect for:
- Personal automation scripts
- Temporary project directories
- Build environments without Git
- Quick command organization
Extend Glide with custom commands specific to your team or project:
# List installed plugins
glide plugins list
# Install a plugin from a local file
glide plugins install /path/to/docker-plugin
# Get info about an installed plugin
glide plugins info docker-plugin
# Remove an installed plugin
glide plugins remove docker-pluginGlide supports advanced multi-worktree development for working on multiple features simultaneously:
# Set up multi-worktree mode
glide setup
# After setup, use project commands to manage worktrees
glide project worktree feature/new-feature # Create a new worktree
glide p worktree feature/new-feature # Short alias
# List all worktrees
glide project list
# Check status across all worktrees
glide project status- Installation Guide - Get Glide running in 2 minutes
- First Steps - Essential commands and concepts
- Core Concepts - Understand how Glide works
- Common Workflows - Real-world usage patterns
- Plugin Development - Create your own plugins
Glide includes essential commands out of the box:
| Command | Description |
|---|---|
setup |
Interactive setup and configuration |
help |
Context-aware help and guidance |
version |
Display version information |
plugins |
Manage runtime plugins |
completion |
Generate shell completion scripts |
self-update |
Update Glide to the latest version |
project |
Multi-worktree commands (when enabled) |
Additional commands are provided by plugins based on your project context.
Glide follows these principles:
- Context is King - Understand the environment and provide relevant tools
- Progressive Disclosure - Show simple options first, reveal complexity as needed
- Extensible by Default - Teams know their needs best
- Speed Matters - Every millisecond counts in development workflows
- Respect Existing Tools - Enhance, don't replace
We welcome contributions! See our Contributing Guide for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
MIT License
Built with β€οΈ by developers who were tired of typing the same commands over and over.

