continuous-ai

2 개의 포스트

github

GitHub 에이전틱 워크플 (새 탭에서 열림)

GitHub Agentic Workflows는 자연어로 작성한 Markdown 지시를 GitHub Actions에서 코딩 에이전트가 실행하도록 해 저장소 업무를 자동화하는 기술이다. 이슈 분류, 문서 갱신, 테스트 보강, CI 실패 분석처럼 기존의 결정론적 YAML 워크플로로는 처리하기 어려운 작업을 자동화하면서도, 권한·샌드박스·검토 절차를 통해 통제할 수 있도록 설계됐다. GitHub는 이를 CI/CD를 대체하는 것이 아니라 보완하는 “Continuous AI”로 소개하며, 2026년 2월 기술 프리뷰로 공개했다. ## Markdown으로 정의하는 에이전트 기반 저장소 자동화 - 원하는 결과를 일반 Markdown으로 설명하고, 이를 저장소의 자동화 워크플로로 등록한다. - 워크플로는 GitHub Actions에서 실행되며, 설정에 따라 다음과 같은 코딩 에이전트를 사용할 수 있다. - Copilot CLI - Claude Code - OpenAI Codex - 기존 개발팀이 이미 사용하는 GitHub Actions의 권한 관리, 로그, 감사 기능, 저장소 컨텍스트를 그대로 활용한다. - 복잡한 절차를 직접 YAML로 세부 구현하기보다, 사람이 의도와 목표를 설명하고 에이전트가 저장소를 분석해 작업을 수행하는 방식이다. ## 지속적인 저장소 관리에 활용되는 작업 - **이슈 트리아지** - 새 이슈를 요약하고 라벨을 붙인다. - 관련 담당자나 적절한 처리 경로로 이슈를 분류한다. - **문서 유지 관리** - 코드 변경 사항을 분석해 README와 기술 문서를 최신 상태로 갱신한다. - **코드 단순화** - 반복적으로 개선 가능한 코드를 식별한다. - 개선안을 pull request로 생성해 사람이 검토하도록 한다. - **테스트 개선** - 테스트 커버리지를 평가한다. - 가치가 높은 테스트를 추가하도록 제안하거나 pull request를 만든다. - **품질 관리** - CI 실패 원인을 조사한다. - 문제에 맞는 구체적인 수정안을 제안한다. - **정기 보고** - 저장소의 건강 상태, 활동량, 주요 추세를 정기적으로 분석하고 보고서를 작성한다. ## Continuous AI와 기존 CI/CD의 관계 - GitHub는 에이전트 기반 자동화를 소프트웨어 개발 생명주기에 AI를 지속적으로 결합하는 **Continuous AI**라고 부른다. - Agentic Workflow는 빌드, 테스트, 릴리스처럼 결과가 명확하고 결정론적인 CI/CD 파이프라인을 대체하지 않는다. - 대신 다음과 같이 판단과 분석이 필요한 작업을 담당한다. - 어떤 이슈가 중요한지 판단 - 문서와 코드의 불일치 탐색 - 실패 원인 분석 - 개선 가치가 높은 테스트나 리팩터링 선별 - 따라서 기존 CI/CD는 안정적인 검증과 배포를 담당하고, Agentic Workflow는 저장소 운영과 엔지니어링 작업의 지능화를 담당하는 구조다. ## 권한과 안전장치 - 안전성과 통제는 설계의 핵심 요소로 제시된다. - 워크플로는 기본적으로 **읽기 전용 권한**으로 실행된다. - 파일 수정, 이슈 변경, pull request 생성 등 쓰기 작업은 명시적인 승인이 필요하다. - 쓰기 작업은 **safe outputs**를 통해 사전에 허용된 형태로 제한하고, 사람이 검토할 수 있도록 한다. - 샌드박스 실행, 권한 제어, 감사 로그, 실행 기록 등을 활용해 의도하지 않은 동작과 프롬프트 인젝션 공격에 대비한다. - 결과적으로 에이전트가 자율적으로 작업하더라도, 실행 시점과 변경 범위를 저장소 관리자가 정의한 경계 안에 둘 수 있다. ## 실제 적용 사례와 기대 효과 - Home Assistant에서는 대규모 이슈를 분석해 반복적으로 나타나는 문제와 사용자에게 영향이 큰 이슈를 파악하는 데 활용한다. - CNCF는 문서 자동화와 조직 차원의 팀 보고를 개선하는 데 사용하고 있다. - Carvana는 여러 저장소에 걸친 엔지니어링 작업에 에이전트를 적용하면서도 내장된 제어 기능을 활용하고 있다. - 개인 저장소부터 오픈소스 프로젝트와 대기업 규모의 복잡한 시스템까지 적용 범위를 확장할 수 있다. - 반복적인 관리 업무를 줄이고, 사람이 중요한 판단과 검토에 집중하도록 돕는 것이 주요 목표다. 실제로 도입할 때는 읽기 전용·보고서 생성처럼 위험이 낮은 작업부터 시작한 뒤, 사람이 검토하는 pull request 생성 단계로 확장하는 것이 적절하다. 빌드와 배포 파이프라인은 기존 CI/CD로 유지하고, Agentic Workflow는 분석·분류·문서화·개선 제안처럼 판단이 필요한 업무에 사용하는 편이 안전하다.

github

실무에서의 지속적인 AI: 에 (새 탭에서 열림)

소프트웨어 개발에는 테스트·빌드처럼 규칙으로 자동화할 수 있는 작업뿐 아니라, 코드의 의도와 맥락을 해석해야 하는 작업도 많다. GitHub가 제안하는 **Continuous AI**는 CI를 대체하지 않고, 자연어로 정의한 기대사항을 에이전트가 지속적으로 검토하도록 해 문서 불일치, 성능 회귀, 버그 추세 분석 같은 판단 중심 업무를 자동화한다. 다만 에이전트의 권한과 산출물을 명시적으로 제한해 개발자의 검토와 통제를 유지하는 것이 핵심이다. ## CI가 해결하지 못하는 판단 중심 업무 - CI는 테스트, 빌드, 포맷팅, 정적 분석처럼 결과를 이진적으로 판단할 수 있는 작업에 적합하다. - 테스트가 통과했는지 - 빌드가 성공했는지 - 정해진 린트 규칙을 위반했는지 - 반면 다음과 같은 문제는 단순한 규칙이나 휴리스틱만으로 판단하기 어렵다. - 문서의 설명과 실제 구현이 서로 다른 경우 - 접근성 린터는 통과하지만 사용자에게 여전히 혼란스러운 문구 - 메이저 버전 변경 없이 의존성의 플래그 동작이 바뀐 경우 - 반복문 안에서 정규식을 컴파일해 발생하는 미묘한 성능 저하 - 실제 제품과 상호작용해야만 드러나는 UI 동작 변화 - 이런 문제는 코드가 의도와 일치하는지, 사용자 경험이나 성능에 문제가 없는지를 해석해야 한다. - GitHub Next는 코드 생성 중심의 AI에서 나아가, 개발자의 인지 부담이 큰 반복 업무를 대신 처리하는 방향을 제시한다. ## Continuous AI의 개념 - Continuous AI는 CI를 대체하는 새로운 제품이 아니라 자동화 패턴이다. - 핵심 구조는 다음과 같다. - **자연어 규칙** - **에이전트의 추론** - **저장소 안에서의 지속적 실행** - 개발자는 코드에 대해 “무엇이 참이어야 하는가”를 자연어로 정의한다. - 에이전트는 저장소를 분석한 뒤 다음과 같은 검토 가능한 산출물을 만든다. - 수정 제안 - 풀 리퀘스트 - 이슈 - 댓글 또는 토론 - 프로젝트 활동·품질 관련 인사이트 - 예시로는 다음과 같은 워크플로가 있다. - 문서와 구현의 차이를 찾아 원인을 설명하고 수정안 제시 - 매주 프로젝트 활동, 버그 증가 추세, 코드 변경량이 급증한 영역 요약 - 핵심 경로의 성능 회귀 탐지 - 사용자 흐름에서 의미상 회귀가 발생했는지 확인 - 실제 워크플로는 한 문장으로 완성되지 않는다. 개발자와 에이전트가 의도, 제약 조건, 허용 가능한 결과를 반복적으로 조정하며 만든다. ## YAML과 자연어의 역할 분담 - 문제가 명확한 규칙으로 표현된다면 YAML, 스키마, 린터, 기존 CI가 여전히 가장 적합하다. - 그러나 “문서와 코드가 불일치하면 찾아서 수정하라”와 같은 요구는 정규식이나 스키마만으로 의미를 보존하기 어렵다. - 자연어는 코드의 의미와 개발자의 의도를 설명하는 데 유리하다. - 따라서 Continuous AI는 YAML 기반 CI를 대체하는 것이 아니라, CI가 다루기 어려운 의미·맥락 중심의 자동화를 보완한다. ## 권한과 안전한 산출물 - 에이전트는 기본적으로 저장소에 읽기 전용 권한만 가진다. - 명시적으로 허용하지 않는 한 다음 작업을 수행할 수 없다. - 이슈 생성 - 풀 리퀘스트 생성 - 파일이나 콘텐츠 수정 - **Safe Outputs**는 에이전트가 만들 수 있는 산출물과 조건을 명시하는 결정적 계약이다. - 워크플로를 정의할 때 개발자는 에이전트가 어떤 결과를 만들 수 있는지와 그 제약을 지정한다. - 예상 밖의 동작에 대비해 다음 안전장치를 둔다. - 출력 정제 - 명시적 권한 관리 - 전체 활동 기록 및 감사 가능성 - 제한된 권한으로 인한 예측 가능한 영향 범위 - 따라서 목표는 AI가 개발을 자율적으로 장악하는 것이 아니라, 개발자가 정한 경계 안에서 반복적인 판단 업무를 수행하게 하는 것이다. ## 개발자의 검토를 유지하는 방식 - 에이전트는 자율적으로 커밋을 확정하는 대신, 개발자가 검토할 수 있는 형태로 결과를 제출한다. - 가장 일반적인 출력은 풀 리퀘스트이며, 기존의 코드 리뷰 방식과 자연스럽게 연결된다. - 개발자는 AI가 생성한 결과를 검토하고, 자신의 판단과 취향을 최종적으로 유지한다. - 장기적으로는 개발자가 계속 직접 수행할 일과 AI에 위임할 일을 구분하는 것이 중요하다. 실무에서는 먼저 읽기 전용 분석과 보고서 생성부터 도입하고, 결과의 품질이 검증된 뒤 이슈 생성이나 풀 리퀘스트 작성 권한을 제한적으로 부여하는 방식이 안전하다. 결정적 규칙은 CI에 남기고, 의도·맥락·해석이 필요한 업무만 자연어 기반 에이전트 워크플로로 확장하는 것이 바람직하다.