{"meta":{"title":"GitHub Actions 도우미","intro":"GitHub Actions 워크플로를 생성하고 개선합니다.","product":"GitHub Copilot","breadcrumbs":[{"href":"/ko/copilot","title":"GitHub Copilot"},{"href":"/ko/copilot/tutorials","title":"자습서"},{"href":"/ko/copilot/tutorials/customization-library","title":"사용자 지정 라이브러리"},{"href":"/ko/copilot/tutorials/customization-library/custom-instructions","title":"사용자 지정 지침"},{"href":"/ko/copilot/tutorials/customization-library/custom-instructions/github-actions-helper","title":"GitHub Actions 도우미"}],"documentType":"article"},"body":"# GitHub Actions 도우미\n\nGitHub Actions 워크플로를 생성하고 개선합니다.\n\n> \\[!NOTE]\n>\n> * 이 라이브러리의 예시는 영감을 얻기 위한 것입니다. 프로젝트, 언어, 팀 프로세스에 더 구체적으로 맞게 조정하는 것이 좋습니다.\n> * 특정 언어 및 시나리오에 대한 사용자 지정 지침의 커뮤니티 기여 예시는 [우수한 GitHub Copilot 사용자 지정](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md) 리포지토리를 참조하세요.\n> * 사용자 지정 지침을 만드는 플랫폼 또는 IDE에 따라 다양한 범위에서 사용자 지정 지침을 적용할 수 있습니다. 자세한 내용은 \"[GitHub Copilot 응답을 사용자 지정하는 방법에 대한 정보](/ko/copilot/concepts/response-customization)\"을(를) 참조하세요.\n\n> \\[!NOTE]\n>\n> * 이 라이브러리의 예시는 영감을 얻기 위한 것입니다. 프로젝트, 언어, 팀 프로세스에 더 구체적으로 맞게 조정하는 것이 좋습니다.\n> * 특정 언어 및 시나리오에 대한 사용자 지정 지침의 커뮤니티 기여 예시는 [우수한 GitHub Copilot 사용자 지정](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md) 리포지토리를 참조하세요.\n> * 사용자 지정 지침을 만드는 플랫폼 또는 IDE에 따라 다양한 범위에서 사용자 지정 지침을 적용할 수 있습니다. 자세한 내용은 \"[GitHub Copilot 응답을 사용자 지정하는 방법에 대한 정보](/ko/copilot/concepts/response-customization)\"을(를) 참조하세요.\n>   아래 예시는 `actions.instructions.md` 필드를 활용하여 리포지토리 내의 `applyTo` 파일에 한정하여 적용되는 경로 기반 GitHub Actions 설정 파일을 보여줍니다.\n\n````text copy\n---\napplyTo: \".github/workflows/**/*.yml\"\n---\n\nWhen generating or improving GitHub Actions workflows:\n\n## Security First\n- Use GitHub secrets for sensitive data, never hardcode credentials\n- Pin third-party actions to specific commits by using the SHA value (e.g., `- uses: owner/some-action@a824008085750b8e136effc585c3cd6082bd575f`)\n- Configure minimal permissions for GITHUB_TOKEN required for the workflow\n\n## Performance Essentials\n- Cache dependencies with `actions/cache` or built-in cache options\n- Add `timeout-minutes` to prevent hung workflows\n- Use matrix strategies for multi-environment testing\n\n## Best Practices\n- Use descriptive names for workflows, jobs, and steps\n- Include appropriate triggers: `push`, `pull_request`, `workflow_dispatch`\n- Add `if: always()` for cleanup steps that must run regardless of failure\n\n## Example Pattern\n```yaml\nname: CI\non: [push, pull_request]\n\njobs:\n  test:\n    runs-on: ubuntu-latest\n    timeout-minutes: 10\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v4\n        with:\n          node-version: 20\n          cache: npm\n      - run: npm ci\n      - run: npm test\n```\n````\n\n## 추가 참고 자료\n\n* [GitHub Copilot 응답을 사용자 지정하는 방법에 대한 정보](/ko/copilot/concepts/response-customization) - GitHub Copilot의 응답 사용자 지정 개요\n* [에 대한 사용자 지정 지침 추가 Copilot](/ko/copilot/how-tos/configure-custom-instructions) - 사용자 지정 지침을 구성하는 방법\n* [멋진 GitHub Copilot 사용자 지정](https://github.com/github/awesome-copilot/blob/main/README.md) - 특정 언어 및 시나리오의 커뮤니티 기여 사용자 지정 지침 및 기타 사용자 지정 리포지토리"}