베이스 업데이트 받기
라이선시 fork는 한 번 받고 끝이 아닙니다. 베이스(ddakit/book-studio)가 새 스킬을 추가하거나, 훅을 고치거나, AI_AUTOMATION.md의 4-Tier 규칙이나 게이트 카테고리를 갱신할 때마다 그 변경이 fork에 도달해야 라이선스 가치가 유지됩니다. /update-from-base는 git rebase 모르고도 안전하게 받게 해주는 자리입니다.
자동 적용 가능, 절대 안 건드림, 사람이 결정. 이 셋의 분기가 핵심입니다.
영역별 owner
섹션 제목: “영역별 owner”base-owned — 자동 갱신 대상
섹션 제목: “base-owned — 자동 갱신 대상”| 경로 | 무엇 |
|---|---|
.claude/skills/{base-skill-name}/ | 베이스 스킬 (start, book-orchestrator, 집필 스킬, ai-pattern-check, continuity-check 등) |
.claude/agents/*.md | 4 에이전트 (direction, planning, writing, quality) |
.claude/hooks/*.sh, .claude/settings.json | 베이스 훅과 등록 |
AI_AUTOMATION.md | 도메인 SSOT (4-Tier 정의, book_type 라우팅, 14 카테고리, S1~S8) |
.gitignore | 베이스 표준 (_workspace/ 제외 자리) |
베이스 스킬 본문은 직접 수정하지 않는 것이 원칙입니다. 자기 스킬을 추가하고 싶으면 별도 디렉토리에 만듭니다.
user-owned — 절대 안 건드림
섹션 제목: “user-owned — 절대 안 건드림”| 경로 | 무엇 |
|---|---|
_workspace/{book_slug}/, _workspace/books.json | 작성 중인 모든 책의 원고, 아웃라인, 진행 |
.env | API 키 (research, illustration 쓸 때) |
.claude/agent-memory/, .claude/state/, .claude/session-state/ | 메모리, 런타임, 세션 핸드오프 |
LICENSE, COMMERCIAL-LICENSE.md | 라이선스 |
작성 중인 책은 전부 user-owned라 업데이트가 원고를 건드리지 않습니다. 베이스가 갱신해도 챕터가 날아가지 않는 자리입니다.
mixed — 3-way 안내
섹션 제목: “mixed — 3-way 안내”CLAUDE.md, AGENTS.md, README.md 셋. 베이스와 사용자 양쪽 편집이 동시에 들어갈 수 있어 자동 갱신하지 않고 diff만 보여주고 묻습니다. README.md는 fork 사용자가 본인 책 정보로 덧댈 수 있는 자리라, 통째로 덮으면 사용자 메모가 사라집니다.
한 사이클
섹션 제목: “한 사이클”/update-from-base 또는 “베이스 업데이트 받아줘”라고 부르면 다음을 거칩니다.
git status --porcelain으로 dirty 검사. 저장 안 된 변경이 있으면git stash권유git fetch base maingit diff --name-status <last_synced_commit>..base/main로 변경 파일을 영역별 분류- base-owned 변경 요약. 새 스킬 N개, 갱신된 훅 M개,
AI_AUTOMATION.md갱신 여부 - 사용자 yes 시 base-owned 경로만 적용
- mixed 파일은 한 개씩 옵션 셋(통째 덮기, 3-way merge, 미루기) 중 골라 적용
- 적용 후 검증하고 commit 권유
사전 셋업으로 베이스를 git remote로 등록하는 자리는 첫 호출이 자동 안내합니다.
git remote add base https://github.com/ddakit/book-studio.git상태 파일은 .claude/state/base-upstream.json에 들어가고, last_synced_commit부터 base/main까지의 변경분만 봅니다.
베이스 스킬을 본인이 수정한 흔적이 있을 때
섹션 제목: “베이스 스킬을 본인이 수정한 흔적이 있을 때”.claude/skills/{base-skill}/ 안 파일을 사용자가 commit으로 수정한 적이 있으면(git log로 감지) 그 파일은 base-owned가 아니라 mixed로 처리됩니다. 자동 덮어쓰면 사용자 작업이 사라지기 때문입니다. 이걸 피하려면 베이스 스킬을 직접 고치지 말고, 같은 trigger 키워드를 가진 별도 스킬을 자기 디렉토리에 만듭니다.
인접 자리
섹션 제목: “인접 자리”비개발자 호흡으로 같은 절차를 따라가는 자리는 비개발자용 업데이트에 있습니다.