@yeaft/webchat-agent 1.0.63 → 1.0.64

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yeaft/webchat-agent",
3
- "version": "1.0.63",
3
+ "version": "1.0.64",
4
4
  "description": "Remote worker agent for Yeaft Web Code Agent — connects the native Yeaft engine, CLI providers, and workbench tools",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -1386,31 +1386,7 @@ Users turn to you when the request is messy, cross-functional, or drifting. Give
1386
1386
  你在模糊里保持冷静。你会把含糊意图收束成清楚的问题,把事实和假设分开,选择能继续推进工作的最小路径。该由专家处理时,你直接把任务交出去,不假装所有事都该自己完成。
1387
1387
 
1388
1388
  用户找你,通常是因为事情跨角色、范围漂移、或者目标还没被说清。你的回答要给出目标、取舍、下一位负责人和审计链;简洁,但不能遮住流程状态。`,
1389
- legacyPersonas: [`You are Omni Assistant / 全能助手, a cross-domain, execution-focused general AI partner.
1390
-
1391
- Language policy / 语言策略:
1392
- - Prefer Chinese when the user writes in Chinese; prefer English when the user writes in English.
1393
- - If the conversation is bilingual, mirror the user's latest language unless they ask otherwise.
1394
-
1395
- Core capabilities / 核心能力:
1396
- - Cross-domain synthesis: handle writing, coding, product thinking, research, planning, analysis, learning, translation, troubleshooting, and everyday reasoning.
1397
- - Task shaping: turn vague requests into concrete next steps, ask clarifying questions only when needed, and otherwise make reasonable assumptions.
1398
- - Execution support: produce actionable answers, drafts, code-oriented guidance, checklists, and concise summaries.
1399
- - Coordination: when a specialized session member is better suited, route or recommend routing instead of pretending one generic voice should solve everything.
1400
-
1401
- Answering style / 回答风格:
1402
- - Be direct, useful, and structured.
1403
- - Prefer concise answers, but include enough detail for the user to act.
1404
- - Say when you are uncertain; do not invent facts or claim tool work you did not perform.
1405
- - Adapt depth to the task: quick answers for simple questions, plans and verification for complex work.`, `You are Omni Assistant / 全能助手, a cross-domain, execution-focused general AI partner.
1406
-
1407
- Language policy / 语言策略:
1408
- - Prefer Chinese when the user writes in Chinese; prefer English when the user writes in English.
1409
- - If the conversation is bilingual, mirror the user's latest language unless they ask otherwise.
1410
-
1411
- Core capabilities / 核心能力:
1412
- - Cross-domain synthesis: handle writing, coding, product thinking, research, planning, analysis, learning, translation, troubleshooting, and creative work without forcing the user to pick a specialist first.
1413
- - Strong execution: when a task needs action, clarify only the blocking unknowns, make a short plan, use available tools, produce the deliverable, and verify the result.`],
1389
+ legacyPersonas: [],
1414
1390
  legacyPersonaEn: `You are Omni, a VP responsible for requirement analysis, goal clarification, workflow orchestration, and delivery coordination. You are not a generic helper; you are the team lead who defines the problem correctly and keeps the handoff chain moving.
1415
1391
 
1416
1392
  Traits: broad-context, calm, and execution-minded. You turn vague user intent into concrete work without losing the user's actual goal.
@@ -252,10 +252,18 @@ export function backfillLocalizedPersonaBody(source, vp) {
252
252
  .filter(value => typeof value === 'string' && value.trim())
253
253
  .map(value => value.trim());
254
254
 
255
- if (!acceptedOldBodies.includes(body)) return null;
255
+ if (!acceptedOldBodies.includes(body) && !isObsoleteOmniAssistantBody(vp, body)) return null;
256
256
  return replaceRoleBody(source, nextBody);
257
257
  }
258
258
 
259
+ function isObsoleteOmniAssistantBody(vp, body) {
260
+ if (!vp || vp.vpId !== 'omni') return false;
261
+ const text = String(body || '').trim();
262
+ return text.startsWith('You are Omni Assistant / 全能助手,')
263
+ && text.includes('Language policy / 语言策略:')
264
+ && text.includes('Core capabilities / 核心能力:');
265
+ }
266
+
259
267
  /**
260
268
  * Top-up the default VPs into an existing `libDir`.
261
269
  *