projectstore-codex 0.0.1 → 0.28.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.
Files changed (185) hide show
  1. package/.codex-plugin/plugin.json +48 -0
  2. package/README.md +15 -7
  3. package/bin/projectstore-codex.mjs +88 -0
  4. package/hooks/hooks.json +59 -0
  5. package/node_modules/projectstore/.claude-plugin/marketplace.json +40 -0
  6. package/node_modules/projectstore/.claude-plugin/plugin.json +23 -0
  7. package/node_modules/projectstore/.mcp.json +14 -0
  8. package/node_modules/projectstore/AGENTS.md +26 -0
  9. package/node_modules/projectstore/LICENSE +21 -0
  10. package/node_modules/projectstore/README.md +284 -0
  11. package/node_modules/projectstore/agents/archaeologist.md +76 -0
  12. package/node_modules/projectstore/agents/clerk.md +93 -0
  13. package/node_modules/projectstore/agents/critic.md +94 -0
  14. package/node_modules/projectstore/agents/librarian.md +81 -0
  15. package/node_modules/projectstore/agents/planner.md +80 -0
  16. package/node_modules/projectstore/agents/reviewer.md +98 -0
  17. package/node_modules/projectstore/bin/projectstore.mjs +7 -0
  18. package/node_modules/projectstore/commands/adr.md +57 -0
  19. package/node_modules/projectstore/commands/agents.md +180 -0
  20. package/node_modules/projectstore/commands/bind.md +128 -0
  21. package/node_modules/projectstore/commands/codemap.md +50 -0
  22. package/node_modules/projectstore/commands/concept.md +17 -0
  23. package/node_modules/projectstore/commands/doctor.md +166 -0
  24. package/node_modules/projectstore/commands/epic.md +40 -0
  25. package/node_modules/projectstore/commands/graph.md +56 -0
  26. package/node_modules/projectstore/commands/kanban.md +40 -0
  27. package/node_modules/projectstore/commands/meeting.md +17 -0
  28. package/node_modules/projectstore/commands/reconcile.md +73 -0
  29. package/node_modules/projectstore/commands/research.md +17 -0
  30. package/node_modules/projectstore/commands/review.md +89 -0
  31. package/node_modules/projectstore/commands/runbook.md +17 -0
  32. package/node_modules/projectstore/commands/scaffold.md +23 -0
  33. package/node_modules/projectstore/commands/search.md +22 -0
  34. package/node_modules/projectstore/commands/spec.md +91 -0
  35. package/node_modules/projectstore/commands/status.md +27 -0
  36. package/node_modules/projectstore/commands/statusline.md +46 -0
  37. package/node_modules/projectstore/commands/story.md +113 -0
  38. package/node_modules/projectstore/docs/extending.md +172 -0
  39. package/node_modules/projectstore/docs/getting-started.md +133 -0
  40. package/node_modules/projectstore/docs/harnesses.md +163 -0
  41. package/node_modules/projectstore/docs/how-it-works.md +263 -0
  42. package/node_modules/projectstore/docs/images/loop-light.svg +94 -0
  43. package/node_modules/projectstore/docs/images/loop.svg +93 -0
  44. package/node_modules/projectstore/docs/images/statusline-hud.png +0 -0
  45. package/node_modules/projectstore/docs/images/team-light.svg +79 -0
  46. package/node_modules/projectstore/docs/images/team.svg +79 -0
  47. package/node_modules/projectstore/harnesses/claude-code.json +483 -0
  48. package/node_modules/projectstore/harnesses/codex.json +332 -0
  49. package/node_modules/projectstore/hooks/hooks.json +59 -0
  50. package/node_modules/projectstore/hooks/pre-compact.mjs +121 -0
  51. package/node_modules/projectstore/hooks/session-rules.mjs +63 -0
  52. package/node_modules/projectstore/hooks/session-start.mjs +301 -0
  53. package/node_modules/projectstore/hooks/session-stop.mjs +84 -0
  54. package/node_modules/projectstore/package.json +70 -0
  55. package/node_modules/projectstore/scaffold/checklists.json +88 -0
  56. package/node_modules/projectstore/scaffold/headings.json +171 -0
  57. package/node_modules/projectstore/scaffold/layouts/engineering.json +85 -0
  58. package/node_modules/projectstore/scripts/binding.mjs +165 -0
  59. package/node_modules/projectstore/scripts/build-adapters.mjs +264 -0
  60. package/node_modules/projectstore/scripts/cli.mjs +595 -0
  61. package/node_modules/projectstore/scripts/codemap.mjs +99 -0
  62. package/node_modules/projectstore/scripts/diff-refs.mjs +127 -0
  63. package/node_modules/projectstore/scripts/doctor.mjs +2127 -0
  64. package/node_modules/projectstore/scripts/draft.mjs +261 -0
  65. package/node_modules/projectstore/scripts/graph.mjs +219 -0
  66. package/node_modules/projectstore/scripts/harness.mjs +608 -0
  67. package/node_modules/projectstore/scripts/install-harness.mjs +1387 -0
  68. package/node_modules/projectstore/scripts/kanban.mjs +174 -0
  69. package/node_modules/projectstore/scripts/lib.mjs +3085 -0
  70. package/node_modules/projectstore/scripts/mcp.mjs +391 -0
  71. package/node_modules/projectstore/scripts/portable-registration.mjs +198 -0
  72. package/node_modules/projectstore/scripts/provenance.mjs +375 -0
  73. package/node_modules/projectstore/scripts/query.mjs +490 -0
  74. package/node_modules/projectstore/scripts/reconcile.mjs +422 -0
  75. package/node_modules/projectstore/scripts/statusline-launcher.mjs +141 -0
  76. package/node_modules/projectstore/scripts/statusline.mjs +253 -0
  77. package/node_modules/projectstore/scripts/story-section.mjs +209 -0
  78. package/node_modules/projectstore/scripts/surfaces.mjs +421 -0
  79. package/node_modules/projectstore/scripts/tokens.mjs +449 -0
  80. package/node_modules/projectstore/scripts/touch-session.mjs +336 -0
  81. package/node_modules/projectstore/scripts/version-guard.mjs +255 -0
  82. package/node_modules/projectstore/scripts/worktree.mjs +109 -0
  83. package/node_modules/projectstore/skills/projectstore-decision-detector/SKILL.md +40 -0
  84. package/node_modules/projectstore/skills/projectstore-peer-reviewer/SKILL.md +38 -0
  85. package/node_modules/projectstore/skills/projectstore-story-completion/SKILL.md +50 -0
  86. package/node_modules/projectstore/skills/projectstore-vault-communication/SKILL.md +96 -0
  87. package/node_modules/projectstore/templates/claude-md-block.md.tmpl +26 -0
  88. package/node_modules/projectstore/templates/de/adr.md.tmpl +67 -0
  89. package/node_modules/projectstore/templates/de/concept.md.tmpl +43 -0
  90. package/node_modules/projectstore/templates/de/epic.md.tmpl +59 -0
  91. package/node_modules/projectstore/templates/de/folder-readme.md.tmpl +14 -0
  92. package/node_modules/projectstore/templates/de/kanban.md.tmpl +36 -0
  93. package/node_modules/projectstore/templates/de/meeting.md.tmpl +38 -0
  94. package/node_modules/projectstore/templates/de/research.md.tmpl +47 -0
  95. package/node_modules/projectstore/templates/de/runbook.md.tmpl +53 -0
  96. package/node_modules/projectstore/templates/de/spec.md.tmpl +64 -0
  97. package/node_modules/projectstore/templates/de/story.md.tmpl +76 -0
  98. package/node_modules/projectstore/templates/de/strings.json +6 -0
  99. package/node_modules/projectstore/templates/en/adr.md.tmpl +67 -0
  100. package/node_modules/projectstore/templates/en/concept.md.tmpl +43 -0
  101. package/node_modules/projectstore/templates/en/epic.md.tmpl +59 -0
  102. package/node_modules/projectstore/templates/en/folder-readme.md.tmpl +14 -0
  103. package/node_modules/projectstore/templates/en/kanban.md.tmpl +36 -0
  104. package/node_modules/projectstore/templates/en/meeting.md.tmpl +38 -0
  105. package/node_modules/projectstore/templates/en/research.md.tmpl +47 -0
  106. package/node_modules/projectstore/templates/en/runbook.md.tmpl +53 -0
  107. package/node_modules/projectstore/templates/en/spec.md.tmpl +64 -0
  108. package/node_modules/projectstore/templates/en/story.md.tmpl +76 -0
  109. package/node_modules/projectstore/templates/en/strings.json +6 -0
  110. package/node_modules/projectstore/templates/es/adr.md.tmpl +67 -0
  111. package/node_modules/projectstore/templates/es/concept.md.tmpl +43 -0
  112. package/node_modules/projectstore/templates/es/epic.md.tmpl +59 -0
  113. package/node_modules/projectstore/templates/es/folder-readme.md.tmpl +14 -0
  114. package/node_modules/projectstore/templates/es/kanban.md.tmpl +36 -0
  115. package/node_modules/projectstore/templates/es/meeting.md.tmpl +38 -0
  116. package/node_modules/projectstore/templates/es/research.md.tmpl +47 -0
  117. package/node_modules/projectstore/templates/es/runbook.md.tmpl +53 -0
  118. package/node_modules/projectstore/templates/es/spec.md.tmpl +64 -0
  119. package/node_modules/projectstore/templates/es/story.md.tmpl +76 -0
  120. package/node_modules/projectstore/templates/es/strings.json +6 -0
  121. package/node_modules/projectstore/templates/fr/adr.md.tmpl +67 -0
  122. package/node_modules/projectstore/templates/fr/concept.md.tmpl +43 -0
  123. package/node_modules/projectstore/templates/fr/epic.md.tmpl +59 -0
  124. package/node_modules/projectstore/templates/fr/folder-readme.md.tmpl +14 -0
  125. package/node_modules/projectstore/templates/fr/kanban.md.tmpl +36 -0
  126. package/node_modules/projectstore/templates/fr/meeting.md.tmpl +38 -0
  127. package/node_modules/projectstore/templates/fr/research.md.tmpl +47 -0
  128. package/node_modules/projectstore/templates/fr/runbook.md.tmpl +53 -0
  129. package/node_modules/projectstore/templates/fr/spec.md.tmpl +64 -0
  130. package/node_modules/projectstore/templates/fr/story.md.tmpl +76 -0
  131. package/node_modules/projectstore/templates/fr/strings.json +6 -0
  132. package/node_modules/projectstore/templates/ru/adr.md.tmpl +67 -0
  133. package/node_modules/projectstore/templates/ru/concept.md.tmpl +43 -0
  134. package/node_modules/projectstore/templates/ru/epic.md.tmpl +59 -0
  135. package/node_modules/projectstore/templates/ru/folder-readme.md.tmpl +14 -0
  136. package/node_modules/projectstore/templates/ru/kanban.md.tmpl +36 -0
  137. package/node_modules/projectstore/templates/ru/meeting.md.tmpl +38 -0
  138. package/node_modules/projectstore/templates/ru/research.md.tmpl +47 -0
  139. package/node_modules/projectstore/templates/ru/runbook.md.tmpl +53 -0
  140. package/node_modules/projectstore/templates/ru/spec.md.tmpl +64 -0
  141. package/node_modules/projectstore/templates/ru/story.md.tmpl +76 -0
  142. package/node_modules/projectstore/templates/ru/strings.json +6 -0
  143. package/node_modules/projectstore/templates/zh/adr.md.tmpl +67 -0
  144. package/node_modules/projectstore/templates/zh/concept.md.tmpl +43 -0
  145. package/node_modules/projectstore/templates/zh/epic.md.tmpl +59 -0
  146. package/node_modules/projectstore/templates/zh/folder-readme.md.tmpl +14 -0
  147. package/node_modules/projectstore/templates/zh/kanban.md.tmpl +36 -0
  148. package/node_modules/projectstore/templates/zh/meeting.md.tmpl +38 -0
  149. package/node_modules/projectstore/templates/zh/research.md.tmpl +47 -0
  150. package/node_modules/projectstore/templates/zh/runbook.md.tmpl +53 -0
  151. package/node_modules/projectstore/templates/zh/spec.md.tmpl +64 -0
  152. package/node_modules/projectstore/templates/zh/story.md.tmpl +76 -0
  153. package/node_modules/projectstore/templates/zh/strings.json +6 -0
  154. package/package.json +36 -14
  155. package/plugin.json +53 -0
  156. package/skills/projectstore-adr/SKILL.md +76 -0
  157. package/skills/projectstore-agents/SKILL.md +50 -0
  158. package/skills/projectstore-archaeologist/SKILL.md +109 -0
  159. package/skills/projectstore-bind/SKILL.md +44 -0
  160. package/skills/projectstore-clerk/SKILL.md +126 -0
  161. package/skills/projectstore-codemap/SKILL.md +69 -0
  162. package/skills/projectstore-concept/SKILL.md +36 -0
  163. package/skills/projectstore-critic/SKILL.md +127 -0
  164. package/skills/projectstore-decision-detector/SKILL.md +59 -0
  165. package/skills/projectstore-doctor/SKILL.md +33 -0
  166. package/skills/projectstore-epic/SKILL.md +59 -0
  167. package/skills/projectstore-graph/SKILL.md +75 -0
  168. package/skills/projectstore-kanban/SKILL.md +60 -0
  169. package/skills/projectstore-librarian/SKILL.md +114 -0
  170. package/skills/projectstore-meeting/SKILL.md +36 -0
  171. package/skills/projectstore-peer-reviewer/SKILL.md +57 -0
  172. package/skills/projectstore-planner/SKILL.md +113 -0
  173. package/skills/projectstore-reconcile/SKILL.md +92 -0
  174. package/skills/projectstore-research/SKILL.md +36 -0
  175. package/skills/projectstore-review/SKILL.md +108 -0
  176. package/skills/projectstore-reviewer/SKILL.md +131 -0
  177. package/skills/projectstore-runbook/SKILL.md +36 -0
  178. package/skills/projectstore-scaffold/SKILL.md +42 -0
  179. package/skills/projectstore-search/SKILL.md +41 -0
  180. package/skills/projectstore-spec/SKILL.md +110 -0
  181. package/skills/projectstore-status/SKILL.md +47 -0
  182. package/skills/projectstore-statusline/SKILL.md +29 -0
  183. package/skills/projectstore-story/SKILL.md +132 -0
  184. package/skills/projectstore-story-completion/SKILL.md +69 -0
  185. package/skills/projectstore-vault-communication/SKILL.md +115 -0
@@ -0,0 +1,64 @@
1
+ ---
2
+ type: spec
3
+ id: {{id_json}}
4
+ title: {{title_json}}
5
+ status: draft
6
+ date: {{date}}
7
+ updated: {{date}}
8
+ authors: [{{author_json}}]
9
+ tags: {{tags}}
10
+ external_refs: {}
11
+ adr: []
12
+ stories: []
13
+ review_status: pending
14
+ reviewed_at: null
15
+ ---
16
+
17
+ # {{title}}
18
+
19
+ | Поле | Значение |
20
+ |---|---|
21
+ | **Статус** | draft |
22
+ | **Дата** | {{date}} |
23
+ | **Покрывает** | <!-- заполняется из stories: --> |
24
+
25
+ Критерии приёмки спеки — **дополнение** к критериям приёмки покрытых story,
26
+ не замена: story сдаётся, когда зелёные и те и другие (ADR-007).
27
+
28
+ ---
29
+
30
+ ## Как решаем
31
+
32
+ <!-- Подход со ссылками на ADR, которые его решили: [[../adr/ADR-XXX-...|ADR-XXX]]. -->
33
+
34
+ ## Контракты поведения
35
+
36
+ <!-- Нумерованные, проверяемые по одному. Каждый — наблюдаемый результат, не шаг реализации.
37
+ Для research-спайка: вопросы, на которые надо ответить + критерии выхода. -->
38
+
39
+ 1.
40
+ 2.
41
+
42
+ ## Модули и файлы
43
+
44
+ <!-- Опционально (можно опустить для спайков): дерево файлов/модулей, которым управляет спека. -->
45
+
46
+ ## Тестирование
47
+
48
+ <!-- Опционально: как проверяются контракты — юнит, интеграция, корпусные ворота. -->
49
+
50
+ ## Приёмка
51
+
52
+ <!-- Чекбоксы. Пункты конкретных story помечаются "— stories: story-002";
53
+ пункты без атрибуции применяются ко ВСЕМ покрытым story. Frontmatter — только inline flow. -->
54
+
55
+ - [ ] — stories:
56
+ - [ ]
57
+
58
+ ## Ссылки
59
+
60
+ -
61
+
62
+ ---
63
+
64
+ *Обновлено: {{date}}*
@@ -0,0 +1,76 @@
1
+ ---
2
+ type: story
3
+ id: {{id_json}}
4
+ epic: {{epic_id_json}}
5
+ title: {{title_json}}
6
+ status: planned
7
+ priority: p2
8
+ assignee: {{author_json}}
9
+ created: {{date}}
10
+ updated: {{date}}
11
+ external_refs: {}
12
+ tags: {{tags}}
13
+ code_refs: []
14
+ specs: []
15
+ started_at: null
16
+ closed_at: null
17
+ plan_updated_at: null
18
+ ---
19
+
20
+ # {{title}}
21
+
22
+ | Поле | Значение |
23
+ |---|---|
24
+ | **Эпик** | [{{epic_id}}](../epic.md) |
25
+ | **Статус** | planned |
26
+ | **Приоритет** | p2 |
27
+ | **Исполнитель** | {{author}} |
28
+
29
+ ---
30
+
31
+ ## Описание
32
+
33
+ <!-- Какую проблему решает эта история? Кто пользователь? -->
34
+
35
+ ## Декомпозиция
36
+
37
+ <!-- Гранулярный чеклист конкретных задач. Каждый пункт — достаточно мал, чтобы закрыть за одну сессию. -->
38
+
39
+ - [ ]
40
+ - [ ]
41
+ - [ ]
42
+
43
+ ## План реализации
44
+
45
+ <!-- Пишется на гейте старта работы (/projectstore:story plan), ПОСЛЕ изучения
46
+ кодовой базы. Если story покрыта спекой — это тонкий маршрут по её
47
+ контрактам: какие контракты, в каком порядке, какие файлы. -->
48
+
49
+ ## Критерии приёмки
50
+
51
+ <!-- Как понять, что готово? Каждый критерий проверяем. Отмечается только с
52
+ подтверждением при закрытии: - [x] <критерий> — подтверждение: <тест | команда | file:line> -->
53
+
54
+ - [ ]
55
+ - [ ]
56
+
57
+ ## Итоговое резюме
58
+
59
+ <!-- Пишется на гейте закрытия (/projectstore:story close): что изменилось,
60
+ почему, какие тесты прогнаны, риски и follow-up. -->
61
+
62
+ ## Технические заметки
63
+
64
+ <!-- Подсказки по реализации, ограничения, подводные камни. -->
65
+
66
+ ## Зависимости
67
+
68
+ -
69
+
70
+ ## Вложения
71
+
72
+ -
73
+
74
+ ---
75
+
76
+ *Обновлено: {{date}}*
@@ -0,0 +1,6 @@
1
+ {
2
+ "statusline_no_work": "Эпик и стори ещё не в работе в этой сессии",
3
+ "statusline_state_error": "⚠ состояние сессии не читается",
4
+ "statusline_example_epic": "Супер-фича в супер-продукте",
5
+ "statusline_example_story": "Ручка для туалетной бумаги"
6
+ }
@@ -0,0 +1,67 @@
1
+ ---
2
+ type: adr
3
+ id: {{id_json}}
4
+ title: {{title_json}}
5
+ status: proposed
6
+ date: {{date}}
7
+ authors: [{{author_json}}]
8
+ tags: {{tags}}
9
+ external_refs: {}
10
+ supersedes: null
11
+ superseded_by: null
12
+ review_status: pending
13
+ reviewed_at: null
14
+ ---
15
+
16
+ # {{title}}
17
+
18
+ | 字段 | 值 |
19
+ |---|---|
20
+ | **状态** | proposed |
21
+ | **日期** | {{date}} |
22
+ | **作者** | {{author}} |
23
+
24
+ ---
25
+
26
+ ## 背景
27
+
28
+ <!-- 有哪些约束在起作用?为什么现在需要做这个决策? -->
29
+
30
+ ## 决策
31
+
32
+ <!-- 决策本身,表述清晰简洁。 -->
33
+
34
+ ## 理由
35
+
36
+ <!-- 为什么选它而不是备选方案。建议逐条编号。 -->
37
+
38
+ ## 备选方案
39
+
40
+ ### 备选方案 A:{{alternative_a_name}}
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
+ *最后更新:{{date}}*
@@ -0,0 +1,43 @@
1
+ ---
2
+ type: concept
3
+ slug: {{slug_json}}
4
+ title: {{title_json}}
5
+ status: draft
6
+ date: {{date}}
7
+ authors: [{{author_json}}]
8
+ tags: {{tags}}
9
+ ---
10
+
11
+ # {{title}}
12
+
13
+ ## 是什么
14
+
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
+ *最后更新:{{date}}*
@@ -0,0 +1,59 @@
1
+ ---
2
+ type: epic
3
+ id: {{id_json}}
4
+ title: {{title_json}}
5
+ status: planned
6
+ priority: p2
7
+ created: {{date}}
8
+ updated: {{date}}
9
+ external_refs: {}
10
+ tags: {{tags}}
11
+ code_refs: []
12
+ review_status: pending
13
+ reviewed_at: null
14
+ ---
15
+
16
+ # {{id}}:{{title}}
17
+
18
+ | 字段 | 值 |
19
+ |---|---|
20
+ | **状态** | planned |
21
+ | **优先级** | p2 |
22
+ | **创建于** | {{date}} |
23
+ | **更新于** | {{date}} |
24
+
25
+ ---
26
+
27
+ ## 目标
28
+
29
+ <!-- 这个 epic 的「成功」是什么样子? -->
30
+
31
+ ## 背景
32
+
33
+ <!-- 来龙去脉、动机,以及为什么是现在。 -->
34
+
35
+ ## Stories
36
+
37
+ | Story | 状态 | 描述 |
38
+ |-------|------|------|
39
+ | [story-001](./stories/story-001.md) | planned | |
40
+
41
+ ## 预期成果
42
+
43
+ - [ ]
44
+
45
+ ## 依赖
46
+
47
+ -
48
+
49
+ ## 待定问题
50
+
51
+ - [ ]
52
+
53
+ ## 相关
54
+
55
+ -
56
+
57
+ ---
58
+
59
+ *最后更新:{{date}}*
@@ -0,0 +1,14 @@
1
+ # {{folder_name}}
2
+
3
+ {{folder_description}}
4
+
5
+ ## 索引
6
+
7
+ <!-- 通过 /projectstore:* 命令新增条目时,projectstore 会保持此索引为最新。 -->
8
+
9
+ | 文件 | 标题 | 状态 | 日期 |
10
+ |------|------|------|------|
11
+
12
+ ---
13
+
14
+ *由 projectstore 插件维护。索引表格之外的手工修改会被保留。*
@@ -0,0 +1,36 @@
1
+ ---
2
+
3
+ kanban-plugin: board
4
+ projectstore: derived
5
+ generated_at: {{generated_at}}
6
+
7
+ ---
8
+
9
+ ## 待办池
10
+
11
+ {{backlog_items}}
12
+
13
+ ## 待开始
14
+
15
+ {{todo_items}}
16
+
17
+ ## 进行中
18
+
19
+ {{in_progress_items}}
20
+
21
+ ## 评审
22
+
23
+ {{review_items}}
24
+
25
+ ## 已完成
26
+
27
+ {{done_items}}
28
+
29
+
30
+
31
+
32
+ %% kanban:settings
33
+ ```
34
+ {"kanban-plugin":"board","list-collapse":[false,false,false,false,false]}
35
+ ```
36
+ %%
@@ -0,0 +1,38 @@
1
+ ---
2
+ type: meeting
3
+ date: {{date}}
4
+ slug: {{slug_json}}
5
+ title: {{title_json}}
6
+ attendees: []
7
+ tags: {{tags}}
8
+ ---
9
+
10
+ # {{date}} — {{title}}
11
+
12
+ ## 参会人
13
+
14
+ -
15
+
16
+ ## 议程
17
+
18
+ -
19
+
20
+ ## 记录
21
+
22
+ ###
23
+
24
+ ## 决议
25
+
26
+ - [ ]
27
+
28
+ ## 行动项
29
+
30
+ - [ ] **{{author}}**:
31
+
32
+ ## 后续跟进
33
+
34
+ -
35
+
36
+ ---
37
+
38
+ *记录人:{{author}}*
@@ -0,0 +1,47 @@
1
+ ---
2
+ type: research
3
+ slug: {{slug_json}}
4
+ title: {{title_json}}
5
+ status: draft
6
+ date: {{date}}
7
+ authors: [{{author_json}}]
8
+ tags: {{tags}}
9
+ review_status: pending
10
+ reviewed_at: null
11
+ ---
12
+
13
+ # {{title}}
14
+
15
+ ## 问题
16
+
17
+ <!-- 我们想弄清楚什么? -->
18
+
19
+ ## 结论速览(TL;DR)
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
+ *最后更新:{{date}}*
@@ -0,0 +1,53 @@
1
+ ---
2
+ type: runbook
3
+ slug: {{slug_json}}
4
+ title: {{title_json}}
5
+ status: draft
6
+ date: {{date}}
7
+ authors: [{{author_json}}]
8
+ tags: {{tags}}
9
+ ---
10
+
11
+ # {{title}}
12
+
13
+ ## 用途
14
+
15
+ <!-- 何时、为何使用这份 runbook。 -->
16
+
17
+ ## 前置条件
18
+
19
+ - [ ]
20
+
21
+ ## 步骤
22
+
23
+ ### 1.
24
+
25
+ ```bash
26
+
27
+ ```
28
+
29
+ ### 2.
30
+
31
+ ```bash
32
+
33
+ ```
34
+
35
+ ## 验证
36
+
37
+ - [ ]
38
+
39
+ ## 回滚
40
+
41
+ <!-- 出问题时如何撤销。 -->
42
+
43
+ ## 常见问题
44
+
45
+ ###
46
+
47
+ ## 参考
48
+
49
+ -
50
+
51
+ ---
52
+
53
+ *最后更新:{{date}}*
@@ -0,0 +1,64 @@
1
+ ---
2
+ type: spec
3
+ id: {{id_json}}
4
+ title: {{title_json}}
5
+ status: draft
6
+ date: {{date}}
7
+ updated: {{date}}
8
+ authors: [{{author_json}}]
9
+ tags: {{tags}}
10
+ external_refs: {}
11
+ adr: []
12
+ stories: []
13
+ review_status: pending
14
+ reviewed_at: null
15
+ ---
16
+
17
+ # {{title}}
18
+
19
+ | 字段 | 值 |
20
+ |---|---|
21
+ | **状态** | draft |
22
+ | **日期** | {{date}} |
23
+ | **覆盖** | <!-- 由 stories 填充: --> |
24
+
25
+ spec 的验收是所覆盖 story 自身验收标准的**追加项**,不是替代:两边都为绿,
26
+ story 才算完成(ADR-007)。
27
+
28
+ ---
29
+
30
+ ## 解决方案
31
+
32
+ <!-- 具体做法,并引用做出该决策的 ADR:[[../adr/ADR-XXX-...|ADR-XXX]]。 -->
33
+
34
+ ## 行为契约
35
+
36
+ <!-- 编号列出,逐条可测。每条描述可观察的结果,而不是实现步骤。
37
+ 若是研究性 spike:需要回答的问题 + 退出条件。 -->
38
+
39
+ 1.
40
+ 2.
41
+
42
+ ## 模块与文件
43
+
44
+ <!-- 可选(spike 可省略):本 spec 管辖的文件/模块树。 -->
45
+
46
+ ## 测试
47
+
48
+ <!-- 可选:契约如何验证 —— 单元测试、集成测试、语料门禁。 -->
49
+
50
+ ## 验收
51
+
52
+ <!-- 复选框。仅属于某个 story 的条目标注 "— stories: story-002";
53
+ 未标注的条目适用于所有被覆盖的 story。frontmatter 只用 inline flow。 -->
54
+
55
+ - [ ] — stories:
56
+ - [ ]
57
+
58
+ ## 参考
59
+
60
+ -
61
+
62
+ ---
63
+
64
+ *最后更新:{{date}}*
@@ -0,0 +1,76 @@
1
+ ---
2
+ type: story
3
+ id: {{id_json}}
4
+ epic: {{epic_id_json}}
5
+ title: {{title_json}}
6
+ status: planned
7
+ priority: p2
8
+ assignee: {{author_json}}
9
+ created: {{date}}
10
+ updated: {{date}}
11
+ external_refs: {}
12
+ tags: {{tags}}
13
+ code_refs: []
14
+ specs: []
15
+ started_at: null
16
+ closed_at: null
17
+ plan_updated_at: null
18
+ ---
19
+
20
+ # {{title}}
21
+
22
+ | 字段 | 值 |
23
+ |---|---|
24
+ | **Epic** | [{{epic_id}}](../epic.md) |
25
+ | **状态** | planned |
26
+ | **优先级** | p2 |
27
+ | **负责人** | {{author}} |
28
+
29
+ ---
30
+
31
+ ## 描述
32
+
33
+ <!-- 这个 story 解决什么问题?用户是谁? -->
34
+
35
+ ## 任务分解
36
+
37
+ <!-- 具体任务的细颗粒清单。每一条都小到能在一次会话内做完。 -->
38
+
39
+ - [ ]
40
+ - [ ]
41
+ - [ ]
42
+
43
+ ## 实施计划
44
+
45
+ <!-- 在开工门禁处写(/projectstore:story plan),且要在读过代码之后。
46
+ 若有 spec 覆盖本 story,这里只是穿过其契约的一条细路线:
47
+ 用哪些契约、什么顺序、改哪些文件。 -->
48
+
49
+ ## 验收标准
50
+
51
+ <!-- 怎样才算做完?每条都可验证。关闭时只有带证据才能打勾:
52
+ - [x] <标准> — 证据:<测试 | 命令 | file:line> -->
53
+
54
+ - [ ]
55
+ - [ ]
56
+
57
+ ## 最终总结
58
+
59
+ <!-- 在完成门禁处写(/projectstore:story close):改了什么、为什么、
60
+ 跑了哪些测试、风险与后续事项。 -->
61
+
62
+ ## 技术说明
63
+
64
+ <!-- 实现提示、约束、坑。 -->
65
+
66
+ ## 依赖
67
+
68
+ -
69
+
70
+ ## 附件
71
+
72
+ -
73
+
74
+ ---
75
+
76
+ *最后更新:{{date}}*
@@ -0,0 +1,6 @@
1
+ {
2
+ "statusline_no_work": "本次会话还没有进行中的 epic 或 story",
3
+ "statusline_state_error": "⚠ 会话状态无法读取",
4
+ "statusline_example_epic": "超级产品里的超级功能",
5
+ "statusline_example_story": "卫生纸卷手柄"
6
+ }