/ 디렉터리 / 플레이그라운드 / mex
● 커뮤니티 theDakshJaitly ⚡ 바로 사용

mex

제작: theDakshJaitly · theDakshJaitly/mex

프로젝트 메모리 스캐폴드 + 드리프트 감지기 — AI 코딩 에이전트가 어제의 스냅샷이 아닌 프로젝트의 실제 상태에 근거하도록 유지.

mex는 저장소에 구조화된 메모리 스캐폴드(아키텍처, 관례, 진행 중인 작업, 차단 사항)를 설치하고 메모리와 현실 간의 드리프트를 감지하는 CLI를 제공합니다. 코드 변경이 메모리와 모순되면 CLI가 플래그를 달아 업데이트하거나 재정렬할 수 있습니다. 경량 — 저장소에 살면서 팀과 함께 이동하도록 설계됐습니다.

왜 쓰나요

핵심 기능

라이브 데모

실제 사용 모습

준비됨

설치

클라이언트 선택

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "mex-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/theDakshJaitly/mex",
        "~/.claude/skills/mex"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config 열기. 저장 후 앱 재시작.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "mex-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/theDakshJaitly/mex",
        "~/.claude/skills/mex"
      ],
      "_inferred": true
    }
  }
}

Cursor는 Claude Desktop과 동일한 mcpServers 스키마 사용. 프로젝트 설정이 전역보다 우선.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "mex-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/theDakshJaitly/mex",
        "~/.claude/skills/mex"
      ],
      "_inferred": true
    }
  }
}

Cline 사이드바의 MCP Servers 아이콘 클릭 후 "Edit Configuration" 선택.

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "mex-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/theDakshJaitly/mex",
        "~/.claude/skills/mex"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop과 같은 형식. Windsurf 재시작 후 적용.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "mex-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/theDakshJaitly/mex",
        "~/.claude/skills/mex"
      ]
    }
  ]
}

Continue는 맵이 아닌 서버 오브젝트 배열 사용.

~/.config/zed/settings.json
{
  "context_servers": {
    "mex-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/theDakshJaitly/mex",
          "~/.claude/skills/mex"
        ]
      }
    }
  }
}

context_servers에 추가. 저장 시 Zed가 핫 리로드.

claude mcp add mex-skill -- git clone https://github.com/theDakshJaitly/mex ~/.claude/skills/mex

한 줄 명령. claude mcp list로 확인, claude mcp remove로 제거.

사용 사례

실전 활용법: mex

프로젝트 시작 시 프로젝트 메모리 설정

👤 새 저장소 소유자 ⏱ ~25 min beginner

언제 쓸까: 프로젝트 1일차; 에이전트가 빠르게 적응하길 원할 때.

사전 조건
  • Skill 설치 — git clone https://github.com/theDakshJaitly/mex ~/.claude/skills/mex
흐름
  1. 초기화
    Use mex. Initialize project memory with sections: architecture, conventions, in-flight, blockers.✓ 복사됨
    → 템플릿이 있는 /.mex/ 스캐폴드 생성됨
  2. 초기 내용 채우기
    Auto-extract architecture from existing code and a starter convention list.✓ 복사됨
    → 초기 내용으로 섹션 채워짐
  3. 신선도 설정
    Mark each section verified today.✓ 복사됨
    → 신선도 마커 설정됨

결과: 공유된 에이전트 컨텍스트로 시작하는 새 프로젝트.

함정
  • 자동 추출이 관련 없는 세부 사항을 가져옴 — 단호하게 정리 — 메모리는 원칙을 위한 것이지 grep이 아님
함께 쓰기: filesystem

프로젝트 메모리가 코드와 불일치하는 곳 찾기

👤 장기 실행 프로젝트 소유자 ⏱ ~30 min intermediate

언제 쓸까: 메모리가 몇 달 전에 설정됐고 얼마나 오래됐는지 아무도 모를 때.

흐름
  1. 드리프트 실행
    Use mex. Run drift detection. Report claims that no longer match reality.✓ 복사됨
    → 주장 ↔ 증거가 있는 드리프트 보고서
  2. 업데이트 또는 제거
    For each drift, decide: update memory or fix the code (claim was right and reality drifted).✓ 복사됨
    → 항목별 결정; 코드 측 수정을 위한 PR 열림
  3. 재검증
    After resolving, mark sections verified today.✓ 복사됨
    → 메모리 재정렬됨

결과: 민간 전승이 아닌 신뢰할 수 있는 계약으로 유지되는 메모리.

함정
  • 드리프트 감지기가 너무 공격적으로 플래그 — --strictness 조정; 활성 프로젝트에는 'medium' 사용
함께 쓰기: github

팀원 간 진행 중인 작업 인계

👤 휴가/퇴사 예정인 개발자 ⏱ ~20 min beginner

언제 쓸까: 3개의 기능이 진행 중이고 다른 사람이 이어받아야 할 때.

흐름
  1. 진행 중인 작업 캡처
    Use mex. For each open branch, write an in-flight entry: goal, current state, next steps, gotchas.✓ 복사됨
    → /.mex/in-flight/에 항목
  2. CLI로 검증
    Run drift on in-flight; ensure entries reflect actual branch state.✓ 복사됨
    → 드리프트 클린
  3. 인계
    Generate a teammate-ready summary linking each entry to its branch.✓ 복사됨
    → Slack/이메일 준비된 인계

결과: 고고학 없는 원활한 인수인계.

함정
  • 진행 중인 항목이 모호함 ('X 작업 중') — 템플릿의 '다음 단계' 필드를 강제; 구체적이지 않으면 도움 안 됨

조합

다른 MCP와 조합해 10배 효율

mex-skill + filesystem

메모리가 저장소에 있음; 커밋

Commit /.mex/ to git so memory travels with the codebase.✓ 복사됨
mex-skill + github

PR에서 드리프트 CI 검사

On every PR, run mex drift and post the report as a PR comment.✓ 복사됨

도구

이 MCP가 노출하는 것

도구입력언제 호출비용
init scaffold_options 프로젝트당 한 번 0
drift section?, strictness? 주간 / 장기 실행 브랜치 병합 전 0 (uses local checks + LLM for fuzzy claims)
verify section 현실에 맞게 메모리를 업데이트한 후 0
in_flight_add branch, goal, next_steps 기능 브랜치를 시작할 때 0
summary format 인계 / 상태 보고 0

비용 및 제한

운영 비용

API 쿼터
없음 — 로컬
호출당 토큰
드리프트가 퍼지 주장에 LLM 사용; 실행당 제한됨
금액
무료
CI에서는 strict=high로 진짜 드리프트 감지; 일일 로컬 검사에는 medium

보안

권한, 시크릿, 파급범위

최소 스코프: filesystem-write
자격 증명 저장: 없음
데이터 외부 송신: 드리프트 LLM이 원격 제공자로 설정된 경우가 아니면 없음

문제 해결

자주 발생하는 오류와 해결

드리프트가 거짓 양성을 보고

strictness 낮추기; 또는 주장 표현을 더 확인 가능하게 정제

메모리가 무한 증가

각 섹션에 소프트 상한이 있음; 주기적으로 통합 — 원칙 유지, 구체적인 것 보관

CLI가 /.mex/를 찾지 못함

저장소 루트에서 실행; 또는 --root <path> 전달

자동 추출이 핵심 불변 조건을 놓침

자동 추출은 시작점; 부하가 많은 불변 조건은 직접 작성

대안

mex 다른 것과 비교

대안언제 쓰나단점/장점
claude-mem-skill프로젝트 지식 메모리가 아닌 세션 연속성이 필요할 때다른 문제; mex는 프로젝트 수준 불변 조건을 위한 것
Plain CLAUDE.md소규모 프로젝트, 드리프트 감지가 불필요할 때구조 없음; 자동화된 신선도 검사 없음
pilot-shell-skill스펙/계획/게이트와 지식 영속화가 필요할 때더 넓은 워크플로우 범위; 더 많은 의견

더 보기

리소스

📖 GitHub에서 공식 README 읽기

🐙 열린 이슈 보기

🔍 400+ MCP 서버 및 Skills 전체 보기