gitpick

module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 21, 2026 License: MIT

README

gitpick

Find it. Pick it. Clone it.

A fast, focused terminal UI for cloning your GitHub repositories without typing URLs.

Release Go Reference License

Why gitpick?

Cloning a repository should not require opening a browser, finding the clone button, and copying a URL. gitpick uses your existing GitHub CLI session to put accessible and starred repositories into one searchable terminal interface.

  • Fuzzy search across repository names and descriptions
  • Separate views for accessible and starred repositories
  • HTTPS and SSH cloning based on your gh preference
  • Full and shallow clone modes
  • Editable destination directory inside the TUI
  • Private repository support without storing another token
  • Responsive layout with clear loading, success, and error states

Install

Go

go install github.com/Mirsmog/gitpick/cmd/gitpick@latest

Release binaries

Prebuilt archives for Linux, macOS, and Windows are available on the releases page.

From source

git clone https://github.com/Mirsmog/gitpick.git
cd gitpick
make install

Requirements

  • Git in PATH
  • GitHub CLI authenticated with gh auth login
  • A terminal with at least 44 columns and 14 rows

gitpick delegates authentication to gh, so it never reads or stores your GitHub token.

Usage

Start in the current directory:

gitpick

Choose another clone directory or protocol:

gitpick --dir ~/Code --protocol ssh

Start in shallow clone mode:

gitpick --shallow

Keyboard shortcuts

Key Action
/ k, / j Move through repositories
/ Search by name or description
Enter Clone the selected repository
Tab, / h, / l Switch repository source
p Toggle HTTPS and SSH
x Toggle full and shallow clone
d Edit the destination directory
r Refresh repositories
q Quit

Run gitpick --help for all command-line options.

How it works

gitpick asks the GitHub CLI for up to 100 accessible repositories and 100 starred repositories, merges duplicates, and ranks local search results as you type. The selected repository is cloned with the system Git executable. Network credentials, protocol settings, and organization access remain under the control of gh and Git.

Development

Go 1.25 or newer is required.

make check
make build
./bin/gitpick

The codebase keeps GitHub access, clone execution, fuzzy search, and terminal state in separate packages. External commands are behind small interfaces so behavior can be tested without network access.

See CONTRIBUTING.md for the contribution workflow and SECURITY.md for reporting vulnerabilities.

License

MIT

Directories

Path Synopsis
cmd
gitpick command
internal
app

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL