modify gemini template
This commit is contained in:
+40
-47
@@ -1,8 +1,8 @@
|
||||
# Codex Markdown Document Harness Template
|
||||
# Gemini CLI Markdown Document Harness Template
|
||||
|
||||
Codex 환경에서 Harness Engineering 방식으로 Markdown 문서를 단계적으로 작성하기 위한 템플릿입니다.
|
||||
Gemini CLI 환경에서 Harness Engineering 방식으로 Markdown 문서를 단계적으로 작성하기 위한 템플릿입니다.
|
||||
|
||||
사용자는 `docs/PRD.md`에 만들고 싶은 문서의 목적, 대상 독자, 개요, 중요 키워드, 조사 요구사항을 작성합니다. 이후 Codex는 PRD를 기준으로 작성 규칙을 구체화하고, 웹 조사, 조사 노트, 초안, 사용자 피드백, 최종 문서를 순서대로 만들어 갑니다.
|
||||
사용자는 `docs/PRD.md`에 만들고 싶은 문서의 목적, 대상 독자, 개요, 중요 키워드, 조사 요구사항을 작성합니다. 이후 Gemini CLI는 PRD를 기준으로 작성 규칙을 구체화하고, 웹 조사, 조사 노트, 초안, 사용자 피드백, 최종 문서를 순서대로 만들어 갑니다.
|
||||
|
||||
## 핵심 아이디어
|
||||
|
||||
@@ -20,20 +20,20 @@ PRD 작성
|
||||
|
||||
목표는 빠른 초안 작성보다 사용자의 의도, 출처, 피드백, 최종 산출물을 분리해 관리하는 것입니다.
|
||||
|
||||
## Codex 구성
|
||||
## Gemini CLI 구성
|
||||
|
||||
```text
|
||||
.
|
||||
├── AGENTS.md # Codex가 읽는 프로젝트 기본 규칙
|
||||
├── GEMINI.md # Gemini CLI가 읽는 프로젝트 기본 규칙
|
||||
├── .agents/
|
||||
│ └── skills/
|
||||
│ ├── document-harness/ # 단계적 문서 작성 Skill
|
||||
│ └── document-review/ # 문서 리뷰 Skill
|
||||
├── .codex/
|
||||
│ ├── config.toml # hooks, multi-agent, live web search 설정
|
||||
│ ├── hooks.json # Stop/PreToolUse hook 연결
|
||||
├── .gemini/
|
||||
│ ├── settings.json # context, skills, hooks 설정
|
||||
│ ├── commands/ # Harness custom slash commands
|
||||
│ ├── hooks/ # hook 실행 스크립트
|
||||
│ └── agents/ # 조사, 초안, 리뷰, 근거 점검 custom agents
|
||||
│ └── agents/ # 조사, 초안, 리뷰, 근거 점검 subagents
|
||||
├── docs/
|
||||
│ ├── PRD.md # 사용자가 채우는 문서 요구사항
|
||||
│ ├── ResearchNote.md # 조사 결과와 출처 장부
|
||||
@@ -46,7 +46,7 @@ PRD 작성
|
||||
├── final/ # 최종 문서
|
||||
├── phases/ # 단계 실행 계획과 상태 파일
|
||||
└── scripts/
|
||||
├── execute.py # codex exec 기반 step 실행기
|
||||
├── execute.py # Gemini CLI headless 기반 step 순차 실행기
|
||||
├── validate_docs.py # 템플릿 구조 검증
|
||||
└── test_execute.py # 실행기 테스트
|
||||
```
|
||||
@@ -76,18 +76,21 @@ git init
|
||||
- 조사 요구사항
|
||||
- 승인 기준
|
||||
|
||||
3. Codex에서 Harness Skill을 사용합니다.
|
||||
3. Gemini CLI에서 Harness Skill 또는 custom command를 사용합니다.
|
||||
|
||||
예시 프롬프트:
|
||||
|
||||
```text
|
||||
$document-harness를 사용해서 docs/PRD.md를 읽고 문서 작성 phase를 설계해 주세요.
|
||||
document-harness Skill을 사용해서 docs/PRD.md를 읽고 문서 작성 phase를 설계해 주세요.
|
||||
```
|
||||
|
||||
또는 바로 다음처럼 요청할 수 있습니다.
|
||||
또는 custom command를 사용할 수 있습니다.
|
||||
|
||||
```text
|
||||
$document-harness를 사용해서 docs/PRD.md 기준으로 작성 규칙 구체화, ResearchNote 작성, 초안 작성 단계까지 진행해 주세요.
|
||||
/harness:plan
|
||||
/harness:research
|
||||
/harness:draft
|
||||
/harness:review
|
||||
```
|
||||
|
||||
4. 생성된 초안을 검토합니다.
|
||||
@@ -100,7 +103,7 @@ $document-harness를 사용해서 docs/PRD.md 기준으로 작성 규칙 구체
|
||||
|
||||
## 자동 실행 방식
|
||||
|
||||
Codex가 `phases/{task-name}/` 아래에 step 파일을 만든 뒤, 실행기는 각 step을 `codex exec`로 순차 실행합니다.
|
||||
Gemini CLI가 `phases/{task-name}/` 아래에 step 파일을 만든 뒤, 실행기는 각 step을 Gemini CLI headless mode로 순차 실행합니다.
|
||||
|
||||
```bash
|
||||
python scripts/execute.py <task-name>
|
||||
@@ -115,7 +118,7 @@ python scripts/execute.py <task-name> --push
|
||||
실행기가 처리하는 일:
|
||||
|
||||
- `feat-{task-name}` 브랜치 생성 또는 checkout
|
||||
- `AGENTS.md`와 `docs/*.md`를 매 step 프롬프트에 주입
|
||||
- `GEMINI.md`와 `docs/*.md`를 매 step 프롬프트에 주입
|
||||
- 완료된 step의 `summary`를 다음 step에 전달
|
||||
- 실패 시 최대 3회 재시도
|
||||
- step 상태를 `completed`, `blocked`, `error`로 관리
|
||||
@@ -139,9 +142,9 @@ docs/FinalFeedback.md
|
||||
|
||||
피드백을 작성한 뒤 해당 step의 상태를 `pending`으로 되돌리고 다시 실행하면 다음 단계가 진행됩니다.
|
||||
|
||||
## Codex Skills
|
||||
## Gemini CLI Skills
|
||||
|
||||
이 템플릿은 repo 공유 Skill을 사용합니다.
|
||||
이 템플릿은 repo 공유 Skill을 사용합니다. Gemini CLI는 `.agents/skills/` 경로를 workspace skill alias로 인식합니다.
|
||||
|
||||
`document-harness`:
|
||||
|
||||
@@ -160,40 +163,31 @@ docs/FinalFeedback.md
|
||||
- 피드백 반영 확인
|
||||
- 문체와 Markdown 구조 검토
|
||||
|
||||
Codex에서 명시적으로 호출할 수 있습니다.
|
||||
## Gemini CLI Subagents
|
||||
|
||||
```text
|
||||
$document-harness
|
||||
$document-review
|
||||
```
|
||||
|
||||
## Codex Custom Agents
|
||||
|
||||
`.codex/agents/`에는 문서 작성에 특화된 역할이 정의되어 있습니다.
|
||||
`.gemini/agents/`에는 문서 작성에 특화된 subagent 역할이 정의되어 있습니다.
|
||||
|
||||
| Agent | 역할 |
|
||||
|-------|------|
|
||||
| `doc_researcher` | PRD 키워드 조사, 출처 수집, `docs/ResearchNote.md` 작성 |
|
||||
| `doc_drafter` | ResearchNote와 PRD를 바탕으로 `drafts/` 초안 작성 |
|
||||
| `doc_reviewer` | PRD 정합성, 구조, 피드백 반영 여부 리뷰 |
|
||||
| `evidence_checker` | 문서 주장과 ResearchNote 출처 연결 확인 |
|
||||
| `doc-researcher` | PRD 키워드 조사, 출처 수집, `docs/ResearchNote.md` 작성 |
|
||||
| `doc-drafter` | ResearchNote와 PRD를 바탕으로 `drafts/` 초안 작성 |
|
||||
| `doc-reviewer` | PRD 정합성, 구조, 피드백 반영 여부 리뷰 |
|
||||
| `evidence-checker` | 문서 주장과 ResearchNote 출처 연결 확인 |
|
||||
|
||||
Codex는 subagent를 항상 자동으로 생성하지 않습니다. 병렬 조사나 독립 리뷰가 필요하면 프롬프트에서 명시적으로 요청하세요.
|
||||
|
||||
예시:
|
||||
명시적으로 subagent를 호출하려면 Gemini CLI에서 다음처럼 요청할 수 있습니다.
|
||||
|
||||
```text
|
||||
doc_researcher와 evidence_checker 역할을 사용해 핵심 키워드를 병렬 조사하고 docs/ResearchNote.md를 정리해 주세요.
|
||||
@doc-researcher docs/PRD.md의 핵심 키워드를 조사하고 docs/ResearchNote.md를 정리해 주세요.
|
||||
```
|
||||
|
||||
## Hooks
|
||||
|
||||
`.codex/hooks.json`은 두 가지 기본 hook을 연결합니다.
|
||||
`.gemini/settings.json`은 두 가지 기본 hook을 연결합니다.
|
||||
|
||||
- `PreToolUse`: 위험한 shell 명령을 차단합니다.
|
||||
- `Stop`: 응답 종료 시 `python scripts/validate_docs.py`를 실행해 템플릿 구조를 검증합니다.
|
||||
- `BeforeTool`: 위험한 shell 명령을 차단합니다.
|
||||
- `AfterAgent`: 응답 종료 후 `python scripts/validate_docs.py`를 실행해 템플릿 구조를 검증합니다.
|
||||
|
||||
검증 실패 시 Codex가 문제를 고치도록 이어서 작업하게 만드는 용도입니다.
|
||||
검증 실패 시 `AfterAgent` hook은 Gemini CLI에 재시도 피드백을 전달합니다.
|
||||
|
||||
## 검증
|
||||
|
||||
@@ -213,7 +207,6 @@ python -m pytest scripts/test_execute.py
|
||||
|
||||
```text
|
||||
Document harness validation passed.
|
||||
51 passed
|
||||
```
|
||||
|
||||
## 문서 작성 규칙
|
||||
@@ -230,30 +223,30 @@ Document harness validation passed.
|
||||
PRD 검토:
|
||||
|
||||
```text
|
||||
$document-harness를 사용해 docs/PRD.md가 문서 작성을 시작하기에 충분한지 검토해 주세요.
|
||||
document-harness Skill을 사용해 docs/PRD.md가 문서 작성을 시작하기에 충분한지 검토해 주세요.
|
||||
```
|
||||
|
||||
조사 노트 작성:
|
||||
|
||||
```text
|
||||
$document-harness를 사용해 docs/PRD.md의 중요 키워드를 웹 조사하고 docs/ResearchNote.md를 작성해 주세요.
|
||||
/harness:research
|
||||
```
|
||||
|
||||
초안 작성:
|
||||
|
||||
```text
|
||||
$document-harness를 사용해 docs/PRD.md와 docs/ResearchNote.md를 바탕으로 drafts/에 초안을 작성해 주세요.
|
||||
/harness:draft
|
||||
```
|
||||
|
||||
문서 리뷰:
|
||||
|
||||
```text
|
||||
$document-review를 사용해 drafts/와 final/의 변경 사항을 검토해 주세요.
|
||||
/harness:review
|
||||
```
|
||||
|
||||
## 주의사항
|
||||
|
||||
- 자동 실행기는 git 저장소를 전제로 합니다.
|
||||
- 자동 실행기는 git 저장소와 Gemini CLI 설치를 전제로 합니다.
|
||||
- 최신 정보가 중요한 문서는 `docs/ResearchNote.md`에 조사 일시와 기준일을 남겨야 합니다.
|
||||
- `AGENTS.md`에는 지속적으로 적용할 규칙만 두고, 긴 절차는 Skill에 둡니다.
|
||||
- Claude Code용 `.claude/` 구조는 사용하지 않습니다. 이 템플릿은 Codex의 `AGENTS.md`, Skill, hook, custom agent 구조를 기준으로 합니다.
|
||||
- `GEMINI.md`에는 지속적으로 적용할 규칙만 두고, 긴 절차는 Skill에 둡니다.
|
||||
- 이 템플릿은 Gemini CLI의 `GEMINI.md`, Skill, custom command, hook, subagent 구조를 기준으로 합니다.
|
||||
|
||||
Reference in New Issue
Block a user