Goose란?
Goose는 Block(구 Square)이 오픈소스로 공개한로컬 실행 AI 에이전트로, 기존 코드 어시스턴트의 제안 모드를 넘어 복잡한 개발 작업을 자율적으로 실행할 수 있습니다. 디버깅부터 배포까지, Goose는 실제 엔지니어처럼 개발 환경에서 작업합니다.
ChatGPT나 GitHub Copilot과 달리, Goose는 코드 제안만 하는 것이 아니라 IDE와 개발 환경에 직접 연결하여 명령 자동 실행, 테스트 수행, 오류 수정을 합니다. 무엇을 해야 하는지 알려주기만 하면 Goose가 완료해 줍니다.
핵심 기능
로컬 실행, 완전한 제어
Goose는 로컬 머신에서 실행되며 모든 코드와 데이터 처리가 사용자의 통제下に 있습니다. 이는 다음을 의미합니다:
- 프라이버시 보안: 코드가 클라우드에 업로드되지 않음
- 저지연: 원격 API 응답을 기다릴 필요 없음
- 오프라인 작업: 로컬 LLM과 결합 시 완전 오프라인 사용 가능
1700개 이상의 MCP 서버 확장
Model Context Protocol (MCP)을 통해 Goose는 1700개가 넘는 확장 서버에 연결할 수 있습니다:
- GitHub 자동화 (PR 관리, Issue 처리)
- Google 서비스 (Drive, Calendar, Docs)
- Figma 디자인 → 코드 변환
- 데이터베이스 작업
- API 테스트 도구
- 커스텀 도구 체인
진정한 자율 에이전트
Goose의 핵심 강점은 자율성에 있습니다. 수동적으로 명령을 기다리는 것이 아니라 다음과 같은 작업을 수행할 수 있습니다:
- 작업 목표 분석
- 실행 계획 수립
- 단계별 실행 및 결과 검증
- 오류 발생 시 자동 수정
- 완료 후 결과 보고
다중 모델 지원
Goose는 다양한 LLM을 지원합니다:
- 상용 모델: Claude, GPT-4, Gemini
- 로컬 오픈소스 모델: Llama, Qwen, DeepSeek
- 커스텀 모델 엔드포인트
빠른 시작
설치 요구사항
- 운영체제: macOS, Linux, Windows (WSL2)
- Python: 3.10 이상
- Node.js: 18 이상 (일부 MCP 서버용)
설치 단계
# 1. 저장소 복제
git clone https://github.com/block/goose.git
cd goose
# 2. 의존성 설치
pip install -r requirements.txt
# 3. goose 명령줄 도구 설치
pip install -e .
# 4. 설치 확인
goose --version
LLM 설정
Goose는 다양한 LLM 설정 방법을 지원합니다. 다음은 Claude를 사용하는 예시입니다:
# Anthropic API 키 설정
export ANTHROPIC_API_KEY="your-api-key-here"
# 또는 로컬 모델 사용 (Ollama経由)
export OLLAMA_MODEL="qwen2.5-coder:7b"
설정 파일 ~/.config/goose/config.yaml 생성:
llm:
provider: anthropic
model: claude-sonnet-4-20250514
# 또는 로컬 모델 사용
# provider: ollama
# model: qwen2.5-coder:7b
extensions:
- name: github
config:
token: your-github-token
- name: filesystem
config:
allowed_dirs:
- ~/projects
- ~/work
실제 사용 시나리오
시나리오 1: 자동 디버깅 및 수정
# Goose에게 테스트 실패 분석 및 수정 요청
goose run "테스트 파일 tests/api_test.py가 실패했습니다. 오류 로그를 분석하고 코드를 수정해주세요"
Goose는 다음과 같이 처리합니다:
- 테스트를 실행하여 오류 정보 수집
- 실패 원인 분석
- 관련 코드 수정
- 테스트 재실행하여 검증
- 수정 결과 보고
시나리오 2: 일괄 코드 마이그레이션
# 전체 프로젝트의 문자열 리소스 마이그레이션
goose run "src/ 디렉토리의 모든 하드코딩된 문자열을 i18n 파일로 추출하고 중국어와 영어를 지원해주세요"
시나리오 3: 테스트 데이터 생성
# API 스키마에 기반한 테스트 데이터 생성
goose run "user API에 스키마를 준수하는 100개의 테스트 데이터를 생성해주세요. 경계 사례 포함"
시나리오 4: GitHub 워크플로우 자동화
# PR 댓글 자동 처리
goose run "최근 5개 PR의 코드 리뷰 댓글을 확인하고 수정 작업 목록을 생성하여 실행해주세요"
MCP 서버 확장
MCP 서버 설치
# GitHub MCP 서버 설치
goose extensions install github
# 파일시스템 MCP 서버 설치
goose extensions install filesystem
# 커스텀 MCP 서버 설치
goose extensions install ./my-custom-extension
인기 MCP 서버 추천
| 확장명 | 기능 | 적용 시나리오 |
|---|---|---|
github | GitHub API 통합 | PR 관리, Issue 자동화 |
filesystem | 파일시스템 작업 | 일괄 파일 처리 |
google-drive | Google Drive 통합 | 문서 동기화, 백업 |
figma | Figma 디자인 가져오기 | 디자인 → 코드 변환 |
postgres | PostgreSQL 데이터베이스 | 데이터 쿼리, 마이그레이션 |
stripe | Stripe API | 결제 테스트, 대조 |
커스텀 MCP 서버
Goose는 커스텀 MCP 서버 생성을 지원합니다. 다음은 간단한 예시입니다:
# my_extension.py
from goose.mcp import MCPServer
class MyCustomServer(MCPServer):
@property
def name(self) -> str:
return "my-custom-server"
async def handle_request(self, request):
# 커스텀 로직 처리
return {"result": "custom response"}
# 서버 등록
server = MyCustomServer()
server.run()
고급 설정
로컬 LLM 사용 (Ollama)
# Ollama 설치
curl -fsSL https://ollama.com/install.sh | sh
# 코드 전용 모델 다운로드
ollama pull qwen2.5-coder:7b
# Goose가 Ollama를 사용하도록 설정
export GOOSE_LLM_PROVIDER=ollama
export GOOSE_LLM_MODEL=qwen2.5-coder:7b
export GOOSE_LLM_ENDPOINT=http://localhost:11434
성능 최적화
대규모 프로젝트의 경우 Goose의 컨텍스트 윈도우와 캐시 전략을 설정할 수 있습니다:
# ~/.config/goose/config.yaml
performance:
context_window: 8192
cache_enabled: true
cache_dir: ~/.cache/goose
max_iterations: 50 # 무한 루프 방지
보안 설정
Goose의 권한 범위를 제한합니다:
security:
allowed_commands:
- git
- npm
- pytest
- make
forbidden_commands:
- rm -rf
- sudo
- curl | bash
allowed_dirs:
- ~/projects/my-app
network_access: false # 네트워크 접근 금지
실제 사례
사례 1: 30분 만에 캘린더 동기화 스크립트 완성
한 엔지니어가 Goose를 사용하여 GitHub PR에서 인라인 댓글을 다운로드하는 커스텀 CLI 명령을 만들었습니다. 전체 작업은 30분이 걸렸으며 다음을 포함합니다:
- GitHub API 이해
- 인증 로직 작성
- 페이지네이션 처리
- 오류 처리
- 테스트 검증
사례 2: 11개 언어 문자열 리소스 마이그레이션
Android 엔지니어가 Goose를 사용하여 string-array를 11개 언어 현지화 파일에 걸쳐 개별 문자열 리소스로 분할했습니다. Goose는 자동으로:
- XML 구조 파싱
- 번역 대응 관계 유지
- 모든 언어 파일 검증
- 차이 보고서 생성
사례 3: API 테스트 데이터 자동 생성
엔지니어가 복잡한 API의 테스트 데이터 생성이 필요했고, Goose는 다음 방식으로 완료했습니다:
- API 스키마 읽기
- 비즈니스 규칙 이해
- 유효한 테스트 데이터 생성
- API 호출하여 검증
- 오류에 기반한 자동 수정
- 모든 테스트가 통과할 때까지 계속
다른 도구와의 비교
| 기능 | Goose | GitHub Copilot | Cursor | Aider |
|---|---|---|---|---|
| 로컬 실행 | 예 | 아니오 | 예 | 예 |
| 자율 실행 | 예 | 아니오 | 일부 | 예 |
| MCP 확장 | 예 1700+ | 아니오 | 제한적 | 아니오 |
| 오픈소스 | 예 | 아니오 | 아니오 | 예 |
| 다중 모델 지원 | 예 | 아니오 | 일부 | 예 |
| 무료 | 예 | 아니오 | 아니오 | 예 |
제한사항 및 주의점
현재 제한사항
- 학습 곡선: MCP와 에이전트 개념을 이해해야 함
- 리소스 소비: 로컬에서 LLM 실행 시 충분한 메모리 필요
- 오류 처리: 복잡한 작업은 사람의 개입이 필요할 수 있음
- 생태계: Copilot에 비해 플러그인 생태계가 아직 성장 중
모범 사례
- 작은 작업부터 시작: 먼저 단순 작업을 처리하여 신뢰 구축
- 권한 경계 설정: 허용할 명령과 디렉토리 범위를 명확히 지정
- 코드 검토: Goose가 생성한 코드는 반드시 검토
- 중요 파일 백업: 자율 작업에는 위험이 따를 수 있음
- 리소스 사용 모니터링: 로컬 LLM은 많은 CPU/GPU를 소비할 수 있음
향후 로드맵
공식 GitHub 토론에 따르면, Goose의 향후 개발 방향은 다음과 같습니다:
- 더 나은 UI: 데스크톱 애플리케이션 및 웹 인터페이스
- 다중 에이전트 협업: 여러 Goose 인스턴스가 협력하여 작업
- 엔터프라이즈 기능: 팀 관리, 감사 로그
- 더 많은 MCP 서버: 생태계 지속 확장
- 성능 최적화: 더 빠른 응답과 낮은 리소스 소비
요약
Goose는 AI 프로그래밍 어시스턴트의 다음 방향을 제시합니다 — 수동적 제안에서 능동적 실행으로. 오픈소스 특성, 로컬 실행 능력, 강력한 MCP 확장 생태계는 프라이버시, 유연성, 자율성을 중시하는 개발자에게 이상적인 선택입니다.
AI 제안 코드를 복사·붙여넣기 하는 데 지쳤고, 실제로 작업을 완료해 주는 AI 에이전트를 원한다면 Goose는 시도해 볼 가치가 있습니다.
관련 리소스
저자: Kevin Peng
게시일: 2026-03-24
카테고리: AI 어시스턴트
소요 시간: 약 12분