본문 바로가기
개인프로젝트

(기록용)바이브코딩 동일한 결과를 내기위한 연구(cursor, claude)

by goodchuck 2026. 3. 2.
반응형

목차

     시작하게 된 계기

    내가 지금 다니고 있는 회사는 SI로써 다양한 도메인을 이용한 프로젝트를 만들게된다 그러다보니 유틸들도 많이 만들게되는데 이게 각 프로젝트마다 다르다보니 같은 질문을하더라도 다른 결과를 내는 경우가 있는데 cursor와 claude를 번갈아가면서 쓰다보니 서로 다른 결과를 뽑는 경우도 있엇다. 그 부분을 해결하고자 하였다.

     

     

     .claude, .cursor를 활용하자

    https://code.claude.com/docs/en/memory#organize-rules-with-claude%2Frules%2F

     

    How Claude remembers your project - Claude Code Docs

    Give Claude persistent instructions with CLAUDE.md files, and let Claude accumulate learnings automatically with auto memory.

    code.claude.com

    https://cursor.com/ko/docs/context/rules

     

    Rules | Cursor Docs

    Configure persistent instructions with Project, Team, and User Rules, plus AGENTS.md. Learn best practices for effective coding guidelines.

    cursor.com

     

    커서와 클로드에게는 rules이라는 규칙을 정의해줄 수 있다.

     

    각 프로젝트 루트에 .claude, .cursor를 두고 rules폴더를 두고 사용할수 있단 얘기다.

    그러면 난 이 각 rules에 같은 규칙을 세워주는 파일을 넣으면 되지않을까 라고 생각을 하였다.

     

    .claude/rules 규칙

    claude의 경우 md파일만 있으면된다. 

    아래와 같이 description으로 설명을 적고 paths를 통해 적용할 파일들을 넣어주면된다.

    ---
    description: "파일 및 변수 네이밍 컨벤션"
    paths:
      - "**/*.ts"
      - "**/*.tsx"
      - "**/*.js"
      - "**/*.jsx"
    ---

    # Naming Convention

    ## 파일 네이밍

    ### 기본 규칙

    **모든 파일/폴더는 `kebab-case` 사용**

    ```
    ✅ good
    user-profile/
    use-user-data/
    button-group.tsx
    user-card.tsx
    login-form.tsx

    ❌ bad

     

    .cursor/rules 규칙

    cursor의 경우는 .mdc 확장자를 사용하며 description, globs, alwaysApply를 사용한다직관적인 이름으로 globs는 claude의 paths와 같은역할이고 alwaysApply는 ai에게 적용여부를 하는것으로 보인다

    ---
    description: 파일 및 변수 네이밍 컨벤션
    globs: "**/*.ts,**/*.tsx,**/*.js,**/*.jsx"
    alwaysApply: false
    ---

    # Naming Convention

    ## 파일 네이밍

    ### 기본 규칙

    **모든 파일/폴더는 `kebab-case` 사용**

    ```
    ✅ good
    user-profile/
    use-user-data/
    button-group.tsx
    user-card.tsx
    login-form.tsx

     

     그럼 어떻게 관리를 하는가?

    내가 시도했던 방법은 다음과 같다.위 규칙을 보면은 결국 내용물은 같지만 위의 선언과 확장자만 다르다는것을 알게되었는데그러면 이 규칙들을 통합적으로관리하는 rules .md파일로 관리하고 명령어를통해서 각 .claude와 .cursor용으로만 만들면 되지 않을까 싶어 해당부분을 스크립트로 작성하였다. 아래 사진은 각 cursor와 claude로 만드는 명령어의 일부를 가져왔다.

     

     npm으로 배포하여 글로벌하게 사용하다.

    해당부분 연구는 한번에 되지않기때문에 각 프로젝트마다 사용할수 있게 해당 스크립트를 npm으로 배포하고 가져와서 사용하고있다. 현재 내가 다니고있는 회사의 유틸에다가 넣어서 배포를 한 상태이다.

    https://www.npmjs.com/package/@blastlabs/utils

     

    아래 사진은 npx로 사용할수있게 명령어를 등록한 예시를 넣어두었는데

    사용방법은 다음과같다

    npm i -g @blastlabs/utils 

    위 명령어로 글로벌하게 설치를 한후 사용하고자하는 프로젝트에 가서

    npx blastlabs-init-ai-rules --all을 사용해서 설치하면된다참고로 설치한 경로에서 설치를해주기때문에 이미 폴더가있다면 한번 지워줘야한다(실수로 덮는걸 방지)

     마치며

    아직 테스트를 하고있고 현재기준 사실 cursor는 잘 사용하지않고 claude와 z.ai를 위주로 사용하고있다.

    그래서 앞으로는 claude 위주로 rules를 수정할꺼긴한데 스크립트를 통해서 한번에 관리하고 claude, cursor로 뿌리는개념이기때문에 계속 같이 업데이트는 가능할 것으로 보인다.

    또 추가적인게생겨도 한번에관리하는 rule파일이랑 규칙만 정해주면되기때문에 크게 구조가바뀐게 존재하지않는이상 계속 사용할 것으로 보인다

    반응형