Smart Repository Manager CLI v1.0.9

A comprehensive command-line tool for managing GitHub repositories

Advanced synchronization, and intelligent local repository management.

Python CLI GitHub Repository Manager Synchronization

Smart Repository Manager CLI — a comprehensive command-line tool for managing GitHub repositories with advanced synchronization, and intelligent local repository management.

Manage GitHub repositories locally, monitor repository health and status, perform batch operations on multiple repositories, and maintain organized local storage structure.

1. System Check & Configuration

  • Full System Checkup — Comprehensive 8-step verification process
  • Directory Structure Management — Automatic creation of organized user directories
  • Configuration Management — Persistent user and token storage
  • Network Validation — Internet connectivity and DNS resolution checks

2. GitHub Integration

  • Token Management — Secure storage and validation of GitHub tokens
  • User Authentication — Multi-user support with active user switching
  • Repository Discovery — Fetch all user repositories (public, private, forked, archived)
  • API Rate Limit Monitoring — Real-time GitHub API usage tracking

3. Repository Management

  • Repository Listing — View all repositories with filtering options
  • Search Functionality — Find repositories by name
  • Language Statistics — Analyze repository language distribution
  • Health Checking — Verify local repository integrity
  • Storage Management — Monitor and manage local repository storage

  • Smart Sync — Automatic detection of needed operations (clone/update/repair)
  • Batch Operations — Process multiple repositories simultaneously
  • Update Detection — Identify repositories needing updates
  • Auto-Repair — Automatic fixing of broken repositories
  • Progress Tracking — Real-time sync progress and statistics

Prerequisites: Python 3.8+, Git installed and configured, GitHub Personal Access Token (with repo scope)

# Clone the repository
git clone https://github.com/smartlegionlab/smart_repository_manager_cli.git

# Install dependencies
pip install -r requirements.txt

# Run the CLI
python app.py

First Run:

  1. Initial Checkup — The tool automatically runs a full system check
  2. Token Setup — Enter your GitHub Personal Access Token when prompted

Main Menu Options:

  • User Information — View GitHub profile details and repository statistics
  • Token Information — View token scopes, limits, and API rate limits
  • Repository Management — List, search, check status, and create archives
  • Synchronization — Sync All, Update Needed Only, Clone Missing Only, Sync with Repair
  • Storage Management — View usage, delete repositories, clear all
  • System Information — View configuration and system status
  • Restart — Complete system verification and issue identification
  • Clean Temporary Files — Remove temporary files and free up disk space

~/smart_repository_manager/
├── config.json              # Application configuration
├── username/                # User-specific directories
│   ├── repositories/       # Local repository clones
│   ├── archives/          # Backup archives
│   ├── logs/             # Operation logs
│   ├── backups/          # Manual backups
│   └── temp/             # Temporary files (auto-cleaned)
└── checkup_results_*.json  # Checkup result logs

Environment Setup:

  • GitHub Token — Create a token with repo scope at github.com/settings/tokens
  • Git Configuration — Ensure user.name and user.email are set globally

Core Components:

  • Models — Data structures for users, repositories, and tokens
  • Services — Business logic for GitHub, Git, network, and sync operations
  • CLI Interface — User-friendly command-line interface with menus and prompts
  • Validation — Comprehensive input validation and error handling

Performance Features:

  • Concurrent operations where possible
  • Caching of repository data
  • Progress tracking for long operations
  • Efficient memory usage

  • Core Version — Python library for managing Git repositories with intelligent synchronization, SSH configuration validation, and GitHub integration
  • GUI Version — Desktop graphical user interface for visual management of repositories and synchronization tasks

Both implementations use this core library as their engine, ensuring consistent behavior and feature parity across interfaces.

Active Development — This project is under active development. Features may change, and stability is not guaranteed. Not recommended for production use without thorough testing.

By using this software, you agree to the full disclaimer terms.

Software provided "AS IS" without warranty. You assume all risks.

Full legal disclaimer: See DISCLAIMER.md

License: BSD 3-Clause License