# AGENTS.md

## 최우선 규칙: 공개 저장소

이 저장소(`JeongJaeSoon/agent-skills`)는 public이다. 어떤 파일, 커밋 메시지, PR 본문·코멘트에도 사내·조직 내부 정보(내부 저장소명, 인명, 채널, 티켓, URL, 로그)를 기재하지 않는다.

- 넣지 않는 것: 회사·조직 이름, 사내 저장소 이름, Slack 채널 이름과 ID, 사람 이름과 ID, PR·이슈·티켓의 URL과 키, 사내 도메인, 로그와 트랜스크립트 원문.
- 실제 운영 기록을 근거로 쓸 때는 일반화한 표현만 쓰고, 사람 발화나 로그는 인용하지 않고 규칙 문장만 남긴다. 예: "Slack 리뷰 의뢰", "Jira 티켓", "사내 저장소".
- 사내 전용 설정(채널 ID, 리뷰어 별칭 같은 것)은 저장소 밖 로컬 설정 파일(`~/.config/…` 또는 `.gitignore` 대상)에서 읽게 만든다.
- 스테이지된 diff, 커밋 메시지, PR 제목·본문을 회사·사내 서비스 이름 목록으로 grep해서 0건인지 확인한다. 목록 자체도 저장소에 두지 않고 로컬 설정에 둔다.

## 일반화 원칙

- 스킬은 특정 조직·저장소·프로젝트에 의존하지 않는 일반 개념으로 쓴다. 리뷰 채널, 코드오너 팀, 머지·배포 정책, 사람 승인이 필요한 단계, 트래커의 프로젝트·상태 이름 같은 고유값을 스킬 본문에 적지 않는다.
- 고유값은 실행 시 주입한다. 구조화된 값은 `~/.claude/agent-skills.json`의 스킬별 키, 목록과 비밀은 `~/.config/agent-skills/`, 판단 규칙은 비공개 사용자 스킬·메모리(`~/.claude`)에 둔다. 스킬은 설정 키와 기본 동작을 문서화하고, 설정이 없으면 그 기능을 끄거나 멈추고 묻는다.
- 예시는 자리표시자만 쓴다: `acme/app#1`, `ABC-1`, `example.test`, `U0FAKE…`.

## 작업 방식

- 코드·주석과 SKILL.md 본문은 영어, README·docs·설계 문서는 한국어. 기존 파일은 그 파일의 언어를 따른다.
- 커밋은 서명한다.
- 편집은 worktree 브랜치에서 하고, 로드되는 메인 체크아웃에는 fast-forward로만 들어간다. 운영 방식은 [docs/platform.md](docs/platform.md).
- 테스트는 README의 "테스트" 절 명령으로 돌린다.
