A Go reimplementation of tobi/try with GitHub cloning, deletion support, and better performance
Ever find yourself with 50 directories named test, test2, new-test, actually-working-test, scattered across your filesystem? Or worse, just coding in /tmp and losing everything?
try is here for your beautifully chaotic mind.
Instantly navigate through all your experiment directories with:
- Fuzzy search that just works
- Smart sorting - recently used stuff bubbles to the top
- Auto-dating - creates directories like
2025-08-17-redis-experiment - Zero config - single binary, no dependencies
brew tap melonamin/formulae
brew install tryDownload the latest release from GitHub Releases:
curl -L https://github.com/melonamin/try/releases/latest/download/try-macos-universal.zip -o try.zip
unzip try.zip
chmod +x try-macos-universal
sudo mv try-macos-universal /usr/local/bin/trycurl -L https://github.com/melonamin/try/releases/latest/download/try-linux-amd64.tar.gz | tar xz
chmod +x try-linux-amd64
sudo mv try-linux-amd64 /usr/local/bin/trycurl -L https://github.com/melonamin/try/releases/latest/download/try-linux-arm64.tar.gz | tar xz
chmod +x try-linux-arm64
sudo mv try-linux-arm64 /usr/local/bin/trygo install github.com/melonamin/try@latestgit clone https://github.com/melonamin/try.git
cd try
go build -o ~/.local/bin/tryYou're learning Redis. You create /tmp/redis-test. Then ~/Desktop/redis-actually. Then ~/projects/testing-redis-again. Three weeks later you can't find that brilliant connection pooling solution you wrote at 2am.
All your experiments in one place, with instant fuzzy search:
$ try pool
→ 2025-08-14-redis-connection-pool 2h, 18.5
2025-08-03-thread-pool 3d, 12.1
2025-07-22-db-pooling 2w, 8.3
+ Create new: poolType, arrow down, enter. You're there.
- Clone repos directly:
try --clone https://github.com/user/repo - Auto-detect GitHub URLs in search
- Creates dated folders like
2025-01-21-repo-name
- Press
Ctrl+Dto delete directories - Safe two-step confirmation process
- Visual warnings to prevent accidents
- Pre-compiled regex patterns
- Faster startup and search
- Timeout protection for git operations
Not just substring matching - it's smart:
rdsmatchesredis-serverconnpoolmatchesconnection-pool- Recent stuff scores higher
- Shorter names win on equal matches
- Shows how long ago you touched each project
- Recently accessed directories float to the top
- Perfect for "what was I working on yesterday?"
- Clean, minimal interface
- Highlights matches as you type
- Shows scores so you know why things are ranked
- Dark mode by default (because obviously)
- Everything lives in
~/src/tries(configurable viaTRY_PATH) - Auto-prefixes with dates:
2025-08-17-your-idea - Skip the date prompt if you already typed a name
try # Browse all experiments
try redis # Jump to redis experiment or create new
try new api # Start with "2025-01-21-new-api"
try github.com/user/repo # Shows clone option in TUI
try --clone https://github.com/user/repo # Clone directly without TUI
try --help # See all options↑/↓- Navigate entriesCtrl+j/k- Navigate (vim-style)Enter- Select directory or create newCtrl+N- Quick create new experimentCtrl+D- Delete selected directoryCtrl+U- Clear searchESC/q- Cancel and exit- Just type to filter
Set TRY_PATH to change where experiments are stored:
export TRY_PATH=~/code/sketchesDefault: ~/src/tries
| Feature | Original (Ruby) | This Fork (Go) |
|---|---|---|
| Language | Ruby | Go |
| Installation | Ruby required | Single binary |
| GitHub Cloning | ❌ | ✅ Built-in |
| Delete Directories | ❌ | ✅ With confirmation |
| Paste Support | ✅ | ✅ Full URL paste |
| Performance | Good | Excellent |
| Binary Size | ~20KB + Ruby | ~4-5MB standalone |
| Cross-platform | Ruby dependent | Native binaries |
| Shell Integration | ✅ Via eval | ❌ Spawns subshell |
| Dependencies | Ruby runtime | None |
This project is a fork of tobi/try, originally created by Tobi Lütke. The original Ruby implementation provided the excellent foundation and user experience that this Go version builds upon.
Key additions in this fork:
- GitHub repository cloning functionality
- Directory deletion with safety confirmation
- Performance optimizations for large directory sets
- Enhanced keyboard shortcuts
Your brain doesn't work in neat folders. You have ideas, you try things, you context-switch like a caffeinated squirrel. This tool embraces that.
Every experiment gets a home. Every home is instantly findable. Your 2am coding sessions are no longer lost to the void.
Q: Why not just use cd and ls?
A: Because you have 200 directories and can't remember if you called it test-redis, redis-test, or new-redis-thing.
Q: Why not use fzf?
A: fzf is great for files. This is specifically for project directories, with time-awareness and auto-creation built in.
Q: Can I use this for real projects? A: You can, but it's designed for experiments. Real projects deserve real names in real locations.
Q: What if I have thousands of experiments? A: First, welcome to the club. Second, it handles it fine - the scoring algorithm ensures relevant stuff stays on top.
Contributions are welcome! The codebase is a single Go file (main.go) using the Bubble Tea TUI framework. Feel free to submit issues or pull requests.
MIT - Do whatever you want with it.
