советую вам собрать вашу программу как PyPi библиотеку, сделать sh команду для терминала для проверки обновлений. В вашем github репозитории создайте файл version в него запишите актуальную версию вашей библиотеки, далее в методе который будет вызываться при выполнении вашей команды для проверки обновлений сделайте проверку установленной версии библиотеки на соответствие с той что записана в version на github. Советую использовать GitHub Raw. Ниже дам пример кода для проверки обновлений из файла version на Github, с исполльзованием Github Raw
import pkg_resources
import httpx
import subprocess
import sys
import os
installed_v = pkg_resources.get_distribution("sfmanager").version
v = httpx.get("https://raw.githubusercontent.com/username/library/main/version")
if v.status_code == 200:
value_v = v.text[0:]
if str(installed_v) == str(value_v):
logger.success("No update required")
else:
logger.info("Downloading an update using pip")
subprocess.check_call([sys.executable, "-m", "pip", "install", "library==" + value_v])
logger.success("library updated, changes will take effect after restart")
os.chdir(os.path.join(pkg_resources.get_distribution("library").location, "sfmanager"))
где library - название вашей библиотеки ну думаю вы с этим разберетесь