deuk-agent-rule 2.2.1 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +177 -132
- package/LICENSE +0 -0
- package/README.ko.md +103 -79
- package/README.md +102 -77
- package/bundle/.cursorrules +7 -7
- package/bundle/AGENTS.md +70 -87
- package/bundle/rules/delivery-and-parallel-work.mdc +26 -26
- package/bundle/rules/git-commit.mdc +24 -18
- package/bundle/rules/multi-ai-workflow.mdc +0 -1
- package/bundle/templates/MODULE_RULE_TEMPLATE.md +24 -0
- package/bundle/templates/TICKET_TEMPLATE.md +40 -0
- package/package.json +5 -3
- package/scripts/changelog-polish.mjs +0 -0
- package/scripts/cli-args.mjs +11 -0
- package/scripts/cli-init-commands.mjs +27 -2
- package/scripts/cli-init-logic.mjs +4 -0
- package/scripts/cli-prompts.mjs +17 -45
- package/scripts/cli-ticket-commands.mjs +206 -52
- package/scripts/cli-ticket-logic.mjs +322 -46
- package/scripts/cli-utils.mjs +64 -1
- package/scripts/cli.mjs +20 -6
- package/scripts/merge-logic.mjs +0 -0
- package/scripts/sync-bundle.mjs +0 -0
- package/scripts/sync-oss.mjs +3 -10
- package/README.ko.pdf +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,140 +4,185 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
6
|
|
|
7
|
-
## [2.
|
|
7
|
+
## [2.3.1] - 2026-04-17
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
### Changed
|
|
11
11
|
|
|
12
|
-
-
|
|
12
|
+
- **readme:** add changelog and automated release instructions
|
|
13
13
|
|
|
14
|
-
## [2.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
55
|
-
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
###
|
|
62
|
-
|
|
63
|
-
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
## [1.0.
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
14
|
+
## [2.3.0] - 2026-04-17
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
|
|
19
|
+
- AI 파이프라인 연동 기반 및 선택적 동기화 시스템 고도화
|
|
20
|
+
- **cli:** add --submodule filter to ticket list command
|
|
21
|
+
- **cli:** restore ticket archive and reports workflows to modular architecture
|
|
22
|
+
- **rules:** advance rules for Unity Client, WebApp, and C++ Server hybrid environment
|
|
23
|
+
- **ticket:** implementation of decentralized ticket management & sharing policy
|
|
24
|
+
- **ticket:** upgrade to V2 YAML Front-matter and Categorized List
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Fixed
|
|
28
|
+
|
|
29
|
+
- **ticket:** deprecate LATEST.md, unify pointer to ACTIVE_TICKET.md
|
|
30
|
+
- **ticket:** DeukAgentRules 현재 진행중인 티켓 안나오던 문제 해결
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
### Changed
|
|
34
|
+
|
|
35
|
+
- **readme:** clarify YAML front matter preservation and distributed ticket workflow for v2.2.2
|
|
36
|
+
- **readme:** restore count headers and npm badges
|
|
37
|
+
- **rules:** enforce CLI usage for ticket reading to prevent manual JSON parsing
|
|
38
|
+
- update CLI reference with close and migrate commands
|
|
39
|
+
|
|
40
|
+
## [1.0.18] - 2026-04-12
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
### Added
|
|
44
|
+
|
|
45
|
+
- **ai:** map conversational ticket requests to implicit CLI execution
|
|
46
|
+
- **cli:** implement ticket archive and reporting workflow
|
|
47
|
+
- **rules:** map conversational ticket aliases to implicit CLI execution
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### Changed
|
|
51
|
+
|
|
52
|
+
- **readme:** add ticket archive and reports CLI usage to documentation
|
|
53
|
+
- **readme:** describe natural language CLI prompting alternatives
|
|
54
|
+
- **readme:** provide explicit conversational prompt examples inside option tables
|
|
55
|
+
- **readme:** provide explicit update guide
|
|
56
|
+
- **rules:** add prompting guide and execution report archival rule
|
|
57
|
+
|
|
58
|
+
## [1.0.17] - 2026-04-06
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
### Fixed
|
|
62
|
+
|
|
63
|
+
- **template:** move ticket repo-relative marker to bottom
|
|
64
|
+
|
|
65
|
+
## [1.0.16] - 2026-04-05
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
### Added
|
|
69
|
+
|
|
70
|
+
- **workflow:** add auto-verification and final report to agent workflows
|
|
71
|
+
|
|
72
|
+
## [1.0.15] - 2026-04-05
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
### Added
|
|
76
|
+
|
|
77
|
+
- migrate and rename handoff terminology to ticket in CLI and templates
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
### Changed
|
|
81
|
+
|
|
82
|
+
- Add strict rule for DeukPack namespace requirement
|
|
83
|
+
- completely eradicate legacy Handoff references from AGENTS.md, templates, and mdc rules
|
|
84
|
+
- Enforce DeukPack code format and API strictly as a hard rule
|
|
85
|
+
- refactor README usage guide and workflow
|
|
86
|
+
|
|
87
|
+
## [1.0.14] - 2026-04-02
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
### Added / 추가됨
|
|
91
|
+
|
|
92
|
+
- **cli:** extend merge tooling and sync publish docs / 병합 도구 및 배포 문서 동기화 스크립트 확장
|
|
93
|
+
- **rules:** forbid 'sync' word in commit titles in agent rules / 커밋 제목 내 'sync' 금지 구문 룰 추가
|
|
94
|
+
- **handoff:** add indexed handoff workflow and CLI / 인덱스 기반 Handoff 워크플로 및 CLI 신설
|
|
95
|
+
- **architecture:** migrate template architecture to zero-touch NPM bundle scaffolding / 제로-터치 NPM 스캐폴딩으로 템플릿 아키텍처 개편
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
### Fixed / 수정됨
|
|
99
|
+
|
|
100
|
+
- **cli:** resolve html entity syntax error in template generator / 템플릿 생성기(init) 내부의 HTML 엔티티 문법 에러 핫픽스
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
### Changed / 변경됨
|
|
104
|
+
|
|
105
|
+
- **docs:** public-facing RELEASING and changelog wording; sync-bundle comment / 외부 공개용 릴리즈 가이드 및 동기화 스크립트 주석 갱신
|
|
106
|
+
- **docs:** update README with token efficiency mechanism and zero-touch template scaffolding / 리드미(README)에 토큰 비용 차단 메커니즘 설정 및 제로 터치 스캐폴딩 문서 개편
|
|
107
|
+
|
|
108
|
+
## [1.0.13] - 2026-03-28
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
### Fixed
|
|
112
|
+
|
|
113
|
+
- **deuk-agent-rule:** `printHandoffTip` missing in CLI (handoff tip after `init`)
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
### Changed
|
|
117
|
+
|
|
118
|
+
- **docs:** README § Handoffs; GitHub About text; npm keywords; CLI survey adds Claude, Windsurf, JetBrains AI Assistant
|
|
119
|
+
- **agents:** optional `.cursor/plans/*.plan.md` mirror for plan-style UI; chat `Path:` line and optional first-line path in handoff files
|
|
120
|
+
- **deuk-agent-rule:** `init` prints a short handoff tip after ensuring `.deuk-agent-handoff/`
|
|
121
|
+
- **deuk-agent-rule:** default `--rules prefix` overwrites existing `deuk-agent-rule-*.mdc` on repeat `init` (package updates without a separate `merge`)
|
|
122
|
+
- **deuk-agent-rule:** `.deuk-agent-rule.config.json` stores interactive choices; later `init` reuses them (`--interactive` to change; `--non-interactive` for CI only)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
## [1.0.12] - 2026-03-27
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
### Fixed
|
|
129
|
+
|
|
130
|
+
- **ci:** release workflow runs on pushes to `master`
|
|
131
|
+
|
|
132
|
+
### Changed
|
|
133
|
+
|
|
134
|
+
- **agents:** require full repo-root paths for handoff file links
|
|
135
|
+
|
|
136
|
+
## [1.0.11] - 2026-03-26
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
### Added
|
|
140
|
+
|
|
141
|
+
- **ci:** GitHub Release workflow for version tags and `chore(release):` commits on `main` / `master`
|
|
142
|
+
|
|
143
|
+
## [1.0.10] - 2026-03-26
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
### Added
|
|
147
|
+
|
|
148
|
+
- **deuk-agent-rule:** changelog template headers without per-commit links
|
|
149
|
+
|
|
150
|
+
## [1.0.9] - 2026-03-27
|
|
151
|
+
|
|
152
|
+
### Added
|
|
153
|
+
|
|
154
|
+
- **deuk-agent-rule:** release changelog tooling; handoff directory gitignore; pre-work handoff scan; AGENTS inject newline fix
|
|
155
|
+
|
|
156
|
+
### Changed
|
|
157
|
+
|
|
158
|
+
- **agents:** DeukAgentRules/handoff/LATEST.md handoff path for consumer repos
|
|
159
|
+
|
|
160
|
+
## [1.0.8] - 2026-03-27
|
|
161
|
+
|
|
162
|
+
### Added
|
|
163
|
+
|
|
164
|
+
- This changelog and npm `files` entry so releases are traceable.
|
|
165
|
+
|
|
166
|
+
## [1.0.7] - 2026-03-27
|
|
167
|
+
|
|
168
|
+
### Added
|
|
169
|
+
|
|
170
|
+
- `init`: create `.deuk-agent-handoff/` and append `.gitignore` rules for local handoffs.
|
|
171
|
+
- CLI: pre-work handoff scan; `publish/AGENTS.md` and `multi-ai-workflow.mdc` updates.
|
|
172
|
+
|
|
173
|
+
### Fixed
|
|
174
|
+
|
|
175
|
+
- AGENTS tagged-region merge: trailing newline after injected blocks.
|
|
176
|
+
|
|
177
|
+
## [1.0.5] - 2026-03-26
|
|
178
|
+
|
|
179
|
+
### Changed
|
|
180
|
+
|
|
181
|
+
- README and package metadata (Deuk Family tagline, npm keywords, GitHub Topics note).
|
|
182
|
+
|
|
183
|
+
## [1.0.4] - 2026-03-26
|
|
184
|
+
|
|
185
|
+
### Changed
|
|
186
|
+
|
|
187
|
+
- Release packaging includes `package-lock.json` for reproducible installs.
|
|
188
|
+
- README: absolute links for the npm package page.
|
package/LICENSE
CHANGED
|
File without changes
|
package/README.ko.md
CHANGED
|
@@ -1,125 +1,149 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<br />
|
|
3
3
|
<h1>DeukAgentRules (득에이전트룰스)</h1>
|
|
4
|
-
<p
|
|
4
|
+
<p>
|
|
5
|
+
<a href="https://www.npmjs.com/package/deuk-agent-rule"><img src="https://img.shields.io/npm/v/deuk-agent-rule.svg" alt="npm version" /></a>
|
|
6
|
+
<a href="https://www.npmjs.com/package/deuk-agent-rule"><img src="https://img.shields.io/npm/dt/deuk-agent-rule.svg" alt="npm downloads" /></a>
|
|
7
|
+
</p>
|
|
8
|
+
<p><b>고신호(High-Signal) 인코딩 & 규칙 표준화 엔진</b></p>
|
|
5
9
|
<p><a href="https://deukpack.app">Deuk Family</a> 생태계의 핵심 에이전트 인프라</p>
|
|
6
10
|
</div>
|
|
7
11
|
|
|
8
|
-
|
|
9
|
-
<a href="https://www.npmjs.com/package/deuk-agent-rule"><img src="https://img.shields.io/npm/v/deuk-agent-rule.svg?color=black&style=flat-square" alt="NPM Version" /></a>
|
|
10
|
-
<a href="https://www.npmjs.com/package/deuk-agent-rule"><img src="https://img.shields.io/npm/dm/deuk-agent-rule.svg?color=blue&style=flat-square" alt="NPM Downloads" /></a>
|
|
11
|
-
<a href="https://github.com/joygram/DeukAgentRules"><img src="https://img.shields.io/github/stars/joygram/DeukAgentRules.svg?style=flat-square&color=orange" alt="GitHub Stars" /></a>
|
|
12
|
-
<a href="https://github.com/joygram/DeukAgentRules/blob/master/LICENSE"><img src="https://img.shields.io/npm/l/deuk-agent-rule.svg?style=flat-square" alt="License" /></a>
|
|
13
|
-
<br /><br />
|
|
14
|
-
<a href="https://github.com/joygram/DeukAgentRules/blob/master/README.md">English</a>
|
|
15
|
-
</div>
|
|
12
|
+
> **Deuk Family**의 핵심 모듈 가운데 하나입니다. 구조화된 규칙으로 AI 에이전트의 협업 효율을 극대화합니다.
|
|
16
13
|
|
|
17
|
-
|
|
14
|
+
**npm 패키지:** `deuk-agent-rule` · **CLI:** `deuk-agent-rule`
|
|
18
15
|
|
|
19
|
-
|
|
16
|
+
**English:** [README.md](https://github.com/joygram/DeukAgentRules/blob/master/README.md)
|
|
20
17
|
|
|
21
|
-
|
|
18
|
+
Cursor, GitHub Copilot, Gemini / Antigravity, Claude, Windsurf, JetBrains AI Assistant 등 다양한 코딩 에이전트와 함께 활용하는 **서브모듈 격리형 협업 프레임워크**입니다.
|
|
19
|
+
프로젝트 규칙(`AGENTS.md`, `.cursor/rules`)을 표준화하고, **티켓 기반 워크플로우**를 통해 쓸데없는 프롬프트 토큰 낭비와 AI의 맥락 환각(Hallucination)을 강력하게 방어합니다.
|
|
22
20
|
|
|
23
|
-
>
|
|
24
|
-
>
|
|
21
|
+
> **🚀 핵심 가치:**
|
|
22
|
+
> 세션당 약 1,500~2,000 토큰에 달하는 강제 로드 컨텍스트를 200~300 토큰 수준으로 압축합니다. AI가 모놀리식 전체 레포지토리를 헤매지 않도록, 작업이 속한 **"해당 서브모듈(Submodule)"** 내부에 티켓을 격리하여 가장 정확한 맥락에서 작업을 지시할 수 있습니다.
|
|
25
23
|
|
|
26
24
|
---
|
|
27
25
|
|
|
28
|
-
##
|
|
26
|
+
## 🛠️ 워크스페이스 초기화 (Getting Started)
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
프로젝트 루트에서 최초 1회 패키지를 설치하고 초기화합니다.
|
|
31
29
|
|
|
32
30
|
```bash
|
|
31
|
+
npm install deuk-agent-rule
|
|
33
32
|
npx deuk-agent-rule init
|
|
34
33
|
```
|
|
35
34
|
|
|
36
|
-
|
|
37
|
-
-
|
|
35
|
+
초기화 시 프로젝트의 **기술 스택**, **사용 중인 에이전트 툴**, 그리고 **티켓 공유 정책**을 묻는 대화형 질문이 나타납니다.
|
|
36
|
+
- **티켓 공유 정책**: 각 저장소 단위의 `.deuk-agent-ticket/` 폴더를 Git으로 추적하여 팀과 공유할지, 아니면 로컬 전용으로 둘지 결정합니다.
|
|
37
|
+
- 스택 변경이 필요 없으면 이후에는 `npx deuk-agent-rule init`만 쳐서 규칙을 최신화할 수 있습니다.
|
|
38
|
+
- CI나 스크립트 환경에서는 대화형 입력을 끄기 위해 `--non-interactive` 파라미터를 추가하세요.
|
|
38
39
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
### 🔄 규칙 패키지 업데이트 (Update Rules)
|
|
41
|
+
새로운 에이전트 워크플로우나 템플릿이 릴리즈되었을 경우, 패키지를 최신 버전으로 갱신하고 `init` 명령을 재실행하여 변경 사항을 쉽게 프로젝트에 동기화할 수 있습니다.
|
|
42
|
+
기존 환경 설정(`.deuk-agent-rule.config.json`)을 기억하고 있으므로 `--non-interactive`를 주면 묻지도 따지지도 않고 규칙만 즉시 최신화해 줍니다.
|
|
43
|
+
```bash
|
|
44
|
+
npm install deuk-agent-rule@latest
|
|
45
|
+
npx deuk-agent-rule init --non-interactive
|
|
46
|
+
```
|
|
42
47
|
|
|
43
|
-
|
|
48
|
+
---
|
|
44
49
|
|
|
45
|
-
|
|
50
|
+
## 🎯 핵심 워크플로우 (The Distributed Ticket Workflow)
|
|
46
51
|
|
|
47
|
-
|
|
48
|
-
|---|---|---|
|
|
49
|
-
| 1. 탐색 & 계획 | 추론 AI | 코드베이스 분석, 구현 계획 수립 |
|
|
50
|
-
| 2. 결정 | 사용자 | 계획 검토 및 승인 |
|
|
51
|
-
| 3. 티켓 발행 (등록) | 추론 AI | 승인된 계획을 .deuk-agent-ticket/ 에 저장 |
|
|
52
|
-
| 4. 실행 | IDE 에이전트 | 티켓만 읽고 범위 내에서 코딩 |
|
|
53
|
-
| 5. 리스크 분석 (자체검증) | IDE 에이전트 | 테스트 완료 후 빌드 산출물 자체의 결함 및 잠재 리스크 필수 분석 |
|
|
54
|
-
| 6. 보고 & 종결 | 사용자+에이전트 | 리포트 검토 후 npx deuk-agent-rule ticket close --latest |
|
|
52
|
+
`npx deuk-agent-rule init`을 실행하면 현재 저장소 루트(서브모듈 포함)에 아래 두 개의 핵심 폴더가 등장합니다.
|
|
55
53
|
|
|
56
|
-
|
|
54
|
+
1. **`.deuk-agent-templates/` (에이전트 템플릿)**: AI가 어떠한 양식으로 작업을 처리하고 보고해야 하는지 정의된 공식 뼈대(`TICKET_TEMPLATE.md`)가 지정됩니다.
|
|
55
|
+
2. **`.deuk-agent-ticket/` (티켓 실행 공간)**: 실제 지시서(`TICKET-XXX.md`)가 발급되는 공간입니다. 서브모듈 단위로 티켓을 분산 관리할 수 있어 서브모듈만 떼어가도 히스토리가 유지됩니다. (공유 정책에 따라 `.gitignore`에 자동으로 기재될 수 있습니다.)
|
|
57
56
|
|
|
58
|
-
|
|
57
|
+
이러한 샌드박스 폴더들을 활용하여 스퍼트를 올리는 **최적의 AI 코딩 3단계**는 다음과 같습니다.
|
|
59
58
|
|
|
60
|
-
1
|
|
61
|
-
|
|
62
|
-
[User] "분석 저장소모듈"
|
|
63
|
-
[Agent] (코드베이스 분석 후 방향 제안)
|
|
64
|
-
[User] "계획 해당 분석내용을 진행할 계획 및 설계"
|
|
65
|
-
[Agent] (.deuk-agent-ticket/main/storage-20260406.md 에 티켓 저장)
|
|
66
|
-
```
|
|
59
|
+
### [Step 1] 티켓 발급 및 계층적 관리 (Ticket Creation & Delegation)
|
|
60
|
+
AI에게 중구난방으로 지시하지 마세요. 명확한 티켓을 발급하여 **문맥(Context)을 소속 저장소 단위로 좁혀주어야** 합니다.
|
|
67
61
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
[User] "진행 (생략 시 최신 분석 내용 진행)"
|
|
71
|
-
[Agent] (티켓을 읽고 코드 변경 후 자체 검토 보고)
|
|
72
|
-
[User] "검증 이슈 및 결함, 잠재오류"
|
|
73
|
-
[Agent] (티켓 제약 사항 준수 검토 및 결함 탐색 완료)
|
|
62
|
+
```bash
|
|
63
|
+
npx deuk-agent-rule ticket create --topic ui-refactoring --group frontend --project DeukUI
|
|
74
64
|
```
|
|
65
|
+
명령어를 치면 `.deuk-agent-ticket/` 폴더 내에 템플릿이 입혀진 `TICKET-ui-refactoring.md` 파일이 생성됩니다.
|
|
75
66
|
|
|
76
|
-
|
|
67
|
+
> [!IMPORTANT]
|
|
68
|
+
> **티켓 작성 (주의사항)**: 새로 생성된 티켓에는 **YAML Front Matter** (`--- id: ... ---`)가 포함되어 있습니다. 내용을 작성할 때 **파일 전체를 덮어쓰지 마십시오.** 반드시 헤더 아래에 내용을 추가하거나 부분 편집 도구를 사용하여 기존 YAML 메타데이터를 보존해야 합니다. 프론트매터가 삭제되면 티켓 인덱싱 시스템이 파손됩니다.
|
|
77
69
|
|
|
78
|
-
|
|
70
|
+
개발자는 이 파일 내의 `[Target Submodule]` 속성에 AI가 들여다보아야 할 고립된 경로(예: `src/client`)만을 명시해 줍니다.
|
|
79
71
|
|
|
80
|
-
|
|
72
|
+
### [Step 2] 세션 인수인계 및 에이전트 격리 실행 (Agent Execution)
|
|
73
|
+
AI 챗봇(Cursor, Gemini 등)에게 다음과 같이 단 한 줄의 명령만 내립니다.
|
|
74
|
+
> *"방금 발급된 `.deuk-agent-ticket/TICKET-ui-refactoring.md` 티켓을 열고, 명시된 타겟 서브모듈 내에서 체크리스트를 따라 작업을 시작해"*
|
|
81
75
|
|
|
82
|
-
|
|
83
|
-
|---|---|
|
|
84
|
-
| 분석 | 분석 [주제/모듈] |
|
|
85
|
-
| 계획 | 계획 해당 분석내용을 진행할 계획 및 설계 |
|
|
86
|
-
| 진행 | 진행 [티켓번호] (생략 시 최신 진행) |
|
|
87
|
-
| 검증 | 검증 이슈 및 결함, 잠재오류 |
|
|
88
|
-
| 조회 | /티켓 |
|
|
89
|
-
|
|
90
|
-
---
|
|
76
|
+
AI는 티켓 내에 정의된 Phase(진행 단계)를 충실히 읽고, **자신이 다루지 않아도 될 타 모듈의 불필요한 연산을 원천 차단**한 채 가장 최적화된 코드만 작성합니다. (이 과정을 통해 토큰 비용이 획기적으로 줄어듭니다.)
|
|
91
77
|
|
|
92
|
-
###
|
|
78
|
+
### [Step 3] 검증 및 상태 갱신 (Review & Closure)
|
|
79
|
+
AI가 코드를 작성하며 티켓 내 마크업의 체크박스(`[x]`)를 갱신합니다. 에이전트의 세션(기억 한계)이 가득 차면, 티켓 내용만 디스크에 남겨둔 채 챗봇 창을 끄고 새 창을 열어 다시 [Step 2]를 지시하면 깔끔하게 인수인계가 이루어집니다.
|
|
80
|
+
모든 작업이 끝나면 Phase 상태를 `[Phase 완료]`로 승급시킵니다. 터미널 명령어를 직접 치는 대신, **AI 챗봇 프롬프트에 "현재 진행 중인 티켓 리스트를 보여줘" 또는 "완료된 티켓들을 보고서와 함께 아카이브 해 줘"라고 자연어로 지시**하여 AI가 알아서 CLI를 호출해 리스트업 및 관리하게 위임할 수도 있습니다.
|
|
81
|
+
직접 터미널에서 상태를 파악하시려면 아래 명령을 사용하세요:
|
|
93
82
|
|
|
94
83
|
```bash
|
|
95
|
-
npx deuk-agent-rule ticket create --topic login-api --project MyProject --content "## Task: ..."
|
|
96
84
|
npx deuk-agent-rule ticket list
|
|
97
|
-
npx deuk-agent-rule ticket close --latest
|
|
98
85
|
```
|
|
99
|
-
|
|
100
|
-
(
|
|
101
|
-
|
|
102
|
-
|
|
86
|
+
```text
|
|
87
|
+
📦 Agent Tickets (Direct System Scan):
|
|
88
|
+
✅ [TICKET-DEUKUI-Button.md]
|
|
89
|
+
Title: 버튼 컴포넌트 추가
|
|
90
|
+
Target: DeukUI
|
|
91
|
+
Status: [완료]
|
|
92
|
+
🔨 [TICKET-ui-refactoring.md]
|
|
93
|
+
Title: 플러그인 UI 리팩토링
|
|
94
|
+
Target: DeukUI
|
|
95
|
+
Status: [진행 중]
|
|
96
|
+
```
|
|
103
97
|
|
|
104
98
|
---
|
|
105
99
|
|
|
106
|
-
##
|
|
100
|
+
## 🤖 에이전트 프롬프팅 가이드 (Prompting Guide)
|
|
107
101
|
|
|
108
|
-
|
|
109
|
-
자세한 기술 구현 아키텍처와 덮어쓰기 방어 로직은 동작 원리 가이드를 참조하세요.
|
|
102
|
+
패키지를 설치하고 초기화하더라도, 일부 AI 에이전트(Cursor, Gemini 등)가 최초 세션에서 시스템 규칙 파일(`AGENTS.md`)을 능동적으로 읽어들이지 않는 경우가 종종 발생합니다. **새로운 챗봇 세션을 시작할 때마다 아래의 프롬프트를 복사하여 AI에게 첫 지시로 내려주면, 환각이나 룰 이탈을 완벽하게 예방할 수 있습니다.**
|
|
110
103
|
|
|
111
|
-
###
|
|
104
|
+
### 1. 전역 시스템 룰 숙지 강제 (필수)
|
|
105
|
+
> *"본격적인 작업을 시작하기 전에 워크스페이스 Root에 있는 `AGENTS.md` (DeukAgentRules) 문서를 끝까지 읽어줘. 현재 프로젝트의 핵심 룰, Identity, 그리고 티켓 워크플로우에 대해 완벽히 숙지해야 해. 숙지를 마쳤다면 내용을 요약하지 말고 '규칙 확인 완료'라고 짧게 대답한 뒤 첫 지시를 대기해."*
|
|
112
106
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
| --non-interactive | CI/Headless 모드 (질의응답 없이 기본값/저장된 설정 즉시 적용) |
|
|
116
|
-
| --tag <id> | 기본 마커 영역(<!-- <id>:begin/end -->)을 사용자 정의 ID로 오버라이드 |
|
|
117
|
-
| --agents inject | 기존 AGENTS.md에 지능형 마커 주입 (또는 skip, overwrite) |
|
|
118
|
-
| --rules prefix | 지능형 파일 접두사를 활용하여 .cursor/rules 모듈 업데이트 |
|
|
107
|
+
### 2. 티켓 기반 타깃 작업 시작 (권장)
|
|
108
|
+
> *"방금 설치/발급된 `.deuk-agent-ticket/TICKET-XXX.md` 티켓을 열고, 현재 저장소(Target Submodule) 경로 내에서만 파일 탐색 및 작업을 진행해. 다른 서브모듈로 벗어나거나 임의의 파일을 건드리지 마."*
|
|
119
109
|
|
|
120
110
|
---
|
|
121
111
|
|
|
122
|
-
##
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
112
|
+
## ⚙️ 부가 옵션 및 CLI 레퍼런스
|
|
113
|
+
|
|
114
|
+
업무 자동화 및 타깃 제어를 위한 상세 옵션입니다.
|
|
115
|
+
|
|
116
|
+
### Ticket 기반 명령
|
|
117
|
+
아래 CLI 명령어들은 터미널에 직접 입력하는 대신, **AI 챗봇에게 자연어 프롬프트로 지시**하여 실행을 위임할 수 있습니다.
|
|
118
|
+
|
|
119
|
+
| 커맨드 | 설명 / 자연어 프롬프트 지시 예시 |
|
|
120
|
+
|--------|------|
|
|
121
|
+
| `npx deuk-agent-rule ticket create ...` | 신규 티켓 문서 생성 (`--group`, `--project`, `--submodule` 지정 가능) <br>💬 *"새 티켓 만들어 (주제: refactor, 타겟: sub1)"* |
|
|
122
|
+
| `npx deuk-agent-rule ticket list` | 활성 티켓의 현재 상태 및 리스트업 (`--archived`, `--all`, `--json` 지원) <br>💬 *"티켓 리스트"* |
|
|
123
|
+
| `npx deuk-agent-rule ticket use --latest ...` | 빌드 파이프라인 연동을 위해 최근 티켓의 파일 경로만 반환 <br>💬 *"최근 티켓 경로"* |
|
|
124
|
+
| `npx deuk-agent-rule ticket close ...` | 파일을 물리적으로 이동시키지 않고 상태만 완료로 잠금(Soft-close) <br>💬 *"현재 티켓 상태 닫아 (완료)"* |
|
|
125
|
+
| `npx deuk-agent-rule ticket upgrade` | 과거 티켓 구조를 V2(YAML FM)로 마이그레이션 및 서브모듈 분산(DEFRAG) 실행 <br>💬 *"티켓 V2 업그레이드"* |
|
|
126
|
+
| `npx deuk-agent-rule ticket archive ...` | 완료된 티켓을 안전하게 보관소(`archive/`)로 이동 및 갱신 <br>💬 *"현재 티켓 아카이브해 (보고서 첨부)"* |
|
|
127
|
+
| `npx deuk-agent-rule ticket reports` | 영구 보관된 에이전트 작업 보고서(`reports/`) 목록 조회 <br>💬 *"완료된 티켓 보고서 목록"* |
|
|
128
|
+
|
|
129
|
+
### Init 고급 옵션
|
|
130
|
+
| 플래그 | 기본값 | 설명 |
|
|
131
|
+
|--------|--------|------|
|
|
132
|
+
| `--non-interactive` | 끔 | CI/스크립트용. 대화형 인터페이스를 끄고 기존 설정(`.config.json`)을 채택 |
|
|
133
|
+
| `--interactive` | 끔 | 이미 생성된 설정값이 있어도 무시하고 강제로 다시 묻기 설정 시작 |
|
|
134
|
+
| `--cwd <path>` | 현재 디렉터리 | 타깃이 되는 프로젝트의 워크스페이스 Root 절대/상대경로 지정 |
|
|
135
|
+
| `--dry-run` | 끔 | 실제 파일을 생성/변조하지 않고 콘솔에 동작 결과 텍스트만 출력 |
|
|
136
|
+
| `--backup` | 끔 | `AGENTS.md`나 룰 파일 덮어쓰기 전 원본을 `*.bak`으로 안전 보관 |
|
|
137
|
+
|
|
138
|
+
## 📦 릴리즈 및 체인지로그 (Changelog) 정책
|
|
139
|
+
|
|
140
|
+
본 패키지(`DeukAgentRules`)의 시스템 템플릿 추가 및 기능 변경을 배포하기 전에 반드시 다음 절차를 따라 릴리즈 프로세스를 진행해야 합니다:
|
|
141
|
+
|
|
142
|
+
1. **변경사항 커밋**: 문서 및 룰 스크립트 수정 완료 후 `git add` & `git commit` (Conventional Commits 형식 권장, ex: `feat: ...`, `fix: ...`)
|
|
143
|
+
2. **버전 펌핑 및 체인지로그 자동 생성**:
|
|
144
|
+
* Patch (버그 수정): `npm run bump:patch`
|
|
145
|
+
* Minor (기능 추가): `npm run bump:minor`
|
|
146
|
+
* Major (룰/템플릿 대격변): `npm run bump:major`
|
|
147
|
+
|
|
148
|
+
위 명령어를 실행하면 내부적으로 `commit-and-tag-version` 툴이 작동되어 `package.json` 버전 상향, `CHANGELOG.md` 자동 갱신 요약, 릴리즈 커밋, 그리고 태깅 작업까지 한번에 즉시 처리됩니다.
|
|
149
|
+
3. **분산 배포 보정 (OSS Sync)**: 에이전트를 통해 `npm run sync:oss`를 실행하면 자동화 스크립트가 릴리즈 에셋을 스캔하여 OSS 미러 저장소(`DeukAgentRulesOSS`)로 최종적인 퍼블리시 버전을 복제 및 반영합니다.
|