Google A2UI: DevOps 및 SRE를 위한 Agentic AI의 미래 (텍스트 전용 ChatOps와 작별)

발행: (2025년 12월 28일 오전 04:54 GMT+9)
12 min read
원문: Dev.to

Source: Dev.to

Cover image for Google A2UI: The Future of Agentic AI for DevOps & SRE (Goodbye Text‑Only ChatOps)

Deneesh Narayanasamy

“텍스트‑전용” ChatOps 시대가 끝나가고 있습니다. 구글의 새로운 오픈소스 프로토콜 A2UI는 AI 에이전트가 네이티브하고 인터랙티브한 인터페이스를 렌더링하도록 합니다. 플랫폼 엔지니어와 SRE가 알아야 할 내용은 다음과 같습니다.

🚀 TL;DR (바쁜 엔지니어를 위해)

  • 이게 뭐죠?
    A2UI (Agent‑to‑User Interface) – Google에서 만든 오픈‑소스 표준으로, AI 에이전트가 순수 텍스트나 HTML 대신 JSON 형태의 UI 컴포넌트를 생성할 수 있게 합니다.

  • 왜 신경 써야 할까요?
    ChatOps에서 발생하는 “텍스트 벽” 문제를 해소합니다. 이제 에이전트가 채팅 애플리케이션이나 내부 포털 안에서 인터랙티브 폼, 차트, 버튼 등을 직접 표시할 수 있습니다.

  • 핵심 기술:
    데이터처럼 안전하고 코드처럼 표현력이 풍부한 선언형 JSON 페이로드로, 임의의 JavaScript 실행이 필요 없게 합니다.

  • 사용 사례:
    SRE 인시던트 대응, MLOps 라벨링, 그리고 셀프 서비스 인프라에 이상적입니다.

문제: “텍스트 벽” 병목

우리 모두 겪어본 적이 있습니다. 새벽 3시, P1 사고에 대응하고 있는데 Ops 봇에 질의합니다:

@ops-bot status service-payments

봇은 포맷되지 않은 JSON 로그 50줄을 응답합니다. 문제를 해결하려면 다음을 해야 합니다:

  1. 정확한 CLI 구문을 기억한다.
  2. 직접 입력한다.
  3. 지역 플래그에 오타가 없기를 바란다.

이것이 AI‑기반 운영에서의 “마지막 마일” 문제입니다. 뛰어난 LLM은 복잡한 Kubernetes 문제를 진단할 수 있지만, 어설픈 텍스트 채널을 통해 소통해야 합니다. 이 마찰은 인지 부하를 증가시키고 평균 복구 시간(MTTR)을 늦춥니다.

A2UI 소개: “데이터처럼 안전하고, 코드처럼 표현력 풍부”

Google은 이 격차를 메우기 위해 A2UI를 출시했습니다. 무거운 iframe에 의존하거나 위험한 raw‑HTML 삽입을 사용하던 기존 방식과 달리, A2UI는 표준화된 JSON 스키마를 사용합니다.

작동 방식

  1. 에이전트가 요청을 분석하고 JSON “청사진”을 전송합니다.
  2. 클라이언트(웹 포털, 모바일 앱, 채팅 인터페이스 등)가 그 JSON을 받습니다.
  3. 렌더러가 해당 JSON을 네이티브 컴포넌트(React, Flutter, Angular 등)로 변환하여 브랜드 스타일 시스템에 맞춥니다.

왜 이 아키텍처가 DevOps에 유리한가

  • Security First – The agent cannot execute code. It can only request components (e.g., Card, Button, Graph) that exist in your client’s allow list.

    • 보안 우선 – 에이전트는 코드를 실행할 수 없습니다. 클라이언트의 허용 목록에 존재하는 구성 요소(예: Card, Button, Graph)만 요청할 수 있습니다.
  • Native Feel – The UI looks and behaves like your internal developer platform, not a disjointed third‑party embed.

    • 네이티브 느낌 – UI가 내부 개발자 플랫폼처럼 보이고 동작하며, 별개의 서드파티 임베드가 아닙니다.
  • Bi‑Directional Sync – Clicking “Restart Pod” updates the state instantly in the UI without a page refresh.

    • 양방향 동기화 – “Restart Pod”를 클릭하면 페이지 새로고침 없이 UI에서 상태가 즉시 업데이트됩니다.

플랫폼 팀을 위한 몇 가지 사용 사례

내부 개발자 플랫폼(IDP)을 구축하고 있다면, 오늘 A2UI를 활용할 수 있는 방법은 다음과 같습니다.

1. 인터랙티브 인시던트 커맨더 (SRE)

Grafana 대시보드에 링크를 제공하는 대신, 에이전트가 대화 내에서 대시보드를 생성합니다.

트리거A2UI 응답
“알림: 결제 과정에서 높은 지연 발생.”인터랙티브 카드 포함:
• 📉 시각화: 오류율 실시간 미니 차트 (최근 15 분).
• 📝 컨텍스트: 최근 세 번 배포 요약.
• 🔴 액션: 특정 GitHub 워크플로를 트리거하는 “Rollback” 버튼.

2. Human‑in‑the‑Loop MLOps

MLOps 팀은 모델 신뢰도가 낮은 “엣지 케이스”에 자주 어려움을 겪습니다. 라벨러를 위한 맞춤형 웹 앱을 구축하는 비용이 많이 듭니다.

시나리오A2UI 솔루션
사기 모델이 45 % 신뢰도로 거래를 표시합니다.에이전트가 Ops 채널에 **“리뷰 카드”**를 푸시합니다.
내용: 거래 메타데이터 + 사용자 이력.
입력: [Confirm Fraud][False Positive] 버튼.
결과: 클릭으로 데이터에 라벨이 지정되고 즉시 파인‑튜닝 작업이 트리거됩니다.

3. 셀프‑서비스 인프라 프로비저닝

간단한 리소스에 대해 개발자가 Terraform을 작성하도록 하지 마세요.

요청A2UI 응답
“스테이징용 Redis 인스턴스가 필요합니다.”동적 폼이 표시됩니다:
드롭다운: 환경 선택 (Dev / Stage).
슬라이더: TTL / 보존 기간 선택.
검증: 사용자가 Submit을 클릭하기 에이전트가 할당량을 검증합니다.

코드: 페이로드 구조

개발자를 위해 실제 와이어 프로토콜이 어떻게 생겼는지 보여드립니다. 매우 읽기 쉽습니다:

{
  "component": "Card",
  "title": "⚠️ Production Alert: High CPU",
  "children": [
    {
      "component": "Text",
      "content": "Service 'payment-gateway' is at 98% utilization."
    },
    {
      "component": "Row",
      "children": [
        {
          "component": "Button",
          "label": "Scale Up (5 Nodes)",
          "action": "scale_up_action",
          "style": "primary"
        },
        {
          "component": "Button",
          "label": "Snooze Alert",
          "action": "snooze_action",
          "style": "secondary"
        }
      ]
    }
  ]
}

이 JSON은 플랫폼에 구애받지 않습니다. React 프런트엔드는 이를 Material‑UI 카드로 렌더링할 수 있고, iOS 앱은 이를 네이티브 SwiftUI 뷰로 렌더링할 수 있습니다.

A2UI vs. MCP vs. Standard ChatOps

For those comparing this to Anthropic’s MCP (Model Context Protocol) or classic webhooks, here’s a quick breakdown:

FeatureStandard ChatOpsMCP (Model Context Protocol)A2UI
Payload type일반 텍스트 / 마크다운구조화된 모델‑중심 데이터선언적 JSON UI 스키마
Security model내장 샌드박스 없음맞춤형 샌드박스 필요에이전트가 코드를 실행할 수 없으며, 허용된 컴포넌트만 요청 가능
Native UI rendering없음 (텍스트만)클라이언트 구현에 따라 다름클라이언트‑측 렌더러가 네이티브 컴포넌트를 생성
Bi‑directional interaction제한적 (콜백을 통한 버튼)가능하지만 표준화되지 않음액션을 통한 즉시 상태 동기화
Extensibility낮음 (텍스트 명령)중간 (모델‑기반)높음 – 스키마를 통해 새로운 컴포넌트 유형 추가
Use‑case focus간단한 운영 명령일반 모델‑클라이언트 통신DevOps / SRE 인터랙티브 워크플로

표는 핵심 차별점을 요약한 것이며, 사양이 성숙함에 따라 세부 사항이 변할 수 있습니다.

Bottom line

A2UI는 Platform Engineers에게 안전하고, 네이티브하며, 인터랙티브한 방법을 제공하여 AI 에이전트가 단순히 텍스트를 내뱉는 것을 넘어선 작업을 수행하게 합니다. UI 레이어를 선언형 JSON 계약으로 옮김으로써 LLMs의 지능과 native applications의 사용성을 모두 얻을 수 있습니다.

다음 내부 도구에서 한 번 사용해 보세요—당신의 on‑call engineers가 고마워할 것입니다.

Ext Protocol – Google A2UI

카테고리옵션 1옵션 2옵션 3
출력텍스트 / 정적 이미지리소스 / 텍스트 / 프롬프트네이티브 UI 구성 요소
상호작용낮음 (명령줄)중간 (도구 사용)높음 (상태 유지 UI)
보안높음높음높음 (코드 실행 없음)
구현쉬움보통보통
권장 대상간단한 질의데이터 소스 연결인간이 참여하는 워크플로우

굵게 표시된 항목은 각 카테고리에서 가장 고급이거나 권장되는 선택을 나타냅니다.

시작하기

Google은 사양과 렌더러를 오픈소스로 공개했습니다. 리포지토리를 복제하고 Restaurant Finder 샘플을 실행하여 렌더링이 실제로 어떻게 동작하는지 확인하세요(DevOps용 Service Finder로도 완벽하게 변환됩니다).

git clone https://github.com/google/A2UI.git

클라이언트 샘플로 이동

cd A2UI/samples/client/lit/shell

설치 및 실행

npm install && npm run dev

최종 생각: 생성형 UI로의 전환

우리는 generic UIs(모든 것을 보여주는 대시보드)에서 generative UIs—해당 문제에 정확히 맞는 인터페이스를 즉석에서 생성하는 방식으로 이동하고 있습니다.

DevOps와 SRE를 위해, A2UI는 이 미래를 가능하게 하는 툴킷입니다. ChatOps의 “Chat”을 유지하면서 마침내 “Ops”의 번거로움을 없애줍니다.

🔗 Resources

Ops 워크플로우에 생성형 UI를 구현해 보셨나요?
아래 댓글에 경험을 공유해 주세요!

Back to Blog

관련 글

더 보기 »

SRE 주간 호 #502

sreweekly.com에서 보기: Cold Starts 제거 2: shard and conquer. Cloudflare는 sharding 및 일관적인 방법을 통해 Workers 요청의 cold-start 비율을 감소시켰습니다.