# Example Workflow ```yaml name: test on: pull_request: branches: - main push: branches: - main jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 with: version: 2024.10.0 # [default: latest] mise version to install install: true # [default: true] run `mise install` install_args: "bun" # [default: ""] additional arguments to `mise install` cache: true # [default: true] cache mise using GitHub's cache experimental: true # [default: false] enable experimental features log_level: debug # [default: info] log level # automatically write this .tool-versions file tool_versions: | shellcheck 0.9.0 # or, if you prefer .mise.toml format: mise_toml: | [tools] shellcheck = "0.9.0" working_directory: app # [default: .] directory to run mise in reshim: false # [default: false] run `mise reshim -f` github_token: ${{ secrets.GITHUB_TOKEN }} # [default: ${{ github.token }}] GitHub token for API authentication - run: shellcheck scripts/*.sh test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 # .tool-versions will be read from repo root - run: node ./my_app.js ``` ## GitHub API Rate Limits When installing tools hosted on GitHub (like `gh`, `node`, `bun`, etc.), mise needs to make API calls to GitHub's releases API. Without authentication, these calls are subject to GitHub's rate limit of 60 requests per hour, which can cause installation failures. ```yaml - uses: jdx/mise-action@v2 with: github_token: ${{ secrets.GITHUB_TOKEN }} # your other configuration ``` **Note:** The action automatically uses `${{ github.token }}` as the default, so in most cases you don't need to explicitly provide it. However, if you encounter rate limit errors, make sure the token is being passed correctly. ## Alternative Installation Alternatively, mise is easy to use in GitHub Actions even without this: ```yaml jobs: build: steps: - run: | curl https://mise.run | sh echo "$HOME/.local/share/mise/bin" >> $GITHUB_PATH echo "$HOME/.local/share/mise/shims" >> $GITHUB_PATH ```