베스트 프랙티스
베스트 프랙티스
Oh My OpenAgent를 최대한 활용하기 위한 패턴과 전략입니다.
사용 패턴
단일 작업 모드
작업을 직접 설명하세요. Sisyphus가 자동으로 위임을 처리합니다:
인증 모듈을 세션 대신 JWT를 사용하도록 리팩토링
적합한 경우: 집중적이고 잘 정의된 작업.
ultrawork 모드
단 한 단어로 모든 것이 활성화됩니다:
ultrawork: 전체 프로젝트를 JavaScript에서 TypeScript로 마이그레이션
또는:
ulw: 모든 ESLint 경고 수정 및 누락된 타입 추가
적합한 경우: 대규모 작업, 다단계 작업, 병렬 실행이 필요한 모든 것.
ultrawork를 사용해야 할 때:
- 대규모 리팩토링 작업
- 풀스택 기능 개발
- 복잡한 문제 분석
- 다단계 구현
ultrawork를 사용하지 말아야 할 때:
- 단순한 질의
- 소규모 단일 파일 변경
- 간단한 질문
인터뷰 모드 (Prometheus)
계획 수립이 먼저 필요한 복잡한 작업의 경우:
/start-work
Prometheus가 인터뷰 모드에 진입합니다 — 명확화 질문을 하고, 범위를 파악하며, 검증된 계획을 수립합니다. 그런 다음 Sisyphus가 실행합니다.
적합한 경우: 모호한 요구 사항, 중요한 변경, 계획 수립이 비용보다 더 많은 시간을 절약하는 작업.
멀티모델 전략
Oh My OpenAgent는 자동으로 작업을 최적의 모델로 라우팅합니다. 하지만 각 강점을 이해하면 더 나은 프롬프트를 작성하는 데 도움이 됩니다:
| 모델 | 강점 | 카테고리 |
|---|---|---|
| Claude Opus 4.6 | 오케스트레이션, 계획, 미묘한 추론 | Sisyphus, Prometheus |
| GPT-5.4 | 심층 자율 추론, 복잡한 디버깅 | Hephaestus, ultrabrain |
| Kimi K2.5 | 빠른 오케스트레이션, 비용 효율적인 계획 | Sisyphus (대안) |
| GLM-5 | 중국어 작업, 일반 오케스트레이션 | Sisyphus (대안) |
프레임워크가 라우팅을 처리합니다. 여러분의 역할은 무엇을 원하는지 설명하는 것이지, 어떻게 할 것인지가 아닙니다.
컨텍스트 관리
AGENTS.md 계층 구조
더 나은 에이전트 이해를 위해 계층적 컨텍스트 파일을 생성하세요:
project/
├── AGENTS.md ← 프로젝트 전체 표준
├── src/
│ ├── AGENTS.md ← 소스 코드 규칙
│ └── components/
│ └── AGENTS.md ← 컴포넌트별 규칙
/init-deep를 사용하여 이 파일들을 자동 생성하세요.
조건부 규칙
규칙은 컨텍스트에 따라 자동으로 활성화됩니다:
## when: file.ext == "*.test.ts"
Jest 및 React Testing Library 사용
AAA 패턴 준수 (Arrange, Act, Assert)
## when: agent == "oracle"
자세한 기술적 결정 근거 제공
장기적 유지 관리성 고려
문제 해결
플러그인이 로드되지 않음
증상: 에이전트가 Oh My OpenAgent 기능을 사용하지 않습니다.
해결 방법:
opencode.json의plugin배열에"oh-my-openagent"(또는 기존"oh-my-opencode")가 있는지 확인bunx oh-my-opencode doctor실행- 플러그인 항목의 철자 확인
모델을 사용할 수 없음
증상: 작업이 모델 오류로 실패합니다.
해결 방법:
- 공급자에 대해 API 키가 구성되어 있는지 확인
- 공급자가 다운되었을 때 작업이 대안으로 라우팅되도록
fallback_models구성 bunx oh-my-opencode doctor를 실행하여 모델 액세스 확인
컨텍스트가 너무 김
증상: 에이전트가 컨텍스트 윈도우 한계에 도달합니다.
해결 방법:
- 적극적 잘라내기 활성화:
"experimental": { "aggressive_truncation": true } - 자동 재개 활성화:
"experimental": { "auto_resume": true } - 큰 단일 파일 대신 집중된 AGENTS.md 파일을 생성하려면
/init-deep사용
백그라운드 작업 시간 초과
증상: 병렬 에이전트가 완료 전에 실패합니다.
해결 방법:
- 동시성 감소:
"background_tasks": { "max_concurrent": 2 } - 구독 등급에 대한 API 속도 제한 확인
- 필요시 공급자별 제한 추가
실제 사례 연구
대량 ESLint 수정
“하루 만에 Oh My Opencode로 8000개의 eslint 경고를 해결했습니다” — Jacob Ferrari
패턴: ulw: 모든 ESLint 경고 수정
- Sisyphus가 파일 그룹별로 분해
- 여러 에이전트가 병렬로 수정
- Ralph Loop가 누락된 것이 없도록 보장
풀스택 애플리케이션 전환
“Ohmyopencode와 ralph loop를 사용하여 45k 줄짜리 tauri 앱을 SaaS 웹 앱으로 하룻밤 만에 전환했습니다. interview me 프롬프트로 시작했죠… 작동하는 것을 지켜보는 것은 놀라웠고, 오늘 아침에 대부분 작동하는 웹사이트를 발견했습니다!” — James Hargis
패턴: /start-work (Prometheus 인터뷰) → ultrawork (실행)
- Prometheus가 마이그레이션 전략 계획
- Sisyphus가 프론트엔드와 백엔드 에이전트를 병렬로 조정
- Hephaestus가 심층 전환 작업을 자율적으로 처리
- Ralph Loop가 밤새 모든 것을 실행 상태로 유지
복잡한 버그 디버깅
패턴: @explore + @oracle 협업
@explore가 실행 경로를 추적하고 의심스러운 코드를 식별@oracle이 잠재적 근본 원인을 분석하고 가설을 제시- 에이전트가 검증과 함께 수정 사항 구현
- LSP 도구가 수정이 참조를 손상시키지 않았는지 확인
적합한 경우: 프로덕션 이슈, 간헐적 버그, 경쟁 조건.
문서 생성
패턴: @librarian + 컨텍스트 주입
/init-deep을 실행하여 에이전트에게 프로젝트 컨텍스트 제공ultrawork: 완전한 API 문서 작성사용- Librarian이 코드베이스를 조사
- 에이전트가 LSP 검증된 타입 정보로 문서를 생성
빠른 참조
| 작업 유형 | 추천 명령어 | 관련 에이전트 |
|---|---|---|
| 대규모 리팩토링 | ulw: [작업 설명] | Sisyphus + Hephaestus + Experts |
| 아키텍처 결정 | /start-work | Prometheus → Sisyphus |
| 버그 수정 | @explore [버그 설명] | Explore → Oracle |
| 문서화 | ulw: write docs for [기능] | Librarian + Experts |
| 빠른 변경 | [간단한 설명] | Sisyphus (quick 카테고리) |