Add NCBIFam GO mappings and OpenScientist hypothesis validation #10097
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: Claude Code | |
| on: | |
| issue_comment: | |
| types: [created] | |
| pull_request_review_comment: | |
| types: [created] | |
| issues: | |
| types: [opened, assigned] | |
| pull_request_review: | |
| types: [submitted] | |
| workflow_dispatch: | |
| inputs: | |
| model: | |
| description: "Claude model to use" | |
| default: claude-sonnet-4-6 | |
| type: choice | |
| options: | |
| - claude-sonnet-4-6 | |
| - claude-haiku-4-5-20251001 | |
| - claude-opus-4-7 | |
| jobs: | |
| claude: | |
| if: | | |
| (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) || | |
| (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) || | |
| (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) || | |
| (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude'))) | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| issues: write | |
| id-token: write | |
| actions: read # Required for Claude to read CI results on PRs | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| with: | |
| fetch-depth: 1 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| - name: Install python tools | |
| run: | | |
| uv sync | |
| - name: Run Claude Code | |
| id: claude | |
| uses: anthropics/claude-code-action@v1 | |
| with: | |
| claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} | |
| mcp_config: | | |
| { | |
| "mcpServers": { | |
| "ols": { | |
| "command": "uvx", | |
| "args": [ | |
| "ols-mcp" | |
| ] | |
| }, | |
| "sequential-thinking": { | |
| "command": "npx", | |
| "args": [ | |
| "-y", | |
| "@modelcontextprotocol/server-sequential-thinking" | |
| ] | |
| } | |
| } | |
| } | |
| # This is an optional setting that allows Claude to read CI results on PRs | |
| additional_permissions: | | |
| actions: read | |
| model: ${{ inputs.model || 'claude-sonnet-4-6' }} | |
| # Optional: Customize the trigger phrase (default: @claude) | |
| # trigger_phrase: "/claude" | |
| # Optional: Trigger when specific user is assigned to an issue | |
| # assignee_trigger: "claude-bot" | |
| # Optional: Allow Claude to run specific commands | |
| allowed_tools: "Bash(*),FileEdit,Edit,MultiEdit,WebSearch,WebFetch,mcp__ols_mcp__search_all_ontologies,mcp__ols_mcp__get_terms_from_ontology" | |
| # Optional: Add custom instructions for Claude to customize its behavior for your project | |
| custom_instructions: | | |
| REPO: ${{ github.repository }} | |
| ISSUE NUMBER: ${{ github.event.issue.number }} | |
| TITLE: ${{ github.event.issue.title }} | |
| BODY: ${{ github.event.issue.body }} | |
| AUTHOR: ${{ github.event.issue.user.login }} | |
| First analyzer the user request. If it doesn't involve gene review, | |
| If the user asks for a gene review, you must perform the following steps: | |
| When reviewing a gene, first check if the relevant files are in place. To create the uniprot and goa files, and a stub review, | |
| run `just fetch-gene SPECIES GENE`. Never initiate these yourself. If a GENE-deep-research.md is NOT already present, you | |
| should first do extensive literature search and make one, being sure to include citations for all statements. | |
| ALWAYS do a `just validate SPECIES GENE` before finishing. You must fix BOTH ERRORs and WARNINGs. | |
| Make sure you use the correct uniprot code for SPECIES (unless this is a common species: human, worm, fly, rat, mouse) | |
| And use the uniprot gene symbol | |
| Make sure your commit also includes: | |
| - GENE-goa.tsv and GENE-uniprot.txt (if you created these with `just fetch-gene`) | |
| - GENE-deep-research.md (if this was not previously present) | |
| - New publications in `publications/` | |
| - any bioinformatics analyses | |
| Make a PR at the end | |
| # Optional: Custom environment variables for Claude | |
| # claude_env: | | |
| # NODE_ENV: test | |