diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml
index 7d853ac..80cefbd 100644
--- a/.github/workflows/publish.yaml
+++ b/.github/workflows/publish.yaml
@@ -26,6 +26,13 @@ jobs:
         run: | 
           apt -y install curl
           curl --proto '=https' --tlsv1.2 -fsSL https://drop-sh.fullyjustified.net |sh
+      - uses: actions/cache@v3
+        name: Tectonic Cache
+        with:
+          path: ~/.cache/Tectonic
+          key: ${{ runner.os }}-tectonic-${{ hashFiles('**/*.tex') }}
+          restore-keys: |
+            ${{ runner.os }}-tectonic-
       - name: Compile latex
         run: ./tectonic main.tex
       - name: Rename PDF
@@ -35,6 +42,7 @@ jobs:
         env:
           NODE_OPTIONS: '--experimental-fetch' # if nodejs < 18
         with:
+          token: ${{ github.token }}
           files: |-
             ${{ steps.extract_branch.outputs.branch }}.pdf