@agents-uni/core 0.1.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 (186) hide show
  1. package/DESIGN.md +283 -0
  2. package/LICENSE +21 -0
  3. package/README.en.md +589 -0
  4. package/README.md +589 -0
  5. package/dist/bridge/config-sync.d.ts +24 -0
  6. package/dist/bridge/config-sync.d.ts.map +1 -0
  7. package/dist/bridge/config-sync.js +39 -0
  8. package/dist/bridge/config-sync.js.map +1 -0
  9. package/dist/bridge/index.d.ts +7 -0
  10. package/dist/bridge/index.d.ts.map +1 -0
  11. package/dist/bridge/index.js +7 -0
  12. package/dist/bridge/index.js.map +1 -0
  13. package/dist/bridge/openclaw-adapter.d.ts +49 -0
  14. package/dist/bridge/openclaw-adapter.d.ts.map +1 -0
  15. package/dist/bridge/openclaw-adapter.js +151 -0
  16. package/dist/bridge/openclaw-adapter.js.map +1 -0
  17. package/dist/bridge/soul-generator.d.ts +34 -0
  18. package/dist/bridge/soul-generator.d.ts.map +1 -0
  19. package/dist/bridge/soul-generator.js +149 -0
  20. package/dist/bridge/soul-generator.js.map +1 -0
  21. package/dist/bridge/task-dispatcher.d.ts +107 -0
  22. package/dist/bridge/task-dispatcher.d.ts.map +1 -0
  23. package/dist/bridge/task-dispatcher.js +217 -0
  24. package/dist/bridge/task-dispatcher.js.map +1 -0
  25. package/dist/bridge/uni-registry.d.ts +82 -0
  26. package/dist/bridge/uni-registry.d.ts.map +1 -0
  27. package/dist/bridge/uni-registry.js +261 -0
  28. package/dist/bridge/uni-registry.js.map +1 -0
  29. package/dist/bridge/workspace-io.d.ts +64 -0
  30. package/dist/bridge/workspace-io.d.ts.map +1 -0
  31. package/dist/bridge/workspace-io.js +99 -0
  32. package/dist/bridge/workspace-io.js.map +1 -0
  33. package/dist/cli/commands/deploy.d.ts +6 -0
  34. package/dist/cli/commands/deploy.d.ts.map +1 -0
  35. package/dist/cli/commands/deploy.js +48 -0
  36. package/dist/cli/commands/deploy.js.map +1 -0
  37. package/dist/cli/commands/init.d.ts +2 -0
  38. package/dist/cli/commands/init.d.ts.map +1 -0
  39. package/dist/cli/commands/init.js +137 -0
  40. package/dist/cli/commands/init.js.map +1 -0
  41. package/dist/cli/commands/inspect.d.ts +4 -0
  42. package/dist/cli/commands/inspect.d.ts.map +1 -0
  43. package/dist/cli/commands/inspect.js +77 -0
  44. package/dist/cli/commands/inspect.js.map +1 -0
  45. package/dist/cli/commands/validate.d.ts +2 -0
  46. package/dist/cli/commands/validate.d.ts.map +1 -0
  47. package/dist/cli/commands/validate.js +30 -0
  48. package/dist/cli/commands/validate.js.map +1 -0
  49. package/dist/cli/commands/visualize.d.ts +2 -0
  50. package/dist/cli/commands/visualize.d.ts.map +1 -0
  51. package/dist/cli/commands/visualize.js +69 -0
  52. package/dist/cli/commands/visualize.js.map +1 -0
  53. package/dist/cli/index.d.ts +6 -0
  54. package/dist/cli/index.d.ts.map +1 -0
  55. package/dist/cli/index.js +132 -0
  56. package/dist/cli/index.js.map +1 -0
  57. package/dist/core/agent-registry.d.ts +37 -0
  58. package/dist/core/agent-registry.d.ts.map +1 -0
  59. package/dist/core/agent-registry.js +97 -0
  60. package/dist/core/agent-registry.js.map +1 -0
  61. package/dist/core/event-bus.d.ts +34 -0
  62. package/dist/core/event-bus.d.ts.map +1 -0
  63. package/dist/core/event-bus.js +96 -0
  64. package/dist/core/event-bus.js.map +1 -0
  65. package/dist/core/index.d.ts +8 -0
  66. package/dist/core/index.d.ts.map +1 -0
  67. package/dist/core/index.js +8 -0
  68. package/dist/core/index.js.map +1 -0
  69. package/dist/core/permission-matrix.d.ts +35 -0
  70. package/dist/core/permission-matrix.d.ts.map +1 -0
  71. package/dist/core/permission-matrix.js +95 -0
  72. package/dist/core/permission-matrix.js.map +1 -0
  73. package/dist/core/relationship-graph.d.ts +50 -0
  74. package/dist/core/relationship-graph.d.ts.map +1 -0
  75. package/dist/core/relationship-graph.js +150 -0
  76. package/dist/core/relationship-graph.js.map +1 -0
  77. package/dist/core/resource-pool.d.ts +48 -0
  78. package/dist/core/resource-pool.d.ts.map +1 -0
  79. package/dist/core/resource-pool.js +205 -0
  80. package/dist/core/resource-pool.js.map +1 -0
  81. package/dist/core/state-machine.d.ts +47 -0
  82. package/dist/core/state-machine.d.ts.map +1 -0
  83. package/dist/core/state-machine.js +110 -0
  84. package/dist/core/state-machine.js.map +1 -0
  85. package/dist/core/universe.d.ts +38 -0
  86. package/dist/core/universe.d.ts.map +1 -0
  87. package/dist/core/universe.js +101 -0
  88. package/dist/core/universe.js.map +1 -0
  89. package/dist/dashboard/api.d.ts +10 -0
  90. package/dist/dashboard/api.d.ts.map +1 -0
  91. package/dist/dashboard/api.js +237 -0
  92. package/dist/dashboard/api.js.map +1 -0
  93. package/dist/dashboard/index.d.ts +3 -0
  94. package/dist/dashboard/index.d.ts.map +1 -0
  95. package/dist/dashboard/index.js +3 -0
  96. package/dist/dashboard/index.js.map +1 -0
  97. package/dist/dashboard/server.d.ts +31 -0
  98. package/dist/dashboard/server.d.ts.map +1 -0
  99. package/dist/dashboard/server.js +44 -0
  100. package/dist/dashboard/server.js.map +1 -0
  101. package/dist/dashboard/templates.d.ts +47 -0
  102. package/dist/dashboard/templates.d.ts.map +1 -0
  103. package/dist/dashboard/templates.js +1481 -0
  104. package/dist/dashboard/templates.js.map +1 -0
  105. package/dist/evolution/index.d.ts +5 -0
  106. package/dist/evolution/index.d.ts.map +1 -0
  107. package/dist/evolution/index.js +5 -0
  108. package/dist/evolution/index.js.map +1 -0
  109. package/dist/evolution/memory-consolidator.d.ts +28 -0
  110. package/dist/evolution/memory-consolidator.d.ts.map +1 -0
  111. package/dist/evolution/memory-consolidator.js +84 -0
  112. package/dist/evolution/memory-consolidator.js.map +1 -0
  113. package/dist/evolution/performance-tracker.d.ts +29 -0
  114. package/dist/evolution/performance-tracker.d.ts.map +1 -0
  115. package/dist/evolution/performance-tracker.js +90 -0
  116. package/dist/evolution/performance-tracker.js.map +1 -0
  117. package/dist/evolution/promotion-engine.d.ts +32 -0
  118. package/dist/evolution/promotion-engine.d.ts.map +1 -0
  119. package/dist/evolution/promotion-engine.js +117 -0
  120. package/dist/evolution/promotion-engine.js.map +1 -0
  121. package/dist/evolution/relationship-evolver.d.ts +40 -0
  122. package/dist/evolution/relationship-evolver.d.ts.map +1 -0
  123. package/dist/evolution/relationship-evolver.js +105 -0
  124. package/dist/evolution/relationship-evolver.js.map +1 -0
  125. package/dist/index.d.ts +20 -0
  126. package/dist/index.d.ts.map +1 -0
  127. package/dist/index.js +23 -0
  128. package/dist/index.js.map +1 -0
  129. package/dist/schema/index.d.ts +13 -0
  130. package/dist/schema/index.d.ts.map +1 -0
  131. package/dist/schema/index.js +18 -0
  132. package/dist/schema/index.js.map +1 -0
  133. package/dist/schema/universe.schema.json +214 -0
  134. package/dist/spec/compiler.d.ts +16 -0
  135. package/dist/spec/compiler.d.ts.map +1 -0
  136. package/dist/spec/compiler.js +26 -0
  137. package/dist/spec/compiler.js.map +1 -0
  138. package/dist/spec/index.d.ts +4 -0
  139. package/dist/spec/index.d.ts.map +1 -0
  140. package/dist/spec/index.js +4 -0
  141. package/dist/spec/index.js.map +1 -0
  142. package/dist/spec/parser.d.ts +11 -0
  143. package/dist/spec/parser.d.ts.map +1 -0
  144. package/dist/spec/parser.js +89 -0
  145. package/dist/spec/parser.js.map +1 -0
  146. package/dist/spec/validator.d.ts +9 -0
  147. package/dist/spec/validator.d.ts.map +1 -0
  148. package/dist/spec/validator.js +105 -0
  149. package/dist/spec/validator.js.map +1 -0
  150. package/dist/types/agent.d.ts +56 -0
  151. package/dist/types/agent.d.ts.map +1 -0
  152. package/dist/types/agent.js +8 -0
  153. package/dist/types/agent.js.map +1 -0
  154. package/dist/types/event.d.ts +34 -0
  155. package/dist/types/event.d.ts.map +1 -0
  156. package/dist/types/event.js +11 -0
  157. package/dist/types/event.js.map +1 -0
  158. package/dist/types/governance.d.ts +48 -0
  159. package/dist/types/governance.d.ts.map +1 -0
  160. package/dist/types/governance.js +9 -0
  161. package/dist/types/governance.js.map +1 -0
  162. package/dist/types/index.d.ts +9 -0
  163. package/dist/types/index.d.ts.map +1 -0
  164. package/dist/types/index.js +9 -0
  165. package/dist/types/index.js.map +1 -0
  166. package/dist/types/memory.d.ts +73 -0
  167. package/dist/types/memory.d.ts.map +1 -0
  168. package/dist/types/memory.js +9 -0
  169. package/dist/types/memory.js.map +1 -0
  170. package/dist/types/protocol.d.ts +48 -0
  171. package/dist/types/protocol.d.ts.map +1 -0
  172. package/dist/types/protocol.js +9 -0
  173. package/dist/types/protocol.js.map +1 -0
  174. package/dist/types/relationship.d.ts +40 -0
  175. package/dist/types/relationship.d.ts.map +1 -0
  176. package/dist/types/relationship.js +9 -0
  177. package/dist/types/relationship.js.map +1 -0
  178. package/dist/types/resource.d.ts +52 -0
  179. package/dist/types/resource.d.ts.map +1 -0
  180. package/dist/types/resource.js +9 -0
  181. package/dist/types/resource.js.map +1 -0
  182. package/dist/types/universe.d.ts +71 -0
  183. package/dist/types/universe.d.ts.map +1 -0
  184. package/dist/types/universe.js +9 -0
  185. package/dist/types/universe.js.map +1 -0
  186. package/package.json +68 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/dashboard/templates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { PerformanceTracker } from './performance-tracker.js';
2
+ export { PromotionEngine, type PromotionDecision } from './promotion-engine.js';
3
+ export { MemoryConsolidator } from './memory-consolidator.js';
4
+ export { RelationshipEvolver, type RelationshipChange } from './relationship-evolver.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evolution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { PerformanceTracker } from './performance-tracker.js';
2
+ export { PromotionEngine } from './promotion-engine.js';
3
+ export { MemoryConsolidator } from './memory-consolidator.js';
4
+ export { RelationshipEvolver } from './relationship-evolver.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evolution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAA0B,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAA2B,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Memory Consolidator — manages organizational learning.
3
+ *
4
+ * Organizations learn from experience. This module consolidates
5
+ * individual agent experiences into organization-level lessons.
6
+ */
7
+ import type { Lesson, OrganizationMemory } from '../types/index.js';
8
+ export declare class MemoryConsolidator {
9
+ private lessons;
10
+ private maxLessons;
11
+ constructor(maxLessons?: number);
12
+ /** Record a new lesson */
13
+ addLesson(content: string, context: string, agents: string[]): Lesson;
14
+ /** Find a lesson similar to the given content */
15
+ findSimilar(content: string): Lesson | undefined;
16
+ /** Get all lessons sorted by reinforcement count */
17
+ getLessons(): Lesson[];
18
+ /** Get lessons involving a specific agent */
19
+ getLessonsByAgent(agentId: string): Lesson[];
20
+ /** Get the top N most reinforced lessons */
21
+ getTopLessons(n: number): Lesson[];
22
+ /** Export full memory state */
23
+ exportMemory(): Pick<OrganizationMemory, 'lessons'>;
24
+ /** Import lessons from a previous session */
25
+ importLessons(lessons: Lesson[]): void;
26
+ private evictWeakest;
27
+ }
28
+ //# sourceMappingURL=memory-consolidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-consolidator.d.ts","sourceRoot":"","sources":["../../src/evolution/memory-consolidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAKpE,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,UAAU,CAAS;gBAEf,UAAU,SAAM;IAK5B,0BAA0B;IAC1B,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM;IA2BrE,iDAAiD;IACjD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAUhD,oDAAoD;IACpD,UAAU,IAAI,MAAM,EAAE;IAItB,6CAA6C;IAC7C,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAI5C,4CAA4C;IAC5C,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAIlC,+BAA+B;IAC/B,YAAY,IAAI,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC;IAMnD,6CAA6C;IAC7C,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAMtC,OAAO,CAAC,YAAY;CAWrB"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Memory Consolidator — manages organizational learning.
3
+ *
4
+ * Organizations learn from experience. This module consolidates
5
+ * individual agent experiences into organization-level lessons.
6
+ */
7
+ let lessonCounter = 0;
8
+ export class MemoryConsolidator {
9
+ lessons;
10
+ maxLessons;
11
+ constructor(maxLessons = 100) {
12
+ this.lessons = new Map();
13
+ this.maxLessons = maxLessons;
14
+ }
15
+ /** Record a new lesson */
16
+ addLesson(content, context, agents) {
17
+ // Check for similar existing lessons
18
+ const existing = this.findSimilar(content);
19
+ if (existing) {
20
+ existing.reinforcements++;
21
+ return existing;
22
+ }
23
+ const lesson = {
24
+ id: `lesson-${++lessonCounter}`,
25
+ content,
26
+ context,
27
+ agents,
28
+ learnedAt: new Date().toISOString(),
29
+ reinforcements: 1,
30
+ };
31
+ this.lessons.set(lesson.id, lesson);
32
+ // Evict least reinforced if over limit
33
+ if (this.lessons.size > this.maxLessons) {
34
+ this.evictWeakest();
35
+ }
36
+ return lesson;
37
+ }
38
+ /** Find a lesson similar to the given content */
39
+ findSimilar(content) {
40
+ const normalized = content.toLowerCase().trim();
41
+ for (const lesson of this.lessons.values()) {
42
+ if (lesson.content.toLowerCase().trim() === normalized) {
43
+ return lesson;
44
+ }
45
+ }
46
+ return undefined;
47
+ }
48
+ /** Get all lessons sorted by reinforcement count */
49
+ getLessons() {
50
+ return [...this.lessons.values()].sort((a, b) => b.reinforcements - a.reinforcements);
51
+ }
52
+ /** Get lessons involving a specific agent */
53
+ getLessonsByAgent(agentId) {
54
+ return this.getLessons().filter(l => l.agents.includes(agentId));
55
+ }
56
+ /** Get the top N most reinforced lessons */
57
+ getTopLessons(n) {
58
+ return this.getLessons().slice(0, n);
59
+ }
60
+ /** Export full memory state */
61
+ exportMemory() {
62
+ return {
63
+ lessons: this.getLessons(),
64
+ };
65
+ }
66
+ /** Import lessons from a previous session */
67
+ importLessons(lessons) {
68
+ for (const lesson of lessons) {
69
+ this.lessons.set(lesson.id, lesson);
70
+ }
71
+ }
72
+ evictWeakest() {
73
+ let weakest;
74
+ for (const lesson of this.lessons.values()) {
75
+ if (!weakest || lesson.reinforcements < weakest.reinforcements) {
76
+ weakest = lesson;
77
+ }
78
+ }
79
+ if (weakest) {
80
+ this.lessons.delete(weakest.id);
81
+ }
82
+ }
83
+ }
84
+ //# sourceMappingURL=memory-consolidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-consolidator.js","sourceRoot":"","sources":["../../src/evolution/memory-consolidator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Performance Tracker — tracks and evaluates agent performance over time.
3
+ */
4
+ import type { PerformanceRecord, EvolutionConfig } from '../types/index.js';
5
+ export declare class PerformanceTracker {
6
+ private records;
7
+ private window;
8
+ constructor(config: EvolutionConfig);
9
+ /** Record a performance evaluation */
10
+ record(agentId: string, taskId: string, score: number, dimensions?: Record<string, number>): PerformanceRecord;
11
+ /** Get average performance score for an agent */
12
+ getAverageScore(agentId: string): number;
13
+ /** Get performance trend (positive = improving, negative = declining) */
14
+ getTrend(agentId: string): number;
15
+ /** Get dimension breakdown for an agent */
16
+ getDimensionAverages(agentId: string): Record<string, number>;
17
+ /** Get all records for an agent */
18
+ getRecords(agentId: string): PerformanceRecord[];
19
+ /** Get leaderboard sorted by average score */
20
+ getLeaderboard(): Array<{
21
+ agentId: string;
22
+ averageScore: number;
23
+ trend: number;
24
+ totalRecords: number;
25
+ }>;
26
+ /** Get record count for an agent */
27
+ getRecordCount(agentId: string): number;
28
+ }
29
+ //# sourceMappingURL=performance-tracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance-tracker.d.ts","sourceRoot":"","sources":["../../src/evolution/performance-tracker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE5E,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,eAAe;IAKnC,sCAAsC;IACtC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAAG,iBAAiB;IAqBlH,iDAAiD;IACjD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAQxC,yEAAyE;IACzE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAcjC,2CAA2C;IAC3C,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAqB7D,mCAAmC;IACnC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAIhD,8CAA8C;IAC9C,cAAc,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAevG,oCAAoC;IACpC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAGxC"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Performance Tracker — tracks and evaluates agent performance over time.
3
+ */
4
+ export class PerformanceTracker {
5
+ records;
6
+ window;
7
+ constructor(config) {
8
+ this.records = new Map();
9
+ this.window = config.performanceWindow;
10
+ }
11
+ /** Record a performance evaluation */
12
+ record(agentId, taskId, score, dimensions = {}) {
13
+ const record = {
14
+ agentId,
15
+ taskId,
16
+ score: Math.max(0, Math.min(100, score)),
17
+ dimensions,
18
+ evaluatedAt: new Date().toISOString(),
19
+ };
20
+ const existing = this.records.get(agentId) ?? [];
21
+ existing.push(record);
22
+ // Keep only the most recent records within window
23
+ if (existing.length > this.window) {
24
+ existing.splice(0, existing.length - this.window);
25
+ }
26
+ this.records.set(agentId, existing);
27
+ return record;
28
+ }
29
+ /** Get average performance score for an agent */
30
+ getAverageScore(agentId) {
31
+ const records = this.records.get(agentId);
32
+ if (!records || records.length === 0)
33
+ return 50; // Default neutral score
34
+ const sum = records.reduce((acc, r) => acc + r.score, 0);
35
+ return sum / records.length;
36
+ }
37
+ /** Get performance trend (positive = improving, negative = declining) */
38
+ getTrend(agentId) {
39
+ const records = this.records.get(agentId);
40
+ if (!records || records.length < 2)
41
+ return 0;
42
+ const half = Math.floor(records.length / 2);
43
+ const recentHalf = records.slice(half);
44
+ const earlierHalf = records.slice(0, half);
45
+ const recentAvg = recentHalf.reduce((s, r) => s + r.score, 0) / recentHalf.length;
46
+ const earlierAvg = earlierHalf.reduce((s, r) => s + r.score, 0) / earlierHalf.length;
47
+ return recentAvg - earlierAvg;
48
+ }
49
+ /** Get dimension breakdown for an agent */
50
+ getDimensionAverages(agentId) {
51
+ const records = this.records.get(agentId);
52
+ if (!records || records.length === 0)
53
+ return {};
54
+ const sums = {};
55
+ const counts = {};
56
+ for (const record of records) {
57
+ for (const [dim, val] of Object.entries(record.dimensions)) {
58
+ sums[dim] = (sums[dim] ?? 0) + val;
59
+ counts[dim] = (counts[dim] ?? 0) + 1;
60
+ }
61
+ }
62
+ const averages = {};
63
+ for (const dim of Object.keys(sums)) {
64
+ averages[dim] = sums[dim] / counts[dim];
65
+ }
66
+ return averages;
67
+ }
68
+ /** Get all records for an agent */
69
+ getRecords(agentId) {
70
+ return this.records.get(agentId) ?? [];
71
+ }
72
+ /** Get leaderboard sorted by average score */
73
+ getLeaderboard() {
74
+ const entries = [];
75
+ for (const agentId of this.records.keys()) {
76
+ entries.push({
77
+ agentId,
78
+ averageScore: this.getAverageScore(agentId),
79
+ trend: this.getTrend(agentId),
80
+ totalRecords: this.getRecords(agentId).length,
81
+ });
82
+ }
83
+ return entries.sort((a, b) => b.averageScore - a.averageScore);
84
+ }
85
+ /** Get record count for an agent */
86
+ getRecordCount(agentId) {
87
+ return (this.records.get(agentId) ?? []).length;
88
+ }
89
+ }
90
+ //# sourceMappingURL=performance-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance-tracker.js","sourceRoot":"","sources":["../../src/evolution/performance-tracker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Promotion Engine — manages agent rank changes based on performance.
3
+ *
4
+ * Promotion/demotion rules are the evolutionary pressure that
5
+ * shapes agent behavior over time.
6
+ */
7
+ import type { EvolutionConfig } from '../types/index.js';
8
+ import type { PerformanceTracker } from './performance-tracker.js';
9
+ import type { AgentRegistry } from '../core/agent-registry.js';
10
+ import type { EventBus } from '../core/event-bus.js';
11
+ export interface PromotionDecision {
12
+ agentId: string;
13
+ action: 'promote' | 'demote' | 'suspend' | 'none';
14
+ currentRank: number;
15
+ newRank?: number;
16
+ reason: string;
17
+ score: number;
18
+ }
19
+ export declare class PromotionEngine {
20
+ private config;
21
+ private tracker;
22
+ private registry;
23
+ private events;
24
+ constructor(config: EvolutionConfig, tracker: PerformanceTracker, registry: AgentRegistry, events: EventBus);
25
+ /** Evaluate all agents and produce promotion/demotion decisions */
26
+ evaluate(): PromotionDecision[];
27
+ /** Apply promotion decisions */
28
+ apply(decisions: PromotionDecision[]): Promise<void>;
29
+ /** Run a full evaluation cycle */
30
+ runCycle(): Promise<PromotionDecision[]>;
31
+ }
32
+ //# sourceMappingURL=promotion-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promotion-engine.d.ts","sourceRoot":"","sources":["../../src/evolution/promotion-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,eAAe;IAExB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;gBAHN,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,QAAQ;IAG1B,mEAAmE;IACnE,QAAQ,IAAI,iBAAiB,EAAE;IAoE/B,gCAAgC;IAC1B,KAAK,CAAC,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAyC1D,kCAAkC;IAC5B,QAAQ,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;CAa/C"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Promotion Engine — manages agent rank changes based on performance.
3
+ *
4
+ * Promotion/demotion rules are the evolutionary pressure that
5
+ * shapes agent behavior over time.
6
+ */
7
+ export class PromotionEngine {
8
+ config;
9
+ tracker;
10
+ registry;
11
+ events;
12
+ constructor(config, tracker, registry, events) {
13
+ this.config = config;
14
+ this.tracker = tracker;
15
+ this.registry = registry;
16
+ this.events = events;
17
+ }
18
+ /** Evaluate all agents and produce promotion/demotion decisions */
19
+ evaluate() {
20
+ const decisions = [];
21
+ for (const citizen of this.registry.getAll()) {
22
+ if (citizen.status === 'eliminated')
23
+ continue;
24
+ const agentId = citizen.definition.id;
25
+ const score = this.tracker.getAverageScore(agentId);
26
+ const trend = this.tracker.getTrend(agentId);
27
+ const recordCount = this.tracker.getRecordCount(agentId);
28
+ const currentRank = citizen.definition.rank ?? 0;
29
+ // Need minimum records before evaluation
30
+ if (recordCount < 3) {
31
+ decisions.push({
32
+ agentId,
33
+ action: 'none',
34
+ currentRank,
35
+ reason: `Insufficient data (${recordCount}/${3} evaluations)`,
36
+ score,
37
+ });
38
+ continue;
39
+ }
40
+ if (score >= this.config.promotionThreshold && trend >= 0) {
41
+ const newRank = Math.min(100, currentRank + 10);
42
+ decisions.push({
43
+ agentId,
44
+ action: 'promote',
45
+ currentRank,
46
+ newRank,
47
+ reason: `Score ${score.toFixed(1)} ≥ ${this.config.promotionThreshold} with positive trend`,
48
+ score,
49
+ });
50
+ }
51
+ else if (score <= this.config.demotionThreshold) {
52
+ if (currentRank <= 10) {
53
+ decisions.push({
54
+ agentId,
55
+ action: 'suspend',
56
+ currentRank,
57
+ reason: `Score ${score.toFixed(1)} ≤ ${this.config.demotionThreshold} at minimum rank`,
58
+ score,
59
+ });
60
+ }
61
+ else {
62
+ const newRank = Math.max(0, currentRank - 10);
63
+ decisions.push({
64
+ agentId,
65
+ action: 'demote',
66
+ currentRank,
67
+ newRank,
68
+ reason: `Score ${score.toFixed(1)} ≤ ${this.config.demotionThreshold}`,
69
+ score,
70
+ });
71
+ }
72
+ }
73
+ else {
74
+ decisions.push({
75
+ agentId,
76
+ action: 'none',
77
+ currentRank,
78
+ reason: `Score ${score.toFixed(1)} within normal range`,
79
+ score,
80
+ });
81
+ }
82
+ }
83
+ return decisions;
84
+ }
85
+ /** Apply promotion decisions */
86
+ async apply(decisions) {
87
+ for (const decision of decisions) {
88
+ if (decision.action === 'none')
89
+ continue;
90
+ const citizen = this.registry.get(decision.agentId);
91
+ if (!citizen)
92
+ continue;
93
+ switch (decision.action) {
94
+ case 'promote':
95
+ citizen.definition.rank = decision.newRank;
96
+ await this.events.emitSimple('agent.promoted', [decision.agentId], `${citizen.definition.name} promoted to rank ${decision.newRank}: ${decision.reason}`, { previousRank: decision.currentRank, newRank: decision.newRank, score: decision.score });
97
+ break;
98
+ case 'demote':
99
+ citizen.definition.rank = decision.newRank;
100
+ await this.events.emitSimple('agent.demoted', [decision.agentId], `${citizen.definition.name} demoted to rank ${decision.newRank}: ${decision.reason}`, { previousRank: decision.currentRank, newRank: decision.newRank, score: decision.score });
101
+ break;
102
+ case 'suspend':
103
+ this.registry.setStatus(decision.agentId, 'suspended');
104
+ await this.events.emitSimple('agent.suspended', [decision.agentId], `${citizen.definition.name} suspended: ${decision.reason}`, { rank: decision.currentRank, score: decision.score });
105
+ break;
106
+ }
107
+ }
108
+ }
109
+ /** Run a full evaluation cycle */
110
+ async runCycle() {
111
+ const decisions = this.evaluate();
112
+ await this.apply(decisions);
113
+ await this.events.emitSimple('evolution.cycleCompleted', [], `Evolution cycle completed: ${decisions.filter(d => d.action !== 'none').length} changes`, { decisions: decisions.map(d => ({ agent: d.agentId, action: d.action })) });
114
+ return decisions;
115
+ }
116
+ }
117
+ //# sourceMappingURL=promotion-engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promotion-engine.js","sourceRoot":"","sources":["../../src/evolution/promotion-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Relationship Evolver — manages how agent relationships change over time.
3
+ *
4
+ * Relationships are not static. Success together strengthens alliances;
5
+ * competition for the same resources creates rivalry.
6
+ */
7
+ import type { RelationshipType } from '../types/index.js';
8
+ import type { RelationshipGraph } from '../core/relationship-graph.js';
9
+ import type { EventBus } from '../core/event-bus.js';
10
+ export interface RelationshipChange {
11
+ from: string;
12
+ to: string;
13
+ type: RelationshipType;
14
+ previousWeight: number;
15
+ newWeight: number;
16
+ reason: string;
17
+ }
18
+ export declare class RelationshipEvolver {
19
+ private graph;
20
+ private events;
21
+ constructor(graph: RelationshipGraph, events: EventBus);
22
+ /** Strengthen a relationship (e.g., after successful collaboration) */
23
+ strengthen(from: string, to: string, type: RelationshipType, amount: number, reason: string): Promise<RelationshipChange | null>;
24
+ /** Weaken a relationship (e.g., after conflict or betrayal) */
25
+ weaken(from: string, to: string, type: RelationshipType, amount: number, reason: string): Promise<RelationshipChange | null>;
26
+ /** Create a new rivalry between two agents */
27
+ createRivalry(from: string, to: string, reason: string): Promise<void>;
28
+ /** Resolve a rivalry (remove it) */
29
+ resolveRivalry(from: string, to: string, reason: string): Promise<void>;
30
+ /**
31
+ * Auto-evolve relationships based on competition results.
32
+ * When two agents compete: winner strengthens, loser weakens competitive ties.
33
+ */
34
+ evolveFromCompetition(winnerId: string, loserId: string, margin: number): Promise<RelationshipChange[]>;
35
+ /**
36
+ * Auto-evolve relationships based on collaboration results.
37
+ */
38
+ evolveFromCollaboration(agentIds: string[], success: boolean): Promise<RelationshipChange[]>;
39
+ }
40
+ //# sourceMappingURL=relationship-evolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-evolver.d.ts","sourceRoot":"","sources":["../../src/evolution/relationship-evolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,mBAAmB;IAE5B,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;gBADN,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,QAAQ;IAG1B,uEAAuE;IACjE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IA0BtI,+DAA+D;IACzD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IA0BlI,8CAA8C;IACxC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB5E,oCAAoC;IAC9B,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7E;;;OAGG;IACG,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAmB7G;;OAEG;IACG,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAiBnG"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Relationship Evolver — manages how agent relationships change over time.
3
+ *
4
+ * Relationships are not static. Success together strengthens alliances;
5
+ * competition for the same resources creates rivalry.
6
+ */
7
+ export class RelationshipEvolver {
8
+ graph;
9
+ events;
10
+ constructor(graph, events) {
11
+ this.graph = graph;
12
+ this.events = events;
13
+ }
14
+ /** Strengthen a relationship (e.g., after successful collaboration) */
15
+ async strengthen(from, to, type, amount, reason) {
16
+ const rels = this.graph.getOutgoing(from).filter(r => r.to === to && r.type === type);
17
+ if (rels.length === 0)
18
+ return null;
19
+ const rel = rels[0];
20
+ const previousWeight = rel.currentWeight;
21
+ const newWeight = Math.min(1, previousWeight + amount);
22
+ this.graph.updateWeight(from, to, type, newWeight, reason);
23
+ const change = {
24
+ from, to, type, previousWeight, newWeight, reason,
25
+ };
26
+ if (type === 'ally' && newWeight >= 0.8 && previousWeight < 0.8) {
27
+ await this.events.emitSimple('alliance.formed', [from, to], `Strong alliance formed between ${from} and ${to}: ${reason}`, { weight: newWeight });
28
+ }
29
+ return change;
30
+ }
31
+ /** Weaken a relationship (e.g., after conflict or betrayal) */
32
+ async weaken(from, to, type, amount, reason) {
33
+ const rels = this.graph.getOutgoing(from).filter(r => r.to === to && r.type === type);
34
+ if (rels.length === 0)
35
+ return null;
36
+ const rel = rels[0];
37
+ const previousWeight = rel.currentWeight;
38
+ const newWeight = Math.max(0, previousWeight - amount);
39
+ this.graph.updateWeight(from, to, type, newWeight, reason);
40
+ const change = {
41
+ from, to, type, previousWeight, newWeight, reason,
42
+ };
43
+ if (type === 'ally' && newWeight < 0.2 && previousWeight >= 0.2) {
44
+ await this.events.emitSimple('alliance.broken', [from, to], `Alliance broken between ${from} and ${to}: ${reason}`, { weight: newWeight });
45
+ }
46
+ return change;
47
+ }
48
+ /** Create a new rivalry between two agents */
49
+ async createRivalry(from, to, reason) {
50
+ this.graph.addRelationship({
51
+ from, to,
52
+ type: 'rival',
53
+ weight: 0.5,
54
+ mutable: true,
55
+ });
56
+ await this.events.emitSimple('rivalry.started', [from, to], `Rivalry started between ${from} and ${to}: ${reason}`, {});
57
+ }
58
+ /** Resolve a rivalry (remove it) */
59
+ async resolveRivalry(from, to, reason) {
60
+ this.graph.updateWeight(from, to, 'rival', 0, reason);
61
+ await this.events.emitSimple('rivalry.resolved', [from, to], `Rivalry resolved between ${from} and ${to}: ${reason}`, {});
62
+ }
63
+ /**
64
+ * Auto-evolve relationships based on competition results.
65
+ * When two agents compete: winner strengthens, loser weakens competitive ties.
66
+ */
67
+ async evolveFromCompetition(winnerId, loserId, margin) {
68
+ const changes = [];
69
+ // Strengthen competitive relationship
70
+ const c1 = await this.strengthen(winnerId, loserId, 'competitive', margin * 0.1, 'competition_win');
71
+ if (c1)
72
+ changes.push(c1);
73
+ // If margin is large, create rivalry
74
+ if (margin > 30) {
75
+ const existingRivalry = this.graph.getOutgoing(winnerId)
76
+ .find(r => r.to === loserId && r.type === 'rival');
77
+ if (!existingRivalry) {
78
+ await this.createRivalry(winnerId, loserId, 'decisive_victory');
79
+ }
80
+ }
81
+ return changes;
82
+ }
83
+ /**
84
+ * Auto-evolve relationships based on collaboration results.
85
+ */
86
+ async evolveFromCollaboration(agentIds, success) {
87
+ const changes = [];
88
+ for (let i = 0; i < agentIds.length; i++) {
89
+ for (let j = i + 1; j < agentIds.length; j++) {
90
+ if (success) {
91
+ const c = await this.strengthen(agentIds[i], agentIds[j], 'ally', 0.1, 'successful_collaboration');
92
+ if (c)
93
+ changes.push(c);
94
+ }
95
+ else {
96
+ const c = await this.weaken(agentIds[i], agentIds[j], 'ally', 0.05, 'failed_collaboration');
97
+ if (c)
98
+ changes.push(c);
99
+ }
100
+ }
101
+ }
102
+ return changes;
103
+ }
104
+ }
105
+ //# sourceMappingURL=relationship-evolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-evolver.js","sourceRoot":"","sources":["../../src/evolution/relationship-evolver.ts"],"names":[],"mappings":"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"}