섹션별 상세
yeah는 질문에 대한 결과를 표준 출력 대신 프로세스 종료 코드로 전달한다. 참(true)일 경우 0, 거짓(false)일 경우 1, 에러 발생 시 2를 반환하여 쉘 스크립트의 if 문에서 직접적인 조건 검사 도구로 사용할 수 있다.
bash
yeah does 2 + 2 equal 4?
echo $?
# 0
yeah does 2 + 2 equal 5?
echo $?
# 1질문에 대한 결과를 종료 코드로 확인하는 기본 실행 예시
bash
if yeah is the disk more than 90% full?; then
echo "Disk space critical!"
fi
if yeah does main.go contain a function called main?; then
echo "Found main function"
fi쉘 스크립트의 조건문 내에서 yeah를 활용하여 로직을 분기하는 예시
Anthropic의 Claude와 OpenAI의 GPT 모델을 모두 지원하며, 기본값으로 Anthropic의 최신 모델을 사용한다. YEAH_PROVIDER, YEAH_MODEL 등의 환경 변수를 설정하여 모델과 API 게이트웨이를 자유롭게 변경할 수 있다.
설치 과정은 Go 언어 환경에서 go install 명령어를 통해 간단히 수행된다. 별도의 복잡한 설정 파일 없이 환경 변수만으로 API 키와 모델 정보를 관리할 수 있어 이식성이 높다.
LLM의 비결정적 특성으로 인한 위험을 줄이기 위해 운영체제 수준의 샌드박싱 기술을 적용했다. macOS에서는 sandbox-exec를 통해 파일 쓰기를 거부하고, Linux에서는 landlock을 사용하여 시스템 접근 권한을 제한한다.
용어 해설
- 종료 코드(Exit Code)
- — 프로세스가 실행을 마치고 운영체제에 반환하는 숫자 값이다. 0은 성공(참), 1 이상은 실패나 특정 상태를 나타내며, 쉘 스크립트에서 if 문 등의 조건 분기를 결정하는 핵심적인 메커니즘으로 작동한다.
- 샌드박싱(Sandboxing)
- — 외부의 공격이나 오작동으로부터 시스템을 보호하기 위해 특정 프로그램을 격리된 환경에서 실행하는 보안 기법이다. 이 도구에서는 LLM의 응답이 시스템에 예기치 않은 변경을 가하지 못하도록 파일 쓰기 권한 등을 제한하는 역할을 한다.
- 환경 변수(Environment Variable)
- — 프로세스가 동작하는 방식에 영향을 미치는 운영체제 상의 동적인 값이다. API 키나 모델 이름과 같은 설정 정보를 소스 코드에 직접 기록하지 않고 외부에서 주입하여 보안성과 유연성을 높이는 데 사용된다.
기술
- Go
- Anthropic API
- OpenAI API
- macOS sandbox-exec
- Linux landlock
활용 사례
- 디스크 용량 등 시스템 상태 자동 점검
- 소스 코드 내 특정 함수 존재 여부 확인
- 환경 설정 및 도구 설치 여부 판별
언급된 리소스
GitHubgithub.com/crawshaw/yeah
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
원문 발행 2026. 03. 22.수집 2026. 03. 22.출처 타입 RSS
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.