From f5d53e50ee15940df64a2456e98f4e0eec618234 Mon Sep 17 00:00:00 2001 From: LionHeart <281330046+LionHeart4864@users.noreply.github.com> Date: Sat, 23 May 2026 23:16:51 +0330 Subject: [PATCH 1/3] Create skirk.yml - use github workflow instead of VPS --- .github/workflows/skirk.yml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/skirk.yml diff --git a/.github/workflows/skirk.yml b/.github/workflows/skirk.yml new file mode 100644 index 0000000..1e8621e --- /dev/null +++ b/.github/workflows/skirk.yml @@ -0,0 +1,32 @@ +name: Skirk Proxy + +on: + schedule: + - cron: '0 */5 * * *' + workflow_dispatch: + +jobs: + skirk: + runs-on: ubuntu-latest + timeout-minutes: 350 + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install skirk + run: | + curl -fsSL https://github.com/ShahabSL/Skirk/releases/latest/download/skirk-linux-amd64.tar.gz -o /tmp/skirk.tar.gz + mkdir -p /tmp/skirk-extract + tar -xzf /tmp/skirk.tar.gz -C /tmp/skirk-extract + sudo mv /tmp/skirk-extract/skirk /usr/local/bin/skirk + + - name: Run skirk exit + run: | + echo '${{ secrets.EXIT_JSON }}' > /tmp/exit.json + skirk serve-exit --config /tmp/exit.json & + + - name: Run skirk client + run: | + skirk serve-client --config '${{ secrets.CLIENT_SKIRK }}' --listen 127.0.0.1:18080 & + sleep infinity From aa226abcbf0aba0e5fba11fd786717b42ac690e2 Mon Sep 17 00:00:00 2001 From: LionHeart <281330046+LionHeart4864@users.noreply.github.com> Date: Sat, 23 May 2026 23:23:45 +0330 Subject: [PATCH 2/3] Update README.md for using github workflow instead of VPS --- README.md | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) diff --git a/README.md b/README.md index d8feb73..815a259 100644 --- a/README.md +++ b/README.md @@ -368,6 +368,107 @@ Each additional instance uses its own generated kit directory, service name, Google OAuth/Drive mailbox, proxy settings, cleanup flow, and performance tuning. +# SkirkUsingWorkflow + +This part shows how to set up and run a Skirk workflow using GitHub Actions and GitHub Codespaces. + +## Requirements + +* A GitHub account +* Access to GitHub Codespaces +* A private GitHub repository for the initial setup +* The Skirk client application + +## Phase 1 — Initial Setup in GitHub Codespaces + +1. Create or use a **private GitHub repository**. + +2. Open the repository in **GitHub Codespaces**. + +3. Follow the setup instructions from the following project: + + urlSkirk Repository[https://github.com/ShahabSL/Skirk](https://github.com/ShahabSL/Skirk) + +4. After the setup is completed, download the `skirk-kit` folder. + +5. Keep the following files from the folder: + + * `client.json` + * `client.skirk` + * `exit.json` + +--- + +## Phase 2 — Create the Workflow Repository + +1. Create a new **public GitHub repository**. + +2. You can use a name such as `SkirkUsingWorkflow`. + +3. Open your repository and go to: + + `Settings` → `Secrets and variables` → `Actions` + +4. Create the following **Repository Secrets**: + +### 1. CLIENT_JSON + +* Name: `CLIENT_JSON` +* Value: Copy and paste the contents of `client.json` + +### 2. CLIENT_SKIRK + +* Name: `CLIENT_SKIRK` +* Value: Copy and paste the contents of `client.skirk` + +### 3. EXIT_JSON + +* Name: `EXIT_JSON` +* Value: Copy and paste the contents of `exit.json` + +--- + +## Phase 3 — Add the GitHub Actions Workflow + +1. In your `SkirkUsingWorkflow` repository, go to: + + `Code` → `Add file` → `Create new file` + +2. Create the following file: + +```text +.github/workflows/skirk.yml +``` + +3. Copy the workflow content provided by this project into the file. +4. Commit and save the changes. + +--- + +## Phase 4 — Run the Workflow + +1. Open the `Actions` tab in your repository. +2. Select the workflow named `Skirk Proxy`. +3. Click `Run workflow`. + +--- + +## Phase 5 — Use the Generated Client Configuration + +1. Download and install the Skirk client application from: + + urlSkirk Releases[https://github.com/ShahabSL/Skirk/releases](https://github.com/ShahabSL/Skirk/releases) + +2. Copy the generated Skirk client configuration into the application. + +**Note: Disable the workflow whenever you do not need to run it using Skirk** +--- + +## Credits + +Special thanks to entity["people","ShahabSL","Creator of the Skirk project"] for creating the Skirk project. + + ## Documentation - [Install Guide](docs/install.md) From 399e4f98bab3b02fbe59aa7c2806f3ed0fda598c Mon Sep 17 00:00:00 2001 From: LionHeart <281330046+LionHeart4864@users.noreply.github.com> Date: Sun, 24 May 2026 00:29:12 +0330 Subject: [PATCH 3/3] Update README.md for using github workflow instead of VPS --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 815a259..77bcce6 100644 --- a/README.md +++ b/README.md @@ -370,7 +370,10 @@ tuning. # SkirkUsingWorkflow -This part shows how to set up and run a Skirk workflow using GitHub Actions and GitHub Codespaces. +This repository shows how to set up and run a Skirk workflow using GitHub Actions and GitHub Codespaces. + +image + ## Requirements @@ -387,7 +390,7 @@ This part shows how to set up and run a Skirk workflow using GitHub Actions and 3. Follow the setup instructions from the following project: - urlSkirk Repository[https://github.com/ShahabSL/Skirk](https://github.com/ShahabSL/Skirk) + Skirk Repository: [https://github.com/ShahabSL/Skirk](https://github.com/ShahabSL/Skirk) 4. After the setup is completed, download the `skirk-kit` folder. @@ -457,7 +460,7 @@ This part shows how to set up and run a Skirk workflow using GitHub Actions and 1. Download and install the Skirk client application from: - urlSkirk Releases[https://github.com/ShahabSL/Skirk/releases](https://github.com/ShahabSL/Skirk/releases) + Skirk Releases: [https://github.com/ShahabSL/Skirk/releases](https://github.com/ShahabSL/Skirk/releases) 2. Copy the generated Skirk client configuration into the application. @@ -466,7 +469,7 @@ This part shows how to set up and run a Skirk workflow using GitHub Actions and ## Credits -Special thanks to entity["people","ShahabSL","Creator of the Skirk project"] for creating the Skirk project. +Special thanks to ["people","ShahabSL","Creator of the Skirk project"] for creating the Skirk project. ## Documentation