한 줄 요약
운영팀은 사이트에서 검색하고, 없으면 문의를 남김. git·pull·push·Claude는 관리자 쪽에서만 돎.
사람별 역할
| 사람 | 하는 일 | 쓰는 도구 | git |
|---|
| 운영팀 | 검색해서 매뉴얼대로 처리. 없으면 “새 문의 남기기” | 브라우저(위키 사이트) | 없음 |
| 관리자(개발자) | 수신함 정리, 페이지 검토, 규칙 관리 | Obsidian, Claude Code | 자동(Obsidian Git) |
흐름
[운영팀] [관리자]
사이트 접속 → Google 로그인
├ 검색 → 증상 페이지 → 그대로 처리
└ 없으면 "새 문의 남기기" 폼 제출 ──▶ 수신함/에 파일로 저장(자동 커밋)
│
Claude Code /ingest
(분류·정리·별칭·링크·마스킹) → 커밋 → push
│
GitHub private repo
├ GitHub Actions lint (깨진 링크·frontmatter·민감정보. 실패해도 배포는 막지 않음)
│
Cloudflare Pages 자동 빌드 (1~2분)
│
사이트에 새 페이지 반영 ◀───────────────────────┘
(브라우저 새로고침이 곧 pull)
- pull이 필요 없는 이유. 사이트는 push될 때마다 자동으로 다시 빌드됨. 운영팀은 항상 최신본을 보고 있음.
- push가 필요 없는 이유. 운영팀이 쓰는 건 “새 문의 남기기” 폼 하나뿐이고, 그 폼이
수신함/에 파일을 넣는 커밋을 대신 함. 정리와 push는 관리자의 Claude Code가 함.
- 운영팀용 AI 답변은 없음. AI(Claude Code)는 관리자 쪽에서만 돎. 그래서 결제도, claude.ai 이동도 없음. 답변 품질은 “검색이 답이 되게 쓰는 규칙”(CLAUDE.md)이 책임짐.
- 관리자는
/query로 질문 가능. 위키 전체를 근거로 답하고 근거 페이지를 표시함. 위키에 없으면 “없음”이라고 답함. 처리 끝난 원본은 raw/에 남아 있어 근거 확인 가능.
관리자 루틴
- 문의가 쌓이면(또는 매일 한 번) 볼트 폴더에서
claude → /ingest
- 결과의
[!warning] 확인 필요 항목만 확인해서 고침
/lint → FAQ·index 자동 갱신, 깨진 링크·고아 페이지 확인 → Obsidian Git이 push
- GitHub 저장소 Actions 탭에서 lint가 초록불인지 확인. 빨간불이면 로그의 깨진 링크·frontmatter·민감정보 항목을 고치고 다시 push
- 사이트에서 검색되는지 한 번 확인
- 종합 질문은
/query 질문 내용 (예: /query 코콤 단지에서 승강기 호출 안 되면 어디부터 봐야 해)
구성 요소와 비용
| 구성 | 도구 | 비용 |
|---|
| 저장소 | GitHub private repo | 0 |
| 사이트·로그인 | Cloudflare Pages + Access(Google 로그인) | 0 |
| 문의 폼 | Cloudflare Function 1개 (또는 GitHub Issue 템플릿) | 0 |
| 정리·린트 | 관리자 Claude Code (Max 구독) | 0 추가 |
| 종합 질문 | 관리자가 Claude Code에서 직접 | 0 추가 |
관련