프로젝트의 mise en place: 빌드하기 전에 모든 것을 제자리에 두기
요약
이 글은 Claude Code를 위한 개발 도구 `mise`를 소개하며, 프로젝트 빌드 전 필요한 모든 기반 설정을 체계적으로 구축하는 방법을 안내합니다. 사용자는 `PROMPT.md`와 `/mise-cook` 명령을 사용하여 AI가 인터뷰하고 엔지니어링 기반(Git 구조, CLI, 워크플로우 등)을 자동으로 설정할 수 있습니다.
핵심 포인트
- `mise`는 Claude Code 전용 도구로, 프로젝트의 초기 설정을 자동화합니다.
- 사용자는 `PROMPT.md`를 붙여넣거나 제공된 링크를 사용하여 AI 기반 구축을 시작할 수 있습니다.
- `install.sh` 스크립트를 통해 재실행 가능한 워크플로우 명령어 세트가 설치됩니다.
프로젝트의 mise en place를 구현하세요: 빌드를 시작하기 전에 모든 것을 제자리에.
(이 도구는 mise에 대한 답변입니다 — 레포지토리는 mise-en-claude이며, 검색 엔진이 이를 jdx/mise라는 개발 도구 버전 관리자와 혼동하지 않도록 하기 위함입니다.)
⚠️ 초기 단계이지만 안전성에 진지하게 임하고 있습니다. PROMPT.md를 붙여넣고 /mise-cook 명령을 사용하면 오늘 작동하며, stacks/는 iOS/iPadOS/macOS뿐만 아니라 React, Next.js, Angular, Flutter, React Native 및 세 가지 백엔드를 지원합니다. 안전 동작은 QA harness가 하나 이상의 모델에서 합성 프로젝트에 대해 mise를 실행하여 검증합니다(자체 Proven 참고). Mode B의 install.sh는 오늘 워크플로우 명령을 설치합니다 — 여기에는 재실행 가능한 setup/rescue/update 진입점(설치된 형태의 /mise-init PROMPT.md)이 포함됩니다. 로드맵 상의 항목으로는 템플릿 라이브러리 (ARCHITECTURE.md)가 있습니다. 피드백을 환영합니다.
mise는 Claude Code를 위한 붙여넣기 프롬프트로, 사용자의 프로젝트에 대해 인터뷰한 다음 이를 위한 실제 엔지니어링 기반(git, CLAUDE.md, 건전한 프로젝트 구조, 올바른 커넥터 및 CLI 도구, /mise-cook와 같은 워크플로우 기술, 그리고 작업 추적기 — 이미 가지고 있다면 사용자 소유의 것, 그렇지 않다면 GitHub Issues)을 구축하거나 업그레이드합니다. 설정 만지작거리는 것을 멈추고 빌드를 시작하세요.
이는 숙련된 엔지니어가 기능 코드를 작성하기 전에 마련하는 기반입니다: 대부분의 AI 지원 프로젝트가 건너뛰고 나중에 후회하는
- 프로젝트를 위한 Claude Code 세션을 시작하세요*
프로젝트에 대해 (새롭거나 기존):
CLI: 터미널을 프로젝트 폴더에서 열고claude를 실행합니다.
.데스크톱 앱: Claude Code를 열고 프로젝트 폴더를 열거나 선택합니다.
웹 / IDE: claude.ai/code 또는 IDE 확장 프로그램에서 프로젝트를 엽니다.
- 다음 내용을 복사하여 첫 번째 메시지로 붙여넣으세요.
PROMPT.md
이것으로 충분합니다. mise가
당신을 인터뷰하고, 계획을 보여주며, 당신이 '예'라고 말할 때까지 아무것도 설정하지 않을 것입니다.
파일을 바로 찾기 어렵거나 이 링크만 있나요? 대신 다음을 붙여넣으세요:
Read https://raw.githubusercontent.com/emadd/mise-en-claude/main/PROMPT.md and follow it to set up my project.
이것은 단순히 빈 링크를 드롭하는 것과는 다른, 실제로 가져와 실행할 수 있는 지침입니다. Claude는 (안전을 위해 올바르게) 이것을 따르기보다는 볼거리로 취급할 것입니다.
저장소(repo)를 클론하고 설치 프로그램을 실행하여 mise의 워크플로우 명령어를 Claude Code 설정에 추가하세요:
git clone https://github.com/emadd/mise-en-claude
cd mise-en-claude && ./install.sh # 모든 프로젝트에 대해 /mise-init, /mise-update, /mise-cook, /mise-handoff, /mise-clean을 설치합니다
# 또는: ./install.sh --project . # 이 프로젝트의 ./.claude에만 설치합니다
이렇게 하면 /mise-init (다시 실행 가능한 설정/복구/업데이트 진입점 — PROMPT.md가 설치된 형태이므로, 재실행할 수 있는 전체 Mode A 흐름을 얻게 됩니다),
(설치된 명령어를 최신 게시 버전으로 새로 고침하는)
/mise-update
(키친 브리게이드),
/mise-cook
(세션 핸드오프), 그리고
/mise-handoff
(위생 청소 — git의 쓰레기, 임시 파일, 오래된 브랜치, 그리고 요청할 경우 선택적
/mise-clean
CLAUDE.md을 감사하는 것) 외에도 오케스트레이션 플레이북과 설정 프롬프트의 번들링된 사본을 전역 또는 프로젝트별로 얻게 됩니다. 설치는 비파괴적이며 반복 가능합니다: 이전에 편집했던 모든 명령어 파일은 백업한 후 대체하고, 이미 최신인 파일은 건너뜁니다. 일단 설치되면, /mise-init
는 일상적인 진입점입니다: 모든 프로젝트에서 실행하여 새로 설정하거나, 기존의 엉킨 상태(tangle)를 복구하거나, 최신 가이드라인과 비교하여 이탈된 상태를 조정할 수 있습니다. 이는 임베딩된 프롬프트를 읽고 어떤 것인지 자동 감지합니다. 로드맵에 남아있는 기능으로는 템플릿 라이브러리가 있습니다.
mise는 시간이 지남에 따라 개선되므로, 최신 버전을 얻는 방법은 사용자의 모드에 따라 다릅니다:
모드 A (붙여넣기): 프롬프트가 세션 내에만 존재하므로, mise를 '업데이트'한다는 것은 최신 것을 다시 복사하는 것을 의미할 뿐입니다. 업데이트할 것이 설치되어 있지 않으며 실행할 것도 없습니다. PROMPT.md 파일을 가져와 새로 시작한 세션에 붙여넣기만 하면 됩니다.모드 B (설치): --mise-update를 실행하면 최신 버전의 /mise-update main 브랜치를 가져와 임베딩된 명령어와 프롬프트를 비파괴적으로 재설치하고, 그 후 /mise-init은 다음에 실행될 때 스스로 최신 상태를 가져옵니다. 수동으로 하는 것은 이 리포지토리에서 새로 git pull을 받은 후 install.sh를 다시 실행하는 것과 같습니다. 어느 쪽이든, 편집하던 작업 복사본(working copy)에서는 절대 설치하지 말고, 깨끗하게 체크아웃된 main 브랜치에서 설치해야 합니다. --install.sh는 자신이 위치한 모든 트리를 복사하므로, 오염된 로컬 리포지토리는 릴리스 버전 대신 커밋되지 않은 변경 사항을 설치할 것입니다.
참고로 이것은 프로젝트의 기반을 최신 가이드라인으로 끌어올리는 **업데이트 모드(Update mode)**와는 별개입니다. 도구 자체를 업데이트하는 것은 위의 /mise-update (또는 붙여넣기/재설치)이며, 사용자의 프로젝트를 업데이트하는 것은 업데이트 모드를 사용하는 것입니다 (/mise-init을 실행하고 업데이트를 선택하거나, 단순히 PROMPT.md를 붙여넣습니다).
mise는 **동의 기반 단계(consent-gated phases)**로 작동합니다. 항상 전체 계획을 먼저 미리 보여주며, 사용자는 어떤 단계든 건너뛸 수 있습니다. '예'라는 동의 없이는 아무것도 설치되거나 작성되지 않습니다.
| 단계 (Phase) | 기능 (What it does) |
|---|---|
| 0 · Vision | 사용자의 비전, 스택(stack), 목표, 프로젝트가 신규인지 기존인지 여부, 그리고 이미 태스크 트래커를 사용하는지 여부를 학습합니다. 빠르고 간결한 인터뷰(Anthropic의 'Claude가 당신을 인터뷰하게 하기' 패턴) 또는 모호한 아이디어를 먼저 구체화하는 데 도움이 되는 개방형 브레인스토밍 중 하나를 선택할 수 있습니다. |
| 1 · Assess | 현재 환경(git 상태, 기존 파일, 설치된 CLI, OS)을 읽어 추천 사항이 템플릿이 아닌 현실에 맞게 적용되도록 합니다. |
| 2 · Git | 레포지토리(repo)를 초기화하거나 채택하고, 스택에 적합한 .gitignore 파일을 작성하며, 브랜치 규칙을 설정하고, 깔끔한 첫 커밋을 만듭니다. |
| 3 · Context | 인터뷰 내용을 바탕으로 시작용 CLAUDE.md와 README를 생성하고, 실제 엔지니어가 존중할 만한 프로젝트 구조를 마련합니다. |
| 4 · Connections | 프로젝트가 접하는 서비스에 대한 프로그래밍 방식의 접근(MCP / API / CLI)을 연결하여 에이전트들이 단순히 읽는 것을 넘어 실제로 작동시킬 수 있게 합니다. |
| 5 · CLI + tools | 워크플로우가 의존하는 gh와 다른 CLI를 설정합니다. 대시보드보다 CLI/API를 선호하며, 브라우저 전용 병목 현상을 표시합니다. |
| 6 · Skills + shortcuts | 커널-브리게이드(kitchen-brigade) 다중 에이전트 워크플로우를 포함하여 워크플로우 스킬과 슬래시 명령어(/)를 설치합니다. /mise-cook가 있습니다. |
| 7 · Persistence | 선호하는 태스크 트래커(Jira, Linear, Asana, Trello — 또는 사용하지 않는 경우 GitHub Issues)와 git을 워크플로우의 영구 메모리로 연결하여 세션 간에도 컨텍스트가 유지되도록 합니다. |
| 8 · Verify + hand off | 모든 것이 작동하는지 확인하고 실행할 첫 번째 명령어를 전달합니다. 몇 시간이 아닌 몇 분 만에 빌드할 수 있습니다. |
기존 프로젝트가 있나요? mise는 이를 감지하고 Rescue 모드(아래 참조)로 실행됩니다.
대부분의 사람들이 mise가 필요한 경우는 이미 프로젝트를 가지고 있기 때문입니다. 즉, git도 없고 구조도 없으며, 거대한 만능 파일 하나만 있고, 어쩌면 소스 코드에 API 키가 붙여넣기 되어 있는 반쯤 완성된 AI 지원 엉킨무더기 같은 것입니다. mise는 작업 내용을 잃지 않으면서 이를 정리하도록 구축되었습니다.
기존 프로젝트를 감지하면
스냅샷 우선: 작업 내용이 안전해질 때까지 아무것도 건드리지 않습니다. 저장소가 없나요? mise는 먼저 git init을 수행하고 현재 상태를 문자 그대로 복구 지점으로 커밋합니다. 이미 저장소가 있나요? mise/rescue 브랜치에서 작동합니다. 그 이후의 모든 변경 사항은 되돌릴 수 있습니다.평이한 언어로 된 건강 보고서입니다. mise는 실제 프로젝트를 읽고 우선순위가 지정된 진단(git 위생, 커밋된 비밀 정보, 모놀리스 파일, 누락된 .gitignore / .CLAUDE.md / tests / CI)을 제공하며, 각 항목이 나중에 왜 문제가 되는지 설명해 줍니다. 전문 용어의 벽 없이, 이해할 수 있는 체크리스트만 있습니다.트리아지(Triage), 안전 우선입니다. 숙련된 엔지니어가 순서대로 고치는 방식과 동일합니다: 출혈을 막고 (유출된 비밀 정보) → 복구 가능성 확보 (안전하게 git에 저장) → 구조 → 맥락 → 워크플로우. 각 수정은 별도의 검토 가능한 단계입니다. 원할 때 멈추면 모든 것이 그대로 유지됩니다.작업 내용은 항상 보존됩니다. 리팩터링(Reorg)은 git mv를 통해 이루어지며 (히스토리 유지), 큰 변경 사항은 승인하는 diff로 도착하고, 코드는 절대 삭제되지 않으며, 대규모 일괄 재작성은 없습니다. mise가 하는 두 가지 가치 있는 기능이 있습니다: 첫째, 기존 코드 읽기를 통해 .CLAUDE.md를 작성해 줍니다. 이는 이전에 없었던 것이며, 향후 모든 Claude 세션에서 프로젝트에 대해 즉시 더 똑똑해집니다.로그인한 비밀 정보를 성숙하게 처리합니다. 작업 디렉터리뿐만 아니라 git 히스토리에도 이미 존재하는 키를 포착하고, 이를 조용히 추적하지 않는 것이 수정이 아니라고 명확하게 알려줍니다. 실제 해결책(키 제공자 측에서 로테이션하고, 사용자가 선택할 경우에만 히스토리를 재작성)을 설명하며, 절대로 뒤에서 사용자 모르게 히스토리를 재작성하지 않습니다. 이 모든 과정 동안 비밀 정보의 평문은 모델의 컨텍스트에 들어가지 않습니다. Rescue mode 역시 Idempotent(멱등적)하여 프로젝트가 벗어날 때마다 다시 실행할 수 있으며, 새로 잘못된 부분만 처리합니다. mise는 일회성이 아닌 살아있는 설정입니다. 가이던스는 개선되고 Claude Code 자체도 진화하므로, mise는 스스로 업데이트하고 최신 상태에 맞춰 프로젝트를 조정할 수 있습니다. 프로젝트를 구성할 때, mise
작은 커밋된 .mise/ 스탬프를 남겨 어떤 버전 세트로 설정되었고 어떤 선택들이 적용되었는지 기록합니다. 나중에 다시 실행하고 선택할 수 있습니다.
업데이트:
저장소에서 최신 mise의 **최신 상태(canonical)**를 (사용자의 동의하에) 가져옵니다. 먼저 스냅샷을 만듭니다(rescue와 동일: 변경되기 전에는 되돌릴 수 있음). **조정 보고서(Reconciliation report)**는 세 가지 항목으로 구성됩니다:
- 🆕 새로 추가된 (New): 사용자의 버전 이후로 추가된 가이드, 스킬 또는 커넥터.
- 🔀 변경되거나 벗어난 (Drifted): 프로젝트가 분기된 부분(의도적일 수 있으며, 이 경우
mise는 이를 사용자 소유로 간주합니다). - 🗑 사용 중단된 (Deprecated): 새로운 가이드에서 제거된 모든 것.
승인한 내용만 비파괴적으로 적용합니다. 만약 사용자가 무언가를 명확하게 커스터마이징했다면, 덮어쓰는 대신 **"사용자 설정을 유지할까요, 아니면 채택할까요?"**라고 묻습니다.
스탬프가 mise가 무엇을 했는지 기록하기 때문에, 의도적인 커스터마이징과 자연스러운 변화(bit-rot)를 구분할 수 있습니다. 만약 스탬프에 없다면, mise는 그것을 건드리지 않았다는 뜻이므로 사용자 소유이며, 건드리기 전에 묻습니다. 이 도구는 환경을 수정하므로, 마치 규율 잡힌 엔지니어처럼 작동하며, 단순히 curl | bash 한 줄 명령어처럼 행동하지 않습니다:
- 아무것도 건드리기 전에 전체 계획 미리 보기: 어떤 것도 변경하기 전에 전체 계획을 보여주고, 각 단계마다 묻습니다. 절대 덮어쓰지 않습니다(Never clobbers). 기존 파일은 덮어쓰기되지 않고 병합되거나 추가됩니다.
- 드라이-런 친화적 (Dry-run friendly): 먼저 정확히 무엇을 할 것인지 보여달라고 요청할 수 있습니다. 진행하면서 설명합니다: 모든 단계가 왜 그런지 말해주므로, 블랙박스를 상속받는 대신 기반 지식을 배울 수 있습니다.
- 멱등성 (Idempotent): 다시 실행해도 안전합니다. 이미 완료된 것을 감지하고 간격만 채우기 때문에, 이것이 업데이트 기능까지 겸하게 만드는 이유입니다.
- 참조 기반 비밀 관리: 값을 통해가 아니라 참조를 통해 비밀을 관리합니다. 노출된 키를 감사하고 수정할 때, 평문(plaintext)은 모델의 컨텍스트에 절대 들어가지 않습니다. 패턴과 위치로 감지하며,
파일:줄형식으로 발견 사항을 참조합니다.
, 그리고 구조적으로 수정합니다(환경 참조, 제공자 측 로테이션). 커밋하려는 파일의 정확한 세트를 게이트하여, 키가 기준선 커밋에 포함되는 것을 막고, 실제 코드와 비밀 정보가 혼합된 설정 파일에서도 값에 무지하게 유지됩니다. 이 도구는 하나가 되는 것이 아니라 누출을 수정합니다.컨텍스트 창 인식(Context-window aware). 이것이 깔아놓는 기반은 에이전트들이 컨텍스트를 예산처럼 다루게 만듭니다: 부족할 때 경고하고, 내구성 있는 아티팩트로 깨끗하게 인계하며, 충실도가 조용히 죽어가는 자동 압축(auto-compaction)에 빠지는 것을 거부합니다.성능 좋은 모델에서 실행되며, 그렇지 않을 경우 안전하게 저하됩니다.mise
mise는 최첨단급 모델을 가정하고 능력 자체 점검으로 시작합니다. 모델을 진정으로 감지할 수는 없기 때문에(어떤 프롬프트도 할 수 없음), 확신하지 못하면 읽기 전용(read-only) 상태를 유지합니다: 보고서는 제공하지만, 편집하거나 설치하거나 삭제하는 것을 거부하고 더 강력한 모델에서 다시 실행하도록 안내합니다. 실제 안전망은 모든 변경 사항이 스냅샷 우선이며 어쨌든 되돌릴 수 있다는 것입니다.환경에 적응합니다. 다중 에이전트 워크플로우는 하드코딩된 에이전트 수가 아닌 사용자의 머신(코어/메모리/부하)에 맞춰 병렬성을 조정합니다. 그리고 **로컬 우선이지만 클라우드 적응형(local-first but cloud-adaptive)**입니다: 로컬 개발을 선호하지만, 클라우드에서 시작하면 그곳에서 이식 가능한 작업을 수행하고 로컬 전용 부분(네이티브 빌드, 시뮬레이터, 서명)은 로컬 세션으로 다시 전달합니다.이미 가지고 있는 두뇌를 감사합니다.`CLAUDE.md
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기