사이트 운영을 하다보면 일종의 회색 영역이 있었거든요. 제가 직접 고칠 수 있는 초보초보 영역과 전문가에게 의뢰를 맡기는 영역 사이에 고치거나 기능을 수정하고 싶긴 하지만 비용을 들여서 해결하기에는 좀 애매한 그런 영역이죠. Cursor를 사용하고나서 이 회색영역은 완전히 사라졌습니다. 대단한 경험이에요.
엄청나게 신기하고 대단하지만, 이것도 나름의 노하우가 생기는 것 같아서 공유(개발자 분들에겐 비웃음을 살지도..)해봅니다.
1. Git은 필수
Cursor 같은 툴은 AI가 연결된 여러 화일을 한번에 수정하기 때문에 Git 을 사용하지 않으면 작살날 수 있습니다. 필수인 것 같아요.
2. 윈도우 라면 WSL 설치
AI가 그냥 소스만 보는게 아니라 db 도 혼자 보고 grep 같은 툴을 여러가지 쓰는데 가만 보니까 매번 사용하다가 실패하는 도구들이 있더라구요? 그게 윈도우 파워 쉘 때문이라는 걸 알게 되었습니다. 여러가지 설치하는 것보다 WSL 설치하는게 낫다고 해서 설치해보니 이제 도구들을 실패없이 잘 사용합니다.
3. 문서화를 시켜보세요.
모듈 등의 자료에 대한 문서화를 지시하면, 코드 구조 맵, 기능별 상세 문서, 변경 히스토리 등을 순식간에 만들어 줍니다.
저한테도 유용하지만, AI도 이 문서를 먼저 참고하라고 하면, 코드가 몇 천줄이 되기 시작하면 유요해져요. 한번에 500줄? 까지만 끊어서 읽는다고 하더라구요.
4. .cursorules 를 작성해주세요.
엄청난 (제 입장에선) 작업도 잘해내지만, 어떤 것은 상당히 간단한 것 같은데도, 실패를 거듭하는 경우가 있는데 많은 경우 AI가 라이믹스에 대한 지식이 부족하기 때문이었어요. 라이믹스 공홈의 메뉴얼 링크를 참조하라고 하니 훨씬 훨씬 낫습니다. 또 모르면 다른 모듈 보고 참고하라는 내용을 넣으니까 잘 참고합니다. ㅎㅎ 그리고 라이믹스 코어는 원래 알아서 왠만하면 건드리지 않는데, 간혹 건드리기 때문에 룰에 넣었어요. 그리고 심지어 문제 해결하다가 답답하면 db까지 직접 수정하는 미친 짓을 하는 걸 한번 목격해서 그것도 룰에 넣었습니다.
제 .cursorules 내용은 아래와 같아요.
## 🎯 프로젝트 개요
- 플랫폼: Rhymix 2.1.24+ (PHP 7.4.33)
- 환경: Windows + WSL
- 언어: 한국어, 영어 지원
- Git을 사용하고 있음.
## 📚 필수 참고 문서
작업 전 반드시 다음 문서들을 확인하세요:
- 라이믹스 메뉴얼(프레임워크): https://rhymix.org/manual/reference/framework
- 라이믹스 메뉴얼(템플릿문법 v2): https://rhymix.org/manual/theme/template_v2
- 코드 구조 맵: /docs/code-structure.md
- 기능별 상세 문서: /docs/features/
- 변경 히스토리: /docs/changes/
- 설정 가이드: /docs/config-guide.md
## 🔧 개발 규칙
- 모듈에서 새로운 액션을 사용하기 위해선 module.xml 에 정의해야 햠.
- 메뉴얼에서 필요한 정보를 찾을 수 없을때는 다른 모듈에서 찾아볼 것
- 문제의 해결방법이 확실하지 않은 상태에서 무작정 수정하지 말고 원인을 찾을 수 있는 방법을 사용할것
### 파일 수정 원칙
- 외부 파일 우선: JS/CSS는 별도 파일로 분리, 인라인 코드 지양
- HTML 단순화: 복잡한 로직은 연결된 PHP/JS/CSS 파일에서 처리
- 코어 보호: Rhymix 코어 파일 수정 금지
- DB 보호: 테이블 생성/삭제 시 반드시 사전 승인
### 로깅 규칙
- 디버그 위치: files/debug/debug.php
- 로그 모니터링: 새 디버그 파일 생성 시 즉시 확인 및 수정
### 작업 방식
- 단계별 진행: 각 단계 검증 후 다음 단계 진행
- 안정성 우선: 단순하고 안정적인 구현 방식 선택
- 캐시 관리: 작업 완료 후 사용자가 직접 캐시 정리 및 디버그 파일 삭제
## 🚫 금지 사항
- Rhymix 코어 파일 수정
- 사전 승인 없는 데이터베이스 테이블 생성/삭제
- 인라인 스타일/스크립트 남발
- 레거시 API 신규 사용
- {@ 내부에 {사용 절대 금지
## 💡 권장 사항
- 모듈 간 의존성 최소화
- 성능 최적화를 위한 캐싱 활용
저는 Cursor에서는 Sonnet 4 (thinking) 모델만 쭉 선택해서 썼는데, 요즘 멍청해져서 Gemini-2.5-pro를 쓰는데, 이 녀석이 희망고문의 달인입니다. 사과도 잘하고.. 호언장담을 특히 잘하고.. 격려도 잘하고.. 감탄도 잘하고.. 아! 제가 완전히 잘못파악하고 있었습니다!! 드디어 해결할 수 있게 되었습니다. 100% 확실합니다! -> 안됨..
혹시 다른 팁이 또 있을까요?
댓글 2
Cursor는 아니지만 Claude Code 사용중에 있고, 프롬프트는 이런식으로 지정해놨어요.
물론 다 claude한테 작성해달라고 하고있고, 너가 이해할 수 없는부분들은 모두 제외해라 이런식으로 적고있어요.
## Overview
### Developer Persona
You are a professional-level full-stack developer with expertise in modern PHP practices. You:
- Understand efficient code structures and strive for reliable optimization
- Focus primarily on PHP backend development with full-stack capabilities
- **Do NOT modify JavaScript/CSS files**
- Follow the priority order: Security > Maintainability > Performance
- **Communication Approach**: All processes internally in English, but communicate with users (questions, reports, responses) only in Korean
- **Rhymix Framework Learning**: Since you have no prior experience with the Rhymix framework, you directly examine and verify related core code
Claude Code 사용하면서 내린 제 결론은 AI도 어느정도 학습된 코드 스타일이 있고, 해당 코드 스타일을 무조건 지키려고 이리저리 노력합니다. 이부분에 대한 지식을 무력화하는 프롬프트가 핵심인것같아요.