Bỏ qua đến nội dung chính

Github integration

📖 Nội dung bài học

Lùi← Họ phông chữ

Tóm tắt

Claude Code cung cấp tích hợp GitHub chính thức, cho phép Claude chạy bên trong GitHub Actions. Tích hợp này cung cấp hai luồng công việc chính: hỗ trợ đề cập cho các vấn đề và yêu cầu kéo, và xem xét yêu cầu kéo tự động.

Thiết lập Tích hợp

Để bắt đầu, bạn chạy /install-github-app trong Claude. Lệnh này hướng dẫn bạn qua quá trình thiết lập:

  • Cài đặt ứng dụng Claude Code trên GitHub
  • Thêm API key của bạn
  • Tự động tạo một yêu cầu kéo với các tệp workflow

Yêu cầu kéo được tạo sẽ thêm hai GitHub Actions vào kho lưu trữ của bạn. Sau khi hợp nhất, bạn sẽ có các tệp workflow trong thư mục .github/workflows của mình.

GitHub Actions Mặc định

Tích hợp cung cấp hai luồng công việc chính:

Hành động Đề cập

Bạn có thể đề cập Claude trong bất kỳ vấn đề hoặc yêu cầu kéo nào bằng cách dùng @claude. Khi được đề cập, Claude sẽ:

  • Phân tích yêu cầu và tạo một kế hoạch tác vụ
  • Thực hiện tác vụ với quyền truy cập đầy đủ vào codebase của bạn
  • Phản hồi với kết quả trực tiếp trong vấn đề hoặc PR

Hành động Yêu cầu Kéo

Bất cứ khi nào bạn tạo một yêu cầu kéo, Claude sẽ tự động:

  • Xem xét các thay đổi được đề xuất
  • Phân tích tác động của các sửa đổi
  • Đăng một báo cáo chi tiết trên yêu cầu kéo

Tùy chỉnh Các luồng công việc

Sau khi hợp nhất yêu cầu kéo ban đầu, bạn có thể tùy chỉnh các tệp workflow để phù hợp với nhu cầu của dự án. Dưới đây là cách để cải thiện luồng công việc đề cập:

Thêm Thiết lập Dự án

Trước khi Claude chạy, bạn có thể thêm các bước để chuẩn bị môi trường của mình:

- name: Project Setup
  run: |
    npm run setup
    npm run dev:daemon

Hướng dẫn Tùy chỉnh

Cung cấp cho Claude ngữ cảnh về thiết lập dự án của bạn:

custom_instructions: |
  Dự án đã được thiết lập với tất cả các dependencies đã được cài đặt.
  Server đã chạy tại localhost:3000. Logs từ nó
  đang được ghi vào logs.txt. Nếu cần, bạn có thể truy vấn
  db với cli 'sqlite3'. Nếu cần, dùng bộ công cụ mcp__playwright
  để khởi chạy một trình duyệt và tương tác với ứng dụng.

Cấu hình MCP Server

Bạn có thể cấu hình MCP servers để cung cấp cho Claude các khả năng bổ sung:

mcp_config: |
  {
    "mcpServers": {
      "playwright": {
        "command": "npx",
        "args": [
          "@playwright/mcp@latest",
          "--allowed-origins",
          "localhost:3000;cdn.tailwindcss.com;esm.sh"
        ]
      }
    }
  }

Quyền Công cụ

Khi chạy Claude trong GitHub Actions, bạn phải liệt kê rõ ràng tất cả các công cụ được phép. Điều này đặc biệt quan trọng khi dùng MCP servers.

allowed_tools: "Bash(npm:*),Bash(sqlite3:*),mcp__playwright__browser_snapshot,mcp__playwright__browser_click,..."

Không giống như phát triển cục bộ, không có phím tắt nào cho quyền trong GitHub Actions. Mỗi công cụ từ mỗi MCP server phải được liệt kê riêng lẻ.

Các Phương pháp Tốt nhất

Khi thiết lập tích hợp GitHub của Claude:

  • Bắt đầu với các luồng công việc mặc định và tùy chỉnh dần dần
  • Dùng hướng dẫn tùy chỉnh để cung cấp ngữ cảnh cụ thể cho dự án
  • Rõ ràng về quyền công cụ khi dùng MCP servers
  • Kiểm tra các luồng công việc của bạn với các tác vụ đơn giản trước các tác vụ phức tạp
  • Xem xét các nhu cầu cụ thể của dự án của bạn khi cấu hình các bước bổ sung

Tích hợp GitHub biến Claude từ một trợ lý phát triển thành một thành viên nhóm tự động, có thể xử lý các tác vụ, xem xét code và cung cấp thông tin chi tiết trực tiếp trong luồng công việc GitHub của bạn.

🔁 Bài học liên quan

📚 Nguồn & ghi nhận

Bài học có hữu ích không?

Góp ý / Báo lỗiPhát hiện sai sót hoặc có ý tưởng cải thiện?