Skip to content

feat(agents): tool loader Part 1 — selection + dual-path filtering (#1449) #64

feat(agents): tool loader Part 1 — selection + dual-path filtering (#1449)

feat(agents): tool loader Part 1 — selection + dual-path filtering (#1449) #64

# Copyright(C) 2025-2026 Advanced Micro Devices, Inc. All rights reserved.
# SPDX-License-Identifier: MIT
# Tests the GAIA Analyst agent, which ships as the standalone gaia-agent-analyst
# wheel (#1102).
name: Analyst Agent Tests
on:
workflow_call:
push:
branches: [ main ]
paths:
- 'hub/agents/python/analyst/**'
- 'src/gaia/agents/base/**'
- 'src/gaia/agents/tools/**'
- 'setup.py'
- '.github/workflows/test_analyst_agent.yml'
pull_request:
branches: [ main ]
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'hub/agents/python/analyst/**'
- 'src/gaia/agents/base/**'
- 'src/gaia/agents/tools/**'
- 'setup.py'
- '.github/workflows/test_analyst_agent.yml'
merge_group:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
test-analyst-agent:
name: Test Analyst Agent
runs-on: ubuntu-latest
if: github.event_name != 'pull_request' || github.event.pull_request.draft == false || contains(github.event.pull_request.labels.*.name, 'ready_for_ci')
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.12'
- name: Install uv
run: curl -LsSf https://astral.sh/uv/install.sh | sh
- name: Install dependencies
run: |
uv pip install --system -e .[dev]
# AnalystAgent ships as the standalone gaia-agent-analyst wheel (#1102)
uv pip install --system -e hub/agents/python/analyst
- name: Run Analyst Agent Tests
run: |
python -m pytest hub/agents/python/analyst/tests/ -v --tb=short