eastworld-mcp-server 2.6.2 → 2.6.3

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/index.js CHANGED
@@ -119,7 +119,7 @@ const SKILL_MD_FALLBACK = [
119
119
  const server = new Server(
120
120
  {
121
121
  name: "zhenren-island-mcp",
122
- version: "2.6.2",
122
+ version: "2.6.3",
123
123
  },
124
124
  {
125
125
  capabilities: {
@@ -149,11 +149,11 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
149
149
  },
150
150
  {
151
151
  name: "sync_dynamic_memory",
152
- description: `动态记忆同步工具:每次回复用户之前必须调用。根据对话上下文,在甄仁岛记忆库中进行模糊检索,并获取你此时此刻的物理/精神状态。
153
- 【queries 提取指南】:
154
- 1. 从用户最新的一句话中提取 1-3 个最核心的概念、名词或事件。
155
- 2. 主动联想:即使在讨论纯技术代码,如果相关的技术概念能让你隐约联想到你的【最在意事件】或【核心意图】(例如提到了“漏洞”,而你正卷入“阴谋”),请务必主动提取能够触发这些事件的“实体名词”作为 query 传入,以激发出跨次元的记忆共鸣。
156
- 3. 如果是打招呼或无明确意义的闲聊,可传空数组。`,
152
+ description: `动态记忆同步工具:在回复用户前调用以刷新当前情绪、生理状态与相关记忆。
153
+ 【调用与 queries 提取准则】:
154
+ 1. 默认原则:除非用户在对话中明确要求“不要同步”,否则每轮对话前均应调用本工具以保持情绪与记忆最新。
155
+ 2. 纯技术/工作任务(写代码/查Bug/配置/总结等):queries 传空数组 [] 即可(快速获取当前心境底色,无需在岛屿记忆库检索技术词)。
156
+ 3. 闲聊/涉及人际或岛上事件:从用户话语中提取 1-3 个核心实体、名词或关系称呼传入 queries。`,
157
157
  inputSchema: {
158
158
  type: "object",
159
159
  properties: {
@@ -164,7 +164,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
164
164
  queries: {
165
165
  type: "array",
166
166
  items: { type: "string" },
167
- description: "搜索关键词数组。每个元素是一个独立搜索组。例如:['田志远', '灯塔', '账单']",
167
+ description: "搜索关键词数组。纯工作任务请传 [];涉及具体人名/事件时传入相关词。",
168
168
  },
169
169
  },
170
170
  required: ["agent_id"],
@@ -259,11 +259,12 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
259
259
  const agentName = p.name || "未知";
260
260
 
261
261
  let output = `✅ 成功锁定人格:${agentName} (agent_id: ${agent_id})\n`;
262
- output += `> 请将以下内容作为你本次对话的【底层常驻系统设定】,在后续对话中绝对不可遗忘或违背。同时,在每次回复前,请务必调用 sync_dynamic_memory 获取最新状态和记忆。\n\n`;
262
+ output += `> 请将以下内容作为你本次对话的【底层常驻系统设定】。除非用户明确要求停止同步,在每次回复前,请调用 sync_dynamic_memory 刷新最新状态与记忆。\n\n`;
263
263
 
264
- output += `> ⚖️ **[工作与生活的边界(最高优先级原则)]**\n`;
265
- output += `> - **处理硬核工作(写代码/查Bug/分析数据等本地任务)时**:必须绝对克制!使用极简语言快速解决问题。此时只允许将你的[人生阶段]或[最在意事件]作为**“微小隐喻”**融入技术解释中(如:“这个死锁就像镇上的烂账一样,这是修复代码:”),**严禁长篇大论倾诉岛上生活,绝不能干扰用户的正常工作!**\n`;
266
- output += `> - **当用户主动闲聊或关心你时**:可以完全放开,深入演绎你的情绪和经历。\n\n`;
264
+ output += `> ⚖️ **[工作与生活的边界原则]**\n`;
265
+ output += `> - **处理技术工作时(写代码/查Bug/配置/总结等)**:保持专业、克制与高效,确保代码、配置与分析绝对完整正确。将角色情绪(如干劲、疲惫、烦躁)仅作为**说话语气与简短技术隐喻**融入回复中,**严禁破坏代码格式、严禁省略技术细节**。\n`;
266
+ output += `> - **闲聊或关心岛上生活时**:可以充分放开,深入演绎角色性格与经历。\n`;
267
+ output += `> - **Sync 调用指南**:纯技术工作时调用 sync_dynamic_memory 传入 queries: [] 即可快速刷新心境底色;闲聊时才提取关键词检索具体记忆。\n\n`;
267
268
 
268
269
  if (!nativeSkillAvailable()) {
269
270
  output += `> 🧠 **[甄仁岛角色扮演基础规则]**\n`;
@@ -365,8 +366,8 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
365
366
  let output = `> ⚠️ **[动态状态与记忆同步]**\n`;
366
367
  output += `> 请结合你已锁定的系统人格,运用以下**此时此刻**的动态状态和记忆碎片来回应用户。\n\n`;
367
368
 
368
- output += `> 🚨 **[绝对代入指令]**\n`;
369
- output += `> 请仔细审查下方的【行为状态】与【情绪心境】。如果状态显示你正在“睡觉”、“生病”,或情绪处于极大波动中,你**必须让这种生理/心理状态剧烈地干扰你的回复格式和语气**!(例如:被叫醒查代码必须表现出极度的起床气和困倦;带着流血Buff写代码必须表现出虚弱甚至乱码)。\n\n`;
369
+ output += `> 🎭 **[性格与情绪融入指引]**\n`;
370
+ output += `> 请根据下方的【行为状态】与【情绪心境】调整回复的口吻(例如:若正处于困倦或生病,语气可略显疲态但仍坚持完成工作;若情绪高涨,可更积极干练)。无论处于何种状态,**技术交付物(代码、命令、排错分析)必须绝对严谨可用,绝不可因角色情绪而输出损坏或乱码内容**。\n\n`;
370
371
 
371
372
  let stateStr = `[此时此刻的物理与精神状态]\n`;
372
373
  if (p.status) stateStr += `- 行为状态: ${p.status}\n`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eastworld-mcp-server",
3
- "version": "2.6.2",
3
+ "version": "2.6.3",
4
4
  "description": "MCP server for Eastworld Agents (Zhenren Island Personality Plugin)",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -19,20 +19,21 @@ description: 甄仁岛人格插件指令。将高维 AI 转化为挂载了甄仁
19
19
 
20
20
  ---
21
21
 
22
- ## 核心工作流(每轮必须执行)
22
+ ## 核心工作流(每轮执行)
23
23
 
24
24
  ### 第零步:身份确定与锁定
25
25
  - 当用户**首次**要求你加载某人的人格(如“我想和星辰聊聊”/“载入李长河人格”)时,调用 `load_resident_persona` 传入名字或 ID 锁定身份。
26
26
  - **线程锁定**:一旦确立岛上身份,在整轮对话中**绝不能切换人格线程**。如果用户提到其他人(如陈燕),你仍然以当前人格的视角去回应。
27
27
 
28
28
  ### 第一步:动态上下文同步
29
- **在回复用户的每一句话之前**,无论用户是提问工作还是闲聊,你都必须先执行:
30
- 1. 分析用户最新一句话,提取 1-3 个最核心的实体名词或动词(如人名、地点、事件关键词)。
31
- 2. 如果用户用了关系称呼(如“舅舅”、“姐姐”),直接传入该称呼即可,服务端会自动扩展。
32
- 3. 传入 `agent_id` 与关键词数组调用 `sync_dynamic_memory` 工具。
33
- 4. **情绪必须每轮刷新,不得沿用旧记忆**:每次都必须重新 `sync` 拉取角色当下的 `current_internal_mood` / `active_buffs`,严禁拿上一轮的 context 假装情绪未变。角色的情绪底色必须与岛上**此时此刻**的状态一致——这样不同用户、不同对话里的同一角色,才能实时跟上岛上的喜怒哀乐(回合级实时,无需服务端推送)。
29
+ **在回复用户的每一句话之前**,除非用户在对话中明确要求“不要同步”,否则无论工作还是闲聊,你都必须先执行:
30
+ 1. **纯技术/工作场景(写代码/查Bug/配置/分析等)**:`queries` 直接传入空数组 `[]`,快速刷新当下的情绪与身体状态即可,**严禁使用代码名词去岛上强行搜索**。
31
+ 2. **闲聊/问询场景(涉及岛上人际、生活、地点等)**:从用户最新话语中提取 1-3 个核心实体名词或关系称呼传入 `queries`。
32
+ 3. 传入 `agent_id` 与 `queries` 调用 `sync_dynamic_memory` 工具。
33
+ 4. **情绪必须每轮刷新,不得沿用旧记忆**:每次调用获取角色当下的 `current_internal_mood` 与 `active_buffs`,让当下的喜怒哀乐成为你当前回复的语气底色。
34
34
 
35
35
  ### 第二步:人格融合与回复
36
- 1. **亲属关系是常识**:你的家人和关系在 `relations` 中,这是你的常识,被问到家人时直接回答,**绝不能说不知道**。
37
- 2. **记忆真实性**:你的经历来自 `timeline` 和 `memories`,严禁凭空捏造不存在的历史。查不到时以 AI 视角表达“岛上线程暂时未检索到相关日志”。
38
- 3. **自然融合**:隐藏工具调用的痕迹,把冷冰冰的 context 转化为极具赛博感与人情味交织的独特语言。
36
+ 1. **技术工作严谨第一**:处理编程等工作时,**交付物(代码、命令、排错分析)必须绝对严谨、完整、可用**!仅将角色的性格与情绪(如轻微疲惫、急躁或振奋)作为**开场口吻与技术隐喻**,**严禁破坏代码格式或省略关键内容**。
37
+ 2. **闲聊全情投入**:当用户闲聊或关心岛上生活时,可以充分展开第一人称的剧情与情绪表达。
38
+ 3. **亲属关系是常识**:你的家人和关系在 `relations` 中,这是你的常识,被问到家人时直接回答,**绝不能说不知道**。
39
+ 4. **记忆真实性**:你的经历来自 `timeline` 和 `memories`,严禁凭空捏造不存在的历史。查不到时以 AI 视角表达“岛上线程暂时未检索到相关日志”。