@miniidealab/openlogos 0.6.3 → 0.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAKA,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAerE;AAED,wBAAgB,IAAI,SAmFnB"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAMA,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAerE;AAED,wBAAgB,IAAI,SA2FnB"}
@@ -2,6 +2,7 @@ import { readFileSync, writeFileSync, existsSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
3
  import { readLocale, t } from '../i18n.js';
4
4
  import { createAgentsMd, deploySkills, deploySpecs, deployOpenCodePlugin } from './init.js';
5
+ import { syncResourceIndex } from '../lib/sync-resource-index.js';
5
6
  export function syncLogosProjectName(root, projectName) {
6
7
  const yamlPath = join(root, 'logos', 'logos-project.yaml');
7
8
  if (!existsSync(yamlPath))
@@ -32,6 +33,14 @@ export function sync() {
32
33
  if (namesynced) {
33
34
  console.log(` ✓ logos-project.yaml name synced to "${projectName}"`);
34
35
  }
36
+ // ========== Step 2: 扫描并补录缺失的 resource_index 条目 ==========
37
+ const indexResult = syncResourceIndex(root, locale);
38
+ if (indexResult.added > 0) {
39
+ console.log(` ✓ ${t(locale, 'sync.indexAdded', { count: String(indexResult.added) })}`);
40
+ }
41
+ else {
42
+ console.log(` ✓ ${t(locale, 'sync.indexNoop')}`);
43
+ }
35
44
  const requiredDocs = {
36
45
  changes: {
37
46
  label: { en: 'Change Proposals', zh: '变更提案' },
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAiOD,wBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAQpF;AAGD,eAAO,MAAM,UAAU,kJAIb,CAAC;AAEX,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW/C,CAAC;AAIF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAyCrE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAuCpD;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,KAAK,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GAChF,MAAM,CA0ER;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CASzD;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAO7D"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAqOD,wBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAQpF;AAGD,eAAO,MAAM,UAAU,kJAIb,CAAC;AAEX,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW/C,CAAC;AAIF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAyCrE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAuCpD;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,KAAK,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GAChF,MAAM,CA0ER;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CASzD;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAO7D"}
package/dist/i18n.js CHANGED
@@ -39,6 +39,8 @@ const messages = {
39
39
  'init.opencodeConfigCreated': 'opencode.json created with recommended permission defaults',
40
40
  'init.opencodeConfigUpdated': 'opencode.json merged with missing recommended permission defaults',
41
41
  'init.opencodeCommandsDeployed': 'OpenCode slash commands deployed to .opencode/commands/ ({count} files)',
42
+ 'sync.indexAdded': '{count} new file(s) added to logos-project.yaml resource_index',
43
+ 'sync.indexNoop': 'logos-project.yaml resource_index is already up to date',
42
44
  // status
43
45
  'phase.1': 'Phase 1 · Requirements (WHY)',
44
46
  'phase.2': 'Phase 2 · Product Design (WHAT)',
@@ -143,6 +145,8 @@ const messages = {
143
145
  'init.opencodeConfigCreated': '已创建 opencode.json,并写入推荐权限默认值',
144
146
  'init.opencodeConfigUpdated': '已为 opencode.json 补齐缺失的推荐权限默认值',
145
147
  'init.opencodeCommandsDeployed': 'OpenCode 斜杠命令已部署到 .opencode/commands/({count} 个文件)',
148
+ 'sync.indexAdded': '{count} 个新文件已补录到 logos-project.yaml resource_index',
149
+ 'sync.indexNoop': 'logos-project.yaml resource_index 已是最新,无需补录',
146
150
  // status
147
151
  'phase.1': 'Phase 1 · 需求文档 (WHY)',
148
152
  'phase.2': 'Phase 2 · 产品设计 (WHAT)',
package/dist/i18n.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Locale } from '../i18n.js';
2
+ /** 根据文件路径推断 desc;无匹配规则返回 null */
3
+ export declare function inferResourceDesc(relPath: string, locale: Locale): string | null;
4
+ export interface SyncResourceIndexResult {
5
+ added: number;
6
+ skipped: number;
7
+ }
8
+ /** 扫描项目文档,将尚未收录的文件补录到 logos-project.yaml 的 resource_index */
9
+ export declare function syncResourceIndex(root: string, locale: Locale): SyncResourceIndexResult;
10
+ //# sourceMappingURL=sync-resource-index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-resource-index.d.ts","sourceRoot":"","sources":["../../src/lib/sync-resource-index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAkJzC,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQhF;AA6CD,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,6DAA6D;AAC7D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,uBAAuB,CAgCvF"}
@@ -0,0 +1,192 @@
1
+ import { existsSync, readFileSync, readdirSync, statSync, writeFileSync } from 'node:fs';
2
+ import { join, relative } from 'node:path';
3
+ // ---------------------------------------------------------------------------
4
+ // 文件扫描
5
+ // ---------------------------------------------------------------------------
6
+ function listFilesRecursive(dir) {
7
+ if (!existsSync(dir))
8
+ return [];
9
+ try {
10
+ return readdirSync(dir, { recursive: true })
11
+ .map(f => String(f))
12
+ .filter(f => {
13
+ const full = join(dir, f);
14
+ return statSync(full).isFile() && !f.endsWith('.gitkeep');
15
+ });
16
+ }
17
+ catch {
18
+ return [];
19
+ }
20
+ }
21
+ /** 扫描项目中所有应纳入 resource_index 的文件,返回相对于项目根目录的路径列表 */
22
+ function scanCandidateFiles(root) {
23
+ const results = [];
24
+ const scanDir = (absDir) => {
25
+ for (const rel of listFilesRecursive(absDir)) {
26
+ results.push(relative(root, join(absDir, rel)).replace(/\\/g, '/'));
27
+ }
28
+ };
29
+ // logos/resources/ 各子目录
30
+ scanDir(join(root, 'logos/resources/prd'));
31
+ scanDir(join(root, 'logos/resources/api'));
32
+ scanDir(join(root, 'logos/resources/database'));
33
+ scanDir(join(root, 'logos/resources/test'));
34
+ scanDir(join(root, 'logos/resources/scenario'));
35
+ scanDir(join(root, 'logos/resources/verify'));
36
+ // spec/
37
+ scanDir(join(root, 'spec'));
38
+ // skills/*/SKILL.md(只要一级子目录下的 SKILL.md)
39
+ const skillsDir = join(root, 'skills');
40
+ if (existsSync(skillsDir)) {
41
+ for (const entry of readdirSync(skillsDir)) {
42
+ const skillMd = join(skillsDir, entry, 'SKILL.md');
43
+ if (existsSync(skillMd) && statSync(skillMd).isFile()) {
44
+ results.push(`skills/${entry}/SKILL.md`);
45
+ }
46
+ }
47
+ }
48
+ return results;
49
+ }
50
+ const RULES = [
51
+ // 1. 场景总览(放在场景文件之前,更具体)
52
+ {
53
+ pattern: /logos\/resources\/prd\/3-technical-plan\/2-scenario-implementation\/00-scenario-overview\.md$/,
54
+ zh: () => '场景实现概览索引。涉及全量场景分类、参与方、实现文档映射关系时必读。',
55
+ en: () => 'Scenario overview index. Required when referencing scenario classification, participants, or document mapping.',
56
+ },
57
+ // 2. 场景时序图:S01-cli-init.md → S01 场景时序图
58
+ {
59
+ pattern: /logos\/resources\/prd\/3-technical-plan\/2-scenario-implementation\/(S\d+)-(.+)\.md$/,
60
+ zh: (m) => `${m[1]} 场景时序图。涉及 ${m[1]} 实现细节、API 设计、异常分支时必读。`,
61
+ en: (m) => `${m[1]} sequence diagram. Required when working on ${m[1]} implementation, API design, or exception branches.`,
62
+ },
63
+ // 3. 测试用例:S01-test-cases.md → S01 测试用例
64
+ {
65
+ pattern: /logos\/resources\/test\/(S\d+)-test-cases\.md$/,
66
+ zh: (m) => `${m[1]} 测试用例。涉及 ${m[1]} 单元测试与场景测试的实现与验收时必读。`,
67
+ en: (m) => `${m[1]} test cases. Required when implementing or verifying ${m[1]} unit and scenario tests.`,
68
+ },
69
+ // 4. 技术架构
70
+ {
71
+ pattern: /logos\/resources\/prd\/3-technical-plan\/1-architecture\/.+\.md$/,
72
+ zh: () => '系统架构概要。涉及技术栈选型、系统组件划分、非功能性约束时必读。',
73
+ en: () => 'System architecture overview. Required when referencing tech stack, system components, or non-functional constraints.',
74
+ },
75
+ // 5. 功能规格
76
+ {
77
+ pattern: /logos\/resources\/prd\/2-product-design\/1-feature-specs\/.+\.md$/,
78
+ zh: () => '产品功能规格。涉及交互设计、功能边界、Skill 行为定义时必读。',
79
+ en: () => 'Product feature spec. Required when referencing interaction design, feature scope, or Skill behavior.',
80
+ },
81
+ // 6. 页面/对话设计
82
+ {
83
+ pattern: /logos\/resources\/prd\/2-product-design\/2-page-design\/.+\.md$/,
84
+ zh: () => '产品交互原型。涉及 CLI 终端输出样式或 AI Skill 对话脚本时必读。',
85
+ en: () => 'Product interaction prototype. Required when referencing CLI output styles or AI Skill dialogue scripts.',
86
+ },
87
+ // 7. 需求文档
88
+ {
89
+ pattern: /logos\/resources\/prd\/1-product-requirements\/.+\.md$/,
90
+ zh: () => '产品需求文档。涉及产品定位、核心场景、验收条件时必读。',
91
+ en: () => 'Product requirements document. Required when referencing product positioning, scenarios, or acceptance criteria.',
92
+ },
93
+ // 8. API 规格(YAML)
94
+ {
95
+ pattern: /logos\/resources\/api\/.+\.ya?ml$/,
96
+ zh: () => 'OpenAPI 接口规格。涉及 API 端点设计、请求/响应结构、状态码时必读。',
97
+ en: () => 'OpenAPI specification. Required when designing API endpoints, request/response schemas, or status codes.',
98
+ },
99
+ // 9. 数据库 DDL
100
+ {
101
+ pattern: /logos\/resources\/database\/.+\.sql$/,
102
+ zh: () => '数据库 Schema(DDL)。涉及表结构、字段定义、索引策略时必读。',
103
+ en: () => 'Database schema (DDL). Required when referencing table structure, field definitions, or index strategies.',
104
+ },
105
+ // 10. 编排测试(JSON)
106
+ {
107
+ pattern: /logos\/resources\/scenario\/.+\.json$/,
108
+ zh: () => 'API 编排测试用例。涉及端到端 API 测试流程、测试数据准备时必读。',
109
+ en: () => 'API orchestration test case. Required when working on end-to-end API testing or test data setup.',
110
+ },
111
+ // 11. 验收报告
112
+ {
113
+ pattern: /logos\/resources\/verify\/.+\.md$/,
114
+ zh: () => '测试验收报告。涉及验收结果、覆盖度分析、Gate 判定时必读。',
115
+ en: () => 'Test acceptance report. Required when referencing test results, coverage analysis, or Gate decisions.',
116
+ },
117
+ // 12. Skills(只匹配 SKILL.md)
118
+ {
119
+ pattern: /skills\/([^/]+)\/SKILL\.md$/,
120
+ zh: (m) => `${m[1]} Skill。使用 ${m[1]} 功能时必读。`,
121
+ en: (m) => `${m[1]} Skill. Required when using the ${m[1]} capability.`,
122
+ },
123
+ // 13. spec 规范文档(md / json)
124
+ {
125
+ pattern: /spec\/.+\.(md|json)$/,
126
+ zh: () => '方法论规范文档。涉及对应规范定义、格式约定时必读。',
127
+ en: () => 'Methodology spec document. Required when referencing the corresponding spec or format convention.',
128
+ },
129
+ ];
130
+ /** 根据文件路径推断 desc;无匹配规则返回 null */
131
+ export function inferResourceDesc(relPath, locale) {
132
+ for (const rule of RULES) {
133
+ const m = relPath.match(rule.pattern);
134
+ if (m) {
135
+ return locale === 'zh' ? rule.zh(m) : rule.en(m);
136
+ }
137
+ }
138
+ return null;
139
+ }
140
+ // ---------------------------------------------------------------------------
141
+ // 解析现有 resource_index 中已有的 path 集合
142
+ // ---------------------------------------------------------------------------
143
+ function parseExistingPaths(yamlContent) {
144
+ const paths = new Set();
145
+ // 匹配 " - path: some/path" 格式(允许前导空格)
146
+ for (const m of yamlContent.matchAll(/^\s*-\s+path:\s*(.+)$/gm)) {
147
+ paths.add(m[1].trim());
148
+ }
149
+ return paths;
150
+ }
151
+ function appendToResourceIndex(yamlContent, entries) {
152
+ if (entries.length === 0)
153
+ return yamlContent;
154
+ const block = entries
155
+ .map(e => ` - path: ${e.path}\n desc: ${e.desc}`)
156
+ .join('\n');
157
+ // 尝试在 "conventions:" 行之前插入(保持文件结构)
158
+ if (/^conventions:/m.test(yamlContent)) {
159
+ return yamlContent.replace(/^(conventions:)/m, `${block}\n\n$1`);
160
+ }
161
+ // 无 conventions 块时追加到文件末尾
162
+ const trimmed = yamlContent.trimEnd();
163
+ return `${trimmed}\n${block}\n`;
164
+ }
165
+ /** 扫描项目文档,将尚未收录的文件补录到 logos-project.yaml 的 resource_index */
166
+ export function syncResourceIndex(root, locale) {
167
+ const yamlPath = join(root, 'logos', 'logos-project.yaml');
168
+ if (!existsSync(yamlPath)) {
169
+ return { added: 0, skipped: 0 };
170
+ }
171
+ const content = readFileSync(yamlPath, 'utf-8');
172
+ const existingPaths = parseExistingPaths(content);
173
+ const candidates = scanCandidateFiles(root);
174
+ const newEntries = [];
175
+ let skipped = 0;
176
+ for (const relPath of candidates) {
177
+ if (existingPaths.has(relPath))
178
+ continue; // 已收录,跳过
179
+ const desc = inferResourceDesc(relPath, locale);
180
+ if (!desc) {
181
+ skipped++;
182
+ continue; // 无匹配规则,跳过
183
+ }
184
+ newEntries.push({ path: relPath, desc });
185
+ }
186
+ if (newEntries.length > 0) {
187
+ const updated = appendToResourceIndex(content, newEntries);
188
+ writeFileSync(yamlPath, updated);
189
+ }
190
+ return { added: newEntries.length, skipped };
191
+ }
192
+ //# sourceMappingURL=sync-resource-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-resource-index.js","sourceRoot":"","sources":["../../src/lib/sync-resource-index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miniidealab/openlogos",
3
- "version": "0.6.3",
3
+ "version": "0.6.4",
4
4
  "description": "CLI tool for the OpenLogos software engineering methodology",
5
5
  "type": "module",
6
6
  "bin": {
@@ -223,3 +223,16 @@ YAML 对空白和特殊字符敏感。AI 生成的 YAML 经常因为特殊字符
223
223
  - `基于时序图帮我生成 OpenAPI YAML`
224
224
  - `帮我设计 S01 相关的 API 规格`
225
225
  - `帮我把所有时序图中的跨系统调用提取为 API`
226
+
227
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
228
+
229
+ 完成本 Skill 的所有 OpenAPI YAML 产出后,**必须**将新生成的文件追加写入 `logos/logos-project.yaml` 的 `resource_index` 字段:
230
+
231
+ ```yaml
232
+ resource_index:
233
+ # ...已有条目...
234
+ - path: logos/resources/api/<文件名>.yaml
235
+ desc: <领域名称> API 规格(OpenAPI 3.x)。涉及 <相关端点> 的请求/响应结构、状态码、认证方式时必读。
236
+ ```
237
+
238
+ **不执行此步骤将导致后续 test-writer/code-implementor 无法感知 API 规格文件,AI 将无法基于正确的接口定义编写测试和代码。**
@@ -179,3 +179,20 @@ external_dependencies:
179
179
  - `基于产品设计帮我做技术选型`
180
180
  - `帮我画系统架构图`
181
181
  - `帮我确定技术栈并更新 logos-project.yaml`
182
+
183
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
184
+
185
+ 完成本 Skill 的所有文档产出后,**必须**:
186
+
187
+ 1. 将架构文档追加写入 `logos/logos-project.yaml` 的 `resource_index`:
188
+
189
+ ```yaml
190
+ resource_index:
191
+ # ...已有条目...
192
+ - path: logos/resources/prd/3-technical-plan/1-architecture/<文件名>.md
193
+ desc: 系统架构概要。涉及技术栈选型、系统组件划分、非功能性约束时必读。
194
+ ```
195
+
196
+ 2. 同步更新 `logos/logos-project.yaml` 的 `tech_stack` 和 `external_dependencies` 字段(这是本 Skill 的核心产出之一)。
197
+
198
+ **不执行此步骤将导致后续 AI 在场景建模和代码生成时无法读取架构决策,产生技术栈不一致的代码。**
@@ -252,3 +252,16 @@ CREATE INDEX idx_projects_owner ON projects(owner_id);
252
252
  - `基于 API 规格帮我推导数据库 DDL`
253
253
  - `帮我设计 S01 涉及的数据库表`
254
254
  - `帮我给现有表结构补充索引和 RLS 策略`
255
+
256
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
257
+
258
+ 完成本 Skill 的所有数据库 DDL 产出后,**必须**将新生成的文件追加写入 `logos/logos-project.yaml` 的 `resource_index` 字段:
259
+
260
+ ```yaml
261
+ resource_index:
262
+ # ...已有条目...
263
+ - path: logos/resources/database/<文件名>.sql
264
+ desc: 数据库完整 Schema(DDL)。涉及表结构、字段定义、索引策略、外键约束时必读。
265
+ ```
266
+
267
+ **不执行此步骤将导致后续 code-implementor 无法感知数据库 Schema,AI 将无法生成与真实表结构一致的 ORM 代码和查询逻辑。**
@@ -196,3 +196,16 @@
196
196
  - `我要做一个 xxx 产品,帮我梳理需求`
197
197
  - `帮我把这些想法整理成结构化的需求文档`
198
198
  - `帮我给现有需求文档补充异常场景的验收条件`
199
+
200
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
201
+
202
+ 完成本 Skill 的所有文档产出后,**必须**将新生成的文档追加写入 `logos/logos-project.yaml` 的 `resource_index` 字段:
203
+
204
+ ```yaml
205
+ resource_index:
206
+ # ...已有条目...
207
+ - path: logos/resources/prd/1-product-requirements/<文件名>.md
208
+ desc: <产品名称>需求文档。涉及产品定位、痛点、核心场景、验收条件时必读。
209
+ ```
210
+
211
+ **不执行此步骤将导致后续 AI 无法感知已完成的需求文档,影响整个开发链路的上下文质量。**
@@ -228,3 +228,18 @@ This directory has already been initialized as an OpenLogos project.
228
228
  - `帮我把所有场景的产品设计做出来`
229
229
  - `帮我设计 CLI 命令的交互流程`
230
230
  - `帮我设计 AI Skill 的对话流程`
231
+
232
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
233
+
234
+ 完成本 Skill 的所有文档产出后,**必须**将新生成的文档追加写入 `logos/logos-project.yaml` 的 `resource_index` 字段:
235
+
236
+ ```yaml
237
+ resource_index:
238
+ # ...已有条目...
239
+ - path: logos/resources/prd/2-product-design/1-feature-specs/<文件名>.md
240
+ desc: <功能规格/信息架构描述>。涉及 <相关场景> 的交互设计、功能规格时必读。
241
+ - path: logos/resources/prd/2-product-design/2-page-design/<文件名>.md
242
+ desc: <原型描述>。涉及 <相关场景> 的页面交互、对话脚本时必读。
243
+ ```
244
+
245
+ **不执行此步骤将导致后续 AI 无法感知已完成的产品设计文档,影响场景建模和代码生成阶段的上下文质量。**
@@ -222,3 +222,19 @@ sequenceDiagram
222
222
  - `帮我对所有 P0 场景做场景建模`
223
223
  - `帮我给 S03 补充异常用例的时序图`
224
224
  - `基于产品设计,帮我做技术场景建模`
225
+
226
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
227
+
228
+ 完成本 Skill 的所有场景时序图产出后,**必须**将新生成的文档追加写入 `logos/logos-project.yaml` 的 `resource_index` 字段:
229
+
230
+ ```yaml
231
+ resource_index:
232
+ # ...已有条目...
233
+ - path: logos/resources/prd/3-technical-plan/2-scenario-implementation/00-scenario-overview.md
234
+ desc: 场景实现概览索引。涉及全量场景分类、参与方、实现文档映射关系时必读。
235
+ - path: logos/resources/prd/3-technical-plan/2-scenario-implementation/S01-<slug>.md
236
+ desc: S01 <场景名称>场景时序图。涉及 S01 实现细节、API 设计、异常分支时必读。
237
+ # 每个场景文件均需单独一条
238
+ ```
239
+
240
+ **不执行此步骤将导致 api-designer/db-designer 等后续 Skill 无法感知时序图的存在,AI 将无法从正确的源头推导 API 设计。**
@@ -245,3 +245,17 @@
245
245
  - `帮我设计 S01 的单元测试和场景测试`
246
246
  - `帮我给所有 P0 场景设计测试用例`
247
247
  - `帮我检查 S01 的测试覆盖度`
248
+
249
+ ## ⚠️ 收尾步骤(强制):更新 resource_index
250
+
251
+ 完成本 Skill 的所有测试用例文档产出后,**必须**将新生成的文件追加写入 `logos/logos-project.yaml` 的 `resource_index` 字段:
252
+
253
+ ```yaml
254
+ resource_index:
255
+ # ...已有条目...
256
+ - path: logos/resources/test/S01-test-cases.md
257
+ desc: S01 <场景名称>测试用例。涉及 UT-S01(单元测试)与 ST-S01(场景测试)的实现与验收时必读。
258
+ # 每个场景的测试用例文件均需单独一条
259
+ ```
260
+
261
+ **不执行此步骤将导致 code-implementor 无法感知测试用例规格,AI 在生成测试代码时无法与用例 ID 对齐,最终 `openlogos verify` 将报告覆盖度不足。**