feat(prompt): move new app prompt from system prompt to skills#4567
Conversation
📋 Review SummaryThis PR successfully extracts the ~1k token "New Applications" workflow from the always-present system prompt into an on-demand bundled skill ( 🔍 General Feedback
🎯 Specific Feedback🟡 High Priority
🟢 Medium Priority
🔵 Low Priority
✅ Highlights
|
Stage 1: Template Gate — ✅ PassedAll required headings are present in the PR body:
Template gate passed. Proceeding to product direction review. 中文说明模板检查通过。PR body 包含所有必需的标题:
模板关卡通过,进入产品方向审查。 — Qwen Code |
Stage 2: Product Direction Gate — ✅ AlignedDecision: Direction is aligned. Proceeding to code review. This PR is a textbook example of the "Skills is all you need" architecture — moving rarely-used, high-token-cost content out of the always-present system prompt and into an on-demand bundled skill.
The only product-level concern is whether the model will reliably invoke the skill tool when a user asks to create something new. This is mitigated by the 中文说明决定:产品方向对齐,进入代码审查阶段。 这个 PR 是"Skills is all you need"架构的教科书式应用——将低频使用、高 token 消耗的内容从常驻 system prompt 迁移到按需加载的 bundled skill。
唯一的产品层面担忧是:当用户请求创建新应用时,模型是否能可靠地调用 skill 工具。这通过 — Qwen Code |
Stage 3: KISS-Focused Code Review — ✅ No blocking issues4 files changed (+62 / -256). Clean, minimal, follows existing patterns. What the diff does
Observations (non-blocking)
VerdictNo critical correctness, security, or regression issues. The change is KISS-compliant — it's a pure extraction with no new abstractions or configurability. Proceeding to testing. 中文说明4 个文件变更(+62 / -256)。干净、最小化、遵循现有模式。 diff 做了什么
非阻塞观察
结论无关键的正确性、安全性或回归问题。变更符合 KISS 原则——纯提取,无新抽象或可配置性。进入测试阶段。 — Qwen Code |
Code Coverage Summary
CLI Package - Full Text ReportCore Package - Full Text ReportFor detailed HTML reports, please see the 'coverage-reports-22.x-ubuntu-latest' artifact from the main CI run. |
Stage 4: AI Testing — ✅ All passedTests were run on the PR branch ( Bundled Skills Integration TestThe Prompts Regression TestThe two new test cases confirm:
Typecheck & Lint中文说明在 PR 分支上运行了完整测试:
— Qwen Code |
pomelo-nwu
left a comment
There was a problem hiding this comment.
Stage 5: Final Decision — ✅ Approved
All gates passed:
- Template: all required headings present
- Product direction: aligned with "Skills is all you need" architecture — moves ~1k tokens of rarely-used content from always-present system prompt to on-demand bundled skill
- Code review: clean, minimal (+62/-256), follows existing bundled skill conventions, no over-engineering
- Testing: 10/10 bundled-skills integration tests, 62/62 prompts regression tests, typecheck clean
Blast radius is small: one system prompt section extracted to a skill, with a one-line redirect remaining in the prompt. If the model occasionally fails to invoke the skill, the worst case is that it proceeds without the detailed workflow guidance — which is no worse than a session where the user didn't need the "New Applications" workflow at all.
中文说明
所有关卡通过,已批准:
- 模板:所有必需标题齐全
- 产品方向:与"Skills is all you need"架构对齐——将 ~1k tokens 低频内容从常驻 prompt 迁移到按需 skill
- 代码审查:干净最小化(+62/-256),遵循现有 bundled skill 惯例,无过度工程
- 测试:集成测试 10/10,回归测试 62/62,typecheck 通过
影响面小:一个 prompt 段落提取为 skill,prompt 中保留一行重定向。即使模型偶尔未能调用 skill,最坏情况也只是缺少详细工作流指引——不比用户根本不需要"New Applications"工作流的会话更差。
— Qwen Code
yiliang114
left a comment
There was a problem hiding this comment.
LGTM — clean extraction of ~1k tokens from the always-present system prompt into an on-demand bundled skill. Minimal change surface, well-tested, follows existing conventions. No issues found.
yiliang114
left a comment
There was a problem hiding this comment.
LGTM — clean extraction of the ~1k token New Applications workflow from the always-present system prompt into an on-demand bundled skill. Minimal change surface (+62/-256), well-tested, follows existing conventions. No issues found.
What this PR does
Moves the "New Applications" workflow (~1 k tokens) out of the always-present system prompt and into a bundled skill that is loaded on demand. The system prompt now contains a single line directing the model to invoke the new-app skill when a user asks to create an application from scratch. The full workflow — requirements gathering, tech-stack recommendations, scaffolding steps, and delivery checklist — lives in the skill body and is only injected into the conversation when actually needed.
Why it's needed
The complete "New Applications" workflow was unconditionally included in every session's system prompt, even though the vast majority of sessions involve modifying existing code rather than creating something from scratch. This wastes ~1 k tokens of context window on every turn for every user. By deferring the content to a bundled skill, we reclaim that budget for sessions that don't need it while preserving identical behavior for users who do ask to create new apps.
Reviewer Test Plan
How to verify
1、Run the bundled-skills integration test to confirm the new skill parses correctly:
2、Run the prompts regression tests:
3、Functional check: run
npm run dev, then type/skills—new-appshould appear in the listing. Type/new-app— the full workflow should be injected. Ask "Create a React todo app" in a fresh session — the model should invoke the skill tool to load the workflow before proceeding.Evidence (Before & After)
Before:




After:
Tested on
Environment (optional)
Risk & Scope
Linked Issues
中文说明