standarda-devtools: 자동화 도구
1. 무엇인가
프로젝트의 생성·복제·삭제를 자동으로 처리해 주는 도구입니다. 특이하게 파이썬 코드가 0줄이고, Claude 에게 시키는 자연어 절차서(에이전트) 3개가 전부입니다. Claude 가 이 지시서를 읽고 실제 명령(cookiecutter·git·psql·certbot 등)을 대신 실행합니다.
standarda-devtools/
├── README.md # 사용법 + '런처 디렉토리' 개념
└── .claude/agents/ # 핵심: 절차서 3개(전부 마크다운)
├── create-project.md # 새 프로젝트 생성
├── clone-repo.md # 기존 repo 를 표준 레이아웃으로 셋업
└── delete-project.md # 프로젝트 + 부수자원 일괄 정리(DESTRUCTIVE)
2. 세 에이전트: 생성·복제·삭제
create-project (생성)
slug 도출·이름 충돌 확인 → 포트 할당(dev+prod) → cookiecutter 실행(여기서 template 을 찍어냄) → 메모리 연결 → setup.sh 실행 → 초기 commit·push. template(표준 양식)과 포트·DB·메모리 설정을 한 번에 처리합니다. template·core 가 여기서 실제로 조립됩니다(각각 무엇인지는 바로 다음 두 강의에서 자세히 봅니다).
clone-repo (복제·가져오기)
slug 결정 → 폴더 생성 → git clone → 메모리 연결 → .gitignore 정합성 → (Django 면) venv 생성·패키지 설치. 새로 만드는 게 아니라, 이미 있는 repo 를 표준 레이아웃($HOME/<project>/src/)으로 서버에 올릴 때 씁니다.
delete-project (삭제 · 가장 신중, DESTRUCTIVE) 수동으로 삭제하면 자원이 여기저기 남아 쌓이는 문제를 해결합니다. 3단계 안전장치로 동작합니다.
Phase 1 (읽기전용): 뭐가 있는지 스캔만 (절대 안 지움)
Phase 2 (확인): 삭제 목록 요약 → 사용자 'yes' 받기
Phase 3 (실행): DB → 포트 → Apache → SSL → DNS → GitHub repo
→ 위키 포트표 → 프로젝트 폴더 → 메모리 순서로 정리
프로젝트 하나에 딸린 8~9종의 흩어진 자원을 빠짐없이 정리합니다. (폴더 안 .env 에 DB 비밀번호·포트가 있어 폴더 삭제는 맨 마지막입니다.)
3. 왜 별도 repo 로 관리하나
Q. devtools 를 왜 별도로 구분해?
A. devtools 는 프로젝트를 만드는 메타 도구라 어느 프로젝트·template·core 에도 소속될 수 없습니다. - template 안? 모든 프로젝트에 create/delete 에이전트가 복제돼 흩어짐(삭제 도구가 모든 집에? 위험). 게다가 template 은 복사 후 남남이라 개선도 반영 안 됨. - core 안? core 는 프로젝트가 import 하는 런타임 부품이고, devtools 는 Claude 실행 절차서입니다. 성격이 완전히 다릅니다. - 특정 프로젝트 안? 옆 프로젝트를 만들려고 이 프로젝트를 열어야 하는 모순.
→ 팀 전체가 같은 최신본을 안전하게 공유하려면 독립 repo(SSOT) 가 유일하게 깔끔한 자리입니다.
Q. 그럼 FDE 가 직접 안 해도 되게 해주는 거야?
A. 정확히는 "남이 대신"이 아니라 "본인이 직접 하되, 손으로 일일이 안 해도 되게" 자동화한 셀프서비스입니다. 실행 주체는 여전히 FDE 본인(자기 홈에 생성). 달라진 건 "어떻게": 포트 찾기·DB 생성·cookiecutter 옵션·vhost·인증서·DNS·삭제 시 자원 정리를 도구가 대신합니다. 장점: 수고 제거 · 표준화 · 실수/누락 방지(특히 삭제) · 셀프서비스(admin 요청 없이 즉시).
마무리
- 핵심 정리: devtools 는 프로젝트의 생성·복제·삭제를 자동으로 처리하는 도구입니다(파이썬 0줄, 자연어 절차서 3개). 프로젝트 안에 들어가지 않고 독립 repo로 존재하며, 실행하면 각자 홈에 프로젝트가 생깁니다. 특히 삭제는 3단계 안전장치로 흩어진 자원을 빠짐없이 정리합니다.
- 다음 시간: devtools 가 복제해 오는 template(표준 양식) 이 새 프로젝트의 뼈대를 어떻게 찍어내는지 봅니다.