@lemoncat7/dsh-partner 0.1.0-alpha.21 → 1.0.0

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 (49) hide show
  1. package/README.md +4 -3
  2. package/lib/agent-runtime.d.ts +9 -4
  3. package/lib/agent-runtime.d.ts.map +1 -1
  4. package/lib/agent-runtime.js +56 -14
  5. package/lib/agent-runtime.js.map +1 -1
  6. package/lib/api.d.ts +4 -2
  7. package/lib/api.d.ts.map +1 -1
  8. package/lib/api.js +38 -7
  9. package/lib/api.js.map +1 -1
  10. package/lib/client-api.d.ts +52 -7
  11. package/lib/client-api.d.ts.map +1 -1
  12. package/lib/client-api.js.map +1 -1
  13. package/lib/client.d.ts.map +1 -1
  14. package/lib/client.js +863 -108
  15. package/lib/client.js.map +2 -2
  16. package/lib/daily-review.d.ts +26 -0
  17. package/lib/daily-review.d.ts.map +1 -0
  18. package/lib/daily-review.js +86 -0
  19. package/lib/daily-review.js.map +1 -0
  20. package/lib/domain.d.ts +6 -2
  21. package/lib/domain.d.ts.map +1 -1
  22. package/lib/domain.js +14 -6
  23. package/lib/domain.js.map +1 -1
  24. package/lib/heartbeat.d.ts +1 -3
  25. package/lib/heartbeat.d.ts.map +1 -1
  26. package/lib/heartbeat.js +1 -7
  27. package/lib/heartbeat.js.map +1 -1
  28. package/lib/index.d.ts.map +1 -1
  29. package/lib/index.js +18 -7
  30. package/lib/index.js.map +1 -1
  31. package/lib/memory-domain.d.ts +85 -0
  32. package/lib/memory-domain.d.ts.map +1 -0
  33. package/lib/memory-domain.js +2 -0
  34. package/lib/memory-domain.js.map +1 -0
  35. package/lib/memory-reflection.d.ts +22 -0
  36. package/lib/memory-reflection.d.ts.map +1 -0
  37. package/lib/memory-reflection.js +158 -0
  38. package/lib/memory-reflection.js.map +1 -0
  39. package/lib/memory-store.d.ts +50 -0
  40. package/lib/memory-store.d.ts.map +1 -0
  41. package/lib/memory-store.js +519 -0
  42. package/lib/memory-store.js.map +1 -0
  43. package/lib/store.js +29 -2
  44. package/lib/store.js.map +1 -1
  45. package/package.json +1 -1
  46. package/lib/journal.d.ts +0 -23
  47. package/lib/journal.d.ts.map +0 -1
  48. package/lib/journal.js +0 -93
  49. package/lib/journal.js.map +0 -1
@@ -0,0 +1,26 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import { PartnerStore } from './store.js';
3
+ import { PartnerMemoryStore } from './memory-store.js';
4
+ import { MemoryReflectionService } from './memory-reflection.js';
5
+ export declare class DailyReviewScheduler {
6
+ private readonly ctx;
7
+ private readonly store;
8
+ private readonly memory;
9
+ private readonly reflection;
10
+ private readonly timeZone;
11
+ private timer;
12
+ private closed;
13
+ private readonly running;
14
+ constructor(ctx: Context, store: PartnerStore, memory: PartnerMemoryStore, reflection: MemoryReflectionService, timeZone?: string);
15
+ start(): void;
16
+ close(): Promise<void>;
17
+ trigger(companionId: string, force?: boolean): Promise<{
18
+ reviewed: number;
19
+ failed: number;
20
+ reason?: string;
21
+ }>;
22
+ private schedule;
23
+ private tick;
24
+ private run;
25
+ }
26
+ //# sourceMappingURL=daily-review.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daily-review.d.ts","sourceRoot":"","sources":["../src/daily-review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAIhE,qBAAa,oBAAoB;IAKnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAW,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACtG,OAAO,CAAC,QAAQ,CAAC,UAAU;IAA2B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IALjF,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEf,GAAG,EAAE,OAAO,EAAmB,KAAK,EAAE,YAAY,EAAmB,MAAM,EAAE,kBAAkB,EACzG,UAAU,EAAE,uBAAuB,EAAmB,QAAQ,SAAkB;IAEnG,KAAK,IAAI,IAAI;IACP,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAEtB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IASjH,OAAO,CAAC,QAAQ;YASF,IAAI;YASJ,GAAG;CAWlB"}
@@ -0,0 +1,86 @@
1
+ const TICK_MS = 60_000;
2
+ export class DailyReviewScheduler {
3
+ ctx;
4
+ store;
5
+ memory;
6
+ reflection;
7
+ timeZone;
8
+ timer;
9
+ closed = false;
10
+ running = new Set();
11
+ constructor(ctx, store, memory, reflection, timeZone = 'Asia/Shanghai') {
12
+ this.ctx = ctx;
13
+ this.store = store;
14
+ this.memory = memory;
15
+ this.reflection = reflection;
16
+ this.timeZone = timeZone;
17
+ }
18
+ start() { if (!this.closed && this.timer === undefined)
19
+ this.schedule(5_000); }
20
+ async close() { this.closed = true; if (this.timer)
21
+ clearTimeout(this.timer); this.timer = undefined; }
22
+ async trigger(companionId, force = false) {
23
+ if (this.running.has(companionId))
24
+ return { reviewed: 0, failed: 0, reason: '每日终审正在执行' };
25
+ const companion = this.store.snapshot().companions.find(item => item.id === companionId);
26
+ if (!companion)
27
+ throw new Error('伙伴不存在');
28
+ if (!force && (!companion.automation.memory.enabled || !companion.automation.memory.dailyReviewEnabled))
29
+ return { reviewed: 0, failed: 0, reason: '每日终审未启用' };
30
+ this.running.add(companionId);
31
+ try {
32
+ return await this.run(companion, force);
33
+ }
34
+ finally {
35
+ this.running.delete(companionId);
36
+ }
37
+ }
38
+ schedule(delay) {
39
+ this.timer = setTimeout(() => {
40
+ this.timer = undefined;
41
+ void this.tick().catch(error => this.ctx.logger.error(`dsh-partner daily review tick failed: ${message(error)}`))
42
+ .finally(() => { if (!this.closed)
43
+ this.schedule(TICK_MS); });
44
+ }, delay);
45
+ this.timer.unref?.();
46
+ }
47
+ async tick() {
48
+ const now = Date.now();
49
+ for (const companion of this.store.snapshot().companions) {
50
+ if (!companion.automation.memory.enabled || !companion.automation.memory.dailyReviewEnabled)
51
+ continue;
52
+ if (zonedHour(now, this.timeZone) < companion.automation.memory.dailyReviewHour)
53
+ continue;
54
+ await this.trigger(companion.id).catch(error => this.ctx.logger.warn(`dsh-partner daily review for ${companion.id} failed: ${message(error)}`));
55
+ }
56
+ }
57
+ async run(companion, force) {
58
+ const date = force ? localDay(Date.now(), this.timeZone) : previousLocalDay(Date.now(), this.timeZone);
59
+ const targets = await this.memory.pendingDailyReviews(companion.id, date, force ? Number.MAX_SAFE_INTEGER : Date.now());
60
+ if (targets.length === 0)
61
+ return { reviewed: 0, failed: 0, reason: '没有待终审的日期' };
62
+ let reviewed = 0;
63
+ let failed = 0;
64
+ for (const target of targets) {
65
+ try {
66
+ await this.reflection.reviewDay(companion, target);
67
+ reviewed += 1;
68
+ }
69
+ catch (error) {
70
+ failed += 1;
71
+ await this.memory.failDailyReview(target, message(error));
72
+ this.ctx.logger.warn(`dsh-partner daily review ${target.date} failed: ${message(error)}`);
73
+ }
74
+ }
75
+ return { reviewed, failed };
76
+ }
77
+ }
78
+ function previousLocalDay(now, timeZone) {
79
+ return localDay(now - 24 * 60 * 60_000, timeZone);
80
+ }
81
+ function localDay(now, timeZone) { return new Intl.DateTimeFormat('en-CA', { timeZone, year: 'numeric', month: '2-digit', day: '2-digit' }).format(now); }
82
+ function zonedHour(now, timeZone) {
83
+ return Number(new Intl.DateTimeFormat('en-US', { timeZone, hour: 'numeric', hourCycle: 'h23' }).format(now));
84
+ }
85
+ function message(error) { return error instanceof Error ? error.message : String(error); }
86
+ //# sourceMappingURL=daily-review.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daily-review.js","sourceRoot":"","sources":["../src/daily-review.ts"],"names":[],"mappings":"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"}
package/lib/domain.d.ts CHANGED
@@ -15,9 +15,13 @@ export interface Companion {
15
15
  updatedAt: number;
16
16
  }
17
17
  export interface CompanionAutomation {
18
- journal: {
18
+ memory: {
19
19
  enabled: boolean;
20
20
  retentionDays: number;
21
+ provider?: string;
22
+ model?: string;
23
+ dailyReviewEnabled: boolean;
24
+ dailyReviewHour: number;
21
25
  };
22
26
  heartbeat: {
23
27
  enabled: boolean;
@@ -66,7 +70,7 @@ export interface ChannelSession {
66
70
  lastMessageAt: number;
67
71
  }
68
72
  export interface PartnerState {
69
- schemaVersion: 4;
73
+ schemaVersion: 7;
70
74
  companions: Companion[];
71
75
  channels: WeixinChannel[];
72
76
  pairings: PairingRequest[];
@@ -1 +1 @@
1
- {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
package/lib/domain.js CHANGED
@@ -1,15 +1,18 @@
1
1
  export const DEFAULT_AUTOMATION = {
2
- journal: { enabled: true, retentionDays: 0 },
2
+ memory: { enabled: true, retentionDays: 0, dailyReviewEnabled: true, dailyReviewHour: 2 },
3
3
  heartbeat: { enabled: false, intervalMinutes: 360, quietStartHour: 22, quietEndHour: 8, dailyLimit: 0 },
4
4
  };
5
5
  export function normalizeAutomation(value) {
6
6
  const input = object(value, 'automation');
7
- const journal = object(input.journal, 'automation.journal');
7
+ const memory = object(input.memory, 'automation.memory');
8
8
  const heartbeat = object(input.heartbeat, 'automation.heartbeat');
9
9
  return {
10
- journal: {
11
- enabled: boolean(journal.enabled, 'journal.enabled'),
12
- retentionDays: retentionDays(journal.retentionDays),
10
+ memory: {
11
+ enabled: boolean(memory.enabled, 'memory.enabled'),
12
+ retentionDays: retentionDays(memory.retentionDays),
13
+ dailyReviewEnabled: boolean(memory.dailyReviewEnabled ?? true, 'memory.dailyReviewEnabled'),
14
+ dailyReviewHour: integer(memory.dailyReviewHour ?? 2, 'memory.dailyReviewHour', 0, 23),
15
+ ...optionalRoute(memory),
13
16
  },
14
17
  heartbeat: {
15
18
  enabled: boolean(heartbeat.enabled, 'heartbeat.enabled'),
@@ -20,6 +23,11 @@ export function normalizeAutomation(value) {
20
23
  },
21
24
  };
22
25
  }
26
+ function optionalRoute(value) {
27
+ const provider = optionalText(value.provider, 'memory.provider', 100);
28
+ const model = optionalText(value.model, 'memory.model', 200);
29
+ return { ...(provider ? { provider } : {}), ...(model ? { model } : {}) };
30
+ }
23
31
  export function normalizeCompanionDraft(value) {
24
32
  const input = object(value, 'companion');
25
33
  const capabilities = Array.isArray(input.capabilities)
@@ -69,7 +77,7 @@ function integer(value, label, min, max) {
69
77
  function retentionDays(value) {
70
78
  if (value === 0)
71
79
  return 0;
72
- return integer(value, 'journal.retentionDays', 7, 3650);
80
+ return integer(value, 'memory.retentionDays', 7, 3650);
73
81
  }
74
82
  export function object(value, label) {
75
83
  if (typeof value !== 'object' || value === null || Array.isArray(value))
package/lib/domain.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"domain.js","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domain.js","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import type { Context } from '@deepseek-ai/cordis';
2
2
  import { PartnerStore } from './store.js';
3
- import { PartnerJournal } from './journal.js';
4
3
  import { PartnerAgentRuntime } from './agent-runtime.js';
5
4
  import { ChannelManager } from './channels/manager.js';
6
5
  export declare class HeartbeatScheduler {
@@ -8,12 +7,11 @@ export declare class HeartbeatScheduler {
8
7
  private readonly store;
9
8
  private readonly agents;
10
9
  private readonly channels;
11
- private readonly journal;
12
10
  private readonly timeZone;
13
11
  private timer;
14
12
  private closed;
15
13
  private readonly running;
16
- constructor(ctx: Context, store: PartnerStore, agents: PartnerAgentRuntime, channels: ChannelManager, journal: PartnerJournal, timeZone?: string);
14
+ constructor(ctx: Context, store: PartnerStore, agents: PartnerAgentRuntime, channels: ChannelManager, timeZone?: string);
17
15
  start(): void;
18
16
  close(): Promise<void>;
19
17
  trigger(companionId: string, force?: boolean): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAgB,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAItD,qBAAa,kBAAkB;IAM3B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAV3B,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAGzB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,cAAc,EACvB,QAAQ,SAAkB;IAG7C,KAAK,IAAI,IAAI;IAKP,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAUhH,OAAO,CAAC,QAAQ;YASF,IAAI;YAeJ,GAAG;YAyCH,SAAS;CAMxB;AA2BD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,OAAO,CAIlG;AACD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAE7F;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAErF;AACD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAGxE"}
1
+ {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAItD,qBAAa,kBAAkB;IAM3B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAGzB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,cAAc,EACxB,QAAQ,SAAkB;IAG7C,KAAK,IAAI,IAAI;IAKP,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAUhH,OAAO,CAAC,QAAQ;YASF,IAAI;YAeJ,GAAG;YAuCH,SAAS;CAMxB;AA2BD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,OAAO,CAIlG;AACD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAE7F;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAErF;AACD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAGxE"}
package/lib/heartbeat.js CHANGED
@@ -1,21 +1,18 @@
1
- import { journalScope } from './agent-runtime.js';
2
1
  const TICK_MS = 60_000;
3
2
  export class HeartbeatScheduler {
4
3
  ctx;
5
4
  store;
6
5
  agents;
7
6
  channels;
8
- journal;
9
7
  timeZone;
10
8
  timer;
11
9
  closed = false;
12
10
  running = new Set();
13
- constructor(ctx, store, agents, channels, journal, timeZone = 'Asia/Shanghai') {
11
+ constructor(ctx, store, agents, channels, timeZone = 'Asia/Shanghai') {
14
12
  this.ctx = ctx;
15
13
  this.store = store;
16
14
  this.agents = agents;
17
15
  this.channels = channels;
18
- this.journal = journal;
19
16
  this.timeZone = timeZone;
20
17
  }
21
18
  start() {
@@ -96,9 +93,6 @@ export class HeartbeatScheduler {
96
93
  return { checked: true, sent: false, reason: '没有值得主动通知的内容' };
97
94
  }
98
95
  await this.channels.sendProactive(route.channelId, route.userId, output);
99
- if (companion.automation.journal.enabled)
100
- await this.journal.record(companion.id, journalScope(route.channelId, route.userId), 'heartbeat', '主动心跳检查', output)
101
- .catch(error => this.ctx.logger.warn(`dsh-partner heartbeat journal write failed: ${message(error)}`));
102
96
  await this.saveState(companion, successState(existing, companion, now, today, sentCount + 1, true));
103
97
  return { checked: true, sent: true };
104
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAKlD,OAAO,EAAE,MAAM,IAAI,YAAY,EAAiB,KAAK,MAAM,IAAI,aAAa,EAAE,MAAM,aAAa,CAAA;AAUjG,eAAO,MAAM,MAAM,0DAAe,CAAA;AAClC,MAAM,MAAM,MAAM,GAAG,aAAa,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,eAAO,MAAM,IAAI,gBAAgB,CAAA;AACjC,eAAO,MAAM,MAAM,UAAsG,CAAA;AAWzH,wBAAgB,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAmCnE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAKlD,OAAO,EAAE,MAAM,IAAI,YAAY,EAAiB,KAAK,MAAM,IAAI,aAAa,EAAE,MAAM,aAAa,CAAA;AAYjG,eAAO,MAAM,MAAM,0DAAe,CAAA;AAClC,MAAM,MAAM,MAAM,GAAG,aAAa,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,eAAO,MAAM,IAAI,gBAAgB,CAAA;AACjC,eAAO,MAAM,MAAM,UAA6G,CAAA;AAWhI,wBAAgB,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CA2CnE"}
package/lib/index.js CHANGED
@@ -5,25 +5,34 @@ import { PartnerAgentRuntime } from './agent-runtime.js';
5
5
  import { ChannelManager } from './channels/manager.js';
6
6
  import { WeixinLoginManager } from './channels/weixin/login.js';
7
7
  import { registerPartnerApi } from './api.js';
8
- import { PartnerJournal } from './journal.js';
9
8
  import { HeartbeatScheduler } from './heartbeat.js';
9
+ import { PartnerMemoryStore } from './memory-store.js';
10
+ import { MemoryReflectionService } from './memory-reflection.js';
11
+ import { DailyReviewScheduler } from './daily-review.js';
10
12
  export const Config = ConfigSchema;
11
13
  export * from './domain.js';
12
14
  export const name = 'dsh-partner';
13
- export const inject = ['credentials', 'agents', 'agentDefaultModel', 'agentPresets', 'systemPrompt', 'workspaceRegistry'];
15
+ export const inject = ['credentials', 'agents', 'agentDefaultModel', 'agentPresets', 'systemPrompt', 'workspaceRegistry', 'llm'];
14
16
  export function apply(context, config) {
15
17
  const ctx = context;
16
18
  const resolved = resolveConfig(config);
17
19
  ctx.effect(async () => {
18
20
  const store = await PartnerStore.open(resolved.statePath);
19
21
  const credentials = new PartnerCredentialVault(ctx.credentials);
20
- const journal = new PartnerJournal(resolved.defaultCwd);
21
- const agents = new PartnerAgentRuntime(ctx, store, resolved.defaultCwd, journal);
22
+ const memory = new PartnerMemoryStore(resolved.defaultCwd, resolved.timeZone);
23
+ for (const companion of store.snapshot().companions) {
24
+ const migrated = await memory.migrateLegacy(companion.id);
25
+ if (migrated > 0)
26
+ ctx.logger.info(`dsh-partner: migrated ${migrated} legacy memory records for ${companion.id}`);
27
+ }
28
+ const reflection = new MemoryReflectionService(ctx, memory);
29
+ const agents = new PartnerAgentRuntime(ctx, store, resolved.defaultCwd, memory, reflection);
22
30
  const disposeJournalObserver = ctx.on('session/event', (session, event) => {
23
- void agents.observeSessionEvent(session, event).catch(error => ctx.logger.warn(`dsh-partner journal observer failed: ${error instanceof Error ? error.message : String(error)}`));
31
+ void agents.observeSessionEvent(session, event).catch(error => ctx.logger.warn(`dsh-partner memory reflection failed: ${error instanceof Error ? error.message : String(error)}`));
24
32
  });
25
33
  const channels = new ChannelManager(ctx, store, credentials, agents);
26
- const heartbeat = new HeartbeatScheduler(ctx, store, agents, channels, journal, resolved.timeZone);
34
+ const heartbeat = new HeartbeatScheduler(ctx, store, agents, channels, resolved.timeZone);
35
+ const dailyReview = new DailyReviewScheduler(ctx, store, memory, reflection, resolved.timeZone);
27
36
  const login = new WeixinLoginManager();
28
37
  let disposeApi;
29
38
  const mountApi = (runtime) => {
@@ -32,7 +41,7 @@ export function apply(context, config) {
32
41
  const webServer = runtime.webServer ?? runtime.get('webServer');
33
42
  if (webServer === undefined)
34
43
  throw new Error('dsh-partner exposeWeb requires webServer');
35
- disposeApi = registerPartnerApi(webServer, resolved.apiPrefix, { ctx, store, credentials, channels, agents, login, journal, heartbeat });
44
+ disposeApi = registerPartnerApi(webServer, resolved.apiPrefix, { ctx, store, credentials, channels, agents, login, memory, heartbeat, dailyReview });
36
45
  };
37
46
  if (ctx.inject !== undefined)
38
47
  ctx.inject(['webServer'], mountApi);
@@ -43,11 +52,13 @@ export function apply(context, config) {
43
52
  if (resolved.autoStartChannels)
44
53
  await channels.startEnabled();
45
54
  heartbeat.start();
55
+ dailyReview.start();
46
56
  ctx.logger.info(`dsh-partner: ready with ${store.snapshot().companions.length} companion(s)`);
47
57
  return async () => {
48
58
  disposeApi?.();
49
59
  disposeJournalObserver();
50
60
  await heartbeat.close();
61
+ await dailyReview.close();
51
62
  await channels.close();
52
63
  await agents.close();
53
64
  };
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ export type MemoryKind = 'profile' | 'preference' | 'task' | 'event' | 'relationship' | 'emotion';
2
+ export type MemoryStatus = 'active' | 'completed' | 'superseded' | 'expired';
3
+ export interface ConversationTurn {
4
+ id: string;
5
+ companionId: string;
6
+ scopeId: string;
7
+ sessionId: string;
8
+ at: number;
9
+ user: string;
10
+ assistant: string;
11
+ }
12
+ export interface MemoryEvidence {
13
+ turnId: string;
14
+ at: number;
15
+ excerpt: string;
16
+ }
17
+ export interface PartnerMemory {
18
+ id: string;
19
+ companionId: string;
20
+ scopeId: string;
21
+ kind: MemoryKind;
22
+ subject: string;
23
+ content: string;
24
+ status: MemoryStatus;
25
+ confidence: number;
26
+ importance: number;
27
+ createdAt: number;
28
+ updatedAt: number;
29
+ expiresAt?: number;
30
+ locked?: boolean;
31
+ evidence: MemoryEvidence[];
32
+ }
33
+ export interface DailyReflection {
34
+ date: string;
35
+ companionId: string;
36
+ scopeId: string;
37
+ summary: string;
38
+ events: string[];
39
+ openTasks: string[];
40
+ completedTasks: string[];
41
+ learnings: string[];
42
+ updatedAt: number;
43
+ turnCount: number;
44
+ }
45
+ export interface MemoryCandidate {
46
+ kind: MemoryKind;
47
+ subject: string;
48
+ content: string;
49
+ confidence: number;
50
+ importance: number;
51
+ operation: 'upsert' | 'complete' | 'remove';
52
+ expiresInDays?: number;
53
+ }
54
+ export interface ReflectionResult {
55
+ daily: Pick<DailyReflection, 'summary' | 'events' | 'openTasks' | 'completedTasks' | 'learnings'>;
56
+ memories: MemoryCandidate[];
57
+ }
58
+ export type MemoryRelationKind = 'supports' | 'depends_on' | 'about' | 'conflicts_with' | 'follows';
59
+ export interface MemoryRelation {
60
+ id: string;
61
+ companionId: string;
62
+ scopeId: string;
63
+ sourceMemoryId: string;
64
+ targetMemoryId: string;
65
+ kind: MemoryRelationKind;
66
+ label: string;
67
+ confidence: number;
68
+ updatedAt: number;
69
+ }
70
+ export interface DailyReviewTarget {
71
+ companionId: string;
72
+ scopeId: string;
73
+ date: string;
74
+ attempts: number;
75
+ }
76
+ export interface DailyReviewResult extends ReflectionResult {
77
+ relations: Array<{
78
+ sourceSubject: string;
79
+ targetSubject: string;
80
+ kind: MemoryRelationKind;
81
+ label: string;
82
+ confidence: number;
83
+ }>;
84
+ }
85
+ //# sourceMappingURL=memory-domain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-domain.d.ts","sourceRoot":"","sources":["../src/memory-domain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=memory-domain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-domain.js","sourceRoot":"","sources":["../src/memory-domain.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import type { AgentDefaultModelConfig } from '@deepseek-ai/dsh-agent-default-model';
3
+ import type { Companion } from './domain.js';
4
+ import type { ConversationTurn, DailyReviewResult, DailyReviewTarget, ReflectionResult } from './memory-domain.js';
5
+ import type { PartnerMemoryStore } from './memory-store.js';
6
+ type ReflectionContext = Context & {
7
+ llm: Context['llm'];
8
+ agentDefaultModel: AgentDefaultModelConfig;
9
+ };
10
+ export declare class MemoryReflectionService {
11
+ private readonly ctx;
12
+ private readonly store;
13
+ private readonly queues;
14
+ constructor(ctx: ReflectionContext, store: PartnerMemoryStore);
15
+ reflect(companion: Companion, turn: ConversationTurn): Promise<void>;
16
+ reviewDay(companion: Companion, target: DailyReviewTarget): Promise<void>;
17
+ private run;
18
+ }
19
+ export declare function parseReflection(raw: string): ReflectionResult;
20
+ export declare function parseDailyReview(raw: string): DailyReviewResult;
21
+ export {};
22
+ //# sourceMappingURL=memory-reflection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-reflection.d.ts","sourceRoot":"","sources":["../src/memory-reflection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAA;AAEnF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAmD,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACnK,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAE3D,KAAK,iBAAiB,GAAG,OAAO,GAAG;IAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAAC,iBAAiB,EAAE,uBAAuB,CAAA;CAAE,CAAA;AAEtG,qBAAa,uBAAuB;IAEtB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAqB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAD3E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;gBAC7B,GAAG,EAAE,iBAAiB,EAAmB,KAAK,EAAE,kBAAkB;IAEzF,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;YAmBjE,GAAG;CAwBlB;AA6BD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAa7D;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAY/D"}