기술 기반 · 구성요소 ① · 골격(섀시) · 안을 뜯어보기

골격을 실제로
뜯어보면

“공통 골격”이라는 말은 추상적입니다. 그래서 standarda-template 저장소를 실제로 열어 무엇이 들어있는지 하나씩 확인했습니다. 결론부터 말하면, 이 골격은 돌아가는 웹 코드만 주는 게 아니라 그 위에서 개발하는 방식—AI 스킬·에이전트·품질 규칙·문서 컨벤션—까지 통째로 물려줍니다.

🧱 Django 앱 5종 · 즉시 동작 🧰 공통 유틸 28함수 · 10모듈 🤖 Claude 스킬 14 · 에이전트 13 · 훅 9 📖 CLAUDE.md ~970줄 컨벤션
5Django 앱 — 인증·프로필·이메일·SMS·프로젝트
28공통 유틸 함수 (10개 모듈)
14 · 13 · 9Claude 스킬 · 서브에이전트 · 품질 훅
~970줄CLAUDE.md — 살아있는 개발 컨벤션

* 수치는 저장소 standarda-template 를 직접 열람해 집계한 실제 값입니다(2026-09 기준). 골격은 계속 진화하므로 시점에 따라 늘어납니다.

The Core Insight

대부분의 “템플릿”은 절반만 준다

흔한 프로젝트 템플릿은 코드 뼈대(Layer 1)만 줍니다. standarda-template은 여기에 그 코드를 어떻게 개발·검증·문서화하는가(Layer 2)까지 담아, 두 겹을 함께 상속시킵니다.

🧱

Layer 1 — 웹 골격 (돌아가는 코드)

생성 즉시 회원가입·로그인·권한·에러 처리가 실제로 동작하는 Django 프로젝트. 사용자 모델, Google OAuth, 이메일·SMS 인증, 공통 유틸이 이미 짜여 있습니다.

🤖

Layer 2 — 개발 방식 골격 (일하는 법)

.claude/ 의 스킬·에이전트·훅, docs/ 컨벤션, ~970줄 CLAUDE.md. “어떻게 개발하는가”가 코드처럼 버전 관리되어 모든 프로젝트에 똑같이 복제됩니다.

“어떤 AX 프로젝트를 열어도 구조도, 개발하는 방식도 똑같다.”

새 FDE가 다른 프로젝트에 투입돼도 학습 비용이 거의 없고, 한 프로젝트에서 얻은 개선이 골격을 통해 전체로 퍼집니다. Layer 2가 이걸 가능하게 합니다.

Layer 1 · What Runs Day One

웹 골격 — 첫날부터 도는 것

새 프로젝트를 생성하는 순간, 아래가 이미 동작하는 상태로 시작합니다. FDE는 이 위에 고객 업무 로직만 얹습니다.

Django 앱 · 5종

어느 서비스에나 필요한 뼈대. 인증·권한이 검증된 코드로 이미 들어있습니다.

🔐

accounts

커스텀 User 모델(AbstractBaseUser 기반, license_key·플랜(free/pro/enterprise)·약관 동의 필드 내장) + 회원가입·로그인. 사용자별 Google OAuth 로그인 서비스(services/google_oauth.py)와 DRF API가 함께 옵니다.

👤

profiles

계정과 분리된 프로필 정보를 표준 구조로 관리. 인증 축(accounts)과 사용자 데이터 축을 나눠, 프로필 확장이 인증 로직을 건드리지 않습니다.

✉️

emails

이메일 인증 흐름 — 가입 확인·비밀번호 재설정 등. 발송을 배치로 돌리는 management command까지 포함해 즉시 연결됩니다.

📱

sms

SMS 본인 인증 — 휴대폰 확인이 필요한 서비스에 바로 붙습니다.

🗂️

projects

다수 대상·작업을 다루는 에이전트의 기준 데이터 구조. slug 자동 생성 등 반복되는 패턴이 시그널로 처리돼 있습니다.

🧪

+ settings 3분할 · DRF · PostgreSQL

settings를 base / local / production으로 나눠 환경별 분리. Django REST Framework·PostgreSQL·pytest e2e_tests/가 기본 배선입니다.

공통 유틸 · 28함수 / 10모듈 — utils/

앱은 아니지만 모든 코드가 공유하는 표준 도구함. 검증·권한·응답·에러를 매 프로젝트마다 다시 짜지 않습니다.

모듈담당함수
validator_utils.py입력·형식 검증 표준11
serializer_utils.pyDRF 시리얼라이저 공통 처리5
accounts_utils.py인증·사용자 관련 헬퍼4
permission_utils.py권한 판정 표준3
generator_utils.pyslug·고유키 등 생성기3
view_utils.py뷰 공통 로직2
response_utils.py · custom_exceptions.py · error_data.py응답 포맷·예외·에러코드 표준화체계

* 별도로 agent_utils/ 디렉토리가 에이전트/파이프라인 코드를 담는 격리 공간으로 준비돼 있어, LLM 워크플로우 코드가 웹 유틸과 섞이지 않습니다.

Layer 2 · How We Build

개발 방식 골격 — 골격에 딸려오는 “일하는 법”

여기가 흔한 템플릿과 갈리는 지점입니다. Django 코드만이 아니라, 그 코드를 만드는 방식 자체.claude/·docs/·CLAUDE.md에 담겨 함께 복제됩니다.

Claude Code 스킬 · 14종

아이디어 → 개발 → 검증 → 문서 → 배포까지, 반복 작업이 슬래시 커맨드로 표준화돼 있습니다.

⚙️

개발 파이프라인

/develop(스펙→구현→검증→문서→머지 자동화) · /dev(개발 서버·포트·dev 도메인 세팅) · /release(prod 박스 SSH 배포).

📝

문서 자동화 · 8종

/feature-doc·/structure-doc·/runbook·/client-usage-guide·/client-test-guide·/manual(화면 캡처 슬라이드)·/pdf-doc·/create-docx. 개발자·고객·운영자용 문서를 종류별 라우팅으로 생성.

🔄

골격 진화

/sync-from-template(골격→프로젝트) · /sync-to-template(프로젝트→골격 역류) · /update-skill-agent-list(스킬·에이전트 목록 자동 현행화).

전문 서브에이전트 · 13종

역할별 전문 에이전트가 개발을 분담합니다. 검증·파싱·테스트·머지·백로그·디버깅이 각각 담당자를 갖습니다.

검증 · 머지

spec-verifier(스펙↔구현 일치 검증) · output-verifier(실행 결과를 원본과 3중 대조) · merge-master(체크리스트 통과 후 머지+정리).

🧭

테스트 · 파싱

api-tester · ui-tester(Playwright) · pdf-parser · excel-parser — 입력 문서 해석과 화면·API 검증 전담.

🗂️

운영 · 문서 라우팅

backlog-manager · debug-server-log(로그 선독) · write-doc(문서 종류 라우터) · project-intro · llm-usage-doc · lesson-finder(위키 교훈 색인).

품질 가드(Hooks) · 9개

팀 규칙을 사람이 잊어도 도구가 강제합니다. 커밋·세션 경계에서 자동 실행돼 규율을 코드로 못 박습니다.

🛡️

커밋 규율

버그 수정 커밋엔 이슈 문서 필수(check-bugfix-issue-doc) · 기능 커밋엔 기능 문서(check-feature-doc) · except 블록엔 logger.exception 강제(check-except-logger).

🧷

일관성 강제

스킬 설명 누락 차단(check-skill-description) · 멀티라인 템플릿 주석 검사 · skill/agent 목록 자동 갱신(update-skill-agent-list).

🚦

안전 · 온보딩

cwd 의존 SSH 원격 명령 차단(check-ssh-remote-cwd) · 세션 시작 시 프로젝트 현황 브리핑(session-briefing).

문서 컨벤션 체계 — docs/ + CLAUDE.md

AI가 매 세션 이 규칙을 읽고 일관된 코드를 생성합니다. 문서가 곧 코드 생성의 가드레일입니다.

📁

docs/ 8분류

specs/(사전 스펙) · features/(기능) · plans/(계획) · issues/(버그 기록) · structures/(아키텍처 결정) · guides/(고객 가이드) · backlog/ · skill_agent_list/.

📖

CLAUDE.md · ~970줄

Code Patterns · Debugging Rules · Git Rules · Documentation 규칙 등, 살아있는 컨벤션이 한 파일에. 새 프로젝트가 이 규율을 통째로 상속합니다.

🧩

standarda-core 연동

PDF/Excel Vision·Google API·LLM 클라이언트 등 재사용 부품은 standarda-coregit 태그 고정(@v0.25.0)으로 설치 — 무단 전파 없이 버전으로 통제.

The Signature Flow

/develop — 표준화된 개발 한 사이클

Layer 2가 실제로 어떻게 하나의 흐름으로 이어지는지. 기능 추가 요청은 기본적으로 이 파이프라인을 탑니다.

STEP 1

스펙 작성

docs/specs/에 사전 스펙을 고정. 무엇을 만들지 먼저 못 박습니다.

STEP 2

격리 구현

worktree로 격리하고 세션 내 병렬화로 구현. 다른 작업과 충돌 없이.

STEP 3

스펙 검증

spec-verifier가 스펙↔구현 일치를 read-only로 대조·보고.

STEP 4

문서 자동

기능 문서(features/)·버그 문서(issues/)를 규칙대로 생성.

STEP 5

머지·정리

merge-master가 체크리스트 통과 후 master 머지 + worktree 정리.

“개발이 사람마다 다르지 않다 — 골격이 흐름을 규정한다.”

스펙 없이 구현하거나, 검증·문서를 건너뛰거나, 머지 규율을 어기는 일이 파이프라인 안에서 구조적으로 막힙니다. 그래서 누가 개발해도 결과물의 품질 하한선이 같습니다.

A Living Skeleton

골격은 매 프로젝트마다 똑똑해진다

정적인 시작 템플릿이 아니라, 개선이 양방향으로 흐르는 살아있는 골격입니다.

standarda-template (골격)모든 프로젝트의 공통 출발점
/sync-from-template — 골격의 개선을 기존 프로젝트로 반영
개별 AX 프로젝트고객 업무 로직을 얹어 개발 · 새 패턴·교훈 축적
/sync-to-template — 프로젝트의 좋은 패턴을 골격으로 역류
다음 프로젝트가 자동 상속한 곳의 개선이 전체의 기본값이 된다
How It Starts

새 프로젝트를 여는 흐름

Cookiecutter로 골격을 찍어내고, 셋업 스크립트와 /dev가 환경·포트·도메인·인증서까지 자동으로 준비합니다.

STEP 1

골격 생성

cookiecutter로 이름·DB·저장소를 입력하면 표준 구조가 통째로 생성됩니다. 생성 직후 hook이 SECRET_KEY·git·서버 host(ALLOWED_HOSTS)를 자동 주입.

STEP 2

환경 셋업

./setup.sh가 venv·의존성·.env·DB 생성·마이그레이션·superuser까지 잡습니다.

STEP 3

/dev 세팅

빈 포트 자동 할당 → dev 도메인 Apache vhost + Let's Encrypt 인증서 → 서버 백그라운드 기동.

STEP 4

개발 시작

인증·권한이 이미 도는 상태 + https://<slug>-dev.popupstudio.ai 외부 접속. 곧바로 고객 로직을 얹습니다.

Cookiecutter Django 4.2 · DRF PostgreSQL Custom User · Google OAuth 이메일 · SMS 인증 standarda-core @git태그 LangChain · LangGraph 1.0 Playwright E2E Claude 스킬 14종 서브에이전트 13종 품질 훅 9개 docs · CLAUDE.md 컨벤션
Explore More

기술 기반 둘러보기

← 개요만 먼저 보려면 standarda-template 골격 개요 페이지로.