# Show GN: oh-my-agent — 실무용 멀티 AI IDE 에이전트 하네스

> Clean Markdown view of GeekNews topic #27560. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=27560](https://news.hada.io/topic?id=27560)
- GeekNews Markdown: [https://news.hada.io/topic/27560.md](https://news.hada.io/topic/27560.md)
- Type: show
- Author: [gracefullight](https://news.hada.io/@gracefullight)
- Published: 2026-03-16T19:32:57+09:00
- Updated: 2026-03-16T19:32:57+09:00
- Original source: [github.com/first-fluke](https://github.com/first-fluke/oh-my-agent)
- Points: 32
- Comments: 4

## Summary

에이전트가 “TODO 앱 만들어줘” 같은 요청을 자주 오해하는 문제를 **프로세스 기반으로 교정**하려는 시도가 oh-my-agent입니다. 핵심은 에이전트의 오작동을 점수화하는 **Clarification Debt(CD)** 시스템으로, 잘못된 이해나 범위 이탈이 누적되면 RCA 작성과 세션 중단이 자동으로 이뤄집니다. `.agents/` 디렉터리를 단일 진실 공급원으로 삼아 스킬·워크플로우를 관리하며, `/coordinate`와 `/ultrawork` 두 가지 오케스트레이션 모드로 속도와 품질을 조정할 수 있습니다. GitHub 기반 설치로 주요 AI IDE 전반에서 바로 활용 가능합니다.

## Topic Body

에이전트에게 “TODO 앱 만들어줘”라고 하면 뭔가를 만들긴 합니다. 문제는 자주 엉뚱한 걸 만들고, 범위를 벗어나고, 같은 실수를 반복한다는 점입니다.  
  
이런 문제를 해결하려고 초기엔 AGENTS.md, 최근엔 Skills 같은 구조적 접근이 많이 등장했습니다. 하지만 실제로 공유되는 스킬들을 보면 몇 가지 공통적인 문제가 있습니다.  
  
- 가장 중요한 **라이브러리 버전 정보가 빠져 있음**  
- 역할 설명이 `"You are a Senior engineer"` 같은 **선언으로 끝남**  
- 키워드 몇 개면 충분한 내용을 **장황하게 풀어 써서 토큰 낭비**  
  
결과적으로 이런 스킬들은 모델이 잘 따르지도 못하고,  컨텍스트만 낭비한 채 장기적으로는 아무도 열어보고 싶지 않은 데드 코드가 되기 쉽습니다.  
  
---  
  
**[접근방식]**  
  
oh-my-agent를 통해 이 문제를 프롬프트가 아니라 프로세스로 풀고 싶었습니다. 에이전트가 일을 잘못했을 때 단순히 “다시 해”라고 하는 대신, 왜 잘못됐는지 기록하고 다음 실행에 반영하는 구조를 둡니다.  
  
대표적인 메커니즘이 **Clarification Debt(CD)** 스코어링입니다. 에이전트가 요구사항을 잘못 이해하거나 범위를 벗어나면 점수가 쌓입니다.  
  
- clarify: **+10** — 단순 확인 질문  
- correct: **+25** — 의도 오해로 방향 수정  
- redo: **+40** — 범위 이탈로 롤백 후 재시작  
- Charter 확인 없이 작업 시작: **+15**  
- 허용 범위 밖 파일 수정: **+20**  
- 같은 에러 반복: **x1.5 multiplier**  
  
50점을 넘으면 Root Cause Analysis(RCA) 작성이 의무이고, 80점을 넘으면 세션이 중단됩니다. 여기서 나온 교훈은 `lessons-learned.md`에 누적되고 다음 세션부터 바로 반영됩니다. 프롬프트는 간단히 작성해도 프로세스가 보정해 주는 구조입니다.  
  
이 외에도 에이전트가 제멋대로 움직이지 않도록 몇 가지 공통 프로토콜을 둡니다.  
  
- **Clarification Protocol**  
  요구사항 모호도를 LOW / MEDIUM / HIGH로 나눕니다. LOW면 진행, MEDIUM이면 선택지 제시, HIGH면 작업을 멈추고 명확화합니다.  
- **Difficulty Guide**  
  태스크를 Simple / Medium / Complex로 나누고 필요한 프로토콜 깊이를 조절합니다.  
- **Context Budget**  
  모델별 토큰 예산을 설정해 불필요한 컨텍스트 낭비를 줄입니다.  
  
이런 접근은 OpenAI가 말한 **Harness Engineering**과도 닿아 있습니다. 에이전트를 잘 쓰는 문제는 프롬프트 한 줄의 문제가 아니라, **에이전트를 어떤 구조로 제어하느냐의 문제**라는 생각입니다.  
  
---  
  
**[프로젝트 구조]**  
  
oh-my-agent는 이를 프로젝트 구조 안에서 관리합니다.  
  
- **`.agents/` = SSOT**  
  스킬, 워크플로우, 설정을 `.agents/` 아래에 모아 단일 진실 공급원으로 사용합니다. 특정 IDE에 종속되지 않습니다.  
- **역할 기반 에이전트 팀**  
  PM, QA, Frontend, Backend, Mobile, Debug 같은 기본 역할에 더해 이번에 DB Agent와 TF Infra Agent가 추가되었습니다.  
  - **DB Agent**: SQL / NoSQL / Vector DB 모델링, ISO 27001 보안 권고 포함  
  - **TF Infra Agent**: Multi-cloud Terraform, OPA / Sentinel 정책, ISO 42000 시리즈 통제 가이드 포함  
- **워크플로우 중심 오케스트레이션**  
  계획, 리뷰, 디버그, 병렬 실행을 기본 흐름으로 두고 있습니다. 새로 추가된 `/brainstorm` 워크플로우는 코드 작성 없이 설계부터 탐색합니다.  
  코드베이스 분석 → 명확화 질문 → 접근법 제안 → 사용자 승인 → 설계 문서 저장 순서로 진행한 뒤 `/plan → 구현`으로 이어집니다.  
  
---  
  
**[두 가지 오케스트레이션 모드]**  
  
**/coordinate**는 빠르게 돌리고 문제가 나오면 고치는 방식입니다. PM이 태스크를 분해하고 에이전트를 실행한 뒤 QA가 한 번 리뷰합니다. CRITICAL/HIGH 이슈가 나오면 해당 작업을 다시 돌리는 구조로, 전체적으로 가볍고 빠른 **7단계 루프**입니다.  
  
반면 **/ultrawork**는 품질 검증을 강하게 둡니다. PLAN → IMPL → VERIFY → REFINE → SHIP 다섯 단계로 나뉘고 각 단계마다 게이트가 있어 통과하지 못하면 다음 단계로 넘어갈 수 없습니다. **17단계 중 11단계가 리뷰**이며, REFINE 단계에서는 파일 분할, 중복 제거, 부수 효과 분석, dead code 정리까지 수행합니다.  
  
조금 과해 보일 수도 있지만, 기계어 → 프로그래밍 언어 → 자연어로 프로그래밍의 추상화 레벨이 높아질수록 결국 검증이 가장 중요하다는 것에 공감하실 것 같습니다.  
  
---  
  
**[프로젝트 확장 배경]**  
  
한 달 전 `oh-my-ag`라는 Antigravity 전용 오케스트레이터로 소개했었습니다. 그런데 그 사이 여러 AI IDE가 `.agents/skills/`를 프로젝트 스킬 경로로 쓰기 시작했고, 특정 IDE 전용으로 둘 이유가 없어졌습니다. 그래서 범용 하네스 형태로 확장해 **oh-my-agent**가 되었습니다.  
  
---  
  
**[시작하기]**  
  
`curl -fsSL https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.sh | bash`  
  
Antigravity, Claude Code, Codex CLI, Cursor 등 주요 AI IDE를 모두 지원합니다.  
  
---  
  
AI IDE를 이미 쓰고 있다면 한 번 써보셔도 좋겠습니다. 결국 개발자의 목표는 **QCD (Quality, Cost, Delivery)** 를 동시에 잡는 것입니다. 에이전트 개발도 예외가 아니라는 생각으로 만들었습니다.  
  
🔗 GitHub: [first-fluke/oh-my-agent](https://github.com/first-fluke/oh-my-agent)

## Comments



### Comment 53149

- Author: findme
- Created: 2026-03-16T20:16:42+09:00
- Points: 2

기존부터 쓰던 유저인데 반가운 소식이네요 coordinate 를 만족스럽게 사용했습니다  
안그래도 검증을 더 해볼수있으면 좋겠다 했는데울트라모드는 더 꼼꼼하다니 내일 바로 사용해보아야겠네요

### Comment 53151

- Author: gracefullight
- Created: 2026-03-16T21:11:03+09:00
- Points: 1
- Parent comment: 53149
- Depth: 1

감사합니다! 혹시 말 잘 안들으면 알려주셔요.

### Comment 53170

- Author: moon5g
- Created: 2026-03-17T09:20:11+09:00
- Points: 1

package.json에서 스크립트 추가하다가 워크스페이스 폴더만 살리고 모든 파일을 다 삭제해버리네요 복구중이긴한데 황당하네요

### Comment 53171

- Author: gracefullight
- Created: 2026-03-17T09:33:06+09:00
- Points: 1
- Parent comment: 53170
- Depth: 1

클로드나 에이전트 내부에서 실행하셨나요? package.json이나 모든 파일을 삭제하는 코드는 없어서요. 플로우 전체를 알려주시면 감사하겠습니다!  
  
- tarball.ts:33,35,43 — /tmp/oh-my-agent-* 임시 디렉토리만 삭제  
- cleanup.ts:108,231 — PID 파일, 명시적 oma cleanup 커맨드에서만 실행  
- agent.ts:665,1027 — PID/로그 파일 (프로세스 종료 시)  
- skills.ts:234 — .cursor/skills 내 심링크 1개  
- migrate.ts:45-80 — 레거시 .cursor/skills 심링크 디렉토리
