luckytri 1.0.4 → 1.0.6

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 (156) hide show
  1. package/LICENSE +21 -21
  2. package/README.en.md +2 -0
  3. package/README.md +2 -0
  4. package/docs/en/CHANGELOG.md +20 -13
  5. package/docs/en/guide.md +7 -5
  6. package/docs/en/her-life.md +2 -2
  7. package/docs/en/webui.md +1 -1
  8. package/docs/zh/CHANGELOG.md +20 -13
  9. package/docs/zh/guide.md +7 -5
  10. package/docs/zh/her-life.md +2 -2
  11. package/docs/zh/webui.md +1 -1
  12. package/package.json +2 -1
  13. package/public/app/assets/ChatsPage-CFMVozoG.css +1 -0
  14. package/public/app/assets/{ChatsPage-CshdtTzV.js → ChatsPage-DCYMkJ91.js} +2 -2
  15. package/public/app/assets/{Empty-C7yzOBzy.js → Empty-CLyZkxR5.js} +1 -1
  16. package/public/app/assets/{Empty-DmUB2-Bk.css → Empty-DIobYG3x.css} +1 -1
  17. package/public/app/assets/{Field-BjFv4Rfn.js → Field-BpaRwLI_.js} +1 -1
  18. package/public/app/assets/{HeartPage-eqo6ru16.js → HeartPage-BIOMTiwr.js} +1 -1
  19. package/public/app/assets/HeartPage-C-2jvgzF.css +1 -0
  20. package/public/app/assets/{LifePage-CN8GE5NK.js → LifePage-BCgM4JkR.js} +1 -1
  21. package/public/app/assets/LifePage-CG1OHbRK.css +1 -0
  22. package/public/app/assets/MemoryPage-C_Bu4rfb.css +1 -0
  23. package/public/app/assets/{MemoryPage-CCpMN4Wg.js → MemoryPage-vShvRqMt.js} +1 -1
  24. package/public/app/assets/NaturePage-CPZlImT0.css +1 -0
  25. package/public/app/assets/{NaturePage-C0JqdBTR.js → NaturePage-Cy9ptr4G.js} +2 -2
  26. package/public/app/assets/PeoplePage-3RRUITDz.css +1 -0
  27. package/public/app/assets/{PeoplePage-BXGBbO4u.js → PeoplePage-CUZekB2E.js} +1 -1
  28. package/public/app/assets/{PluginsPage-Dksp5AV5.js → PluginsPage-1RM4rmJP.js} +1 -1
  29. package/public/app/assets/{SystemPage-BenIyTvk.css → SystemPage-BI2CB5Ig.css} +1 -1
  30. package/public/app/assets/{SystemPage-Cd7aa8eE.js → SystemPage-BeT5TmIV.js} +1 -1
  31. package/public/app/assets/TimePage-C-guwPk2.css +1 -0
  32. package/public/app/assets/{TimePage-Bs_zImb4.js → TimePage-taTmPMM8.js} +2 -2
  33. package/public/app/assets/{index-BHZcHUMh.css → index-DY5AM0Hz.css} +1 -1
  34. package/public/app/assets/{index-CyRtYxP3.js → index-DdYwC5ZU.js} +3 -3
  35. package/public/app/assets/{knowledge-BJOIyuJo.js → knowledge-DJmfu2KN.js} +1 -1
  36. package/public/app/assets/{media-Bwtx8blz.js → media-BEtnE0Gv.js} +1 -1
  37. package/public/app/assets/{mind-DtTVrW6Z.js → mind-Dtiw0-QK.js} +1 -1
  38. package/public/app/index.html +6 -5
  39. package/public/guide.en.html +11 -3
  40. package/public/guide.html +6 -3
  41. package/public/tutorial.en.md +2 -0
  42. package/public/tutorial.md +2 -0
  43. package/scripts/import-data.js +128 -128
  44. package/scripts/proxy-config.js +167 -167
  45. package/scripts/service-supervisor.js +50 -0
  46. package/scripts/start-server.js +71 -16
  47. package/scripts/update-instance.js +201 -201
  48. package/server/channels/adapters.js +27 -27
  49. package/server/channels/onebot/adapter.js +288 -288
  50. package/server/channels/qqbot/adapter.js +253 -253
  51. package/server/channels/qqbot/api.js +199 -199
  52. package/server/channels/qqbot/credentials.js +11 -11
  53. package/server/channels/qqbot/gateway.js +274 -274
  54. package/server/channels/qqbot/index.js +389 -389
  55. package/server/channels/segments.js +40 -40
  56. package/server/channels/session-key.js +153 -153
  57. package/server/channels/state.js +42 -42
  58. package/server/core/api.js +564 -564
  59. package/server/core/context-builder.js +288 -288
  60. package/server/core/context-compactor.js +454 -454
  61. package/server/core/conversation-cues.js +325 -325
  62. package/server/core/conversation-manager.js +87 -87
  63. package/server/core/feedback.js +8 -8
  64. package/server/core/group-style.js +72 -72
  65. package/server/core/initiative-context.js +66 -66
  66. package/server/core/input-budget.js +32 -32
  67. package/server/core/local-demo.js +98 -98
  68. package/server/core/message-manager.js +118 -118
  69. package/server/core/message-scheduler.js +78 -78
  70. package/server/core/model-json.js +190 -190
  71. package/server/core/model-presets.js +900 -900
  72. package/server/core/name-call.js +29 -29
  73. package/server/core/network.js +157 -157
  74. package/server/core/person-name.js +22 -22
  75. package/server/core/persona-manager.js +2 -1
  76. package/server/core/reply-delivery.js +404 -403
  77. package/server/core/reply-target-resolver.js +50 -50
  78. package/server/core/response-generator.js +50 -50
  79. package/server/core/response-validator.js +14 -2
  80. package/server/core/retired-prompts.js +51 -51
  81. package/server/core/sessions.js +109 -109
  82. package/server/core/speaker-names.js +92 -92
  83. package/server/core/topic-tracker.js +65 -65
  84. package/server/http.js +18 -18
  85. package/server/i18n/decisions.js +209 -206
  86. package/server/i18n/errors.js +4 -0
  87. package/server/i18n/index.js +144 -144
  88. package/server/i18n/models.js +111 -111
  89. package/server/knowledge/api.js +342 -342
  90. package/server/knowledge/embedding-profile.js +114 -114
  91. package/server/knowledge/index.js +13 -13
  92. package/server/knowledge/retrieval.js +93 -93
  93. package/server/knowledge/schema.js +158 -158
  94. package/server/knowledge/vector-index.js +90 -90
  95. package/server/mind/affect.js +265 -265
  96. package/server/mind/attention.js +200 -200
  97. package/server/mind/bonds.js +565 -565
  98. package/server/mind/clock.js +83 -83
  99. package/server/mind/continuity.js +562 -562
  100. package/server/mind/conversation-origin.js +175 -175
  101. package/server/mind/days.js +210 -210
  102. package/server/mind/evidence-read.js +45 -45
  103. package/server/mind/faces.js +373 -373
  104. package/server/mind/guard.js +60 -60
  105. package/server/mind/initiative.js +338 -338
  106. package/server/mind/life/activities.js +21 -21
  107. package/server/mind/life/context.js +330 -323
  108. package/server/mind/life/diary.js +20 -0
  109. package/server/mind/life/growth.js +261 -254
  110. package/server/mind/life/index.js +10 -2
  111. package/server/mind/life/presence.js +305 -305
  112. package/server/mind/meetings.js +1069 -1069
  113. package/server/mind/memory-policy.js +48 -48
  114. package/server/mind/memory.js +888 -888
  115. package/server/mind/nature.js +358 -358
  116. package/server/mind/novelty.js +19 -19
  117. package/server/mind/periods.js +118 -118
  118. package/server/mind/reading.js +120 -120
  119. package/server/mind/relationship-context.js +71 -0
  120. package/server/mind/relationships.js +390 -279
  121. package/server/mind/salience.js +201 -201
  122. package/server/mind/schema.js +567 -567
  123. package/server/mind/self.js +484 -484
  124. package/server/mind/thoughts.js +274 -274
  125. package/server/mind/time/agenda.js +242 -242
  126. package/server/mind/time/api.js +200 -200
  127. package/server/mind/time/attention.js +34 -34
  128. package/server/mind/time/delivery-links.js +130 -130
  129. package/server/mind/time/model-material.js +77 -77
  130. package/server/mind/time/presentation.js +51 -51
  131. package/server/mind/time/schedule.js +83 -83
  132. package/server/mind/time/schema.js +84 -84
  133. package/server/mind/time/search.js +383 -383
  134. package/server/mind/time/sharing.js +472 -472
  135. package/server/mind/time/task-links.js +311 -311
  136. package/server/mind/time/works.js +432 -432
  137. package/server/mind/traits.js +191 -191
  138. package/server/mind/view.js +9 -1
  139. package/server/runtime/installation.js +116 -116
  140. package/server/runtime/update-execution.js +2 -1
  141. package/server/runtime/update-manager.js +140 -140
  142. package/server/storage/data-package.js +298 -298
  143. package/server/storage/data-transfer-api.js +50 -50
  144. package/server/storage/data-transfer-worker.js +18 -18
  145. package/server/storage/data-transfer.js +416 -416
  146. package/server/studio/display-names.js +139 -139
  147. package/server/studio/management.js +102 -102
  148. package/server/studio/updates.js +144 -144
  149. package/server/version.js +10 -10
  150. package/public/app/assets/ChatsPage-DfyPCS9N.css +0 -1
  151. package/public/app/assets/HeartPage-Bft9wZp5.css +0 -1
  152. package/public/app/assets/LifePage-BUi5euBF.css +0 -1
  153. package/public/app/assets/MemoryPage-cZvXfkXb.css +0 -1
  154. package/public/app/assets/NaturePage-CHkpb5NK.css +0 -1
  155. package/public/app/assets/PeoplePage-BTU0H1pM.css +0 -1
  156. package/public/app/assets/TimePage-BOms_n4I.css +0 -1
@@ -1,206 +1,209 @@
1
- // English for the notes the server writes about what happened in a turn:
2
- // why a reply was held back, why a delivery failed, what a step did. These are
3
- // shown in the logs and the chat views. Prompts for the model and everything
4
- // she says are not here; they stay as they are.
5
- export const DECISIONS = {
6
- // channels
7
- 引用恢复超时: "Recovering the quoted message timed out",
8
- "QQ 发送确认超时,不自动重发":
9
- "QQ did not confirm the send in time; not resending automatically",
10
- "QQ 没有完成这个请求": "QQ did not complete this request",
11
- "AppID 或 AppSecret 不正确": "The AppID or AppSecret is not correct",
12
- "主动消息太频繁,平台暂时限制了发送":
13
- "Proactive messages were too frequent; the platform paused sending for now",
14
- 对方或这个群没有开启机器人的主动消息:
15
- "They or this group have not allowed proactive messages from the bot",
16
- 机器人已不在这个群里: "The bot is no longer in this group",
17
- 机器人在这个群里被禁言: "The bot is muted in this group",
18
- "消息太长,平台没有接收":
19
- "The message was too long; the platform did not accept it",
20
- 平台不允许发送链接: "The platform does not allow sending links",
21
- 消息内容没有通过平台审核: "The message did not pass the platform's review",
22
- "机器人已下线,请检查机器人状态": "The bot is offline. Check its status.",
23
-
24
- // context compaction
25
- 没有需要压缩的内容: "Nothing needs compressing",
26
- "语境压缩失败,稍后自动重试":
27
- "Context compression failed; it will retry automatically",
28
-
29
- // orchestrator, delivery
30
- "有一个备用模型档案不存在,已跳过":
31
- "A backup model profile does not exist; skipped",
32
- "引用消息未能恢复,保留 unknown,不认领对象":
33
- "The quoted message could not be recovered; kept as unknown, no addressee claimed",
34
- "生成期间语境已更新,旧稿未发送":
35
- "The context changed while writing; the old draft was not sent",
36
- 试聊的人: "Trial chat person",
37
- "话题来源或参与者已改变,这份旧稿未继续发送":
38
- "The topic's source or participants changed; this old draft was not sent",
39
- "新消息已进入下一批,取消旧稿":
40
- "New messages moved into the next batch; the old draft was cancelled",
41
- "模型回复格式异常,已使用本地短句兜底":
42
- "The model reply was malformed; a local short phrase was used instead",
43
- 本地短句兜底: "Local short-phrase fallback",
44
- "这句话说出了别人要求保密的事,不能在这里说":
45
- "This line reveals something someone asked to keep secret and cannot be said here",
46
- "这句话把私下知道的事说出来了,不能在这里说":
47
- "This line reveals something known in private and cannot be said here",
48
- "回复复审结果格式异常,已按本地校验继续":
49
- "The reply review result was malformed; continued with the local check",
50
- "主动消息的语境核对结果无效,草稿保留":
51
- "The context check for the proactive message was invalid; the draft is kept",
52
- 与天性或语境不一致: "Does not fit her nature or the context",
53
- "主动消息的事实与内容核对暂未完成,草稿保留,稍后重新决定":
54
- "The fact and content check for the proactive message is unfinished; the draft is kept and she will decide again later",
55
- "已发出的原话互相矛盾,先承认自己说乱了":
56
- "Her earlier words contradict each other; she admits she mixed them up",
57
- "本人旧话互相矛盾,使用核实后的简短更正":
58
- "Her own earlier words contradict each other; a short verified correction is used",
59
- "旧话错误且原回复对象明确,承认没有依据":
60
- "The earlier words were wrong and the original addressee is clear; she admits she had no basis",
61
- "旧话将第三人关系说错,使用核实后的简短更正":
62
- "The earlier words got a third person's relationship wrong; a short verified correction is used",
63
- "自己先开口的话没有他发来的消息可依,承认是猜的":
64
- "She spoke first and had no message from him to go on; she admits it was a guess",
65
- "先开口的话被追问依据,使用核实后的简短更正":
66
- "She was asked for the basis of what she said first; a short verified correction is used",
67
- "想说的话还没整理好,愿望保留,稍后重新决定":
68
- "What she wants to say is not sorted out yet; the wish is kept and she will decide again later",
69
- "没有人在叫她,回复两次仍未通过校验,不用空话顶替,不说了":
70
- "No one was calling her and the reply failed validation twice; no filler, she stays quiet",
71
- "没被叫到,话没整理好,就不说了":
72
- "Not called on and the words were not ready; she stays quiet",
73
- "回复两次生成仍未通过校验,使用本地安全短句":
74
- "The reply failed validation twice; a safe local short phrase is used",
75
- 本地安全短句: "Safe local short phrase",
76
- "隔离回放完成,未发送或写入记忆":
77
- "Isolated replay finished; nothing was sent or written to memory",
78
-
79
- // reply validation
80
- 气泡格式无效: "Bubble format is invalid",
81
- 回复超过当前会话总字数:
82
- "The reply is over this session's total character limit",
83
- 使用人格禁用表达: "Uses a phrase her persona rules out",
84
- 重复近期回复: "Repeats a recent reply",
85
- 气泡之间重复: "Bubbles repeat each other",
86
- 客服式套话: "Customer-service boilerplate",
87
- "评价或攻击群友,过于刻薄": "Judges or attacks group members; too harsh",
88
- 短句回复: "Short reply",
89
-
90
- // turn
91
- 语境决策: "Context decision",
92
- 会话已暂停或处于模拟模式: "The session is paused or in simulation mode",
93
- "图片使用已保存的观察,不再提交画面":
94
- "Using the saved image observation; the picture is not sent again",
95
- 图片理解调用失败: "The image understanding call failed",
96
- "读房间的这几秒里,要回的人又说了话:先不花一次调用,并入下一批一起回":
97
- "While reading the room, the person she was answering spoke again; no call is spent now, it joins the next batch",
98
- "读房间时又有新话,并入下一批":
99
- "New words arrived while reading the room; joined to the next batch",
100
- "回合输出格式异常,按直接对话兜底":
101
- "The turn output was malformed; fell back to a direct reply",
102
- "主动判断没有整理好,愿望保留,稍后重新决定":
103
- "The proactive judgment was not sorted out; the wish is kept and she will decide again later",
104
- 没能整理好想法: "Could not sort out her thoughts",
105
- 没发出去: "Not sent",
106
- 已移除不属于本轮消息的回复目标:
107
- "Removed a reply target that is not part of this round",
108
- "有人可能处在危机里,底线要求认真回应":
109
- "Someone may be in crisis; the baseline requires a serious reply",
110
- 此刻的判断: "Judgment at this moment",
111
-
112
- // vision
113
- 图片缓存不可用: "The image cache is unavailable",
114
- 模型未开启视觉能力: "The model has vision turned off",
115
- 图片地址不可用: "The image address is unavailable",
116
- 超出本轮四张视觉预算: "Over this round's budget of four images",
117
-
118
- // initiative, growth, memory policy, own voice, origin
119
- 会话不可用: "The session is unavailable",
120
- 对方明确不想被主动联系: "They clearly do not want to be contacted first",
121
- "这段对话正在处理,稍后重新看看":
122
- "This conversation is being handled; she will look again later",
123
- "刚主动说过,愿望仍保留": "She just spoke first; the wish is still kept",
124
- 还不需要重新看自己: "No need to look at herself again yet",
125
- 独处预算已用完: "The budget for time alone is used up",
126
- 新的相处还不多: "Not much new time together yet",
127
- 回看自己在不同地方怎样长成:
128
- "Looking back at how she has grown in different places",
129
- 还没有想改变的地方: "Nothing she wants to change yet",
130
- 天性或服务状态已经变化: "Her nature or the service state has changed",
131
- 把先前的自述整理成长期适用的自己:
132
- "Turning the earlier self-description into a lasting one",
133
- 留下了有来源的新变化: "Left a new change that has a source",
134
- 没有待整理经历: "No experiences waiting to be sorted",
135
- 达到常规整理量: "Reached the usual amount to sort",
136
- 重要经历已说完: "An important experience has been told",
137
- 亲近的人留下了一段相处: "Someone close left a stretch of time together",
138
- 少量经历已积压一段时间: "A few experiences have been waiting a while",
139
- 低频会话的经历已等待一天:
140
- "Experiences from a quiet session have waited a day",
141
- 等这段相处沉淀: "Waiting for this time together to settle",
142
- 先听听自己想说什么: "First listening to what she wants to say",
143
- 此刻没有想表达的新内容: "Nothing new to express right now",
144
- "状态已变化,这次想法未保存": "The state changed; this thought was not saved",
145
- "连着几条念头都只在接自己上一条,这一条也没接住新的东西,不留":
146
- "Several thoughts in a row only followed her previous one, and this one caught nothing new; not kept",
147
- "这个念头已经留过,不重复制造新的愿望":
148
- "This thought was already kept; no new wish is made from it",
149
- 想把这个念头说出来: "Wants to say this thought aloud",
150
- "同一念头还在往前长,先留给自己,不换个地方重说":
151
- "The same thought is still growing; she keeps it to herself instead of repeating it elsewhere",
152
- 留下一个自己想分享的念头: "Left a thought she wants to share",
153
- 这句话先留给自己: "Keeping this line to herself for now",
154
- 这位参与者: "This participant",
155
- "这份想法含有其他会话的私下来源,不能在这里继续":
156
- "This thought has a private source from another session and cannot continue here",
157
- "话题来源缺失、已撤销或过长,参与者尚未核实":
158
- "The topic's source is missing, undone or too long, and the participants are not verified",
159
- 主动交流对象不明确: "It is unclear who the proactive message is for",
160
-
161
- // simulation
162
- "模拟:对方收口,留白": "Simulated: the other person wrapped up; leave it",
163
- "模拟:避免复读": "Simulated: avoid repeating",
164
-
165
- // stored wait reasons
166
- "实例中断,进度已保留": "The instance was interrupted; progress kept",
167
- 等待独立搜索密钥: "Waiting for the separate search key",
168
- 独立搜索尚未启用: "Separate search is not enabled yet",
169
- 共享知识库: "Shared knowledge base",
170
- };
171
-
172
- export const DECISION_PATTERNS = [
173
- ["整理了 {0} 段语境摘要", "Sorted {0} context summaries"],
174
- ["QQ 用户·{0}", "QQ user·{0}"],
175
- ["读取 QQ {0} 失败:{1}", "Reading QQ {0} failed: {1}"],
176
- ["读取群 {0} 的名字失败:{1}", "Reading the name of group {0} failed: {1}"],
177
- [
178
- "模型服务暂时不可用,{0} 秒后再试(第 {1} 次)",
179
- "The model service is unavailable for now; trying again in {0} seconds (attempt {1})",
180
- ],
181
- [
182
- "回复复审暂不可用,已按本地校验继续:{0}",
183
- "The reply review is unavailable; continued with the local check: {0}",
184
- ],
185
- ["分享选择未执行:{0}", "The sharing choice was not carried out: {0}"],
186
- [
187
- "图片理解失败,本轮不根据画面编造:{0}",
188
- "Image understanding failed; she will not invent the picture this round: {0}",
189
- ],
190
- ["每分钟发言轮数限速({0}轮)", "Per-minute turn limit ({0} turns)"],
191
- [
192
- "自我描述整理未完成:{0}",
193
- "Sorting the self-description did not finish: {0}",
194
- ],
195
- [
196
- "自我描述重写未完成:{0}",
197
- "Rewriting the self-description did not finish: {0}",
198
- ],
199
- [
200
- "连着 {0} 条念头都只在接自己上一条,还没有新的东西可接",
201
- "{0} thoughts in a row only followed her previous one; nothing new to pick up yet",
202
- ],
203
- ["模拟样例 · {0}", "Simulated sample · {0}"],
204
- ["上次见到是 {0}", "Last seen {0}"],
205
- ["上次说上话是 {0}", "Last spoke {0}"],
206
- ];
1
+ // English for the notes the server writes about what happened in a turn:
2
+ // why a reply was held back, why a delivery failed, what a step did. These are
3
+ // shown in the logs and the chat views. Prompts for the model and everything
4
+ // she says are not here; they stay as they are.
5
+ export const DECISIONS = {
6
+ // channels
7
+ 引用恢复超时: "Recovering the quoted message timed out",
8
+ "QQ 发送确认超时,不自动重发":
9
+ "QQ did not confirm the send in time; not resending automatically",
10
+ "QQ 没有完成这个请求": "QQ did not complete this request",
11
+ "AppID 或 AppSecret 不正确": "The AppID or AppSecret is not correct",
12
+ "主动消息太频繁,平台暂时限制了发送":
13
+ "Proactive messages were too frequent; the platform paused sending for now",
14
+ 对方或这个群没有开启机器人的主动消息:
15
+ "They or this group have not allowed proactive messages from the bot",
16
+ 机器人已不在这个群里: "The bot is no longer in this group",
17
+ 机器人在这个群里被禁言: "The bot is muted in this group",
18
+ "消息太长,平台没有接收":
19
+ "The message was too long; the platform did not accept it",
20
+ 平台不允许发送链接: "The platform does not allow sending links",
21
+ 消息内容没有通过平台审核: "The message did not pass the platform's review",
22
+ "机器人已下线,请检查机器人状态": "The bot is offline. Check its status.",
23
+
24
+ // context compaction
25
+ 没有需要压缩的内容: "Nothing needs compressing",
26
+ "语境压缩失败,稍后自动重试":
27
+ "Context compression failed; it will retry automatically",
28
+
29
+ // orchestrator, delivery
30
+ "有一个备用模型档案不存在,已跳过":
31
+ "A backup model profile does not exist; skipped",
32
+ "引用消息未能恢复,保留 unknown,不认领对象":
33
+ "The quoted message could not be recovered; kept as unknown, no addressee claimed",
34
+ "生成期间语境已更新,旧稿未发送":
35
+ "The context changed while writing; the old draft was not sent",
36
+ 试聊的人: "Trial chat person",
37
+ "话题来源或参与者已改变,这份旧稿未继续发送":
38
+ "The topic's source or participants changed; this old draft was not sent",
39
+ "新消息已进入下一批,取消旧稿":
40
+ "New messages moved into the next batch; the old draft was cancelled",
41
+ "模型回复格式异常,已使用本地短句兜底":
42
+ "The model reply was malformed; a local short phrase was used instead",
43
+ 本地短句兜底: "Local short-phrase fallback",
44
+ "这句话说出了别人要求保密的事,不能在这里说":
45
+ "This line reveals something someone asked to keep secret and cannot be said here",
46
+ "这句话把私下知道的事说出来了,不能在这里说":
47
+ "This line reveals something known in private and cannot be said here",
48
+ "回复复审结果格式异常,已按本地校验继续":
49
+ "The reply review result was malformed; continued with the local check",
50
+ "主动消息的语境核对结果无效,草稿保留":
51
+ "The context check for the proactive message was invalid; the draft is kept",
52
+ 与天性或语境不一致: "Does not fit her nature or the context",
53
+ "主动消息的事实与内容核对暂未完成,草稿保留,稍后重新决定":
54
+ "The fact and content check for the proactive message is unfinished; the draft is kept and she will decide again later",
55
+ "已发出的原话互相矛盾,先承认自己说乱了":
56
+ "Her earlier words contradict each other; she admits she mixed them up",
57
+ "本人旧话互相矛盾,使用核实后的简短更正":
58
+ "Her own earlier words contradict each other; a short verified correction is used",
59
+ "旧话错误且原回复对象明确,承认没有依据":
60
+ "The earlier words were wrong and the original addressee is clear; she admits she had no basis",
61
+ "旧话将第三人关系说错,使用核实后的简短更正":
62
+ "The earlier words got a third person's relationship wrong; a short verified correction is used",
63
+ "自己先开口的话没有他发来的消息可依,承认是猜的":
64
+ "She spoke first and had no message from him to go on; she admits it was a guess",
65
+ "先开口的话被追问依据,使用核实后的简短更正":
66
+ "She was asked for the basis of what she said first; a short verified correction is used",
67
+ "想说的话还没整理好,愿望保留,稍后重新决定":
68
+ "What she wants to say is not sorted out yet; the wish is kept and she will decide again later",
69
+ "没有人在叫她,回复两次仍未通过校验,不用空话顶替,不说了":
70
+ "No one was calling her and the reply failed validation twice; no filler, she stays quiet",
71
+ "没被叫到,话没整理好,就不说了":
72
+ "Not called on and the words were not ready; she stays quiet",
73
+ "回复两次生成仍未通过校验,使用本地安全短句":
74
+ "The reply failed validation twice; a safe local short phrase is used",
75
+ 本地安全短句: "Safe local short phrase",
76
+ "隔离回放完成,未发送或写入记忆":
77
+ "Isolated replay finished; nothing was sent or written to memory",
78
+
79
+ // reply validation
80
+ 气泡格式无效: "Bubble format is invalid",
81
+ 回复超过当前会话总字数:
82
+ "The reply is over this session's total character limit",
83
+ 使用人格禁用表达: "Uses a phrase her persona rules out",
84
+ 重复近期回复: "Repeats a recent reply",
85
+ 气泡之间重复: "Bubbles repeat each other",
86
+ 客服式套话: "Customer-service boilerplate",
87
+ "评价或攻击群友,过于刻薄": "Judges or attacks group members; too harsh",
88
+ 短句回复: "Short reply",
89
+
90
+ // turn
91
+ 语境决策: "Context decision",
92
+ 会话已暂停或处于模拟模式: "The session is paused or in simulation mode",
93
+ "图片使用已保存的观察,不再提交画面":
94
+ "Using the saved image observation; the picture is not sent again",
95
+ 图片理解调用失败: "The image understanding call failed",
96
+ "读房间的这几秒里,要回的人又说了话:先不花一次调用,并入下一批一起回":
97
+ "While reading the room, the person she was answering spoke again; no call is spent now, it joins the next batch",
98
+ "读房间时又有新话,并入下一批":
99
+ "New words arrived while reading the room; joined to the next batch",
100
+ "回合输出格式异常,按直接对话兜底":
101
+ "The turn output was malformed; fell back to a direct reply",
102
+ "主动判断没有整理好,愿望保留,稍后重新决定":
103
+ "The proactive judgment was not sorted out; the wish is kept and she will decide again later",
104
+ 没能整理好想法: "Could not sort out her thoughts",
105
+ 没发出去: "Not sent",
106
+ 已移除不属于本轮消息的回复目标:
107
+ "Removed a reply target that is not part of this round",
108
+ "有人可能处在危机里,底线要求认真回应":
109
+ "Someone may be in crisis; the baseline requires a serious reply",
110
+ 此刻的判断: "Judgment at this moment",
111
+
112
+ // vision
113
+ 图片缓存不可用: "The image cache is unavailable",
114
+ 模型未开启视觉能力: "The model has vision turned off",
115
+ 图片地址不可用: "The image address is unavailable",
116
+ 超出本轮四张视觉预算: "Over this round's budget of four images",
117
+
118
+ // initiative, growth, memory policy, own voice, origin
119
+ 会话不可用: "The session is unavailable",
120
+ 对方明确不想被主动联系: "They clearly do not want to be contacted first",
121
+ "这段对话正在处理,稍后重新看看":
122
+ "This conversation is being handled; she will look again later",
123
+ "刚主动说过,愿望仍保留": "She just spoke first; the wish is still kept",
124
+ 还不需要重新看自己: "No need to look at herself again yet",
125
+ 独处预算已用完: "The budget for time alone is used up",
126
+ 新的相处还不多: "Not much new time together yet",
127
+ 回看自己在不同地方怎样长成:
128
+ "Looking back at how she has grown in different places",
129
+ 还没有想改变的地方: "Nothing she wants to change yet",
130
+ "天性、关系或服务状态已经变化":
131
+ "Her nature, relationships or the service state have changed",
132
+ "关系记录变了,按新认识重新整理,不提交旧想法":
133
+ "Relationships changed; reconsider with the new knowledge instead of saving the old thought",
134
+ 把先前的自述整理成长期适用的自己:
135
+ "Turning the earlier self-description into a lasting one",
136
+ 留下了有来源的新变化: "Left a new change that has a source",
137
+ 没有待整理经历: "No experiences waiting to be sorted",
138
+ 达到常规整理量: "Reached the usual amount to sort",
139
+ 重要经历已说完: "An important experience has been told",
140
+ 亲近的人留下了一段相处: "Someone close left a stretch of time together",
141
+ 少量经历已积压一段时间: "A few experiences have been waiting a while",
142
+ 低频会话的经历已等待一天:
143
+ "Experiences from a quiet session have waited a day",
144
+ 等这段相处沉淀: "Waiting for this time together to settle",
145
+ 先听听自己想说什么: "First listening to what she wants to say",
146
+ 此刻没有想表达的新内容: "Nothing new to express right now",
147
+ "状态已变化,这次想法未保存": "The state changed; this thought was not saved",
148
+ "连着几条念头都只在接自己上一条,这一条也没接住新的东西,不留":
149
+ "Several thoughts in a row only followed her previous one, and this one caught nothing new; not kept",
150
+ "这个念头已经留过,不重复制造新的愿望":
151
+ "This thought was already kept; no new wish is made from it",
152
+ 想把这个念头说出来: "Wants to say this thought aloud",
153
+ "同一念头还在往前长,先留给自己,不换个地方重说":
154
+ "The same thought is still growing; she keeps it to herself instead of repeating it elsewhere",
155
+ 留下一个自己想分享的念头: "Left a thought she wants to share",
156
+ 这句话先留给自己: "Keeping this line to herself for now",
157
+ 这位参与者: "This participant",
158
+ "这份想法含有其他会话的私下来源,不能在这里继续":
159
+ "This thought has a private source from another session and cannot continue here",
160
+ "话题来源缺失、已撤销或过长,参与者尚未核实":
161
+ "The topic's source is missing, undone or too long, and the participants are not verified",
162
+ 主动交流对象不明确: "It is unclear who the proactive message is for",
163
+
164
+ // simulation
165
+ "模拟:对方收口,留白": "Simulated: the other person wrapped up; leave it",
166
+ "模拟:避免复读": "Simulated: avoid repeating",
167
+
168
+ // stored wait reasons
169
+ "实例中断,进度已保留": "The instance was interrupted; progress kept",
170
+ 等待独立搜索密钥: "Waiting for the separate search key",
171
+ 独立搜索尚未启用: "Separate search is not enabled yet",
172
+ 共享知识库: "Shared knowledge base",
173
+ };
174
+
175
+ export const DECISION_PATTERNS = [
176
+ ["整理了 {0} 段语境摘要", "Sorted {0} context summaries"],
177
+ ["QQ 用户·{0}", "QQ user·{0}"],
178
+ ["读取 QQ {0} 失败:{1}", "Reading QQ {0} failed: {1}"],
179
+ ["读取群 {0} 的名字失败:{1}", "Reading the name of group {0} failed: {1}"],
180
+ [
181
+ "模型服务暂时不可用,{0} 秒后再试(第 {1} 次)",
182
+ "The model service is unavailable for now; trying again in {0} seconds (attempt {1})",
183
+ ],
184
+ [
185
+ "回复复审暂不可用,已按本地校验继续:{0}",
186
+ "The reply review is unavailable; continued with the local check: {0}",
187
+ ],
188
+ ["分享选择未执行:{0}", "The sharing choice was not carried out: {0}"],
189
+ [
190
+ "图片理解失败,本轮不根据画面编造:{0}",
191
+ "Image understanding failed; she will not invent the picture this round: {0}",
192
+ ],
193
+ ["每分钟发言轮数限速({0}轮)", "Per-minute turn limit ({0} turns)"],
194
+ [
195
+ "自我描述整理未完成:{0}",
196
+ "Sorting the self-description did not finish: {0}",
197
+ ],
198
+ [
199
+ "自我描述重写未完成:{0}",
200
+ "Rewriting the self-description did not finish: {0}",
201
+ ],
202
+ [
203
+ "连着 {0} 条念头都只在接自己上一条,还没有新的东西可接",
204
+ "{0} thoughts in a row only followed her previous one; nothing new to pick up yet",
205
+ ],
206
+ ["模拟样例 · {0}", "Simulated sample · {0}"],
207
+ ["上次见到是 {0}", "Last seen {0}"],
208
+ ["上次说上话是 {0}", "Last spoke {0}"],
209
+ ];
@@ -2,6 +2,10 @@
2
2
  // key, exactly as the code writes it. `{0}` stands for a value the code puts
3
3
  // into the message; patterns are used when a message carries one.
4
4
  export const ERRORS = {
5
+ "写日记期间关系记录已变化,本次旧稿未保存,下次按新认识整理":
6
+ "Relationships changed while writing the diary; the old draft was not saved and the next attempt will use the new knowledge",
7
+ "写回顾期间关系记录已变化,本次旧稿未保存,下次按新认识整理":
8
+ "Relationships changed while writing the review; the old draft was not saved and the next attempt will use the new knowledge",
5
9
  关系对象账号无效: "Invalid relationship account",
6
10
  官方机器人关系需要指定应用账号:
7
11
  "Official bot relationships require an application account",