버그 티켓 관리, AI가 대신해준다면? - ADK로 직접 만드는 AI 디버깅 에이전트 완전 가이드
프로젝트가 커질수록 늘어나는 고객 문의, 알 수 없는 에러 메시지, 복잡한 의존성 문제들.
하루에도 수십 개씩 쏟아지는 버그 리포트와 티켓을 보며 "이걸 좀 더 자동화할 수는 없을까?" 하는 생각, 해보신 적 있을 겁니다.
여기, 진짜로 그 일을 도와줄 수 있는 AI 도우미가 있습니다.
바로 ADK(Agent Development Kit)를 이용한 AI 디버깅 에이전트입니다.
이 글에서는 단순한 소개를 넘어,
ADK의 기본 구조부터 실제 구축 방법, 그리고 외부 도구와의 연동 방식까지 상세하게 설명합니다.
당신이 직접 실무에서 사용할 수 있는 지능형 티켓 관리 시스템을 구현할 수 있도록 돕는 것이 이 글의 목적입니다.
AI Agent란 무엇인가?
기존의 자동화 시스템은 주로 정해진 규칙(rule)만을 따릅니다.
하지만 AI 에이전트는 다릅니다.
LLM 기반의 추론 능력을 바탕으로 상황을 이해하고, 그에 따라 외부 도구를 호출하거나 직접 행동을 취할 수 있습니다.
즉, 사용자가 문제 상황을 설명하면, 에이전트는 그 문제를 분석하고, 적절한 도구를 선택하여 실제 해결 절차를 실행합니다.
ADK: AI 에이전트를 구현하는 프레임워크
ADK는 Google이 제공하는 오픈 프레임워크로, 다양한 종류의 도구(tool)를 조합하여 자신만의 AI 에이전트를 만들 수 있게 해줍니다.
ADK의 가장 큰 특징은 다음과 같습니다.
- 다양한 도구 유형을 기본적으로 지원
- LLM 기반 추론과 외부 연동을 통합
- Google Cloud, LangChain, GitHub 등과 손쉽게 연동 가능
에이전트에 연결 가능한 도구 유형 정리
1. Function Tool (함수 도구)
기본적인 파이썬 함수 하나로도 도구를 만들 수 있습니다.
예: 현재 날짜를 반환하는 도구
def get_current_date() -> dict:
return {"current_date": datetime.now().strftime("%Y-%m-%d")}
티켓 요청 시점, 혹은 "최근 일주일 이내 티켓" 등의 조건에 활용됩니다.
2. Built-in Tool (Google Search 등 내장 도구)
Google Search를 도구로 연결해, 버그에 대한 웹 검색 결과를 AI가 직접 받아볼 수 있습니다.
검색 전용 에이전트를 따로 구성한 뒤, 이 에이전트를 하나의 도구로 불러오는 방식입니다.
from google.adk.tools import google_search
search_agent = Agent(
model="gemini-2.5-flash",
name="search_agent",
tools=[google_search],
)
3. Third-party API Tool (LangChain 연동)
StackOverflow의 질문/답변 API를 통해, 관련 버그나 해결 사례를 직접 AI가 검색하게 할 수 있습니다.
from langchain_community.tools import StackExchangeTool
stack_exchange_tool = StackExchangeTool(api_wrapper=StackExchangeAPIWrapper())
LangChain을 활용하면 수많은 외부 API를 손쉽게 연결할 수 있습니다.
4. MCP Tool (API 연동용 도구)
Anthropic이 발표한 MCP(Model Context Protocol)는 API 연동을 위한 표준 프로토콜입니다.
GitHub와 같은 외부 플랫폼이 이 MCP를 활용해, AI 에이전트가 다양한 기능(API)을 쉽게 사용할 수 있도록 했습니다.
mcp_tools = MCPToolset(
connection_params=StreamableHTTPConnectionParams(
url="https://api.githubcopilot.com/mcp/",
headers={
"Authorization": "Bearer " + os.getenv("GITHUB_PERSONAL_ACCESS_TOKEN"),
},
),
tool_filter=["search_issues", "get_issue"],
)
이 구조를 사용하면, 민감한 기능은 차단하면서 필요한 기능만 선택적으로 노출할 수 있습니다.
5. MCP Tool (Database 연동용 도구)
내부 버그 티켓 데이터베이스(PostgreSQL)를 직접 연결할 수 있습니다.
검색, 생성, 수정 기능을 SQL 쿼리로 작성하고 YAML 파일로 정의하면, 이를 MCP Toolbox 서버가 도구로 노출합니다.
tools:
search-tickets:
kind: postgres-sql
source: postgresql
statement: |
SELECT * FROM tickets
WHERE description ILIKE '%' || $1 || '%'
LIMIT 3;
Toolbox MCP 서버를 실행하면, AI는 이 도구를 사용해 내부 티켓 DB를 실시간으로 검색하거나 수정할 수 있습니다.
실전 예제: QuantumRoast Bug Assistant 만들기
가상의 커피 머신 회사 QuantumRoast에서는 내부적으로 다음과 같은 구조의 에이전트를 구축했습니다.
- Google Gemini 2.5 Flash 모델 기반 에이전트
- Function Tool로 날짜 확인
- Built-in Tool로 웹 검색
- StackOverflow Tool로 외부 질문 검색
- GitHub MCP Tool로 오픈소스 이슈 추적
- 내부 PostgreSQL DB MCP Tool로 티켓 검색 및 관리
전체 구성 예시는 다음과 같습니다.
root_agent = Agent(
model="gemini-2.5-flash",
name="software_bug_assistant",
instruction=agent_instruction,
tools=[get_current_date, search_tool, langchain_tool, *toolbox_tools, mcp_tools],
)
에이전트는 다음과 같은 절차를 따릅니다.
- 사용자 요청 이해
- 적절한 도구 선택
- 도구 호출 및 결과 해석
- 필요 시 후속 작업 수행
ADK 에이전트의 가능성과 시사점
이제 더 이상 티켓을 일일이 복사해서 검색하고, 수동으로 분류하지 않아도 됩니다.
AI 에이전트를 직접 구축하면 반복되는 티켓 분류, 문제 검색, 유사 이슈 분석 등을 자동화할 수 있습니다.
ADK의 장점은 명확합니다.
- 다양한 도구와 유연하게 연결 가능
- 코드와 추론을 모두 이해하는 AI
- 내외부 시스템을 통합하는 자동화 허브
지금 당장은 실험용으로 시작하더라도, 장기적으로는 조직 내 전문 AI 도우미로 확장할 수 있는 잠재력을 갖고 있습니다.
버그로 인해 시간을 허비하는 대신,
이제는 문제를 스스로 해결할 줄 아는 AI에게 일을 맡겨보세요.
Tools Make an Agent: From Zero to Assistant with ADK | Google Cloud Blog
from google.adk.tools.mcp_tool import MCPToolset, StreamableHTTPConnectionParams mcp_tools = MCPToolset( connection_params=StreamableHTTPConnectionParams( url="https://api.githubcopilot.com/mcp/", headers={ "Authorization": "Bearer " + os.getenv("GITHUB_PE
cloud.google.com