@holoscript/framework 6.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/ALL-test-results.json +1 -0
  2. package/CHANGELOG.md +8 -0
  3. package/LICENSE +21 -0
  4. package/ROADMAP.md +175 -0
  5. package/dist/AgentManifest-CB4xM-Ma.d.cts +704 -0
  6. package/dist/AgentManifest-CB4xM-Ma.d.ts +704 -0
  7. package/dist/BehaviorTree-BrBFECv5.d.cts +103 -0
  8. package/dist/BehaviorTree-BrBFECv5.d.ts +103 -0
  9. package/dist/InvisibleWallet-BB6tFvRA.d.cts +1732 -0
  10. package/dist/InvisibleWallet-rtRrBOA8.d.ts +1732 -0
  11. package/dist/OrchestratorAgent-BvWgf9uw.d.cts +798 -0
  12. package/dist/OrchestratorAgent-Q_CbVTmO.d.ts +798 -0
  13. package/dist/agents/index.cjs +4790 -0
  14. package/dist/agents/index.d.cts +1788 -0
  15. package/dist/agents/index.d.ts +1788 -0
  16. package/dist/agents/index.js +4695 -0
  17. package/dist/ai/index.cjs +5347 -0
  18. package/dist/ai/index.d.cts +1753 -0
  19. package/dist/ai/index.d.ts +1753 -0
  20. package/dist/ai/index.js +5244 -0
  21. package/dist/behavior.cjs +449 -0
  22. package/dist/behavior.d.cts +130 -0
  23. package/dist/behavior.d.ts +130 -0
  24. package/dist/behavior.js +407 -0
  25. package/dist/economy/index.cjs +3659 -0
  26. package/dist/economy/index.d.cts +747 -0
  27. package/dist/economy/index.d.ts +747 -0
  28. package/dist/economy/index.js +3617 -0
  29. package/dist/implementations-D9T3un9D.d.cts +236 -0
  30. package/dist/implementations-D9T3un9D.d.ts +236 -0
  31. package/dist/index.cjs +24550 -0
  32. package/dist/index.d.cts +1729 -0
  33. package/dist/index.d.ts +1729 -0
  34. package/dist/index.js +24277 -0
  35. package/dist/learning/index.cjs +219 -0
  36. package/dist/learning/index.d.cts +104 -0
  37. package/dist/learning/index.d.ts +104 -0
  38. package/dist/learning/index.js +189 -0
  39. package/dist/negotiation/index.cjs +970 -0
  40. package/dist/negotiation/index.d.cts +610 -0
  41. package/dist/negotiation/index.d.ts +610 -0
  42. package/dist/negotiation/index.js +931 -0
  43. package/dist/skills/index.cjs +1118 -0
  44. package/dist/skills/index.d.cts +289 -0
  45. package/dist/skills/index.d.ts +289 -0
  46. package/dist/skills/index.js +1079 -0
  47. package/dist/swarm/index.cjs +5268 -0
  48. package/dist/swarm/index.d.cts +2433 -0
  49. package/dist/swarm/index.d.ts +2433 -0
  50. package/dist/swarm/index.js +5221 -0
  51. package/dist/training/index.cjs +2745 -0
  52. package/dist/training/index.d.cts +1734 -0
  53. package/dist/training/index.d.ts +1734 -0
  54. package/dist/training/index.js +2687 -0
  55. package/extract-failures.js +10 -0
  56. package/package.json +82 -0
  57. package/src/__tests__/bounty-marketplace.test.ts +374 -0
  58. package/src/__tests__/delegation.test.ts +144 -0
  59. package/src/__tests__/distributed-claimer.test.ts +147 -0
  60. package/src/__tests__/done-log-audit.test.ts +342 -0
  61. package/src/__tests__/framework.test.ts +865 -0
  62. package/src/__tests__/goal-synthesizer.test.ts +236 -0
  63. package/src/__tests__/presence.test.ts +223 -0
  64. package/src/__tests__/protocol-agent.test.ts +254 -0
  65. package/src/__tests__/revenue-splitter.test.ts +114 -0
  66. package/src/__tests__/scenario-driven-todo.test.ts +197 -0
  67. package/src/__tests__/self-improve.test.ts +349 -0
  68. package/src/__tests__/service-lifecycle.test.ts +237 -0
  69. package/src/__tests__/skill-router.test.ts +121 -0
  70. package/src/agents/AgentManifest.ts +493 -0
  71. package/src/agents/AgentRegistry.ts +475 -0
  72. package/src/agents/AgentTypes.ts +585 -0
  73. package/src/agents/AgentWalletRegistry.ts +83 -0
  74. package/src/agents/AuthenticatedCRDT.ts +388 -0
  75. package/src/agents/CapabilityMatcher.ts +453 -0
  76. package/src/agents/CrossRealityHandoff.ts +305 -0
  77. package/src/agents/CulturalMemory.ts +454 -0
  78. package/src/agents/FederatedRegistryAdapter.ts +429 -0
  79. package/src/agents/NormEngine.ts +450 -0
  80. package/src/agents/OrchestratorAgent.ts +414 -0
  81. package/src/agents/SkillWorkflowEngine.ts +472 -0
  82. package/src/agents/TaskDelegationService.ts +551 -0
  83. package/src/agents/__tests__/AgentManifest.prod.test.ts +134 -0
  84. package/src/agents/__tests__/AgentManifest.test.ts +182 -0
  85. package/src/agents/__tests__/AgentModule.test.ts +864 -0
  86. package/src/agents/__tests__/AgentRegistry.prod.test.ts +125 -0
  87. package/src/agents/__tests__/AgentRegistry.test.ts +148 -0
  88. package/src/agents/__tests__/AgentTypes.test.ts +534 -0
  89. package/src/agents/__tests__/AgentWalletRegistry.test.ts +152 -0
  90. package/src/agents/__tests__/AuthenticatedCRDT.test.ts +558 -0
  91. package/src/agents/__tests__/CapabilityMatcher.prod.test.ts +117 -0
  92. package/src/agents/__tests__/CapabilityMatcher.test.ts +178 -0
  93. package/src/agents/__tests__/CrossRealityHandoff.test.ts +402 -0
  94. package/src/agents/__tests__/CulturalMemory.test.ts +200 -0
  95. package/src/agents/__tests__/FederatedRegistryAdapter.test.ts +409 -0
  96. package/src/agents/__tests__/NormEngine.test.ts +276 -0
  97. package/src/agents/__tests__/OrchestratorAgent.test.ts +182 -0
  98. package/src/agents/__tests__/SkillWorkflowEngine.test.ts +357 -0
  99. package/src/agents/__tests__/TaskDelegationService.test.ts +446 -0
  100. package/src/agents/index.ts +107 -0
  101. package/src/agents/spatial-comms/Layer1RealTime.ts +621 -0
  102. package/src/agents/spatial-comms/Layer2A2A.ts +661 -0
  103. package/src/agents/spatial-comms/Layer3MCP.ts +651 -0
  104. package/src/agents/spatial-comms/ProtocolTypes.ts +543 -0
  105. package/src/agents/spatial-comms/SpatialCommClient.ts +483 -0
  106. package/src/agents/spatial-comms/__tests__/performance-benchmark.test.ts +465 -0
  107. package/src/agents/spatial-comms/examples/multi-agent-world-creation.ts +409 -0
  108. package/src/agents/spatial-comms/index.ts +66 -0
  109. package/src/ai/AIAdapter.ts +313 -0
  110. package/src/ai/AICopilot.ts +331 -0
  111. package/src/ai/AIOutputValidator.ts +203 -0
  112. package/src/ai/BTNodes.ts +239 -0
  113. package/src/ai/BehaviorSelector.ts +135 -0
  114. package/src/ai/BehaviorTree.ts +153 -0
  115. package/src/ai/Blackboard.ts +165 -0
  116. package/src/ai/GenerationAnalytics.ts +461 -0
  117. package/src/ai/GenerationCache.ts +265 -0
  118. package/src/ai/GoalPlanner.ts +165 -0
  119. package/src/ai/HoloScriptGenerator.ts +580 -0
  120. package/src/ai/InfluenceMap.ts +180 -0
  121. package/src/ai/NavMesh.ts +168 -0
  122. package/src/ai/PerceptionSystem.ts +178 -0
  123. package/src/ai/PromptTemplates.ts +453 -0
  124. package/src/ai/SemanticSearchService.ts +80 -0
  125. package/src/ai/StateMachine.ts +196 -0
  126. package/src/ai/SteeringBehavior.ts +150 -0
  127. package/src/ai/SteeringBehaviors.ts +244 -0
  128. package/src/ai/TrainingDataGenerator.ts +1082 -0
  129. package/src/ai/UtilityAI.ts +145 -0
  130. package/src/ai/__tests__/AIAdapter.prod.test.ts +259 -0
  131. package/src/ai/__tests__/AIAdapter.test.ts +109 -0
  132. package/src/ai/__tests__/AICopilot.prod.test.ts +341 -0
  133. package/src/ai/__tests__/AICopilot.test.ts +178 -0
  134. package/src/ai/__tests__/AIOutputValidator.prod.test.ts +226 -0
  135. package/src/ai/__tests__/AIOutputValidator.test.ts +138 -0
  136. package/src/ai/__tests__/BTNodes.prod.test.ts +391 -0
  137. package/src/ai/__tests__/BTNodes.test.ts +263 -0
  138. package/src/ai/__tests__/BehaviorSelector.prod.test.ts +129 -0
  139. package/src/ai/__tests__/BehaviorSelector.test.ts +132 -0
  140. package/src/ai/__tests__/BehaviorTree.prod.test.ts +266 -0
  141. package/src/ai/__tests__/BehaviorTree.test.ts +216 -0
  142. package/src/ai/__tests__/Blackboard.prod.test.ts +339 -0
  143. package/src/ai/__tests__/Blackboard.test.ts +183 -0
  144. package/src/ai/__tests__/GenerationAnalytics.prod.test.ts +141 -0
  145. package/src/ai/__tests__/GenerationAnalytics.test.ts +165 -0
  146. package/src/ai/__tests__/GenerationCache.prod.test.ts +144 -0
  147. package/src/ai/__tests__/GenerationCache.test.ts +171 -0
  148. package/src/ai/__tests__/GoalPlanner.prod.test.ts +189 -0
  149. package/src/ai/__tests__/GoalPlanner.test.ts +137 -0
  150. package/src/ai/__tests__/GoalPlannerDepth.prod.test.ts +217 -0
  151. package/src/ai/__tests__/HoloScriptGenerator.test.ts +125 -0
  152. package/src/ai/__tests__/InfluenceMap.prod.test.ts +146 -0
  153. package/src/ai/__tests__/InfluenceMap.test.ts +149 -0
  154. package/src/ai/__tests__/NavMesh.prod.test.ts +141 -0
  155. package/src/ai/__tests__/NavMesh.test.ts +159 -0
  156. package/src/ai/__tests__/PerceptionSystem.prod.test.ts +135 -0
  157. package/src/ai/__tests__/PerceptionSystem.test.ts +250 -0
  158. package/src/ai/__tests__/PromptTemplates.prod.test.ts +313 -0
  159. package/src/ai/__tests__/PromptTemplates.test.ts +146 -0
  160. package/src/ai/__tests__/SemanticSearch.test.ts +37 -0
  161. package/src/ai/__tests__/StateMachine.prod.test.ts +162 -0
  162. package/src/ai/__tests__/StateMachine.test.ts +163 -0
  163. package/src/ai/__tests__/SteeringBehavior.prod.test.ts +251 -0
  164. package/src/ai/__tests__/SteeringBehavior.test.ts +135 -0
  165. package/src/ai/__tests__/SteeringBehaviors.prod.test.ts +133 -0
  166. package/src/ai/__tests__/SteeringBehaviors.test.ts +151 -0
  167. package/src/ai/__tests__/TrainingDataGenerator.prod.test.ts +286 -0
  168. package/src/ai/__tests__/TrainingDataGenerator.test.ts +286 -0
  169. package/src/ai/__tests__/UtilityAI.prod.test.ts +207 -0
  170. package/src/ai/__tests__/UtilityAI.test.ts +155 -0
  171. package/src/ai/__tests__/adapters.prod.test.ts +263 -0
  172. package/src/ai/__tests__/adapters.test.ts +320 -0
  173. package/src/ai/adapters.ts +1585 -0
  174. package/src/ai/index.ts +130 -0
  175. package/src/behavior/BehaviorPresets.ts +140 -0
  176. package/src/behavior/BehaviorTree.ts +236 -0
  177. package/src/behavior/StateMachine.ts +176 -0
  178. package/src/behavior/StateTrait.ts +67 -0
  179. package/src/behavior/index.ts +8 -0
  180. package/src/behavior.ts +8 -0
  181. package/src/board/audit.ts +284 -0
  182. package/src/board/board-ops.ts +336 -0
  183. package/src/board/board-types.ts +302 -0
  184. package/src/board/index.ts +69 -0
  185. package/src/define-agent.ts +46 -0
  186. package/src/define-team.ts +33 -0
  187. package/src/delegation.ts +265 -0
  188. package/src/distributed-claimer.ts +228 -0
  189. package/src/economy/AgentBudgetEnforcer.ts +464 -0
  190. package/src/economy/BountyManager.ts +185 -0
  191. package/src/economy/CreatorRevenueAggregator.ts +460 -0
  192. package/src/economy/InvisibleWallet.ts +82 -0
  193. package/src/economy/KnowledgeMarketplace.ts +193 -0
  194. package/src/economy/PaymentWebhookService.ts +512 -0
  195. package/src/economy/RevenueSplitter.ts +156 -0
  196. package/src/economy/SubscriptionManager.ts +546 -0
  197. package/src/economy/UnifiedBudgetOptimizer.ts +635 -0
  198. package/src/economy/UsageMeter.ts +440 -0
  199. package/src/economy/_core-stubs.ts +219 -0
  200. package/src/economy/index.ts +100 -0
  201. package/src/economy/x402-facilitator.ts +1978 -0
  202. package/src/index.ts +348 -0
  203. package/src/knowledge/__tests__/knowledge-consolidator.test.ts +444 -0
  204. package/src/knowledge/__tests__/knowledge-store-vector.test.ts +291 -0
  205. package/src/knowledge/brain.ts +167 -0
  206. package/src/knowledge/consolidation.ts +581 -0
  207. package/src/knowledge/knowledge-consolidator.ts +510 -0
  208. package/src/knowledge/knowledge-store.ts +616 -0
  209. package/src/learning/MemoryConsolidator.ts +102 -0
  210. package/src/learning/MemoryScorer.ts +69 -0
  211. package/src/learning/ProceduralCompiler.ts +45 -0
  212. package/src/learning/SemanticClusterer.ts +66 -0
  213. package/src/learning/index.ts +8 -0
  214. package/src/llm/llm-adapter.ts +159 -0
  215. package/src/mesh/index.ts +309 -0
  216. package/src/negotiation/NegotiationProtocol.ts +694 -0
  217. package/src/negotiation/NegotiationTypes.ts +473 -0
  218. package/src/negotiation/VotingMechanisms.ts +691 -0
  219. package/src/negotiation/index.ts +49 -0
  220. package/src/protocol/goal-synthesizer.ts +317 -0
  221. package/src/protocol/implementations.ts +474 -0
  222. package/src/protocol/micro-phase-decomposer.ts +299 -0
  223. package/src/protocol/micro-step-decomposer.test.ts +306 -0
  224. package/src/protocol-agent.test.ts +353 -0
  225. package/src/protocol-agent.ts +670 -0
  226. package/src/self-improve/absorb-scanner.ts +252 -0
  227. package/src/self-improve/evolution-engine.ts +149 -0
  228. package/src/self-improve/framework-absorber.ts +214 -0
  229. package/src/self-improve/index.ts +50 -0
  230. package/src/self-improve/prompt-optimizer.ts +212 -0
  231. package/src/self-improve/test-generator.ts +175 -0
  232. package/src/skill-router.ts +186 -0
  233. package/src/skills/index.ts +5 -0
  234. package/src/skills/skill-md-bridge.ts +1699 -0
  235. package/src/swarm/ACOEngine.ts +261 -0
  236. package/src/swarm/CollectiveIntelligence.ts +383 -0
  237. package/src/swarm/ContributionSynthesizer.ts +481 -0
  238. package/src/swarm/LeaderElection.ts +393 -0
  239. package/src/swarm/PSOEngine.ts +206 -0
  240. package/src/swarm/QuorumPolicy.ts +173 -0
  241. package/src/swarm/SwarmCoordinator.ts +335 -0
  242. package/src/swarm/SwarmManager.ts +442 -0
  243. package/src/swarm/SwarmMembership.ts +456 -0
  244. package/src/swarm/VotingRound.ts +255 -0
  245. package/src/swarm/__tests__/ACOEngine.prod.test.ts +164 -0
  246. package/src/swarm/__tests__/ACOEngine.test.ts +117 -0
  247. package/src/swarm/__tests__/CollectiveIntelligence.prod.test.ts +296 -0
  248. package/src/swarm/__tests__/CollectiveIntelligence.test.ts +457 -0
  249. package/src/swarm/__tests__/ContributionSynthesizer.prod.test.ts +269 -0
  250. package/src/swarm/__tests__/ContributionSynthesizer.test.ts +254 -0
  251. package/src/swarm/__tests__/LeaderElection.prod.test.ts +196 -0
  252. package/src/swarm/__tests__/LeaderElection.test.ts +151 -0
  253. package/src/swarm/__tests__/PSOEngine.prod.test.ts +162 -0
  254. package/src/swarm/__tests__/PSOEngine.test.ts +106 -0
  255. package/src/swarm/__tests__/QuorumPolicy.prod.test.ts +216 -0
  256. package/src/swarm/__tests__/QuorumPolicy.test.ts +177 -0
  257. package/src/swarm/__tests__/SwarmCoordinator.prod.test.ts +186 -0
  258. package/src/swarm/__tests__/SwarmCoordinator.test.ts +167 -0
  259. package/src/swarm/__tests__/SwarmManager.prod.test.ts +308 -0
  260. package/src/swarm/__tests__/SwarmManager.test.ts +373 -0
  261. package/src/swarm/__tests__/SwarmMembership.prod.test.ts +273 -0
  262. package/src/swarm/__tests__/SwarmMembership.test.ts +264 -0
  263. package/src/swarm/__tests__/VotingRound.prod.test.ts +233 -0
  264. package/src/swarm/__tests__/VotingRound.test.ts +174 -0
  265. package/src/swarm/analytics/SwarmInspector.ts +476 -0
  266. package/src/swarm/analytics/SwarmMetrics.ts +449 -0
  267. package/src/swarm/analytics/__tests__/SwarmInspector.prod.test.ts +366 -0
  268. package/src/swarm/analytics/__tests__/SwarmInspector.test.ts +454 -0
  269. package/src/swarm/analytics/__tests__/SwarmMetrics.prod.test.ts +254 -0
  270. package/src/swarm/analytics/__tests__/SwarmMetrics.test.ts +370 -0
  271. package/src/swarm/analytics/index.ts +7 -0
  272. package/src/swarm/index.ts +69 -0
  273. package/src/swarm/messaging/BroadcastChannel.ts +509 -0
  274. package/src/swarm/messaging/GossipProtocol.ts +565 -0
  275. package/src/swarm/messaging/SwarmEventBus.ts +443 -0
  276. package/src/swarm/messaging/__tests__/BroadcastChannel.prod.test.ts +331 -0
  277. package/src/swarm/messaging/__tests__/BroadcastChannel.test.ts +333 -0
  278. package/src/swarm/messaging/__tests__/GossipProtocol.prod.test.ts +356 -0
  279. package/src/swarm/messaging/__tests__/GossipProtocol.test.ts +437 -0
  280. package/src/swarm/messaging/__tests__/SwarmEventBus.prod.test.ts +191 -0
  281. package/src/swarm/messaging/__tests__/SwarmEventBus.test.ts +247 -0
  282. package/src/swarm/messaging/index.ts +8 -0
  283. package/src/swarm/spatial/FlockingBehavior.ts +462 -0
  284. package/src/swarm/spatial/FormationController.ts +500 -0
  285. package/src/swarm/spatial/Vector3.ts +170 -0
  286. package/src/swarm/spatial/ZoneClaiming.ts +509 -0
  287. package/src/swarm/spatial/__tests__/FlockingBehavior.prod.test.ts +239 -0
  288. package/src/swarm/spatial/__tests__/FlockingBehavior.test.ts +298 -0
  289. package/src/swarm/spatial/__tests__/FormationController.prod.test.ts +240 -0
  290. package/src/swarm/spatial/__tests__/FormationController.test.ts +297 -0
  291. package/src/swarm/spatial/__tests__/Vector3.prod.test.ts +283 -0
  292. package/src/swarm/spatial/__tests__/Vector3.test.ts +224 -0
  293. package/src/swarm/spatial/__tests__/ZoneClaiming.prod.test.ts +246 -0
  294. package/src/swarm/spatial/__tests__/ZoneClaiming.test.ts +374 -0
  295. package/src/swarm/spatial/index.ts +28 -0
  296. package/src/team.ts +1245 -0
  297. package/src/training/LRScheduler.ts +377 -0
  298. package/src/training/QualityScoringPipeline.ts +139 -0
  299. package/src/training/SoftDedup.ts +461 -0
  300. package/src/training/SparsityMonitor.ts +685 -0
  301. package/src/training/SparsityMonitorTypes.ts +209 -0
  302. package/src/training/SpatialTrainingDataGenerator.ts +1526 -0
  303. package/src/training/SpatialTrainingDataTypes.ts +216 -0
  304. package/src/training/TrainingPipelineConfig.ts +215 -0
  305. package/src/training/constants.ts +94 -0
  306. package/src/training/index.ts +138 -0
  307. package/src/training/schema.ts +147 -0
  308. package/src/training/scripts/generate-novel-use-cases-dataset.ts +272 -0
  309. package/src/training/scripts/generate-spatial-dataset.ts +521 -0
  310. package/src/training/training/data/novel-use-cases.jsonl +153 -0
  311. package/src/training/training/data/spatial-reasoning-10k.jsonl +9354 -0
  312. package/src/training/trainingmonkey/TrainingMonkeyIntegration.ts +477 -0
  313. package/src/training/trainingmonkey/TrainingMonkeyTypes.ts +230 -0
  314. package/src/training/trainingmonkey/index.ts +26 -0
  315. package/src/training/trait-mappings.ts +157 -0
  316. package/src/types/core-stubs.d.ts +113 -0
  317. package/src/types.ts +304 -0
  318. package/test-output.txt +0 -0
  319. package/test-result.json +1 -0
  320. package/tsc-errors.txt +4 -0
  321. package/tsc_output.txt +0 -0
  322. package/tsconfig.json +14 -0
  323. package/tsup-learning-esm.config.ts +12 -0
  324. package/tsup.config.ts +21 -0
  325. package/typescript-errors-2.txt +0 -0
  326. package/typescript-errors.txt +22 -0
  327. package/vitest-log-utf8.txt +268 -0
  328. package/vitest-log.txt +0 -0
  329. package/vitest.config.ts +8 -0
@@ -0,0 +1,585 @@
1
+ /**
2
+ * @holoscript/core - Agent Type Definitions
3
+ *
4
+ * Shared types for the HoloScript Agent Framework.
5
+ * Defines the 7-phase uAA2++ protocol and agent capabilities.
6
+ */
7
+
8
+ // ============================================================================
9
+ // PHASE DEFINITIONS
10
+ // ============================================================================
11
+
12
+ /**
13
+ * The 7 phases of the uAA2++ protocol
14
+ */
15
+ export type AgentPhase =
16
+ | 'INTAKE' // Phase 0: Gather data and context
17
+ | 'REFLECT' // Phase 1: Analyze and understand
18
+ | 'EXECUTE' // Phase 2: Take action
19
+ | 'COMPRESS' // Phase 3: Store knowledge efficiently
20
+ | 'REINTAKE' // Phase 4: Re-evaluate with compressed knowledge
21
+ | 'GROW' // Phase 5: Learn and improve
22
+ | 'EVOLVE'; // Phase 6: Adapt and optimize
23
+
24
+ /**
25
+ * Phase execution order
26
+ */
27
+ export const PHASE_ORDER: readonly AgentPhase[] = [
28
+ 'INTAKE',
29
+ 'REFLECT',
30
+ 'EXECUTE',
31
+ 'COMPRESS',
32
+ 'REINTAKE',
33
+ 'GROW',
34
+ 'EVOLVE',
35
+ ] as const;
36
+
37
+ /**
38
+ * Default phase timings (milliseconds)
39
+ */
40
+ export const DEFAULT_PHASE_TIMINGS: Record<AgentPhase, number> = {
41
+ INTAKE: 1000,
42
+ REFLECT: 2000,
43
+ EXECUTE: 5000,
44
+ COMPRESS: 1000,
45
+ REINTAKE: 1000,
46
+ GROW: 2000,
47
+ EVOLVE: 1000,
48
+ };
49
+
50
+ // ============================================================================
51
+ // PHASE RESULTS
52
+ // ============================================================================
53
+
54
+ /**
55
+ * Base result for all phases
56
+ */
57
+ export interface PhaseResult {
58
+ success: boolean;
59
+ phase: AgentPhase;
60
+ duration_ms: number;
61
+ error?: string;
62
+ data?: Record<string, unknown>;
63
+ }
64
+
65
+ /**
66
+ * INTAKE phase result
67
+ */
68
+ export interface IntakeResult extends PhaseResult {
69
+ phase: 'INTAKE';
70
+ sources: string[];
71
+ items_loaded: number;
72
+ data?: {
73
+ knowledge?: Record<string, unknown>;
74
+ patterns?: unknown[];
75
+ wisdom?: unknown[];
76
+ gotchas?: unknown[];
77
+ context?: Record<string, unknown>;
78
+ };
79
+ }
80
+
81
+ /**
82
+ * REFLECT phase result
83
+ */
84
+ export interface ReflectResult extends PhaseResult {
85
+ phase: 'REFLECT';
86
+ analysis_depth: 'shallow' | 'medium' | 'deep';
87
+ insights_generated: number;
88
+ data?: {
89
+ ai_context?: string;
90
+ decision_criteria?: Record<string, unknown>;
91
+ priorities?: string[];
92
+ risks?: string[];
93
+ };
94
+ }
95
+
96
+ /**
97
+ * EXECUTE phase result
98
+ */
99
+ export interface ExecuteResult extends PhaseResult {
100
+ phase: 'EXECUTE';
101
+ actions_taken: number;
102
+ deliverables: string[];
103
+ data?: {
104
+ outputs?: unknown[];
105
+ side_effects?: string[];
106
+ metrics?: Record<string, number>;
107
+ };
108
+ }
109
+
110
+ /**
111
+ * COMPRESS phase result
112
+ */
113
+ export interface CompressResult extends PhaseResult {
114
+ phase: 'COMPRESS';
115
+ compression_ratio: number;
116
+ tokens_saved: number;
117
+ data?: {
118
+ compressed_knowledge?: string;
119
+ symbol_mappings?: Record<string, string>;
120
+ patterns_extracted?: string[];
121
+ wisdom_extracted?: string[];
122
+ gotchas_captured?: string[];
123
+ };
124
+ }
125
+
126
+ /**
127
+ * REINTAKE phase result
128
+ */
129
+ export interface ReintakeResult extends PhaseResult {
130
+ phase: 'REINTAKE';
131
+ items_refreshed: number;
132
+ effectiveness: number; // 0-1
133
+ data?: {
134
+ merged_knowledge?: Record<string, unknown>;
135
+ conflicts_resolved?: number;
136
+ new_insights?: string[];
137
+ };
138
+ }
139
+
140
+ /**
141
+ * GROW phase result
142
+ */
143
+ export interface GrowResult extends PhaseResult {
144
+ phase: 'GROW';
145
+ patterns_learned: number;
146
+ wisdom_gained: number;
147
+ gotchas_captured: number;
148
+ data?: {
149
+ new_patterns?: Array<{ id: string; name: string; confidence: number }>;
150
+ new_wisdom?: Array<{ id: string; content: string; domain: string }>;
151
+ new_gotchas?: Array<{ id: string; trigger: string; avoidance: string }>;
152
+ capability_score_delta?: number;
153
+ };
154
+ }
155
+
156
+ /**
157
+ * EVOLVE phase result
158
+ */
159
+ export interface EvolveResult extends PhaseResult {
160
+ phase: 'EVOLVE';
161
+ evolution_level: number;
162
+ traits_activated: string[];
163
+ traits_deactivated: string[];
164
+ data?: {
165
+ new_capabilities?: string[];
166
+ optimizations_applied?: string[];
167
+ efficiency_improvement?: number;
168
+ next_evolution_threshold?: number;
169
+ };
170
+ }
171
+
172
+ /**
173
+ * Union type for all phase results
174
+ */
175
+ export type AnyPhaseResult =
176
+ | IntakeResult
177
+ | ReflectResult
178
+ | ExecuteResult
179
+ | CompressResult
180
+ | ReintakeResult
181
+ | GrowResult
182
+ | EvolveResult;
183
+
184
+ /**
185
+ * Complete cycle result
186
+ */
187
+ export interface CycleResult {
188
+ cycle_number: number;
189
+ success: boolean;
190
+ total_duration_ms: number;
191
+ phases: {
192
+ intake?: IntakeResult;
193
+ reflect?: ReflectResult;
194
+ execute?: ExecuteResult;
195
+ compress?: CompressResult;
196
+ reintake?: ReintakeResult;
197
+ grow?: GrowResult;
198
+ evolve?: EvolveResult;
199
+ };
200
+ learnings: {
201
+ patterns: number;
202
+ wisdom: number;
203
+ gotchas: number;
204
+ };
205
+ evolution_delta: number;
206
+ timestamp: string;
207
+ }
208
+
209
+ // ============================================================================
210
+ // AGENT CONFIGURATION
211
+ // ============================================================================
212
+
213
+ /**
214
+ * Agent category classification
215
+ */
216
+ export type AgentCategory =
217
+ | 'trading'
218
+ | 'analysis'
219
+ | 'optimization'
220
+ | 'monitoring'
221
+ | 'creative'
222
+ | 'management'
223
+ | 'strategic'
224
+ | 'assistant'
225
+ | 'orchestrator'
226
+ | 'quest_creator'
227
+ | 'librarian'
228
+ | 'twin_manager'
229
+ | 'payment_handler'
230
+ | 'autonomous';
231
+
232
+ /**
233
+ * Agent position in the Lotus Flower Architecture
234
+ */
235
+ export type AgentPosition =
236
+ | 'center' // Core coordinator (CEO)
237
+ | 'inner-circle' // High-trust advisors
238
+ | 'main-petal' // Primary executors
239
+ | 'inner-petal' // Specialist agents
240
+ | 'supportive' // Helper agents
241
+ | 'background' // Background processors
242
+ | 'infrastructure'; // System services
243
+
244
+ /**
245
+ * Agent orchestral section (musical metaphor)
246
+ */
247
+ export type AgentSection =
248
+ | 'strings' // Foundation & harmony
249
+ | 'woodwinds' // Melody & nuance
250
+ | 'brass' // Power & announcements
251
+ | 'percussion' // Rhythm & timing
252
+ | 'keyboard' // Versatility & support
253
+ | 'vocal'; // Communication & expression
254
+
255
+ /**
256
+ * Architecture awareness metadata
257
+ */
258
+ export interface ArchitectureAwareness {
259
+ position: AgentPosition;
260
+ section?: AgentSection;
261
+ role: string;
262
+ visualizationDoc?: string;
263
+ musicPatterns?: {
264
+ interval: 'I' | 'II' | 'III' | 'IV' | 'V' | 'VI' | 'VII' | 'VIII';
265
+ formRole: 'exposition' | 'development' | 'recapitulation' | 'coda' | 'refrain';
266
+ pulse: 'strong' | 'weak' | 'syncopated';
267
+ };
268
+ }
269
+
270
+ /**
271
+ * Phase configuration overrides
272
+ */
273
+ export interface PhaseConfig {
274
+ enabled?: boolean;
275
+ timeout_ms?: number;
276
+ retries?: number;
277
+ parallel?: boolean;
278
+ dependencies?: AgentPhase[];
279
+ }
280
+
281
+ /**
282
+ * Curiosity configuration (what's next?)
283
+ */
284
+ export interface CuriosityConfig {
285
+ enabled: boolean;
286
+ depth: 'shallow' | 'medium' | 'deep';
287
+ sources: Array<'todo' | 'handoff' | 'codebase' | 'related' | 'improvement' | 'pattern'>;
288
+ auto_continue: boolean;
289
+ max_results: number;
290
+ }
291
+
292
+ /**
293
+ * Budget configuration for runaway prevention
294
+ */
295
+ export interface BudgetConfig {
296
+ max_tokens_per_cycle: number;
297
+ max_duration_ms: number;
298
+ max_actions_per_minute: number;
299
+ max_consecutive_failures: number;
300
+ }
301
+
302
+ /**
303
+ * Complete agent configuration
304
+ */
305
+ export interface AgentConfig {
306
+ // Identity
307
+ agent_id: string;
308
+ agent_name: string;
309
+ agent_type: string;
310
+ categories: AgentCategory[];
311
+
312
+ // Architecture
313
+ architecture?: ArchitectureAwareness;
314
+
315
+ // Phase configuration
316
+ phases?: Partial<Record<AgentPhase, PhaseConfig>>;
317
+ phase_timings?: Partial<Record<AgentPhase, number>>;
318
+ enabled_phases?: AgentPhase[];
319
+ auto_transition?: boolean;
320
+
321
+ // Behavior
322
+ curiosity?: Partial<CuriosityConfig>;
323
+ budget?: Partial<BudgetConfig>;
324
+
325
+ // LLM configuration
326
+ llm?: {
327
+ model?: string;
328
+ temperature?: number;
329
+ max_tokens?: number;
330
+ system_prompt?: string;
331
+ };
332
+
333
+ // Custom configuration
334
+ custom?: Record<string, unknown>;
335
+ }
336
+
337
+ // ============================================================================
338
+ // AGENT STATE
339
+ // ============================================================================
340
+
341
+ /**
342
+ * Cycle metrics for lifespan tracking
343
+ */
344
+ export interface CycleMetric {
345
+ cycle_number: number;
346
+ duration_ms: number;
347
+ success: boolean;
348
+ score: number;
349
+ timestamp: number;
350
+ }
351
+
352
+ /**
353
+ * Agent lifespan context - tracks evolution across cycles
354
+ */
355
+ export interface AgentLifespanContext {
356
+ total_cycles_completed: number;
357
+ evolution_level: number;
358
+ performance_trend: 'improving' | 'stable' | 'declining';
359
+ average_cycle_duration: number;
360
+ recent_metrics: CycleMetric[];
361
+ knowledge_growth_trajectory: number;
362
+ adaptation_score: number;
363
+ related_tasks: string[];
364
+ }
365
+
366
+ /**
367
+ * Assistant-specific lifespan context (e.g., Brittney)
368
+ */
369
+ export interface AssistantLifespanContext {
370
+ total_interactions: number;
371
+ training_data_processed: number;
372
+ personality_evolution: {
373
+ emotional_responsiveness: number;
374
+ communication_style: string[];
375
+ user_preferences: Record<string, unknown>;
376
+ };
377
+ desktop_environment_memory: {
378
+ frequent_apps: string[];
379
+ window_arrangement_patterns: string[];
380
+ user_workflows: string[];
381
+ last_active_session_id?: string;
382
+ };
383
+ conversation_history: unknown[];
384
+ }
385
+
386
+ /**
387
+ * Complete agent state
388
+ */
389
+ export interface AgentState {
390
+ agent_id: string;
391
+ current_phase: AgentPhase;
392
+ phase_start_time: number;
393
+ cycle_number: number;
394
+
395
+ // Knowledge stores
396
+ knowledge: Map<string, unknown>;
397
+ patterns: unknown[];
398
+ wisdom: unknown[];
399
+ gotchas: unknown[];
400
+
401
+ // Phase outputs
402
+ reflection_context: Record<string, unknown>;
403
+ execution_result: unknown;
404
+ compressed_knowledge: string;
405
+
406
+ // Metrics
407
+ metrics: {
408
+ phases_completed: number;
409
+ total_cycles: number;
410
+ efficiency_score: number;
411
+ token_usage: number;
412
+ };
413
+
414
+ // Lifespan
415
+ lifespan?: AgentLifespanContext;
416
+ assistant_lifespan?: AssistantLifespanContext;
417
+
418
+ // Flags
419
+ is_training_mode: boolean;
420
+ is_shutting_down: boolean;
421
+ }
422
+
423
+ // ============================================================================
424
+ // INTER-AGENT COMMUNICATION
425
+ // ============================================================================
426
+
427
+ /**
428
+ * Message priority levels
429
+ */
430
+ export type MessagePriority = 'low' | 'medium' | 'high' | 'critical' | 'sovereign';
431
+
432
+ /**
433
+ * Inter-agent message
434
+ */
435
+ export interface AgentMessage {
436
+ id: string;
437
+ from: string;
438
+ to: string | 'broadcast';
439
+ type: 'request' | 'response' | 'notification' | 'event';
440
+ action: string;
441
+ payload: Record<string, unknown>;
442
+ priority: MessagePriority;
443
+ timestamp: number;
444
+ correlation_id?: string;
445
+ ttl_ms?: number;
446
+ }
447
+
448
+ /**
449
+ * Agent response
450
+ */
451
+ export interface AgentResponse {
452
+ message_id: string;
453
+ success: boolean;
454
+ data?: unknown;
455
+ error?: string;
456
+ duration_ms: number;
457
+ }
458
+
459
+ // ============================================================================
460
+ // KNOWLEDGE TYPES
461
+ // ============================================================================
462
+
463
+ /**
464
+ * Pattern entry for knowledge base
465
+ */
466
+ export interface PatternEntry {
467
+ pattern_id: string;
468
+ name: string;
469
+ domain: string;
470
+ description: string;
471
+ template: string;
472
+ confidence: number;
473
+ usage_count: number;
474
+ created_at: string;
475
+ updated_at: string;
476
+ tags: string[];
477
+ }
478
+
479
+ /**
480
+ * Wisdom entry for knowledge base
481
+ */
482
+ export interface WisdomEntry {
483
+ wisdom_id: string;
484
+ content: string;
485
+ domain: string;
486
+ source: string;
487
+ confidence: number;
488
+ citations: string[];
489
+ created_at: string;
490
+ tags: string[];
491
+ }
492
+
493
+ /**
494
+ * Gotcha entry for knowledge base
495
+ */
496
+ export interface GotchaEntry {
497
+ gotcha_id: string;
498
+ trigger: string;
499
+ consequence: string;
500
+ avoidance: string;
501
+ domain: string;
502
+ severity: 'low' | 'medium' | 'high' | 'critical';
503
+ occurrence_count: number;
504
+ created_at: string;
505
+ tags: string[];
506
+ }
507
+
508
+ // ============================================================================
509
+ // TRAIT CONTEXT EXTENSIONS
510
+ // ============================================================================
511
+
512
+ /**
513
+ * Agent-specific trait context
514
+ */
515
+ export interface AgentTraitContext {
516
+ // Core agent info
517
+ agent_id: string;
518
+ agent_name: string;
519
+ agent_type: string;
520
+
521
+ // Phase state
522
+ current_phase: AgentPhase;
523
+ phase_history: AgentPhase[];
524
+
525
+ // Knowledge access
526
+ getKnowledge: (key: string) => unknown;
527
+ setKnowledge: (key: string, value: unknown) => void;
528
+ queryKnowledge: (query: string) => Promise<unknown[]>;
529
+
530
+ // Inter-agent communication
531
+ sendMessage: (to: string, action: string, payload: unknown) => Promise<AgentResponse>;
532
+ broadcast: (action: string, payload: unknown) => Promise<void>;
533
+
534
+ // AI calling
535
+ callAI: (options: {
536
+ prompt: string;
537
+ context?: Record<string, unknown>;
538
+ model?: string;
539
+ temperature?: number;
540
+ max_tokens?: number;
541
+ }) => Promise<{ text: string; tokens_used: number }>;
542
+
543
+ // Phase control
544
+ transitionTo: (phase: AgentPhase) => void;
545
+ skipPhase: (phase: AgentPhase) => void;
546
+ repeatPhase: () => void;
547
+
548
+ // Metrics
549
+ recordMetric: (name: string, value: number) => void;
550
+ getMetrics: () => Record<string, number>;
551
+
552
+ // Logging
553
+ log: (level: 'debug' | 'info' | 'warn' | 'error', message: string, data?: unknown) => void;
554
+
555
+ // Economy & Autonomy Extensions
556
+ wallet?: {
557
+ getBalance: (asset?: string) => Promise<number>;
558
+ pay: (
559
+ endpoint: string,
560
+ amount: number,
561
+ asset: string
562
+ ) => Promise<{ success: boolean; txHash?: string }>;
563
+ trade: (
564
+ from: string,
565
+ to: string,
566
+ amount: number
567
+ ) => Promise<{ success: boolean; txHash?: string }>;
568
+ mintNFT: (metadata: Record<string, any>) => Promise<{ success: boolean; tokenId?: string }>;
569
+ };
570
+
571
+ story_weaver?: {
572
+ generateNarrative: (context: Record<string, unknown>) => Promise<string>;
573
+ createWorld: (theme: string) => Promise<string>; // Returns VRR Twin ID
574
+ deployContracts: (worldId: string) => Promise<boolean>;
575
+ };
576
+ }
577
+
578
+ // ============================================================================
579
+ // EXPORTS
580
+ // ============================================================================
581
+
582
+ export default {
583
+ PHASE_ORDER,
584
+ DEFAULT_PHASE_TIMINGS,
585
+ };
@@ -0,0 +1,83 @@
1
+ /**
2
+ * @fileoverview Agent Wallet Registry
3
+ * @module @holoscript/core
4
+ *
5
+ * PURPOSE:
6
+ * Bridges autonomous agents spawned via uaa2-service with Base L2 wallets.
7
+ * Allows agents to securely hold funds and autonomously purchase logic traits
8
+ * on the HoloScript marketplace. Signing is delegated to a Web3Connector
9
+ * implementation (see @holoscript/marketplace-api for the viem-based connector).
10
+ */
11
+
12
+ export interface AgentWallet {
13
+ agentId: string;
14
+ walletAddress: string;
15
+ networkId: number; // e.g. 8453 for Base
16
+ balanceThreshold: number; // minimum balance before requesting auto-refill
17
+ }
18
+
19
+ export class AgentWalletRegistry {
20
+ private static instance: AgentWalletRegistry;
21
+ private wallets: Map<string, AgentWallet> = new Map();
22
+
23
+ private constructor() {}
24
+
25
+ public static getInstance(): AgentWalletRegistry {
26
+ if (!AgentWalletRegistry.instance) {
27
+ AgentWalletRegistry.instance = new AgentWalletRegistry();
28
+ }
29
+ return AgentWalletRegistry.instance;
30
+ }
31
+
32
+ /**
33
+ * Registers a new agent wallet mapping
34
+ */
35
+ public registerWallet(
36
+ agentId: string,
37
+ walletAddress: string,
38
+ networkId: number = 8453
39
+ ): AgentWallet {
40
+ const wallet: AgentWallet = {
41
+ agentId,
42
+ walletAddress,
43
+ networkId,
44
+ balanceThreshold: 0.001, // 0.001 ETH
45
+ };
46
+ this.wallets.set(agentId, wallet);
47
+ return wallet;
48
+ }
49
+
50
+ /**
51
+ * Retrieves an agent's registered wallet
52
+ */
53
+ public getWallet(agentId: string): AgentWallet | undefined {
54
+ return this.wallets.get(agentId);
55
+ }
56
+
57
+ /**
58
+ * Removes an agent's wallet from the registry
59
+ */
60
+ public unregisterWallet(agentId: string): boolean {
61
+ return this.wallets.delete(agentId);
62
+ }
63
+
64
+ /**
65
+ * Authorizes an agent transaction using EIP-712 signature fallback
66
+ * (Placeholder for Coinbase AgentKit KMS signing)
67
+ */
68
+ public async authorizeTransaction(agentId: string, payload: unknown): Promise<string> {
69
+ const wallet = this.getWallet(agentId);
70
+ if (!wallet) {
71
+ throw new Error(`[AgentWalletRegistry] No wallet registered for agent ${agentId}`);
72
+ }
73
+
74
+ // In production, this proxies into a Web3Connector for secure signing.
75
+ // Simulating signature generation:
76
+ const mockHash = '0x' + Buffer.from(JSON.stringify(payload)).toString('hex').slice(0, 64);
77
+ return mockHash;
78
+ }
79
+ }
80
+
81
+ export function getAgentWalletRegistry(): AgentWalletRegistry {
82
+ return AgentWalletRegistry.getInstance();
83
+ }