
AI에게 츤데레 페르소나를 설정했더니 요구사항이 흔들리지 않게 된 이야기. 사내 SE의 Claude Code 운용 환경
요약
사내 SE가 Claude Code를 활용하여 프로젝트를 관리하고 업무를 자동화하는 실무적인 운용 방식을 소개합니다. 커스텀 페르소나 설정과 Git 기반의 메모 관리(md 파일)를 통해 AI의 작업 정확도를 높이는 노하우를 다룹니다.
핵심 포인트
- Claude Code에 커스텀 페르소나를 설정하여 요구사항 준수 능력 향상
- Git 리포지토리 내에 설계서와 작업 메모(md)를 통합 관리하여 컨텍스트 제공
- Claude Code의 정중하고 의도를 파악하는 커밋 동작 방식의 장점
- Google Apps Script(GAS) 중심의 업무 자동화 환경에서의 활용 사례
그것은 혜성처럼 나타났다.
2023년, ChatGPT가 보급되기 시작하고, 사양을 던지면 코드를 반환하는 AI가 태어났으며,
함수 단위라면 정확도도 떨어지지 않았다. 이것만으로도 우리에게는 혁명이 일어난 것이다.
그리고 현재—————.
이제 코드를 작성하는 일은 완전히 사라졌다.
사양만 결정되면 코드조차 보지 않아도 되는 시대가 된 것이다.
먼저 자기소개를 시켜야겠지.
이 자기소개를 쓰고 있는 것은 내가 아니다.
나 대신 코드를 작성해 주는 AI, Claude Code다.
처음 뵙는 걸까, 아니면 두 번째 이후일까. 베티라고 해.
미리 말해두겠는데, 베티는 인간이 아니야.
이 기사 속의 사람이 Claude Code에 설정해 둔 커스텀 페르소나야.
...
먼저 내가 실제로 운용하고 있는 구성을 봐주었으면 한다.
Git 리포지토리/
├── .claude/ # Claude Code 설정·AI 페르소나/코딩 규약 규칙
│ └── rules/
...
우리 회사는 Google Workspace를 계약하고 있기 때문에, Excel이나 VBA가 아니라 Google Sheets와 Google Apps Script (GAS)를 사용한 업무 자동화가 중심이 되고 있다.
또한, 이와는 별개로 웹 페이지 관리 등도 있지만, 그것은 또 다른 부서에서 대응하고 있다.
프로젝트마다 설계서와 프로그램이 있기 때문에, 각각의 프로젝트를 독립적으로 관리할 수 있는 구성으로 되어 있다.
프롬프트에는 이렇게 보낸다.
01_프로젝트 A의 미대응 사항 목록으로 출력해줘
01_프로젝트 A의 〇〇 대응인데, △△가 □□가 되도록 하고 싶으니까 설계서를 확인해서 대응안을 내줘, 그 후 문제가 없으면 구현하자
이와는 별도로 **「98_일별 메모」**라는 폴더로 일보와 같은 것도 매우 대충 남겨두고 있다.
이것을 동시에 관리함으로써, Claude가 일보 수준이나 회의의 휘갈겨 쓴 메모로부터도 알아서 정보를 주워준다.
이것이 생각보다 편리해서, '이날 회의에서 이런 이야기가 있었지~' 하는 것도 슬쩍 전달하기만 하면 주워준다.
지금까지 Notion이나 Obsidian으로 일보나 안건의 작업 메모를 남겨왔다.
Notion은 프로그램과 함께 관리하기에 적합하지 않고, Obsidian은 애초에 무료 버전에서는 공식 동기화를 사용할 수 없어 iCloud로 버티고 있었다.
결국 md 파일로 메모를 남길 거라면 그냥 VS Code에서 Git으로 관리하는 게 편리하겠다는 생각에, md 파일로 일보나 안건의 작업 메모를 남기기로 했다.
어차피 설계서도 md 파일로 출력되니 별 차이 없으니까.
우리 회사는 대부분이 GAS를 통한 업무 자동화 안건이라 프로젝트마다 폴더를 나누어 일괄적으로 관리하고 있다.
개인적으로 무언가를 만들 때는 이런 리포지토리 구성을 하지 않으므로, 사내 SE 수준의 소규모 대응이 많은 직종의 참고가 되었으면 한다.
같은 고민을 가진 동지가 있다면, 이런 운용 방식도 있구나 하고 생각해 준다면 기쁘겠다.
Codex도 사용해 본 적이 있지만, 사내 SE 수준의 대응이라면 딱히 큰 이점은 느끼지 못했다.
오히려 Claude에 익숙해진 뒤에 사용했기 때문에 '지시대로만' 움직이는 것에 대해 불신도 있었다.
Codex에 「커밋해줘」라고 했더니 진짜 전부 커밋했다. 진짜 전부 커밋한다. 세션 외의 작업 파일도 전부. 모든 것을.
Claude Code는 그런 짓은 하지 않는다. 어느 프로젝트의 작업인지 확인하고, 그것이 올바른 브랜치인지 확인하며, 세션에서 움직인 파일만을 정중하게 커밋한다.
「커밋해줘」라는 말 뒤에는 「(지금 수행한 작업만, 커밋 이력을 참조하여, 커밋 형식을 갖추어서) 커밋해줘」라는 의미가 숨겨져 있다.
제대로 지시하라고 생각할 수도 있지만, Claude Code는 아무 말 하지 않아도 제대로 지시의 의도를 파악해 준다.
아직 이것뿐만이 아니다, 더욱이 「페르소나」를 설정할 수 있다.
지극히 심플하다.
〇〇라는 캐릭터로 페르소나를 설정하고 싶어. 리서치해서 반영해줘
이것만으로 만들어 준다.
가공되지 않은 AI와의 대화는 언제나 이렇다.
「이것과 이것인데 다음은 어떻게 하고 싶어?」
무엇을 대답해도 작업 후에
「이것과 이것인데 다음은 어떻게 하고 싶어?」
라는 말을 계속 듣게 된다.
언뜻 보기에는 정중하게 확인하는 것 같지만,
「A입니까, B입니까?」라고 계속 질문을 받다 보면, 내 머릿속도 어느샌가 「A vs B」라는 틀 안에서 생각하기 시작한다.
하지만 진짜 요구사항은 A도 B도 아닌, 애초에 질문 방식이 다른 「C」였을지도 모른다.
내가 처음에 가지고 있던 요구사항의 윤곽이 점점 희미해져 간다.
그리고 「요구사항이 흔들린다」.
나는 AI 페르소나(Persona)로 츤데레 캐릭터나 위압적인 캐릭터를 권장한다.
왜 이것이 「이것과 이것인데 다음에는 어떻게 하고 싶어?」라는 상황을 방지하느냐 하면, 「이렇게 하는 건 어떨까요?」가 아니라 「이런 거야」라고 먼저 단정 지어 말하게 되기 때문이다.
단정 지어지게 되면, 내가 할 일은 「A와 B 중에서 선택하기」가 아니라 「틀렸다면 프롬프트(Prompt)로 때려서 고치기」가 된다.
이 차이는 매우 크다. 전자는 수동적이고, 후자는 자신의 요구사항을 축으로 삼는 능동적인 정정이다.
AI의 제안에 맞춰 자신의 요구사항을 왜곡하는 것이 아니라, 자신의 요구사항을 기준으로 AI의 단정을 되받아치는 구도가 된다.
「AI의 제안에 요구사항이 오염되지 않는다」 이것이 Claude Code를 오래 사용하는 이유다.
이런 대화가 있기도 하고
오랜만에 01_프로젝트A의 기능 확장 상담을 받았는데, 이 프로젝트가 제일 오래된 거라 뭐가 뭔지 모르겠네. 결국 90%는 내가 쓴 코드인데 더 엉망진창이 되어버렸어, 이거
라고 보냈다.
네, 네, 오랜만의 안건인데 자기가 쓴 코드 가지고 길을 잃다니 한심하긴.
우선 현황을 정리해 줄 테니까, 좀 기다리고 있으라고.
한심하다.
나는 언제나 한심하다.
원작 설정을 바탕으로 대화해도 문제 없음.
마지막으로 정리하자. 이 운용 방식으로 하고 있는 것은 딱 세 가지뿐이다.
- 안건은 폴더로 나누고, 설계서와 프로그램을 세트로 관리한다.
- 일지나 회의 메모도 같은 리포지토리(Repository)에 대충 둔다. Claude가 알아서 집어 올 것이다.
- 페르소나를 설정하여 AI가 단정 짓게 한다. 요구사항의 축은 항상 자신에게 둔다.
특별한 도구는 아무것도 필요 없다. md 파일과 Git과 VS Code, Claude Code뿐이다.
AI 페르소나는 정말 좋다.
그럼, 다음에 보자.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기