added integrations section with pinecone and testcontainers #87
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" | |
| # Note: only users with write permissions can invoke Claude jobs | |
| "on": | |
| issue_comment: | |
| types: ["created"] | |
| pull_request_review_comment: | |
| types: ["created"] | |
| issues: | |
| types: ["labeled"] | |
| pull_request_review: | |
| types: ["submitted"] | |
| workflow_dispatch: | |
| inputs: | |
| issue_number: | |
| description: "Issue number to process" | |
| required: true | |
| type: "number" | |
| jobs: | |
| # Disable general claude invocations | |
| # 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: read | |
| # pull-requests: read | |
| # issues: read | |
| # id-token: write | |
| # actions: read # Required for Claude to read CI results on PRs | |
| # steps: | |
| # - name: Checkout repository | |
| # uses: actions/checkout@v4 | |
| # with: | |
| # fetch-depth: 1 | |
| # | |
| # - name: Run Claude Code | |
| # id: claude | |
| # uses: anthropics/claude-code-action@v1 | |
| # with: | |
| # anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} | |
| # | |
| # # This is an optional setting that allows Claude to read CI results on PRs | |
| # additional_permissions: | | |
| # actions: read | |
| # | |
| # # Optional: Give a custom prompt to Claude. If this is not specified, Claude will perform the instructions specified in the comment that tagged it. | |
| # # prompt: 'Update the pull request description to include a summary of changes.' | |
| # | |
| # # Optional: Add claude_args to customize behavior and configuration | |
| # # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md | |
| # # or https://code.claude.com/docs/en/cli-reference for available options | |
| # # claude_args: '--allowed-tools Bash(gh pr:*)' | |
| suggestion: | |
| name: "Suggestion Handler" | |
| if: | | |
| (github.event_name == 'issues' && | |
| github.event.action == 'labeled' && | |
| contains(github.event.issue.labels.*.name, 'suggestion/accepted')) || | |
| github.event_name == 'workflow_dispatch' | |
| runs-on: "ubuntu-latest" | |
| permissions: | |
| contents: "write" | |
| pull-requests: "read" | |
| issues: "write" | |
| id-token: "write" | |
| steps: | |
| - name: "Checkout repository" | |
| uses: "actions/checkout@v4" | |
| with: | |
| fetch-depth: 0 | |
| - name: "Validate issue label for manual trigger" | |
| if: "github.event_name == 'workflow_dispatch'" | |
| env: | |
| GH_TOKEN: "${{ github.token }}" | |
| ISSUE_NUMBER: "${{ inputs.issue_number }}" | |
| run: | | |
| labels=$(gh issue view $ISSUE_NUMBER --json labels --jq '.labels[].name' || echo "") | |
| if ! echo "$labels" | grep -q "suggestion/accepted"; then | |
| echo "Error: Issue #$ISSUE_NUMBER does not have the 'suggestion/accepted' label" | |
| exit 1 | |
| fi | |
| echo "Issue #$ISSUE_NUMBER has the required 'suggestion/accepted' label" | |
| # Runs claude code implement the suggestion. | |
| # Configured to give 50 turns to claude based on observations. This can be increased if we observe sessions failing to complete | |
| - name: "Run Claude Code for Suggestion" | |
| id: "claude-suggestion" | |
| uses: "anthropics/claude-code-action@v1" | |
| env: | |
| ISSUE_NUMBER: "${{ github.event_name == 'workflow_dispatch' && inputs.issue_number || github.event.issue.number }}" | |
| with: | |
| anthropic_api_key: "${{ secrets.ANTHROPIC_API_KEY }}" | |
| # Enabling this may expose secrets. Do not set to true on public repos | |
| # https://github.com/anthropics/claude-code-action/blob/main/docs/security.md#%EF%B8%8F-full-output-security-warning | |
| show_full_output: false | |
| prompt: | | |
| Read the repository documentation structure and the issue description for issue #${{ github.event_name == 'workflow_dispatch' && inputs.issue_number || github.event.issue.number }}. | |
| The issue has been labeled as "suggestion/accepted" and contains a documentation request or improvement. | |
| Your task: | |
| 1. Read and understand the current documentation structure in this repository | |
| 2. Review the issue description and any comments to understand what documentation changes are needed | |
| 3. Create a new branch using the format: suggestion/issue-${{ github.event_name == 'workflow_dispatch' && inputs.issue_number || github.event.issue.number }}-<short-description> | |
| Example: suggestion/issue-1-starter-program-docs | |
| Use: git checkout -b <branch-name> | |
| 4. Implement the requested documentation changes by editing existing pages or creating new pages as appropriate | |
| 5. Ensure all changes follow the existing documentation style, formatting, and structure | |
| 6. Commit your changes with messages that include "Fixes #${{ github.event_name == 'workflow_dispatch' && inputs.issue_number || github.event.issue.number }}" so the issue will automatically close when the PR is merged. | |
| 7. Push your branch to origin using: git push -u origin <branch-name> | |
| 8. Post a comment to issue #${{ github.event_name == 'workflow_dispatch' && inputs.issue_number || github.event.issue.number }} with: | |
| - Summary of changes made | |
| - Link to create a PR using: https://github.com/${{ github.repository }}/compare/<branch-name>?expand=1 | |
| Use the gh CLI: gh issue comment ${{ github.event_name == 'workflow_dispatch' && inputs.issue_number || github.event.issue.number }} --body "<your comment>" | |
| Focus only on documentation changes. Make app changes necessary to support the documentation such as adding visual components, icons, and structure. | |
| Otherwise, do not modify application code, configuration files, or CI/CD workflows. | |
| claude_args: | | |
| --allowedTools "Read,Write,Edit,Bash(git:*),Bash(gh:*),WebFetch(domain:authzed.com)" | |
| --max-turns 50 |