diff --git a/.github/workflows/docs-check-links.yml b/.github/workflows/docs-check-links.yml new file mode 100644 index 00000000000..a22034c0686 --- /dev/null +++ b/.github/workflows/docs-check-links.yml @@ -0,0 +1,24 @@ +name: Check Links + +on: + push: + branches: [main, dev] + pull_request: + schedule: + # Run daily at 9am UTC + - cron: "0 9 * * *" + workflow_dispatch: # Allow manual trigger + +jobs: + link-checker: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Link Checker + uses: lycheeverse/lychee-action@v2 + with: + args: "**/*.md" + fail: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/packages/kilo-docs/lychee.toml b/packages/kilo-docs/lychee.toml new file mode 100644 index 00000000000..273aa2af3d3 --- /dev/null +++ b/packages/kilo-docs/lychee.toml @@ -0,0 +1,26 @@ +root_dir = "." +fallback_extensions = ["md"] +remap = ["kilo-docs/docs kilo-docs/pages"] + +format = "detailed" +max_redirects = 2 +exclude_path = ["node_modules"] + +accept = [ + "200", + "403", + "429", + "301", + "307", +] + +exclude = [ + 'https://synthetic.new/user-settings/api', + 'https://platform.slack-edge.com/img/add_to_slack.png', + 'https://console.groq.com/pages/models', + 'https://glama.ai/settings/gateway/api-keys', + '^https?://(api|console)\.mistral\.ai', + '^https?://(app|console)\.requesty\.ai', + '^https?://(cloud|console)\.google\.ai', + 'https://opencode.ai/pages/config' +]