본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 05. 20. 18:30

mathematic-inc/earl

요약

Earl은 에이전트와 외부 서비스 사이에서 동작하며, HCL 파일을 통해 작업을 정의하는 보안 중심의 도구입니다. LLM이 템플릿 본문이나 비밀 정보에 접근하지 못하도록 설계되어 보안성을 극대화했으며, MCP를 통해 Claude Code 및 Cursor와 통합할 수 있습니다.

핵심 포인트

  • LLM은 도구 이름과 설명, 파라미터 값만 확인하며 템플릿 본문이나 인증 정보에는 접근할 수 없음
  • 비밀 정보(Secrets)는 OS 키체인 또는 외부 보안 저장소(1Password, Vault 등)를 통해 안전하게 관리됨
  • HCL 기반의 템플릿을 사용하여 HTTP, GraphQL, gRPC, Bash, SQL 등 다양한 프로토콜의 작업을 정의 가능
  • MCP(Model Context Protocol)를 지원하여 Claude Code, Cursor 등 AI 코딩 도구와 쉽게 통합 가능

Earl은 에이전트 (agents)와 외부 서비스 (external services) 사이에 위치합니다. 작업 (Operations)은 저장소 (repository)에 커밋되는 HCL 파일로 구성됩니다. LLM (Large Language Model)은 도구 이름과 설명만을 확인하며, 템플릿 본문 (template body)은 절대 읽지 않습니다. API 응답에 주입된 지시 사항 (injected instruction)은 실행을 담당하는 요청의 부분을 LLM이 읽지 않기 때문에 전달될 곳이 없습니다.

비밀 정보 (Secrets)는 OS 키체인 (OS keychain)에 유지됩니다. 이들은 도구 인자 (tool arguments), 도구 설명 (tool descriptions), 또는 출력 (output)에 포함되지 않습니다.

# 설치 (Install)
curl -fsSL https://raw.githubusercontent.com/mathematic-inc/earl/main/scripts/install.sh | bash
# 프로바이더 템플릿 (provider template) 가져오기
...

에이전트에서 MCP 도구 (MCP tools)로 Earl을 사용하려면, MCP 설정 (MCP config)에 추가한 후 재시작하십시오. Claude Code와 Cursor는 동일한 형식을 사용합니다:

{
"mcpServers": {
"earl": {
...

MCP 도구는 재시작 후에 활성화됩니다. 현재 세션에서는 Bash 도구 (Bash tool)를 통해 earl call --yes --json을 사용하십시오.

전체 과정을 확인하려면 Quick Start를 참조하거나, 에이전트가 설치 및 설정을 처리하도록 하려면 Agent-Assisted Setup을 참조하십시오.

사용자는 메서드 (method), URL, 인증 (auth), 파라미터 (parameters)를 포함하여 작업을 기술하는 HCL 템플릿을 작성합니다. 에이전트가 도구를 호출하면, Earl은 템플릿을 로드하고, OS 키체인에서 필요한 비밀 정보 (secret)를 읽어오며, 에이전트가 제공한 값에 대해 Jinja 표현식 (Jinja expressions)을 렌더링하고, 요청을 실행합니다. LLM은 오직 파라미터 값 (parameter values)만을 제공합니다. 요청의 다른 모든 부분 — URL, 인증 헤더 (auth header), 메서드 — 은 사람이 작성하여 저장소에 커밋한 것입니다.

전체 보안 모델 (security model)은 How Earl Works를 참조하십시오.

  • 서론 (Introduction) — Earl이 존재하는 이유, 보안 모델 (security model)의 작동 방식
  • 빠른 시작 (Quick Start) — 설치, 첫 호출, 5단계로 구성된 MCP 설정
  • 템플릿 작성 (Writing Templates) — HTTP, GraphQL, gRPC, Bash, SQL; 인증 (auth); 결과 포맷팅 (result formatting)
  • 템플릿 스키마 (Template Schema) — 필드별 참조
  • 비밀 정보 및 인증 (Secrets & Auth) — OS 키체인 (keychain) 저장소, OAuth2 플로우 (flows)
  • 외부 비밀 정보 (External Secrets) — 1Password, Vault, AWS, GCP, Azure
  • MCP 통합 (MCP Integration) — stdio 및 HTTP 전송 (transport), 전체 모드 (full mode) 대 탐색 모드 (discovery mode)
  • 정책 엔진 (Policy Engine) — HTTP 배포를 위한 JWT 인증 및 액세스 제어 (access control)
  • 환경 (Environments) — 운영 (production), 스테이징 (staging), 환경별 재정의 (overrides)
  • 보안 강화 (Hardening) — SSRF 보호, 송신 허용 목록 (egress allowlist), 운영 환경 체크리스트
  • 명령어 (Commands) — 전체 CLI 참조
  • 문제 해결 (Troubleshooting) — 키체인 (keychain) 오류, 템플릿 검증 (validation), MCP 문제

Apache-2.0

이 프로젝트는 501(c)(3) 비영리 단체의 자유로운 오픈 소스 작업물입니다. 이 프로젝트가 유용하다고 느끼신다면 기부를 고려해 주세요.

AI 자동 생성 콘텐츠

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

원문 바로가기
0

댓글

0