๐ Repo_Clone_System
Because typing the same clone location over and over again is a crime against productivity.
Repo_Clone_System is a professional, open-source Python CLI application designed to clone GitHub repositories while maintaining a smart memory of your destination folders and repository history. Launch repo from anywhere in your terminal!
๐ฝ๏ธ Interactive Terminal Preview
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ Repo_Clone_System v0.1.0 โ
โ Press โ โ to navigate โข Enter to select โข Esc to cancel โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
>
โฏ Clone Repository
Saved Repositories
Saved Locations
Statistics
Help
Clear History
Exit
Interactive VS Code-style Command Palette with real-time live filtering and arrow-key selection.
โจ Features
- ๐ป Global Terminal Executable (
repo): Runrepofrom any directory in your shell. - โก CLI Subcommands: Execute actions directly using
repo clone,repo repos,repo locations,repo stats,repo help,repo clear,repo update,repo exit. - ๐จ VS CodeโStyle Command Palette: Interactive palette with real-time prefix filtering and arrow key selection.
- ๐ Automatic Destination Memory: Instant reuse of your last used location or any previously saved destination.
- ๐ Smart Folder Creation: Safely prompts to create missing directory paths (Y/N).
- ๐ Folder Conflict Protection: Detects existing destination directories and prompts for alternative folder names.
- ๐ช Safe Exit & Interruption Handling: Gracefully handles Ctrl+C and Ctrl+D/Ctrl+Z without showing ugly tracebacks.
๐ฆ Installation
Production Installation (PyPI)
Install the official package via pip:
pip install repo-clone-system
Launch the CLI from any terminal:
repo
โถ๏ธ Usage & Subcommands
Run repo without arguments to open the interactive Command Palette:
repo
Or pass subcommands directly:
| Command | Description | Example |
|---|---|---|
repo |
Opens interactive Command Palette | repo |
repo clone |
Starts repository clone workflow | repo clone |
repo repos |
Shows saved repositories | repo repos |
repo locations |
Shows saved clone locations | repo locations |
repo stats |
Shows memory statistics | repo stats |
repo help |
Shows help page | repo help |
repo clear |
Clears memory history | repo clear |
repo update |
Shows version & PyPI update command | repo update |
repo exit |
Gracefully exits | repo exit |
๐ Repository Structure
Repo_Clone_System/
โ
โโโ .github/ # GitHub workflows, templates, and dependabot
โ โโโ ISSUE_TEMPLATE/
โ โโโ DISCUSSION_TEMPLATE/
โ โโโ workflows/
โ
โโโ docs/ # Developer & API documentation
โ โโโ index.md
โ
โโโ scripts/ # Developer automation scripts
โ โโโ dev.py
โ
โโโ src/
โ โโโ repo_clone_system/ # Core package code
โ โโโ core/ # Git execution & path validation
โ โโโ storage/ # State management & JSON memory
โ โโโ ui/ # Command Palette & terminal interaction
โ
โโโ tests/ # Pytest suite
โโโ app.py # Dev launcher
โโโ pyproject.toml # PEP 621 packaging metadata
โโโ README.md # Package documentation
๐บ๏ธ Roadmap
- Modern
src/layout & PyPI distribution packaging (v0.1.0) - VS Code-style Command Palette with live prefix filtering
- CLI Subcommands (
repo clone,repo repos,repo stats, etc.) - Global interruption handling (Ctrl+C / Ctrl+D)
- SSH & Private Repository authentication helper
- GitHub CLI (
gh) integration for automatic fork-and-clone - Interactive repository search from saved history
๐ Automated Publishing
Releases are published to PyPI automatically via PyPI Trusted Publishing (OIDC).
- No API Keys or Secrets Required: Authentication uses short-lived OpenID Connect (OIDC) JWT tokens exchanged directly between GitHub Actions and PyPI. No
PYPI_API_TOKENor repository secrets are required. - Automatic Releases: Publishing triggers automatically whenever a new GitHub Release is published.
๐ค Contributing
Contributions are welcome! Please read CONTRIBUTING.md and our CODE_OF_CONDUCT.md before submitting a pull request.
To set up your local development environment:
git clone https://github.com/Mr-Anonymous-Guy/Repo_Cone_System.git
cd Repo_Cone_System
pip install -e ".[dev]"
python scripts/dev.py
๐ License
Distributed under the MIT License.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file repo_clone_system-0.1.0.tar.gz.
File metadata
- Download URL: repo_clone_system-0.1.0.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11fd63adde5a33ac703f5f2d6e583e350c03ca6c9aeac4d34d757d34b1ba5dfe
|
|
| MD5 |
1c24251880aa5529937e897f1d744cf3
|
|
| BLAKE2b-256 |
7d2288b33e601ff5759b07f730e15acbdd7021f94caff64d319fc16083b083b4
|
Provenance
The following attestation bundles were made for repo_clone_system-0.1.0.tar.gz:
Publisher:
publish.yml on Mr-Anonymous-Guy/Repo_Cone_System
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
repo_clone_system-0.1.0.tar.gz -
Subject digest:
11fd63adde5a33ac703f5f2d6e583e350c03ca6c9aeac4d34d757d34b1ba5dfe - Sigstore transparency entry: 2342978473
- Sigstore integration time:
-
Permalink:
Mr-Anonymous-Guy/Repo_Cone_System@f50254f8a77572b69808ecc85433a5c26e2ca637 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Mr-Anonymous-Guy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f50254f8a77572b69808ecc85433a5c26e2ca637 -
Trigger Event:
release
-
Statement type:
File details
Details for the file repo_clone_system-0.1.0-py3-none-any.whl.
File metadata
- Download URL: repo_clone_system-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b627785d502f3859185f590f446972f01cb8a030d89061bc228bbb78f9e4834
|
|
| MD5 |
36ec864cac2a64d40f1e65667d95805c
|
|
| BLAKE2b-256 |
15b12d9c0f720f17b54fa4dd405a32e3192e701f9e8d74483b464c8184e88255
|
Provenance
The following attestation bundles were made for repo_clone_system-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on Mr-Anonymous-Guy/Repo_Cone_System
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
repo_clone_system-0.1.0-py3-none-any.whl -
Subject digest:
7b627785d502f3859185f590f446972f01cb8a030d89061bc228bbb78f9e4834 - Sigstore transparency entry: 2342978477
- Sigstore integration time:
-
Permalink:
Mr-Anonymous-Guy/Repo_Cone_System@f50254f8a77572b69808ecc85433a5c26e2ca637 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Mr-Anonymous-Guy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f50254f8a77572b69808ecc85433a5c26e2ca637 -
Trigger Event:
release
-
Statement type: