git-subtree-dir: apps/web git-subtree-mainline:9212ed02acgit-subtree-split:5d65cbf2d5
5.2 KiB
5.2 KiB
| name | version | description |
|---|---|---|
| create-domain-rule | 1.0.0 | 새로운 도메인 rules.md 파일을 생성하기 위한 범용 스킬 |
Create Domain Rule
목적
agent-ops/rules/project/domain/<domain-name>/rules.md 파일을 올바른 형식으로 생성한다.
실제 프로젝트 폴더 구조를 분석하여 경로와 구성 요소를 자동으로 채운다.
생성 후 rules/project/rules.md의 도메인 룰 로딩 안내와 도메인 매핑 테이블을 갱신한다.
언제 호출할지
- 새로운 도메인 영역의 코드를 처음 변경하기 전에
- 기존 domain rule이 없는 경로에 대해 규칙이 필요할 때
- 사용자가 특정 도메인의 rule 파일을 만들어 달라고 요청할 때
- agent-ops 초기 scaffold 이후 도메인을 추가 확장할 때
입력
domain-name: 생성할 도메인 이름, kebab-case (필수)domain-type:core/supporting/generic중 하나 (필수)path-hints: 이 도메인에 해당하는 경로 힌트 목록 (선택, 없으면 자동 탐색)
먼저 확인할 것
agent-ops/rules/project/domain/<domain-name>/rules.md가 이미 존재하는지 확인agent-ops/rules/common/_templates/domain-rule-template.md를 읽어 최신 템플릿 형식 파악agent-ops/rules/project/domain/하위 기존 domain rule 목록을 확인하여 중복·유사 도메인 여부 판단
실행 절차
-
중복 확인
agent-ops/rules/project/domain/<domain-name>/폴더 존재 여부 확인- 책임이 겹치는 기존 domain rule 이 있으면 사용자에게 알리고 중단한다
-
경로 탐색
path-hints가 제공된 경우: 해당 경로를 기준으로 폴더 구조 확인path-hints가 없는 경우:domain-name과 연관된 폴더명·파일명으로 프로젝트를 탐색- 실제로 존재하는 경로만 포함 경로에 기재한다
- 존재하지 않는 경로는 기재하지 않는다
-
도메인 분석
- 탐색된 경로의 주요 파일·모듈을 읽어 아래를 도출한다
- 도메인의 목적 / 책임 한 줄 요약
- 포함 경로 목록
- 제외 경로 (인접 도메인과 겹칠 수 있는 경로)
- 주요 구성 요소 (파일, 모듈, 클래스, 함수 등)
- 유지할 패턴 (네이밍 규칙, 아키텍처 패턴 등)
- 다른 도메인과의 경계
- 금지 사항
- 탐색된 경로의 주요 파일·모듈을 읽어 아래를 도출한다
-
도메인 rules.md 생성
- 경로:
agent-ops/rules/project/domain/<domain-name>/rules.md domain-rule-template.md형식을 따른다- 실제 코드에서 확인된 내용만 기재한다
- 불확실한 항목은
<!-- TODO: 확인 필요 -->주석으로 남긴다
- 경로:
-
rules/project/rules.md 업데이트
agent-ops/rules/project/rules.md를 읽는다## 도메인 룰 로딩섹션이 없으면## 도메인 매핑바로 위에 아래 형식으로 추가한다## 도메인 룰 로딩 - 아래 도메인 매핑에 해당하는 작업에서 해당 domain 최초 진입 시 domain rule을 1회 읽는다. - 이미 읽은 domain rule은 같은 세션에서 반복해서 읽지 않는다.- 도메인 매핑 테이블에 아래 형식으로 추가한다
| `<path-pattern>` | <domain-name> | `agent-ops/rules/project/domain/<domain-name>/rules.md` | - 경로 패턴은 실제 포함 경로를 기준으로 작성한다
- 기존 로딩 섹션과 테이블 항목을 삭제하거나 재정렬하지 않는다
-
결과 보고
- 생성한 파일 경로
- rules/project/rules.md 에 추가한 항목
- 불확실하여 TODO로 남긴 항목 (해당 시)
출력 형식
## 생성 완료
- Domain Rule 경로: agent-ops/rules/project/domain/<domain-name>/rules.md
- 도메인 유형: <core | supporting | generic>
- 도메인 룰 로딩 섹션: <추가함 | 이미 존재함>
- rules/project/rules.md 추가 경로 패턴: <path-pattern>
## TODO 항목 (확인 필요)
- <불확실하여 직접 확인이 필요한 항목> (해당 시)
실행 결과 검증
agent-ops/rules/project/domain/<domain-name>/rules.md파일이 생성되었는가- 생성된 파일이
domain-rule-template.md의 모든 섹션(목적, 포함 경로, 제외 경로, 주요 구성 요소, 유지할 패턴, 경계, 금지 사항)을 포함하는가 rules/project/rules.md에 도메인 룰 로딩 섹션이 존재하는가rules/project/rules.md의 도메인 매핑 테이블에 해당 도메인 항목이 추가되었는가- 포함 경로에 기재된 경로가 실제로 프로젝트에 존재하는가
- 검증 실패 시: 누락된 섹션 또는 잘못된 경로를 사용자에게 알리고 해당 부분만 보완한다
금지 사항
- 이미 존재하는 rules.md 를 덮어쓰지 않는다
- 실제 존재하지 않는 경로를 포함 경로에 넣지 않는다
- 추측으로 패턴이나 금지 사항을 채우지 않는다 — 확인된 내용만 기재한다
- rules/project/rules.md 의 기존 로딩 섹션과 테이블 항목을 삭제하거나 재정렬하지 않는다
- 하나의 domain rule 에 여러 독립 도메인의 책임을 묶지 않는다
- 코드 변경을 수행하지 않는다 — 이 skill 은 rule 파일 생성만 담당한다