رفتن به محتوا

Claude Code GitHub Actions

Claude Code GitHub Actions اتوماسیونِ مبتنی بر هوش مصنوعی را به ورک‌فلوی GitHubِ تو می‌آورد. تنها با یک منشنِ ساده‌ی @claude در هر PR یا issue، Claude می‌تواند کدت را تحلیل کند، pull request بسازد، قابلیت‌ها را پیاده کند و باگ‌ها را رفع کند — همه‌ی این‌ها در حالی‌که استانداردهای پروژه‌ات را رعایت می‌کند. برای بازبینی‌های خودکار که بدون هیچ تریگری روی هر PR منتشر می‌شوند، GitHub Code Review را ببین.

چرا از Claude Code GitHub Actions استفاده کنیم؟

Section titled “چرا از Claude Code GitHub Actions استفاده کنیم؟”
  • ساختِ آنیِ PR: آنچه نیاز داری را توصیف کن، و Claude یک PR کامل با همه‌ی تغییرات لازم می‌سازد
  • پیاده‌سازیِ خودکارِ کد: issueها را با یک دستور به کدِ کارآمد تبدیل کن
  • رعایتِ استانداردهای تو: Claude به راهنماهای CLAUDE.md و الگوهای موجودِ کدت احترام می‌گذارد
  • راه‌اندازیِ ساده: با نصب‌کننده و کلید API ما در چند دقیقه شروع کن
  • امن به‌صورت پیش‌فرض: کدت روی runnerهای Github باقی می‌ماند

Claude چه کاری می‌تواند بکند؟

Section titled “Claude چه کاری می‌تواند بکند؟”

Claude Code یک GitHub Actionِ قدرتمند فراهم می‌کند که نحوه‌ی کارت با کد را دگرگون می‌کند:

این GitHub Action به تو اجازه می‌دهد Claude Code را داخلِ ورک‌فلوهای GitHub Actionsت اجرا کنی. می‌توانی از این برای ساختِ هر ورک‌فلوی سفارشی روی Claude Code استفاده کنی.

مشاهده‌ی مخزن →

ساده‌ترین راهِ راه‌اندازیِ این action از طریقِ Claude Code در ترمینال است. کافی است claude را باز کنی و /install-github-app را اجرا کنی.

این دستور تو را در راه‌اندازیِ GitHub app و secretهای لازم راهنمایی می‌کند.

اگر دستورِ /install-github-app با خطا مواجه شد یا راه‌اندازیِ دستی را ترجیح می‌دهی، این دستورالعمل‌های راه‌اندازیِ دستی را دنبال کن:

  1. Claude GitHub app را نصب کن روی مخزنت: https://github.com/apps/claude

    Claude GitHub app به دسترسی‌های مخزنِ زیر نیاز دارد:

    • Contents: خواندن و نوشتن (برای تغییرِ فایل‌های مخزن)
    • Issues: خواندن و نوشتن (برای پاسخ به issueها)
    • Pull requests: خواندن و نوشتن (برای ساختِ PRها و push کردنِ تغییرات)

    برای جزئیاتِ بیشتر درباره‌ی امنیت و دسترسی‌ها، مستنداتِ امنیت را ببین.

  2. ANTHROPIC_API_KEY را اضافه کن به secretهای مخزنت (یاد بگیر چطور از secretها در GitHub Actions استفاده کنی)

  3. فایلِ ورک‌فلو را کپی کن از examples/claude.yml به مسیرِ .github/workflows/ مخزنت

اگر در حالِ حاضر از نسخه‌ی beta‌ی Claude Code GitHub Actions استفاده می‌کنی، توصیه می‌کنیم ورک‌فلوهایت را به نسخه‌ی GA به‌روزرسانی کنی. نسخه‌ی جدید پیکربندی را ساده‌تر می‌کند و در عینِ حال قابلیت‌های قدرتمندِ جدیدی مثلِ تشخیصِ خودکارِ حالت (mode) را اضافه می‌کند.

همه‌ی کاربرانِ beta باید این تغییرات را در فایل‌های ورک‌فلویشان اعمال کنند تا به v1.0 ارتقا یابند:

  1. نسخه‌ی action را به‌روز کن: @beta را به @v1 تغییر بده
  2. پیکربندیِ mode را حذف کن: mode: "tag" یا mode: "agent" را پاک کن (حالا خودکار تشخیص داده می‌شود)
  3. ورودی‌های prompt را به‌روز کن: direct_prompt را با prompt جایگزین کن
  4. گزینه‌های CLI را منتقل کن: max_turns, model, custom_instructions و غیره را به claude_args تبدیل کن

مرجعِ تغییراتِ ناسازگار (Breaking Changes)

Section titled “مرجعِ تغییراتِ ناسازگار (Breaking Changes)”
ورودیِ قدیمیِ Betaورودیِ جدیدِ v1.0
mode(حذف‌شده — خودکار تشخیص داده می‌شود)
direct_promptprompt
override_promptprompt با متغیرهای GitHub
custom_instructionsclaude_args: --append-system-prompt
max_turnsclaude_args: --max-turns
modelclaude_args: --model
allowed_toolsclaude_args: --allowedTools
disallowed_toolsclaude_args: --disallowedTools
claude_envفرمتِ JSONِ settings

نسخه‌ی Beta:

- uses: anthropics/claude-code-action@beta
with:
mode: "tag"
direct_prompt: "Review this PR for security issues"
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
custom_instructions: "Follow our coding standards"
max_turns: "10"
model: "claude-sonnet-4-6"

نسخه‌ی GA (v1.0):

- uses: anthropics/claude-code-action@v1
with:
prompt: "Review this PR for security issues"
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
claude_args: |
--append-system-prompt "Follow our coding standards"
--max-turns 10
--model claude-sonnet-4-6

Claude Code GitHub Actions می‌تواند در طیفِ گسترده‌ای از کارها به تو کمک کند. پوشه‌ی examples شاملِ ورک‌فلوهای آماده‌به‌استفاده برای سناریوهای مختلف است.

name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
claude:
runs-on: ubuntu-latest
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
# Responds to @claude mentions in comments

ورودیِ prompt علاوه بر متنِ ساده، فراخوانیِ یک skill را هم می‌پذیرد:

  • برای یک skill در پوشه‌ی .claude/skills/ مخزنت، پیش از مرحله‌ی action دستورِ actions/checkout را اجرا کن و /skill-name را پاس بده.
  • برای یک skill که در یک plugin بسته‌بندی شده، plugin را با ورودی‌های plugin_marketplaces و plugins نصب کن و /plugin-name:skill-nameِ namespace‌دار را پاس بده.

ورک‌فلوی زیر pluginِ code-review را نصب می‌کند و skillِ آن را روی هر pull requestِ جدید یا به‌روزشده اجرا می‌کند:

name: Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
plugin_marketplaces: "https://github.com/anthropics/claude-code.git"
plugins: "code-review@claude-code-plugins"
prompt: "/code-review:code-review ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"

اتوماسیونِ سفارشی با promptها

Section titled “اتوماسیونِ سفارشی با promptها”
name: Daily Report
on:
schedule:
- cron: "0 9 * * *"
jobs:
report:
runs-on: ubuntu-latest
steps:
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: "Generate a summary of yesterday's commits and open issues"
claude_args: "--model opus"

در کامنت‌های issue یا PR:

@claude implement this feature based on the issue description
@claude how should I implement user authentication for this endpoint?
@claude fix the TypeError in the user dashboard component

Claude به‌طور خودکار کانتکست را تحلیل می‌کند و متناسب با آن پاسخ می‌دهد.

یک فایلِ CLAUDE.md در ریشه‌ی مخزنت بساز تا راهنماهای سبکِ کد، معیارهای بازبینی، قواعدِ مخصوصِ پروژه و الگوهای ترجیحی را تعریف کنی. این فایل درکِ Claude از استانداردهای پروژه‌ات را هدایت می‌کند.

برای راهنماییِ جامعِ امنیتی شاملِ دسترسی‌ها، احراز هویت و بهترین شیوه‌ها، مستنداتِ امنیتِ Claude Code Action را ببین.

همیشه برای کلیدهای API از GitHub Secrets استفاده کن:

  • کلیدِ API‌ات را به‌عنوانِ یک secretِ مخزن با نامِ ANTHROPIC_API_KEY اضافه کن
  • در ورک‌فلوها به آن ارجاع بده: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
  • دسترسی‌های action را فقط به آنچه ضروری است محدود کن
  • پیش از merge کردن، پیشنهادهای Claude را بازبینی کن

همیشه از GitHub Secrets استفاده کن (برای مثال، ${{ secrets.ANTHROPIC_API_KEY }}) به‌جای hardcode کردنِ مستقیمِ کلیدهای API در فایل‌های ورک‌فلویت.

از قالب‌های issue (issue templates) برای فراهم‌کردنِ کانتکست استفاده کن، CLAUDE.mdات را موجز و متمرکز نگه دار، و timeoutهای مناسب برای ورک‌فلوهایت پیکربندی کن.

هنگامِ استفاده از Claude Code GitHub Actions، از هزینه‌های مرتبط آگاه باش:

هزینه‌های GitHub Actions:

  • Claude Code روی runnerهای میزبانی‌شده‌ی GitHub اجرا می‌شود که از دقایقِ GitHub Actionsِ تو مصرف می‌کنند
  • برای قیمت‌گذاریِ دقیق و محدودیت‌های دقایق، مستنداتِ هزینه‌ی GitHub را ببین

هزینه‌های API:

  • هر تعاملِ Claude بر اساسِ طولِ promptها و پاسخ‌ها، توکن‌های API مصرف می‌کند
  • مصرفِ توکن بسته به پیچیدگیِ کار و اندازه‌ی کدبیس متفاوت است
  • برای نرخ‌های فعلیِ توکن، صفحه‌ی قیمت‌گذاریِ Claude را ببین

نکاتِ بهینه‌سازیِ هزینه:

  • از دستورهای مشخصِ @claude استفاده کن تا فراخوانی‌های غیرضروریِ API کاهش یابد
  • مقدارِ مناسبِ --max-turns را در claude_args پیکربندی کن تا از تکرارهای بیش‌ازحد جلوگیری شود
  • timeoutهای سطحِ ورک‌فلو را تنظیم کن تا از jobهای افسارگسیخته جلوگیری شود
  • استفاده از کنترل‌های همزمانیِ (concurrency) GitHub را برای محدودکردنِ اجراهای موازی در نظر بگیر

نسخه‌ی v1‌ِ Claude Code Action پیکربندی را با پارامترهای یکپارچه ساده‌تر می‌کند:

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: "Your instructions here" # Optional
claude_args: "--max-turns 5" # Optional CLI arguments

قابلیت‌های کلیدی:

  • رابطِ یکپارچه‌ی prompt — برای همه‌ی دستورها از prompt استفاده کن
  • Skillهاskillهای نصب‌شده را مستقیماً از داخلِ prompt فراخوانی کن
  • عبورِ مستقیمِ CLI — هر آرگومانِ CLIِ Claude Code از طریقِ claude_args
  • تریگرهای انعطاف‌پذیر — با هر رویدادِ GitHub کار می‌کند

برای فایل‌های کاملِ ورک‌فلو به پوشه‌ی examples سر بزن.

استفاده با Amazon Bedrock و Google Vertex AI

Section titled “استفاده با Amazon Bedrock و Google Vertex AI”

برای محیط‌های سازمانی، می‌توانی Claude Code GitHub Actions را با زیرساختِ ابریِ خودت استفاده کنی. این رویکرد کنترلِ محلِ اقامتِ داده (data residency) و صورتحساب را به تو می‌دهد و در عینِ حال همان کارکرد را حفظ می‌کند.

پیش از راه‌اندازیِ Claude Code GitHub Actions با ارائه‌دهندگانِ ابری، به این‌ها نیاز داری:

  1. یک Google Cloud Project با Vertex AIِ فعال
  2. Workload Identity Federationِ پیکربندی‌شده برای GitHub Actions
  3. یک service account با دسترسی‌های لازم
  4. یک GitHub App (توصیه‌شده) یا استفاده از GITHUB_TOKENِ پیش‌فرض
  1. یک حسابِ AWS با Amazon Bedrockِ فعال
  2. GitHub OIDC Identity Providerِ پیکربندی‌شده در AWS
  3. یک IAM role با دسترسی‌های Bedrock
  4. یک GitHub App (توصیه‌شده) یا استفاده از GITHUB_TOKENِ پیش‌فرض

ساختِ یک GitHub App سفارشی (توصیه‌شده برای ارائه‌دهندگانِ 3P)

برای بهترین کنترل و امنیت هنگامِ استفاده از ارائه‌دهندگانِ 3P مثلِ Vertex AI یا Bedrock، توصیه می‌کنیم GitHub App خودت را بسازی:

  1. به https://github.com/settings/apps/new برو
  2. اطلاعاتِ پایه را پر کن:
    • GitHub App name: یک نامِ یکتا انتخاب کن (برای مثال، “YourOrg Claude Assistant”)
    • Homepage URL: وب‌سایتِ سازمانت یا URLِ مخزن
  3. تنظیماتِ app را پیکربندی کن:
    • Webhooks: تیکِ “Active” را بردار (برای این یکپارچه‌سازی لازم نیست)
  4. دسترسی‌های لازم را تنظیم کن:
    • Repository permissions:
      • Contents: Read & Write
      • Issues: Read & Write
      • Pull requests: Read & Write
  5. روی “Create GitHub App” کلیک کن
  6. پس از ساخت، روی “Generate a private key” کلیک کن و فایلِ .pemِ دانلودشده را ذخیره کن
  7. App ID‌ات را از صفحه‌ی تنظیماتِ app یادداشت کن
  8. app را روی مخزنت نصب کن:
    • از صفحه‌ی تنظیماتِ appت، در نوارِ کناریِ سمتِ چپ روی “Install App” کلیک کن
    • حساب یا سازمانت را انتخاب کن
    • “Only select repositories” را انتخاب کن و مخزنِ موردنظر را برگزین
    • روی “Install” کلیک کن
  9. private key را به‌عنوانِ یک secret به مخزنت اضافه کن:
    • به Settings → Secrets and variables → Actionsِ مخزنت برو
    • یک secretِ جدید با نامِ APP_PRIVATE_KEY و محتوای فایلِ .pem بساز
  10. App ID را به‌عنوانِ یک secret اضافه کن:
  • یک secretِ جدید با نامِ APP_ID و مقدارِ App IDِ GitHub Appت بساز

جایگزین برای Claude API یا اگر نمی‌خواهی GitHub appِ خودت را راه‌اندازی کنی: از appِ رسمیِ Anthropic استفاده کن:

  1. نصب از: https://github.com/apps/claude
  2. برای احراز هویت نیازی به پیکربندیِ اضافی نیست

پیکربندیِ احراز هویتِ ارائه‌دهنده‌ی ابری

ارائه‌دهنده‌ی ابری‌ات را انتخاب کن و احراز هویتِ امن را راه‌اندازی کن:

Amazon Bedrock

AWS را طوری پیکربندی کن که GitHub Actions بتواند بدونِ ذخیره‌ی credentialها به‌صورتِ امن احراز هویت کند.

نکته‌ی امنیتی: از پیکربندی‌های مخصوصِ مخزن استفاده کن و فقط حداقلِ دسترسی‌های لازم را بده.

راه‌اندازیِ لازم:

  1. Amazon Bedrock را فعال کن:

    • درخواستِ دسترسی به مدل‌های Claude در Amazon Bedrock بده
    • برای مدل‌های cross-region، در همه‌ی مناطقِ لازم درخواستِ دسترسی بده
  2. GitHub OIDC Identity Provider را راه‌اندازی کن:

    • Provider URL: https://token.actions.githubusercontent.com
    • Audience: sts.amazonaws.com
  3. IAM Role برای GitHub Actions بساز:

    • Trusted entity type: Web identity
    • Identity provider: token.actions.githubusercontent.com
    • Permissions: سیاستِ AmazonBedrockFullAccess
    • trust policy را برای مخزنِ مشخصِ خودت پیکربندی کن

مقادیرِ لازم:

پس از راه‌اندازی، به این نیاز خواهی داشت:

  • AWS_ROLE_TO_ASSUME: ARNِ IAM roleای که ساختی

برای دستورالعملِ تفصیلیِ راه‌اندازیِ OIDC، مستنداتِ AWS را ببین.

Google Vertex AI

Google Cloud را طوری پیکربندی کن که GitHub Actions بتواند بدونِ ذخیره‌ی credentialها به‌صورتِ امن احراز هویت کند.

نکته‌ی امنیتی: از پیکربندی‌های مخصوصِ مخزن استفاده کن و فقط حداقلِ دسترسی‌های لازم را بده.

راه‌اندازیِ لازم:

  1. APIها را فعال کن در پروژه‌ی Google Cloudت:

    • IAM Credentials API
    • Security Token Service (STS) API
    • Vertex AI API
  2. منابعِ Workload Identity Federation را بساز:

    • یک Workload Identity Pool بساز
    • یک GitHub OIDC provider با این مشخصات اضافه کن:
      • Issuer: https://token.actions.githubusercontent.com
      • نگاشتِ attributeها برای repository و owner
      • توصیه‌ی امنیتی: از شرط‌های attributeِ مخصوصِ مخزن استفاده کن
  3. یک Service Account بساز:

    • فقط نقشِ Vertex AI User را بده
    • توصیه‌ی امنیتی: برای هر مخزن یک service accountِ اختصاصی بساز
  4. IAM bindingها را پیکربندی کن:

    • به Workload Identity Pool اجازه بده هویتِ service account را جعل (impersonate) کند
    • توصیه‌ی امنیتی: از مجموعه‌های principalِ مخصوصِ مخزن استفاده کن

مقادیرِ لازم:

پس از راه‌اندازی، به این‌ها نیاز خواهی داشت:

  • GCP_WORKLOAD_IDENTITY_PROVIDER: نامِ کاملِ منبعِ provider
  • GCP_SERVICE_ACCOUNT: آدرسِ ایمیلِ service account

برای دستورالعملِ تفصیلیِ راه‌اندازی، مستنداتِ Google Cloud Workload Identity Federation را ببین.

افزودنِ secretهای لازم

secretهای زیر را به مخزنت اضافه کن (Settings → Secrets and variables → Actions):

  1. برای احراز هویتِ API:

  2. برای GitHub App (اگر از appِ خودت استفاده می‌کنی):

    • APP_ID: App IDِ GitHub Appت
    • APP_PRIVATE_KEY: محتوای private key (فایلِ .pem)
  1. برای احراز هویتِ GCP:

    • GCP_WORKLOAD_IDENTITY_PROVIDER
    • GCP_SERVICE_ACCOUNT
  2. برای GitHub App (اگر از appِ خودت استفاده می‌کنی):

    • APP_ID: App IDِ GitHub Appت
    • APP_PRIVATE_KEY: محتوای private key (فایلِ .pem)
  1. برای احراز هویتِ AWS:

    • AWS_ROLE_TO_ASSUME
  2. برای GitHub App (اگر از appِ خودت استفاده می‌کنی):

    • APP_ID: App IDِ GitHub Appت
    • APP_PRIVATE_KEY: محتوای private key (فایلِ .pem)

ساختِ فایل‌های ورک‌فلو

فایل‌های ورک‌فلوی GitHub Actions بساز که با ارائه‌دهنده‌ی ابری‌ات یکپارچه شوند. مثال‌های زیر پیکربندیِ کامل را برای هر دو‌ی Amazon Bedrock و Google Vertex AI نشان می‌دهند:

ورک‌فلوی Amazon Bedrock

پیش‌نیازها:

  • دسترسیِ Amazon Bedrock با دسترسیِ مدل‌های Claude فعال باشد
  • GitHub به‌عنوانِ یک OIDC identity provider در AWS پیکربندی شده باشد
  • IAM role با دسترسی‌های Bedrock که به GitHub Actions اعتماد دارد

secretهای لازمِ GitHub:

نامِ Secretتوضیح
AWS_ROLE_TO_ASSUMEARNِ IAM role برای دسترسی به Bedrock
APP_IDApp IDِ GitHub Appت (از تنظیماتِ app)
APP_PRIVATE_KEYprivate keyای که برای GitHub Appت تولید کردی
name: Claude PR Action
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
jobs:
claude-pr:
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 == 'issues' && contains(github.event.issue.body, '@claude'))
runs-on: ubuntu-latest
env:
AWS_REGION: us-west-2
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Generate GitHub App token
id: app-token
uses: actions/create-github-app-token@v2
with:
app-id: ${{ secrets.APP_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}
- name: Configure AWS Credentials (OIDC)
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}
aws-region: us-west-2
- uses: anthropics/claude-code-action@v1
with:
github_token: ${{ steps.app-token.outputs.token }}
use_bedrock: "true"
claude_args: '--model us.anthropic.claude-sonnet-4-6 --max-turns 10'
ورک‌فلوی Google Vertex AI

پیش‌نیازها:

  • Vertex AI API در پروژه‌ی GCPت فعال باشد
  • Workload Identity Federation برای GitHub پیکربندی شده باشد
  • service account با دسترسی‌های Vertex AI

secretهای لازمِ GitHub:

نامِ Secretتوضیح
GCP_WORKLOAD_IDENTITY_PROVIDERنامِ منبعِ workload identity provider
GCP_SERVICE_ACCOUNTایمیلِ service account با دسترسی به Vertex AI
APP_IDApp IDِ GitHub Appت (از تنظیماتِ app)
APP_PRIVATE_KEYprivate keyای که برای GitHub Appت تولید کردی
name: Claude PR Action
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
jobs:
claude-pr:
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 == 'issues' && contains(github.event.issue.body, '@claude'))
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Generate GitHub App token
id: app-token
uses: actions/create-github-app-token@v2
with:
app-id: ${{ secrets.APP_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}
- name: Authenticate to Google Cloud
id: auth
uses: google-github-actions/auth@v2
with:
workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}
- uses: anthropics/claude-code-action@v1
with:
github_token: ${{ steps.app-token.outputs.token }}
trigger_phrase: "@claude"
use_vertex: "true"
claude_args: '--model claude-sonnet-4-5@20250929 --max-turns 10'
env:
ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}
CLOUD_ML_REGION: us-east5
VERTEX_REGION_CLAUDE_4_5_SONNET: us-east5

Claude به دستورهای @claude پاسخ نمی‌دهد

Section titled “Claude به دستورهای @claude پاسخ نمی‌دهد”

بررسی کن که GitHub App درست نصب شده باشد، مطمئن شو ورک‌فلوها فعال‌اند، اطمینان حاصل کن کلیدِ API در secretهای مخزن تنظیم شده، و تأیید کن که کامنت شاملِ @claude است (نه /claude).

CI روی کامیت‌های Claude اجرا نمی‌شود

Section titled “CI روی کامیت‌های Claude اجرا نمی‌شود”

مطمئن شو که از GitHub App یا appِ سفارشی استفاده می‌کنی (نه کاربرِ Actions)، بررسی کن که تریگرهای ورک‌فلو شاملِ رویدادهای لازم باشند، و تأیید کن که دسترسی‌های app شاملِ تریگرهای CI است.

تأیید کن که کلیدِ API معتبر است و دسترسیِ کافی دارد. برای Bedrock/Vertex، پیکربندیِ credentialها را بررسی کن و مطمئن شو که secretها در ورک‌فلوها با نامِ درست نام‌گذاری شده‌اند.

نسخه‌ی v1‌ِ Claude Code Action از یک پیکربندیِ ساده‌شده استفاده می‌کند:

پارامترتوضیحاجباری
promptدستورها برای Claude (متنِ ساده یا نامِ یک skill)خیر*
claude_argsآرگومان‌های CLI که به Claude Code پاس داده می‌شوندخیر
plugin_marketplacesفهرستِ خط‌به‌خطِ URLهای Gitِ marketplaceهای pluginخیر
pluginsفهرستِ خط‌به‌خطِ نامِ pluginها برای نصب پیش از اجراخیر
anthropic_api_keyکلیدِ Claude APIبله**
github_tokenتوکنِ GitHub برای دسترسی به APIخیر
trigger_phraseعبارتِ تریگرِ سفارشی (پیش‌فرض: “@claude”)خیر
use_bedrockاستفاده از Amazon Bedrock به‌جای Claude APIخیر
use_vertexاستفاده از Google Vertex AI به‌جای Claude APIخیر

*prompt اختیاری است — وقتی برای کامنت‌های issue/PR حذف شود، Claude به عبارتِ تریگر پاسخ می‌دهد
**برای Claude APIِ مستقیم لازم است، برای Bedrock/Vertex لازم نیست

پاس‌دادنِ آرگومان‌های CLI

Section titled “پاس‌دادنِ آرگومان‌های CLI”

پارامترِ claude_args هر آرگومانِ CLIِ Claude Code را می‌پذیرد:

claude_args: "--max-turns 5 --model claude-sonnet-4-6 --mcp-config /path/to/config.json"

آرگومان‌های رایج:

  • --max-turns: بیشینه‌ی نوبت‌های گفتگو (پیش‌فرض: 10)
  • --model: مدلِ موردِ استفاده (برای مثال، claude-sonnet-4-6)
  • --mcp-config: مسیرِ پیکربندیِ MCP
  • --allowedTools: فهرستِ ابزارهای مجاز با جداکننده‌ی کاما. نامِ مستعارِ --allowed-tools هم کار می‌کند.
  • --debug: فعال‌کردنِ خروجیِ دیباگ

روش‌های جایگزینِ یکپارچه‌سازی

Section titled “روش‌های جایگزینِ یکپارچه‌سازی”

با اینکه دستورِ /install-github-app رویکردِ توصیه‌شده است، می‌توانی این کارها را هم بکنی:

  • GitHub App سفارشی: برای سازمان‌هایی که به نام‌کاربری‌های برنددار یا جریان‌های احراز هویتِ سفارشی نیاز دارند. GitHub App خودت را با دسترسی‌های لازم (contents، issues، pull requests) بساز و از actionِ actions/create-github-app-token برای تولیدِ توکن در ورک‌فلوهایت استفاده کن.
  • GitHub Actions دستی: پیکربندیِ مستقیمِ ورک‌فلو برای بیشترین انعطاف‌پذیری
  • پیکربندیِ MCP: بارگذاریِ پویای سرورهای Model Context Protocol

برای راهنماهای تفصیلیِ احراز هویت، امنیت و پیکربندیِ پیشرفته، مستنداتِ Claude Code Action را ببین.

سفارشی‌سازیِ رفتارِ Claude

Section titled “سفارشی‌سازیِ رفتارِ Claude”

می‌توانی رفتارِ Claude را به دو روش پیکربندی کنی:

  1. CLAUDE.md: استانداردهای کدنویسی، معیارهای بازبینی و قواعدِ مخصوصِ پروژه را در یک فایلِ CLAUDE.md در ریشه‌ی مخزنت تعریف کن. Claude هنگامِ ساختِ PRها و پاسخ به درخواست‌ها از این راهنماها پیروی می‌کند. برای جزئیاتِ بیشتر مستنداتِ حافظه (Memory) ما را ببین.
  2. promptهای سفارشی: از پارامترِ prompt در فایلِ ورک‌فلو برای دادنِ دستورهای مخصوصِ ورک‌فلو استفاده کن. این به تو امکان می‌دهد رفتارِ Claude را برای ورک‌فلوها یا کارهای مختلف سفارشی کنی.

Claude هنگامِ ساختِ PRها و پاسخ به درخواست‌ها از این راهنماها پیروی می‌کند.