GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com โ€” xdanger - Overview

@xdanger xdanger Follow
More
  • Overview
  • Repositories
  • Projects
  • Packages
  • Stars
  • Sponsoring
@xdanger
xdanger
Follow
View xdanger's full-sized avatar
๐ŸŽฏ
Focusing

yunjie xdanger

๐ŸŽฏ
Focusing
Follow
134 followers ยท 31 following
  • @taptap @xindong
  • United States
  • http://www.xdanger.com/
  • @xdanger
  • xdanger
  • in/xdanger

Achievements

Achievement: Pull Sharkx4Achievement: Pair Extraordinairex4Achievement: QuickdrawAchievement: YOLOAchievement: Public SponsorAchievement: Arctic Code Vault Contributor

Achievements

Achievement: Pull Sharkx4Achievement: Pair Extraordinairex4Achievement: QuickdrawAchievement: YOLOAchievement: Public SponsorAchievement: Arctic Code Vault Contributor

Highlights

  • Pro

Organizations

@xindong @taptap @krosdai @dirichlet-ai
More
  • Overview
  • Repositories
  • Projects
  • Packages
  • Stars
  • Sponsoring
xdanger/README.md

xdanger/xdanger

This repository hosts the reusable GitHub Actions workflows shared across the repositories under the xdanger account.

Reusable Workflows

Nothing here is inherited automatically. Other repositories must explicitly call these workflows as reusable workflows.

Claude Code Review

Automated PR review powered by claude-code-action. To use it in another repository, create .github/workflows/code-review.yml:

name: Code Review

on:
  pull_request:
    types: [opened, ready_for_review, reopened, synchronize]

permissions:
  actions: read
  contents: read
  id-token: write
  issues: write
  pull-requests: write

jobs:
  review:
    if: >-
      github.event.pull_request &&
      !github.event.pull_request.draft &&
      github.event.pull_request.head.repo.full_name == github.repository
    uses: xdanger/xdanger/.github/workflows/code-review.yml@v2
    with:
      pr_number: ${{ github.event.pull_request.number }}
      is_draft: ${{ github.event.pull_request.draft }}
      head_repo_full_name: ${{ github.event.pull_request.head.repo.full_name }}

head_repo_full_name is required rather than optional so the same-repo check fails closed if a caller forgets to pass it.

Prerequisites:

  1. Install the Claude GitHub App
  2. Keep id-token: write in the caller's permissions, as above. The review authenticates to the Claude API with Workload Identity Federation: claude-code-action exchanges the run's GitHub OIDC token for a short-lived access token, so no ANTHROPIC_API_KEY secret is needed.
  3. Make sure the organization's federation rule trusts the calling repository. The OIDC token carries the caller's subject, not this repository's, in one of two formats: repo:<owner>/<repo>:pull_request, or GitHub's immutable format repo:<owner>@<owner-id>/<repo>@<repo-id>:pull_request for repositories created, renamed, or transferred after July 15, 2026. Match on the repository_owner_id and event_name claims rather than a literal repo:<owner>/ prefix so both formats pass. A run the rule rejects fails at the token exchange.
  4. Set three configuration variables on the calling repository or its organization: FEDERATION_ORGANIZATION_ID (the Anthropic organization UUID), FEDERATION_RULE_ID (fdrl_..., the rule that trusts the caller), and FEDERATION_ACCOUNT_ID (svac_..., the service account the rule targets). A reusable workflow reads the caller's variables, so each organization uses its own rule, and the review fails fast if any is unset. All three are identifiers, not secrets: the exchange succeeds only if the rule's claims match the caller's OIDC token. Optionally, set FEDERATION_WORKSPACE_ID (wrkspc_...) to pick the workspace; leave it unset and the rule decides, which works only when the rule authorizes exactly one workspace. Either way, the service account must be a member of that workspace: enabling a rule for a workspace doesn't add it, and the exchange is rejected without it.

Requests go straight to https://api.anthropic.com. An ANTHROPIC_BASE_URL variable is ignored, because the federated access token is only valid against the Claude API.

The workflow skips draft PRs and fork PRs, has a 30-minute timeout, and follows the review guidelines defined in REVIEW.md.

Migrating from @v1

v2 replaces the ANTHROPIC_API_KEY secret with Workload Identity Federation. Point uses: at @v2 and delete the secrets: block: v2 no longer declares that secret, so passing it fails workflow validation. The ANTHROPIC_API_KEY secrets and the ANTHROPIC_BASE_URL variable can be removed once no caller is left on @v1.

Reviewing Dependabot PRs

claude-code-action aborts on any actor that is not a User, so bot-authored PRs need an allow-list. The allowed_bots input covers this and defaults to dependabot[bot] โ€” nothing to configure for the common case. To widen it, add allowed_bots: "dependabot[bot],renovate[bot]" to the with: block above, or pass '*' for every bot.

Passing an empty string does not disable bot reviews โ€” GitHub expressions treat '' as falsy, so it falls through to the default. Gate the job in your calling workflow instead.

Unlike v1, there is no API key to mirror into the Dependabot secret store: Dependabot-triggered runs read secrets from a separate store, but v2 reads no secrets at all. The federation variables are configuration variables, which Dependabot-triggered runs can read today, although GitHub does not document it yet (github/docs#43950).

Tooling

Run mise install after checkout to install the native AutoCorrect CLI used by formatting and pre-commit hooks.

  • Formatting: pnpm run format โ€” Prettier for JS/TS, AutoCorrect for CJK text spacing
  • Linting: pnpm run lint โ€” ESLint for JS/TS
  • Git hooks: Husky + lint-staged for pre-commit checks

Popular repositories Loading

  1. omarchy-monokai-nightfall-theme omarchy-monokai-nightfall-theme Public

    Monokai Nightfall: an Omarchy theme using the Monokai Pro palette

    Python 13 1

  2. xdanger.com xdanger.com Public

    A personal website powered by Astro

    MDX 5

  3. dotfiles dotfiles Public

    My personal `dotfiles` repo

    Python 4 1

  4. monitorme monitorme Public

    Monitor Server and alert me

    Ruby 3 2

  5. jekyll-theme-notion jekyll-theme-notion Public

    Forked from pages-themes/primer

    Primer is a Jekyll theme for GitHub Pages

    CSS 3 3

  6. agentic-coding agentic-coding Public archive

    Agentic Coding Guildelines

    Python 2

Something went wrong, please refresh the page to try again.
If the problem persists, check the GitHub status page or contact support.

Uh oh!

There was an error while loading. Please reload this page.

You are visitor 01402503 โ€” GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800ร—600. No cookies required.