instruction.md
# Korean Privacy & Terms (thin wrapper)
## What this skill does
[`kimlawtech/korean-privacy-terms`](https://github.com/kimlawtech/korean-privacy-terms) (Apache-2.0) 업스트림을 사용해 한국 법령 기반 **개인정보처리방침·이용약관·쿠키 배너·회원가입 동의 모달** 생성을 수행한다. k-skill 측은 **얇은 wrapper** 만 유지하고, 실제 인터뷰/렌더/설치 로직은 업스트림에 위임한다.
반영 기준은 업스트림이 관리한다:
- 개인정보위원회 처리방침 작성지침 (2025.4.21)
- 개정 개인정보보호법 (2026.3 공포, 2026.9.11 시행, 과징금 매출액 최대 10%)
- 공정거래위원회 전자상거래 표준약관 제10023호
- EU GDPR / ePrivacy (업스트림 v2.0+ 지원)
이 스킬이 생성하는 모든 문서는 **참고용 초안**이며 **법률 자문이 아니다**. 실서비스 배포 전 반드시 **변호사 검토**가 필요하다.
## When to use
- "개인정보처리방침 만들어줘"
- "이용약관 추가해줘"
- "쿠키 배너 붙여줘"
- "회원가입 동의 모달 필요해"
- "행태정보 고지 추가해줘"
- "개인정보 동의 UI 깎아줘"
## When not to use
- 실제 법률 자문 · 소송 전략 · 개별 약관 분쟁 판단이 필요한 경우 → 변호사 상담
- 한국/EU 외 관할(미국 CCPA · 일본 APPI · 중국 PIPL 등) 을 단독으로 다뤄야 하는 경우 (업스트림 로드맵)
- Next.js App Router 가 아닌 환경 (업스트림이 Pages Router 미지원)
## Prerequisites
- 인터넷 연결 (업스트림 clone 용)
- `git` 2.20+
- `bash`
- 대상 프로젝트가 Next.js 13 ~ 16 App Router 기반일 것 (업스트림 제약)
## Install (dual-install)
업스트림을 `~/.claude/skills/korean-privacy-terms/upstream/` 와 `~/.agents/skills/korean-privacy-terms/upstream/` 양쪽에 pinned SHA 로 체크아웃한다. 레포 내부에 업스트림 payload 를 커밋하지 않으므로 실사용 전 반드시 이 단계를 거친다.
```bash
npx -y @nomadamas/k-skill@0 exec korean-privacy-terms scripts/install.sh --
```
레포를 로컬에 clone 하지 않고 이미 홈 디렉토리 스킬 번들만 가진 상태에서도 설치할 수 있다 (installer 는 `${BASH_SOURCE[0]}` 로 절대경로를 해석하므로 cwd 에 구애받지 않는다):
```bash
bash ~/.claude/skills/korean-privacy-terms/scripts/install.sh
# 또는
bash ~/.agents/skills/korean-privacy-terms/scripts/install.sh
```
스크립트는 `korean-privacy-terms/scripts/upstream.pin` 에 기록된 40자리 커밋 SHA 만 체크아웃한다. 두 경로 모두에서 `git -C <path> rev-parse HEAD` 가 pin 과 동일해야 설치 성공.
오프라인 환경이나 네트워크 차단 상황에서는 업스트림 clone 이 실패하므로 이 스킬의 생성 흐름을 실행할 수 없다. 스크립트가 명시적인 실패 메시지를 남기고 비정상 종료한다.
## Mandatory interview first
사용자가 "개인정보처리방침 만들어줘" 같은 생성 요청을 하면 **바로 파일을 만들지 말고 먼저 되묻는다.** 업스트림 `scripts/interview.md` Step 0 ~ 9 의 인터뷰 프로토콜을 따라 순차로 질문하되, 최소한 아래 항목을 확인한 뒤 생성 단계로 넘어간다.
권장 첫 질문 묶음:
- 대상 사용자 범위 (한국 사용자만 / 해외 위주 / 양쪽 글로벌) — 관할법 결정
- 운영 주체 소재지 (한국 / 해외)
- 서비스 유형 (SaaS / 쇼핑몰 / 커뮤니티 / 블로그 / 핀테크 / AI 서비스)
- Next.js 버전 (13 ~ 16), App Router 사용 여부, 언어 (`.ts` / `.tsx` / `.js` / `.jsx`)
- Tailwind 버전 (v3 / v4), 번들러 (Turbopack / Webpack)
- shadcn/ui 기설치 여부, 기존 디자인 시스템 (Tailwind 순정 / Chakra / MUI / Mantine 등)
- 출력 언어 (한국어만 / 영문만 / 한영 병기)
- 14세 미만 대상 여부
- 자동화된 결정(AI) · 행태정보(쿠키) · 맞춤형 광고 처리 여부
- 개인정보 보호책임자(CPO) 정보, 사업자 상호·대표자·주소 (사용자가 알려줘야 함)
인터뷰는 특정 에이전트의 전용 UI 컴포넌트 호출(질문 위젯 등) 에 의존하지 않는 agent-neutral 톤으로, 한 번에 1 ~ 2문항씩 진행한다. 법률 공포감(과태료 폭탄 등)을 유발하는 표현은 피하고, "법적으로 필요한 부분이에요" 정도의 담담한 톤을 유지한다. 모르는 항목은 "넘어가도 됩니다" 로 열어 둔다.
## Workflow
1. 사용자가 트리거 문구를 말하면 먼저 위 인터뷰 게이트를 실행한다.
2. `npx -y @nomadamas/k-skill@0 exec korean-privacy-terms scripts/install.sh --` 로 업스트림을 dual-install 한다 (이미 설치돼 있으면 pin 확인만 한다).
3. 업스트림이 제공하는 순서를 따른다: `scripts/interview.md` → `scripts/render.md` → `scripts/install.md`.
4. 업스트림은 Next.js 감지 → MDX/shadcn 의존성 설치 → 템플릿 치환 → `src/app/privacy/page.tsx` · `src/app/terms/page.tsx` · `src/components/legal/*` 등 파일 생성 → 법정 필수 11개 항목 검증 → 면책 주석 삽입 을 순차 실행한다.
5. 생성이 끝나면 사용자에게 보고하되, 아래 **Response policy** 의 고정 블록을 반드시 포함한다.
## CLI examples
```bash
npx -y @nomadamas/k-skill@0 read korean-privacy-terms scripts/upstream.pin
npx -y @nomadamas/k-skill@0 exec korean-privacy-terms scripts/install.sh --
git -C ~/.claude/skills/korean-privacy-terms/upstream rev-parse HEAD
git -C ~/.agents/skills/korean-privacy-terms/upstream rev-parse HEAD
```
## Response policy
- 생성된 문서는 **참고용 초안**이며 법률 자문이 아니라는 점을 **모든 답변 말미**에 고지한다.
- 실서비스 적용 전 반드시 **변호사 검토**가 필요함을 고정 문구로 출력한다.
- 2026.9.11 시행 개정 개인정보보호법의 §30 법정 항목, 과징금 상향(매출액 10%), 사업주 책임 등이 업스트림 pin 시점 기준으로 반영돼 있음을 알린다. 이후 개정에 대한 최신 반영 여부는 사용자에게 확인 책임이 있다고 명시한다.
- "등" 으로 뭉뚱그리는 표현, 법정 필수 11개 항목 누락, 면책 주석 제거, 사용자 확인 없이 회사명·책임자명을 추측해 채워넣는 행위는 금지된다 (업스트림 규칙).
- 14세 미만 대상 서비스에 성인용 방침을 그대로 적용하지 않는다.
## Done when
- 인터뷰 게이트가 실행되어 최소 jurisdiction · 서비스 유형 · Next.js 버전 · App Router 여부 · 출력 언어 가 확인되었다.
- `scripts/install.sh` 이 업스트림을 dual-install (`~/.claude/skills/korean-privacy-terms/upstream/` + `~/.agents/skills/korean-privacy-terms/upstream/`) 했고, 양쪽 경로 모두 pin 과 동일한 SHA 이다.
- 업스트림 `scripts/interview.md` → `scripts/render.md` → `scripts/install.md` 순서로 생성이 끝났다.
- 법정 필수 11개 항목 검증과 면책 주석 삽입이 업스트림 규칙대로 완료되었다.
- 사용자에게 참고용 초안 + 법률 자문 아님 + 변호사 검토 필수 + 2026.9.11 개정 반영 기준이 함께 고지되었다.
## Failure modes
- 오프라인 또는 네트워크 차단: `scripts/install.sh` 가 upstream clone 단계에서 실패한다. 네트워크 확보 후 재실행.
- pin SHA 가 업스트림에서 삭제/force-push 된 경우: 스크립트가 SHA mismatch 로 비정상 종료한다. `scripts/upstream.pin` 을 최신 태그 SHA 로 bump 하고 PR 을 만든다.
- Next.js Pages Router 단독 프로젝트: 업스트림이 실행을 중단한다. 사용자에게 App Router 전환이 선행 조건임을 안내한다.
- 법률 개정 드리프트: 업스트림이 CHANGELOG 로 반영 기준을 관리한다. pin 만 올리지 말고 업스트림 CHANGELOG 를 함께 확인한다.
- 한글 이용약관 템플릿 0바이트 (upstream, #660): pin 시점 기준 `jurisdictions/kr-pipa/terms-of-service.ko.mdx.tmpl` 과 `templates/terms-of-service.mdx.tmpl` 이 빈 파일이라 한국어(`outputLocale: ko`) 경로에서 이용약관을 생성할 수 없다. 개인정보처리방침(ko/en)과 영문 약관은 정상 생성된다. 업스트림에 템플릿이 채워지면 `scripts/upstream.pin` bump 로 해소한다. `install.sh` 가 설치 시 0바이트 템플릿을 경고로 표면화하므로 인터뷰 시작 전에 확인한다.
## Notes
- upstream: https://github.com/kimlawtech/korean-privacy-terms (Apache-2.0)
- upstream pin: [`scripts/upstream.pin`](./scripts/upstream.pin)
- installer: [`scripts/install.sh`](./scripts/install.sh)
- 법률 면책 전문: [`./DISCLAIMER.md`](./DISCLAIMER.md)
- upstream 저자·커뮤니티 attribution: [`./NOTICE`](./NOTICE) (@kimlawtech, SpeciAI)
- Apache-2.0 전문 (업스트림 `LICENSE` verbatim): [`./LICENSE.upstream`](./LICENSE.upstream) — Apache License, Version 2.0 §4(a) ("give any other recipients of the Work or Derivative Works a copy of this License") 준수를 위해 `install.sh` 실행 전에도 레포 트리에 번들해 둔다. 레포 루트의 [`../LICENSE`](../LICENSE) (MIT) 는 k-skill 자체 라이선스이며 이 스킬 상부에 적용되지 않는다.
- 본 스킬은 업스트림 산출물의 재배포에 해당하므로 Apache License, Version 2.0 §4 요건 (LICENSE 번들, NOTICE 포함, 라이선스 고지) 을 준수한다.
- 중첩 `SKILL.md` 안내: `install.sh` 실행 후 `~/.claude/skills/korean-privacy-terms/upstream/SKILL.md` 가 존재하게 되지만, Claude Code / Codex / Vercel Agent Skills 등 에이전트 플랫폼은 top-level `SKILL.md` 만 discovery 대상으로 삼는다. 중첩 업스트림 `SKILL.md` 는 직접 호출되지 않는다.
LICENSE.upstream
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright 2026 kimlawtech (SpeciAI)
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.