From 2a2e1b212109b6beb1ac9864fcc9d8983cd77d93 Mon Sep 17 00:00:00 2001 From: Web4 <167559384+Web4application@users.noreply.github.com> Date: Fri, 20 Jun 2025 06:00:17 +0200 Subject: [PATCH] Jubilant (#17) * Update bash.sh * Update and rename bash.sh to bin/bash/deploy.sh * Update .bash_main * Create ngrok * Update config.sh * Add files via upload * Create D * Add files via upload * Add files via upload * Delete frontend/src/index.html * Add files via upload * Add files via upload * Create Hash * Add files via upload * Add files via upload * Create Hs * Add files via upload * Delete backend/api/Hs * Add files via upload * Create Dd * Add files via upload * Create Did * Add files via upload * Create Jeff * Add files via upload * Delete src/Hash * Add files via upload * Create Jf * Add files via upload * Delete api/llm/Jf * Create Jf * Create Js * Rename Js to Py * Add files via upload * Update __init__.py * Update Dockerfile * Update Docker-compose.yml * Create modelconfig.yaml * Create docker-compose up --build * Update and rename .env.local to .Env * Update .Env * Delete .env * Update and rename .Env to .env * Create Model_config.yaml * Update __init__.py * Create Model_loader.py * Create app-hosting.tf * Delete Model_config.yaml * Delete .github/workflows/modelconfig.yaml * Update and rename backend/app/main.py to backend/app.py * Rename .github/scripts/ai_code_review.py to scripts/ai_code_review.py * Create model_config.yaml * Rename workflows/deploy-docs.yml to .github/workflows/deploy-docs.yml * Rename .github/scripts/auto_release.sh to scripts/auto_release.sh * Rename auto_review.sh to auto_review.sh * Rename bin/bash/auto_review.sh to scripts/auto_review.sh * Rename .github/scripts/data_pipeline.py to scripts/data_pipeline.py * Rename .github/scripts/githubmodelclient.py to scripts/github_model_client.py * Rename .github/scripts/task_extractor.py to scripts/task_extractor.py * Rename .github/scripts/generate_man.py to scripts/generate_man.py * Rename .github/scripts/generate_toc.py to scripts/generate_toc.py * Rename .github/scripts/generate_man_pages.py to scripts/generate_man_pages.py * Rename .github/scripts/wrap_html.py to scripts/wrap_html.py * Create EnclovAI.prompt.yml * Rename EnclovAI.prompt.yml to EnclovAI.prompt.yaml * Update .env * Rename EnclovAI.prompt.yaml to EnclovAI.prompt.yml * Update EnclovAI.prompt.yml * Update config.py * Create openai_provider.py * Create googleai_provider.py * Create enclovai_provider.py * Update main.py * Create test_ai_providers.py * Create ai-provider-tests.yml * Update and rename Deploy.yml to Deploy.yaml * Create __init__.py * Create summary.yml * Delete enclov-AI-landing/Image directory * Update and rename model_config.yaml to actions/Deploy.yaml * Update and rename googleai_provider.py to google_ai_provider.py * Update and rename openai_provider.py to open_ai_provider.py * Rename EnclovAI.prompt.yml to .github/workflows/EnclovAI.prompt.yml * Update config.py * Update main.py * Create tasks.py * Create celery_worker.py * Update and rename app/Dockerfile/celery to app/DockerFile * Rename DockerFile to Dockerfile * Create Docker-compose.yml * Update requirements.txt * Update Bash.sh * Rename Bash.sh to bash * Update .env * Update .env * Update .env * Update .env * Update main.jsx * Update Docker-compose.yml * Update tasks.py * Update requirements.txt * Update .bash_main * Rename generate_man_pages.py to gen_man_pages.py * Rename .github/workflows/ai-code-review.yml to ai-code-review.yaml * Create gen-man.yml * Update tasks.py * Create github_client.py * Create llm_client.py * Create database.py * Update and rename backend/app.py to backend/app/main.py * Rename gen-man-publish.yml to .github/workflows/gen-man-publish.yml * Update main.py * Update index.html * Update main.py * Create ai_review.py * Create submit * Create run.sh * Delete .github/workflows/nextjs.yml * Create astro.yml * Rename index.html to static/index.html * Update qr.py * Rename ai-code-review.yaml to .github/workflows/ai-code-review.yml * Rename apply_patches.sh to scripts/apply_patches.sh * Rename enclov_ai_backend.py to scripts/enclov_ai_backend.py * Rename generate_docs.py to scripts/generate_docs.py * Delete app-hosting.tf * Rename config.py to scripts/config.py * Rename repo_analyzer.py to scripts/repo_analyzer.py * Rename submit_pr.py to api/submit_pr.py * Rename api-client.js to api/api-client.js * Rename ai/review_diff.py to review_diff.py * Rename generate_patchnotes.py to generate_patchnotes.py * Create index.html * Rename wd/Dockerfile to dockerfile * Update Dockerfile * Delete dockerfile * Create scripts.js * Update index.html * Update Makefile * Create generate-and-commit-patch.yml * Update index.html * Create review * Delete app/main.py * Update main.py * Rename main.jsx to app/main.jsx * Delete backend/app/main.py * Create main.py * Update Dockerfile * Create SECURITY.md * Create bash.sh * Rename .github/workflows/ai-code-review.yml to workflows/ai-code-review.yml * Rename .github/workflows/EnclovAI.prompt.yml to workflows/EnclovAI.prompt.yml * Rename .github/workflows/generate-and-commit-patch.yml to workflows/generate-and-commit-patch.yml * Rename .github/workflows/fortify.yml to workflows/fortify.yml * Rename .github/workflows/ai-provider-tests.yml to workflows/ai-provider-tests.yml * Rename Deploy.yaml to Deploy.yml * Rename .github/workflows/summary.yml to workflows/summary.yml * Rename .github/workflows/Deploy.yml to actions/Deploy.ym * Rename actions/Deploy.ym to Deploy.yaml * Delete workflows/Deploy.yml * Rename ci_cd_ai_analysis.yml to ci_cd_ai_analysis.yml * Rename ai-code-review.yml to ai-code-review.yml * Update Deploy.yaml * Delete index.html * Delete .github/workflows/astro.yml * Create ai_code_reviewer.yml * Update and rename ai-code-reviewer/action.yml to action.yml * Rename actions/Deploy.yaml to .github/workflows/Deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename Deploy.yaml to .github/script/Deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename gen-man.yml to .github/script/gen-man.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename action.yml to .github/script/action.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename actions/ai-code-review.yml to .github/workflows/ai-code-review.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename actions/ci_cd_ai_analysis.yml to .github/workflows/ci_cd_ai_analysis.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename action.yml to action.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename ai-review.yml to ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/gen-man-publish.yml to .github/gen-man-publish.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/action.yml to .github/action.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/deploy-docs.yml to ai-code-reviewer/deploy-docs.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update Deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update Deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/script/Deploy.yml to ai-code-reviewer/deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/gen-man-publish.yml to .github/workflows/generate_man.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename action.yml to ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update .env Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename main.py to app.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename ai-code-reviewer/main.py to main.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename app.jsx to app/app.jsx Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename createEnclovAppWithLLM.py to scripts/createEnclovAppWithLLM.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename analyze-code/main.py to analyze-code.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/script/gen-man.yml to .github/generate-man.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update Deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename enclove-cli.py to scripts/enclove-cli.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update ci-cd.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename workflows/ci-cd.yml to .github/workflows/ci-cd.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename deploy-docs.yml to deploy-docs.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename ai-code-reviewer/deploy.yml to .github/workflows/deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update and rename .github/workflows/deploy.yml to .github/deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ci_cd_ai_analysis.yml to .github/ci_cd_ai_analysis.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/docker-ci.yml to .github/docker-ci.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update ci_cd_ai_analysis.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update and rename .github/docker-ci.yml to docker-ci.yaml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename docker-ci.yaml to .circle-ci/docker-ci.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename docker-ci.yml to docker-ci.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update ci_cd_ai_analysis.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/ci_cd_ai_analysis.yml to .github/workflows/ci_cd_ai_analysis.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/Deploy.yml to docs/deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename gen-man.yml to generate-man.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/generate_man.py to .github/generate_man.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ai_code_reviewer.yml to ai_code_reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update ai_code_reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update and rename .github/deploy-docs.yml to .github/workflows/deploy-docs.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update and rename .github/deploy.yml to .github/Workflows/deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Update ci-cd.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Create fastapi-ai-pr-reviewer Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename ai-code-reviewer/ai-code-reviewer.yml to .github/workflows/ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename deploy.yml to deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ai-code-reviewer.yml to actions/ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/deploy-docs.yml to actions/deploy-docs.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename docker-ci.yml to docker-ci.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ai-code-review.yml to .github/ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ci-cd.yml to actions/ci-cd.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/deploy.yml to actions/deploy.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ci_cd_ai_analysis.yml to actions/ci_cd_ai_analysis.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename generate-man.yml to generate-man.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename generate_man.py to generate_man_pages.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/ai-code-reviewer.yml to .github/workflows/ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/enclove-cli.py to enclove-cli.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/config.py to config.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename repo_analyzer.py to repo_analyzer.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename generate_docs.py to generate_docs.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/data_pipeline.py to data_pipeline.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename enclov_ai_backend.py to enclov_ai_backend.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename generate_toc.py to generate_toc.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/createEnclovAppWithLLM.py to scripts/Docs/createEnclovAppWithLLM.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename gen_man_pages.py to generates_man_pages.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/github_model_client.py to github_model_client.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/ai_code_review.py to ai_code_review.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename task_extractor.py to task_extractor.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/apply_patches.sh to apply_patches.sh Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/auto_release.sh to auto_release.sh Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Delete scripts/D Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename scripts/Docs/createEnclovAppWithLLM.py to Docs/createEnclovAppWithLLM.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Create docker-image.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Create jekyll-docker.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename generates_man_pages.py to generates_man_pages.py Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename generate-man.yml to generate-man-pages.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/workflows/ai-code-reviewer.yml to .github/ai-code-reviewer.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Delete .github/workflows/generate-man-pages.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> * Rename .github/ai-code-reviewer.yml to .github/workflows/ai-code-review.yml Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> --------- Signed-off-by: Web4 <167559384+Web4application@users.noreply.github.com> --- .bash_main | 28 ++ {circleci => .circleci}/config.yml | 6 +- .dockerignore | 13 +- .env | 11 + .env.local | 9 - .github/workflows/Deploy.yaml | 40 --- .../{ai_pr_review.yml => ai-code-review.yml} | 9 +- .github/workflows/docker-image.yml | 18 ++ .github/workflows/hugo.yml | 74 ----- .github/workflows/jekyll-docker.yml | 20 ++ .github/workflows/jekyll-gh-pages.yml | 51 --- .gitignore | 50 +++ Bash.sh | 8 - Docker-compose.yml | 48 +-- Dockerfile | 93 +++--- .../createEnclovAppWithLLM.py | 0 .../enclov_ai_backend.py | 0 generate_docs.py => Docs/generate_docs.py | 0 repo_analyzer.py => Docs/repo_analyzer.py | 0 task_extractor.py => Docs/task_extractor.py | 0 Main/gh-repo-archive.1 | 42 --- Main/gh-repo-autolink-create.1 | 82 ----- Main/gh-repo-autolink-delete.1 | 45 --- Main/gh-repo-autolink-list.1 | 68 ---- Main/gh-repo-autolink-view.1 | 57 ---- Main/gh-repo-autolink.1 | 64 ---- Main/gh-repo-clone.1 | 79 ----- Main/gh-repo-create.1 | 154 --------- Main/gh-repo-delete.1 | 46 --- Main/gh-repo-deploy-key-add.1 | 63 ---- Main/gh-repo-deploy-key-delete.1 | 35 -- Main/gh-repo-deploy-key-list.1 | 57 ---- Main/gh-repo-deploy-key.1 | 49 --- Main/gh-repo-edit.1 | 155 --------- Main/gh-repo-fork.1 | 74 ----- Main/gh-repo-gitignore-list.1 | 33 -- Main/gh-repo-gitignore-view.1 | 56 ---- Main/gh-repo-gitignore.1 | 39 --- Main/gh-repo-license-list.1 | 41 --- Main/gh-repo-license-view.1 | 63 ---- Main/gh-repo-license.1 | 39 --- Main/gh-repo-list.1 | 92 ------ Main/gh-repo-rename.1 | 70 ---- Main/gh-repo-set-default.1 | 74 ----- Main/gh-repo-sync.1 | 75 ----- Main/gh-repo-unarchive.1 | 42 --- Main/gh-repo-view.1 | 68 ---- Main/gh-repo.1 | 110 ------- Main/gh-ruleset-check.1 | 80 ----- Main/gh-ruleset-list.1 | 87 ----- Main/gh-ruleset-view.1 | 82 ----- Main/gh-ruleset.1 | 67 ---- Main/gh-run-cancel.1 | 35 -- Main/gh-run-delete.1 | 46 --- Main/gh-run-download.1 | 80 ----- Main/gh-run-list.1 | 104 ------ Main/gh-run-rerun.1 | 69 ---- Main/gh-run-view.1 | 117 ------- Main/gh-run-watch.1 | 64 ---- Main/gh-run.1 | 69 ---- Main/gh-search-code.1 | 120 ------- Main/gh-search-commits.1 | 159 ---------- Main/gh-search-issues.1 | 218 ------------- Main/gh-search-prs.1 | 250 --------------- Main/gh-search-repos.1 | 170 ---------- Main/gh-search.1 | 55 ---- Main/gh-secret-delete.1 | 65 ---- Main/gh-secret-list.1 | 81 ----- Main/gh-secret-set.1 | 126 -------- Main/gh-secret.1 | 56 ---- Main/gh-ssh-key-add.1 | 39 --- Main/gh-ssh-key-delete.1 | 35 -- Main/gh-ssh-key-list.1 | 33 -- Main/gh-ssh-key.1 | 47 --- Main/gh-status.1 | 61 ---- Main/gh-variable-delete.1 | 56 ---- Main/gh-variable-get.1 | 68 ---- Main/gh-variable-list.1 | 72 ----- Main/gh-variable-set.1 | 98 ------ Main/gh-variable.1 | 58 ---- Main/gh-workflow-disable.1 | 39 --- Main/gh-workflow-enable.1 | 39 --- Main/gh-workflow-list.1 | 69 ---- Main/gh-workflow-run.1 | 90 ------ Main/gh-workflow-view.1 | 60 ---- Main/gh-workflow.1 | 61 ---- Main/gh.1 | 158 ---------- Makefile | 28 ++ Nginx/nginx.conf | 15 - README.md | 180 +++++++++-- SECURITY.md | 21 ++ actions/ai-code-reviewer.yml | 27 ++ actions/ci-cd.yml | 80 +++++ .../ci_cd_ai_analysis.yml | 10 +- .../workflows => actions}/deploy-docs.yml | 6 +- {.github/workflows => actions}/deploy.yml | 11 +- {.github/workflows => actions}/docker-ci.yml | 6 +- .../gen-man.yml => actions/generate-man.yml | 0 .../generate_man_pages.py | 4 +- actions/generates_man_pages.py | 128 ++++++++ .../.github/Workflows/ai-code-reviewer.yml | 26 ++ ai-code-reviewer/Dockerfile | 8 + ai-code-reviewer/api/__init__.py | 1 + ai-code-reviewer/api/views.py | 43 +++ ai-code-reviewer/requirements.txt | 7 + ai-code-reviewer/utils/Helpers.py | 131 ++++++++ ai-code-reviewer/utils/github_inline.py | 80 +++++ ai-code-reviewer/utils/triage.py | 63 ++++ ai_code_reviewer.yml | 26 ++ analyze-code/main.py => analyze-code.py | 15 +- api/__init__.py | 0 api-client.js => api/api-client.js | 0 api/llm/Model_loader.py | 23 ++ api/llm/__init__.py | 1 + api/llm/chat_engine.py | 6 + api/llm/model_loader.py | 5 + api/main.py | 30 ++ api/review | 1 + api/routes/Jf | 1 + api/routes/__init__.py | 0 api/routes/chat.py | 10 + api/routes/comments.py | 56 ++++ api/submit | 1 + api/submit_pr.py | 56 ++++ api/tools/Py | 1 + api/tools/__init__.py | 0 app.py | 61 ++++ app/.env | 9 +- app/Docker-compose.yml | 34 ++ app/Dockerfile | 10 + app/Dockerfile/celery | 12 - app/ai.py | 73 ----- app/ai_review.py | 12 + app.jsx => app/app.jsx | 0 app/{Bash.sh => bash} | 1 + app/celery_worker.py | 3 + app/config.py | 41 ++- app/main.jsx | 45 +++ app/main.py | 150 +++------ app/requirements.txt | 8 +- app/run.sh | 3 + app/tasks.py | 124 ++++++++ apply_patches.sh | 12 + scripts/gh/auto_release.sh => auto_release.sh | 0 backend/Docker-compose.yml | 14 + backend/__init__.py | 0 backend/api/__init__.py | 0 backend/api/main.py | 5 + backend/app/main.py | 44 --- backend/bash.sh | 3 + backend/core/env_loader.py | 22 ++ backend/enclov_commands.py | 29 ++ backend/llm/Dd | 1 + backend/llm/__init__.py | 0 backend/llm/chat_engine.py | 6 + backend/llm/model_loader.py | 5 + backend/main.py | 5 + backend/model_config.yaml | 4 + backend/requirements.txt | 5 + backend/routes/Did | 1 + backend/routes/__init__.py | 0 backend/routes/chat.py | 10 + backend/tools/Jeff | 1 + backend/tools/__init__.py | 0 bash.sh | 37 +++ bash/Deploy.sh | 4 + actions-runner => bash/actions-runner.sh | 2 +- bash/install.sh | 1 + bin/bash/deploy.sh | 44 +++ bin/start.sh | 7 + brew/install/ngrok | 1 + config.py | 14 +- config.sh | 8 + core/__init__.py | 1 + core/ai_review.py | 3 + core/github_auth.py | 34 ++ core/security.py | 13 + data_pipeline.py | 72 ++++- database.py | 6 + docker-compose up --build | 1 + docs/deploy.yml | 51 +++ docs/enclov-config.html | 59 +--- docs/enclov-start.html | 2 +- docs/enclov-version.html | 2 +- enclov-AI-landing/Image/IMG_0588.jpeg | Bin 26560 -> 0 bytes enclove-cli.py | 98 ++++++ fastapi-ai-pr-reviewer | 1 + frontend/.env.local | 1 + frontend/Docker-compose.yml | 14 + frontend/bash.sh | 19 ++ frontend/index.html | 11 + frontend/main.jsx | 5 + frontend/package.json | 30 ++ frontend/pages/Home.css | 95 ++++++ frontend/pages/Home.tsx | 78 +++++ frontend/pages/api/comments.ts | 18 ++ frontend/pages/index.tsx | 138 ++++++++ frontend/src/App.css | 36 +++ frontend/src/App.jsx | 40 +++ frontend/styles/globals.css | 3 + frontend/tailwind.config.js | 11 + generate_man.py | 40 --- generate_patches.sh | 28 ++ ...ubmodelclient.py => github_model_client.py | 0 index.html | 170 ---------- main.py | 134 +++----- man/enclov-config.1 | 11 - man/enclov-review (1).1 | 40 +++ man/enclov-review.1 | 0 man/enclov-status.1 | 34 ++ man/enclov-stop.1 | 31 ++ man/gh-release.1 | 71 ----- models/schema.py | 4 + nginx.conf | 25 ++ providers/__init__.py | 1 + providers/enclovai_provider.py | 14 + providers/google_ai_provider.py | 9 + providers/open_ai_provider.py | 16 + qr.py | 2 +- register_webhook.py | 31 +- requirements.txt | 68 +++- revert_patches.sh | 12 + ai/review_diff.py => review_diff.py | 0 scripts/{gh => }/auto_review.sh | 0 {.github/scripts => scripts}/generate_man.py | 0 {ai => scripts}/generate_patchnotes.py | 0 scripts/validate_model_config.py | 10 + {.github/scripts => scripts}/wrap_html.py | 0 src/App.css | 36 +++ src/App.jsx | 40 +++ src/Components/EnclovAIPage.jsx | 298 ++++++++++++++++++ {.github/scripts => src}/generate_toc.py | 0 src/scripts.js | 1 + start.sh | 10 +- static/index.html | 200 ++++++++++++ tests/test_ai_providers.py | 19 ++ utils/github_client.py | 13 + utils/llm_client.py | 21 ++ wd/Dockerfile | 15 - worker.js | 10 + workflows/EnclovAI.prompt.yml | 55 ++++ workflows/ai-provider-tests.yml | 29 ++ {.github/workflows => workflows}/backend.yml | 0 .../enclov-ai-full-pipeline.yml | 2 +- workflows/fortify.yml | 129 ++++++++ workflows/generate-and-commit-patch.yml | 31 ++ workflows/summary.yml | 34 ++ 247 files changed, 3957 insertions(+), 6190 deletions(-) rename {circleci => .circleci}/config.yml (75%) create mode 100644 .env delete mode 100644 .env.local delete mode 100644 .github/workflows/Deploy.yaml rename .github/workflows/{ai_pr_review.yml => ai-code-review.yml} (66%) create mode 100644 .github/workflows/docker-image.yml delete mode 100644 .github/workflows/hugo.yml create mode 100644 .github/workflows/jekyll-docker.yml delete mode 100644 .github/workflows/jekyll-gh-pages.yml create mode 100644 .gitignore delete mode 100644 Bash.sh rename createEnclovAppWithLLM.py => Docs/createEnclovAppWithLLM.py (100%) rename enclov_ai_backend.py => Docs/enclov_ai_backend.py (100%) rename generate_docs.py => Docs/generate_docs.py (100%) rename repo_analyzer.py => Docs/repo_analyzer.py (100%) rename task_extractor.py => Docs/task_extractor.py (100%) delete mode 100644 Main/gh-repo-archive.1 delete mode 100644 Main/gh-repo-autolink-create.1 delete mode 100644 Main/gh-repo-autolink-delete.1 delete mode 100644 Main/gh-repo-autolink-list.1 delete mode 100644 Main/gh-repo-autolink-view.1 delete mode 100644 Main/gh-repo-autolink.1 delete mode 100644 Main/gh-repo-clone.1 delete mode 100644 Main/gh-repo-create.1 delete mode 100644 Main/gh-repo-delete.1 delete mode 100644 Main/gh-repo-deploy-key-add.1 delete mode 100644 Main/gh-repo-deploy-key-delete.1 delete mode 100644 Main/gh-repo-deploy-key-list.1 delete mode 100644 Main/gh-repo-deploy-key.1 delete mode 100644 Main/gh-repo-edit.1 delete mode 100644 Main/gh-repo-fork.1 delete mode 100644 Main/gh-repo-gitignore-list.1 delete mode 100644 Main/gh-repo-gitignore-view.1 delete mode 100644 Main/gh-repo-gitignore.1 delete mode 100644 Main/gh-repo-license-list.1 delete mode 100644 Main/gh-repo-license-view.1 delete mode 100644 Main/gh-repo-license.1 delete mode 100644 Main/gh-repo-list.1 delete mode 100644 Main/gh-repo-rename.1 delete mode 100644 Main/gh-repo-set-default.1 delete mode 100644 Main/gh-repo-sync.1 delete mode 100644 Main/gh-repo-unarchive.1 delete mode 100644 Main/gh-repo-view.1 delete mode 100644 Main/gh-repo.1 delete mode 100644 Main/gh-ruleset-check.1 delete mode 100644 Main/gh-ruleset-list.1 delete mode 100644 Main/gh-ruleset-view.1 delete mode 100644 Main/gh-ruleset.1 delete mode 100644 Main/gh-run-cancel.1 delete mode 100644 Main/gh-run-delete.1 delete mode 100644 Main/gh-run-download.1 delete mode 100644 Main/gh-run-list.1 delete mode 100644 Main/gh-run-rerun.1 delete mode 100644 Main/gh-run-view.1 delete mode 100644 Main/gh-run-watch.1 delete mode 100644 Main/gh-run.1 delete mode 100644 Main/gh-search-code.1 delete mode 100644 Main/gh-search-commits.1 delete mode 100644 Main/gh-search-issues.1 delete mode 100644 Main/gh-search-prs.1 delete mode 100644 Main/gh-search-repos.1 delete mode 100644 Main/gh-search.1 delete mode 100644 Main/gh-secret-delete.1 delete mode 100644 Main/gh-secret-list.1 delete mode 100644 Main/gh-secret-set.1 delete mode 100644 Main/gh-secret.1 delete mode 100644 Main/gh-ssh-key-add.1 delete mode 100644 Main/gh-ssh-key-delete.1 delete mode 100644 Main/gh-ssh-key-list.1 delete mode 100644 Main/gh-ssh-key.1 delete mode 100644 Main/gh-status.1 delete mode 100644 Main/gh-variable-delete.1 delete mode 100644 Main/gh-variable-get.1 delete mode 100644 Main/gh-variable-list.1 delete mode 100644 Main/gh-variable-set.1 delete mode 100644 Main/gh-variable.1 delete mode 100644 Main/gh-workflow-disable.1 delete mode 100644 Main/gh-workflow-enable.1 delete mode 100644 Main/gh-workflow-list.1 delete mode 100644 Main/gh-workflow-run.1 delete mode 100644 Main/gh-workflow-view.1 delete mode 100644 Main/gh-workflow.1 delete mode 100644 Main/gh.1 create mode 100644 Makefile delete mode 100644 Nginx/nginx.conf create mode 100644 SECURITY.md create mode 100644 actions/ai-code-reviewer.yml create mode 100644 actions/ci-cd.yml rename {.github/workflows => actions}/ci_cd_ai_analysis.yml (76%) rename {.github/workflows => actions}/deploy-docs.yml (83%) rename {.github/workflows => actions}/deploy.yml (75%) rename {.github/workflows => actions}/docker-ci.yml (92%) rename .github/workflows/gen-man.yml => actions/generate-man.yml (100%) rename .github/workflows/gen-man-publish.yml => actions/generate_man_pages.py (92%) create mode 100644 actions/generates_man_pages.py create mode 100644 ai-code-reviewer/.github/Workflows/ai-code-reviewer.yml create mode 100644 ai-code-reviewer/Dockerfile create mode 100644 ai-code-reviewer/api/__init__.py create mode 100644 ai-code-reviewer/api/views.py create mode 100644 ai-code-reviewer/requirements.txt create mode 100644 ai-code-reviewer/utils/Helpers.py create mode 100644 ai-code-reviewer/utils/github_inline.py create mode 100644 ai-code-reviewer/utils/triage.py create mode 100644 ai_code_reviewer.yml rename analyze-code/main.py => analyze-code.py (74%) create mode 100644 api/__init__.py rename api-client.js => api/api-client.js (100%) create mode 100644 api/llm/Model_loader.py create mode 100644 api/llm/__init__.py create mode 100644 api/llm/chat_engine.py create mode 100644 api/llm/model_loader.py create mode 100644 api/main.py create mode 100644 api/review create mode 100644 api/routes/Jf create mode 100644 api/routes/__init__.py create mode 100644 api/routes/chat.py create mode 100644 api/routes/comments.py create mode 100644 api/submit create mode 100644 api/submit_pr.py create mode 100644 api/tools/Py create mode 100644 api/tools/__init__.py create mode 100644 app.py create mode 100644 app/Docker-compose.yml create mode 100644 app/Dockerfile delete mode 100644 app/Dockerfile/celery delete mode 100644 app/ai.py create mode 100644 app/ai_review.py rename app.jsx => app/app.jsx (100%) rename app/{Bash.sh => bash} (55%) create mode 100644 app/celery_worker.py create mode 100644 app/main.jsx create mode 100644 app/run.sh create mode 100644 app/tasks.py create mode 100644 apply_patches.sh rename scripts/gh/auto_release.sh => auto_release.sh (100%) create mode 100644 backend/Docker-compose.yml create mode 100644 backend/__init__.py create mode 100644 backend/api/__init__.py create mode 100644 backend/api/main.py delete mode 100644 backend/app/main.py create mode 100644 backend/bash.sh create mode 100644 backend/core/env_loader.py create mode 100644 backend/enclov_commands.py create mode 100644 backend/llm/Dd create mode 100644 backend/llm/__init__.py create mode 100644 backend/llm/chat_engine.py create mode 100644 backend/llm/model_loader.py create mode 100644 backend/main.py create mode 100644 backend/model_config.yaml create mode 100644 backend/requirements.txt create mode 100644 backend/routes/Did create mode 100644 backend/routes/__init__.py create mode 100644 backend/routes/chat.py create mode 100644 backend/tools/Jeff create mode 100644 backend/tools/__init__.py create mode 100644 bash.sh create mode 100644 bash/Deploy.sh rename actions-runner => bash/actions-runner.sh (82%) create mode 100644 bash/install.sh create mode 100644 bin/bash/deploy.sh create mode 100644 bin/start.sh create mode 100644 brew/install/ngrok create mode 100644 core/__init__.py create mode 100644 core/ai_review.py create mode 100644 core/github_auth.py create mode 100644 core/security.py create mode 100644 database.py create mode 100644 docker-compose up --build create mode 100644 docs/deploy.yml delete mode 100644 enclov-AI-landing/Image/IMG_0588.jpeg create mode 100644 enclove-cli.py create mode 100644 fastapi-ai-pr-reviewer create mode 100644 frontend/.env.local create mode 100644 frontend/Docker-compose.yml create mode 100644 frontend/bash.sh create mode 100644 frontend/index.html create mode 100644 frontend/main.jsx create mode 100644 frontend/package.json create mode 100644 frontend/pages/Home.css create mode 100644 frontend/pages/Home.tsx create mode 100644 frontend/pages/api/comments.ts create mode 100644 frontend/pages/index.tsx create mode 100644 frontend/src/App.css create mode 100644 frontend/src/App.jsx create mode 100644 frontend/styles/globals.css create mode 100644 frontend/tailwind.config.js delete mode 100644 generate_man.py create mode 100644 generate_patches.sh rename githubmodelclient.py => github_model_client.py (100%) delete mode 100644 index.html create mode 100644 man/enclov-review (1).1 create mode 100644 man/enclov-review.1 create mode 100644 man/enclov-status.1 create mode 100644 man/enclov-stop.1 delete mode 100644 man/gh-release.1 create mode 100644 models/schema.py create mode 100644 nginx.conf create mode 100644 providers/__init__.py create mode 100644 providers/enclovai_provider.py create mode 100644 providers/google_ai_provider.py create mode 100644 providers/open_ai_provider.py create mode 100644 revert_patches.sh rename ai/review_diff.py => review_diff.py (100%) rename scripts/{gh => }/auto_review.sh (100%) rename {.github/scripts => scripts}/generate_man.py (100%) rename {ai => scripts}/generate_patchnotes.py (100%) create mode 100644 scripts/validate_model_config.py rename {.github/scripts => scripts}/wrap_html.py (100%) create mode 100644 src/App.css create mode 100644 src/App.jsx create mode 100644 src/Components/EnclovAIPage.jsx rename {.github/scripts => src}/generate_toc.py (100%) create mode 100644 src/scripts.js create mode 100644 static/index.html create mode 100644 tests/test_ai_providers.py create mode 100644 utils/github_client.py create mode 100644 utils/llm_client.py delete mode 100644 wd/Dockerfile create mode 100644 worker.js create mode 100644 workflows/EnclovAI.prompt.yml create mode 100644 workflows/ai-provider-tests.yml rename {.github/workflows => workflows}/backend.yml (100%) rename {.github/workflows => workflows}/enclov-ai-full-pipeline.yml (98%) create mode 100644 workflows/fortify.yml create mode 100644 workflows/generate-and-commit-patch.yml create mode 100644 workflows/summary.yml diff --git a/.bash_main b/.bash_main index 8b13789..aaabb97 100644 --- a/.bash_main +++ b/.bash_main @@ -1 +1,29 @@ +docker build --build-arg CONFIGCAT_AUTH_KEY=yourkeyhere --build-arg JOB_ID=1234 -t myreactapp . +docker run -p 3000:3000 -e JOB_ID=1234 myreactapp +redis-server +uvicorn enclov_ai_backend:app --reload +celery -A enclov_ai_backend.celery_app worker --loglevel=info +pip install fastapi uvicorn celery redis pydantic mlflow optuna shap +pip install -r requirements.txt +base64 -w 0 kubeconfig.yaml +docker run --net=host -it -e NGROK_AUTHTOKEN=2y96VwzmhS1YV6vgll2Ua411oGc_755Qcpps22pznftiuGZWr ngrok/ngrok:latest http --url=above-feasible-lobster.ngrok-free.app 80 +docker run --net=host -it -e NGROK_AUTHTOKEN=2y96VwzmhS1YV6vgll2Ua411oGc_755Qcpps22pznftiuGZWr ngrok/ngrok:latest http 80 +docker pull ngrok/ngrok +ngrok config add-authtoken 2y96VwzmhS1YV6vgll2Ua411oGc_755Qcpps22pznftiuGZWr +npm install -r requirements.txt +cd enclov-AI +mkdir frontend +cd frontend +npx create-next-app@latest . +cat << 'EOF' | git apply +diff --git a/.github/workflows/gen-man.yml b/.github/workflows/gen-man.yml +--- a/.github/workflows/gen-man.yml ++++ b/.github/workflows/gen-man.yml +@@ -2,2 +2,5 @@ + ++permissions: ++ contents: read ++ + on: +EOF diff --git a/circleci/config.yml b/.circleci/config.yml similarity index 75% rename from circleci/config.yml rename to .circleci/config.yml index e8f9dff..09e4418 100644 --- a/circleci/config.yml +++ b/.circleci/config.yml @@ -15,16 +15,16 @@ jobs: - run: name: Install dependencies - command: pip install -r app/requirements.txt + command: pip install -r requirements.txt - docker/build: - image: your-dockerhub-user/enclov-ai + image: web4application.github.io/enclov-AI tag: latest path: . extra_build_args: --compress - docker/push: - image: your-dockerhub-user/enclov-ai + image: web4application.github.io/enclov-AI tag: latest workflows: diff --git a/.dockerignore b/.dockerignore index fb14bc1..c46a422 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,11 +1,22 @@ -__pycache__ +# Python cache files +__pycache__/ *.pyc *.pyo *.pyd + +# Virtual environments env/ venv/ + +# Git files (don’t send your git repo to Docker build context) .git .gitignore + +# Dockerfile itself (optional, but usually you want to exclude it from context) Dockerfile + +# Markdown docs (usually not needed inside container) *.md + +# Test folders/files (not needed in production image) tests/ diff --git a/.env b/.env new file mode 100644 index 0000000..2eb2649 --- /dev/null +++ b/.env @@ -0,0 +1,11 @@ +GITHUB_WEBHOOK_SECRET=84298ed9f2470f159b48e36e76eb90eeac061941 +GITHUB_APP_ID=1325944 +GITHUB_PRIVATE_KEY_PATH=./keys/private-key.pem +google_API_KEY=AIzaSyAvrxOyAVzPVcnzxuD0mjKVDyS2bNWfC10 +export_GOOGLE_API_KEY=AlzaSyCHjfdo3w160Dd5yTVJD409pWmigOJEg +GITHUB_REPOSITORY=web4application/enclove-ai +PR_NUMBER=123 +export_GEMINI_API_KEY= +OPENAI_Api_KEY=gG1uZhj50x1lYFKrrB5kT3BlbkFJXP3R63ExWT9lkcHI0pRq +export GITHUB_TOKEN=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 +GITHUB_TOKEN=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 diff --git a/.env.local b/.env.local deleted file mode 100644 index 91831a5..0000000 --- a/.env.local +++ /dev/null @@ -1,9 +0,0 @@ -OPENAI_API_KEY=AIzaSyAvrxOyAVzPVcnzxuD0mjKVDyS2bNWfC10 -GOOGLE_API_KEY=AlzaSyCHjfdo3w160Dd5yTVJD409pWmigOJEg -GITHUB_TOKEN=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 -GITHUB_REPOSITORY=web4application/enclove-ai -PR_NUMBER=123 -GITHUB_TOKEN=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 -GITHUB_TOKEN=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 -export_GEMINI_API_KEY= -Enclove_key=SHA256:azbCLWXHqrgAouTNtisS8C0xUYD3VnH+QsxmHc2sMas= diff --git a/.github/workflows/Deploy.yaml b/.github/workflows/Deploy.yaml deleted file mode 100644 index b9e862f..0000000 --- a/.github/workflows/Deploy.yaml +++ /dev/null @@ -1,40 +0,0 @@ -name: Deploy enclov-AI to Kubernetes - -on: - push: - branches: [main] - -permissions: - contents: read - -jobs: - build_and_deploy: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - - - name: Log in to Docker Hub - uses: docker/login-action@v2 - with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - - - name: Build and push Docker image - uses: docker/build-push-action@v4 - with: - push: true - tags: your-dockerhub-username/enclov-ai:latest - - - name: Set up kubectl - uses: azure/setup-kubectl@v3 - with: - version: 'latest' - - - name: Deploy to Kubernetes - run: kubectl apply -f k8s/ - env: - KUBECONFIG: ${{ secrets.KUBECONFIG }} diff --git a/.github/workflows/ai_pr_review.yml b/.github/workflows/ai-code-review.yml similarity index 66% rename from .github/workflows/ai_pr_review.yml rename to .github/workflows/ai-code-review.yml index 002235f..c30dbf6 100644 --- a/.github/workflows/ai_pr_review.yml +++ b/.github/workflows/ai-code-review.yml @@ -7,10 +7,13 @@ on: jobs: ai_review: runs-on: ubuntu-latest + steps: - - uses: actions/checkout@v3 - - name: AI Code Reviewer - uses: web4application/ai-code-reviewer@main + - name: Checkout code + uses: actions/checkout@v3 + + - name: Run AI Code Reviewer + uses: ./ai-code-reviewer with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 0000000..3f53646 --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,18 @@ +name: Docker Image CI + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + - name: Build the Docker image + run: docker build . --file Dockerfile --tag my-image-name:$(date +%s) diff --git a/.github/workflows/hugo.yml b/.github/workflows/hugo.yml deleted file mode 100644 index a8cf471..0000000 --- a/.github/workflows/hugo.yml +++ /dev/null @@ -1,74 +0,0 @@ -# Sample workflow for building and deploying a Hugo site to GitHub Pages -name: Deploy Hugo site to Pages - -on: - # Runs on pushes targeting the default branch - push: - branches: ["main"] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. -# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. -concurrency: - group: "pages" - cancel-in-progress: false - -# Default to bash -defaults: - run: - shell: bash - -jobs: - # Build job - build: - runs-on: ubuntu-latest - env: - HUGO_VERSION: 0.128.0 - steps: - - name: Install Hugo CLI - run: | - wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ - && sudo dpkg -i ${{ runner.temp }}/hugo.deb - - name: Install Dart Sass - run: sudo snap install dart-sass - - name: Checkout - uses: actions/checkout@v4 - with: - submodules: recursive - - name: Setup Pages - id: pages - uses: actions/configure-pages@v5 - - name: Install Node.js dependencies - run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" - - name: Build with Hugo - env: - HUGO_CACHEDIR: ${{ runner.temp }}/hugo_cache - HUGO_ENVIRONMENT: production - run: | - hugo \ - --minify \ - --baseURL "${{ steps.pages.outputs.base_url }}/" - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - with: - path: ./public - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 diff --git a/.github/workflows/jekyll-docker.yml b/.github/workflows/jekyll-docker.yml new file mode 100644 index 0000000..3d0eedb --- /dev/null +++ b/.github/workflows/jekyll-docker.yml @@ -0,0 +1,20 @@ +name: Jekyll site CI + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + - name: Build the site in the jekyll/builder container + run: | + docker run \ + -v ${{ github.workspace }}:/srv/jekyll -v ${{ github.workspace }}/_site:/srv/jekyll/_site \ + jekyll/builder:latest /bin/bash -c "chmod -R 777 /srv/jekyll && jekyll build --future" diff --git a/.github/workflows/jekyll-gh-pages.yml b/.github/workflows/jekyll-gh-pages.yml deleted file mode 100644 index e31d81c..0000000 --- a/.github/workflows/jekyll-gh-pages.yml +++ /dev/null @@ -1,51 +0,0 @@ -# Sample workflow for building and deploying a Jekyll site to GitHub Pages -name: Deploy Jekyll with GitHub Pages dependencies preinstalled - -on: - # Runs on pushes targeting the default branch - push: - branches: ["main"] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. -# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. -concurrency: - group: "pages" - cancel-in-progress: false - -jobs: - # Build job - build: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Setup Pages - uses: actions/configure-pages@v5 - - name: Build with Jekyll - uses: actions/jekyll-build-pages@v1 - with: - source: ./ - destination: ./_site - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9dfa0ed --- /dev/null +++ b/.gitignore @@ -0,0 +1,50 @@ +# Python +__pycache__/ +*.py[cod] +*.pyo +*.pyd +env/ +venv/ +ENV/ +.env +*.env + +# Node.js +node_modules/ +build/ +dist/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Docker +*.log +docker-compose.override.yml +.env + +# VSCode +.vscode/ + +# MacOS +.DS_Store + +# Editors and IDEs +*.swp +*.swo +*.idea/ +*.iml + +# Logs +*.log + +# Coverage reports +htmlcov/ +.coverage +.coverage.* + +# pytest cache +.cache/ +.pytest_cache/ + +# mypy +.mypy_cache/ diff --git a/Bash.sh b/Bash.sh deleted file mode 100644 index 5aadeb1..0000000 --- a/Bash.sh +++ /dev/null @@ -1,8 +0,0 @@ -docker build --build-arg CONFIGCAT_AUTH_KEY=yourkeyhere --build-arg JOB_ID=1234 -t myreactapp . -docker run -p 3000:3000 -e JOB_ID=1234 myreactapp -redis-server -uvicorn enclov_ai_backend:app --reload -celery -A enclov_ai_backend.celery_app worker --loglevel=info -pip install fastapi uvicorn celery redis pydantic mlflow optuna shap -pip install -r requirements.txt - diff --git a/Docker-compose.yml b/Docker-compose.yml index 9880f58..80b9df7 100644 --- a/Docker-compose.yml +++ b/Docker-compose.yml @@ -1,36 +1,22 @@ -version: '3.8' - +version: "3.9" services: backend: - build: ./backend - container_name: enclov_backend - env_file: .env - command: uvicorn app.main:app --host 0.0.0.0 --port 8000 + build: . + ports: + - "8000:8000" volumes: - - ./backend:/code - depends_on: - - redis - - celery: - build: ./backend - container_name: enclov_celery - command: celery -A app.celery_worker worker --loglevel=info - env_file: .env - depends_on: - - redis + - .:/app + environment: + - MODEL_PROVIDER=openai + - OPENAI_API_KEY=${Sk-gG1uZhj50x1lYFKrrB5kT3BlbkFJXP3R63ExWT9lkcHI0pRq +} - redis: - image: redis:alpine - container_name: enclov_redis - - nginx: - image: nginx:stable - container_name: enclov_nginx - volumes: - - ./nginx/nginx.conf:/etc/nginx/nginx.conf - - /etc/letsencrypt:/etc/letsencrypt + frontend: + build: + context: ./frontend ports: - - "80:80" - - "443:443" - depends_on: - - backend + - "5173:5173" + command: ["npm", "run", "dev"] + volumes: + - ./frontend:/app + working_dir: /app diff --git a/Dockerfile b/Dockerfile index 16e6c88..4cd0a39 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,52 +1,65 @@ -# --- Stage 1: Build React frontend --- -FROM node:18-alpine AS frontend-builder - -WORKDIR /app - -COPY frontend/package*.json ./ -RUN npm install - -COPY frontend/ ./ -ARG REACT_APP_CONFIGCAT_ENV -ENV REACT_APP_CONFIGCAT_ENV=$REACT_APP_CONFIGCAT_ENV - -RUN npm run build - -# --- Stage 2: Build backend (FastAPI with Uvicorn) --- -FROM python:3.11-slim AS backend-builder - +# Use Ubuntu base +FROM ubuntu:22.04 + +# Set non-interactive mode for apt +ENV DEBIAN_FRONTEND=noninteractive + +# Install build tools, Python, Ruby +RUN apt-get update && apt-get install -y \ + python3 python3-pip \ + ruby-full \ + build-essential \ + g++ \ + git \ + curl \ + && rm -rf /var/lib/apt/lists/* + +# Install Ruby bundler +RUN gem install bundler + +# Create working dir WORKDIR /app -# Install backend dependencies -COPY backend/requirements.txt . -RUN pip install --no-cache-dir -r requirements.txt +# Copy files +COPY . . -COPY backend/ . +# Install Python deps +RUN pip3 install -r requirements.txt -# --- Stage 3: Final image, serve React with Nginx and run FastAPI --- -FROM nginx:stable-alpine +# Install Ruby deps (if Gemfile exists) +RUN bundle install || true -# Remove default nginx static content -RUN rm -rf /usr/share/nginx/html/* +# Build C++ (optional) +RUN g++ -Wall -std=c++17 -o app main.cpp || true -# Copy built React files from frontend-builder -COPY --from=frontend-builder /app/build /usr/share/nginx/html +# Entry point prints help +CMD ["make", "help"] -# Copy backend files and virtualenv -COPY --from=backend-builder /app /app +# Base Python stage +FROM python:3.11-slim as python-build +WORKDIR /app/python +COPY python/requirements.txt . +RUN pip install -r requirements.txt +COPY python/ . -# Copy nginx config to serve React SPA (support client-side routing) -COPY nginx.conf /etc/nginx/conf.d/default.conf +# Base C++ stage +FROM gcc:12 as cpp-build +WORKDIR /app/cpp +COPY cpp/ . +RUN make -# Install python & dependencies for backend (slim + uvicorn) -RUN apk add --no-cache python3 py3-pip -RUN pip3 install --no-cache-dir fastapi uvicorn +# Base Ruby stage +FROM ruby:3.2 as ruby-build +WORKDIR /app/ruby +COPY ruby/ . +RUN bundle install -# Expose ports -EXPOSE 80 8000 +# Final image combining all +FROM debian:bookworm-slim +WORKDIR /app -# Run both Nginx and Uvicorn backend with a small script -COPY start.sh /start.sh -RUN chmod +x /start.sh +COPY --from=python-build /app/python /app/python +COPY --from=cpp-build /app/cpp/bin /app/cpp/bin +COPY --from=ruby-build /app/ruby /app/ruby -CMD ["/start.sh"] +CMD ["bash"] diff --git a/createEnclovAppWithLLM.py b/Docs/createEnclovAppWithLLM.py similarity index 100% rename from createEnclovAppWithLLM.py rename to Docs/createEnclovAppWithLLM.py diff --git a/enclov_ai_backend.py b/Docs/enclov_ai_backend.py similarity index 100% rename from enclov_ai_backend.py rename to Docs/enclov_ai_backend.py diff --git a/generate_docs.py b/Docs/generate_docs.py similarity index 100% rename from generate_docs.py rename to Docs/generate_docs.py diff --git a/repo_analyzer.py b/Docs/repo_analyzer.py similarity index 100% rename from repo_analyzer.py rename to Docs/repo_analyzer.py diff --git a/task_extractor.py b/Docs/task_extractor.py similarity index 100% rename from task_extractor.py rename to Docs/task_extractor.py diff --git a/Main/gh-repo-archive.1 b/Main/gh-repo-archive.1 deleted file mode 100644 index 849fc47..0000000 --- a/Main/gh-repo-archive.1 +++ /dev/null @@ -1,42 +0,0 @@ -.nh -.TH "GH-REPO-ARCHIVE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-archive - Archive a repository - - -.SH SYNOPSIS -\fBgh repo archive [] [flags]\fR - - -.SH DESCRIPTION -Archive a GitHub repository. - -.PP -With no argument, archives the current repository. - - -.SH OPTIONS -.TP -\fB-y\fR, \fB--yes\fR -Skip the confirmation prompt - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-autolink-create.1 b/Main/gh-repo-autolink-create.1 deleted file mode 100644 index 51111a0..0000000 --- a/Main/gh-repo-autolink-create.1 +++ /dev/null @@ -1,82 +0,0 @@ -.nh -.TH "GH-REPO-AUTOLINK-CREATE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-autolink-create - Create a new autolink reference - - -.SH SYNOPSIS -\fBgh repo autolink create [flags]\fR - - -.SH DESCRIPTION -Create a new autolink reference for a repository. - -.PP -The \fBkeyPrefix\fR argument specifies the prefix that will generate a link when it is appended by certain characters. - -.PP -The \fBurlTemplate\fR argument specifies the target URL that will be generated when the keyPrefix is found, which -must contain \fB\fR variable for the reference number. - -.PP -By default, autolinks are alphanumeric with \fB--numeric\fR flag used to create a numeric autolink. - -.PP -The \fB\fR variable behavior differs depending on whether the autolink is alphanumeric or numeric: -.IP \(bu 2 -alphanumeric: matches \fBA-Z\fR (case insensitive), \fB0-9\fR, and \fB-\fR -.IP \(bu 2 -numeric: matches \fB0-9\fR - -.PP -If the template contains multiple instances of \fB\fR, only the first will be replaced. - - -.SH OPTIONS -.TP -\fB-n\fR, \fB--numeric\fR -Mark autolink as numeric - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH ALIASES -gh repo autolink new - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH EXAMPLE -.EX -# Create an alphanumeric autolink to example.com for the key prefix "TICKET-". -# Generates https://example.com/TICKET?query=123abc from "TICKET-123abc". -$ gh repo autolink create TICKET- "https://example.com/TICKET?query=" - -# Create a numeric autolink to example.com for the key prefix "STORY-". -# Generates https://example.com/STORY?id=123 from "STORY-123". -$ gh repo autolink create STORY- "https://example.com/STORY?id=" --numeric - -.EE - - -.SH SEE ALSO -\fBgh-repo-autolink(1)\fR diff --git a/Main/gh-repo-autolink-delete.1 b/Main/gh-repo-autolink-delete.1 deleted file mode 100644 index f04fe25..0000000 --- a/Main/gh-repo-autolink-delete.1 +++ /dev/null @@ -1,45 +0,0 @@ -.nh -.TH "GH-REPO-AUTOLINK-DELETE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-autolink-delete - Delete an autolink reference - - -.SH SYNOPSIS -\fBgh repo autolink delete [flags]\fR - - -.SH DESCRIPTION -Delete an autolink reference for a repository. - - -.SH OPTIONS -.TP -\fB--yes\fR -Confirm deletion without prompting - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo-autolink(1)\fR diff --git a/Main/gh-repo-autolink-list.1 b/Main/gh-repo-autolink-list.1 deleted file mode 100644 index 691ca94..0000000 --- a/Main/gh-repo-autolink-list.1 +++ /dev/null @@ -1,68 +0,0 @@ -.nh -.TH "GH-REPO-AUTOLINK-LIST" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-autolink-list - List autolink references for a GitHub repository - - -.SH SYNOPSIS -\fBgh repo autolink list [flags]\fR - - -.SH DESCRIPTION -Gets all autolink references that are configured for a repository. - -.PP -Information about autolinks is only available to repository administrators. - - -.SH OPTIONS -.TP -\fB-q\fR, \fB--jq\fR \fB\fR -Filter JSON output using a jq expression - -.TP -\fB--json\fR \fB\fR -Output JSON with the specified fields - -.TP -\fB-t\fR, \fB--template\fR \fB\fR -Format JSON output using a Go template; see "gh help formatting" - -.TP -\fB-w\fR, \fB--web\fR -List autolink references in the web browser - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH ALIASES -gh repo autolink ls - - -.SH JSON FIELDS -\fBid\fR, \fBisAlphanumeric\fR, \fBkeyPrefix\fR, \fBurlTemplate\fR - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo-autolink(1)\fR diff --git a/Main/gh-repo-autolink-view.1 b/Main/gh-repo-autolink-view.1 deleted file mode 100644 index 4476dd7..0000000 --- a/Main/gh-repo-autolink-view.1 +++ /dev/null @@ -1,57 +0,0 @@ -.nh -.TH "GH-REPO-AUTOLINK-VIEW" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-autolink-view - View an autolink reference - - -.SH SYNOPSIS -\fBgh repo autolink view [flags]\fR - - -.SH DESCRIPTION -View an autolink reference for a repository. - - -.SH OPTIONS -.TP -\fB-q\fR, \fB--jq\fR \fB\fR -Filter JSON output using a jq expression - -.TP -\fB--json\fR \fB\fR -Output JSON with the specified fields - -.TP -\fB-t\fR, \fB--template\fR \fB\fR -Format JSON output using a Go template; see "gh help formatting" - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH JSON FIELDS -\fBid\fR, \fBisAlphanumeric\fR, \fBkeyPrefix\fR, \fBurlTemplate\fR - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo-autolink(1)\fR diff --git a/Main/gh-repo-autolink.1 b/Main/gh-repo-autolink.1 deleted file mode 100644 index 506e05d..0000000 --- a/Main/gh-repo-autolink.1 +++ /dev/null @@ -1,64 +0,0 @@ -.nh -.TH "GH-REPO-AUTOLINK" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-autolink - Manage autolink references - - -.SH SYNOPSIS -\fBgh repo autolink [flags]\fR - - -.SH DESCRIPTION -Autolinks link issues, pull requests, commit messages, and release descriptions to external third-party services. - -.PP -Autolinks require \fBadmin\fR role to view or manage. - -.PP -For more information, see -\[la]https://docs.github.com/en/repositories/managing\-your\-repositorys\-settings\-and\-features/managing\-repository\-settings/configuring\-autolinks\-to\-reference\-external\-resources\[ra] - - -.SH AVAILABLE COMMANDS -.TP -\fBgh-repo-autolink-create(1)\fR -Create a new autolink reference - -.TP -\fBgh-repo-autolink-delete(1)\fR -Delete an autolink reference - -.TP -\fBgh-repo-autolink-list(1)\fR -List autolink references for a GitHub repository - -.TP -\fBgh-repo-autolink-view(1)\fR -View an autolink reference - - -.SH OPTIONS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-clone.1 b/Main/gh-repo-clone.1 deleted file mode 100644 index 94c2b9d..0000000 --- a/Main/gh-repo-clone.1 +++ /dev/null @@ -1,79 +0,0 @@ -.nh -.TH "GH-REPO-CLONE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-clone - Clone a repository locally - - -.SH SYNOPSIS -\fBgh repo clone [] [-- ...]\fR - - -.SH DESCRIPTION -Clone a GitHub repository locally. Pass additional \fBgit clone\fR flags by listing -them after \fB--\fR\&. - -.PP -If the \fBOWNER/\fR portion of the \fBOWNER/REPO\fR repository argument is omitted, it -defaults to the name of the authenticating user. - -.PP -When a protocol scheme is not provided in the repository argument, the \fBgit_protocol\fR will be -chosen from your configuration, which can be checked via \fBgh config get git_protocol\fR\&. If the protocol -scheme is provided, the repository will be cloned using the specified protocol. - -.PP -If the repository is a fork, its parent repository will be added as an additional -git remote called \fBupstream\fR\&. The remote name can be configured using \fB--upstream-remote-name\fR\&. -The \fB--upstream-remote-name\fR option supports an \fB@owner\fR value which will name -the remote after the owner of the parent repository. - -.PP -If the repository is a fork, its parent repository will be set as the default remote repository. - - -.SH OPTIONS -.TP -\fB-u\fR, \fB--upstream-remote-name\fR \fB (default "upstream")\fR -Upstream remote name when cloning a fork - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH EXAMPLE -.EX -# Clone a repository from a specific org -$ gh repo clone cli/cli - -# Clone a repository from your own account -$ gh repo clone myrepo - -# Clone a repo, overriding git protocol configuration -$ gh repo clone https://github.com/cli/cli -$ gh repo clone git@github.com:cli/cli.git - -# Clone a repository to a custom directory -$ gh repo clone cli/cli workspace/cli - -# Clone a repository with additional git clone flags -$ gh repo clone cli/cli -- --depth=1 - -.EE - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-create.1 b/Main/gh-repo-create.1 deleted file mode 100644 index 1de5de6..0000000 --- a/Main/gh-repo-create.1 +++ /dev/null @@ -1,154 +0,0 @@ -.nh -.TH "GH-REPO-CREATE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-create - Create a new repository - - -.SH SYNOPSIS -\fBgh repo create [] [flags]\fR - - -.SH DESCRIPTION -Create a new GitHub repository. - -.PP -To create a repository interactively, use \fBgh repo create\fR with no arguments. - -.PP -To create a remote repository non-interactively, supply the repository name and one of \fB--public\fR, \fB--private\fR, or \fB--internal\fR\&. -Pass \fB--clone\fR to clone the new repository locally. - -.PP -If the \fBOWNER/\fR portion of the \fBOWNER/REPO\fR name argument is omitted, it -defaults to the name of the authenticating user. - -.PP -To create a remote repository from an existing local repository, specify the source directory with \fB--source\fR\&. -By default, the remote repository name will be the name of the source directory. - -.PP -Pass \fB--push\fR to push any local commits to the new repository. If the repo is bare, this will mirror all refs. - -.PP -For language or platform .gitignore templates to use with \fB--gitignore\fR, -\[la]https://github.com/github/gitignore\[ra]\&. - -.PP -For license keywords to use with \fB--license\fR, run \fBgh repo license list\fR or visit -\[la]https://choosealicense.com\[ra]\&. - -.PP -The repo is created with the configured repository default branch, see -\[la]https://docs.github.com/en/account\-and\-profile/setting\-up\-and\-managing\-your\-personal\-account\-on\-github/managing\-user\-account\-settings/managing\-the\-default\-branch\-name\-for\-your\-repositories\[ra]\&. - - -.SH OPTIONS -.TP -\fB--add-readme\fR -Add a README file to the new repository - -.TP -\fB-c\fR, \fB--clone\fR -Clone the new repository to the current directory - -.TP -\fB-d\fR, \fB--description\fR \fB\fR -Description of the repository - -.TP -\fB--disable-issues\fR -Disable issues in the new repository - -.TP -\fB--disable-wiki\fR -Disable wiki in the new repository - -.TP -\fB-g\fR, \fB--gitignore\fR \fB\fR -Specify a gitignore template for the repository - -.TP -\fB-h\fR, \fB--homepage\fR \fB\fR -Repository home page URL - -.TP -\fB--include-all-branches\fR -Include all branches from template repository - -.TP -\fB--internal\fR -Make the new repository internal - -.TP -\fB-l\fR, \fB--license\fR \fB\fR -Specify an Open Source License for the repository - -.TP -\fB--private\fR -Make the new repository private - -.TP -\fB--public\fR -Make the new repository public - -.TP -\fB--push\fR -Push local commits to the new repository - -.TP -\fB-r\fR, \fB--remote\fR \fB\fR -Specify remote name for the new repository - -.TP -\fB-s\fR, \fB--source\fR \fB\fR -Specify path to local repository to use as source - -.TP -\fB-t\fR, \fB--team\fR \fB\fR -The name of the organization team to be granted access - -.TP -\fB-p\fR, \fB--template\fR \fB\fR -Make the new repository based on a template repository - - -.SH ALIASES -gh repo new - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH EXAMPLE -.EX -# Create a repository interactively -$ gh repo create - -# Create a new remote repository and clone it locally -$ gh repo create my-project --public --clone - -# Create a new remote repository in a different organization -$ gh repo create my-org/my-project --public - -# Create a remote repository from the current directory -$ gh repo create my-project --private --source=. --remote=upstream - -.EE - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-delete.1 b/Main/gh-repo-delete.1 deleted file mode 100644 index 6d47a75..0000000 --- a/Main/gh-repo-delete.1 +++ /dev/null @@ -1,46 +0,0 @@ -.nh -.TH "GH-REPO-DELETE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-delete - Delete a repository - - -.SH SYNOPSIS -\fBgh repo delete [] [flags]\fR - - -.SH DESCRIPTION -Delete a GitHub repository. - -.PP -With no argument, deletes the current repository. Otherwise, deletes the specified repository. - -.PP -Deletion requires authorization with the \fBdelete_repo\fR scope. -To authorize, run \fBgh auth refresh -s delete_repo\fR - - -.SH OPTIONS -.TP -\fB--yes\fR -Confirm deletion without prompting - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-deploy-key-add.1 b/Main/gh-repo-deploy-key-add.1 deleted file mode 100644 index 8f4b097..0000000 --- a/Main/gh-repo-deploy-key-add.1 +++ /dev/null @@ -1,63 +0,0 @@ -.nh -.TH "GH-REPO-DEPLOY-KEY-ADD" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-deploy-key-add - Add a deploy key to a GitHub repository - - -.SH SYNOPSIS -\fBgh repo deploy-key add [flags]\fR - - -.SH DESCRIPTION -Add a deploy key to a GitHub repository. - -.PP -Note that any key added by gh will be associated with the current authentication token. -If you de-authorize the GitHub CLI app or authentication token from your account, any -deploy keys added by GitHub CLI will be removed as well. - - -.SH OPTIONS -.TP -\fB-w\fR, \fB--allow-write\fR -Allow write access for the key - -.TP -\fB-t\fR, \fB--title\fR \fB\fR -Title of the new key - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH EXAMPLE -.EX -# Generate a passwordless SSH key and add it as a deploy key to a repository -$ ssh-keygen -t ed25519 -C "my description" -N "" -f ~/.ssh/gh-test -$ gh repo deploy-key add ~/.ssh/gh-test.pub - -.EE - - -.SH SEE ALSO -\fBgh-repo-deploy-key(1)\fR diff --git a/Main/gh-repo-deploy-key-delete.1 b/Main/gh-repo-deploy-key-delete.1 deleted file mode 100644 index dfd34cf..0000000 --- a/Main/gh-repo-deploy-key-delete.1 +++ /dev/null @@ -1,35 +0,0 @@ -.nh -.TH "GH-REPO-DEPLOY-KEY-DELETE" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-deploy-key-delete - Delete a deploy key from a GitHub repository - - -.SH SYNOPSIS -\fBgh repo deploy-key delete [flags]\fR - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo-deploy-key(1)\fR diff --git a/Main/gh-repo-deploy-key-list.1 b/Main/gh-repo-deploy-key-list.1 deleted file mode 100644 index 9b4c6a6..0000000 --- a/Main/gh-repo-deploy-key-list.1 +++ /dev/null @@ -1,57 +0,0 @@ -.nh -.TH "GH-REPO-DEPLOY-KEY-LIST" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-deploy-key-list - List deploy keys in a GitHub repository - - -.SH SYNOPSIS -\fBgh repo deploy-key list [flags]\fR - - -.SH OPTIONS -.TP -\fB-q\fR, \fB--jq\fR \fB\fR -Filter JSON output using a jq expression - -.TP -\fB--json\fR \fB\fR -Output JSON with the specified fields - -.TP -\fB-t\fR, \fB--template\fR \fB\fR -Format JSON output using a Go template; see "gh help formatting" - - -.SH OPTIONS INHERITED FROM PARENT COMMANDS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH ALIASES -gh repo deploy-key ls - - -.SH JSON FIELDS -\fBcreatedAt\fR, \fBid\fR, \fBkey\fR, \fBreadOnly\fR, \fBtitle\fR - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo-deploy-key(1)\fR diff --git a/Main/gh-repo-deploy-key.1 b/Main/gh-repo-deploy-key.1 deleted file mode 100644 index 539117d..0000000 --- a/Main/gh-repo-deploy-key.1 +++ /dev/null @@ -1,49 +0,0 @@ -.nh -.TH "GH-REPO-DEPLOY-KEY" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-deploy-key - Manage deploy keys in a repository - - -.SH SYNOPSIS -\fBgh repo deploy-key [flags]\fR - - -.SH AVAILABLE COMMANDS -.TP -\fBgh-repo-deploy-key-add(1)\fR -Add a deploy key to a GitHub repository - -.TP -\fBgh-repo-deploy-key-delete(1)\fR -Delete a deploy key from a GitHub repository - -.TP -\fBgh-repo-deploy-key-list(1)\fR -List deploy keys in a GitHub repository - - -.SH OPTIONS -.TP -\fB-R\fR, \fB--repo\fR \fB<[HOST/]OWNER/REPO>\fR -Select another repository using the [HOST/]OWNER/REPO format - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-edit.1 b/Main/gh-repo-edit.1 deleted file mode 100644 index 07c6a4d..0000000 --- a/Main/gh-repo-edit.1 +++ /dev/null @@ -1,155 +0,0 @@ -.nh -.TH "GH-REPO-EDIT" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-edit - Edit repository settings - - -.SH SYNOPSIS -\fBgh repo edit [] [flags]\fR - - -.SH DESCRIPTION -Edit repository settings. - -.PP -To toggle a setting off, use the \fB--=false\fR syntax. - -.PP -Changing repository visibility can have unexpected consequences including but not limited to: -.IP \(bu 2 -Losing stars and watchers, affecting repository ranking -.IP \(bu 2 -Detaching public forks from the network -.IP \(bu 2 -Disabling push rulesets -.IP \(bu 2 -Allowing access to GitHub Actions history and logs - -.PP -When the \fB--visibility\fR flag is used, \fB--accept-visibility-change-consequences\fR flag is required. - -.PP -For information on all the potential consequences, see -\[la]https://gh.io/setting\-repository\-visibility\[ra]\&. - - -.SH OPTIONS -.TP -\fB--accept-visibility-change-consequences\fR -Accept the consequences of changing the repository visibility - -.TP -\fB--add-topic\fR \fB\fR -Add repository topic - -.TP -\fB--allow-forking\fR -Allow forking of an organization repository - -.TP -\fB--allow-update-branch\fR -Allow a pull request head branch that is behind its base branch to be updated - -.TP -\fB--default-branch\fR \fB\fR -Set the default branch name for the repository - -.TP -\fB--delete-branch-on-merge\fR -Delete head branch when pull requests are merged - -.TP -\fB-d\fR, \fB--description\fR \fB\fR -Description of the repository - -.TP -\fB--enable-advanced-security\fR -Enable advanced security in the repository - -.TP -\fB--enable-auto-merge\fR -Enable auto-merge functionality - -.TP -\fB--enable-discussions\fR -Enable discussions in the repository - -.TP -\fB--enable-issues\fR -Enable issues in the repository - -.TP -\fB--enable-merge-commit\fR -Enable merging pull requests via merge commit - -.TP -\fB--enable-projects\fR -Enable projects in the repository - -.TP -\fB--enable-rebase-merge\fR -Enable merging pull requests via rebase - -.TP -\fB--enable-secret-scanning\fR -Enable secret scanning in the repository - -.TP -\fB--enable-secret-scanning-push-protection\fR -Enable secret scanning push protection in the repository. Secret scanning must be enabled first - -.TP -\fB--enable-squash-merge\fR -Enable merging pull requests via squashed commit - -.TP -\fB--enable-wiki\fR -Enable wiki in the repository - -.TP -\fB-h\fR, \fB--homepage\fR \fB\fR -Repository home page URL - -.TP -\fB--remove-topic\fR \fB\fR -Remove repository topic - -.TP -\fB--template\fR -Make the repository available as a template repository - -.TP -\fB--visibility\fR \fB\fR -Change the visibility of the repository to {public,private,internal} - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH EXAMPLE -.EX -# Enable issues and wiki -$ gh repo edit --enable-issues --enable-wiki - -# Disable projects -$ gh repo edit --enable-projects=false - -.EE - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-fork.1 b/Main/gh-repo-fork.1 deleted file mode 100644 index a7d3e9f..0000000 --- a/Main/gh-repo-fork.1 +++ /dev/null @@ -1,74 +0,0 @@ -.nh -.TH "GH-REPO-FORK" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-fork - Create a fork of a repository - - -.SH SYNOPSIS -\fBgh repo fork [] [-- ...] [flags]\fR - - -.SH DESCRIPTION -Create a fork of a repository. - -.PP -With no argument, creates a fork of the current repository. Otherwise, forks -the specified repository. - -.PP -By default, the new fork is set to be your \fBorigin\fR remote and any existing -origin remote is renamed to \fBupstream\fR\&. To alter this behavior, you can set -a name for the new fork's remote with \fB--remote-name\fR\&. - -.PP -The \fBupstream\fR remote will be set as the default remote repository. - -.PP -Additional \fBgit clone\fR flags can be passed after \fB--\fR\&. - - -.SH OPTIONS -.TP -\fB--clone\fR -Clone the fork - -.TP -\fB--default-branch-only\fR -Only include the default branch in the fork - -.TP -\fB--fork-name\fR \fB\fR -Rename the forked repository - -.TP -\fB--org\fR \fB\fR -Create the fork in an organization - -.TP -\fB--remote\fR -Add a git remote for the fork - -.TP -\fB--remote-name\fR \fB (default "origin")\fR -Specify the name for the new remote - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo(1)\fR diff --git a/Main/gh-repo-gitignore-list.1 b/Main/gh-repo-gitignore-list.1 deleted file mode 100644 index cf30a85..0000000 --- a/Main/gh-repo-gitignore-list.1 +++ /dev/null @@ -1,33 +0,0 @@ -.nh -.TH "GH-REPO-GITIGNORE-LIST" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-gitignore-list - List available repository gitignore templates - - -.SH SYNOPSIS -\fBgh repo gitignore list [flags]\fR - - -.SH ALIASES -gh repo gitignore ls - - -.SH EXIT CODES -0: Successful execution - -.PP -1: Error - -.PP -2: Command canceled - -.PP -4: Authentication required - -.PP -NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information. - - -.SH SEE ALSO -\fBgh-repo-gitignore(1)\fR diff --git a/Main/gh-repo-gitignore-view.1 b/Main/gh-repo-gitignore-view.1 deleted file mode 100644 index 1a2935c..0000000 --- a/Main/gh-repo-gitignore-view.1 +++ /dev/null @@ -1,56 +0,0 @@ -.nh -.TH "GH-REPO-GITIGNORE-VIEW" "1" "May 2025" "GitHub CLI 2.73.0" "GitHub CLI manual" - -.SH NAME -gh-repo-gitignore-view - View an available repository gitignore template - - -.SH SYNOPSIS -\fBgh repo gitignore view