Skip to content

repeated Measure ANOVA with two independant group in LIMO #36

repeated Measure ANOVA with two independant group in LIMO

repeated Measure ANOVA with two independant group in LIMO #36

Workflow file for this run

name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]
jobs:
claude:
if: |
(github.event_name == 'issue_comment' &&
(github.event.comment.author_association == 'OWNER' ||
github.event.comment.author_association == 'MEMBER' ||
github.event.comment.author_association == 'COLLABORATOR') &&
contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review_comment' &&
(github.event.comment.author_association == 'OWNER' ||
github.event.comment.author_association == 'MEMBER' ||
github.event.comment.author_association == 'COLLABORATOR') &&
contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review' &&
(github.event.review.author_association == 'OWNER' ||
github.event.review.author_association == 'MEMBER' ||
github.event.review.author_association == 'COLLABORATOR') &&
contains(github.event.review.body, '@claude')) ||
(github.event_name == 'issues' &&
(github.event.issue.author_association == 'OWNER' ||
github.event.issue.author_association == 'MEMBER' ||
github.event.issue.author_association == 'COLLABORATOR') &&
(contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
timeout-minutes: 45
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
- name: Install Octave
run: |
sudo apt-get update
sudo apt-get install -y octave
- name: Run Claude Code
uses: anthropics/claude-code-action@v1
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN || secrets.CLAUDE_MAX_OAUTH_TOKEN }}
allowed_bots: 'claude[bot]'
additional_permissions: |
actions: read
claude_args: |
--model claude-opus-4-7
--max-turns 250
--allowedTools "Bash(git:*),Bash(gh:*),Bash(matlab:*),Bash(octave:*),Bash(find:*),Bash(rg:*),Bash(sed:*),Bash(ls:*),Bash(pwd:*),Bash(cat:*)"
--system-prompt "Always read and follow AGENTS.md before starting work. Keep changes small, MATLAB-native, and consistent with existing EEGLAB helpers. You can commit and push changes. Before submitting changes, run the narrowest relevant MATLAB or Octave validation command; report exactly what passed or failed. Always commit and push changes, even if validation cannot run or fails."
triage:
if: |
github.event_name == 'issues' &&
github.event.action == 'opened' &&
(github.event.issue.author_association == 'OWNER' ||
github.event.issue.author_association == 'MEMBER' ||
github.event.issue.author_association == 'COLLABORATOR') &&
!contains(github.event.issue.body, '@claude') &&
!contains(github.event.issue.title, '@claude')
timeout-minutes: 60
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
- name: Install Octave
run: |
sudo apt-get update
sudo apt-get install -y octave
- name: Triage Issue
uses: anthropics/claude-code-action@v1
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN || secrets.CLAUDE_MAX_OAUTH_TOKEN }}
allowed_bots: 'claude[bot]'
additional_permissions: |
actions: read
prompt: |
Read AGENTS.md, .agents/skills/fix-issue/SKILL.md, and .agents/skills/pull-request/SKILL.md.
Then analyze issue #${{ github.event.issue.number }}.
Before doing anything else, decide whether the issue is actionable.
An actionable issue states what is broken or requested in concrete
terms, names the affected area or workflow, and gives enough detail
to reproduce or identify the relevant source. If it is vague, post
one comment listing the exact missing details and stop.
Use a single issue comment for progress. Post it once, then use
gh issue comment --edit-last for updates.
For small, self-contained bug fixes under about 100 changed lines,
follow the fix-issue workflow and open a PR. For larger changes,
new features, design questions, GUI redesigns, plugin architecture,
or anything with unclear acceptance criteria, do not open a PR.
Instead, update the issue with root-cause analysis, relevant code
references, and a proposed approach for maintainer review.
Always produce output: a PR for a small actionable fix, or an
analysis comment explaining what is needed next.
claude_args: |
--model claude-opus-4-7
--max-turns 250
--permission-mode acceptEdits
--allowedTools "Bash(git:*),Bash(gh:*),Bash(matlab:*),Bash(octave:*),Bash(find:*),Bash(rg:*),Bash(sed:*),Bash(ls:*),Bash(pwd:*),Bash(cat:*)"
--system-prompt "You can commit and push changes. Use MATLAB or Octave validation when possible. Keep EEGLAB changes small and aligned with existing MATLAB helpers. Never post multiple progress comments; post one comment, then use --edit-last for all updates."
autofix:
if: |
github.event_name == 'pull_request_review' &&
(github.event.review.author_association == 'OWNER' ||
github.event.review.author_association == 'MEMBER' ||
github.event.review.author_association == 'COLLABORATOR') &&
contains(github.event.review.body, 'autofix') &&
!contains(github.event.review.body, '@claude')
timeout-minutes: 45
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
ref: ${{ github.event.pull_request.head.ref }}
- name: Install Octave
run: |
sudo apt-get update
sudo apt-get install -y octave
- name: Apply Autofix
uses: anthropics/claude-code-action@v1
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN || secrets.CLAUDE_MAX_OAUTH_TOKEN }}
allowed_bots: 'claude[bot]'
prompt: |
PR: #${{ github.event.pull_request.number }}
REVIEW: ${{ github.event.review.body }}
A maintainer requested autofix. Read AGENTS.md.
1. Fetch the full review with inline comments.
2. Apply all actionable review comments to the PR branch.
3. Keep changes small and consistent with EEGLAB MATLAB conventions.
4. Run relevant MATLAB or Octave validation.
5. Commit and push changes to the PR branch.
6. Post a comment summarizing what changed and what validation ran, prefixed with "Autofix:".
claude_args: |
--model claude-opus-4-7
--max-turns 150
--allowedTools "Bash(git:*),Bash(gh:*),Bash(matlab:*),Bash(octave:*),Bash(find:*),Bash(rg:*),Bash(sed:*),Bash(ls:*),Bash(pwd:*),Bash(cat:*)"