lee-spec-kit 0.6.24 → 0.6.26
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/README.en.md +19 -3
- package/README.md +19 -3
- package/dist/index.js +963 -468
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/templates/en/common/agents/agents.md +2 -0
- package/templates/en/common/agents/skills/create-pr.md +1 -1
- package/templates/en/common/agents/skills/execute-task.md +11 -2
- package/templates/en/common/features/README.md +0 -1
- package/templates/en/common/features/feature-base/tasks.md +1 -3
- package/templates/ko/common/agents/agents.md +2 -0
- package/templates/ko/common/agents/skills/create-pr.md +1 -1
- package/templates/ko/common/agents/skills/execute-task.md +9 -2
- package/templates/ko/common/features/README.md +0 -1
- package/templates/ko/common/features/feature-base/tasks.md +1 -3
package/package.json
CHANGED
|
@@ -34,6 +34,8 @@ Prohibited:
|
|
|
34
34
|
|
|
35
35
|
- End **every user-facing reply** with current status + available labels.
|
|
36
36
|
- Use the latest `npx lee-spec-kit context --json-compact` as the default source (fallback: `context --json` or `flow --json` when full detail is required).
|
|
37
|
+
- When using auto results from `flow --json`, treat `autoRun.resume.flowCommand` as SSOT for resume (including after context compression/reset).
|
|
38
|
+
- Treat `AUTO_MANUAL_REQUIRED` as an automation boundary, not an immediate failure. Re-check `context --json`, then decide stop/report by `approvalRequest.required`.
|
|
37
39
|
- Use `actionOptions[].detail` or command `cmd` **verbatim**. Do not paraphrase.
|
|
38
40
|
- Even when the user asks something else, append the same label block at the end if executable labels exist.
|
|
39
41
|
- If no executable labels exist, print `Available labels: none` and guide re-check with `npx lee-spec-kit context`.
|
|
@@ -22,7 +22,7 @@ Always run this checklist in Pre-PR review. Treat it as the minimum baseline, th
|
|
|
22
22
|
2. Inspect regression, exception handling, critical/security risks, side effects, user flow impact, and release readiness.
|
|
23
23
|
3. Check maintainability: split oversized functions/files when needed, reuse/integrate existing code where appropriate, and remove obsolete code.
|
|
24
24
|
4. Run related test/verification commands (or explicitly record why they were not run).
|
|
25
|
-
5. Run `npx lee-spec-kit pre-pr-review <feature-ref>` to
|
|
25
|
+
5. Run `npx lee-spec-kit pre-pr-review <feature-ref>` to record review notes in `decisions.md` and sync `Pre-PR Evidence/Decision`.
|
|
26
26
|
6. `Pre-PR Evidence` should point to a real existing path. (default: `workflow.prePrReview.evidenceMode=path_required`)
|
|
27
27
|
7. `Pre-PR Decision` must use `decision: approve|changes_requested|blocked ...` (or `결정: ...`).
|
|
28
28
|
8. Ensure the final decision is `approve` before moving to PR creation.
|
|
@@ -20,7 +20,16 @@ npx lee-spec-kit context
|
|
|
20
20
|
Execute exactly one option from `👉 Next Options (Atomic)` as printed by the CLI.
|
|
21
21
|
|
|
22
22
|
- If the CLI points to an active task, focus on that task only.
|
|
23
|
-
- Treat
|
|
23
|
+
- Treat task state transitions in `tasks.md` **"Task Rules"** as SSOT.
|
|
24
|
+
- Treat `approvalRequest.required` from `context --json` as SSOT for approval waiting.
|
|
25
|
+
- `false`: continue without label approval.
|
|
26
|
+
- `true`: wait for label-token approval (`A`, `A OK`) before execution.
|
|
27
|
+
- Default execution model is **main-agent orchestration + selective sub-agent execution**. Keep short steps (spec/plan/tasks approvals, issue/PR metadata sync) in the main agent, and delegate long-running loops (`task_execute`, `code_review`, `review_fix_commit`, `pre_pr_review`, auto-run) to a sub-agent.
|
|
28
|
+
- If sub-agent execution is unavailable, the main agent must run the same loop directly with the same approval/gate rules (degrade by skipping delegation only).
|
|
29
|
+
- If `context --json` exposes `autoRun.available=true`, you may use `autoRun.command` to continue automatically until approval-required categories are reached.
|
|
30
|
+
- For long-running auto execution, start with `flow <feature> --auto-... --start-auto --json` and prefer `autoRun.run.resumeCommand` (`flow --resume <RUN_ID>`) after interruption/compression.
|
|
31
|
+
- If auto execution stops, treat `autoRun.resume` from `flow --json` as SSOT. After interruption/compression, resume with `autoRun.resume.flowCommand`; if needed, check current state first with `autoRun.resume.contextCommand`.
|
|
32
|
+
- Treat `AUTO_MANUAL_REQUIRED` as an automation boundary (instruction-only segment), not an immediate crash. Re-check `context --json` and report whether `approvalRequest.required` is now true.
|
|
24
33
|
- If the CLI prints commands, copy/paste them. (In standalone setups commands may include `git -C ...` and scopes like `project`/`docs`.)
|
|
25
34
|
- Follow user-facing response format (including the final status/label block in every reply) from `agents.md` **"Label Response Contract (SSOT)"**.
|
|
26
35
|
- For approved command options, default to `npx lee-spec-kit flow <slug|F001|F001-slug> --approve <LABEL> --execute` and avoid split `context --approve` / `context --execute --ticket` runs across turns.
|
|
@@ -62,7 +71,7 @@ Use the feature’s `decisions.md` template format as final SSOT. (Context/Const
|
|
|
62
71
|
### Step 3.5: Commit per task (important)
|
|
63
72
|
|
|
64
73
|
- Complete **only one task at a time** (do not batch-finish multiple tasks in one commit).
|
|
65
|
-
- After you share the outcome/verification
|
|
74
|
+
- After you share the outcome/verification, mark the task `[DONE]` (and update any checklist items). If approval is required (`approvalRequest.required=true`), wait for OK first. Then create commits (code commit + docs commit) so each task has its own history.
|
|
66
75
|
- In `tasks.md` test logs, keep one entry per test command and update its date/result on reruns (do not keep appending duplicates). Use `YYYY-MM-DD` in local date.
|
|
67
76
|
- If `context` shows `[CHECK required]`, for commits/push/merge, **share the commit message + included files and wait for explicit OK** before running the commands.
|
|
68
77
|
- Once all tasks are `[DONE]`, share the "Completion Criteria" checklist with the user and get **final approval (OK)**, then check it (especially the **Final user approval (OK) received** item).
|
|
@@ -69,7 +69,6 @@ npx lee-spec-kit status --write
|
|
|
69
69
|
| PR doc status | `Status` in `pr.md` | `Draft` \| `Ready` |
|
|
70
70
|
| PR review status | `PR Status` in `tasks.md` | `Review` \| `Approved` |
|
|
71
71
|
| Pre-PR review status | `Pre-PR Review` in `tasks.md` | `Pending` \| `Done` |
|
|
72
|
-
| Pre-PR review findings | `Pre-PR Findings` in `tasks.md` | `major=<n>, minor=<n>` |
|
|
73
72
|
| Pre-PR review evidence | `Pre-PR Evidence` in `tasks.md` | evidence link/log/doc path |
|
|
74
73
|
| Pre-PR review decision | `Pre-PR Decision` in `tasks.md` | `decision: approve\|changes_requested\|blocked ...` |
|
|
75
74
|
| PR review evidence | `PR Review Evidence` in `tasks.md` | evidence link/log/doc path |
|
|
@@ -24,10 +24,8 @@
|
|
|
24
24
|
- **Pre-PR Review**: -
|
|
25
25
|
- Values: Pending | Done
|
|
26
26
|
- Mark `Done` after pre-PR review is completed
|
|
27
|
-
- **Pre-PR Findings**: -
|
|
28
|
-
- Format: `major=<n>, minor=<n>`
|
|
29
27
|
- **Pre-PR Evidence**: -
|
|
30
|
-
- Example:
|
|
28
|
+
- Example: `docs/features/F001-foo/decisions.md` (must exist)
|
|
31
29
|
- **Pre-PR Decision**: -
|
|
32
30
|
- Format: `decision: approve|changes_requested|blocked ...` (or `결정: ...`)
|
|
33
31
|
- PR creation requires final decision `approve`
|
|
@@ -34,6 +34,8 @@
|
|
|
34
34
|
|
|
35
35
|
- 사용자에게 보내는 **모든 응답의 마지막**에 현재 상태 + 선택 가능한 라벨을 표시합니다.
|
|
36
36
|
- 기준 데이터는 최신 `npx lee-spec-kit context --json-compact`를 기본으로 사용하고, 상세 필드가 필요할 때만 `context --json`(또는 `flow --json`)을 사용합니다.
|
|
37
|
+
- `flow --json`의 auto 결과를 사용할 때는 `autoRun.resume.flowCommand`를 재개 SSOT로 사용합니다. (컨텍스트 압축/리셋 후 동일 규칙 적용)
|
|
38
|
+
- `AUTO_MANUAL_REQUIRED`는 자동화 경계 상태이며 실패 단정 신호가 아닙니다. `context --json` 재확인 후 `approvalRequest.required` 기준으로 멈춤/보고를 판단합니다.
|
|
37
39
|
- 라벨 설명은 `actionOptions[].detail` 또는 command `cmd`를 **원문 그대로** 사용합니다. (요약/의역 금지)
|
|
38
40
|
- 사용자가 다른 질문을 하더라도, 실행 가능한 라벨이 있으면 응답 마지막에 동일 블록을 다시 표시합니다.
|
|
39
41
|
- 실행 가능한 라벨이 없으면 `선택 가능: 없음` + `npx lee-spec-kit context` 재확인을 안내합니다.
|
|
@@ -22,7 +22,7 @@ Pre-PR 리뷰에서 항상 수행하는 최소 기준입니다. 가능한 경우
|
|
|
22
22
|
2. 회귀/예외 처리, 크리티컬·보안 리스크, 사이드 이펙트, 사용자 흐름 영향, 배포 준비도를 점검합니다.
|
|
23
23
|
3. 유지보수성을 점검합니다: 큰 함수/파일은 필요 시 분리하고, 기존 코드 재사용·통합 가능성을 확인하며, 불필요해진 코드를 정리합니다.
|
|
24
24
|
4. 관련 테스트/검증 명령을 실행합니다. 실행하지 못했다면 사유를 명시합니다.
|
|
25
|
-
5. `npx lee-spec-kit pre-pr-review <feature-ref>`를 실행해 리뷰
|
|
25
|
+
5. `npx lee-spec-kit pre-pr-review <feature-ref>`를 실행해 리뷰 내용을 `decisions.md`에 기록하고 `PR 전 리뷰 Evidence/Decision`을 동기화합니다.
|
|
26
26
|
6. `PR 전 리뷰 Evidence`는 실제 존재하는 문서 경로를 사용합니다. (`workflow.prePrReview.evidenceMode=path_required` 기본)
|
|
27
27
|
7. `PR 전 리뷰 Decision`은 `결정: approve|changes_requested|blocked ...` (또는 `decision: ...`) 형식을 사용합니다.
|
|
28
28
|
8. PR 생성 단계로 이동하기 전 최종 Decision이 `approve`인지 확인합니다.
|
|
@@ -22,7 +22,14 @@ npx lee-spec-kit context
|
|
|
22
22
|
CLI가 가리키는 **Active Task** 또는 **`👉 Next Options (Atomic)`의 단일 옵션**을 수행합니다.
|
|
23
23
|
|
|
24
24
|
- **[DOING] 상태인 태스크가 있다면**: 해당 태스크를 최우선으로 완료하세요.
|
|
25
|
-
- 태스크 상태
|
|
25
|
+
- 태스크 상태 전환 규칙은 `tasks.md`의 **"태스크 규칙"** 섹션을 SSOT로 따릅니다.
|
|
26
|
+
- 승인 대기 여부는 `context --json`의 `approvalRequest.required`를 SSOT로 따릅니다. `false`면 라벨 승인 없이 진행하고, `true`면 라벨 규칙(`A`, `A OK`)으로 승인 후 진행합니다.
|
|
27
|
+
- 기본 실행 모델은 **메인 에이전트 오케스트레이션 + 선택적 서브 에이전트 실행**입니다. 짧은 단계(spec/plan/tasks 승인, 이슈/PR 메타 동기화 등)는 메인 에이전트가 직접 처리하고, 장시간 루프(`task_execute`, `code_review`, `review_fix_commit`, `pre_pr_review`, auto-run)는 서브 에이전트에 위임합니다.
|
|
28
|
+
- 단, 서브 에이전트를 사용할 수 없는 환경이면 메인 에이전트가 같은 규칙/게이트를 유지한 채 직접 실행합니다. (동작 강등: 위임만 생략)
|
|
29
|
+
- `context --json`에 `autoRun.available=true`가 있으면 `autoRun.command`를 사용해 승인 필요 카테고리 전까지 자동 진행할 수 있습니다.
|
|
30
|
+
- 장시간 자동 실행이 필요하면 `flow <feature> --auto-... --start-auto --json`으로 run id를 생성하고, 중단/압축 후에는 `autoRun.run.resumeCommand`(`flow --resume <RUN_ID>`)를 우선 사용해 재개합니다.
|
|
31
|
+
- auto 실행이 중단되면 `flow --json`의 `autoRun.resume`를 SSOT로 따릅니다. 컨텍스트 압축/리셋 후에는 `autoRun.resume.flowCommand`로 재개하고, 필요 시 `autoRun.resume.contextCommand`로 상태를 먼저 확인합니다.
|
|
32
|
+
- `AUTO_MANUAL_REQUIRED`는 실패가 아니라 자동화 경계(현재 instruction-only 구간)입니다. 즉시 오류로 단정하지 말고 현재 `context --json`을 다시 확인한 뒤 승인 필요 여부(`approvalRequest.required`)를 보고합니다.
|
|
26
33
|
- CLI가 명령어를 출력하면 **그대로 복사해 실행**합니다. (standalone 환경에서도 레포 경로가 포함될 수 있습니다)
|
|
27
34
|
- 사용자 응답 포맷(매 응답 말미의 상태/라벨 표시 포함)은 `agents.md`의 **"라벨 응답 계약 (SSOT)"** 을 따릅니다.
|
|
28
35
|
- 승인된 command 옵션 실행은 `npx lee-spec-kit flow <slug|F001|F001-slug> --approve <LABEL> --execute`를 기본으로 사용하고, `context --approve`와 `context --execute --ticket` 분리 실행은 지양합니다.
|
|
@@ -58,7 +65,7 @@ CLI가 가리키는 **Active Task** 또는 **`👉 Next Options (Atomic)`의 단
|
|
|
58
65
|
|
|
59
66
|
#### 3-2) 태스크/체크리스트 업데이트 + 커밋
|
|
60
67
|
|
|
61
|
-
1. 작업이 끝나면 결과/검증을
|
|
68
|
+
1. 작업이 끝나면 결과/검증을 공유하고, 승인 대기(`approvalRequest.required=true`) 상태라면 승인(OK) 후 `[DONE]`으로 변경합니다. 이후 `Acceptance/Checklist` 항목을 `[x]`로 체크합니다.
|
|
62
69
|
2. **한 번에 하나의 태스크만** `[DONE]` 처리합니다. (태스크 2개 이상을 한 번에 완료/커밋으로 묶지 않기)
|
|
63
70
|
3. `tasks.md`의 테스트 실행 기록은 명령어별 1개 행만 유지하고, 같은 명령어 재실행 시 날짜/결과를 갱신합니다. (중복 누적 금지, 날짜 형식: 로컬 `YYYY-MM-DD`)
|
|
64
71
|
4. 커밋을 생성합니다 (코드 커밋 + 문서 커밋). 태스크 단위로 커밋이 남아야 합니다.
|
|
@@ -69,7 +69,6 @@ npx lee-spec-kit status --write
|
|
|
69
69
|
| PR 문서 상태 | `pr.md`의 `상태` | `Draft` \| `Ready` |
|
|
70
70
|
| PR 리뷰 상태 | `tasks.md`의 `PR 상태` | `Review` \| `Approved` |
|
|
71
71
|
| Pre-PR 리뷰 상태 | `tasks.md`의 `PR 전 리뷰` | `Pending` \| `Done` |
|
|
72
|
-
| Pre-PR 리뷰 Findings | `tasks.md`의 `PR 전 리뷰 Findings` | `major=<n>, minor=<n>` |
|
|
73
72
|
| Pre-PR 리뷰 Evidence | `tasks.md`의 `PR 전 리뷰 Evidence` | 근거 링크/로그/문서 경로 |
|
|
74
73
|
| Pre-PR 리뷰 Decision | `tasks.md`의 `PR 전 리뷰 Decision` | `결정: approve|changes_requested|blocked ...` |
|
|
75
74
|
| PR 리뷰 Evidence | `tasks.md`의 `PR 리뷰 Evidence` | 근거 링크/로그/문서 경로 |
|
|
@@ -24,10 +24,8 @@
|
|
|
24
24
|
- **PR 전 리뷰**: -
|
|
25
25
|
- 값: Pending | Done
|
|
26
26
|
- 사전 코드리뷰 완료 후 `Done`으로 변경
|
|
27
|
-
- **PR 전 리뷰 Findings**: -
|
|
28
|
-
- 형식: `major=<n>, minor=<n>`
|
|
29
27
|
- **PR 전 리뷰 Evidence**: -
|
|
30
|
-
- 예:
|
|
28
|
+
- 예: `docs/features/F001-foo/decisions.md` (실제 존재 경로)
|
|
31
29
|
- **PR 전 리뷰 Decision**: -
|
|
32
30
|
- 형식: `결정: approve|changes_requested|blocked ...` (또는 `decision: ...`)
|
|
33
31
|
- PR 생성 전 최종 통과 기준은 `approve`
|