본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 24. 17:55

오픈 소스 에이전틱 AI 스택: AAIF 프로젝트의 역할과 기여 방법

요약

Linux Foundation 산하의 AAIF 프로젝트를 통해 에이전틱 AI를 위한 표준 프로토콜과 인프라 구축을 소개합니다. MCP, Goose, AGENTS.md, AgentGateway 등 네 가지 핵심 프로젝트의 역할과 오픈 소스 기여 방법을 다룹니다.

핵심 포인트

  • AAIF는 에이전틱 AI를 위한 표준 및 오픈 소스 프로젝트의 중립적 허브 역할을 함
  • MCP는 에이전트와 도구 간의 통신을 표준화하는 핵심 프로토콜임
  • Goose, AGENTS.md, AgentGateway 등 상호 보완적인 프로젝트 생태계 구성
  • 다양한 언어의 SDK와 참조 서버를 통해 개발자 기여가 용이함

AI 에이전트(AI agents)는 단순한 채팅 래퍼(chat wrappers)에서 도구와 연결되고, 다른 에이전트와 통신하며, 프로덕션 환경에서 실행되는 시스템으로 진화하고 있습니다. 하지만 그 밑바탕이 되는 인프라, 즉 프로토콜(protocols), 런타임(runtimes), 게이트웨이(gateways), 그리고 컨벤션(conventions)은 여전히 구축되는 과정에 있습니다. 바로 이 지점에서 **Agentic AI Foundation (AAIF)**이 등장합니다.

AAIF는 에이전틱 AI(agentic AI)를 작동시키는 표준, 프로토콜 및 오픈 소스 프로젝트를 위한 Linux Foundation 산하의 개방적이고 중립적인 홈입니다. 저는 최근 AAIF 앰배서더(Ambassador)로 선정되었으며, 이 포스트는 네 가지 핵심 프로젝트가 무엇인지, 이들이 어떻게 서로 맞물려 돌아가는지, 그리고 무엇보다도 여러분이 오늘 바로 어디서부터 기여를 시작할 수 있는지에 대해 정리해보고자 하는 시도입니다.

목차

  • 네 가지 AAIF 프로젝트
    • MCP: 프로토콜 (The Protocol)
    • Goose: 에이전트 (The Agent)
    • AGENTS.md: 컨벤션 (The Convention)
    • AgentGateway: 인프라 (The Infrastructure)
  • 이들이 함께 작동하는 방식
  • 연결된 오픈 소스 프로젝트
  • 기여하기: 시작하는 방법
    • 난이도 순위
    • AGENTS.md · 가장 쉬운 진입점
    • MCP 명세(Specification) · 문서 및 스키마(Schema)
    • Goose · Rust 에이전트 프레임워크 (Agent Framework)
    • AgentGateway · 프로덕션용 Rust 프록시 (Proxy)
  • 참여하기

네 가지 AAIF 프로젝트

MCP: 에이전트-도구 통신을 위한 프로토콜

**Model Context Protocol (MCP)**은 기초 레이어(foundational layer)입니다. 이는 AI 에이전트가 도구, 데이터 소스 및 서비스에 연결되는 방식을 표준화합니다. 어떤 에이전트와 어떤 도구 사이에서도 사용할 수 있는 범용 어댑터라고 생각하면 됩니다.

MCP 서버는 세 가지 핵심 프리미티브(primitives)를 노출합니다:

  • 도구 (Tools): 에이전트가 호출할 수 있는 함수 (예: search_code, execute_query)
  • 리소스 (Resources): 에이전트가 읽을 수 있는 데이터 (예: 파일, 데이터베이스 스키마)
  • 프롬프트 (Prompts): 일반적인 에이전트 작업을 위한 재사용 가능한 템플릿

이 프로토콜은 다양한 전송 방식(stdio, SSE, Streamable HTTP)을 통해 JSON-RPC 2.0을 사용합니다. MCP 서버를 한 번 구축하면, MCP와 호환되는 모든 에이전트가 이를 사용할 수 있습니다. 더 이상 프레임워크마다 통합(integration) 기능을 다시 만들 필요가 없습니다.

현재 스펙 버전은 날짜 기반 버전 관리(date-based versioning, 2025-11-25)를 사용하며, OAuth 인증, 진행 상황 알림(progress notifications), 로깅(logging), 그리고 샘플링(sampling, 클라이언트가 LLM 완성을 요청하는 서버)을 포함합니다.

생태계는 매우 방대합니다. 공식 SDK는 10개 언어로 제공됩니다: TypeScript, Python, Go, Rust, Java, Kotlin, Swift, C#, PHP, Ruby. 또한 7개의 참조 서버(filesystem, git, memory, fetch, sequential thinking, time, everything)와 테스트 및 디버깅을 위한 MCP Inspector가 있습니다.

Repomodelcontextprotocol/modelcontextprotocol
...

Goose: 범용 AI 에이전트

Goose는 MCP가 실제로 구현되는 곳입니다. Goose는 Rust로 구축된 오픈 소스 AI 에이전트로, 네이티브 데스크톱 앱(macOS, Linux, Windows), CLI, 그리고 API 서버를 제공합니다.

Goose는 단순한 코딩 에이전트가 아닙니다. 연구, 글쓰기, 자동화 및 데이터 분석에도 사용할 수 있습니다. Goose는 **70개 이상의 MCP 확장 기능(extensions)**에 연결되며, 15개 이상의 LLM 제공업체(Anthropic, OpenAI, Google, Ollama, OpenRouter, Azure, Bedrock 등)를 지원합니다. 또한 ACP(Agent Client Protocol)를 통해 기존의 Claude, ChatGPT 또는 Gemini 구독을 사용할 수도 있습니다.

Rust 워크스페이스는 목적에 따라 분리된 크레이트(crates)로 구성되어 있습니다:

crates/
├── goose              # 핵심 에이전트 로직
├── goose-cli          # CLI 진입점
...

개발에는 재현 가능한 툴링을 위한 Hermit과 작업 자동화를 위한 just가 사용됩니다.

Repoaaif-goose/goose
...

AGENTS.md: 에이전트를 위한 README

AGENTS.md는 특정한 문제를 해결합니다. 기존의 README 파일은 AI 에이전트를 위해 작성되지 않았습니다. README는 사람에게 프로젝트가 무엇을 하는지 알려주지만, 에이전트가 코드베이스에서 실제로 작업하는 데 필요한 빌드 명령, 테스트 패턴 및 컨벤션(conventions)을 제공하지는 않습니다.

AGENTS.md 파일은 에이전트 전용 컨텍스트(context)를 담기 위한 전용의 예측 가능한 공간입니다:

개발 환경 팁 (Dev environment tips)

  • pnpm dlx turbo run where <project_name>을 사용하여 특정 패키지로 바로 이동하세요.
  • 올바른 이름을 확인하려면 각 패키지의 package.json 내부에 있는 name 필드를 확인하세요.
    ...

명세(spec)도, 프로토콜(protocol)도 없습니다. 그저 관례(convention)일 뿐입니다. 이 저장소에는 예시와 커뮤니티 쇼케이스가 포함된 agents.md Next.js 웹사이트가 포함되어 있습니다.

특히, 여러 AAIF 프로젝트들이 이미 AGENTS.md 파일을 자체적으로 사용하고 있습니다. Goose의 CLAUDE.md는 자체 AGENTS.md를 가리킵니다. MCP spec 저장소, MCP Inspector, 그리고 MCP Go SDK 모두 기여자(contributor)와 에이전트 모두를 안내하는 AGENTS.md 파일을 보유하고 있습니다.

Repoanthropics/agents.md
...

AgentGateway: 에이전트를 위한 프로덕션 인프라 (Production Infrastructure for Agents)

AgentGateway는 에이전트, LLM, 도구(tools), 그리고 다른 에이전트들 사이에 위치하는 Rust 기반의 프록시(proxy)입니다. 에이전틱 트래픽(agentic traffic)에 대해 즉시 적용 가능한 보안, 관측성(observability), 그리고 거버넌스(governance)를 제공합니다.

이 시스템은 세 가지 유형의 통신을 처리합니다:

  1. LLM 게이트웨이 (LLM Gateway): 예산 제어, 프롬프트 보강(prompt enrichment), 부하 분산(load balancing), 그리고 장애 조치(failover) 기능을 갖춘 통합된 OpenAI 호환 API를 통해 LLM 제공업체(OpenAI, Anthropic, Gemini, Bedrock 등)로 라우팅합니다.
  2. MCP 게이트웨이 (MCP Gateway): 도구 연합(tool federation), 멀티 트랜스포트(multi-transport) 지원, OpenAPI 통합, 그리고 OAuth 인증을 통해 MCP를 사용하여 에이전트를 도구에 연결합니다.
  3. A2A 게이트웨이 (A2A Gateway): 기능 발견(capability discovery) 및 작업 협업(task collaboration)을 지원하는 Google의 A2A 프로토콜을 사용하여 에이전트 간 통신(agent-to-agent communication)을 가능하게 합니다.

프로덕션 기능은 다음과 같습니다:

  • 인증 (Auth): JWT, API 키, OAuth, CEL 정책 엔진을 통한 세밀한 RBAC(역할 기반 액세스 제어)
  • 가드레일 (Guardrails): 정규 표현식(regex) 필터링, OpenAI moderation, AWS Bedrock Guardrails, Google Model Armor, 커스텀 웹훅(webhooks)
  • 관측성 (Observability): OpenTelemetry 메트릭, 로그, 그리고 분산 트레이싱(distributed tracing)
  • 추론 라우팅 (Inference routing): GPU 활용도, KV 캐시(KV cache), 그리고 LoRA 어댑터(LoRA adapter) 인식을 지원하는 Kubernetes Inference Gateway 확장 기능

프로젝트 헌장(project charter)에서:

미션은 AI 에이전트가 외부 도구 및 서비스와 상호 발견(discover), 통신(communicate)하고 이를 활용(leverage)할 수 있도록 안전하고 확장 가능하며 표준화된 기반을 구축하는 것입니다.

Repoagentgateway/agentgateway
...

이들이 함께 작동하는 방식

AAIF Projects

  • MCP는 에이전트가 도구에 연결하는 방식(프로토콜, protocol)을 정의합니다.
  • Goose는 MCP를 사용하는 에이전트(런타임, runtime)입니다.
  • AgentGateway는 MCP/LLM/A2A 트래픽을 대규모로 안전하게 운영하기 위한 인프라(프록시, proxy)를 제공합니다.
  • AGENTS.md는 에이전트가 귀하의 코드베이스에서 작업하는 데 필요한 컨텍스트(컨벤션, convention)를 제공합니다.

연결된 오픈 소스 프로젝트들

AAIF 프로젝트들은 고립되어 존재하지 않습니다. 이들의 궤도 안에 있는 주요 오픈 소스 프로젝트들은 다음과 같습니다:

MCP 생태계

프로젝트역할링크
MCP TypeScript SDKTypeScript로 MCP 클라이언트/서버 구축modelcontextprotocol/typescript-sdk
...

에이전트 및 인프라 생태계

프로젝트역할관계
A2A ProtocolGoogle의 에이전트 간(Agent-to-Agent) 프로토콜AgentGateway가 A2A 게이트웨이를 구현함
...

기여하기: 시작하는 방법

난이도 순위

모든 프로젝트가 동일한 수준의 전문 지식을 요구하는 것은 아닙니다. 실제 기여 가이드, 툴체인(toolchain) 요구사항 및 코드베이스 복잡성을 바탕으로 한 실질적인 순위는 다음과 같습니다:

순위프로젝트진입 장벽첫 기여로 가장 좋은 작업
1 (가장 쉬움)AGENTS.mdNode.js + pnpm예시 추가, 문서 개선
...

1. AGENTS.md · 가장 쉬운 진입점

1. AGENTS.md · 가장 쉬운 진입점

가장 쉬운 이유: Next.js 웹사이트이기 때문입니다. TypeScript와 React를 알고 있다면 즉시 기여할 수 있습니다. 학습해야 할 사양(spec)이나 이해해야 할 프로토콜(protocol)이 없습니다.

설정 (Setup):

git clone https://github.com/YOUR-USERNAME/agents.md.git
cd agents.md
pnpm install
...

코딩 표준 (Coding standards):

  • 새로운 컴포넌트에는 TypeScript (.tsx/.ts) 사용
  • 개발 서버 (pnpm run dev)를 사용하세요. 개발 중에 절대로 npm run build를 실행하지 마세요. HMR (Hot Module Replacement)이 깨집니다.
  • 컴포넌트 스타일을 컴포넌트와 같은 위치에 배치 (Co-locate)
  • 제출 전 npm run lint 실행

기여할 내용:

  • 실제 프로젝트(모노레포 (monorepos), Python 패키지 (packages), Rust 크레이트 (crates))의 AGENTS.md 예시 추가
  • 웹사이트 디자인 또는 UX 개선
  • AGENTS.md 파일을 작성하는 모범 사례 (best practices)를 설명하는 문서 작성
  • AGENTS.md가 에이전트의 효율성을 어떻게 개선했는지 보여주는 사례 연구 (case studies) 추가

2. MCP Specification · 문서 및 스키마 (Docs and Schema)

접근성이 좋은 이유: 사양 (spec) 저장소는 명확한 툴링을 갖춘 TypeScript 기반입니다. 문서 기여는 가장 쉬운 진입 경로이며, 프로젝트 차원에서 이를 명시적으로 환영합니다.

설정 (Setup):

git clone https://github.com/YOUR-USERNAME/modelcontextprotocol.git
cd modelcontextprotocol
nvm install       # 올바른 Node 버전 설치
...

제출 전 품질 검사 (Quality gate):

npm run prep    # 모든 체크 실행, 스키마 (schemas) 생성, 코드 포맷팅

코딩 표준 (Coding standards):

  • 스키마 단일 진실 공급원 (Schema source of truth): schema/draft/schema.ts (TypeScript → JSON Schema + MDX 생성)
  • 문서: docs/ 내의 MDX 형식, 블로그: blog/ 내의 Hugo
  • 날짜 기반 사양 버전 관리 (YYYY-MM-DD) 방식 사용, Semver (유의적 버전) 아님
  • 코드 포맷팅을 위해 npm run format 사용
  • 깨진 링크가 없는지 확인하기 위해 npm run check:docs:links 실행

AI 사용 공개 필수: AI의 도움을 받은 경우, 사용 범위와 함께 PR (Pull Request) 설명에 반드시 이를 공개해야 합니다. MCP는 이를 준수하지 않는 PR을 닫을 것입니다.

기여할 내용:

  • 문서 페이지 수정 또는 개선 (docs/ 내의 MDX)
  • 스키마 예시 추가 (schema/[version]/examples/[TypeName]/ 내의 JSON 파일)
  • Hugo 블로그용 포스트 작성 (blog/)
  • SEP 프로세스를 통한 사양(spec) 변경 제안 (디자인 원칙을 먼저 검토하세요)
  • 선호하는 언어(Go, Python, TypeScript, Rust 등)의 SDK에 기여

Tip: MCP Inspector (npx @modelcontextprotocol/inspector)는 기여하기 전에 대화형으로 MCP를 학습할 수 있는 아주 좋은 방법입니다.

3. Goose · Rust 에이전트 프레임워크 (Rust Agent Framework)

난이도가 중간(moderate)인 이유: Goose는 규모가 큰 Rust 워크스페이스입니다. Rust 숙련도와 Hermit으로 관리되는 툴체인(toolchain)이 진입 장벽이 될 수 있습니다. 하지만 이 프로젝트는 명확한 기여 문서와 강력한 코드 리뷰 문화를 갖추고 있습니다.

설정 (Setup):

git clone https://github.com/YOUR-USERNAME/goose.git
cd goose
source bin/activate-hermit    # Rust, Node, pnpm, just 설치
...

제출 전 품질 검사 (Quality gate):

cargo fmt
cargo clippy --all-targets -- -D warnings
cargo test
...

기여 규칙 (Contributing rules):

  • 작게 시작하세요. 첫 번째 PR은 기존 이슈와 연결된 작은 버그 수정이어야 합니다. 규모가 큰 첫 PR은 기여 가이드로 리다이렉트되며 닫힐 것입니다. 개인적으로 받아들이지 마세요.

  • 한꺼번에 많은 PR을 열지 마세요. 선호하는 순서대로 제출하고, 해당 PR이 반영될 때까지 기다리세요.

  • Conventional Commits가 필수입니다 (feat:, fix:, docs: 등).

  • AI 사용 공개는 필요하지 않으나, 최종 코드에 대한 책임은 본인에게 있습니다. 인간의 검토를 건너뛴

  • 버그 수정 (커뮤니티의 필요성을 보여주기 위해 기존 이슈(issue) 링크를 연결하세요)

  • 성능 개선 (Performance improvements)

  • 새로운 MCP 확장 기능 통합 (crates/goose-mcp/ 내)

  • Electron 데스크톱 앱을 위한 UI 개선 (ui/desktop/ 내)

  • 문서화 및 예제 (Documentation and examples)

  • 테스트 개선 (crates/goose/tests/ 디렉토리를 권장)

Tip: 빌드 후 ./target/debug/goose configure를 실행하여 LLM 제공자(provider)를 설정한 다음, ./target/debug/goose session을 실행하여 기여하기 전에 Goose를 직접 사용해 보세요.

4. AgentGateway · 프로덕션급 Rust 프록시 (Production Rust Proxy)

가장 어려운 이유: AgentGateway는 심층적인 네트워킹 코드(TLS, HTTP/2, gRPC, xDS), CEL 정책 엔진(policy engine), 그리고 선택적인 Kubernetes 통합을 포함하는 프로덕션 등급(production-grade)의 프록시입니다. 이를 위해서는 Rust edition 2024 (최소 rustc 1.90 이상)와 프록시 아키텍처에 대한 이해가 필요합니다.

**설정 (Setup):

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0