sync: agent-ops from agentic-framework v1.1.99
This commit is contained in:
parent
e5f64f29b1
commit
bf8eed5b45
15 changed files with 439 additions and 37 deletions
14
.clinerules
14
.clinerules
|
|
@ -1,6 +1,7 @@
|
||||||
# 공통 규칙
|
# 공통 규칙
|
||||||
|
|
||||||
- **현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
||||||
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
||||||
- 요청 범위를 넘는 변경을 하지 않는다.
|
- 요청 범위를 넘는 변경을 하지 않는다.
|
||||||
|
|
@ -9,7 +10,6 @@
|
||||||
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
||||||
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
||||||
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
||||||
- 환경별 값(host/port/token/compose/runbook)은 `agent-ops/rules/private/`에 두고, `rules.md`는 라우터로만 쓴다.
|
|
||||||
|
|
||||||
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
||||||
|
|
||||||
|
|
@ -19,10 +19,7 @@
|
||||||
|
|
||||||
# 프로젝트 간 잠금
|
# 프로젝트 간 잠금
|
||||||
|
|
||||||
- 프로젝트 상위 폴더에 `.agent-roadmap-sync/locks.yaml`이 있으면 프로젝트 간 Milestone 잠금 인덱스로 본다.
|
|
||||||
- 외부 의존 잠금 생성/동기화 요청은 `.agent-roadmap-sync/locks.yaml`이 없어도 `update-roadmap`이 생성한다.
|
|
||||||
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
||||||
- `plan`과 `code-review`는 `.agent-roadmap-sync`를 읽거나 갱신하지 않는다.
|
|
||||||
|
|
||||||
# 스킬 규칙
|
# 스킬 규칙
|
||||||
|
|
||||||
|
|
@ -30,6 +27,7 @@
|
||||||
- agent-ops 초기화
|
- agent-ops 초기화
|
||||||
- domain rule 생성
|
- domain rule 생성
|
||||||
- skill 생성
|
- skill 생성
|
||||||
|
- 테스트 룰 작성/생성/수정, create-test/update-test
|
||||||
- README 생성
|
- README 생성
|
||||||
- 로드맵/마일스톤 생성·갱신
|
- 로드맵/마일스톤 생성·갱신
|
||||||
- 로드맵 현지점 / 현재 작업 지점 확인
|
- 로드맵 현지점 / 현재 작업 지점 확인
|
||||||
|
|
@ -37,3 +35,9 @@
|
||||||
- 코드 리뷰 / review 진행
|
- 코드 리뷰 / review 진행
|
||||||
- git commit / push
|
- git commit / push
|
||||||
- agent-ops 업데이트 / 진입 파일 재적용
|
- agent-ops 업데이트 / 진입 파일 재적용
|
||||||
|
|
||||||
|
# 테스트 규칙
|
||||||
|
|
||||||
|
**테스트 실행/검증 작업이 포함된 경우, 작업 환경에 맞게 최초 1회 읽고 수행한다. 환경 미지정은 local로 본다.**
|
||||||
|
|
||||||
|
- local: `agent-test/local/rules.md` (없으면 `create-test`)
|
||||||
|
|
|
||||||
14
.cursorrules
14
.cursorrules
|
|
@ -1,6 +1,7 @@
|
||||||
# 공통 규칙
|
# 공통 규칙
|
||||||
|
|
||||||
- **현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
||||||
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
||||||
- 요청 범위를 넘는 변경을 하지 않는다.
|
- 요청 범위를 넘는 변경을 하지 않는다.
|
||||||
|
|
@ -9,7 +10,6 @@
|
||||||
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
||||||
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
||||||
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
||||||
- 환경별 값(host/port/token/compose/runbook)은 `agent-ops/rules/private/`에 두고, `rules.md`는 라우터로만 쓴다.
|
|
||||||
|
|
||||||
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
||||||
|
|
||||||
|
|
@ -19,10 +19,7 @@
|
||||||
|
|
||||||
# 프로젝트 간 잠금
|
# 프로젝트 간 잠금
|
||||||
|
|
||||||
- 프로젝트 상위 폴더에 `.agent-roadmap-sync/locks.yaml`이 있으면 프로젝트 간 Milestone 잠금 인덱스로 본다.
|
|
||||||
- 외부 의존 잠금 생성/동기화 요청은 `.agent-roadmap-sync/locks.yaml`이 없어도 `update-roadmap`이 생성한다.
|
|
||||||
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
||||||
- `plan`과 `code-review`는 `.agent-roadmap-sync`를 읽거나 갱신하지 않는다.
|
|
||||||
|
|
||||||
# 스킬 규칙
|
# 스킬 규칙
|
||||||
|
|
||||||
|
|
@ -30,6 +27,7 @@
|
||||||
- agent-ops 초기화
|
- agent-ops 초기화
|
||||||
- domain rule 생성
|
- domain rule 생성
|
||||||
- skill 생성
|
- skill 생성
|
||||||
|
- 테스트 룰 작성/생성/수정, create-test/update-test
|
||||||
- README 생성
|
- README 생성
|
||||||
- 로드맵/마일스톤 생성·갱신
|
- 로드맵/마일스톤 생성·갱신
|
||||||
- 로드맵 현지점 / 현재 작업 지점 확인
|
- 로드맵 현지점 / 현재 작업 지점 확인
|
||||||
|
|
@ -37,3 +35,9 @@
|
||||||
- 코드 리뷰 / review 진행
|
- 코드 리뷰 / review 진행
|
||||||
- git commit / push
|
- git commit / push
|
||||||
- agent-ops 업데이트 / 진입 파일 재적용
|
- agent-ops 업데이트 / 진입 파일 재적용
|
||||||
|
|
||||||
|
# 테스트 규칙
|
||||||
|
|
||||||
|
**테스트 실행/검증 작업이 포함된 경우, 작업 환경에 맞게 최초 1회 읽고 수행한다. 환경 미지정은 local로 본다.**
|
||||||
|
|
||||||
|
- local: `agent-test/local/rules.md` (없으면 `create-test`)
|
||||||
|
|
|
||||||
14
AGENTS.md
14
AGENTS.md
|
|
@ -1,6 +1,7 @@
|
||||||
# 공통 규칙
|
# 공통 규칙
|
||||||
|
|
||||||
- **현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
||||||
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
||||||
- 요청 범위를 넘는 변경을 하지 않는다.
|
- 요청 범위를 넘는 변경을 하지 않는다.
|
||||||
|
|
@ -9,7 +10,6 @@
|
||||||
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
||||||
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
||||||
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
||||||
- 환경별 값(host/port/token/compose/runbook)은 `agent-ops/rules/private/`에 두고, `rules.md`는 라우터로만 쓴다.
|
|
||||||
|
|
||||||
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
||||||
|
|
||||||
|
|
@ -19,10 +19,7 @@
|
||||||
|
|
||||||
# 프로젝트 간 잠금
|
# 프로젝트 간 잠금
|
||||||
|
|
||||||
- 프로젝트 상위 폴더에 `.agent-roadmap-sync/locks.yaml`이 있으면 프로젝트 간 Milestone 잠금 인덱스로 본다.
|
|
||||||
- 외부 의존 잠금 생성/동기화 요청은 `.agent-roadmap-sync/locks.yaml`이 없어도 `update-roadmap`이 생성한다.
|
|
||||||
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
||||||
- `plan`과 `code-review`는 `.agent-roadmap-sync`를 읽거나 갱신하지 않는다.
|
|
||||||
|
|
||||||
# 스킬 규칙
|
# 스킬 규칙
|
||||||
|
|
||||||
|
|
@ -30,6 +27,7 @@
|
||||||
- agent-ops 초기화
|
- agent-ops 초기화
|
||||||
- domain rule 생성
|
- domain rule 생성
|
||||||
- skill 생성
|
- skill 생성
|
||||||
|
- 테스트 룰 작성/생성/수정, create-test/update-test
|
||||||
- README 생성
|
- README 생성
|
||||||
- 로드맵/마일스톤 생성·갱신
|
- 로드맵/마일스톤 생성·갱신
|
||||||
- 로드맵 현지점 / 현재 작업 지점 확인
|
- 로드맵 현지점 / 현재 작업 지점 확인
|
||||||
|
|
@ -37,3 +35,9 @@
|
||||||
- 코드 리뷰 / review 진행
|
- 코드 리뷰 / review 진행
|
||||||
- git commit / push
|
- git commit / push
|
||||||
- agent-ops 업데이트 / 진입 파일 재적용
|
- agent-ops 업데이트 / 진입 파일 재적용
|
||||||
|
|
||||||
|
# 테스트 규칙
|
||||||
|
|
||||||
|
**테스트 실행/검증 작업이 포함된 경우, 작업 환경에 맞게 최초 1회 읽고 수행한다. 환경 미지정은 local로 본다.**
|
||||||
|
|
||||||
|
- local: `agent-test/local/rules.md` (없으면 `create-test`)
|
||||||
|
|
|
||||||
14
CLAUDE.md
14
CLAUDE.md
|
|
@ -1,6 +1,7 @@
|
||||||
# 공통 규칙
|
# 공통 규칙
|
||||||
|
|
||||||
- **현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
||||||
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
||||||
- 요청 범위를 넘는 변경을 하지 않는다.
|
- 요청 범위를 넘는 변경을 하지 않는다.
|
||||||
|
|
@ -9,7 +10,6 @@
|
||||||
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
||||||
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
||||||
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
||||||
- 환경별 값(host/port/token/compose/runbook)은 `agent-ops/rules/private/`에 두고, `rules.md`는 라우터로만 쓴다.
|
|
||||||
|
|
||||||
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
||||||
|
|
||||||
|
|
@ -19,10 +19,7 @@
|
||||||
|
|
||||||
# 프로젝트 간 잠금
|
# 프로젝트 간 잠금
|
||||||
|
|
||||||
- 프로젝트 상위 폴더에 `.agent-roadmap-sync/locks.yaml`이 있으면 프로젝트 간 Milestone 잠금 인덱스로 본다.
|
|
||||||
- 외부 의존 잠금 생성/동기화 요청은 `.agent-roadmap-sync/locks.yaml`이 없어도 `update-roadmap`이 생성한다.
|
|
||||||
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
||||||
- `plan`과 `code-review`는 `.agent-roadmap-sync`를 읽거나 갱신하지 않는다.
|
|
||||||
|
|
||||||
# 스킬 규칙
|
# 스킬 규칙
|
||||||
|
|
||||||
|
|
@ -30,6 +27,7 @@
|
||||||
- agent-ops 초기화
|
- agent-ops 초기화
|
||||||
- domain rule 생성
|
- domain rule 생성
|
||||||
- skill 생성
|
- skill 생성
|
||||||
|
- 테스트 룰 작성/생성/수정, create-test/update-test
|
||||||
- README 생성
|
- README 생성
|
||||||
- 로드맵/마일스톤 생성·갱신
|
- 로드맵/마일스톤 생성·갱신
|
||||||
- 로드맵 현지점 / 현재 작업 지점 확인
|
- 로드맵 현지점 / 현재 작업 지점 확인
|
||||||
|
|
@ -37,3 +35,9 @@
|
||||||
- 코드 리뷰 / review 진행
|
- 코드 리뷰 / review 진행
|
||||||
- git commit / push
|
- git commit / push
|
||||||
- agent-ops 업데이트 / 진입 파일 재적용
|
- agent-ops 업데이트 / 진입 파일 재적용
|
||||||
|
|
||||||
|
# 테스트 규칙
|
||||||
|
|
||||||
|
**테스트 실행/검증 작업이 포함된 경우, 작업 환경에 맞게 최초 1회 읽고 수행한다. 환경 미지정은 local로 본다.**
|
||||||
|
|
||||||
|
- local: `agent-test/local/rules.md` (없으면 `create-test`)
|
||||||
|
|
|
||||||
14
GEMINI.md
14
GEMINI.md
|
|
@ -1,6 +1,7 @@
|
||||||
# 공통 규칙
|
# 공통 규칙
|
||||||
|
|
||||||
- **현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
||||||
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
||||||
- 요청 범위를 넘는 변경을 하지 않는다.
|
- 요청 범위를 넘는 변경을 하지 않는다.
|
||||||
|
|
@ -9,7 +10,6 @@
|
||||||
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
||||||
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
||||||
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
||||||
- 환경별 값(host/port/token/compose/runbook)은 `agent-ops/rules/private/`에 두고, `rules.md`는 라우터로만 쓴다.
|
|
||||||
|
|
||||||
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
||||||
|
|
||||||
|
|
@ -19,10 +19,7 @@
|
||||||
|
|
||||||
# 프로젝트 간 잠금
|
# 프로젝트 간 잠금
|
||||||
|
|
||||||
- 프로젝트 상위 폴더에 `.agent-roadmap-sync/locks.yaml`이 있으면 프로젝트 간 Milestone 잠금 인덱스로 본다.
|
|
||||||
- 외부 의존 잠금 생성/동기화 요청은 `.agent-roadmap-sync/locks.yaml`이 없어도 `update-roadmap`이 생성한다.
|
|
||||||
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
||||||
- `plan`과 `code-review`는 `.agent-roadmap-sync`를 읽거나 갱신하지 않는다.
|
|
||||||
|
|
||||||
# 스킬 규칙
|
# 스킬 규칙
|
||||||
|
|
||||||
|
|
@ -30,6 +27,7 @@
|
||||||
- agent-ops 초기화
|
- agent-ops 초기화
|
||||||
- domain rule 생성
|
- domain rule 생성
|
||||||
- skill 생성
|
- skill 생성
|
||||||
|
- 테스트 룰 작성/생성/수정, create-test/update-test
|
||||||
- README 생성
|
- README 생성
|
||||||
- 로드맵/마일스톤 생성·갱신
|
- 로드맵/마일스톤 생성·갱신
|
||||||
- 로드맵 현지점 / 현재 작업 지점 확인
|
- 로드맵 현지점 / 현재 작업 지점 확인
|
||||||
|
|
@ -37,3 +35,9 @@
|
||||||
- 코드 리뷰 / review 진행
|
- 코드 리뷰 / review 진행
|
||||||
- git commit / push
|
- git commit / push
|
||||||
- agent-ops 업데이트 / 진입 파일 재적용
|
- agent-ops 업데이트 / 진입 파일 재적용
|
||||||
|
|
||||||
|
# 테스트 규칙
|
||||||
|
|
||||||
|
**테스트 실행/검증 작업이 포함된 경우, 작업 환경에 맞게 최초 1회 읽고 수행한다. 환경 미지정은 local로 본다.**
|
||||||
|
|
||||||
|
- local: `agent-test/local/rules.md` (없으면 `create-test`)
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
1.1.84
|
1.1.99
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,66 @@ ensure_common_rules_file() {
|
||||||
cp "$source_rules" "$target_rules"
|
cp "$source_rules" "$target_rules"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ensure_gitignore_entry() {
|
||||||
|
local gitignore_file="$1"
|
||||||
|
local entry="$2"
|
||||||
|
|
||||||
|
if ! grep -qxF "$entry" "$gitignore_file"; then
|
||||||
|
printf '%s\n' "$entry" >> "$gitignore_file"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
ensure_agent_test_local() {
|
||||||
|
local target_dir="$1"
|
||||||
|
local local_rules="$target_dir/agent-test/local/rules.md"
|
||||||
|
local today
|
||||||
|
|
||||||
|
today="$(date +%F)"
|
||||||
|
mkdir -p "$(dirname "$local_rules")"
|
||||||
|
mkdir -p "$target_dir/agent-test/runs"
|
||||||
|
|
||||||
|
if [ ! -f "$local_rules" ]; then
|
||||||
|
cat > "$local_rules" <<EOF
|
||||||
|
---
|
||||||
|
test_env: local
|
||||||
|
last_rule_updated_at: $today
|
||||||
|
---
|
||||||
|
|
||||||
|
# local 테스트 규칙
|
||||||
|
|
||||||
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
|
## 공통 규칙
|
||||||
|
|
||||||
|
- local 테스트/검증은 이 파일을 기준으로 판단한다.
|
||||||
|
- 작업 완료 검증은 변경 범위 기준으로 선택한다.
|
||||||
|
- 필수 검증을 실행하지 못하면 차단 사유로 보고한다.
|
||||||
|
- 최종 보고에는 실행 명령, 결과, 생략 사유, 남은 위험을 남긴다.
|
||||||
|
- 환경값, secret, 개인 endpoint는 tracked docs/roadmap에 쓰지 않는다.
|
||||||
|
|
||||||
|
## 기본 환경
|
||||||
|
|
||||||
|
- host:
|
||||||
|
- port:
|
||||||
|
- runtime:
|
||||||
|
- package manager:
|
||||||
|
- docker:
|
||||||
|
- external service:
|
||||||
|
- model endpoint:
|
||||||
|
- credential:
|
||||||
|
|
||||||
|
## 라우팅
|
||||||
|
|
||||||
|
- 현재 등록된 상황별 테스트 문서 없음.
|
||||||
|
|
||||||
|
## 라우팅 규칙
|
||||||
|
|
||||||
|
- 여러 항목이 맞으면 모두 읽는다.
|
||||||
|
- 상황별 문서는 다른 테스트 문서로 라우팅하지 않는다.
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
echo "Initializing agent-ops in: $TARGET_DIR"
|
echo "Initializing agent-ops in: $TARGET_DIR"
|
||||||
echo "Source agent-ops: $SOURCE_DIR"
|
echo "Source agent-ops: $SOURCE_DIR"
|
||||||
|
|
||||||
|
|
@ -81,6 +141,16 @@ if ! grep -q "agent-ops/rules/private/" "$TOUCH_GITIGNORE"; then
|
||||||
echo "# Agent-Ops Private Rules" >> "$TOUCH_GITIGNORE"
|
echo "# Agent-Ops Private Rules" >> "$TOUCH_GITIGNORE"
|
||||||
echo "agent-ops/rules/private/" >> "$TOUCH_GITIGNORE"
|
echo "agent-ops/rules/private/" >> "$TOUCH_GITIGNORE"
|
||||||
fi
|
fi
|
||||||
|
if ! grep -qxF "# Agent-Test Local Environment" "$TOUCH_GITIGNORE"; then
|
||||||
|
echo "" >> "$TOUCH_GITIGNORE"
|
||||||
|
echo "# Agent-Test Local Environment" >> "$TOUCH_GITIGNORE"
|
||||||
|
fi
|
||||||
|
ensure_gitignore_entry "$TOUCH_GITIGNORE" "agent-test/local/"
|
||||||
|
ensure_gitignore_entry "$TOUCH_GITIGNORE" "agent-test/runs/"
|
||||||
|
|
||||||
|
# 6. local 테스트 환경 생성
|
||||||
|
ensure_agent_test_local "$TARGET_DIR"
|
||||||
|
|
||||||
echo "Successfully initialized agent-ops in $TARGET_DIR"
|
echo "Successfully initialized agent-ops in $TARGET_DIR"
|
||||||
echo "Note: agent-ops/rules/project and agent-ops/skills/project are initialized as empty."
|
echo "Note: agent-ops/rules/project and agent-ops/skills/project are initialized as empty."
|
||||||
|
echo "Note: agent-test/local/rules.md is initialized and ignored by git."
|
||||||
|
|
|
||||||
71
agent-ops/rules/common/_templates/test-case-rule-template.md
Normal file
71
agent-ops/rules/common/_templates/test-case-rule-template.md
Normal file
|
|
@ -0,0 +1,71 @@
|
||||||
|
---
|
||||||
|
test_env: <local|dev|qa|prod>
|
||||||
|
test_case: <test-case>
|
||||||
|
last_rule_updated_at: <YYYY-MM-DD>
|
||||||
|
---
|
||||||
|
|
||||||
|
# <test_case> <test_env> 테스트
|
||||||
|
|
||||||
|
## 읽기 조건
|
||||||
|
|
||||||
|
- <이 상황의 테스트, 검증, 실행 조건 판단이 필요한 경우>
|
||||||
|
|
||||||
|
## 적용 범위
|
||||||
|
|
||||||
|
- <검증 대상 entrypoint, command, API, UX, profile, service>
|
||||||
|
|
||||||
|
## 환경
|
||||||
|
|
||||||
|
- host:
|
||||||
|
- port:
|
||||||
|
- runtime:
|
||||||
|
- package manager:
|
||||||
|
- docker:
|
||||||
|
- external service:
|
||||||
|
- model endpoint:
|
||||||
|
- credential:
|
||||||
|
|
||||||
|
## 명령
|
||||||
|
|
||||||
|
- setup:
|
||||||
|
- lint:
|
||||||
|
- unit:
|
||||||
|
- smoke:
|
||||||
|
- e2e:
|
||||||
|
- model:
|
||||||
|
- full-cycle:
|
||||||
|
|
||||||
|
## 필수 검증
|
||||||
|
|
||||||
|
- <작업 완료 전 반드시 실행하거나 판단해야 하는 검증>
|
||||||
|
|
||||||
|
## 보조 검증
|
||||||
|
|
||||||
|
- <실행하면 좋지만 필수 검증을 대체하지 않는 smoke/helper 검증>
|
||||||
|
|
||||||
|
## 판정 기준
|
||||||
|
|
||||||
|
- <통과로 판단할 출력, 상태, UX, artifact, endpoint 조건>
|
||||||
|
|
||||||
|
## 기준 출력 예시
|
||||||
|
|
||||||
|
```text
|
||||||
|
<필요한 경우 기대 출력 예시>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 차단 기준
|
||||||
|
|
||||||
|
- <테스트를 계속할 수 없는 환경/권한/도구/서비스 조건>
|
||||||
|
|
||||||
|
## 보고 항목
|
||||||
|
|
||||||
|
- 실행한 명령:
|
||||||
|
- 성공한 검증:
|
||||||
|
- 실패/차단된 검증:
|
||||||
|
- 생략 사유:
|
||||||
|
- 남은 위험:
|
||||||
|
|
||||||
|
## 금지 사항
|
||||||
|
|
||||||
|
- <이 상황 검증에서 하면 안 되는 것>
|
||||||
|
- secret, token, 개인 endpoint 원문은 tracked 파일에 기록하지 않는다.
|
||||||
36
agent-ops/rules/common/_templates/test-env-rules-template.md
Normal file
36
agent-ops/rules/common/_templates/test-env-rules-template.md
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
---
|
||||||
|
test_env: <local|dev|qa|prod>
|
||||||
|
last_rule_updated_at: <YYYY-MM-DD>
|
||||||
|
---
|
||||||
|
|
||||||
|
# <test_env> 테스트 규칙
|
||||||
|
|
||||||
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
|
## 공통 규칙
|
||||||
|
|
||||||
|
- <test_env> 테스트/검증은 이 파일을 기준으로 판단한다.
|
||||||
|
- 작업 완료 검증은 변경 범위 기준으로 선택한다.
|
||||||
|
- 필수 검증을 실행하지 못하면 차단 사유로 보고한다.
|
||||||
|
- 최종 보고에는 실행 명령, 결과, 생략 사유, 남은 위험을 남긴다.
|
||||||
|
- 환경값, secret, 개인 endpoint는 tracked docs/roadmap에 쓰지 않는다.
|
||||||
|
|
||||||
|
## 기본 환경
|
||||||
|
|
||||||
|
- host:
|
||||||
|
- port:
|
||||||
|
- runtime:
|
||||||
|
- package manager:
|
||||||
|
- docker:
|
||||||
|
- external service:
|
||||||
|
- model endpoint:
|
||||||
|
- credential:
|
||||||
|
|
||||||
|
## 라우팅
|
||||||
|
|
||||||
|
- <상황/변경 범위>: `agent-test/<test_env>/<test-case>.md`
|
||||||
|
|
||||||
|
## 라우팅 규칙
|
||||||
|
|
||||||
|
- 여러 항목이 맞으면 모두 읽는다.
|
||||||
|
- 상황별 문서는 다른 테스트 문서로 라우팅하지 않는다.
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
# 공통 규칙
|
# 공통 규칙
|
||||||
|
|
||||||
- **현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
|
||||||
|
|
||||||
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
- 기존 구조를 우선한다. 새 파일 생성보다 기존 파일 수정을 우선한다.
|
||||||
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
- 코드 변경 전 관련 domain rule을 먼저 확인한다.
|
||||||
- 요청 범위를 넘는 변경을 하지 않는다.
|
- 요청 범위를 넘는 변경을 하지 않는다.
|
||||||
|
|
@ -9,7 +10,6 @@
|
||||||
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
- `agent-roadmap/` 디렉터리가 있는 프로젝트에서도 `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 로드맵 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `agent-ops/rules/common/rules-roadmap.md`의 archive 접근 규칙을 따른다.
|
||||||
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
- agent-ops 구조, 규칙, 스킬, 로드맵, 런타임 책임 경계를 설계하거나 수정할 때만 `agent-ops/rules/common/philosophy.md`를 읽는다.
|
||||||
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
- tracked `docs/`는 사람용 최신 가이드와 공개 설명만 둔다.
|
||||||
- 환경별 값(host/port/token/compose/runbook)은 `agent-ops/rules/private/`에 두고, `rules.md`는 라우터로만 쓴다.
|
|
||||||
|
|
||||||
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
**세션 최초 1회 아래 파일을 순서대로 반드시 읽는다.** 파일이나 디렉터리가 없는 항목은 건너뛴다. 그외에 스킵은 금지한다.
|
||||||
|
|
||||||
|
|
@ -19,10 +19,7 @@
|
||||||
|
|
||||||
# 프로젝트 간 잠금
|
# 프로젝트 간 잠금
|
||||||
|
|
||||||
- 프로젝트 상위 폴더에 `.agent-roadmap-sync/locks.yaml`이 있으면 프로젝트 간 Milestone 잠금 인덱스로 본다.
|
|
||||||
- 외부 의존 잠금 생성/동기화 요청은 `.agent-roadmap-sync/locks.yaml`이 없어도 `update-roadmap`이 생성한다.
|
|
||||||
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
- "이 Milestone은 X가 끝나야 가능하다", "A 전까지 B를 잠근다", "잠금 해제 조건은 X다", "현재 마일스톤은 X 프로젝트 작업 뒤에 진행되어야 한다", "의존성 설정해"는 `update-roadmap`으로 처리한다.
|
||||||
- `plan`과 `code-review`는 `.agent-roadmap-sync`를 읽거나 갱신하지 않는다.
|
|
||||||
|
|
||||||
# 스킬 규칙
|
# 스킬 규칙
|
||||||
|
|
||||||
|
|
@ -30,6 +27,7 @@
|
||||||
- agent-ops 초기화
|
- agent-ops 초기화
|
||||||
- domain rule 생성
|
- domain rule 생성
|
||||||
- skill 생성
|
- skill 생성
|
||||||
|
- 테스트 룰 작성/생성/수정, create-test/update-test
|
||||||
- README 생성
|
- README 생성
|
||||||
- 로드맵/마일스톤 생성·갱신
|
- 로드맵/마일스톤 생성·갱신
|
||||||
- 로드맵 현지점 / 현재 작업 지점 확인
|
- 로드맵 현지점 / 현재 작업 지점 확인
|
||||||
|
|
@ -37,3 +35,9 @@
|
||||||
- 코드 리뷰 / review 진행
|
- 코드 리뷰 / review 진행
|
||||||
- git commit / push
|
- git commit / push
|
||||||
- agent-ops 업데이트 / 진입 파일 재적용
|
- agent-ops 업데이트 / 진입 파일 재적용
|
||||||
|
|
||||||
|
# 테스트 규칙
|
||||||
|
|
||||||
|
**테스트 실행/검증 작업이 포함된 경우, 작업 환경에 맞게 최초 1회 읽고 수행한다. 환경 미지정은 local로 본다.**
|
||||||
|
|
||||||
|
- local: `agent-test/local/rules.md` (없으면 `create-test`)
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: create-readme
|
name: create-readme
|
||||||
version: 1.0.0
|
version: 1.1.0
|
||||||
description: README 작성, README 생성, 프로젝트 설명 문서 작성 요청에 대해 사람이 읽기 쉽고 AI가 다음 작업에 바로 활용할 수 있는 표준형 README.md를 생성하는 공통 스킬
|
description: README 작성, README 생성, 프로젝트 설명 문서 작성 요청에 대해 사람이 읽기 쉽고 AI가 다음 작업에 바로 활용할 수 있는 표준형 README.md를 생성하는 공통 스킬
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -78,6 +78,9 @@ README는 프로젝트 특성에 맞게 필요한 섹션만 사용하되, 기본
|
||||||
- `agent-ops/`가 있으면 규칙, 로드맵, 스킬 문서를 참고 문서나 작업 맥락에 연결한다.
|
- `agent-ops/`가 있으면 규칙, 로드맵, 스킬 문서를 참고 문서나 작업 맥락에 연결한다.
|
||||||
- `agent-roadmap/current.md`가 있으면 README에 현재 작업 위치를 복사하지 말고, 로드맵을 확인할 문서 경로만 적는다.
|
- `agent-roadmap/current.md`가 있으면 README에 현재 작업 위치를 복사하지 말고, 로드맵을 확인할 문서 경로만 적는다.
|
||||||
- README는 제품 소개 문서이면서 작업 진입점이다. 마케팅 문구보다 실행 가능한 정보와 프로젝트 경계를 우선한다.
|
- README는 제품 소개 문서이면서 작업 진입점이다. 마케팅 문구보다 실행 가능한 정보와 프로젝트 경계를 우선한다.
|
||||||
|
- README의 자연어 설명은 한국어 중심으로 작성한다.
|
||||||
|
- 단, README, API, CLI, SDK, runtime, build, test, lint, deploy, workflow, migration, integration처럼 개발자가 흔히 쓰는 영어 표현과 제품명, 기술명, 패키지명, 명령, 경로, 코드 식별자는 자연스럽게 영어로 유지한다.
|
||||||
|
- 널리 쓰이는 기술 영어를 억지로 번역하지 말고, 사람과 AI가 함께 읽기 쉬운 표현을 우선한다.
|
||||||
- 불확실한 내용은 단정하지 않고 `TODO` 또는 "확인 필요"로 남긴다.
|
- 불확실한 내용은 단정하지 않고 `TODO` 또는 "확인 필요"로 남긴다.
|
||||||
|
|
||||||
## 먼저 확인할 것
|
## 먼저 확인할 것
|
||||||
|
|
|
||||||
89
agent-ops/skills/common/create-test/SKILL.md
Normal file
89
agent-ops/skills/common/create-test/SKILL.md
Normal file
|
|
@ -0,0 +1,89 @@
|
||||||
|
---
|
||||||
|
name: create-test
|
||||||
|
version: 1.0.2
|
||||||
|
description: agent-test 환경 rules.md 또는 상황별 테스트 rule 문서를 생성하는 스킬
|
||||||
|
---
|
||||||
|
|
||||||
|
# create-test
|
||||||
|
|
||||||
|
## 목적
|
||||||
|
|
||||||
|
`agent-test/<env>/rules.md` 또는 `agent-test/<env>/<test-case>.md`를 템플릿 기준으로 생성한다.
|
||||||
|
공통 진입점은 얇게 유지하고, 실제 테스트 기준은 환경/상황별 문서에 둔다.
|
||||||
|
|
||||||
|
## 언제 호출할지
|
||||||
|
|
||||||
|
- 새 테스트 환경을 추가할 때
|
||||||
|
- 특정 환경의 `rules.md`가 없을 때
|
||||||
|
- 새 상황별 테스트 문서와 라우팅을 추가할 때
|
||||||
|
- `init-agent-ops` 후 local 테스트 환경 보완이 필요할 때
|
||||||
|
|
||||||
|
## 입력
|
||||||
|
|
||||||
|
- `env`: `local`, `dev`, `qa`, `prod` 중 하나 (필수)
|
||||||
|
- `test-case`: 상황별 테스트 문서 이름, kebab-case (선택)
|
||||||
|
- `scope`: 검증 대상 또는 변경 범위 설명 (선택)
|
||||||
|
|
||||||
|
## 먼저 확인할 것
|
||||||
|
|
||||||
|
- [ ] `agent-ops/rules/common/rules.md`의 스킬 규칙과 테스트 규칙이 분리되어 있는지 확인한다.
|
||||||
|
- [ ] `agent-ops/skills/common/router.md`에 `create-test` 라우팅이 있는지 확인한다.
|
||||||
|
- [ ] `agent-ops/rules/common/_templates/test-env-rules-template.md`를 읽는다.
|
||||||
|
- [ ] `test-case`가 있으면 `agent-ops/rules/common/_templates/test-case-rule-template.md`를 읽는다.
|
||||||
|
- [ ] `agent-test/<env>/rules.md` 존재 여부를 확인한다.
|
||||||
|
- [ ] `test-case`가 있으면 `agent-test/<env>/<test-case>.md` 존재 여부를 확인한다.
|
||||||
|
|
||||||
|
## 실행 절차
|
||||||
|
|
||||||
|
1. **환경 rules 생성**
|
||||||
|
- `agent-test/<env>/rules.md`가 없으면 `test-env-rules-template.md` 형식으로 만든다.
|
||||||
|
- 제목은 `# <env> 테스트 규칙`으로 쓴다.
|
||||||
|
- 제목 바로 아래 정독 필수 문구를 유지한다.
|
||||||
|
- `last_rule_updated_at`은 생성일 `YYYY-MM-DD`로 쓴다.
|
||||||
|
|
||||||
|
2. **상황별 문서 생성**
|
||||||
|
- `test-case`가 있으면 `agent-test/<env>/<test-case>.md`를 `test-case-rule-template.md` 형식으로 만든다.
|
||||||
|
- 실제 확인된 환경, 명령, 판정 기준만 채운다.
|
||||||
|
- 불확실한 값은 비워 두거나 `<확인 필요>`로 둔다.
|
||||||
|
|
||||||
|
3. **라우팅 갱신**
|
||||||
|
- 새 환경을 만들었고 `agent-ops/rules/common/rules.md`에 해당 env 라인이 없으면 `# 테스트 규칙`에 한 줄을 추가한다.
|
||||||
|
- `test-case` 문서를 만들었으면 `agent-test/<env>/rules.md`의 `## 라우팅`에 해당 문서 한 줄을 추가한다.
|
||||||
|
- 상황별 문서에서 다른 테스트 문서로 라우팅하지 않는다.
|
||||||
|
- 공통룰에서 스킬 최종 진입까지의 경로는 `rules.md` -> `router.md` -> `create-test/SKILL.md`로 유지한다.
|
||||||
|
|
||||||
|
4. **local 추적 제외**
|
||||||
|
- `env`가 `local`이면 `.gitignore`에 `agent-test/local/`과 `agent-test/runs/`가 있는지 확인하고 없으면 추가한다.
|
||||||
|
|
||||||
|
5. **결과 보고**
|
||||||
|
- 생성한 파일
|
||||||
|
- 추가한 라우팅
|
||||||
|
- 비워 둔 확인 필요 항목
|
||||||
|
|
||||||
|
## 실행 결과 검증
|
||||||
|
|
||||||
|
- [ ] 생성 파일이 해당 템플릿의 필수 섹션을 포함하는가
|
||||||
|
- [ ] `rules.md` -> `router.md` -> `create-test/SKILL.md` 경로가 끊기지 않는가
|
||||||
|
- [ ] `agent-test/<env>/rules.md`가 3홉을 넘는 라우팅을 만들지 않는가
|
||||||
|
- [ ] 새 상황별 문서가 env rules의 라우팅에 연결되었는가
|
||||||
|
- [ ] local 생성 시 `.gitignore`에 local 경로가 반영되었는가
|
||||||
|
- 검증 실패 시: 누락된 파일/섹션/라우팅만 보완한다.
|
||||||
|
|
||||||
|
## 출력 형식
|
||||||
|
|
||||||
|
```md
|
||||||
|
## 생성 완료
|
||||||
|
|
||||||
|
- 환경: <env>
|
||||||
|
- 환경 rules: agent-test/<env>/rules.md
|
||||||
|
- 상황별 rule: agent-test/<env>/<test-case>.md
|
||||||
|
- 라우팅 추가: <내용>
|
||||||
|
- 확인 필요: <항목 또는 없음>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 금지 사항
|
||||||
|
|
||||||
|
- 기존 테스트 문서를 덮어쓰지 않는다.
|
||||||
|
- 상황별 문서에서 추가 테스트 문서로 라우팅하지 않는다.
|
||||||
|
- 확인되지 않은 host, port, token, endpoint를 추측해 쓰지 않는다.
|
||||||
|
- secret, token, 개인 endpoint 원문을 tracked 파일에 기록하지 않는다.
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: init-agent-ops
|
name: init-agent-ops
|
||||||
version: 1.1.4
|
version: 1.1.8
|
||||||
description: 프로젝트 상태를 판별하고 agent-ops 기본 스캐폴드를 생성하기 위한 초기 규칙
|
description: 프로젝트 상태를 판별하고 agent-ops 기본 스캐폴드를 생성하기 위한 초기 규칙
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -16,7 +16,8 @@ description: 프로젝트 상태를 판별하고 agent-ops 기본 스캐폴드
|
||||||
3. agent-ops 기본 폴더 구조
|
3. agent-ops 기본 폴더 구조
|
||||||
4. rules/project/rules.md (프로젝트 특화 규칙, 분석 후 생성)
|
4. rules/project/rules.md (프로젝트 특화 규칙, 분석 후 생성)
|
||||||
5. 초기 domain rule 초안
|
5. 초기 domain rule 초안
|
||||||
6. 초기 skill (필요 시)
|
6. 초기 local 테스트 환경
|
||||||
|
7. 초기 skill (필요 시)
|
||||||
|
|
||||||
"현재 프로젝트에 맞는 최소 스캐폴드" 생성을 우선한다.
|
"현재 프로젝트에 맞는 최소 스캐폴드" 생성을 우선한다.
|
||||||
|
|
||||||
|
|
@ -36,6 +37,7 @@ description: 프로젝트 상태를 판별하고 agent-ops 기본 스캐폴드
|
||||||
- [ ] `.agent-ops-source` 파일이 있는지 확인 (공통 관리 레포 여부)
|
- [ ] `.agent-ops-source` 파일이 있는지 확인 (공통 관리 레포 여부)
|
||||||
- [ ] 기존 진입 파일(`CLAUDE.md`, `GEMINI.md` 등)이 있는지 확인
|
- [ ] 기존 진입 파일(`CLAUDE.md`, `GEMINI.md` 등)이 있는지 확인
|
||||||
- [ ] 기존 AI ignore / permission 파일(`.geminiignore`, `.aiexclude`, `.claude/settings.json`, `opencode.json` 등)이 있는지 확인
|
- [ ] 기존 AI ignore / permission 파일(`.geminiignore`, `.aiexclude`, `.claude/settings.json`, `opencode.json` 등)이 있는지 확인
|
||||||
|
- [ ] `agent-ops/skills/common/create-test/SKILL.md`가 있는지 확인
|
||||||
|
|
||||||
## 핵심 원칙
|
## 핵심 원칙
|
||||||
|
|
||||||
|
|
@ -71,6 +73,8 @@ description: 프로젝트 상태를 판별하고 agent-ops 기본 스캐폴드
|
||||||
| `agent-ops/rules/project/domain/<domain>/rules.md` | 도메인 분석 후 생성 |
|
| `agent-ops/rules/project/domain/<domain>/rules.md` | 도메인 분석 후 생성 |
|
||||||
| `agent-ops/rules/private/` | 폴더만 생성 (내용은 개인이 작성) |
|
| `agent-ops/rules/private/` | 폴더만 생성 (내용은 개인이 작성) |
|
||||||
| `.gitignore`에 `agent-ops/rules/private/` 추가 | git 추적 제외 |
|
| `.gitignore`에 `agent-ops/rules/private/` 추가 | git 추적 제외 |
|
||||||
|
| `agent-test/local/rules.md` | `init-agent-ops.sh`가 최소 내용으로 생성 |
|
||||||
|
| `.gitignore`에 `agent-test/local/`, `agent-test/runs/` 추가 | `init-agent-ops.sh`가 local 테스트 환경/로그를 git 추적 제외 |
|
||||||
| `.geminiignore`, `.aiexclude`, `.cursorignore`, `.clineignore` | 사용자 항목은 보존하고 Agent-Ops 관리 block에 `agent-task/archive/**`, `agent-roadmap/archive/**` 추가 |
|
| `.geminiignore`, `.aiexclude`, `.cursorignore`, `.clineignore` | 사용자 항목은 보존하고 Agent-Ops 관리 block에 `agent-task/archive/**`, `agent-roadmap/archive/**` 추가 |
|
||||||
| `.claude/settings.json`, `opencode.json` | `agent-task/archive/**` 읽기/검색 제외 설정을 생성 또는 병합한다. `agent-roadmap/archive/**`는 필요 시 링크로 읽을 수 있어야 하므로 hard read/glob deny에서 제거한다 |
|
| `.claude/settings.json`, `opencode.json` | `agent-task/archive/**` 읽기/검색 제외 설정을 생성 또는 병합한다. `agent-roadmap/archive/**`는 필요 시 링크로 읽을 수 있어야 하므로 hard read/glob deny에서 제거한다 |
|
||||||
|
|
||||||
|
|
@ -162,7 +166,8 @@ common/rules.md와 내용이 중복되지 않도록 한다.
|
||||||
|
|
||||||
## 실행 (Execution)
|
## 실행 (Execution)
|
||||||
|
|
||||||
지정한 대상 디렉토리에 agent-ops 스캐폴드를 생성한다.
|
지정한 대상 디렉토리에 agent-ops 기본 스캐폴드와 local 테스트 환경을 생성한다.
|
||||||
|
스크립트 실행 후 이 skill의 실행 절차에 따라 project/domain 분석을 보완한다.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./agent-ops/bin/init-agent-ops.sh <target_directory>
|
./agent-ops/bin/init-agent-ops.sh <target_directory>
|
||||||
|
|
@ -197,11 +202,17 @@ common/rules.md와 내용이 중복되지 않도록 한다.
|
||||||
- 신규 프로젝트: 핵심 domain placeholder 2~4개만 제안한다. domain rules를 과도하게 채우지 않는다
|
- 신규 프로젝트: 핵심 domain placeholder 2~4개만 제안한다. domain rules를 과도하게 채우지 않는다
|
||||||
- 운영중 프로젝트: Core/Supporting/Generic 도메인을 식별하고 실제 경로를 반영한 초안을 생성한다
|
- 운영중 프로젝트: Core/Supporting/Generic 도메인을 식별하고 실제 경로를 반영한 초안을 생성한다
|
||||||
|
|
||||||
7. **초기 skill 제안**
|
7. **초기 local 테스트 환경 생성**
|
||||||
|
- `init-agent-ops.sh`가 `agent-test/local/rules.md`를 최소 내용으로 자동 생성한다
|
||||||
|
- `init-agent-ops.sh`가 `.gitignore`에 `agent-test/local/`과 `agent-test/runs/`를 자동 추가한다
|
||||||
|
- 스크립트 실행 후 누락되었으면 대상 프로젝트의 `agent-ops/skills/common/create-test/SKILL.md`를 읽고 `env=local`, `test-case` 없음으로 보완한다
|
||||||
|
- 상황별 테스트 문서는 초기화 단계에서 만들지 않는다
|
||||||
|
|
||||||
|
8. **초기 skill 제안**
|
||||||
- 신규 프로젝트: 최소 2개만 제안한다
|
- 신규 프로젝트: 최소 2개만 제안한다
|
||||||
- 운영중 프로젝트: 반복 작업 기반으로 필요한 skill을 제안한다
|
- 운영중 프로젝트: 반복 작업 기반으로 필요한 skill을 제안한다
|
||||||
|
|
||||||
8. **결과 보고**
|
9. **결과 보고**
|
||||||
- 상태 판별 결과, 생성된 파일 목록, 도메인 제안, skill 제안, 주의사항을 출력한다
|
- 상태 판별 결과, 생성된 파일 목록, 도메인 제안, skill 제안, 주의사항을 출력한다
|
||||||
|
|
||||||
## 출력 형식
|
## 출력 형식
|
||||||
|
|
@ -237,6 +248,8 @@ common/rules.md와 내용이 중복되지 않도록 한다.
|
||||||
- [ ] 생성된 domain rules.md가 `domain-rule-template.md` 형식을 따르는가
|
- [ ] 생성된 domain rules.md가 `domain-rule-template.md` 형식을 따르는가
|
||||||
- [ ] `rules/project/rules.md`의 도메인 매핑 테이블에 생성된 도메인이 모두 등록되어 있는가
|
- [ ] `rules/project/rules.md`의 도메인 매핑 테이블에 생성된 도메인이 모두 등록되어 있는가
|
||||||
- [ ] `.gitignore`에 `agent-ops/rules/private/` 항목이 추가되어 있는가
|
- [ ] `.gitignore`에 `agent-ops/rules/private/` 항목이 추가되어 있는가
|
||||||
|
- [ ] `agent-test/local/rules.md`가 생성되었는가
|
||||||
|
- [ ] `.gitignore`에 `agent-test/local/`과 `agent-test/runs/`가 추가되어 있는가
|
||||||
- [ ] `.geminiignore`, `.aiexclude`, `.cursorignore`, `.clineignore`에 Agent-Ops 관리 block이 있고 그 안에 `agent-task/archive/**`와 `agent-roadmap/archive/**`가 포함되어 있는가
|
- [ ] `.geminiignore`, `.aiexclude`, `.cursorignore`, `.clineignore`에 Agent-Ops 관리 block이 있고 그 안에 `agent-task/archive/**`와 `agent-roadmap/archive/**`가 포함되어 있는가
|
||||||
- [ ] `.claude/settings.json`, `opencode.json`에 `agent-task/archive/**` 제외 설정이 있거나, 병합 불가 시 수동 병합 안내를 출력했는가
|
- [ ] `.claude/settings.json`, `opencode.json`에 `agent-task/archive/**` 제외 설정이 있거나, 병합 불가 시 수동 병합 안내를 출력했는가
|
||||||
- [ ] `.claude/settings.json`, `opencode.json`에 `agent-roadmap/archive/**` hard read/glob deny가 남아 있지 않은가
|
- [ ] `.claude/settings.json`, `opencode.json`에 `agent-roadmap/archive/**` hard read/glob deny가 남아 있지 않은가
|
||||||
|
|
@ -248,6 +261,8 @@ common/rules.md와 내용이 중복되지 않도록 한다.
|
||||||
|
|
||||||
- 진입 파일에 rules/common/rules.md 외 내용을 추가하지 않는다.
|
- 진입 파일에 rules/common/rules.md 외 내용을 추가하지 않는다.
|
||||||
- `agent-task/archive/**`와 `agent-roadmap/archive/**` 제외를 `.gitignore`에 추가하지 않는다.
|
- `agent-task/archive/**`와 `agent-roadmap/archive/**` 제외를 `.gitignore`에 추가하지 않는다.
|
||||||
|
- local 테스트 환경 파일을 git 추적 대상으로 만들지 않는다.
|
||||||
|
- 초기화 단계에서 상황별 테스트 문서를 임의 생성하지 않는다.
|
||||||
- 실제 구조보다 앞선 추상 구조를 강요하지 않는다.
|
- 실제 구조보다 앞선 추상 구조를 강요하지 않는다.
|
||||||
- 처음부터 많은 domain / skill을 만들지 않는다.
|
- 처음부터 많은 domain / skill을 만들지 않는다.
|
||||||
- rules/common/rules.md를 프로젝트에서 직접 수정하지 않는다.
|
- rules/common/rules.md를 프로젝트에서 직접 수정하지 않는다.
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@
|
||||||
| agent-ops 세팅해줘, scaffold 만들어줘, 초기화해줘 | `agent-ops/skills/common/init-agent-ops/SKILL.md` |
|
| agent-ops 세팅해줘, scaffold 만들어줘, 초기화해줘 | `agent-ops/skills/common/init-agent-ops/SKILL.md` |
|
||||||
| domain rule 만들어줘, rules.md 생성, 새 도메인 규칙 | `agent-ops/skills/common/create-domain-rule/SKILL.md` |
|
| domain rule 만들어줘, rules.md 생성, 새 도메인 규칙 | `agent-ops/skills/common/create-domain-rule/SKILL.md` |
|
||||||
| skill 만들어줘, SKILL.md 생성, 새 스킬 추가 | `agent-ops/skills/common/create-skill/SKILL.md` |
|
| skill 만들어줘, SKILL.md 생성, 새 스킬 추가 | `agent-ops/skills/common/create-skill/SKILL.md` |
|
||||||
|
| create-test, 테스트 룰 작성, 테스트 룰 생성, 테스트 규칙 작성, 테스트 규칙 생성, 테스트 환경 생성, 상황별 테스트 문서 생성, test rule 생성, agent-test 생성 | `agent-ops/skills/common/create-test/SKILL.md` |
|
||||||
|
| update-test, 테스트 룰 수정, 테스트 룰 갱신, 테스트 규칙 수정, 테스트 규칙 갱신, 테스트 환경 수정, 상황별 테스트 문서 수정, test rule 수정, agent-test 수정 | `agent-ops/skills/common/update-test/SKILL.md` |
|
||||||
| README 작성해줘, README 만들어줘, 프로젝트 설명 문서 만들어줘 | `agent-ops/skills/common/create-readme/SKILL.md` |
|
| README 작성해줘, README 만들어줘, 프로젝트 설명 문서 만들어줘 | `agent-ops/skills/common/create-readme/SKILL.md` |
|
||||||
| 로드맵 만들어줘, roadmap 생성, 마일스톤 설계, goal/phase 구조 잡아줘 | `agent-ops/skills/common/create-roadmap/SKILL.md` |
|
| 로드맵 만들어줘, roadmap 생성, 마일스톤 설계, goal/phase 구조 잡아줘 | `agent-ops/skills/common/create-roadmap/SKILL.md` |
|
||||||
| 로드맵 업데이트, roadmap 갱신, 로드맵에 추가, 로드맵 작업 추가, 로드맵 기능 추가, 로드맵 Epic 추가, 로드맵 에픽 추가, 로드맵 Task 추가, 로드맵 태스크 추가, 로드맵 테스크 추가, 로드맵 TODO 추가, 마일스톤에 추가, 마일스톤 추가, 마일스톤 갱신, 마일스톤 아카이브, phase 추가, phase 변경, 페이즈 추가, 페이즈 변경, 현재 마일스톤 변경, 로드맵 한국어 전환, 로드맵 번역 | `agent-ops/skills/common/update-roadmap/SKILL.md` |
|
| 로드맵 업데이트, roadmap 갱신, 로드맵에 추가, 로드맵 작업 추가, 로드맵 기능 추가, 로드맵 Epic 추가, 로드맵 에픽 추가, 로드맵 Task 추가, 로드맵 태스크 추가, 로드맵 테스크 추가, 로드맵 TODO 추가, 마일스톤에 추가, 마일스톤 추가, 마일스톤 갱신, 마일스톤 아카이브, phase 추가, phase 변경, 페이즈 추가, 페이즈 변경, 현재 마일스톤 변경, 로드맵 한국어 전환, 로드맵 번역 | `agent-ops/skills/common/update-roadmap/SKILL.md` |
|
||||||
|
|
|
||||||
92
agent-ops/skills/common/update-test/SKILL.md
Normal file
92
agent-ops/skills/common/update-test/SKILL.md
Normal file
|
|
@ -0,0 +1,92 @@
|
||||||
|
---
|
||||||
|
name: update-test
|
||||||
|
version: 1.0.1
|
||||||
|
description: 기존 agent-test 환경 rules.md 또는 상황별 테스트 rule 문서를 수정하는 스킬
|
||||||
|
---
|
||||||
|
|
||||||
|
# update-test
|
||||||
|
|
||||||
|
## 목적
|
||||||
|
|
||||||
|
기존 `agent-test/<env>/rules.md` 또는 `agent-test/<env>/<test-case>.md`를 최신 테스트 기준에 맞게 갱신한다.
|
||||||
|
라우팅은 3홉 안에 유지하고, 상황별 문서는 자체 완결되게 보완한다.
|
||||||
|
|
||||||
|
## 언제 호출할지
|
||||||
|
|
||||||
|
- 기존 테스트 환경 규칙을 수정할 때
|
||||||
|
- 상황별 테스트 기준, 명령, 판정 기준을 보완할 때
|
||||||
|
- 테스트 라우팅을 추가, 제거, 정리할 때
|
||||||
|
|
||||||
|
## 입력
|
||||||
|
|
||||||
|
- `env`: `local`, `dev`, `qa`, `prod` 중 하나 (필수)
|
||||||
|
- `test-case`: 수정할 상황별 테스트 문서 이름, kebab-case (선택)
|
||||||
|
- `change`: 수정할 내용 요약 (필수)
|
||||||
|
|
||||||
|
## 먼저 확인할 것
|
||||||
|
|
||||||
|
- [ ] `agent-ops/rules/common/rules.md`의 스킬 규칙과 테스트 규칙이 분리되어 있는지 확인한다.
|
||||||
|
- [ ] `agent-ops/skills/common/router.md`에 `update-test` 라우팅이 있는지 확인한다.
|
||||||
|
- [ ] `agent-test/<env>/rules.md` 존재 여부를 확인하고, 없으면 `create-test` 대상으로 보고 중단한다.
|
||||||
|
- [ ] `agent-test/<env>/rules.md`가 있으면 읽는다.
|
||||||
|
- [ ] `test-case`가 있으면 `agent-test/<env>/<test-case>.md` 존재 여부를 확인하고, 없으면 `create-test` 대상으로 보고 중단한다.
|
||||||
|
- [ ] `test-case` 문서가 있으면 읽는다.
|
||||||
|
- [ ] 템플릿 구조 확인이 필요하면 `agent-ops/rules/common/_templates/`의 테스트 템플릿을 읽는다.
|
||||||
|
- [ ] 기존 라우팅이 3홉 안에 있는지 확인한다.
|
||||||
|
|
||||||
|
## 실행 절차
|
||||||
|
|
||||||
|
1. **대상 확정**
|
||||||
|
- 환경 공통 규칙 변경이면 `agent-test/<env>/rules.md`만 수정한다.
|
||||||
|
- 특정 검증 기준 변경이면 해당 상황별 문서를 수정한다.
|
||||||
|
- 대상 문서가 없으면 생성하지 말고 `create-test` 대상이라고 보고한다.
|
||||||
|
|
||||||
|
2. **문서 갱신**
|
||||||
|
- 기존 환경값, 명령, 금지 사항을 보존한다.
|
||||||
|
- 오래된 기준은 새 기준으로 교체하고 같은 뜻의 중복 문장은 줄인다.
|
||||||
|
- 상황별 문서는 읽기 조건, 적용 범위, 명령, 필수 검증, 판정 기준, 차단 기준을 자체 포함하게 유지한다.
|
||||||
|
- `last_rule_updated_at`은 수정일 `YYYY-MM-DD`로 갱신한다.
|
||||||
|
|
||||||
|
3. **라우팅 갱신**
|
||||||
|
- env rules의 `## 라우팅`은 상황별 문서로만 향하게 한다.
|
||||||
|
- 맞지 않는 라우팅은 제거하거나 더 정확한 상황 설명으로 바꾼다.
|
||||||
|
- 상황별 문서에서 다른 테스트 문서로 이어지는 라우팅은 제거한다.
|
||||||
|
- 공통룰에서 스킬 최종 진입까지의 경로는 `rules.md` -> `router.md` -> `update-test/SKILL.md`로 유지한다.
|
||||||
|
|
||||||
|
4. **local 추적 제외 확인**
|
||||||
|
- `env`가 `local`이면 `.gitignore`에 `agent-test/local/`과 `agent-test/runs/`가 있는지 확인하고 없으면 추가한다.
|
||||||
|
|
||||||
|
5. **결과 보고**
|
||||||
|
- 수정한 파일
|
||||||
|
- 바꾼 라우팅
|
||||||
|
- 보존한 환경값
|
||||||
|
- 남은 확인 필요 항목
|
||||||
|
|
||||||
|
## 실행 결과 검증
|
||||||
|
|
||||||
|
- [ ] 수정 대상 문서가 여전히 필수 섹션을 포함하는가
|
||||||
|
- [ ] `rules.md` -> `router.md` -> `update-test/SKILL.md` 경로가 끊기지 않는가
|
||||||
|
- [ ] env rules 라우팅이 3홉 제한을 넘기지 않는가
|
||||||
|
- [ ] 상황별 문서가 다른 테스트 문서로 라우팅하지 않는가
|
||||||
|
- [ ] local 수정 시 `.gitignore`에 local 경로가 반영되었는가
|
||||||
|
- [ ] secret, token, 개인 endpoint 원문이 tracked 파일에 추가되지 않았는가
|
||||||
|
- 검증 실패 시: 문제 문서만 다시 보완한다.
|
||||||
|
|
||||||
|
## 출력 형식
|
||||||
|
|
||||||
|
```md
|
||||||
|
## 수정 완료
|
||||||
|
|
||||||
|
- 환경: <env>
|
||||||
|
- 수정 파일: <path>
|
||||||
|
- 라우팅 변경: <내용 또는 없음>
|
||||||
|
- 보존한 환경값: <요약>
|
||||||
|
- 확인 필요: <항목 또는 없음>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 금지 사항
|
||||||
|
|
||||||
|
- 기존 local 환경값을 추측으로 바꾸지 않는다.
|
||||||
|
- 확인되지 않은 테스트 명령을 필수 검증으로 단정하지 않는다.
|
||||||
|
- 상황별 문서를 router처럼 쓰지 않는다.
|
||||||
|
- secret, token, 개인 endpoint 원문을 tracked 파일에 기록하지 않는다.
|
||||||
Loading…
Reference in a new issue