Version: 1.0.35
Manage your Git projects
Run all Git supported tasks using Git Actions command
Run as an MCP Server for Agentic AI!
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 Flag | Long Flag | Description |
---|---|---|
-h | --help | See Usage |
-b | --default-branch | Checkout default branch |
-c | --clone | Clone projects specified |
-d | --directory | Directory to clone/pull projects |
-f | --file | File with repository links |
-p | --pull | Pull projects in parent directory |
-r | --repositories | Comma separated Git URLs |
-t | --threads | Number of parallel threads - Default 4 |
Example:
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
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()
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_DIRECTORY": "/home/user/Development/", // Optional - Can be specified at prompt
"THREADS": "12", // Optional - Can be specified at prompt
"DEFAULT_BRANCH": "True", // Optional - Can be specified at prompt
"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
Use with a GUI through Geniusbot
Visit our GitHub for more information
Installation Instructions with Geniusbot:
Install Python Package
python -m pip install geniusbot