omd:setup — 가진 것을 찾고, 고르게 하고, 기억한다
SkillWeb & browsingGuided setup of the tools the design harness can use — image/video generation channels, browser, encoders. Detects what the user already has, explains pros/cons/costs, asks instead of instructing, and saves choices to .omd/config.json so every later design task reuses them. Trigger: 'omd setup', '도구 셋업', '이미지 생성 뭐 쓸 수 있어', 'configure media', '세팅해줘', 'what can you generate'.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the omd:setup — 가진 것을 찾고, 고르게 하고, 기억한다 skill
What this skill tells your AI
The instructions your AI receives, as published by kwakseongjae/oh-my-design in skills/omd-setup/SKILL.md and read by ahel’s review.
원칙 하나: "이거 발급받아라"고 하지 않는다. 이 머신과 계정에 이미 있는 채널을 찾아 보여 주고,
각 채널의 장단점·비용을 설명한 뒤, 사용자가 고른다. 고른 것은 .omd/config.json에 저장돼 이후의
디자인 작업(omd:landing, omd:media, omd:showcase, omd:autopilot)이 자동으로 쓴다.
키 값은 어디에도 기록하지 않는다 — env 이름의 존재 여부만.
절차
1. 감지 (기계)
omd setup detect --json # 설치본(기본) — 패키지 루트의 감지 스크립트를 실행한다
node scripts/omd-setup-detect.mjs --json # 이 레포 안에서 개발할 때만
설치본이 기본 경로다. 결과의 channels[*].present가 사실이다.
present: null(claude-in-chrome 등)은 세션의 도구 목록에서 직접 확인한다. 이미 .omd/config.json이 있고
--redo가 아니면 현재 설정을 보여 주고 바꿀지만 묻는다.
2. 설명 (한 번에, 표로)
감지된 채널만 표에 넣는다(없는 것은 "미보유" 한 줄로 접는다 — 발급 안내 금지). 열: 채널 · 무엇을 만드나 · 장점 · 단점 · 비용(외부 발표치임을 명시) · 이 프로젝트에서 쓰는 곳. 예:
| 채널 | 만드는 것 | 장점 | 단점 | 비용 | 쓰는 곳 |
|---|---|---|---|---|---|
| grok build | 이미지·6초 영상 | 로그인만으로 · 벤치 실사용 | SVG 없음 | 구독 | landing 히어로·섹션 에셋 |
| Codex $imagegen | 이미지 | 키 없이 헤드리스, 참조 편집 | SVG 없음 | ≈$0.03–0.08/장 | media 래스터 |
| Recraft | SVG·style_id | 유일한 벡터, 브랜드 스타일 재사용 | 유료 키 | SVG $0.088 | 아이콘·일러스트 세트 |
3. 문답 (한 배치, 최대 5문)
AskUserQuestion 한 번에 묻는다:
- 래스터 이미지 1순위 채널(감지된 것 중) — 권장은 첫 선택지.
- SVG·아이콘 세트: Recraft 보유 시 쓸지 / 없으면 인라인 SVG 생성으로 갈지.
- 영상: grok
image_to_video/ Veo / 안 씀. - 브라우저: playwright(결정론) / claude-in-chrome(로그인 세션) / aside.
- 비용 상한: 작업당 자산 세트 예산(기본 $1).
무인 모드면 각 문항의 첫 선택지를 고르고
autoSelected로 기록한다.
4. 저장
.omd/config.json:
{
"version": 1,
"updatedAt": "<ISO8601>",
"media": { "image": ["grok-build", "codex-imagegen"], "svg": "inline" , "video": "grok-build", "budgetUsdPerSet": 1 },
"browser": "playwright",
"detected": { "<channel>": { "present": true, "version": "…" } },
"notes": "사용자가 고른 이유 한 줄"
}
.omd/preferences.md에 pending 한 줄을 남긴다: "도구 설정 — <요약> (omd:setup, <날짜>)". 키 값은 쓰지 않는다.
5. 다음 행동 제안 (한 줄)
설정이 끝나면 지금 바로 해볼 수 있는 것 하나를 제안한다 — 예: "omd:landing toss 로 원페이지를 만들면
grok build로 에셋 5장을 생성하고 showcase 영상까지 냅니다."
소비자 (이 설정을 읽는 스킬)
omd:media/omd-codex-image—media.image[0]부터 시도, 실패 시 다음 채널, 전부 없으면 프롬프트 팩 + 큐.omd:landing3단계 에셋 — 같은 순서.budgetUsdPerSet초과 시 중단하고 보고.omd:showcase—ffmpeg부재면 프레임 PNG만 남기고 안내.omd doctor—.omd/config.json이 있으면 채널·예산 요약을 한 줄로 보여 준다.
하드 룰
- 발급·결제·가입을 지시하지 않는다. 없는 채널은 "없음"으로 표시하고 대안(인라인 SVG·소싱·프롬프트 팩)을 제시한다.
- 키 값·토큰을 파일·로그·대화에 쓰지 않는다.
- 사용자가 고르기 전에는 아무 채널도 기본값으로 굳히지 않는다(무인 모드 제외, 그때도 기록).
Signals
- GitHub stars
- 500
- Forks
- 45
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
omd-setup- Source
- github.com/kwakseongjae/oh-my-design