feat(scripts): enhance find-unused.sh with deeper cross-referencing #1144
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Opencode Agents | |
| on: | |
| issues: | |
| types: [opened] | |
| pull_request_target: | |
| types: [opened] | |
| jobs: | |
| triage-issue: | |
| if: github.event_name == 'issues' | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| permissions: | |
| contents: read | |
| issues: write | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 1 | |
| - name: Install opencode | |
| run: | | |
| version="$(node -e "const fs=require('fs'); const parsed=JSON.parse(fs.readFileSync('constants.json','utf8')); process.stdout.write(String(parsed.opencodeVersion||'').trim().replace(/^v/,''));")" | |
| curl -fsSL https://opencode.ai/install | bash -s -- --version "$version" --no-modify-path | |
| - name: Triage issue | |
| env: | |
| OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }} | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| ISSUE_TITLE: ${{ github.event.issue.title }} | |
| ISSUE_BODY: ${{ github.event.issue.body }} | |
| run: | | |
| cat > /tmp/issue_prompt.txt <<'PROMPT_EOF' | |
| The following issue was just opened, triage it: | |
| PROMPT_EOF | |
| printf '\nTitle: %s\n\n%s\n' "$ISSUE_TITLE" "$ISSUE_BODY" >> /tmp/issue_prompt.txt | |
| opencode run --agent triage "$(cat /tmp/issue_prompt.txt)" | |
| duplicate-prs: | |
| if: github.event_name == 'pull_request_target' && github.event.pull_request.user.login != 'opencode-agent[bot]' | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 1 | |
| - name: Install opencode | |
| run: | | |
| version="$(node -e "const fs=require('fs'); const parsed=JSON.parse(fs.readFileSync('constants.json','utf8')); process.stdout.write(String(parsed.opencodeVersion||'').trim().replace(/^v/,''));")" | |
| curl -fsSL https://opencode.ai/install | bash -s -- --version "$version" --no-modify-path | |
| - name: Build prompt | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| PR_NUMBER: ${{ github.event.pull_request.number }} | |
| run: | | |
| { | |
| echo "Check for duplicate PRs related to this new PR:" | |
| echo "" | |
| echo "CURRENT_PR_NUMBER: $PR_NUMBER" | |
| echo "" | |
| echo "Title: $(gh pr view \"$PR_NUMBER\" --json title --jq .title)" | |
| echo "" | |
| echo "Description:" | |
| gh pr view "$PR_NUMBER" --json body --jq .body | |
| } > pr_info.txt | |
| - name: Check for duplicate PRs | |
| env: | |
| OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }} | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| PR_NUMBER: ${{ github.event.pull_request.number }} | |
| run: | | |
| opencode run --agent duplicate-pr "$(cat pr_info.txt)" > /tmp/comment_output.txt | |
| { | |
| echo "_The following comment was made by an LLM, it may be inaccurate:_" | |
| echo "" | |
| cat /tmp/comment_output.txt | |
| } > /tmp/comment_body.txt | |
| gh pr comment "$PR_NUMBER" --body-file /tmp/comment_body.txt |