shipmyagent 1.0.239 → 1.0.241

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 (85) hide show
  1. package/bin/main/context/manager/RuntimeState.d.ts.map +1 -1
  2. package/bin/main/context/manager/RuntimeState.js +0 -5
  3. package/bin/main/context/manager/RuntimeState.js.map +1 -1
  4. package/bin/main/prompts/system/SystemDomain.d.ts.map +1 -1
  5. package/bin/main/prompts/system/SystemDomain.js +1 -10
  6. package/bin/main/prompts/system/SystemDomain.js.map +1 -1
  7. package/bin/main/prompts/system/assets/core.prompt.txt +5 -1
  8. package/bin/main/prompts/system/assets/service.prompt.txt +3 -2
  9. package/bin/main/server/commands/Start.js +2 -2
  10. package/bin/main/server/constants/Ship.d.ts.map +1 -1
  11. package/bin/main/server/constants/Ship.js +2 -0
  12. package/bin/main/server/constants/Ship.js.map +1 -1
  13. package/bin/main/server/constants/ShipSchema.d.ts.map +1 -1
  14. package/bin/main/server/constants/ShipSchema.js +2 -0
  15. package/bin/main/server/constants/ShipSchema.js.map +1 -1
  16. package/bin/main/server/daemon/CliArgs.js +5 -5
  17. package/bin/main/server/daemon/CliArgs.js.map +1 -1
  18. package/bin/main/server/env/Paths.d.ts.map +1 -1
  19. package/bin/main/server/env/Paths.js +34 -0
  20. package/bin/main/server/env/Paths.js.map +1 -1
  21. package/bin/main/service/Services.d.ts.map +1 -1
  22. package/bin/main/service/Services.js +2 -0
  23. package/bin/main/service/Services.js.map +1 -1
  24. package/bin/main/types/ShipConfig.d.ts.map +1 -1
  25. package/bin/services/chat/channels/qq/VoiceInput.d.ts.map +1 -1
  26. package/bin/services/chat/channels/qq/VoiceInput.js +66 -16
  27. package/bin/services/chat/channels/qq/VoiceInput.js.map +1 -1
  28. package/bin/services/chat/runtime/ChatQueueWorker.d.ts.map +1 -1
  29. package/bin/services/chat/runtime/ChatQueueWorker.js +92 -17
  30. package/bin/services/chat/runtime/ChatQueueWorker.js.map +1 -1
  31. package/bin/services/memory/Action.d.ts.map +1 -0
  32. package/bin/services/memory/Action.js +151 -0
  33. package/bin/services/memory/Action.js.map +1 -0
  34. package/bin/services/memory/Index.d.ts.map +1 -0
  35. package/bin/services/memory/Index.js +258 -0
  36. package/bin/services/memory/Index.js.map +1 -0
  37. package/bin/services/memory/runtime/Flush.d.ts.map +1 -0
  38. package/bin/services/memory/runtime/Flush.js +63 -0
  39. package/bin/services/memory/runtime/Flush.js.map +1 -0
  40. package/bin/services/memory/runtime/Indexer.d.ts.map +1 -0
  41. package/bin/services/memory/runtime/Indexer.js +344 -0
  42. package/bin/services/memory/runtime/Indexer.js.map +1 -0
  43. package/bin/services/memory/runtime/Search.d.ts.map +1 -0
  44. package/bin/services/memory/runtime/Search.js +65 -0
  45. package/bin/services/memory/runtime/Search.js.map +1 -0
  46. package/bin/services/memory/runtime/Store.d.ts.map +1 -0
  47. package/bin/services/memory/runtime/Store.js +265 -0
  48. package/bin/services/memory/runtime/Store.js.map +1 -0
  49. package/bin/services/memory/runtime/SystemProvider.d.ts.map +1 -1
  50. package/bin/services/memory/runtime/SystemProvider.js +28 -43
  51. package/bin/services/memory/runtime/SystemProvider.js.map +1 -1
  52. package/bin/services/memory/runtime/Writer.d.ts.map +1 -0
  53. package/bin/services/memory/runtime/Writer.js +141 -0
  54. package/bin/services/memory/runtime/Writer.js.map +1 -0
  55. package/bin/services/memory/types/Memory.d.ts.map +1 -1
  56. package/bin/services/memory/types/Memory.js +7 -0
  57. package/bin/services/memory/types/Memory.js.map +1 -1
  58. package/bin/services/task/Action.d.ts.map +1 -1
  59. package/bin/services/task/Action.js +0 -4
  60. package/bin/services/task/Action.js.map +1 -1
  61. package/bin/services/task/Index.js +2 -2
  62. package/bin/services/task/PROMPT.txt +4 -5
  63. package/bin/services/task/Scheduler.d.ts.map +1 -1
  64. package/bin/services/task/Scheduler.js +0 -8
  65. package/bin/services/task/Scheduler.js.map +1 -1
  66. package/bin/services/task/runtime/Runner.d.ts.map +1 -1
  67. package/bin/services/task/runtime/Runner.js +0 -65
  68. package/bin/services/task/runtime/Runner.js.map +1 -1
  69. package/bin/services/task/types/Task.d.ts.map +1 -1
  70. package/bin/services/task/types/TaskCommand.d.ts.map +1 -1
  71. package/package.json +1 -1
  72. package/src/main/prompts/system/assets/core.prompt.txt +5 -1
  73. package/src/main/prompts/system/assets/service.prompt.txt +3 -2
  74. package/src/services/task/PROMPT.txt +4 -5
  75. package/test/chat/chat-queue-worker-burst-merge.test.mjs +165 -0
  76. package/test/chat/qq-voice-input.test.mjs +22 -0
  77. package/bin/services/memory/runtime/Extractor.d.ts.map +0 -1
  78. package/bin/services/memory/runtime/Extractor.js +0 -229
  79. package/bin/services/memory/runtime/Extractor.js.map +0 -1
  80. package/bin/services/memory/runtime/Manager.d.ts.map +0 -1
  81. package/bin/services/memory/runtime/Manager.js +0 -156
  82. package/bin/services/memory/runtime/Manager.js.map +0 -1
  83. package/bin/services/memory/runtime/Service.d.ts.map +0 -1
  84. package/bin/services/memory/runtime/Service.js +0 -145
  85. package/bin/services/memory/runtime/Service.js.map +0 -1
@@ -1,145 +0,0 @@
1
- import { getLogger } from "../../../utils/logger/Logger.js";
2
- import { MemoryManager } from "./Manager.js";
3
- import { compressMemory, extractMemoryFromContextMessages } from "./Extractor.js";
4
- const memoryManagers = new Map();
5
- function getMemoryManager(runtime, contextId) {
6
- const key = String(contextId || "").trim();
7
- if (!key) {
8
- throw new Error("Memory service requires a non-empty contextId");
9
- }
10
- const cacheKey = `${runtime.rootPath}::${key}`;
11
- const existing = memoryManagers.get(cacheKey);
12
- if (existing)
13
- return existing;
14
- const created = new MemoryManager(runtime, key);
15
- memoryManagers.set(cacheKey, created);
16
- return created;
17
- }
18
- /**
19
- * runContextMemoryMaintenance:按配置执行 context 记忆维护。
20
- *
21
- * 关键点(中文)
22
- * - 这是 service 侧能力,不属于 core context 内核
23
- * - core 只在“消息追加后”触发,不关心具体提取/压缩细节
24
- */
25
- export async function runContextMemoryMaintenance(params) {
26
- const contextId = String(params.contextId || "").trim();
27
- if (!contextId)
28
- return;
29
- const runtime = params.context;
30
- const config = runtime.config?.context?.memory;
31
- const enabled = config?.autoExtractEnabled ?? true;
32
- if (!enabled)
33
- return;
34
- const extractMinEntries = config?.extractMinEntries ?? 40;
35
- try {
36
- const serviceContext = runtime.context;
37
- const persistor = serviceContext.getPersistor(contextId);
38
- const totalEntries = await persistor.size();
39
- const memoryManager = getMemoryManager(runtime, contextId);
40
- const meta = await memoryManager.loadMeta();
41
- const lastMemorizedEntryCount = meta.lastMemorizedEntryCount ?? 0;
42
- const unmemorizedCount = totalEntries - lastMemorizedEntryCount;
43
- if (unmemorizedCount < extractMinEntries)
44
- return;
45
- await runtime.logger.log("info", "[agent] memory calling", {
46
- contextId,
47
- entryRange: [lastMemorizedEntryCount, totalEntries],
48
- });
49
- void extractAndSaveMemory({
50
- context: runtime,
51
- contextId,
52
- startIndex: lastMemorizedEntryCount,
53
- endIndex: totalEntries,
54
- });
55
- }
56
- catch {
57
- return;
58
- }
59
- }
60
- async function extractAndSaveMemory(params) {
61
- const { context: runtime, contextId, startIndex, endIndex } = params;
62
- const logger = getLogger(runtime.rootPath, "info");
63
- try {
64
- await logger.log("info", "[agent] memory extracting", {
65
- contextId,
66
- entryRange: [startIndex, endIndex],
67
- });
68
- const model = runtime.context.model;
69
- const memoryEntry = await extractMemoryFromContextMessages({
70
- context: runtime,
71
- contextId,
72
- entryRange: [startIndex, endIndex],
73
- model,
74
- });
75
- const memoryManager = getMemoryManager(runtime, contextId);
76
- await memoryManager.append(memoryEntry);
77
- const meta = await memoryManager.loadMeta();
78
- await memoryManager.saveMeta({
79
- lastMemorizedEntryCount: endIndex,
80
- totalExtractions: (meta.totalExtractions ?? 0) + 1,
81
- lastExtractedAt: Date.now(),
82
- });
83
- await checkAndCompressMemory(runtime, contextId, model);
84
- await logger.log("info", "[agent] memory extracted", {
85
- contextId,
86
- entryRange: [startIndex, endIndex],
87
- });
88
- }
89
- catch (error) {
90
- await logger.log("error", "[agent] memory extract failed", {
91
- contextId,
92
- error: String(error),
93
- });
94
- }
95
- }
96
- async function checkAndCompressMemory(runtime, contextId, model) {
97
- const logger = getLogger(runtime.rootPath, "info");
98
- try {
99
- const config = runtime.config?.context?.memory;
100
- const compressEnabled = config?.compressOnOverflow ?? true;
101
- if (!compressEnabled)
102
- return;
103
- const maxChars = config?.maxPrimaryChars ?? 15000;
104
- const memoryManager = getMemoryManager(runtime, contextId);
105
- const currentSize = await memoryManager.getSize();
106
- if (currentSize <= maxChars)
107
- return;
108
- await logger.log("info", "[agent] compacting memory", {
109
- contextId,
110
- currentSize,
111
- maxChars,
112
- });
113
- const backupEnabled = config?.backupBeforeCompress ?? true;
114
- if (backupEnabled) {
115
- const backupPath = await memoryManager.backup();
116
- await logger.log("info", "[agent] memory backup", {
117
- contextId,
118
- backupPath,
119
- });
120
- }
121
- const currentContent = await memoryManager.load();
122
- const targetChars = Math.floor(maxChars * 0.8);
123
- const compressed = await compressMemory({
124
- context: runtime,
125
- contextId,
126
- currentContent,
127
- targetChars,
128
- model,
129
- });
130
- await memoryManager.overwrite(compressed);
131
- await logger.log("info", "[agent] memory compacted", {
132
- contextId,
133
- originalSize: currentSize,
134
- compressedSize: compressed.length,
135
- targetChars,
136
- });
137
- }
138
- catch (error) {
139
- await logger.log("error", "[agent] memory compact failed", {
140
- contextId,
141
- error: String(error),
142
- });
143
- }
144
- }
145
- //# sourceMappingURL=Service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Service.js","sourceRoot":"","sources":["../../../../src/services/memory/runtime/Service.ts"],"names":[],"mappings":"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"}