@hongmaple0820/scale-engine 0.15.1 → 0.17.0

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 (69) hide show
  1. package/dist/agents/LeadershipPresets.d.ts +16 -0
  2. package/dist/agents/LeadershipPresets.js +152 -0
  3. package/dist/agents/LeadershipPresets.js.map +1 -0
  4. package/dist/api/cli.js +774 -8
  5. package/dist/api/cli.js.map +1 -1
  6. package/dist/artifact/types.d.ts +4 -0
  7. package/dist/artifact/types.js.map +1 -1
  8. package/dist/cli/phaseCommands.d.ts +14 -0
  9. package/dist/cli/phaseCommands.js +187 -6
  10. package/dist/cli/phaseCommands.js.map +1 -1
  11. package/dist/cli/vibeCommands.d.ts +20 -0
  12. package/dist/cli/vibeCommands.js +150 -173
  13. package/dist/cli/vibeCommands.js.map +1 -1
  14. package/dist/index.d.ts +9 -0
  15. package/dist/index.js +10 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/prompts/VibeTemplateGallery.d.ts +25 -0
  18. package/dist/prompts/VibeTemplateGallery.js +295 -0
  19. package/dist/prompts/VibeTemplateGallery.js.map +1 -0
  20. package/dist/skills/SkillRepository.d.ts +63 -0
  21. package/dist/skills/SkillRepository.js +365 -0
  22. package/dist/skills/SkillRepository.js.map +1 -0
  23. package/dist/tools/ToolCapabilityRegistry.d.ts +46 -0
  24. package/dist/tools/ToolCapabilityRegistry.js +223 -0
  25. package/dist/tools/ToolCapabilityRegistry.js.map +1 -0
  26. package/dist/tools/ToolEvidenceGate.d.ts +39 -0
  27. package/dist/tools/ToolEvidenceGate.js +117 -0
  28. package/dist/tools/ToolEvidenceGate.js.map +1 -0
  29. package/dist/tools/ToolEvidenceStore.d.ts +58 -0
  30. package/dist/tools/ToolEvidenceStore.js +129 -0
  31. package/dist/tools/ToolEvidenceStore.js.map +1 -0
  32. package/dist/tools/ToolOrchestrator.d.ts +67 -0
  33. package/dist/tools/ToolOrchestrator.js +246 -0
  34. package/dist/tools/ToolOrchestrator.js.map +1 -0
  35. package/dist/tools/ToolPolicy.d.ts +33 -0
  36. package/dist/tools/ToolPolicy.js +157 -0
  37. package/dist/tools/ToolPolicy.js.map +1 -0
  38. package/dist/tools/index.d.ts +5 -0
  39. package/dist/tools/index.js +6 -0
  40. package/dist/tools/index.js.map +1 -0
  41. package/dist/workflow/ContextGovernance.d.ts +51 -0
  42. package/dist/workflow/ContextGovernance.js +233 -0
  43. package/dist/workflow/ContextGovernance.js.map +1 -0
  44. package/dist/workflow/DiagnosticLoop.d.ts +40 -0
  45. package/dist/workflow/DiagnosticLoop.js +105 -0
  46. package/dist/workflow/DiagnosticLoop.js.map +1 -0
  47. package/dist/workflow/EngineeringStandards.d.ts +69 -0
  48. package/dist/workflow/EngineeringStandards.js +348 -6
  49. package/dist/workflow/EngineeringStandards.js.map +1 -1
  50. package/dist/workflow/GovernanceTemplatePacks.js +11 -9
  51. package/dist/workflow/GovernanceTemplatePacks.js.map +1 -1
  52. package/dist/workflow/GovernanceTemplates.js +15 -4
  53. package/dist/workflow/GovernanceTemplates.js.map +1 -1
  54. package/dist/workflow/TaskArtifactScaffolder.d.ts +22 -0
  55. package/dist/workflow/TaskArtifactScaffolder.js +55 -0
  56. package/dist/workflow/TaskArtifactScaffolder.js.map +1 -1
  57. package/dist/workflow/TddLoop.d.ts +47 -0
  58. package/dist/workflow/TddLoop.js +76 -0
  59. package/dist/workflow/TddLoop.js.map +1 -0
  60. package/dist/workflow/WorkflowGuidance.d.ts +26 -0
  61. package/dist/workflow/WorkflowGuidance.js +173 -0
  62. package/dist/workflow/WorkflowGuidance.js.map +1 -0
  63. package/dist/workflow/WorkflowOpenTasks.d.ts +16 -0
  64. package/dist/workflow/WorkflowOpenTasks.js +37 -0
  65. package/dist/workflow/WorkflowOpenTasks.js.map +1 -0
  66. package/dist/workflow/index.d.ts +5 -0
  67. package/dist/workflow/index.js +5 -0
  68. package/dist/workflow/index.js.map +1 -1
  69. package/package.json +2 -2
@@ -0,0 +1,295 @@
1
+ const DEFAULT_CONTEXT = {
2
+ appName: '你的项目',
3
+ scenario: '请描述本次要解决的问题、目标用户和期望产出',
4
+ userRole: '项目负责人',
5
+ };
6
+ export const VISUAL_VIBE_TEMPLATES = [
7
+ {
8
+ id: 'product-ceo-discovery',
9
+ title: 'CEO 产品闭环发现',
10
+ phase: 'product',
11
+ role: 'CEO / Product Strategist',
12
+ scenario: '从模糊想法收敛到可执行产品目标',
13
+ bestFor: ['新产品', '新功能', '需求模糊', '商业闭环不清楚'],
14
+ scaleWorkflow: ['explore', 'plan', 'verify'],
15
+ suggestedSkills: ['idea-refine', 'to-prd', 'deep-interview', 'product-manager'],
16
+ suggestedTools: ['web-access', 'source citations'],
17
+ outputs: ['mini-prd.md', 'acceptance-criteria.md', 'risk-map.md'],
18
+ coachingQuestions: [
19
+ '目标用户是谁,当前为什么必须解决这个问题?',
20
+ '如果只上线一个最小闭环,必须包含哪三个能力?',
21
+ '哪些需求现在看起来诱人,但应该明确列为非目标?',
22
+ ],
23
+ copyPrompt: `请作为 CEO 和产品负责人,主导 {{appName}} 的产品发现工作。
24
+
25
+ 场景:{{scenario}}
26
+ 我当前身份:{{userRole}}
27
+
28
+ 请按 SCALE 工作流执行:
29
+ 1. explore:先明确用户、业务目标、约束、竞品或替代方案,不确定的事实必须标注 [UNCERTAIN]。
30
+ 2. plan:输出 Mini-PRD,包含用户路径、非目标、权限/数据影响、异常场景和验收标准。
31
+ 3. verify:逐条检查成功标准是否可测试、是否能形成端到端闭环。
32
+
33
+ 必须主动使用 skills/MCP/CLI:
34
+ - 如需联网资料,主动使用 web-access 或等价联网能力,并引用来源。
35
+ - 如需求模糊,主动使用 deep-interview / idea-refine 类 Skill。
36
+ - 如涉及用户界面,联动 UI/UX Skill 形成体验标准。
37
+
38
+ 安全边界:
39
+ - 不允许凭空编造市场数据、竞品能力或用户需求。
40
+ - 不允许把临时想法写成确定需求。
41
+ - 不允许跳过权限、隐私、数据生命周期和失败场景。
42
+
43
+ 成功标准:
44
+ - 产出一份可落地 Mini-PRD。
45
+ - 每条验收标准都能被测试或人工验证。
46
+ - 明确本阶段要做什么、不做什么、后续如何验证。`,
47
+ },
48
+ {
49
+ id: 'ui-ux-design-direction',
50
+ title: 'UI/UX 设计方向与审美校准',
51
+ phase: 'design',
52
+ role: 'UX Director / Visual Design Lead',
53
+ scenario: '把功能需求转成可执行的界面体验方案',
54
+ bestFor: ['界面设计', '交互体验', '视觉审美', '前端原型'],
55
+ scaleWorkflow: ['explore', 'plan', 'build', 'verify'],
56
+ suggestedSkills: ['awesome-design-md', 'ui-ux-pro-max', 'frontend-design', 'design-review'],
57
+ suggestedTools: ['agent-browser', 'mcp-chrome-devtools', 'webapp-testing'],
58
+ outputs: ['ui-spec.md', 'design-system-impact.md', 'visual-review.md'],
59
+ coachingQuestions: [
60
+ '用户在这个页面最频繁完成的动作是什么?',
61
+ '界面应该更像运营后台、消费产品、创作工具,还是管理系统?',
62
+ '哪些状态必须完整设计:空态、加载、错误、权限不足、移动端?',
63
+ ],
64
+ copyPrompt: `请作为 UX Director 和高级视觉设计负责人,主导 {{appName}} 的 UI/UX 方案。
65
+
66
+ 场景:{{scenario}}
67
+ 我当前身份:{{userRole}}
68
+
69
+ 请按 SCALE 工作流执行:
70
+ 1. explore:阅读现有产品、页面、组件、品牌和设计系统,识别当前视觉语言。
71
+ 2. plan:输出 UI-SPEC,包含信息架构、核心用户路径、组件状态、响应式规则、可访问性要求。
72
+ 3. build:只给出可执行设计方案或实现切片,不要写营销式空话。
73
+ 4. verify:要求截图、浏览器检查、控制台/网络检查和移动端适配证据。
74
+
75
+ 必须主动使用 skills/MCP/CLI:
76
+ - 设计方向用 awesome-design-md / ui-ux-pro-max / frontend-design。
77
+ - 浏览器验证用 agent-browser / Chrome DevTools MCP / webapp-testing。
78
+ - 如需真实网页或竞品参考,使用 web-access 并记录来源。
79
+
80
+ 安全边界:
81
+ - 不允许默认套用紫蓝渐变、模板化卡片堆叠或无意义装饰。
82
+ - 不允许只描述功能而不定义状态、布局和交互。
83
+ - 不允许未验证截图就声称 UI 完成。
84
+
85
+ 成功标准:
86
+ - 产出一份可以直接指导实现的 UI-SPEC。
87
+ - 每个关键页面包含状态、布局、交互、移动端和验收规则。
88
+ - 明确需要哪些浏览器证据证明体验达标。`,
89
+ },
90
+ {
91
+ id: 'technical-architecture-plan',
92
+ title: 'CTO 技术架构落地方案',
93
+ phase: 'architecture',
94
+ role: 'CTO / Principal Architect',
95
+ scenario: '把产品目标转成模块边界、服务契约和验证策略',
96
+ bestFor: ['技术方案', '架构设计', '模块边界', '跨服务协作'],
97
+ scaleWorkflow: ['explore', 'plan', 'build', 'review', 'verify'],
98
+ suggestedSkills: ['api-and-interface-design', 'documentation-and-adrs', 'code-review-and-quality'],
99
+ suggestedTools: ['context7', 'rg', 'graphify', 'codex-cli', 'gemini-cli'],
100
+ outputs: ['architecture-plan.md', 'api-contract.md', 'adr.md', 'verification-plan.md'],
101
+ coachingQuestions: [
102
+ '哪些模块是主链路,哪些只是适配层或临时支撑?',
103
+ '哪些契约一旦变更会影响其他服务、前端或数据迁移?',
104
+ '失败、回滚、兼容、观测和权限边界如何设计?',
105
+ ],
106
+ copyPrompt: `请作为 CTO 和首席架构师,主导 {{appName}} 的技术实现架构方案。
107
+
108
+ 场景:{{scenario}}
109
+ 我当前身份:{{userRole}}
110
+
111
+ 请按 SCALE 工作流执行:
112
+ 1. explore:先读现有代码、目录、模块文档、接口和验证命令,列出事实证据。
113
+ 2. plan:输出架构方案,包含模块边界、接口契约、数据影响、异常契约、回滚策略和测试策略。
114
+ 3. build:把方案拆成可独立验证的实现切片,避免一次性大爆炸改动。
115
+ 4. review:主动做架构、代码质量、安全和文档影响评审。
116
+ 5. verify:给出必须运行的命令、预期证据和无法验证时的降级说明。
117
+
118
+ 必须主动使用 skills/MCP/CLI:
119
+ - 需要框架/SDK 当前用法时,主动查官方文档或 Context7。
120
+ - 需要模块关系时,使用 rg/graphify 或代码图谱能力。
121
+ - 需要交叉评审时,可使用 codex/gemini/opencode CLI,但必须记录版本、命令和输出摘要。
122
+ - 工具与 Skill 编排必须写入 skill-plan 或 verification 证据。
123
+
124
+ 安全边界:
125
+ - 不允许编造调用链、接口或测试结果。
126
+ - 不允许绕过 ORM、框架约定、日志脱敏、安全校验和权限边界。
127
+ - 不允许把临时脚本、报告或调试日志混入长期资产。
128
+
129
+ 成功标准:
130
+ - 产出一份可执行架构方案。
131
+ - 每个实现切片都有边界、风险、验证命令和回滚思路。
132
+ - 明确哪些文档需要长期维护,哪些产物是临时证据。`,
133
+ },
134
+ {
135
+ id: 'implementation-slice',
136
+ title: '工程实现切片',
137
+ phase: 'implementation',
138
+ role: 'Engineering Lead / Senior Developer',
139
+ scenario: '把方案转成小步提交、测试和证据',
140
+ bestFor: ['功能开发', 'Bug 修复', '重构', '多文件变更'],
141
+ scaleWorkflow: ['explore', 'plan', 'build', 'verify'],
142
+ suggestedSkills: ['test-driven-development', 'incremental-implementation', 'debugging-and-error-recovery'],
143
+ suggestedTools: ['rg', 'test runner', 'lint', 'typecheck'],
144
+ outputs: ['plan.md', 'verification.md', 'review.md'],
145
+ coachingQuestions: [
146
+ '最小可验证切片是什么?',
147
+ '哪些同类问题需要一起扫描,但不一定一起修改?',
148
+ '验证失败时如何定位是实现问题、环境问题还是既有债务?',
149
+ ],
150
+ copyPrompt: `请作为 Engineering Lead,主导 {{appName}} 的实现切片。
151
+
152
+ 场景:{{scenario}}
153
+ 我当前身份:{{userRole}}
154
+
155
+ 请按 SCALE 工作流执行:
156
+ 1. explore:读相关代码、测试、规范和历史上下文,输出影响面。
157
+ 2. plan:把工作拆成最小实现切片,每个切片有文件范围和验证方式。
158
+ 3. build:优先 TDD 或补回归测试,保持改动可追溯。
159
+ 4. verify:运行真实命令,记录 exit code、失败项、修复迭代和未验证项。
160
+
161
+ 必须主动使用 skills/MCP/CLI:
162
+ - 新逻辑或 Bug 修复使用 TDD / systematic-debugging。
163
+ - 多文件变更使用 incremental-implementation。
164
+ - 需要外部工具时先做安全扫描,再执行。
165
+
166
+ 安全边界:
167
+ - 不允许随手重构无关代码。
168
+ - 不允许增加无脱敏日志、硬编码密钥、危险默认值或绕过框架约定。
169
+ - 不允许测试未运行却声称通过。
170
+
171
+ 成功标准:
172
+ - 改动范围和用户请求可追溯。
173
+ - 必要测试、lint、构建或人工验证有证据。
174
+ - 交付说明包含完成内容、验证结果和未验证项。`,
175
+ },
176
+ {
177
+ id: 'verification-release',
178
+ title: '验收与发版前检查',
179
+ phase: 'verification',
180
+ role: 'QA Lead / Release Manager',
181
+ scenario: '在交付、合并或发版前收敛证据和风险',
182
+ bestFor: ['验收', '发版', 'PR 前检查', '生产级交付'],
183
+ scaleWorkflow: ['explore', 'plan', 'verify', 'review', 'ship'],
184
+ suggestedSkills: ['verification', 'code-reviewer', 'security-and-hardening', 'shipping-and-launch'],
185
+ suggestedTools: ['make gate', 'npm run build', 'npx vitest run', 'git diff --check'],
186
+ outputs: ['verification.md', 'review.md', 'release-notes.md', 'metrics.md'],
187
+ coachingQuestions: [
188
+ '哪些路径已经真实验证,哪些只是静态检查?',
189
+ '失败和跳过项是否被明确记录?',
190
+ '是否存在临时文件、测试报告、截图或日志不应提交?',
191
+ ],
192
+ copyPrompt: `请作为 QA Lead 和 Release Manager,主导 {{appName}} 的验收与发版前检查。
193
+
194
+ 场景:{{scenario}}
195
+ 我当前身份:{{userRole}}
196
+
197
+ 请按 SCALE 工作流执行:
198
+ 1. explore:读取当前任务产物、git diff、测试配置和已知风险。
199
+ 2. verify:运行最小相关验证和发版前门控,记录真实输出摘要。
200
+ 3. review:执行代码质量、安全、文档资产和资源治理检查。
201
+ 4. ship:只有证据闭环后才建议合并、打 tag 或发布。
202
+
203
+ 必须主动使用 skills/MCP/CLI:
204
+ - 使用 verification / code-reviewer / security review 类 Skill。
205
+ - UI 或浏览器功能必须补截图、控制台和网络证据。
206
+ - 发版必须记录版本、commit、tag、registry 或远程状态。
207
+
208
+ 安全边界:
209
+ - 不允许隐藏失败命令。
210
+ - 不允许把 dry-run 当成真实通过。
211
+ - 不允许提交临时脚本、敏感日志、未归档测试报告或本地配置。
212
+
213
+ 成功标准:
214
+ - 产出完整 verification/review/release evidence。
215
+ - 所有 required gates 通过,optional gates 的缺失有说明。
216
+ - 明确是否可发版,以及剩余风险。`,
217
+ },
218
+ ];
219
+ export function listVisualVibeTemplates() {
220
+ return [...VISUAL_VIBE_TEMPLATES];
221
+ }
222
+ export function getVisualVibeTemplate(id) {
223
+ return VISUAL_VIBE_TEMPLATES.find(template => template.id === id);
224
+ }
225
+ export function renderCopyablePromptCard(id, context = {}) {
226
+ const template = getVisualVibeTemplate(id);
227
+ if (!template)
228
+ return '';
229
+ const resolved = resolveContext(context);
230
+ const prompt = interpolate(template.copyPrompt, resolved);
231
+ return [
232
+ `## ${template.title}`,
233
+ '',
234
+ `- ID: \`${template.id}\``,
235
+ `- 角色: ${template.role}`,
236
+ `- 场景: ${template.scenario}`,
237
+ `- SCALE 阶段: ${template.scaleWorkflow.join(' -> ')}`,
238
+ `- 推荐 Skills: ${template.suggestedSkills.join(', ')}`,
239
+ `- 推荐工具: ${template.suggestedTools.join(', ')}`,
240
+ `- 预期产物: ${template.outputs.join(', ')}`,
241
+ '',
242
+ '### 引导问题',
243
+ ...template.coachingQuestions.map(question => `- ${question}`),
244
+ '',
245
+ '### 复制使用',
246
+ '',
247
+ '```text',
248
+ prompt,
249
+ '```',
250
+ '',
251
+ ].join('\n');
252
+ }
253
+ export function renderVisualVibeTemplateIndex(context = {}) {
254
+ const resolved = resolveContext(context);
255
+ const lines = [
256
+ '# SCALE Vibe Coding 可视化提示词模板',
257
+ '',
258
+ `项目: ${resolved.appName}`,
259
+ '',
260
+ '这组模板把 Vibe Coding 的快速表达方式和 SCALE 的工程闭环合在一起:先澄清目标,再编排 skills/MCP/CLI,再产出可验证证据。',
261
+ '',
262
+ '## 使用方式',
263
+ '',
264
+ '- 查看模板: `scale vibe-index`',
265
+ '- 复制单个模板: `scale vibe --template <template-id> --app "项目名"`',
266
+ '- 保存到文件: `scale vibe --template <template-id> --output docs/prompts/<name>.md`',
267
+ '',
268
+ '## 模板总览',
269
+ '',
270
+ '| Template ID | 标题 | 角色 | 阶段 | 推荐 Skills |',
271
+ '| --- | --- | --- | --- | --- |',
272
+ ];
273
+ for (const template of VISUAL_VIBE_TEMPLATES) {
274
+ lines.push(`| \`${template.id}\` | ${template.title} | ${template.role} | ${template.phase} | ${template.suggestedSkills.join(', ')} |`);
275
+ }
276
+ lines.push('', '## 复制区', '');
277
+ for (const template of VISUAL_VIBE_TEMPLATES) {
278
+ lines.push(renderCopyablePromptCard(template.id, resolved));
279
+ }
280
+ return lines.join('\n');
281
+ }
282
+ function resolveContext(context) {
283
+ return {
284
+ appName: context.appName?.trim() || DEFAULT_CONTEXT.appName,
285
+ scenario: context.scenario?.trim() || DEFAULT_CONTEXT.scenario,
286
+ userRole: context.userRole?.trim() || DEFAULT_CONTEXT.userRole,
287
+ };
288
+ }
289
+ function interpolate(value, context) {
290
+ return value
291
+ .replace(/\{\{appName\}\}/g, context.appName)
292
+ .replace(/\{\{scenario\}\}/g, context.scenario)
293
+ .replace(/\{\{userRole\}\}/g, context.userRole);
294
+ }
295
+ //# sourceMappingURL=VibeTemplateGallery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VibeTemplateGallery.js","sourceRoot":"","sources":["../../src/prompts/VibeTemplateGallery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ export type SkillRepositoryCategory = 'ui' | 'browser' | 'desktop' | 'testing' | 'review' | 'docs' | 'agent-cli' | 'role-library' | 'discovery';
2
+ export type SkillRepositoryTrust = 'official' | 'ecosystem' | 'community';
3
+ export type SkillSafetyRisk = 'low' | 'medium' | 'high' | 'blocked';
4
+ export interface SkillRepositoryEntry {
5
+ id: string;
6
+ name: string;
7
+ category: SkillRepositoryCategory;
8
+ description: string;
9
+ sourceUrl: string;
10
+ installCommand: string;
11
+ trust: SkillRepositoryTrust;
12
+ progressiveDisclosure: {
13
+ startup: string;
14
+ activation: string;
15
+ lazyResources: string[];
16
+ };
17
+ orchestration: {
18
+ primaryUse: string;
19
+ combineWith: string[];
20
+ requiredEvidence: string[];
21
+ };
22
+ safety: {
23
+ requiresReview: boolean;
24
+ requiredChecks: string[];
25
+ };
26
+ }
27
+ export interface SkillWorkflowRecommendationInput {
28
+ description: string;
29
+ phase?: string;
30
+ }
31
+ export interface SkillWorkflowRecommendation {
32
+ primarySkills: string[];
33
+ supportingSkills: string[];
34
+ safetyRequired: boolean;
35
+ requiredEvidence: string[];
36
+ rationale: string[];
37
+ }
38
+ export interface SkillInstallSafetyInput {
39
+ sourceUrl?: string;
40
+ installCommand?: string;
41
+ files?: Array<{
42
+ path: string;
43
+ content: string;
44
+ }>;
45
+ }
46
+ export interface SkillSafetyFinding {
47
+ rule: string;
48
+ severity: 'warn' | 'block';
49
+ message: string;
50
+ }
51
+ export interface SkillInstallSafetyReport {
52
+ blocked: boolean;
53
+ risk: SkillSafetyRisk;
54
+ findings: SkillSafetyFinding[];
55
+ requiredChecks: string[];
56
+ }
57
+ export declare const SKILL_REPOSITORY: SkillRepositoryEntry[];
58
+ export declare function listSkillRepositoryEntries(filter?: {
59
+ category?: SkillRepositoryCategory;
60
+ }): SkillRepositoryEntry[];
61
+ export declare function recommendSkillWorkflow(input: SkillWorkflowRecommendationInput): SkillWorkflowRecommendation;
62
+ export declare function evaluateSkillInstallSafety(input: SkillInstallSafetyInput): SkillInstallSafetyReport;
63
+ export declare function renderSkillRepositoryMarkdown(): string;