repository-manager

Knuckles-Team/repository-manager

3.3

If you are the rightful owner of repository-manager and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Repository Manager is a tool designed to manage Git projects efficiently, offering a range of features to streamline Git operations and integrate with AI-driven workflows.

Repository Manager

PyPI - Version PyPI - Downloads GitHub Repo stars GitHub forks GitHub contributors PyPI - License GitHub

GitHub last commit (by committer) GitHub pull requests GitHub closed pull requests GitHub issues

GitHub top language GitHub language count GitHub repo size GitHub repo file count (file type) PyPI - Wheel PyPI - Implementation

Version: 1.1.9

Manage your Git projects

Run all Git supported tasks using Git Actions command

Run as an MCP Server for Agentic AI!

Using an an MCP Server:

AI Prompt:

Clone all the git projects located in the file "/home/genius/Development/repositories-list/repositories.txt" to my "/home/genius/Development" folder.
Afterwards, pull all the projects located in the "/home/genius/Development" repository folder.

AI Response:

All projects in "/home/genius/Development/repositories-list/repositories.txt" have been cloned to "/home/genius/Development"
and all projects in "/home/genius/Development" and been pulled from the repositories. Let me know if you need any further actions! 🚀.

This repository is actively maintained - Contributions are welcome!

Usage:
Short FlagLong FlagDescription
-h--helpSee Usage
-b--default-branchCheckout default branch
-c--cloneClone projects specified
-d--directoryDirectory to clone/pull projects
-f--fileFile with repository links
-p--pullPull projects in parent directory
-r--repositoriesComma separated Git URLs
-t--threadsNumber of parallel threads - Default 4
Example:

Use in CLI

repository-manager \
    --clone  \
    --pull  \
    --directory '/home/user/Downloads'  \
    --file '/home/user/Downloads/repositories.txt'  \
    --repositories 'https://github.com/Knucklessg1/media-downloader,https://github.com/Knucklessg1/genius-bot' \
    --threads 8

Use in Python

from repository_manager import Git

gitlab = Git()

gitlab.set_repository_directory("<directory>")

gitlab.set_threads(threads=8)

gitlab.set_git_projects("<projects>")

gitlab.set_default_branch(set_to_default_branch=True)

gitlab.clone_projects_in_parallel()

gitlab.pull_projects_in_parallel()

Use with AI

Deploy MCP Server as a Service

docker pull knucklessg1/repository-manager:latest

Modify the compose.yml

services:
  repository-manager-mcp:
    image: knucklessg1/repository-manager:latest
    volumes:
      - development:/root/Development
    environment:
      - HOST=0.0.0.0
      - PORT=8001
    ports:
      - 8001:8001

Configure mcp.json

{
  "mcpServers": {
    "repository_manager": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "repository-manager",
        "repository-manager-mcp"
      ],
      "env": {
        "REPOSITORY_MANAGER_DIRECTORY": "/home/user/Development/",                       // Optional - Can be specified at prompt
        "REPOSITORY_MANAGER_THREADS": "12",                                              // Optional - Can be specified at prompt
        "REPOSITORY_MANAGER_DEFAULT_BRANCH": "True",                                     // Optional - Can be specified at prompt
        "REPOSITORY_MANAGER_PROJECTS_FILE": "/home/user/Development/repositories.txt"    // Optional - Can be specified at prompt
      },
      "timeout": 300000
    }
  }
}

Installation Instructions:

Install Python Package

python -m pip install repository-manager

Geniusbot Application

Use with a GUI through Geniusbot

Visit our GitHub for more information

Installation Instructions with Geniusbot:

Install Python Package

python -m pip install geniusbot
Repository Owners:

GitHub followers GitHub User's stars