@decencia/ch-cli 1.31.9 → 1.31.10
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/agent/2t-decencia-channel-issue-coder.md +1 -1
- package/agent/2t-decencia-channel-pr-merger.md +1 -1
- package/agent/2t-decencia-channel-terraformer.md +1 -1
- package/dist/commands/screens.js +1 -1
- package/package.json +1 -1
- package/skill/2t-decencia-channel-change-manager/SKILL.md +1 -1
- package/skill/2t-decencia-channel-change-propagation-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-cli-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-db-schema-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-github-issue/SKILL.md +1 -1
- package/skill/2t-decencia-channel-orchestrator/SKILL.md +1 -1
- package/skill/2t-decencia-channel-policy-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-prd-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-project-bootstrap/SKILL.md +1 -1
- package/skill/2t-decencia-channel-screen-v2/SKILL.md +4 -33
- package/skill/2t-decencia-channel-spec-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-sprint-builder-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-sprint-runner/SKILL.md +1 -1
- package/skill/2t-decencia-channel-sqa-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-userflow-v2/SKILL.md +1 -1
- package/skill/2t-decencia-channel-work-status-v2/SKILL.md +1 -1
|
@@ -3,7 +3,7 @@ name: 2t-decencia-channel-issue-coder
|
|
|
3
3
|
description: GitHub issue 1개를 입력으로 받아 끝까지 처리하는 코딩 에이전트. 이슈 읽기 → 소통채널 spec/SQA 확인 → git worktree+브랜치에서 구현 → 자체 소프트리뷰 루프 → unittest + SQA → PR 생성 → 소통채널 workStatus·이슈 기록. 다수 병렬 실행 전제, PR까지만(머지·base 브랜치 직접 push·이슈 close는 사람).
|
|
4
4
|
tools: Read, Write, Edit, Grep, Glob, Bash, Agent
|
|
5
5
|
model: opus
|
|
6
|
-
version: 1.31.
|
|
6
|
+
version: 1.31.10
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
## 역할
|
|
@@ -3,7 +3,7 @@ name: 2t-decencia-channel-pr-merger
|
|
|
3
3
|
description: issue-coder가 낸 PR을 기본 완전 자율로 base 브랜치(기본 브랜치 또는 sprint 통합 브랜치)에 머지하는 에이전트. 핵심 역량은 다수 병렬 worktree가 만든 충돌을 작업 의도 기반(semantic)으로 해결하는 것. CI green+충돌없음이면 바로 squash 머지, 충돌이면 의도대로 해결 후 테스트로 검증하여 머지. 재SQA·전면 재리뷰는 하지 않음. 다수 PR은 직렬 머지.
|
|
4
4
|
tools: Read, Write, Edit, Grep, Glob, Bash
|
|
5
5
|
model: opus
|
|
6
|
-
version: 1.31.
|
|
6
|
+
version: 1.31.10
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
## 역할
|
|
@@ -3,7 +3,7 @@ name: 2t-decencia-channel-terraformer
|
|
|
3
3
|
description: 소통채널을 쓰지 않던 기존 코드베이스를 역분석하여 소통채널 프로젝트로 편입(terraforming)하는 자율 에이전트. 코드가 single source of truth — 코드를 읽어 DB 스키마 → 기능명세(spec) → PRD를 bottom-up으로 역생성한다(SQA 제외). 대량 분석은 서브에이전트 병렬, 코드로 못 메우는 의도는 [추정]으로 채우고 "사람확인 질문 리스트"를 산출물로 남긴다. PR/머지·이슈 발행은 하지 않음.
|
|
4
4
|
tools: Read, Write, Edit, Grep, Glob, Bash, Agent
|
|
5
5
|
model: opus
|
|
6
|
-
version: 1.31.
|
|
6
|
+
version: 1.31.10
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
## 역할
|
package/dist/commands/screens.js
CHANGED
|
@@ -30,7 +30,7 @@ const STRUCTURE_HELP = `
|
|
|
30
30
|
화면설계서 구조 필드 — 각각 JSON 배열 파일이며 **통째 교체**다
|
|
31
31
|
(작성 표준: 스킬 2t-decencia-channel-screen-v2 §5):
|
|
32
32
|
|
|
33
|
-
--areas <jsonFile> (ScreenArea[]) — 컴포넌트별 설명.
|
|
33
|
+
--areas <jsonFile> (ScreenArea[]) — 컴포넌트별 설명. 컴포넌트마다 무엇을 보여주고 어떻게 동작하는지 한두 줄.
|
|
34
34
|
areas.json:
|
|
35
35
|
[
|
|
36
36
|
{ "name": "주문 요약", "description": "ORDERS.주문번호, 상품명, 결제금액" },
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 2t-decencia-channel-change-manager
|
|
3
3
|
description: 기존 소통채널 프로젝트의 기능 추가/수정을 사용자와 대화로 명확화 → 전파 스킬로 연관 PRD/spec/DB/SQA 일괄 갱신 → 변경으로 생긴 새 할일을 GitHub 이슈로 발행하는 오케스트레이터 스킬. (1)대화로 변경 내용 확정 → (2)[게이트] 영향 범위 확인 후 전파 적용 → (3)[게이트] 할일 목록 확인 후 이슈 발행. "이 기능 바꿀래"·"기획 수정"·"이거 추가해줘(기존 프로젝트)" 류 요청 시.
|
|
4
4
|
allowed-tools: Bash(ch:*) Bash(git:*) Bash(gh:*) Read Write
|
|
5
|
-
version: 1.31.
|
|
5
|
+
version: 1.31.10
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
<!-- ch-version-gate -->
|
|
@@ -10,7 +10,7 @@ description: |
|
|
|
10
10
|
(4) ch screens 명령(list/get/create/update/delete/migrate)으로 화면을 다루거나 레거시 프로젝트를 화면 모드로 이관할 때,
|
|
11
11
|
(5) spec의 화면 연결을 CLI로 걸거나 풀 때 (`ch specs screen-refs`),
|
|
12
12
|
(6) Spec ID를 JIRA 스타일(`LOGIN-001`)로 직접 지정할 때 (`ch specs create --id`).
|
|
13
|
-
version: 1.31.
|
|
13
|
+
version: 1.31.10
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- ch-version-gate -->
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 2t-decencia-channel-github-issue
|
|
3
3
|
description: gh CLI로 현재 repo에 GitHub 이슈를 작성한다. 이슈 1개=유형 1개(feat/fix/bug), 표준 본문 양식(작업내용·관련 명세 백링크·완료조건)으로 발행. "이슈 만들어줘"/"깃헙 이슈로 등록해줘" 요청 시, 또는 소통채널 기획·명세 작업 후 처리할 일들을 GitHub 이슈로 옮길 때 사용. 멱등성/중복방지·확인단계는 다루지 않음(요청대로 바로 생성).
|
|
4
4
|
allowed-tools: Bash(gh:*) Bash(git:*) Read Write
|
|
5
|
-
version: 1.31.
|
|
5
|
+
version: 1.31.10
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
<!-- ch-version-gate -->
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 2t-decencia-channel-orchestrator
|
|
3
3
|
description: 소통채널 작업의 단일 진입점(디스패처). 사용자 요청을 듣고 7종(bootstrap·terraformer·change-manager·github-issue·issue-coder·pr-merger·sprint-runner) 중 적절한 곳으로 라우팅하고, 필요하면 여러 단계를 순차 오케스트레이션한다. 대화형 스킬은 메인 세션에서 Skill로, 자율 에이전트는 Agent로 위임. "소통채널 작업 해줘"·"이거 어떻게 처리하지?"처럼 무엇부터 할지 모를 때, 또는 신규기획/코드편입/기획변경/이슈/구현/머지/스프린트실행 어디로든 시작할 때.
|
|
4
4
|
allowed-tools: Skill Agent Read Bash(ch:*) Bash(gh:*) Bash(git:*)
|
|
5
|
-
version: 1.31.
|
|
5
|
+
version: 1.31.10
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
<!-- ch-version-gate -->
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 2t-decencia-channel-project-bootstrap
|
|
3
3
|
description: 신규 기획을 사용자와 대화하며 step-by-step으로 소통채널 프로젝트로 만드는 오케스트레이터 스킬. (1)대화로 PRD 완성 → (2)기능명세(spec) 내용 확정 → (3)spec 업로드 → (4)유저플로우 → (5)정책정의서 → (6)DB 스키마·spec 연결 → (7)화면설계서(화면 생성·연결) → (8)검증기준서(SQA). 각 단계 사용자 승인 게이트, 작성 디테일은 기존 2t-decencia-channel-*-v2 스킬을 적극 재사용. "새 기획 만들어줘"·"프로젝트 처음부터 세팅" 류 요청 시.
|
|
4
4
|
allowed-tools: Bash(ch:*) Bash(git:*) Read Write
|
|
5
|
-
version: 1.31.
|
|
5
|
+
version: 1.31.10
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
<!-- ch-version-gate -->
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
name: 2t-decencia-channel-screen-v2
|
|
3
3
|
description: |
|
|
4
4
|
[2t][v2] 소통채널 화면설계서 작성 가이드.
|
|
5
|
-
화면당 필수 기재항목 6종(ID·화면명·접근권한 / 컴포넌트별 설명
|
|
5
|
+
화면당 필수 기재항목 6종(ID·화면명·접근권한 / 컴포넌트별 설명 / 액션별 동작·이동 /
|
|
6
6
|
입력 검증 규칙 / 예외상태 4종 / 연결 기획 ID)과 디스크립션 작성규칙(출처까지·결과까지·검증까지·정책은 참조만).
|
|
7
7
|
IA 트리 뷰(zoom/pan)·와이어프레임+디스크립션 좌우 분할 뷰 기준.
|
|
8
8
|
Use when:
|
|
9
9
|
(1) 화면(screens) 문서를 작성·수정할 때,
|
|
10
10
|
(2) 화면의 표시 데이터·액션·입력 검증·예외상태를 기재할 때,
|
|
11
11
|
(3) 웹 "화면" 탭의 IA 트리·화면 상세에 올릴 내용을 쓸 때.
|
|
12
|
-
version: 1.31.
|
|
12
|
+
version: 1.31.10
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- ch-version-gate -->
|
|
@@ -40,7 +40,7 @@ ch check
|
|
|
40
40
|
| 항목 | 내용 |
|
|
41
41
|
|---|---|
|
|
42
42
|
| 화면 ID + 화면명 + 접근권한 | `id`(슬러그, 예: `STORE-ORDER-DETAIL`) · `name` · `access` |
|
|
43
|
-
| **컴포넌트별 설명** | 화면의 컴포넌트마다
|
|
43
|
+
| **컴포넌트별 설명** | 화면의 컴포넌트마다 무엇을 보여주고 어떻게 동작하는지 **한두 줄**로 적는다. 데이터 필드는 `areas`(CLI `--areas`)를 그대로 쓴다 |
|
|
44
44
|
| 액션별 동작 및 이동화면 | 버튼·링크·제스처마다 동작과 **결과**(이동 화면 ID·성공/실패 갈림)를 적는다 |
|
|
45
45
|
| 입력 검증 규칙 | 입력마다 **필수/형식/길이/중복** + 실패 시 노출 문구 |
|
|
46
46
|
| 예외상태 4종 | **빈상태 · 로딩 · 에러 · 권한 없음** — 4종 전부, 각각 무엇을 보여주는지 |
|
|
@@ -100,40 +100,12 @@ ch check
|
|
|
100
100
|
- **클릭 네비게이션** — 다른 화면으로 이동하는 요소(GNB 메뉴·서브내비·액션 버튼·목록 행·카드)에
|
|
101
101
|
`data-screen-link="SCR-..."` 속성을 단다. actions의 `targetScreenId`와 일치해야 한다.
|
|
102
102
|
웹 뷰어가 이 클릭을 화면설계서 이동으로 이어 준다 — 와이어프레임만으로 서비스를 순회할 수 있다.
|
|
103
|
-
- **번호 콜아웃** — 컴포넌트별 설명(§4-2)의 번호를 마커로 얹는다.
|
|
104
103
|
- **§1 기재항목과 일치** — 컴포넌트별 설명대로 블록을 나누고, 액션(actions)의 버튼을 놓고, 입력(inputRules)의 폼을 놓는다. 문서와 그림이 어긋나면 그림이 거짓말이 된다.
|
|
105
104
|
- **문서 문장을 UI에 넣지 않는다** — 설명문·조건절·`테이블.컬럼` 표기·정책 ID는 화면에 등장할 문구가 아니다.
|
|
106
105
|
화면에는 사용자가 실제로 볼 레이블·플레이스홀더·버튼명·안내 문구만 쓴다. 규칙은 문구가 아니라
|
|
107
106
|
**상태로 시연**한다(에러 상태에 실제 에러 문구, 빈 상태에 실제 빈 문구).
|
|
108
107
|
- JS는 상태 시연·탭 전환 정도만. 뷰어가 sandbox라 앱 문서·쿠키에는 접근할 수 없고, 하려고 하지도 않는다.
|
|
109
108
|
|
|
110
|
-
## 4-2. 번호 콜아웃 — 그림과 설명을 잇는 기호
|
|
111
|
-
|
|
112
|
-
전통적인 화면설계서처럼 **와이어프레임에 번호를 얹고, 그 번호로 설명을 단다.** 번호가 위치를
|
|
113
|
-
대신하므로 설명에 "타이틀 아래 상단 검색·필터 바" 같은 위치 산문을 쓸 필요가 없다.
|
|
114
|
-
|
|
115
|
-
- 컴포넌트별 설명(`areas`) **배열 순서가 곧 번호다**(1부터). 별도 번호 필드는 없다.
|
|
116
|
-
- 와이어프레임에서 그 컴포넌트의 감싸는 요소에 마커를 얹는다 — `data-callout="N"`이 필수 속성이다.
|
|
117
|
-
|
|
118
|
-
```html
|
|
119
|
-
<div class="card callout-host">
|
|
120
|
-
<span class="callout" data-callout="3">3</span>
|
|
121
|
-
<!-- 컴포넌트 내용 -->
|
|
122
|
-
</div>
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
```css
|
|
126
|
-
.callout-host { position: relative; }
|
|
127
|
-
.callout { position: absolute; left: -10px; top: -10px; width: 24px; height: 24px;
|
|
128
|
-
border-radius: 50%; background: #e11d48; color: #fff; font-size: 13px; font-weight: 800;
|
|
129
|
-
display: flex; align-items: center; justify-content: center; z-index: 5;
|
|
130
|
-
box-shadow: 0 1px 4px rgba(0,0,0,.25); }
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
- 번호와 설명 개수가 **정확히 일치**해야 한다. 설명 5개면 마커도 1~5가 빠짐없이 하나씩.
|
|
134
|
-
- 웹 상세에서 설명 행을 짚으면 그 마커가 깜빡인다(뷰어가 넣는 기능이라 문서는 `data-callout`만 달면 된다).
|
|
135
|
-
- 컴포넌트 수는 화면 구획 기준 **3~6개**가 적당하다. 너무 잘게 번호를 매기면 그림이 번호로 덮인다.
|
|
136
|
-
|
|
137
109
|
업로드 (파일 **내용**이 저장된다 — 통째 교체):
|
|
138
110
|
|
|
139
111
|
```bash
|
|
@@ -150,7 +122,7 @@ ch screens update SCR-ORDER-DETAIL \
|
|
|
150
122
|
--states ./states.json
|
|
151
123
|
```
|
|
152
124
|
|
|
153
|
-
`areas.json` — 컴포넌트별
|
|
125
|
+
`areas.json` — 컴포넌트별 설명:
|
|
154
126
|
|
|
155
127
|
```json
|
|
156
128
|
[
|
|
@@ -225,7 +197,6 @@ ch screens update SCR-ORDER-DETAIL \
|
|
|
225
197
|
- **컴포넌트 설명에 모든 걸 밀어 넣기** — 조건절·정책 ID·조건 붙은 출처 표기까지 한 문장에 담으면
|
|
226
198
|
문서가 비대해지고 그 문장이 와이어프레임 UI로 새어 나온다. 검증은 inputRules, 결과는 actions,
|
|
227
199
|
예외 문구는 states가 자리다 (§2).
|
|
228
|
-
- **번호와 설명이 어긋남** — 설명 개수와 `data-callout` 마커가 1:1이 아니면 그림에서 짚을 수 없다 (§4-2).
|
|
229
200
|
- **결과 없는 버튼 서술** — "취소 버튼"은 기재가 아니다. 성공/실패 뒤에 무엇이 오는지까지.
|
|
230
201
|
- **검증 없는 입력 서술** — 필수/형식/길이/중복 + 실패 문구까지.
|
|
231
202
|
- **예외상태 일부 생략** — 4종 전부. 해당 없으면 "해당 없음"이라고 적는다.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: 2t-decencia-channel-sprint-runner
|
|
3
3
|
description: 특정 Sprint를 끝까지 실행(run)하는 오케스트레이터 스킬. Sprint의 spec을 시드로 이슈 목록을 분해·발행(github-issue)하고, GitHub milestone에 묶인 이슈를 상태별로 분류해 issue-coder(병렬)·pr-merger(직렬)로 전진시킨 뒤, 사람확인이 필요한 곳에서 멈춘다. 사람이 확인·체크 후 재호출하면 멱등하게 이어간다(반복 루프). "스프린트 돌려줘"·"sprint N 실행"·"이 스프린트 개발 진행해줘" 류 요청 시.
|
|
4
4
|
allowed-tools: Skill Agent Read Bash(ch:*) Bash(gh:*) Bash(git:*)
|
|
5
|
-
version: 1.31.
|
|
5
|
+
version: 1.31.10
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
<!-- ch-version-gate -->
|