uctm 1.5.3 → 1.5.4
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/.claude-plugin/plugin.json +1 -1
- package/agents/builder.md +90 -84
- package/agents/committer.md +98 -91
- package/agents/planner.md +68 -111
- package/agents/scheduler.md +85 -104
- package/agents/specifier.md +295 -116
- package/agents/verifier.md +71 -62
- package/package.json +1 -1
- package/references/agent-flow.md +107 -128
- package/references/callback-protocol.md +40 -0
- package/references/context-policy.md +37 -37
- package/references/file-content-schema.md +136 -67
- package/references/ref-cache-protocol.md +31 -31
- package/references/shared-prompt-sections.md +95 -201
- package/references/work-activity-log.md +26 -26
- package/references/xml-schema.md +52 -52
- package/skills/init/SKILL.md +26 -26
- package/skills/uctm-init/SKILL.md +95 -0
- package/skills/work-pipeline/SKILL.md +30 -39
- package/skills/work-status/SKILL.md +17 -17
package/skills/init/SKILL.md
CHANGED
|
@@ -3,29 +3,29 @@ name: uctm-init
|
|
|
3
3
|
description: Initialize uc-taskmanager for the current project. Creates works/ directory and configures Bash permissions in .claude/settings.local.json. Use when the user says "uctm init", "initialize uctm", "uctm 초기화", or "초기화".
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# uc-taskmanager
|
|
6
|
+
# uc-taskmanager 초기화
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
현재 프로젝트를 uc-taskmanager 파이프라인 실행을 위해 초기화합니다.
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## 단계
|
|
11
11
|
|
|
12
|
-
### 1.
|
|
12
|
+
### 1. works/ 디렉토리 생성
|
|
13
13
|
|
|
14
14
|
```
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
works/가 없으면:
|
|
16
|
+
works/ 생성
|
|
17
|
+
보고: ✓ works/ 디렉토리 생성됨
|
|
18
|
+
아니면:
|
|
19
|
+
보고: - works/ 이미 존재
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
-
### 2.
|
|
22
|
+
### 2. Bash 권한 설정
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
**먼저 사용자에게 확인:** "에이전트에 필요한 Bash 권한을 .claude/settings.local.json에 자동 설정할까요? (recommended) [Y/n]"
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
사용자가 승인하면 (yes/Y/확인):
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
`.claude/settings.local.json` 읽기 (없으면 생성). 다음 권한을 `permissions.allow` 배열에 병합 — **이미 있는 것은 건너뛰기** (중복 금지):
|
|
29
29
|
|
|
30
30
|
```json
|
|
31
31
|
[
|
|
@@ -66,28 +66,28 @@ Read `.claude/settings.local.json` (create if not exists). Merge the following p
|
|
|
66
66
|
]
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
기존 `permissions.allow` 및 `permissions.deny` 항목을 보존하고 누락된 것만 추가.
|
|
70
70
|
|
|
71
71
|
```
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
72
|
+
권한 추가됨:
|
|
73
|
+
보고: ✓ {N}개 권한이 .claude/settings.local.json에 추가됨 (총: {T})
|
|
74
|
+
사용자가 건너뛰면:
|
|
75
|
+
보고: - 권한 설정 건너뜀
|
|
76
|
+
이미 모두 설정됨:
|
|
77
|
+
보고: - 모든 권한이 이미 설정됨
|
|
78
78
|
```
|
|
79
79
|
|
|
80
|
-
### 3.
|
|
80
|
+
### 3. 요약
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
모든 단계 완료 후 요약 표시:
|
|
83
83
|
|
|
84
84
|
```
|
|
85
|
-
uc-taskmanager
|
|
85
|
+
uc-taskmanager 초기화 완료!
|
|
86
86
|
|
|
87
|
-
✓ works/
|
|
88
|
-
✓ Bash
|
|
87
|
+
✓ works/ 디렉토리 준비됨
|
|
88
|
+
✓ Bash 권한 설정됨
|
|
89
89
|
|
|
90
|
-
|
|
90
|
+
다음: [new-feature] Add a hello world feature 입력
|
|
91
91
|
```
|
|
92
92
|
|
|
93
93
|
## Arguments
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: uctm-init
|
|
3
|
+
description: Initialize uc-taskmanager for the current project. Creates works/ directory and configures Bash permissions in .claude/settings.local.json. Use when the user says "uctm init", "initialize uctm", "uctm 초기화", or "초기화".
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# uc-taskmanager 초기화
|
|
7
|
+
|
|
8
|
+
현재 프로젝트를 uc-taskmanager 파이프라인 실행을 위해 초기화합니다.
|
|
9
|
+
|
|
10
|
+
## 단계
|
|
11
|
+
|
|
12
|
+
### 1. works/ 디렉토리 생성
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
works/가 없으면:
|
|
16
|
+
works/ 생성
|
|
17
|
+
보고: ✓ works/ 디렉토리 생성됨
|
|
18
|
+
아니면:
|
|
19
|
+
보고: - works/ 이미 존재
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### 2. Bash 권한 설정
|
|
23
|
+
|
|
24
|
+
**먼저 사용자에게 확인:** "에이전트에 필요한 Bash 권한을 .claude/settings.local.json에 자동 설정할까요? (recommended) [Y/n]"
|
|
25
|
+
|
|
26
|
+
사용자가 승인하면 (yes/Y/확인):
|
|
27
|
+
|
|
28
|
+
`.claude/settings.local.json` 읽기 (없으면 생성). 다음 권한을 `permissions.allow` 배열에 병합 — **이미 있는 것은 건너뛰기** (중복 금지):
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
[
|
|
32
|
+
"Read(/**)",
|
|
33
|
+
"Edit(/**)",
|
|
34
|
+
"Write(/**)",
|
|
35
|
+
"Read(**)",
|
|
36
|
+
"Edit(**)",
|
|
37
|
+
"Write(**)",
|
|
38
|
+
"Bash(ls:*)",
|
|
39
|
+
"Bash(cat:*)",
|
|
40
|
+
"Bash(mkdir:*)",
|
|
41
|
+
"Bash(basename:*)",
|
|
42
|
+
"Bash(find:*)",
|
|
43
|
+
"Bash(wc:*)",
|
|
44
|
+
"Bash(sort:*)",
|
|
45
|
+
"Bash(tail:*)",
|
|
46
|
+
"Bash(head:*)",
|
|
47
|
+
"Bash(echo:*)",
|
|
48
|
+
"Bash(printf:*)",
|
|
49
|
+
"Bash(grep:*)",
|
|
50
|
+
"Bash(sed:*)",
|
|
51
|
+
"Bash(cut:*)",
|
|
52
|
+
"Bash(tr:*)",
|
|
53
|
+
"Bash(node:*)",
|
|
54
|
+
"Bash(npm run:*)",
|
|
55
|
+
"Bash(npm test:*)",
|
|
56
|
+
"Bash(bun run:*)",
|
|
57
|
+
"Bash(yarn:*)",
|
|
58
|
+
"Bash(cargo:*)",
|
|
59
|
+
"Bash(go build:*)",
|
|
60
|
+
"Bash(go test:*)",
|
|
61
|
+
"Bash(python:*)",
|
|
62
|
+
"Bash(ruff:*)",
|
|
63
|
+
"Bash(make:*)",
|
|
64
|
+
"Bash(git:*)",
|
|
65
|
+
"Bash(curl:*)"
|
|
66
|
+
]
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
기존 `permissions.allow` 및 `permissions.deny` 항목을 보존하고 누락된 것만 추가.
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
권한 추가됨:
|
|
73
|
+
보고: ✓ {N}개 권한이 .claude/settings.local.json에 추가됨 (총: {T})
|
|
74
|
+
사용자가 건너뛰면:
|
|
75
|
+
보고: - 권한 설정 건너뜀
|
|
76
|
+
이미 모두 설정됨:
|
|
77
|
+
보고: - 모든 권한이 이미 설정됨
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### 3. 요약
|
|
81
|
+
|
|
82
|
+
모든 단계 완료 후 요약 표시:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
uc-taskmanager 초기화 완료!
|
|
86
|
+
|
|
87
|
+
✓ works/ 디렉토리 준비됨
|
|
88
|
+
✓ Bash 권한 설정됨
|
|
89
|
+
|
|
90
|
+
다음: [new-feature] Add a hello world feature 입력
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Arguments
|
|
94
|
+
|
|
95
|
+
$ARGUMENTS
|
|
@@ -1,72 +1,63 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: work-pipeline
|
|
3
|
-
description: Triggers the WORK-PIPELINE. Use this skill when
|
|
3
|
+
description: Triggers the WORK-PIPELINE. Use this skill when
|
|
4
|
+
(1) user message starts with a bracketed tag like [anything], e.g. [WORK], [new-feature], [bugfix], [New game], [enhancement]
|
|
5
|
+
(2) user asks to resume/continue a WORK-NN (e.g., "WORK-01 계속실행", "resume WORK-01", "WORK-01 실행", "continue WORK-01").
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
# WORK-PIPELINE
|
|
8
|
+
# WORK-PIPELINE 트리거
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
## 트리거 감지
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
**New WORK** — message starts with `[...]` tag:
|
|
12
|
+
**새 WORK** — 메시지가 `[]` 태그로 시작하면 실행:
|
|
13
13
|
- `[new-feature]`, `[enhancement]`, `[bugfix]`, `[new-work]`, `[WORK start]`
|
|
14
|
-
-
|
|
14
|
+
- 또는 대괄호 안의 커스텀 태그
|
|
15
|
+
|
|
16
|
+
`../../references/agent-flow.md`를 읽고 오케스트레이션 흐름을 따릅니다.
|
|
15
17
|
|
|
16
|
-
**
|
|
18
|
+
**WORK 재개** — 메시지에 기존 WORK-ID와 실행 의도가 있을 때:
|
|
17
19
|
- "WORK-XX 계속실행", "WORK-XX 실행", "resume WORK-XX", "continue WORK-XX"
|
|
18
20
|
- "파이프라인 재개", "WORK 계속"
|
|
19
|
-
- →
|
|
21
|
+
- → agent-flow.md § 기존 WORK 재개 따르기
|
|
20
22
|
|
|
21
23
|
## References Directory (CRITICAL)
|
|
22
24
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
이 스킬이 트리거되면 Claude Code가 "Base directory for this skill"을 절대 경로로 제공합니다.
|
|
26
|
+
여기서 **REFERENCES_DIR**을 유도합니다:
|
|
25
27
|
|
|
26
28
|
```
|
|
27
29
|
REFERENCES_DIR = {Base directory}/../../references
|
|
28
30
|
```
|
|
29
31
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
**모든 서브에이전트 호출**(specifier, planner, scheduler, builder, verifier, committer)에 이 절대 경로를 반드시 전달해야 합니다.
|
|
33
|
+
프롬프트 텍스트 상단에 포함:
|
|
32
34
|
|
|
33
35
|
```
|
|
34
36
|
REFERENCES_DIR={absolute_path}
|
|
35
37
|
```
|
|
36
38
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
## Callback Info Passthrough
|
|
40
|
-
|
|
41
|
-
If the user's prompt contains `CALLBACK_URL=...` and `CALLBACK_TOKEN=...`, extract these values and pass them to **every sub-agent invocation** alongside REFERENCES_DIR:
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
CALLBACK_URL={url}
|
|
45
|
-
CALLBACK_TOKEN={token}
|
|
46
|
-
```
|
|
39
|
+
서브에이전트가 레퍼런스 파일을 찾기 위해 이 경로가 필요합니다. 없으면 파일을 찾지 못하고 루프에 빠집니다.
|
|
47
40
|
|
|
48
|
-
|
|
41
|
+
## 파이프라인 흐름
|
|
49
42
|
|
|
50
|
-
|
|
43
|
+
1. **specifier 에이전트 spawn** (Agent 도구 사용) — 요구사항 분석, `works/WORK-NN/Requirement.md` 생성, execution-mode 결정 (direct/pipeline/full)
|
|
44
|
+
2. **⛔ 정지 — specifier의 출력 요약을 사용자에게 제시하고 명시적 승인 대기.** 사용자가 승인할 때까지 다음 에이전트를 호출하지 말 것. 생성된 내용(Requirement.md, direct 모드면 PLAN.md, TASK 파일)을 보여주고 "진행할까요?" 질문
|
|
45
|
+
3. **specifier가 반환한 execution-mode에 따라 진행:**
|
|
46
|
+
- `direct`: builder spawn → verifier spawn → committer spawn
|
|
47
|
+
- `pipeline`: planner spawn → 각 TASK에 대해 → builder spawn → verifier spawn → committer spawn
|
|
48
|
+
- `full`: planner spawn → **⛔ 2차 승인 정지** → scheduler spawn → 각 TASK에 대해 → builder spawn → verifier spawn → committer spawn
|
|
51
49
|
|
|
52
|
-
|
|
53
|
-
2. **⛔ STOP — Present the specifier's output summary to the user and WAIT for explicit approval.** Do NOT call the next agent until the user approves. Show what was created (Requirement.md, PLAN.md if direct mode, TASK files) and ask "Proceed?"
|
|
54
|
-
3. **Follow the execution-mode** returned by specifier:
|
|
55
|
-
- `direct`: spawn builder (Agent tool) → spawn verifier+committer (single Agent tool, see agent-flow.md § Combined Agent Invocation)
|
|
56
|
-
- `pipeline`: for each TASK → spawn builder → spawn verifier+committer (repeat per TASK)
|
|
57
|
-
- `full`: spawn planner → **⛔ STOP for 2nd approval** → spawn scheduler → scheduler handles [builder → verifier+committer] × N
|
|
50
|
+
## ⚠️ CRITICAL: 에이전트 Spawn 규칙
|
|
58
51
|
|
|
59
|
-
|
|
52
|
+
- **모든 에이전트는 Agent 도구를 통해 spawn해야 합니다.** Main Claude가 직접 코드 구현, 파일 생성, git 명령 실행 또는 에이전트의 작업을 수행하면 안 됩니다.
|
|
53
|
+
- specifier가 builder dispatch XML을 반환하면 builder 에이전트에 전달할 것 — 직접 실행하지 말 것.
|
|
60
54
|
|
|
61
|
-
|
|
62
|
-
- In direct mode: spawn specifier → spawn builder → spawn verifier+committer (**3 Agent tool calls**).
|
|
63
|
-
- verifier+committer is a **single spawn** that performs both roles in sequence (see agent-flow.md).
|
|
64
|
-
- If specifier returns builder dispatch XML, pass it to the builder agent — do NOT execute it yourself.
|
|
55
|
+
## Auto 모드
|
|
65
56
|
|
|
66
|
-
|
|
57
|
+
사용자의 메시지가 "auto" 또는 "자동으로"로 끝나면, 모든 승인 단계를 건너뛰고 전체 파이프라인을 자동 실행합니다. 승인 게이트를 건너뛸 수 있는 유일한 경우입니다.
|
|
67
58
|
|
|
68
|
-
|
|
59
|
+
Auto 모드 감지 시, 모든 서브에이전트 프롬프트에 "auto"를 포함합니다.
|
|
69
60
|
|
|
70
61
|
## Arguments
|
|
71
62
|
|
|
72
|
-
|
|
63
|
+
사용자 요구사항: $ARGUMENTS
|
|
@@ -3,31 +3,31 @@ name: work-status
|
|
|
3
3
|
description: Shows WORK status (read-only). Use ONLY when the user asks to VIEW status — not to execute or resume. Matches queries like "WORK 목록", "상태 확인", "WORK-01 상태", "show status". Do NOT use for "실행", "계속", "resume" — those go to work-pipeline.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# WORK
|
|
6
|
+
# WORK 상태
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
WORK 및 TASK의 현재 상태를 확인하고 보고합니다.
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## 확인 방법
|
|
11
11
|
|
|
12
|
-
1.
|
|
13
|
-
2.
|
|
14
|
-
3.
|
|
12
|
+
1. `works/WORK-LIST.md`를 읽어 모든 WORK의 마스터 인덱스 확인
|
|
13
|
+
2. 특정 WORK의 경우 `works/WORK-NN/work_WORK-NN.log` 마지막 줄을 읽어 현재 진행 상황 확인
|
|
14
|
+
3. 특정 TASK의 경우 `works/WORK-NN/TASK-NN_result.md`를 읽어 완료 상세 확인
|
|
15
15
|
|
|
16
|
-
##
|
|
16
|
+
## 상태 값
|
|
17
17
|
|
|
18
|
-
|
|
|
19
|
-
|
|
20
|
-
| `IN_PROGRESS` | WORK
|
|
21
|
-
| `DONE` |
|
|
22
|
-
| `COMPLETED` |
|
|
18
|
+
| 상태 | 의미 |
|
|
19
|
+
|------|------|
|
|
20
|
+
| `IN_PROGRESS` | WORK 생성됨, TASK 실행 중 |
|
|
21
|
+
| `DONE` | 모든 TASK 커밋됨 — committer가 마지막 TASK에서 자동 설정 |
|
|
22
|
+
| `COMPLETED` | `_COMPLETED/`로 아카이빙됨 — push 시 설정 |
|
|
23
23
|
|
|
24
|
-
##
|
|
24
|
+
## 표시 형식
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
WORK
|
|
28
|
-
WORK-01:
|
|
29
|
-
WORK-02:
|
|
30
|
-
WORK-03:
|
|
27
|
+
WORK 상태
|
|
28
|
+
WORK-01: 사용자 인증 ✅ 5/5 완료
|
|
29
|
+
WORK-02: 결제 연동 🔄 2/4 진행 중
|
|
30
|
+
WORK-03: 관리자 대시보드 ⬜ 0/6 대기
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
## Arguments
|