lee-spec-kit 0.6.12 → 0.6.14

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.
Files changed (32) hide show
  1. package/README.en.md +9 -6
  2. package/README.md +8 -5
  3. package/dist/index.js +709 -51
  4. package/package.json +1 -1
  5. package/templates/en/common/agents/agents.md +5 -3
  6. package/templates/en/common/agents/issue-template.md +1 -0
  7. package/templates/en/common/agents/pr-template.md +1 -0
  8. package/templates/en/common/agents/skills/create-feature.md +1 -0
  9. package/templates/en/common/agents/skills/create-issue.md +17 -10
  10. package/templates/en/common/agents/skills/create-pr.md +17 -9
  11. package/templates/en/common/agents/skills/execute-task.md +23 -11
  12. package/templates/en/common/features/README.md +17 -1
  13. package/templates/en/common/features/feature-base/decisions.md +18 -0
  14. package/templates/en/common/features/feature-base/issue.md +34 -0
  15. package/templates/en/common/features/feature-base/plan.md +1 -1
  16. package/templates/en/common/features/feature-base/pr.md +35 -0
  17. package/templates/en/common/features/feature-base/spec.md +1 -1
  18. package/templates/en/common/features/feature-base/tasks.md +8 -3
  19. package/templates/ko/common/agents/agents.md +5 -3
  20. package/templates/ko/common/agents/issue-template.md +1 -0
  21. package/templates/ko/common/agents/pr-template.md +1 -0
  22. package/templates/ko/common/agents/skills/create-feature.md +1 -0
  23. package/templates/ko/common/agents/skills/create-issue.md +17 -10
  24. package/templates/ko/common/agents/skills/create-pr.md +17 -9
  25. package/templates/ko/common/agents/skills/execute-task.md +14 -2
  26. package/templates/ko/common/features/README.md +17 -1
  27. package/templates/ko/common/features/feature-base/decisions.md +18 -0
  28. package/templates/ko/common/features/feature-base/issue.md +34 -0
  29. package/templates/ko/common/features/feature-base/plan.md +1 -1
  30. package/templates/ko/common/features/feature-base/pr.md +35 -0
  31. package/templates/ko/common/features/feature-base/spec.md +1 -1
  32. package/templates/ko/common/features/feature-base/tasks.md +8 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lee-spec-kit",
3
- "version": "0.6.12",
3
+ "version": "0.6.14",
4
4
  "description": "Project documentation structure generator for AI-assisted development",
5
5
  "type": "module",
6
6
  "bin": {
@@ -23,7 +23,7 @@ This document covers **policy only**.
23
23
  Approval flow:
24
24
  1. Share details first
25
25
  2. Wait for explicit approval (OK)
26
- 3. Execute after approval
26
+ 3. Execute after approval (for command execution, default to `npx lee-spec-kit flow <featureRef> --approve <LABEL> --execute`)
27
27
 
28
28
  Prohibited:
29
29
  - Proceeding without user response
@@ -38,6 +38,7 @@ Prohibited:
38
38
  - Even when the user asks something else, append the same label block at the end if executable labels exist.
39
39
  - If no executable labels exist, print `Available labels: none` and guide re-check with `npx lee-spec-kit context`.
40
40
  - If user input does not contain a valid label, do not execute; request label selection again.
41
+ - For approved command options, prefer one-shot `flow --approve <LABEL> --execute`; do not split `context --approve` and `context --execute --ticket` across turns/sessions.
41
42
 
42
43
  Output format:
43
44
 
@@ -70,8 +71,8 @@ Reply format: "<LABEL>" or "<LABEL> OK"
70
71
  - Root guide: `npx lee-spec-kit docs get agents --json`
71
72
  - Git workflow: `npx lee-spec-kit docs get git-workflow --json`
72
73
  - Task execution: `npx lee-spec-kit docs get execute-task --json`
73
- - Issue procedure/template: `npx lee-spec-kit docs get create-issue --json` → `npx lee-spec-kit docs get issue-template --json`
74
- - PR procedure/template: `npx lee-spec-kit docs get create-pr --json` → `npx lee-spec-kit docs get pr-template --json`
74
+ - Issue procedure/doc: `npx lee-spec-kit docs get create-issue --json` → `npx lee-spec-kit docs get issue-doc --json`
75
+ - PR procedure/doc: `npx lee-spec-kit docs get create-pr --json` → `npx lee-spec-kit docs get pr-doc --json`
75
76
 
76
77
  ---
77
78
 
@@ -79,6 +80,7 @@ Reply format: "<LABEL>" or "<LABEL> OK"
79
80
 
80
81
  - Docs structure/path rules: use `docs/README.md` as SSOT
81
82
  - ADR format: use feature `decisions.md` template as SSOT
83
+ - Issue/PR execution state: use each feature's `issue.md` and `pr.md` as SSOT
82
84
 
83
85
  ---
84
86
 
@@ -1,6 +1,7 @@
1
1
  # GitHub Issue Template Guide
2
2
 
3
3
  A template for AI agents to create GitHub Issues.
4
+ This document is a section policy/style guide. Use feature-local `issue.md` as the SSOT for actual workflow state.
4
5
 
5
6
  ---
6
7
 
@@ -1,6 +1,7 @@
1
1
  # GitHub PR Template Guide
2
2
 
3
3
  A template for AI agents to create Pull Requests.
4
+ This document is a section policy/style guide. Use feature-local `pr.md` as the SSOT for actual workflow state.
4
5
 
5
6
  ---
6
7
 
@@ -26,6 +26,7 @@ For gated actions, proceed only after the user replies in **`<label>` or `<label
26
26
  - If the CLI asks for writing a file, write that file and follow the format.
27
27
  - If the CLI prints a command, **copy/paste and run it exactly**. (It may include repo-safe `git -C ...` commands and scopes like `project` vs `docs`.)
28
28
  - When requesting approval, present labels as `A: ...` using the exact CLI detail/cmd text. Do not paraphrase command options.
29
+ - For approved command options, default to one-shot execution via `npx lee-spec-kit flow <slug|F001|F001-slug> --approve <LABEL> --execute` to avoid session mismatch.
29
30
 
30
31
  ### Step 3: Repeat
31
32
 
@@ -1,6 +1,7 @@
1
1
  # GitHub Issue Creation Process
2
2
 
3
3
  Guide for creating GitHub Issues.
4
+ Execution-state SSOT is the feature-local `issue.md`.
4
5
 
5
6
  ---
6
7
 
@@ -13,22 +14,22 @@ Guide for creating GitHub Issues.
13
14
 
14
15
  ## Steps
15
16
 
16
- ### 1. Prepare Issue Draft
17
+ ### 1. Prepare `issue.md` Draft
17
18
 
18
19
  > 📖 **If not read in this session, read procedure/template via `docs get`; do not re-read the same doc in the same session, then generate a draft and treat it as the source of truth.**
19
20
 
20
21
  ```bash
21
22
  # 1) Read procedure + template policy (only docs not read in this session)
22
23
  npx lee-spec-kit docs get create-issue --json
23
- npx lee-spec-kit docs get issue-template --json
24
+ npx lee-spec-kit docs get issue-doc --json
24
25
 
25
26
  # 2) Generate draft body (no remote action)
26
27
  npx lee-spec-kit github issue F001 --json
27
28
  ```
28
29
 
29
- Use `docs get issue-template --json` output as the section policy,
30
- and `github issue --json` output `body` as the first draft to review/share.
31
- If needed, use `bodyFile` as the filesystem source.
30
+ Use `docs get issue-doc --json` output as document-structure policy,
31
+ then refine the feature `issue.md` draft from `github issue --json` `body`.
32
+ Use `issue.md` status (`Draft | Ready`) as the actual workflow state.
32
33
 
33
34
  | Item | Format |
34
35
  | -------- | ------------------------------------------- |
@@ -37,19 +38,19 @@ If needed, use `bodyFile` as the filesystem source.
37
38
  | Labels | `enhancement`, `bug`, `documentation`, etc. |
38
39
  | Assignee | `@me` (default) |
39
40
 
40
- ### 2. Request User Approval
41
+ ### 2. Request User Approval + Move to `Ready`
41
42
 
42
43
  > 🚨 **User Approval Required**
43
44
 
44
- Before creating issue, share and wait for explicit approval (OK):
45
+ Share the `issue.md` draft and wait for explicit approval (OK):
45
46
 
46
47
  - Title
47
- - Full body draft (from `body`)
48
+ - Full body draft (from `issue.md`)
48
49
  - Labels
49
50
 
50
- Also refine Goals/Completion Criteria based on spec before creating.
51
+ After approval, set `issue.md` status to `Ready`.
51
52
 
52
- ### 3. Create Issue
53
+ ### 3. Create Issue (when `issue.md` is `Ready`)
53
54
 
54
55
  ```bash
55
56
  gh issue create \
@@ -62,9 +63,15 @@ gh issue create \
62
63
  npx lee-spec-kit github issue F001 --create --confirm OK --labels enhancement
63
64
  ```
64
65
 
66
+ After creation:
67
+ - sync created issue number into `issue.md`
68
+ - sync issue number into `spec.md` and `tasks.md`
69
+ - keep `issue.md` status as `Ready` (creation state is tracked by issue number/link fields)
70
+
65
71
  ---
66
72
 
67
73
  ## Reference Documents
68
74
 
69
75
  - **Draft generator**: `npx lee-spec-kit github issue <feature-name>`
70
76
  - **Approval rule**: share title/body/labels first, then run `--create --confirm OK`
77
+ - **Execution-state SSOT**: `docs/features/.../<feature>/issue.md`
@@ -1,6 +1,7 @@
1
1
  # Pull Request Creation Process
2
2
 
3
3
  Guide for creating Pull Requests.
4
+ Execution-state SSOT is the feature-local `pr.md`.
4
5
 
5
6
  ---
6
7
 
@@ -15,14 +16,14 @@ Guide for creating Pull Requests.
15
16
 
16
17
  ## Steps
17
18
 
18
- ### 1. Prepare PR Body Template
19
+ ### 1. Prepare `pr.md` Draft
19
20
 
20
21
  > 📖 **If not read in this session, read procedure/template via `docs get`; do not re-read the same doc in the same session, then generate a body template and treat it as the source of truth.**
21
22
 
22
23
  ```bash
23
24
  # 1) Read procedure + template policy (only docs not read in this session)
24
25
  npx lee-spec-kit docs get create-pr --json
25
- npx lee-spec-kit docs get pr-template --json
26
+ npx lee-spec-kit docs get pr-doc --json
26
27
 
27
28
  # 2) Generate body template (no remote action)
28
29
  npx lee-spec-kit github pr F001 --json
@@ -31,9 +32,9 @@ npx lee-spec-kit github pr F001 --json
31
32
  # - Auto policy (default): --screenshots auto --mermaid auto
32
33
  ```
33
34
 
34
- Use `docs get pr-template --json` output as the section policy,
35
- and `github pr --json` output `body` as the first PR body template.
36
- If needed, use `bodyFile` as the filesystem source.
35
+ Use `docs get pr-doc --json` output as document-structure policy,
36
+ then refine the feature `pr.md` draft from `github pr --json` `body`.
37
+ Use `pr.md` status (`Draft | Ready`) as the actual workflow state.
37
38
 
38
39
  | Item | Format |
39
40
  | -------- | ---------------------------------- |
@@ -124,19 +125,20 @@ echo \"![](https://github.com/${REPO}/releases/download/${TAG}/ui-1.png)\"
124
125
 
125
126
  - Write a Mermaid **`sequenceDiagram`** in the PR body and keep it aligned with the generated body template format.
126
127
 
127
- ### 4. Request User Approval
128
+ ### 4. Request User Approval + Move to `Ready`
128
129
 
129
130
  > 🚨 **User Approval Required**
130
131
 
131
132
  Before creating PR, share the following **in a code block** and wait for **explicit approval (OK)**:
132
133
 
133
134
  - Title
134
- - Full body template (from `body`)
135
+ - Full body template (from `pr.md`)
135
136
  - Labels (at least 1; cannot be empty)
136
137
 
137
- Before approval/create, refine the generated body template's Changes/Tests sections based on actual work.
138
+ Before approval/create, refine `pr.md` Changes/Tests sections based on actual work.
139
+ After approval, set `pr.md` status to `Ready`.
138
140
 
139
- ### 5. Create PR
141
+ ### 5. Create PR (when `pr.md` is `Ready`)
140
142
 
141
143
  ```bash
142
144
  gh pr create \
@@ -150,6 +152,11 @@ gh pr create \
150
152
  npx lee-spec-kit github pr F001 --create --confirm OK --labels enhancement
151
153
  ```
152
154
 
155
+ After creation:
156
+ - record created PR link into `pr.md` and `tasks.md`
157
+ - record/keep PR status as `Review`
158
+ - keep `pr.md` status as `Ready` (creation/merge state is tracked by PR link + `PR Status`)
159
+
153
160
  ---
154
161
 
155
162
  ## Important Notes
@@ -191,3 +198,4 @@ Use **current branch name** for file links in PR body:
191
198
 
192
199
  - **Body template generator**: `npx lee-spec-kit github pr <feature-name>`
193
200
  - **Approval rule**: share title/body/labels first, then run `--create --confirm OK`
201
+ - **Execution-state SSOT**: `docs/features/.../<feature>/pr.md`
@@ -23,6 +23,7 @@ Execute exactly one option from `👉 Next Options (Atomic)` as printed by the C
23
23
  - Treat the task state/approval rules in `tasks.md` **"Task Rules"** as SSOT (e.g. when OK is required for `[TODO]→[DOING]`, `[DOING]→[DONE]`).
24
24
  - If the CLI prints commands, copy/paste them. (In standalone setups commands may include `git -C ...` and scopes like `project`/`docs`.)
25
25
  - Follow user-facing response format (including the final status/label block in every reply) from `agents.md` **"Label Response Contract (SSOT)"**.
26
+ - 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.
26
27
 
27
28
  ### Step 3: Update tasks.md (only what you did)
28
29
 
@@ -31,16 +32,7 @@ Keep `tasks.md` aligned with reality.
31
32
  - Do not mark `[DONE]` without actually completing the work and verifying criteria.
32
33
  - If you need to change a completed task, add a new task instead of rewriting history.
33
34
 
34
- ### Step 3.25: Commit per task (important)
35
-
36
- - Complete **only one task at a time** (do not batch-finish multiple tasks in one commit).
37
- - After you share the outcome/verification and get approval (OK), mark the task `[DONE]` (and update any checklist items), then create commits (code commit + docs commit) so each task has its own history.
38
- - In `tasks.md` test logs, keep one entry per test command and update its timestamp/result on reruns (do not keep appending duplicates). Use `YYYY-MM-DD HH-MM` in local time.
39
- - If `context` shows `[CHECK required]`, for commits/push/merge, **share the commit message + included files and wait for explicit OK** before running the commands.
40
- - 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).
41
- - Note: `Doc Status (Review→Approved)` is **progress approval (OK)**, while the completion checklist approval is **final approval (OK)**.
42
-
43
- ### Step 3.5: Record decisions (strongly recommended, effectively required)
35
+ ### Step 3.25: Record decisions (strongly recommended, effectively required)
44
36
 
45
37
  To avoid “why did we implement it like this?” losing context, **record any non-obvious or tradeoff-heavy implementation choice** in `decisions.md`.
46
38
 
@@ -54,7 +46,27 @@ Record a decision if any of these apply:
54
46
  - You changed data shape, file structure, or CLI output rules
55
47
  - You expect future readers to ask “why this way?”
56
48
 
57
- Use the feature’s `decisions.md` template format. (Context/Options/Decision/Rationale/Consequences)
49
+ Timing rules:
50
+
51
+ - When moving a task to `[DOING]`, first add 1-3 lines for `Context/Constraints` and `Trace (initial hypothesis)`.
52
+ - Before moving a task to `[DONE]`, finalize `Options/Decision/Rationale` and strengthen `Trace (final reasoning)`.
53
+ - After PR merge, append 1-2 lines in `Trace (post-merge check)` with actual outcome/impact.
54
+
55
+ Evidence rules:
56
+
57
+ - Every ADR must include at least one Evidence link (commit, PR, or test/log evidence).
58
+ - Prefer filling all three (`Commit`, `PR`, `Test/Log`); if not applicable, mark as `N/A`.
59
+
60
+ Use the feature’s `decisions.md` template format as final SSOT. (Context/Constraints/Options/Decision/Rationale/Trace/Evidence/Consequences)
61
+
62
+ ### Step 3.5: Commit per task (important)
63
+
64
+ - Complete **only one task at a time** (do not batch-finish multiple tasks in one commit).
65
+ - After you share the outcome/verification and get approval (OK), mark the task `[DONE]` (and update any checklist items), then create commits (code commit + docs commit) so each task has its own history.
66
+ - 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
+ - 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
+ - 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
+ - Note: `Doc Status (Review→Approved)` is **progress approval (OK)**, while the completion checklist approval is **final approval (OK)**.
58
70
 
59
71
  ### Step 4: Repeat
60
72
 
@@ -13,6 +13,8 @@ features/
13
13
  │ ├── spec.md
14
14
  │ ├── plan.md
15
15
  │ ├── tasks.md
16
+ │ ├── issue.md
17
+ │ ├── pr.md
16
18
  │ └── decisions.md
17
19
  ├── (single) F00X-{name}/
18
20
  └── (multi) {component}/F00X-{name}/
@@ -58,6 +60,18 @@ npx lee-spec-kit status --write
58
60
 
59
61
  ---
60
62
 
63
+ ## Status Glossary
64
+
65
+ | Scope | Field | Values |
66
+ | --- | --- | --- |
67
+ | Document status | `Status` in `spec.md`/`plan.md`, `Doc Status` in `tasks.md` | `Draft` \| `Review` \| `Approved` |
68
+ | Issue doc status | `Status` in `issue.md` | `Draft` \| `Ready` |
69
+ | PR doc status | `Status` in `pr.md` | `Draft` \| `Ready` |
70
+ | PR review status | `PR Status` in `tasks.md`/`pr.md` | `Review` \| `Approved` |
71
+ | Pre-PR review status | `Pre-PR Review` in `tasks.md` | `Pending` \| `Done` |
72
+
73
+ ---
74
+
61
75
  ## File Roles
62
76
 
63
77
  | File | Role | When to Write |
@@ -65,4 +79,6 @@ npx lee-spec-kit status --write
65
79
  | `spec.md` | **What and Why** | Feature definition |
66
80
  | `plan.md` | **How** (technical) | After spec approval |
67
81
  | `tasks.md` | Specific work items | After plan approval |
68
- | `decisions.md` | Technical decisions (ADR) | During development |
82
+ | `issue.md` | Issue draft + issue state (`Draft/Ready`) | Before/when creating issue |
83
+ | `pr.md` | PR draft + PR state (`Draft/Ready`) | Before/when creating PR |
84
+ | `decisions.md` | Technical decisions + reasoning trace + evidence links (ADR) | During development (DOING start / before DONE / post-merge) |
@@ -7,12 +7,30 @@ Record technical decisions and their rationale.
7
7
 
8
8
  > Format: `D{number}: {Decision Title} ({YYYY-MM-DD})`
9
9
 
10
+ Recording principles:
11
+
12
+ - Every ADR must capture both **Decision (what was chosen)** and **Trace (how it was evaluated and validated)**.
13
+ - Use fixed timing checkpoints:
14
+ - Task start (`[TODO] -> [DOING]`): add 1-3 lines for `Context/Constraints` and `Trace (initial hypothesis)`
15
+ - Right before task done (`[DOING] -> [DONE]`): finalize `Options/Decision/Rationale` and enrich `Trace`
16
+ - After PR merge: append 1-2 lines in `Trace (post-merge check)` with actual outcome/impact
17
+ - Every ADR must include at least one **Evidence link** (commit, PR, or test/log evidence).
18
+
10
19
  ---
11
20
 
12
21
  ## D001: {Decision Title} ({YYYY-MM-DD})
13
22
 
14
23
  - **Context**: Problem situation or background
24
+ - **Constraints**: Constraints (time/technical/operations/compatibility)
15
25
  - **Options**: Alternatives considered
16
26
  - **Decision**: Final choice
17
27
  - **Rationale**: Reason for choice
28
+ - **Trace**:
29
+ - **At DOING start**: Initial reasoning/hypothesis
30
+ - **Before DONE**: Finalized reasoning behind the selected option
31
+ - **Post-merge check**: Actual outcome/impact observed
32
+ - **Evidence**:
33
+ - **Commit**: Commit hash or link
34
+ - **PR**: PR link
35
+ - **Test/Log**: Test output/log/screenshot path
18
36
  - **Consequences**: Results and impact (optional)
@@ -0,0 +1,34 @@
1
+ # Issue Draft: {feature-name}
2
+
3
+ ## Metadata
4
+
5
+ - **Status**: Draft | Ready
6
+ - **Issue Number**: #{issue-number}
7
+ - **Title**: {feature-name}
8
+ - **Labels**: enhancement
9
+ - **Created**: {YYYY-MM-DD}
10
+
11
+ ## Overview
12
+
13
+ - Problem/Context:
14
+ - Expected Impact:
15
+
16
+ ## Goals
17
+
18
+ - [ ] (goal 1)
19
+ - [ ] (goal 2)
20
+
21
+ ## Completion Criteria
22
+
23
+ - [ ] (verifiable criterion 1)
24
+ - [ ] (verifiable criterion 2)
25
+
26
+ ## Out of Scope
27
+
28
+ - (what this issue does not cover)
29
+
30
+ ## Related Docs
31
+
32
+ - Spec: `./spec.md`
33
+ - Plan: `./plan.md`
34
+ - Tasks: `./tasks.md`
@@ -9,7 +9,7 @@
9
9
  - **Feature ID**: F{number}
10
10
  - **Target Repo**: {{projectName}}-{component}
11
11
  - **Created**: {YYYY-MM-DD}
12
- - **Status**: Review | Approved
12
+ - **Status**: Draft | Review | Approved
13
13
 
14
14
  ---
15
15
 
@@ -0,0 +1,35 @@
1
+ # PR Draft: {feature-name}
2
+
3
+ ## Metadata
4
+
5
+ - **Status**: Draft | Ready
6
+ - **PR**: -
7
+ - **PR Status**: -
8
+ - Values: Review | Approved
9
+ - **Base**: main
10
+ - **Created**: {YYYY-MM-DD}
11
+
12
+ ## Overview
13
+
14
+ - Change purpose:
15
+ - User impact:
16
+
17
+ ## Changes
18
+
19
+ - [ ] (key change 1)
20
+ - [ ] (key change 2)
21
+
22
+ ## Tests
23
+
24
+ - [ ] (test run 1)
25
+ - [ ] (test run 2)
26
+
27
+ ## Screenshots / Diagrams
28
+
29
+ - (attach when needed)
30
+
31
+ ## Related Docs
32
+
33
+ - Spec: `./spec.md`
34
+ - Tasks: `./tasks.md`
35
+ - Decisions: `./decisions.md`
@@ -11,7 +11,7 @@
11
11
  - **Target Repo**: {{projectName}}-{component}
12
12
  - **Issue Number**: #{issue-number}
13
13
  - **Created**: {YYYY-MM-DD}
14
- - **Status**: Review | Approved
14
+ - **Status**: Draft | Review | Approved
15
15
 
16
16
  ---
17
17
 
@@ -12,7 +12,7 @@
12
12
 
13
13
  ## GitHub Issue
14
14
 
15
- - **Doc Status**: Review | Approved
15
+ - **Doc Status**: Draft | Review | Approved
16
16
  - **Repo**: {{projectName}}-{component}
17
17
  - **Issue**: #{issue-number}
18
18
  - **Branch**: `feat/{issue-number}-{feature-name}`
@@ -22,6 +22,10 @@
22
22
  - Values: Review | Approved
23
23
  - **Pre-PR Review**: Pending | Done
24
24
  - Mark `Done` after pre-PR review is completed
25
+ - **Pre-PR Findings**: major=0, minor=0
26
+ - Update with final findings counts from pre-PR review
27
+ - **Pre-PR Evidence**: -
28
+ - Example: review note link, log path, or docs path
25
29
 
26
30
  ---
27
31
 
@@ -34,6 +38,7 @@
34
38
 
35
39
  ```markdown
36
40
  - [TODO][P1] T-F{number}-01 {Task Title}
41
+ - Date: YYYY-MM-DD
37
42
  - Acceptance:
38
43
  - (verification condition)
39
44
  - Checklist:
@@ -53,8 +58,8 @@
53
58
  ### Test Run Log (Latest by Command)
54
59
 
55
60
  > Keep one row per command. If you rerun the same command, update that row instead of appending.
56
- > Use `YYYY-MM-DD HH-MM` for `Last Run` (local time).
61
+ > Use `YYYY-MM-DD` for `Last Run` (local date).
57
62
 
58
- | Command | Last Run (Local, YYYY-MM-DD HH-MM) | Result |
63
+ | Command | Last Run (Local, YYYY-MM-DD) | Result |
59
64
  | --- | --- | --- |
60
65
  | `{test command you ran}` | `-` | `{PASS/FAIL summary}` |
@@ -23,7 +23,7 @@
23
23
  확인 절차:
24
24
  1. 작업 내용을 먼저 공유
25
25
  2. 명시적 승인(OK) 대기
26
- 3. 승인 후 실행
26
+ 3. 승인 후 실행 (명령 실행은 기본적으로 `npx lee-spec-kit flow <featureRef> --approve <LABEL> --execute`를 사용)
27
27
 
28
28
  금지:
29
29
  - 사용자 응답 없이 임의 진행
@@ -38,6 +38,7 @@
38
38
  - 사용자가 다른 질문을 하더라도, 실행 가능한 라벨이 있으면 응답 마지막에 동일 블록을 다시 표시합니다.
39
39
  - 실행 가능한 라벨이 없으면 `선택 가능: 없음` + `npx lee-spec-kit context` 재확인을 안내합니다.
40
40
  - 사용자 입력에 유효 라벨이 없으면 실행하지 말고 라벨 선택을 다시 요청합니다.
41
+ - 승인된 command 옵션 실행은 `flow --approve <LABEL> --execute` 1회 호출을 기본으로 하며, `context --approve`와 `context --execute --ticket`를 턴/세션 사이로 분리하지 않습니다.
41
42
 
42
43
  출력 형식:
43
44
 
@@ -70,8 +71,8 @@ B: <detail>
70
71
  - 루트 가이드: `npx lee-spec-kit docs get agents --json`
71
72
  - Git 워크플로우: `npx lee-spec-kit docs get git-workflow --json`
72
73
  - 태스크 실행: `npx lee-spec-kit docs get execute-task --json`
73
- - 이슈 절차/템플릿: `npx lee-spec-kit docs get create-issue --json` → `npx lee-spec-kit docs get issue-template --json`
74
- - PR 절차/템플릿: `npx lee-spec-kit docs get create-pr --json` → `npx lee-spec-kit docs get pr-template --json`
74
+ - 이슈 절차/문서: `npx lee-spec-kit docs get create-issue --json` → `npx lee-spec-kit docs get issue-doc --json`
75
+ - PR 절차/문서: `npx lee-spec-kit docs get create-pr --json` → `npx lee-spec-kit docs get pr-doc --json`
75
76
 
76
77
  ---
77
78
 
@@ -79,6 +80,7 @@ B: <detail>
79
80
 
80
81
  - docs 구조/경로 규칙: `docs/README.md`를 SSOT로 사용
81
82
  - ADR 작성 형식: `docs/features/.../decisions.md` 템플릿을 SSOT로 사용
83
+ - 이슈/PR 실행 상태: 각 Feature의 `issue.md`, `pr.md`를 SSOT로 사용
82
84
 
83
85
  ---
84
86
 
@@ -1,6 +1,7 @@
1
1
  # GitHub Issue 템플릿 가이드
2
2
 
3
3
  에이전트가 GitHub Issue를 생성할 때 참조하는 템플릿입니다.
4
+ 이 문서는 섹션 정책/스타일 가이드이며, 실제 진행 상태 관리는 Feature 폴더의 `issue.md`를 SSOT로 사용합니다.
4
5
 
5
6
  ---
6
7
 
@@ -1,6 +1,7 @@
1
1
  # GitHub PR 템플릿 가이드
2
2
 
3
3
  에이전트가 Pull Request를 생성할 때 참조하는 템플릿입니다.
4
+ 이 문서는 섹션 정책/스타일 가이드이며, 실제 진행 상태 관리는 Feature 폴더의 `pr.md`를 SSOT로 사용합니다.
4
5
 
5
6
  ---
6
7
 
@@ -27,6 +27,7 @@ CLI가 출력하는 **`👉 Next Options (Atomic)` 목록에서 단 하나의
27
27
  - CLI가 이슈 생성을 지시하면 이슈를 생성합니다.
28
28
  - CLI가 명령어를 출력하면 **그대로 복사해 실행**합니다. (standalone 환경에서도 레포 경로가 포함될 수 있습니다)
29
29
  - 승인 요청 시 라벨 옵션은 `A: ...` 형식으로 **CLI가 출력한 원문(detail/cmd) 그대로** 공유합니다. 요약/의역하지 않습니다.
30
+ - 승인된 command 옵션을 실행할 때는 세션 불일치 방지를 위해 `npx lee-spec-kit flow <slug|F001|F001-slug> --approve <LABEL> --execute`를 기본으로 사용합니다.
30
31
 
31
32
  ### 3단계: 반복
32
33
 
@@ -1,6 +1,7 @@
1
1
  # GitHub Issue 생성 프로세스
2
2
 
3
3
  GitHub Issue를 생성할 때 따르는 가이드입니다.
4
+ 실행 상태 SSOT는 Feature 폴더의 `issue.md`입니다.
4
5
 
5
6
  ---
6
7
 
@@ -13,22 +14,22 @@ GitHub Issue를 생성할 때 따르는 가이드입니다.
13
14
 
14
15
  ## 단계
15
16
 
16
- ### 1. 이슈 초안 작성
17
+ ### 1. `issue.md` 초안 준비
17
18
 
18
19
  > 📖 **이번 세션에 아직 읽지 않았다면 `docs get`으로 절차/템플릿을 읽고, 이미 읽은 동일 문서는 재호출하지 않은 채 초안을 생성해 기준으로 사용하세요.**
19
20
 
20
21
  ```bash
21
22
  # 1) 절차/템플릿 정책 확인 (이번 세션 미확인 문서만)
22
23
  npx lee-spec-kit docs get create-issue --json
23
- npx lee-spec-kit docs get issue-template --json
24
+ npx lee-spec-kit docs get issue-doc --json
24
25
 
25
26
  # 2) 초안 본문 생성 (원격 작업 아님)
26
27
  npx lee-spec-kit github issue F001 --json
27
28
  ```
28
29
 
29
- `docs get issue-template --json` 출력은 섹션 정책으로 보고,
30
- `github issue --json`의 `body`를 우선 본문 초안으로 사용하세요.
31
- 필요하면 `bodyFile` 경로 파일을 함께 참고하세요.
30
+ `docs get issue-doc --json` 출력은 문서 구조 정책으로 보고,
31
+ `github issue --json`의 `body`를 참고해 `issue.md` 초안을 보완하세요.
32
+ 실제 진행 상태는 `issue.md`의 `상태(Draft | Ready)`를 사용합니다.
32
33
 
33
34
  | 항목 | 형식 |
34
35
  | ------ | ---------------------------------------- |
@@ -37,19 +38,19 @@ npx lee-spec-kit github issue F001 --json
37
38
  | 라벨 | `enhancement`, `bug`, `documentation` 등 |
38
39
  | 담당자 | `@me` (기본값) |
39
40
 
40
- ### 2. 사용자 확인 요청
41
+ ### 2. 사용자 확인 요청 + `Ready` 전환
41
42
 
42
43
  > 🚨 **사용자 확인 필수**
43
44
 
44
- 이슈 생성 다음 내용을 공유하고 명시적 승인(OK) 대기:
45
+ `issue.md` 초안 기준으로 다음 내용을 공유하고 명시적 승인(OK) 대기:
45
46
 
46
47
  - 제목
47
- - 본문 전체 초안 (`body` 기준)
48
+ - 본문 전체 초안 (`issue.md` 기준)
48
49
  - 라벨
49
50
 
50
- 생성 목표/완료 기준을 spec 기준으로 구체화하고 검토하세요.
51
+ 승인 `issue.md` 상태를 `Ready`로 변경하세요.
51
52
 
52
- ### 3. 이슈 생성
53
+ ### 3. 이슈 생성 (`issue.md`가 `Ready`일 때)
53
54
 
54
55
  ```bash
55
56
  gh issue create \
@@ -62,9 +63,15 @@ gh issue create \
62
63
  npx lee-spec-kit github issue F001 --create --confirm OK --labels enhancement
63
64
  ```
64
65
 
66
+ 생성 후:
67
+ - 생성된 이슈 번호를 `issue.md`에 기록
68
+ - `spec.md`, `tasks.md`의 이슈 번호도 동기화
69
+ - `issue.md` 상태는 `Ready`로 유지 (`Issue Number`/링크 필드로 생성 상태를 관리)
70
+
65
71
  ---
66
72
 
67
73
  ## 참조 문서
68
74
 
69
75
  - **초안 생성기**: `npx lee-spec-kit github issue <feature-name>`
70
76
  - **승인 규칙**: 제목/본문/라벨 공유 후 `--create --confirm OK` 실행
77
+ - **실행 상태 SSOT**: `docs/features/.../<feature>/issue.md`