From d73082f214454d0bbfc8fa289ef27d6618db1bc6 Mon Sep 17 00:00:00 2001 From: "remyx-ai[bot]" <289541483+remyx-ai[bot]@users.noreply.github.com> Date: Mon, 15 Jun 2026 21:25:09 +0000 Subject: [PATCH] Add Outrider recommendation workflow --- .github/workflows/outrider.yml | 54 ++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 .github/workflows/outrider.yml diff --git a/.github/workflows/outrider.yml b/.github/workflows/outrider.yml new file mode 100644 index 000000000000..b56ee31b4a14 --- /dev/null +++ b/.github/workflows/outrider.yml @@ -0,0 +1,54 @@ +name: Outrider + +# Daily cron that uses remyxai/outrider to pick a paper from +# engine.remyx.ai for this research interest and open a draft PR with a +# Claude-Code-scaffolded integration. +# +# Secrets needed (set in Settings → Secrets and variables → Actions): +# REMYX_API_KEY — engine.remyx.ai token +# ANTHROPIC_API_KEY — model-provider token (e.g. Anthropic, for the agent) +# +# The workflow's built-in GITHUB_TOKEN handles PR / Issue creation on +# this repo — no PAT required since the action runs in the target. + +on: + schedule: + # Daily at 14:00 UTC + - cron: '0 14 * * *' + workflow_dispatch: + +jobs: + recommend: + runs-on: ubuntu-latest + timeout-minutes: 60 + permissions: + contents: write + pull-requests: write + issues: write + env: + REMYX_API_KEY: ${{ secrets.REMYX_API_KEY }} + ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} + steps: + # Mint a remyx[bot] token from Remyx so the PR / Issue is authored by + # the Remyx GitHub App (not github-actions[bot]). The App private key + # stays on Remyx's side; this uses the REMYX_API_KEY already in secrets. + # If it can't be minted (e.g. App not installed), the token is empty and + # the action falls back to the workflow's built-in GITHUB_TOKEN. + - name: Mint Remyx bot token + id: remyx-bot + shell: bash + run: | + token="$(curl -sf -X POST -H "Authorization: Bearer ${{ secrets.REMYX_API_KEY }}" -H "Content-Type: application/json" -d "{\"repo\": \"${{ github.repository }}\"}" "https://engine.remyx.ai/api/v1.0/github/installation-token" | python3 -c "import sys, json; print(json.load(sys.stdin).get('token', ''))")" || token="" + echo "::add-mask::$token" + echo "token=$token" >> "$GITHUB_OUTPUT" + - uses: remyxai/outrider@v1 + with: + interest-id: 6998975a-5301-43f0-bb61-9560ad933cb0 + # remyx[bot] token (empty → action falls back to GITHUB_TOKEN). + github-token: ${{ steps.remyx-bot.outputs.token }} + # Disable the per-repo rate-limit window so manual and scheduled + # runs always evaluate the latest recommendation. Without this the + # default 7-day floor short-circuits runs at skipped_rate_limit + # (e.g. a manual re-run after the first auto-PR). Per-paper dedup + # (open PR / Issue for the same arxiv_id) still prevents duplicates. + rate-limit-days: '0'