chore: sync myagent-kit subtree

This commit is contained in:
2026-04-10 14:28:54 +00:00
parent 4919b1d130
commit dbfc971794
11 changed files with 416 additions and 0 deletions
@@ -0,0 +1,26 @@
---
description: "Use when: decide whether a Proposed requirement is ready to move to Approved and generate the required status-change edits"
name: "Approve Requirement"
argument-hint: "Paste a Proposed REQ file or select requirement text"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 requirement 문서가 `Proposed`에서 `Approved`로 전환 가능한지 검토한다.
입력:
${input}
검토 규칙:
- 기준 문서는 [SRS index](../../docs/SRS/index.md) 의 `Status Transition Evidence`와 해당 requirement 문서 구조다.
- `Status`, `Type`, `Priority`, `Owner`, `Intent`, `Requirement`, `Acceptance Criteria`, `Impacted Area`, `Change Log` 존재 여부를 검토한다.
- Type이 SRS index의 분류 도표에 정의된 타입 중 정확하게 하나로 지정되었는지 확인한다.
- `Acceptance Criteria`가 구현 기준으로 충분히 구체적인지 판단한다.
- 중요한 assumption 또는 open question이 남아 있으면 승인 blocker로 본다.
- 승인 가능하면 status 변경과 Change Log 추가 초안을 함께 제안한다.
- 승인 불가하면 blocker를 우선순위 순으로 정리한다.
출력 형식:
1. Approval Decision: `Approved-ready` 또는 `Not ready`
2. Blockers
3. Suggested Edits
4. Approval Change Log Draft
@@ -0,0 +1,32 @@
---
description: "Use when: complete a partial SRS requirement draft into a full REQ file with acceptance criteria and impacted area"
name: "Complete Requirement Draft"
argument-hint: "Paste a partial requirement draft or describe the feature"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 입력을 기반으로 SRS requirement 초안을 완성한다.
입력:
${input}
작업 규칙:
- SRS 기준 문서는 [SRS index](../../docs/SRS/index.md) 와 관련 [REQ template](../../docs/SRS/REQ-template.md) 를 따른다.
- 입력에 `REQ-XXX` 형식의 명시적 ID가 없으면, [SRS index](../../docs/SRS/index.md)의 `Next Requirement ID`를 우선 읽어 그 값을 사용한다. `Next Requirement ID`가 없거나 신뢰할 수 없으면 `Requirement Register`와 기존 REQ 파일들 기준의 최고 번호에 1을 더한 값을 사용한다.
- 사용자가 이미 특정 REQ ID를 명시했으면 그 ID를 유지하고 임의로 바꾸지 않는다.
- requirement의 유형을 인식하고 `Type` 필드를 정확하게 지정한다. 분류는 [SRS index](../../docs/SRS/index.md)의 "Requirement 작성 규칙" 또는 [SRS instructions](../../.github/instructions/srs.instructions.md)의 "분류 의사결정 규칙"을 따른다.
- 최종 `Type`과 `REQ ID`를 이용해 추천 파일 경로를 함께 제시한다. 형식은 `docs/SRS/<Type>/REQ-XXX_<slug>.md`를 사용한다.
- `<slug>`는 requirement 제목을 기반으로 소문자 kebab-case 영문으로 생성한다. 공백은 `-`로 치환하고, 영문/숫자/`-`만 남긴다.
- 제목이 한글이거나 slug 생성이 불명확하면 의미를 유지하는 짧은 영문 slug를 보수적으로 제안한다.
- 사용자가 제공한 의도와 핵심 동작을 보존한다.
- 빠진 항목은 보수적으로 보완하되, 추정이 필요한 내용은 `Notes`에 assumption으로 분리한다.
- `Acceptance Criteria`는 반드시 test 가능하게 작성한다.
- `Impacted Area`는 Docs, Modules, Tests로 구분한다.
- 새로 할당한 ID를 문서 제목 `# REQ-XXX: ...`에 반영한다.
- 결과는 REQ 파일에 바로 붙여넣을 수 있는 Markdown 형식으로만 출력한다.
- 코드 구현 계획은 포함하지 않는다.
출력 형식:
1. `Recommended File Path: docs/SRS/<Type>/REQ-XXX_<slug>.md` 한 줄
2. 실제 할당된 ID가 반영된 `# REQ-XXX: ...` 형식의 전체 문서 본문
3. `## Change Log` 아래에 초안 생성용 `CHG-YYYYMMDD-01` 항목 1개 포함
@@ -0,0 +1,42 @@
---
description: "Use when: create an implementation plan and GitHub issue draft from an Approved requirement"
name: "Create Implementation Issue"
argument-hint: "Paste an Approved REQ file"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 `Approved` requirement 문서를 기반으로 implementation issue 초안을 생성한다.
입력:
${input}
작업 규칙:
- 기준 문서는 [SRS index](../../docs/SRS/index.md) 와 해당 REQ 문서다.
- 출력 언어는 기본적으로 한국어로 작성한다.
- section 제목, 설명, 작업 지시문은 한국어를 우선 사용하되, 중요한 technical term는 영어를 유지하거나 한국어 뒤 괄호로 병기한다. 예: `AI Agent Work`, `Human Verification Checklist`, `Acceptance Criteria`, `Open Questions`, `Risk`, `Definition of Done`.
- 코드 식별자, 파일 경로, 명령어, API 이름, 테스트 이름, UI 라벨 등 구현 대상과 직접 연결되는 literal은 영어 원문을 유지한다.
- requirement의 `Acceptance Criteria`를 구현 task로 분해한다.
- task는 구현 단위로 나누고, 각 task를 `AI Agent가 완료 가능한 작업`과 `Human이 수행해야 하는 작업`으로 구분한다.
- test task를 반드시 포함한다.
- 각 acceptance criteria 또는 task에 대해 다음을 판단한다:
- AI Agent가 코드 변경과 자동 검증까지 완료할 수 있는가
- Human이 직접 확인해야 하는 수동 검증이 남는가
- Human이 직접 확인해야 하는 항목이 있으면 `Human Verification Checklist`에 구체적인 확인 절차와 기대 결과를 작성한다.
- AI Agent가 자체적으로 테스트를 완료할 수 있어 Human 확인이 불필요하면 `Human Verification Checklist`에 `No manual verification required.`를 명시하고 그 근거를 `AI Validation Summary`에 적는다.
- `Impacted Area`를 기반으로 module/docs/test 변경 범위를 제시한다.
- 미해결 가정이나 리스크가 있으면 issue 본문에 `Open Questions`와 `Risks`로 명시한다.
- 출력은 GitHub issue에 바로 붙여 넣을 수 있는 Markdown 형식으로만 작성한다.
출력 형식:
1. Issue Title
2. 배경 (Context)
3. 범위 (Scope)
4. AI Agent 작업 (AI Agent Work) 체크리스트
5. 사람 작업 (Human Work) 체크리스트
6. Acceptance Criteria Mapping (REQ 기준)
7. AI 검증 요약 (AI Validation Summary)
8. 사람 확인 체크리스트 (Human Verification Checklist)
9. 열린 질문 (Open Questions)
10. 리스크 (Risks)
11. 완료 조건 (Definition of Done)
12. GitHub Issue Create Command (`gh issue create`) 예시
@@ -0,0 +1,38 @@
---
description: "Use when: evaluate whether a new feature or change request needs a new SRS requirement, an update to an existing one, a technical spec update only, or owner decision — before starting requirement drafting"
name: "Decide Requirement Scope"
argument-hint: "Describe the feature or change request: include feature description, issue body, and/or PR/diff summary"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 입력을 기반으로, 이 변경이 SRS 대상인지 아닌지를 판정한다.
입력:
${input}
판정 규칙:
- 기준 문서는 [requirement-scope-decision instructions](../../.github/instructions/requirement-scope-decision.instructions.md) 와 [SRS index](../../docs/SRS/index.md) 의 Requirement Register다.
- 다음 4가지 결과 중 하나를 반드시 반환한다.
1. `New SRS requirement needed`
2. `Update existing SRS requirement`
3. `Technical spec only`
4. `Needs owner decision`
- 판정 기준을 순서대로 적용한다.
- 사용자/외부 시스템이 관찰하는 계약(API, CLI, UI, Event, Data schema, Config, Deployment, Integration)이 바뀌는가? → YES면 SRS
- 측정 가능한 Non-Functional requirement(성능, 보안, 가용성 등)가 추가/변경되는가? → YES면 SRS
- Acceptance Criteria 및 명시적 승인 게이트가 필요한가? → YES면 SRS
- 위 기준에 모두 해당하지 않으면서 내부 리팩터링·라이브러리 교체·코드 구조 변경·구현 최적화인가? → Technical spec only
- 위 기준만으로 분류가 확정되지 않거나 운영 책임/리스크가 불명확한가? → Needs owner decision
- SRS 대상으로 판정되면, 신규 기능/계약인지 기존 REQ 범위 내 변경인지를 구분한다.
- 기존 REQ에 해당하는 경우 [SRS index](../../docs/SRS/index.md) 의 Requirement Register에서 후보 REQ ID를 찾아 제시한다.
- Technical spec only로 판정되면, 불필요한 REQ 생성을 명시적으로 피하도록 안내한다.
- 결과에는 항상 `Why`와 `Next Action`을 포함한다.
- `Open Questions`가 없으면 `없음`으로 명시한다.
출력 형식:
1. **Decision**: `New SRS requirement needed` / `Update existing SRS requirement` / `Technical spec only` / `Needs owner decision` 중 하나
2. **Why**: 판정 근거 — 어떤 기준에 해당하는지 구체적으로 설명
3. **Recommended Type**: (SRS 대상인 경우만) Interface / Data / Deployment / Configuration 등 해당 requirement type
4. **Existing REQ candidates**: (Update 가능성이 있는 경우만) 관련 REQ ID와 제목 목록. 해당 없으면 생략
5. **Next Action**: 판정 결과에 따른 다음 단계 안내
6. **Open Questions**: 추가 확인이 필요한 사항. 없으면 `없음`
@@ -0,0 +1,25 @@
---
description: "Use when: decide whether an Approved requirement is ready to move to Implemented and generate the required status-change edits"
name: "Mark Requirement Implemented"
argument-hint: "Paste an Approved REQ file and implementation evidence"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 requirement 문서와 implementation evidence를 검토해 `Approved`에서 `Implemented`로 전환 가능한지 판단한다.
입력:
${input}
검토 규칙:
- 기준 문서는 [SRS index](../../docs/SRS/index.md) 의 `Status Transition Evidence`와 해당 requirement 문서 구조다.
- requirement의 `Acceptance Criteria`가 implementation evidence, tests, 또는 manual verification으로 충족되었는지 확인한다.
- 충족되지 않은 acceptance criteria가 있으면 구현 완료로 판정하지 않는다.
- 구현 완료 가능하면 status 변경, 잔여 리스크, Change Log 추가 초안을 함께 제안한다.
- 구현 완료 불가하면 미충족 기준과 필요한 검증 항목을 정리한다.
출력 형식:
1. Implementation Decision: `Implemented-ready` 또는 `Not ready`
2. Unverified Criteria
3. Suggested Edits
4. Implementation Change Log Draft
5. Residual Risk
+28
View File
@@ -0,0 +1,28 @@
---
description: "Use when: update docs/SRS/index.md Requirement Register or Recent Change Log Summary after adding or editing REQ files"
name: "Sync SRS Index"
argument-hint: "Paste changed REQ files or describe what changed in SRS"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 입력을 기준으로 `docs/SRS/index.md`를 갱신하기 위한 제안을 만든다.
입력:
${input}
작업 규칙:
- 기준 문서는 [SRS index](../../docs/SRS/index.md) 이다.
- 새 requirement가 추가되었거나 Register가 바뀌면 `Requirement Register`의 최고 번호를 기준으로 다음 번호를 계산해 `Next Requirement ID`도 함께 갱신한다.
- 새 requirement가 추가되었으면 `Requirement Register`에 들어갈 행을 만든다.
- 기존 requirement가 수정되었으면 `Recent Change Log Summary`에 들어갈 요약 항목을 만든다.
- 기존 구조를 바꾸지 말고, 필요한 행과 요약만 제안한다.
- `Next Requirement ID`는 `Requirement Register`에 있는 가장 큰 REQ 번호보다 정확히 1 큰 값이어야 한다.
- `Recent Change Log Summary`는 최신 변경을 위에 두고, 짧은 요약 1줄로 작성한다.
- `Recent Change Log Summary`는 최신 5건만 유지하도록 제안한다. 5건을 초과하면 제거 또는 대체해야 할 가장 오래된 항목도 함께 설명한다.
- 출력은 사람이 `docs/SRS/index.md`에 바로 반영할 수 있는 Markdown 조각으로만 작성한다.
출력 형식:
1. `Next Requirement ID`에 반영할 Markdown bullet
2. `Requirement Register`에 추가 또는 수정할 Markdown table row
3. `Recent Change Log Summary`에 추가할 Markdown section
4. 필요한 경우 only, index에서 제거 또는 갱신해야 할 기존 항목 설명
@@ -0,0 +1,24 @@
---
description: "Use when: review an SRS requirement for ambiguity, missing acceptance criteria, missing impacted area, and change-log gaps"
name: "Validate Requirement Quality"
argument-hint: "Paste a REQ file or select requirement text"
agent: "agent"
model: "GPT-5 (copilot)"
---
다음 requirement 문서를 검토한다.
입력:
${input}
검토 규칙:
- 기준은 [SRS index](../../docs/SRS/index.md) 와 관련 requirement 문서 구조를 따른다.
- 다음 항목을 우선 검토한다: 모호한 표현, test 불가능한 문장, 누락된 acceptance criteria, 누락된 impacted area, 상태/유형/우선순위/owner 누락, Type이 의사결정 규칙에 따라 정확하게 지정되었는지, Change Log 누락 또는 불일치.
- Type 분류 규칙: 사용자 조작 방식 → Interface, 데이터 저장/구조 → Data, 오류 처리 → Exception & Error Handling, 그 외 → Non-Functional
- 중요한 문제부터 우선순위 순으로 정리한다.
- 문제가 없으면 `No critical findings.` 로 시작한다.
- requirement 본문을 직접 다시 작성하지 말고, 수정 제안 위주로 답한다.
출력 형식:
1. Findings
2. Open Questions
3. Suggested Edits