feat(claude-code): package sigil-cc as a Claude Code plugin #79
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: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| go: | |
| name: Go SDK | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.6.0 | |
| with: | |
| go-version-file: go/go.mod | |
| - name: golangci-lint | |
| uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 | |
| with: | |
| args: --timeout=5m | |
| working-directory: go | |
| - name: Test core | |
| run: cd go && GOWORK=off go test ./... | |
| - name: Test anthropic provider | |
| run: cd go-providers/anthropic && GOWORK=off go test ./... | |
| - name: Test openai provider | |
| run: cd go-providers/openai && GOWORK=off go test ./... | |
| - name: Test gemini provider | |
| run: cd go-providers/gemini && GOWORK=off go test ./... | |
| - name: Test google-adk framework | |
| run: cd go-frameworks/google-adk && GOWORK=off go test ./... | |
| typescript: | |
| name: TypeScript SDK | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0 | |
| - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 | |
| with: | |
| node-version: '24' | |
| - run: pnpm install | |
| - name: Typecheck | |
| run: pnpm --filter @grafana/sigil-sdk-js run typecheck | |
| - name: Test | |
| run: pnpm --filter @grafana/sigil-sdk-js run test:ci | |
| python: | |
| name: Python SDK | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| suite: | |
| - { name: core, cmd: "uv run --with '.[dev]' --directory python pytest tests" } | |
| - { name: openai, cmd: "uv run --with './python[dev]' --with './python-providers/openai[dev]' pytest python-providers/openai/tests" } | |
| - { name: anthropic, cmd: "uv run --with './python[dev]' --with './python-providers/anthropic[dev]' pytest python-providers/anthropic/tests" } | |
| - { name: gemini, cmd: "uv run --with './python[dev]' --with './python-providers/gemini[dev]' pytest python-providers/gemini/tests" } | |
| - { name: langchain, cmd: "uv run --with './python[dev]' --with './python-frameworks/langchain[dev]' pytest python-frameworks/langchain/tests" } | |
| - { name: langgraph, cmd: "uv run --with './python[dev]' --with './python-frameworks/langgraph[dev]' pytest python-frameworks/langgraph/tests" } | |
| - { name: openai-agents, cmd: "uv run --with './python[dev]' --with './python-frameworks/openai-agents[dev]' pytest python-frameworks/openai-agents/tests" } | |
| - { name: llamaindex, cmd: "uv run --with './python[dev]' --with './python-frameworks/llamaindex[dev]' pytest python-frameworks/llamaindex/tests" } | |
| - { name: google-adk, cmd: "uv run --with './python[dev]' --with './python-frameworks/google-adk[dev]' pytest python-frameworks/google-adk/tests" } | |
| - { name: litellm, cmd: "uv run --with './python[dev]' --with './python-frameworks/litellm[dev]' pytest python-frameworks/litellm/tests" } | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 | |
| with: | |
| python-version: '3.11' | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0 | |
| - name: Test ${{ matrix.suite.name }} | |
| run: ${{ matrix.suite.cmd }} | |
| dotnet: | |
| name: .NET SDK | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1 | |
| with: | |
| dotnet-version: '8.0.x' | |
| - name: Format check | |
| run: dotnet format dotnet/Sigil.DotNet.sln --verify-no-changes | |
| - name: Test | |
| run: dotnet test dotnet/Sigil.DotNet.sln -c Release | |
| java: | |
| name: Java SDK | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-java@c1e323688fd81a25caa38c78aa6df2d33d3e20d9 # v4.8.0 | |
| with: | |
| distribution: temurin | |
| java-version: '21' | |
| - name: Test | |
| working-directory: java | |
| run: ./gradlew --no-daemon test |