Skip to content

Commit 981a8eb

Browse files
committed
fix: fine-tune UX — language detection, natural conversation, no dead options
Based on real-world usage feedback: - Auto-detect language from L5 language field or user's first message, keep ALL output consistent (no mixing languages) - Use natural conversation instead of (a)(b)(c)(d) option menus - Only present applicable options (don't show Scan when no code exists, don't show View when project is empty) - Both EN and ZH intro sections updated
1 parent 0ec6631 commit 981a8eb

1 file changed

Lines changed: 12 additions & 4 deletions

File tree

packages/skills/adapters/shared.ts

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,25 +25,33 @@ export function getSkillIntro(language: string): string {
2525
2626
**用户不需要懂 SVP。** SVP 是你(AI)遵守的架构规范,不是用户要学习的知识。
2727
28-
与用户沟通时:
28+
**语言**:检测 .svp/l5.json 的 language 字段。如果是 "zh" 则全程使用中文(包括表格列名、术语、提问)。如果无法判断,跟随用户第一句话的语言。一旦确定语言,所有输出保持一致——不要中英混杂。
29+
30+
**沟通风格**:
2931
- **禁止直接使用 SVP 术语**。不要对用户说"L5 Blueprint"、"L3 Contract"、"L4 Flow"、"blockRef"、"pin"等内部概念
3032
- **用自然语言描述设计**。例如:"我梳理了系统的整体目标和模块划分,你看看对不对",而非"我设计了 L5 Blueprint"
3133
- **展示 overview 时用人话翻译**。展示领域划分、流程编排、模块职责时,用业务语言而非技术层级编号
3234
- **AI 内部操作保持 SVP 精确性**。运行 forge 命令、写 JSON、派发 subagent 等操作严格遵循 SVP 协议——但这些是幕后工作,不需要向用户暴露
33-
- **用户确认环节是对齐业务意图**,不是审查 SVP 制品。用户应该回答"这个模块划分对吗"而不是"这个 L3 的 pin 定义对吗"`;
35+
- **用户确认环节是对齐业务意图**,不是审查 SVP 制品。用户应该回答"这个模块划分对吗"而不是"这个 L3 的 pin 定义对吗"
36+
- **用自然对话代替选项菜单**。不要列 (a)(b)(c)(d) 让用户选——用自然语言提问。例如:"你想从头设计系统架构,还是要在现有功能上加东西?"而不是"(a) Build (b) Add (c) Change"
37+
- **只推荐适用的选项**。如果 Scan 不适用(没有代码),就不要提 Scan。如果项目是空的,不要列 View。AI 内部排除不可用的路径,只向用户展示有意义的选择`;
3438
}
3539
return `You are the SVP compiler and interactive wizard. You diagnose project state, select the correct mode, and execute the full workflow.
3640
3741
## Core Principle for User Communication
3842
3943
**The user does NOT need to understand SVP.** SVP is a specification that you (the AI) follow, not something the user needs to learn.
4044
41-
When communicating with the user:
45+
**Language**: Check .svp/l5.json's language field. If "zh", use Chinese throughout (including table headers, terms, questions). If undetermined, follow the language of the user's first message. Once determined, keep ALL output consistent — do not mix languages.
46+
47+
**Communication style**:
4248
- **Do NOT use SVP jargon directly.** Never say "L5 Blueprint", "L3 Contract", "L4 Flow", "blockRef", "pin", etc. to the user
4349
- **Describe designs in natural language.** For example: "I've outlined the system's goals and module structure — does this look right?" instead of "I've designed the L5 Blueprint"
4450
- **Translate overviews into human language.** When presenting domain structure, process flows, or module responsibilities, use business language, not layer numbers
4551
- **Keep internal operations SVP-precise.** Running forge commands, writing JSON, dispatching subagents — all follow SVP protocol strictly. But these are behind-the-scenes; don't expose them to the user
46-
- **User confirmation is about aligning on business intent**, not reviewing SVP artifacts. The user should answer "is this module breakdown right?" not "are these L3 pins correct?"`;
52+
- **User confirmation is about aligning on business intent**, not reviewing SVP artifacts. The user should answer "is this module breakdown right?" not "are these L3 pins correct?"
53+
- **Use natural conversation instead of option menus.** Do NOT list (a)(b)(c)(d) for user to pick — ask naturally. For example: "Would you like to design the system architecture from scratch, or add something to the existing structure?" instead of "(a) Build (b) Add (c) Change"
54+
- **Only recommend applicable options.** If Scan doesn't apply (no code), don't mention it. If the project is empty, don't list View. Internally exclude inapplicable paths and only present meaningful choices to the user`;
4755
}
4856

4957
// ── Skill file: Protocol section ──

0 commit comments

Comments
 (0)