AI 멀티플렉싱 워크플로우: ADHD급 생산성 향상기 (3편) - 워크스페이스 운영 실전기
5~8개 Cursor 인스턴스를 효율적으로 관리하는 노하우와 Remote SSH vs Native 환경 구성법
AI 멀티플렉싱 워크플로우: ADHD급 생산성 향상기 (3편)
워크스페이스 운영 실전기
안녕하세요! 1편에서 AI 스택을, 2편에서 공통 워크플로우를 다뤘다면, 이번 3편에서는 실제 워크스페이스 운영 실전기를 상세히 공유해보겠습니다.
제가 현재 5~8개의 Cursor 인스턴스를 동시에 돌리면서 각각의 프로젝트를 어떻게 관리하는지, Remote SSH와 Native 환경을 어떻게 구성하는지 노하우를 전수해드릴게요!
️ 현재 워크스페이스 구성 현황
실시간 스냅샷 (지금 이 순간 ㅋㅋ)
🖥️ MacBook Pro M2 Max (64GB RAM) - 메인 머신
├── 📡 Remote SSH 기반 (4-5개)
│ ├── 🔴 Production Code Server (AWS EC2)
│ ├── 🟡 Build Server 1 (Docker 환경)
│ ├── 🟠 Build Server 2 (QA 환경) │ ├── 🔵 Test Environment (Staging)
│ └── 🟣 Client Demo Server (필요시)
│
└── 💻 Native 기반 (3-4개) ├── 📝 Blog/Documentation ├── 🎓 강의자료 (CPS 3기) ├── 🧪 실험용 프로젝트 └── 📋 Config/Scripts 관리
진짜 지금도 8개가 떠있어요 ㅋㅋ 윈도우 관리가 진짜 ADHD 수준…
Remote SSH vs Native: 언제 뭘 쓸까?
Remote SSH를 쓰는 경우
✅ 이런 상황에서 Remote SSH:
- 무거운 빌드가 필요한 프로젝트 (Docker 빌드, 큰 패키지)
- 팀 협업이 중요한 Production 코드
- DB나 외부 서비스 연동이 복잡한 경우
- 보안상 민감한 프로젝트
- 지속적으로 실행되어야 하는 서비스들
장점:
- 높은 성능: 서버 스펙을 마음껏 활용
- 연속성: 연결이 끊어져도 작업 지속
- 팀 협업: 동일한 환경에서 작업
- ️ 보안: 민감한 코드가 로컬에 없음
단점:
- 네트워크 의존성: 인터넷 없으면 GG
- 비용: 서버 운영비
- ️ 초기 설정 복잡
Native를 쓰는 경우
✅ 이런 상황에서 Native:
- 빠른 프로토타이핑이 필요한 경우
- 개인 프로젝트나 실험적 코드
- 문서 작성이나 블로그 포스팅
- 강의 자료 준비
- Config 파일들 관리
장점:
- 빠른 반응속도: 로컬이라 지연 없음
- 오프라인 가능: 인터넷 없어도 작업
- 직관적: 바로바로 확인 가능
단점:
- 배터리 소모: 로컬 리소스 사용
- 협업 제한: 혼자만 접근 가능
️ Remote SSH 환경 구성 실전
1. 서버 준비 및 기본 설정
제가 쓰는 서버 스펙들:
# Production Code Server (AWS EC2 t3.xlarge)
- CPU: 4 vCPU
- RAM: 16GB - Storage: 100GB SSD
- 용도: 메인 개발, Production 배포
# Build Server (AWS EC2 c5.2xlarge) - CPU: 8 vCPU
- RAM: 16GB
- Storage: 200GB SSD
- 용도: Docker 빌드, CI/CD 파이프라인
기본 서버 설정 스크립트:
#!/bin/bash
# setup-dev-server.sh
# 기본 패키지 업데이트
sudo apt update && sudo apt upgrade -y
# 개발 도구 설치
sudo apt install -y git curl wget vim htop tree
# Node.js 설치 (최신 LTS)
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
# Docker 설치
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
sudo usermod -aG docker $USER
# Git 설정
git config --global user.name "Jay Lee"
git config --global user.email "your@email.com"
git config --global init.defaultBranch main
# SSH 키 생성 (GitHub용)
ssh-keygen -t ed25519 -C "your@email.com" -f ~/.ssh/id_ed25519 -N ""
echo "설정 완료! 재로그인 후 Docker 사용 가능"
2. Cursor에서 Remote SSH 연결 설정
VS Code/Cursor SSH Config (~/.ssh/config):
# Production Server
Host prod-server HostName your-prod-server-ip User ubuntu IdentityFile ~/.ssh/your-prod-key.pem ServerAliveInterval 60 ServerAliveCountMax 3
# Build Server Host build-server HostName your-build-server-ip User ubuntu IdentityFile ~/.ssh/your-build-key.pem ServerAliveInterval 60 ServerAliveCountMax 3
# Test Environment
Host test-server HostName your-test-server-ip User ubuntu IdentityFile ~/.ssh/your-test-key.pem ServerAliveInterval 60
Cursor에서 연결하기:
Cmd + Shift + P
→ “Remote-SSH: Connect to Host”- 위에서 설정한 Host 선택
- 새 Cursor 창이 Remote 환경으로 열림
- 해당 프로젝트 폴더 열기
3. Remote 환경에서 AI 도구 활용법
Remote에서 특히 유용한 패턴들:
# 1. 프로젝트 Context 파일 준비
~/projects/service-interface-mock/
├── .ai-context/
│ ├── server-config.md # 서버 환경 정보
│ ├── deployment.md # 배포 관련 정보
│ └── remote-workflow.md # Remote 작업 가이드
└── ...
server-config.md 예시:
# 서버 환경 정보
## 서버 스펙
- Instance: AWS EC2 t3.xlarge
- OS: Ubuntu 22.04 LTS
- RAM: 16GB, CPU: 4 vCPU
## 설치된 도구들
- Node.js 20.x LTS
- Docker & Docker Compose
- Git 2.40+
- PM2 (프로세스 관리)
## 주요 경로
- 프로젝트: ~/projects/
- 로그: ~/logs/
- Config: ~/config/
## 네트워크 설정 - HTTP: 8080
- HTTPS: 8443
- DB: 5432 (PostgreSQL)
Native 환경 구성 실전
1. 로컬 개발환경 최적화
제가 쓰는 로컬 도구들:
# Homebrew로 설치한 핵심 도구들
brew install git node bun
brew install --cask cursor
brew install htop tree jq
# 글로벌 npm 패키지들
npm install -g typescript ts-node nodemon
npm install -g @astrojs/cli # 블로그용
2. Git Repository 구조화
모든 워크스페이스는 Git Repo 기반:
~/CodeWorkspace/
├── 🏢 company-projects/
│ ├── service-interface-mock/ # 메인 프로덕트
│ ├── client-demo-app/ # 클라이언트 데모
│ └── internal-tools/ # 내부 도구들
│
├── 📝 content-creation/
│ ├── jayleekr.github.io/ # 블로그
│ ├── cps-lectures/ # 강의 자료
│ └── tech-writing/ # 기술 글쓰기
│
├── 🧪 experiments/
│ ├── ai-experiments/ # AI 실험
│ ├── new-tech-trials/ # 새 기술 테스트
│ └── quick-prototypes/ # 빠른 프로토타입
│
└── ⚙️ dotfiles-and-configs/ ├── cursor-settings/ # Cursor 설정 ├── ai-context-templates/ # AI Context 템플릿 └── automation-scripts/ # 자동화 스크립트
3. Native에서 AI 활용 특화 팁
문서 작업시 폴더 구조:
jayleekr.github.io/
├── .ai-context/
│ ├── blog-style-guide.md # 블로그 톤 가이드
│ ├── content-templates.md # 컨텐츠 템플릿
│ └── seo-guidelines.md # SEO 가이드라인
├── src/content/blog/
└── ...
blog-style-guide.md 예시:
# 블로그 글쓰기 스타일 가이드
## 톤 앤 매너
- 친근하고 대화체적인 어조
- 이모티콘과 감탄사 자연스럽게 사용 (ㅋㅋ, ㅠㅠ 등)
- 경험 중심의 실용적 접근
- 솔직하고 진솔한 표현
## 구조
- 문제-원인-해결책의 구조적 접근
- 코드와 설명의 균형
- Before/After 비교 선호
## 독자층
- 실무 개발자
- AI 도구 활용에 관심 있는 사람들
- 생산성 향상을 원하는 엔지니어들
워크스페이스 전환 및 관리 팁
1. 빠른 전환을 위한 단축키 설정
macOS 기본 설정:
# Mission Control 설정
- Desktop 별로 Cursor 인스턴스 배치
- Ctrl + 1~8로 빠른 전환
- Cmd + Tab으로 앱 간 전환
# Cursor 내부에서
- Cmd + ` : 같은 앱의 윈도우간 전환
- Cmd + W : 탭 닫기
- Cmd + T : 새 탭
2. 컨텍스트 스위칭 최소화 전략
프로젝트별 독립성 유지:
# 각 워크스페이스마다
├── README.md # 프로젝트 개요
├── .ai-context/ # AI 컨텍스트 문서들
├── .cursor/ # Cursor 설정
├── docs/ # 프로젝트 문서
└── scripts/ # 자동화 스크립트
시작할 때 체크리스트:
- 어떤 프로젝트를 작업할 건지 명확히
- 해당 워크스페이스만 열기
- AI Context 문서 먼저 확인
- 오늘의 목표 명확히 설정
3. 메모리 관리 및 성능 최적화
MacBook 64GB RAM이지만 그래도…
메모리 사용량 모니터링:
# Activity Monitor로 확인
- Cursor Helper 프로세스들 주시
- 필요없는 Extension 비활성화
- 사용하지 않는 Remote 연결 종료
성능 최적화 팁:
- 무거운 작업은 Remote에서 (Docker 빌드 등)
- 가벼운 작업은 Native에서 (문서 작성 등)
- 주기적으로 사용하지 않는 워크스페이스 정리
자동화 스크립트로 효율성 극대화
1. 워크스페이스 빠른 시작 스크립트
start-workspace.sh:
#!/bin/bash
PROJECT_NAME=$1
if [ -z "$PROJECT_NAME" ]; then echo "사용법: ./start-workspace.sh <프로젝트명>" echo "예시: ./start-workspace.sh service-interface-mock" exit 1
fi
# 프로젝트 경로
PROJECT_PATH="~/CodeWorkspace/$PROJECT_NAME"
# 디렉토리 존재 확인
if [ ! -d "$PROJECT_PATH" ]; then echo "프로젝트가 존재하지 않습니다: $PROJECT_PATH" exit 1
fi
# Cursor로 프로젝트 열기
cursor "$PROJECT_PATH"
# AI Context 파일이 있다면 미리 준비
if [ -f "$PROJECT_PATH/.ai-context/project-config.md" ]; then echo "AI Context 준비됨: $PROJECT_NAME" # 필요하면 클립보드에 복사 # cat "$PROJECT_PATH/.ai-context/project-config.md" | pbcopy
fi
echo "워크스페이스 시작됨: $PROJECT_NAME"
2. Remote 서버 상태 체크 스크립트
check-servers.sh:
#!/bin/bash
SERVERS=("prod-server" "build-server" "test-server")
echo "🔍 서버 상태 체크 중..."
for server in "${SERVERS[@]}"; do echo -n "📡 $server: " if ssh -o ConnectTimeout=5 -o BatchMode=yes $server 'exit' 2>/dev/null; then echo "✅ 연결 가능" # 기본 상태 정보 echo " - $(ssh $server 'uptime | cut -d"," -f1')" echo " - $(ssh $server 'df -h / | tail -1 | awk "{print \"Disk: \" \$5 \" used\"}"')" else echo "❌ 연결 불가" fi
done
3. AI Context 업데이트 자동화
update-ai-context.sh:
#!/bin/bash
# 현재 작업 디렉토리 확인
if [ ! -d ".ai-context" ]; then echo "AI Context 디렉토리가 없습니다." exit 1
fi
# Git 상태 확인하여 current-tasks.md 업데이트
git status --porcelain > .ai-context/current-git-status.txt
# 최근 커밋 내용을 current-tasks.md에 추가
echo "## 최근 작업 ($(date '+%Y-%m-%d'))" >> .ai-context/current-tasks.md
git log --oneline -5 >> .ai-context/current-tasks.md
echo "" >> .ai-context/current-tasks.md
echo "AI Context 업데이트 완료"
실제 사용 패턴 분석
하루 워크플로우 예시
오전 (09:00-12:00):
1. 📧 check-servers.sh 실행으로 상태 체크
2. 🔴 Production Server 연결 → 긴급 이슈 체크
3. 💻 Native에서 블로그 포스팅 (지금 이 글 ㅋㅋ)
4. 🎓 강의 자료 업데이트
오후 (13:00-18:00):
1. 🟡 Build Server → CI/CD 파이프라인 개선
2. 🔵 Test Environment → 새 기능 테스트
3. 💻 Native → 실험적 프로토타입 작업
4. 📝 Documentation 업데이트
저녁 (19:00-22:00):
1. 🧪 실험용 프로젝트 (AI 관련)
2. 📋 Config 파일들 정리
3. 💻 개인 프로젝트 (블로그, 강의)
월간 워크스페이스 사용량 분석
Cursor 인스턴스 사용 빈도 (지난 한달):
1. 🔴 Production Code (60%) - 가장 많이 사용
2. 📝 Blog/Documentation (20%) - 꾸준히 사용 3. 🟡 Build Server (15%) - 필요할 때만
4. 🧪 실험용 (5%) - 주말이나 저녁에
인사이트:
- Remote SSH가 75%, Native가 25% 비율
- Production 관련 작업이 대부분
- 문서화 작업도 상당한 비중
마무리하며…
이렇게 5~8개의 워크스페이스를 동시에 관리하는 건 처음에는 정말 복잡했는데, 지금은 이게 없으면 일이 안 될 정도로 익숙해졌어요.
핵심은 각 워크스페이스의 독립성을 유지하면서도, 빠른 전환이 가능하도록 체계를 갖추는 것입니다.
다음 4편에서는 도구별 프롬프트 전략을 다뤄보겠습니다. Cursor Pro 고급 활용법, Claude Code 3시간 제한 극복법, Gemini CLI 문서화 자동화 등 실전 노하우를 공유할 예정입니다!
여러분은 워크스페이스를 어떻게 관리하고 계신가요? Remote vs Native 어떤 비율로 사용하시는지도 궁금해요!
이 시리즈의 다른 글들:
- 1편: AI 스택 소개와 전체 개요
- 2편: 공통 워크플로우 방법론
- 4편: 도구별 프롬프트 전략 (곧 공개)