@elizaos/api-client 1.4.4 → 1.5.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 (139) hide show
  1. package/dist/api-client/src/client.d.ts +25 -0
  2. package/dist/api-client/src/client.d.ts.map +1 -0
  3. package/dist/api-client/src/index.d.ts +20 -0
  4. package/dist/api-client/src/index.d.ts.map +1 -0
  5. package/dist/api-client/src/lib/base-client.d.ts +31 -0
  6. package/dist/api-client/src/lib/base-client.d.ts.map +1 -0
  7. package/dist/api-client/src/services/agents.d.ts +107 -0
  8. package/dist/api-client/src/services/agents.d.ts.map +1 -0
  9. package/dist/api-client/src/services/audio.d.ts +48 -0
  10. package/dist/api-client/src/services/audio.d.ts.map +1 -0
  11. package/dist/api-client/src/services/media.d.ts +14 -0
  12. package/dist/api-client/src/services/media.d.ts.map +1 -0
  13. package/dist/api-client/src/services/memory.d.ts +107 -0
  14. package/dist/api-client/src/services/memory.d.ts.map +1 -0
  15. package/dist/api-client/src/services/messaging.d.ts +164 -0
  16. package/dist/api-client/src/services/messaging.d.ts.map +1 -0
  17. package/dist/api-client/src/services/server.d.ts +47 -0
  18. package/dist/api-client/src/services/server.d.ts.map +1 -0
  19. package/dist/api-client/src/services/sessions.d.ts +52 -0
  20. package/dist/api-client/src/services/sessions.d.ts.map +1 -0
  21. package/dist/api-client/src/services/system.d.ts +56 -0
  22. package/dist/api-client/src/services/system.d.ts.map +1 -0
  23. package/dist/api-client/src/types/agents.d.ts +67 -0
  24. package/dist/api-client/src/types/agents.d.ts.map +1 -0
  25. package/dist/api-client/src/types/audio.d.ts +42 -0
  26. package/dist/api-client/src/types/audio.d.ts.map +1 -0
  27. package/dist/api-client/src/types/base.d.ts +30 -0
  28. package/dist/api-client/src/types/base.d.ts.map +1 -0
  29. package/dist/api-client/src/types/media.d.ts +21 -0
  30. package/dist/api-client/src/types/media.d.ts.map +1 -0
  31. package/dist/api-client/src/types/memory.d.ts +43 -0
  32. package/dist/api-client/src/types/memory.d.ts.map +1 -0
  33. package/dist/api-client/src/types/messaging.d.ts +186 -0
  34. package/dist/api-client/src/types/messaging.d.ts.map +1 -0
  35. package/dist/api-client/src/types/server.d.ts +44 -0
  36. package/dist/api-client/src/types/server.d.ts.map +1 -0
  37. package/dist/api-client/src/types/sessions.d.ts +134 -0
  38. package/dist/api-client/src/types/sessions.d.ts.map +1 -0
  39. package/dist/api-client/src/types/system.d.ts +16 -0
  40. package/dist/api-client/src/types/system.d.ts.map +1 -0
  41. package/dist/core/src/actions.d.ts +23 -0
  42. package/dist/core/src/actions.d.ts.map +1 -0
  43. package/dist/core/src/database.d.ts +481 -0
  44. package/dist/core/src/database.d.ts.map +1 -0
  45. package/dist/core/src/entities.d.ts +49 -0
  46. package/dist/core/src/entities.d.ts.map +1 -0
  47. package/dist/core/src/index.d.ts +27 -0
  48. package/dist/core/src/index.d.ts.map +1 -0
  49. package/dist/core/src/logger.d.ts +46 -0
  50. package/dist/core/src/logger.d.ts.map +1 -0
  51. package/dist/core/src/prompts.d.ts +8 -0
  52. package/dist/core/src/prompts.d.ts.map +1 -0
  53. package/dist/core/src/roles.d.ts +30 -0
  54. package/dist/core/src/roles.d.ts.map +1 -0
  55. package/dist/core/src/runtime.d.ts +328 -0
  56. package/dist/core/src/runtime.d.ts.map +1 -0
  57. package/dist/core/src/schemas/character.d.ts +228 -0
  58. package/dist/core/src/schemas/character.d.ts.map +1 -0
  59. package/dist/core/src/search.d.ts +317 -0
  60. package/dist/core/src/search.d.ts.map +1 -0
  61. package/dist/core/src/sentry/instrument.d.ts +12 -0
  62. package/dist/core/src/sentry/instrument.d.ts.map +1 -0
  63. package/dist/core/src/services.d.ts +49 -0
  64. package/dist/core/src/services.d.ts.map +1 -0
  65. package/dist/core/src/settings.d.ts +87 -0
  66. package/dist/core/src/settings.d.ts.map +1 -0
  67. package/dist/core/src/types/agent.d.ts +98 -0
  68. package/dist/core/src/types/agent.d.ts.map +1 -0
  69. package/dist/core/src/types/browser.d.ts +127 -0
  70. package/dist/core/src/types/browser.d.ts.map +1 -0
  71. package/dist/core/src/types/components.d.ts +135 -0
  72. package/dist/core/src/types/components.d.ts.map +1 -0
  73. package/dist/core/src/types/database.d.ts +278 -0
  74. package/dist/core/src/types/database.d.ts.map +1 -0
  75. package/dist/core/src/types/email.d.ts +143 -0
  76. package/dist/core/src/types/email.d.ts.map +1 -0
  77. package/dist/core/src/types/environment.d.ts +109 -0
  78. package/dist/core/src/types/environment.d.ts.map +1 -0
  79. package/dist/core/src/types/events.d.ts +208 -0
  80. package/dist/core/src/types/events.d.ts.map +1 -0
  81. package/dist/core/src/types/index.d.ts +30 -0
  82. package/dist/core/src/types/index.d.ts.map +1 -0
  83. package/dist/core/src/types/knowledge.d.ts +60 -0
  84. package/dist/core/src/types/knowledge.d.ts.map +1 -0
  85. package/dist/core/src/types/lp.d.ts +115 -0
  86. package/dist/core/src/types/lp.d.ts.map +1 -0
  87. package/dist/core/src/types/memory.d.ts +165 -0
  88. package/dist/core/src/types/memory.d.ts.map +1 -0
  89. package/dist/core/src/types/message.d.ts +202 -0
  90. package/dist/core/src/types/message.d.ts.map +1 -0
  91. package/dist/core/src/types/messaging.d.ts +45 -0
  92. package/dist/core/src/types/messaging.d.ts.map +1 -0
  93. package/dist/core/src/types/model.d.ts +319 -0
  94. package/dist/core/src/types/model.d.ts.map +1 -0
  95. package/dist/core/src/types/pdf.d.ts +68 -0
  96. package/dist/core/src/types/pdf.d.ts.map +1 -0
  97. package/dist/core/src/types/plugin.d.ts +64 -0
  98. package/dist/core/src/types/plugin.d.ts.map +1 -0
  99. package/dist/core/src/types/post.d.ts +242 -0
  100. package/dist/core/src/types/post.d.ts.map +1 -0
  101. package/dist/core/src/types/primitives.d.ts +72 -0
  102. package/dist/core/src/types/primitives.d.ts.map +1 -0
  103. package/dist/core/src/types/runtime.d.ts +106 -0
  104. package/dist/core/src/types/runtime.d.ts.map +1 -0
  105. package/dist/core/src/types/service.d.ts +147 -0
  106. package/dist/core/src/types/service.d.ts.map +1 -0
  107. package/dist/core/src/types/settings.d.ts +30 -0
  108. package/dist/core/src/types/settings.d.ts.map +1 -0
  109. package/dist/core/src/types/state.d.ts +59 -0
  110. package/dist/core/src/types/state.d.ts.map +1 -0
  111. package/dist/core/src/types/task.d.ts +68 -0
  112. package/dist/core/src/types/task.d.ts.map +1 -0
  113. package/dist/core/src/types/tee.d.ts +97 -0
  114. package/dist/core/src/types/tee.d.ts.map +1 -0
  115. package/dist/core/src/types/testing.d.ts +29 -0
  116. package/dist/core/src/types/testing.d.ts.map +1 -0
  117. package/dist/core/src/types/token.d.ts +73 -0
  118. package/dist/core/src/types/token.d.ts.map +1 -0
  119. package/dist/core/src/types/transcription.d.ts +108 -0
  120. package/dist/core/src/types/transcription.d.ts.map +1 -0
  121. package/dist/core/src/types/video.d.ts +93 -0
  122. package/dist/core/src/types/video.d.ts.map +1 -0
  123. package/dist/core/src/types/wallet.d.ts +49 -0
  124. package/dist/core/src/types/wallet.d.ts.map +1 -0
  125. package/dist/core/src/types/web-search.d.ts +112 -0
  126. package/dist/core/src/types/web-search.d.ts.map +1 -0
  127. package/dist/core/src/utils/buffer.d.ts +105 -0
  128. package/dist/core/src/utils/buffer.d.ts.map +1 -0
  129. package/dist/core/src/utils/environment.d.ts +106 -0
  130. package/dist/core/src/utils/environment.d.ts.map +1 -0
  131. package/dist/core/src/utils/server-health.d.ts +23 -0
  132. package/dist/core/src/utils/server-health.d.ts.map +1 -0
  133. package/dist/core/src/utils.d.ts +177 -0
  134. package/dist/core/src/utils.d.ts.map +1 -0
  135. package/dist/index.d.ts +1 -1102
  136. package/dist/index.js +144 -449
  137. package/dist/index.js.map +19 -1
  138. package/dist/tsconfig.build.tsbuildinfo +1 -0
  139. package/package.json +5 -6
@@ -0,0 +1,64 @@
1
+ import type { Character } from './agent';
2
+ import type { Action, Evaluator, Provider } from './components';
3
+ import type { IDatabaseAdapter } from './database';
4
+ import type { EventHandler, EventPayloadMap } from './events';
5
+ import type { IAgentRuntime } from './runtime';
6
+ import type { Service } from './service';
7
+ import type { TestSuite } from './testing';
8
+ export type Route = {
9
+ type: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'STATIC';
10
+ path: string;
11
+ filePath?: string;
12
+ public?: boolean;
13
+ name?: string extends {
14
+ public: true;
15
+ } ? string : string | undefined;
16
+ handler?: (req: any, res: any, runtime: IAgentRuntime) => Promise<void>;
17
+ isMultipart?: boolean;
18
+ };
19
+ /**
20
+ * Plugin for extending agent functionality
21
+ */
22
+ export type PluginEvents = {
23
+ [K in keyof EventPayloadMap]?: EventHandler<K>[];
24
+ } & {
25
+ [key: string]: ((params: any) => Promise<any>)[];
26
+ };
27
+ export interface Plugin {
28
+ name: string;
29
+ description: string;
30
+ init?: (config: Record<string, string>, runtime: IAgentRuntime) => Promise<void>;
31
+ config?: {
32
+ [key: string]: any;
33
+ };
34
+ services?: (typeof Service)[];
35
+ componentTypes?: {
36
+ name: string;
37
+ schema: Record<string, unknown>;
38
+ validator?: (data: any) => boolean;
39
+ }[];
40
+ actions?: Action[];
41
+ providers?: Provider[];
42
+ evaluators?: Evaluator[];
43
+ adapter?: IDatabaseAdapter;
44
+ models?: {
45
+ [key: string]: (...args: any[]) => Promise<any>;
46
+ };
47
+ events?: PluginEvents;
48
+ routes?: Route[];
49
+ tests?: TestSuite[];
50
+ dependencies?: string[];
51
+ testDependencies?: string[];
52
+ priority?: number;
53
+ schema?: any;
54
+ }
55
+ export interface ProjectAgent {
56
+ character: Character;
57
+ init?: (runtime: IAgentRuntime) => Promise<void>;
58
+ plugins?: Plugin[];
59
+ tests?: TestSuite | TestSuite[];
60
+ }
61
+ export interface Project {
62
+ agents: ProjectAgent[];
63
+ }
64
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../../core/src/types/plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,242 @@
1
+ import { Service } from './service';
2
+ import type { UUID } from './primitives';
3
+ export interface PostMedia {
4
+ id: UUID;
5
+ url: string;
6
+ type: 'image' | 'video' | 'audio' | 'document';
7
+ mimeType: string;
8
+ size: number;
9
+ width?: number;
10
+ height?: number;
11
+ duration?: number;
12
+ thumbnail?: string;
13
+ description?: string;
14
+ altText?: string;
15
+ }
16
+ export interface PostLocation {
17
+ name: string;
18
+ address?: string;
19
+ coordinates?: {
20
+ latitude: number;
21
+ longitude: number;
22
+ };
23
+ placeId?: string;
24
+ }
25
+ export interface PostAuthor {
26
+ id: UUID;
27
+ username: string;
28
+ displayName: string;
29
+ avatar?: string;
30
+ verified?: boolean;
31
+ followerCount?: number;
32
+ followingCount?: number;
33
+ bio?: string;
34
+ website?: string;
35
+ }
36
+ export interface PostEngagement {
37
+ likes: number;
38
+ shares: number;
39
+ comments: number;
40
+ views?: number;
41
+ hasLiked: boolean;
42
+ hasShared: boolean;
43
+ hasCommented: boolean;
44
+ hasSaved: boolean;
45
+ }
46
+ export interface PostContent {
47
+ text?: string;
48
+ html?: string;
49
+ media?: PostMedia[];
50
+ location?: PostLocation;
51
+ tags?: string[];
52
+ mentions?: UUID[];
53
+ links?: Array<{
54
+ url: string;
55
+ title?: string;
56
+ description?: string;
57
+ image?: string;
58
+ }>;
59
+ poll?: {
60
+ question: string;
61
+ options: Array<{
62
+ text: string;
63
+ votes: number;
64
+ }>;
65
+ expiresAt?: Date;
66
+ multipleChoice?: boolean;
67
+ };
68
+ }
69
+ export interface PostInfo {
70
+ id: UUID;
71
+ author: PostAuthor;
72
+ content: PostContent;
73
+ platform: string;
74
+ platformId: string;
75
+ url: string;
76
+ createdAt: Date;
77
+ editedAt?: Date;
78
+ scheduledAt?: Date;
79
+ engagement: PostEngagement;
80
+ visibility: 'public' | 'private' | 'followers' | 'friends' | 'unlisted';
81
+ replyTo?: UUID;
82
+ thread?: {
83
+ id: UUID;
84
+ position: number;
85
+ total: number;
86
+ };
87
+ crossPosted?: Array<{
88
+ platform: string;
89
+ platformId: string;
90
+ url: string;
91
+ }>;
92
+ }
93
+ export interface PostCreateOptions {
94
+ platforms?: string[];
95
+ scheduledAt?: Date;
96
+ visibility?: PostInfo['visibility'];
97
+ replyTo?: UUID;
98
+ thread?: boolean;
99
+ location?: PostLocation;
100
+ tags?: string[];
101
+ mentions?: UUID[];
102
+ enableComments?: boolean;
103
+ enableSharing?: boolean;
104
+ contentWarning?: string;
105
+ sensitive?: boolean;
106
+ }
107
+ export interface PostSearchOptions {
108
+ query?: string;
109
+ author?: UUID;
110
+ platform?: string;
111
+ tags?: string[];
112
+ mentions?: UUID[];
113
+ since?: Date;
114
+ before?: Date;
115
+ limit?: number;
116
+ offset?: number;
117
+ hasMedia?: boolean;
118
+ hasLocation?: boolean;
119
+ visibility?: PostInfo['visibility'];
120
+ sortBy?: 'date' | 'engagement' | 'relevance';
121
+ }
122
+ export interface PostAnalytics {
123
+ postId: UUID;
124
+ platform: string;
125
+ impressions: number;
126
+ reach: number;
127
+ engagement: PostEngagement;
128
+ clicks: number;
129
+ shares: number;
130
+ saves: number;
131
+ demographics?: {
132
+ age?: Record<string, number>;
133
+ gender?: Record<string, number>;
134
+ location?: Record<string, number>;
135
+ };
136
+ topPerformingHours?: Array<{
137
+ hour: number;
138
+ engagement: number;
139
+ }>;
140
+ }
141
+ /**
142
+ * Interface for social media posting services
143
+ */
144
+ export declare abstract class IPostService extends Service {
145
+ static readonly serviceType: "post";
146
+ readonly capabilityDescription = "Social media posting and content management capabilities";
147
+ /**
148
+ * Create and publish a new post
149
+ * @param content - Post content
150
+ * @param options - Publishing options
151
+ * @returns Promise resolving to post ID
152
+ */
153
+ abstract createPost(content: PostContent, options?: PostCreateOptions): Promise<UUID>;
154
+ /**
155
+ * Get posts from timeline or specific user
156
+ * @param options - Search options
157
+ * @returns Promise resolving to array of posts
158
+ */
159
+ abstract getPosts(options?: PostSearchOptions): Promise<PostInfo[]>;
160
+ /**
161
+ * Get a specific post by ID
162
+ * @param postId - Post ID
163
+ * @returns Promise resolving to post info
164
+ */
165
+ abstract getPost(postId: UUID): Promise<PostInfo>;
166
+ /**
167
+ * Edit an existing post
168
+ * @param postId - Post ID
169
+ * @param content - New post content
170
+ * @returns Promise resolving when edit completes
171
+ */
172
+ abstract editPost(postId: UUID, content: PostContent): Promise<void>;
173
+ /**
174
+ * Delete a post
175
+ * @param postId - Post ID
176
+ * @returns Promise resolving when deletion completes
177
+ */
178
+ abstract deletePost(postId: UUID): Promise<void>;
179
+ /**
180
+ * Like/unlike a post
181
+ * @param postId - Post ID
182
+ * @param like - True to like, false to unlike
183
+ * @returns Promise resolving when operation completes
184
+ */
185
+ abstract likePost(postId: UUID, like: boolean): Promise<void>;
186
+ /**
187
+ * Share/repost a post
188
+ * @param postId - Post ID
189
+ * @param comment - Optional comment when sharing
190
+ * @returns Promise resolving to share ID
191
+ */
192
+ abstract sharePost(postId: UUID, comment?: string): Promise<UUID>;
193
+ /**
194
+ * Save/unsave a post
195
+ * @param postId - Post ID
196
+ * @param save - True to save, false to unsave
197
+ * @returns Promise resolving when operation completes
198
+ */
199
+ abstract savePost(postId: UUID, save: boolean): Promise<void>;
200
+ /**
201
+ * Comment on a post
202
+ * @param postId - Post ID
203
+ * @param content - Comment content
204
+ * @returns Promise resolving to comment ID
205
+ */
206
+ abstract commentOnPost(postId: UUID, content: PostContent): Promise<UUID>;
207
+ /**
208
+ * Get comments for a post
209
+ * @param postId - Post ID
210
+ * @param options - Search options
211
+ * @returns Promise resolving to array of comments
212
+ */
213
+ abstract getComments(postId: UUID, options?: PostSearchOptions): Promise<PostInfo[]>;
214
+ /**
215
+ * Schedule a post for later publishing
216
+ * @param content - Post content
217
+ * @param scheduledAt - When to publish
218
+ * @param options - Publishing options
219
+ * @returns Promise resolving to scheduled post ID
220
+ */
221
+ abstract schedulePost(content: PostContent, scheduledAt: Date, options?: PostCreateOptions): Promise<UUID>;
222
+ /**
223
+ * Get analytics for a post
224
+ * @param postId - Post ID
225
+ * @returns Promise resolving to post analytics
226
+ */
227
+ abstract getPostAnalytics(postId: UUID): Promise<PostAnalytics>;
228
+ /**
229
+ * Get trending posts
230
+ * @param options - Search options
231
+ * @returns Promise resolving to trending posts
232
+ */
233
+ abstract getTrendingPosts(options?: PostSearchOptions): Promise<PostInfo[]>;
234
+ /**
235
+ * Search posts across platforms
236
+ * @param query - Search query
237
+ * @param options - Search options
238
+ * @returns Promise resolving to search results
239
+ */
240
+ abstract searchPosts(query: string, options?: PostSearchOptions): Promise<PostInfo[]>;
241
+ }
242
+ //# sourceMappingURL=post.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../../core/src/types/post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,IAAI,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,IAAI,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,IAAI,CAAC,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;SACf,CAAC,CAAC;QACH,SAAS,CAAC,EAAE,IAAI,CAAC;QACjB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,IAAI,CAAC;IACT,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;IACxE,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE;QACP,EAAE,EAAE,IAAI,CAAC;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;CAC9C;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,IAAI,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,cAAc,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE;QACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACnC,CAAC;IACF,kBAAkB,CAAC,EAAE,KAAK,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,8BAAsB,YAAa,SAAQ,OAAO;IAChD,gBAAyB,WAAW,SAAoB;IAExD,SAAgB,qBAAqB,8DACwB;IAE7D;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAErF;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEnE;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IAEjD;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEpE;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhD;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7D;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjE;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7D;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEzE;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEpF;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,CACnB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,IAAI,EACjB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,IAAI,CAAC;IAEhB;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC;IAE/D;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAE3E;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CACtF"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Defines a custom type UUID representing a universally unique identifier
3
+ */
4
+ export type UUID = `${string}-${string}-${string}-${string}-${string}`;
5
+ /**
6
+ * Helper function to safely cast a string to strongly typed UUID
7
+ * @param id The string UUID to validate and cast
8
+ * @returns The same UUID with branded type information
9
+ */
10
+ export declare function asUUID(id: string): UUID;
11
+ /**
12
+ * Represents the content of a memory, message, or other information
13
+ */
14
+ export interface Content {
15
+ /** The agent's internal thought process */
16
+ thought?: string;
17
+ /** The main text content visible to users */
18
+ text?: string;
19
+ /** Optional actions to be performed */
20
+ actions?: string[];
21
+ /** Optional providers to use for context generation */
22
+ providers?: string[];
23
+ /** Optional source/origin of the content */
24
+ source?: string;
25
+ /** Optional target/destination for responses */
26
+ target?: string;
27
+ /** URL of the original message/post (e.g. tweet URL, Discord message link) */
28
+ url?: string;
29
+ /** UUID of parent message if this is a reply/thread */
30
+ inReplyTo?: UUID;
31
+ /** Array of media attachments */
32
+ attachments?: Media[];
33
+ /** room type */
34
+ channelType?: string;
35
+ /**
36
+ * Additional dynamic properties
37
+ * Use specific properties above instead of this when possible
38
+ */
39
+ [key: string]: unknown;
40
+ }
41
+ /**
42
+ * Represents a media attachment
43
+ */
44
+ export type Media = {
45
+ /** Unique identifier */
46
+ id: string;
47
+ /** Media URL */
48
+ url: string;
49
+ /** Media title */
50
+ title?: string;
51
+ /** Media source */
52
+ source?: string;
53
+ /** Media description */
54
+ description?: string;
55
+ /** Text content */
56
+ text?: string;
57
+ /** Content type */
58
+ contentType?: ContentType;
59
+ };
60
+ export declare enum ContentType {
61
+ IMAGE = "image",
62
+ VIDEO = "video",
63
+ AUDIO = "audio",
64
+ DOCUMENT = "document",
65
+ LINK = "link"
66
+ }
67
+ /**
68
+ * A generic type for metadata objects, allowing for arbitrary key-value pairs.
69
+ * This encourages consumers to perform type checking or casting.
70
+ */
71
+ export type Metadata = Record<string, unknown>;
72
+ //# sourceMappingURL=primitives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../../core/src/types/primitives.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAKvC;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,8EAA8E;IAC9E,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,uDAAuD;IACvD,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB,iCAAiC;IACjC,WAAW,CAAC,EAAE,KAAK,EAAE,CAAC;IAEtB,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,gBAAgB;IAChB,GAAG,EAAE,MAAM,CAAC;IAEZ,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,mBAAmB;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,mBAAmB;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAED;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC"}
@@ -0,0 +1,106 @@
1
+ import type { Character } from './agent';
2
+ import type { Action, Evaluator, Provider } from './components';
3
+ import { HandlerCallback } from './components';
4
+ import type { IDatabaseAdapter } from './database';
5
+ import type { Entity, Room, World } from './environment';
6
+ import { Memory, MemoryMetadata } from './memory';
7
+ import type { SendHandlerFunction, TargetInfo } from './messaging';
8
+ import type { ModelParamsMap, ModelResultMap, ModelTypeName } from './model';
9
+ import type { Plugin, Route } from './plugin';
10
+ import type { Content, UUID } from './primitives';
11
+ import type { Service, ServiceTypeName } from './service';
12
+ import type { State } from './state';
13
+ import type { TaskWorker } from './task';
14
+ /**
15
+ * Represents the core runtime environment for an agent.
16
+ * Defines methods for database interaction, plugin management, event handling,
17
+ * state composition, model usage, and task management.
18
+ */
19
+ export interface IAgentRuntime extends IDatabaseAdapter {
20
+ agentId: UUID;
21
+ character: Character;
22
+ providers: Provider[];
23
+ actions: Action[];
24
+ evaluators: Evaluator[];
25
+ plugins: Plugin[];
26
+ services: Map<ServiceTypeName, Service[]>;
27
+ events: Map<string, ((params: any) => Promise<void>)[]>;
28
+ fetch?: typeof fetch | null;
29
+ routes: Route[];
30
+ logger: any;
31
+ registerPlugin(plugin: Plugin): Promise<void>;
32
+ initialize(): Promise<void>;
33
+ getConnection(): Promise<any>;
34
+ getService<T extends Service>(service: ServiceTypeName | string): T | null;
35
+ getServicesByType<T extends Service>(service: ServiceTypeName | string): T[];
36
+ getAllServices(): Map<ServiceTypeName, Service[]>;
37
+ registerService(service: typeof Service): Promise<void>;
38
+ getServiceLoadPromise(serviceType: ServiceTypeName): Promise<Service>;
39
+ getRegisteredServiceTypes(): ServiceTypeName[];
40
+ hasService(serviceType: ServiceTypeName | string): boolean;
41
+ registerDatabaseAdapter(adapter: IDatabaseAdapter): void;
42
+ setSetting(key: string, value: string | boolean | null | any, secret?: boolean): void;
43
+ getSetting(key: string): string | boolean | null | any;
44
+ getConversationLength(): number;
45
+ processActions(message: Memory, responses: Memory[], state?: State, callback?: HandlerCallback): Promise<void>;
46
+ evaluate(message: Memory, state?: State, didRespond?: boolean, callback?: HandlerCallback, responses?: Memory[]): Promise<Evaluator[] | null>;
47
+ registerProvider(provider: Provider): void;
48
+ registerAction(action: Action): void;
49
+ registerEvaluator(evaluator: Evaluator): void;
50
+ ensureConnections(entities: Entity[], rooms: Room[], source: string, world: World): Promise<void>;
51
+ ensureConnection({ entityId, roomId, metadata, userName, worldName, name, source, channelId, serverId, type, worldId, userId, }: {
52
+ entityId: UUID;
53
+ roomId: UUID;
54
+ userName?: string;
55
+ name?: string;
56
+ worldName?: string;
57
+ source?: string;
58
+ channelId?: string;
59
+ serverId?: string;
60
+ type: any;
61
+ worldId: UUID;
62
+ userId?: UUID;
63
+ metadata?: Record<string, any>;
64
+ }): Promise<void>;
65
+ ensureParticipantInRoom(entityId: UUID, roomId: UUID): Promise<void>;
66
+ ensureWorldExists(world: World): Promise<void>;
67
+ ensureRoomExists(room: Room): Promise<void>;
68
+ composeState(message: Memory, includeList?: string[], onlyInclude?: boolean, skipCache?: boolean): Promise<State>;
69
+ useModel<T extends ModelTypeName, R = ModelResultMap[T]>(modelType: T, params: Omit<ModelParamsMap[T], 'runtime'> | any): Promise<R>;
70
+ registerModel(modelType: ModelTypeName | string, handler: (params: any) => Promise<any>, provider: string, priority?: number): void;
71
+ getModel(modelType: ModelTypeName | string): ((runtime: IAgentRuntime, params: any) => Promise<any>) | undefined;
72
+ registerEvent(event: string, handler: (params: any) => Promise<void>): void;
73
+ getEvent(event: string): ((params: any) => Promise<void>)[] | undefined;
74
+ emitEvent(event: string | string[], params: any): Promise<void>;
75
+ registerTaskWorker(taskHandler: TaskWorker): void;
76
+ getTaskWorker(name: string): TaskWorker | undefined;
77
+ stop(): Promise<void>;
78
+ addEmbeddingToMemory(memory: Memory): Promise<Memory>;
79
+ /**
80
+ * Queue a memory for async embedding generation.
81
+ * This method is non-blocking and returns immediately.
82
+ * The embedding will be generated asynchronously via event handlers.
83
+ * @param memory The memory to generate embeddings for
84
+ * @param priority Priority level for the embedding generation
85
+ */
86
+ queueEmbeddingGeneration(memory: Memory, priority?: 'high' | 'normal' | 'low'): Promise<void>;
87
+ getAllMemories(): Promise<Memory[]>;
88
+ clearAllAgentMemories(): Promise<void>;
89
+ updateMemory(memory: Partial<Memory> & {
90
+ id: UUID;
91
+ metadata?: MemoryMetadata;
92
+ }): Promise<boolean>;
93
+ createRunId(): UUID;
94
+ startRun(): UUID;
95
+ endRun(): void;
96
+ getCurrentRunId(): UUID;
97
+ getEntityById(entityId: UUID): Promise<Entity | null>;
98
+ getRoom(roomId: UUID): Promise<Room | null>;
99
+ createEntity(entity: Entity): Promise<boolean>;
100
+ createRoom({ id, name, source, type, channelId, serverId, worldId }: Room): Promise<UUID>;
101
+ addParticipant(entityId: UUID, roomId: UUID): Promise<boolean>;
102
+ getRooms(worldId: UUID): Promise<Room[]>;
103
+ registerSendHandler(source: string, handler: SendHandlerFunction): void;
104
+ sendMessageToTarget(target: TargetInfo, content: Content): Promise<void>;
105
+ }
106
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../core/src/types/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzC;;;;GAIG;AAEH,MAAM,WAAW,aAAc,SAAQ,gBAAgB;IAErD,OAAO,EAAE,IAAI,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;IACxD,KAAK,CAAC,EAAE,OAAO,KAAK,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC;IAGZ,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAE9B,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC;IAE3E,iBAAiB,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;IAE7E,cAAc,IAAI,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;IAElD,eAAe,CAAC,OAAO,EAAE,OAAO,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,qBAAqB,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtE,yBAAyB,IAAI,eAAe,EAAE,CAAC;IAE/C,UAAU,CAAC,WAAW,EAAE,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;IAG3D,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAEzD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAEtF,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC;IAEvD,qBAAqB,IAAI,MAAM,CAAC;IAEhC,cAAc,CACZ,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EAAE,EACnB,KAAK,CAAC,EAAE,KAAK,EACb,QAAQ,CAAC,EAAE,eAAe,GACzB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,QAAQ,CACN,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,KAAK,EACb,UAAU,CAAC,EAAE,OAAO,EACpB,QAAQ,CAAC,EAAE,eAAe,EAC1B,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;IAE/B,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAE3C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAE9C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClG,gBAAgB,CAAC,EACf,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,MAAM,EACN,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,MAAM,GACP,EAAE;QACD,QAAQ,EAAE,IAAI,CAAC;QACf,MAAM,EAAE,IAAI,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,GAAG,CAAC;QACV,OAAO,EAAE,IAAI,CAAC;QACd,MAAM,CAAC,EAAE,IAAI,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAChC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB,uBAAuB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErE,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5C,YAAY,CACV,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,WAAW,CAAC,EAAE,OAAO,EACrB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,KAAK,CAAC,CAAC;IAElB,QAAQ,CAAC,CAAC,SAAS,aAAa,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,EACrD,SAAS,EAAE,CAAC,EACZ,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,GAAG,GAC/C,OAAO,CAAC,CAAC,CAAC,CAAC;IAEd,aAAa,CACX,SAAS,EAAE,aAAa,GAAG,MAAM,EACjC,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,EACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,IAAI,CAAC;IAER,QAAQ,CACN,SAAS,EAAE,aAAa,GAAG,MAAM,GAChC,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;IAEvE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAE5E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IAExE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE,kBAAkB,CAAC,WAAW,EAAE,UAAU,GAAG,IAAI,CAAC;IAClD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAEpD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtD;;;;;;OAMG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9F,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEpC,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,QAAQ,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAGlG,WAAW,IAAI,IAAI,CAAC;IACpB,QAAQ,IAAI,IAAI,CAAC;IACjB,MAAM,IAAI,IAAI,CAAC;IACf,eAAe,IAAI,IAAI,CAAC;IAIxB,aAAa,CAAC,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,OAAO,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC5C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1F,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAEzC,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAExE,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E"}
@@ -0,0 +1,147 @@
1
+ import type { Metadata } from './primitives';
2
+ import type { IAgentRuntime } from './runtime';
3
+ /**
4
+ * Core service type registry that can be extended by plugins via module augmentation.
5
+ * Plugins can extend this interface to add their own service types:
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * declare module '@elizaos/core' {
10
+ * interface ServiceTypeRegistry {
11
+ * MY_CUSTOM_SERVICE: 'my_custom_service';
12
+ * }
13
+ * }
14
+ * ```
15
+ */
16
+ export interface ServiceTypeRegistry {
17
+ TRANSCRIPTION: 'transcription';
18
+ VIDEO: 'video';
19
+ BROWSER: 'browser';
20
+ PDF: 'pdf';
21
+ REMOTE_FILES: 'aws_s3';
22
+ WEB_SEARCH: 'web_search';
23
+ EMAIL: 'email';
24
+ TEE: 'tee';
25
+ TASK: 'task';
26
+ WALLET: 'wallet';
27
+ LP_POOL: 'lp_pool';
28
+ TOKEN_DATA: 'token_data';
29
+ MESSAGE: 'message';
30
+ POST: 'post';
31
+ UNKNOWN: 'unknown';
32
+ }
33
+ /**
34
+ * Type for service names that includes both core services and any plugin-registered services
35
+ */
36
+ export type ServiceTypeName = ServiceTypeRegistry[keyof ServiceTypeRegistry];
37
+ /**
38
+ * Helper type to extract service type values from the registry
39
+ */
40
+ export type ServiceTypeValue<K extends keyof ServiceTypeRegistry> = ServiceTypeRegistry[K];
41
+ /**
42
+ * Helper type to check if a service type exists in the registry
43
+ */
44
+ export type IsValidServiceType<T extends string> = T extends ServiceTypeName ? true : false;
45
+ /**
46
+ * Type-safe service class definition
47
+ */
48
+ export type TypedServiceClass<T extends ServiceTypeName> = {
49
+ new (runtime?: IAgentRuntime): Service;
50
+ serviceType: T;
51
+ start(runtime: IAgentRuntime): Promise<Service>;
52
+ };
53
+ /**
54
+ * Map of service type names to their implementation classes
55
+ */
56
+ export interface ServiceClassMap {
57
+ }
58
+ /**
59
+ * Helper to infer service instance type from service type name
60
+ */
61
+ export type ServiceInstance<T extends ServiceTypeName> = T extends keyof ServiceClassMap ? InstanceType<ServiceClassMap[T]> : Service;
62
+ /**
63
+ * Runtime service registry type
64
+ */
65
+ export type ServiceRegistry<T extends ServiceTypeName = ServiceTypeName> = Map<T, Service>;
66
+ /**
67
+ * Enumerates the recognized types of services that can be registered and used by the agent runtime.
68
+ * Services provide specialized functionalities like audio transcription, video processing,
69
+ * web browsing, PDF handling, file storage (e.g., AWS S3), web search, email integration,
70
+ * secure execution via TEE (Trusted Execution Environment), and task management.
71
+ * This constant is used in `AgentRuntime` for service registration and retrieval (e.g., `getService`).
72
+ * Each service typically implements the `Service` abstract class or a more specific interface like `IVideoService`.
73
+ */
74
+ export declare const ServiceType: {
75
+ readonly TRANSCRIPTION: "transcription";
76
+ readonly VIDEO: "video";
77
+ readonly BROWSER: "browser";
78
+ readonly PDF: "pdf";
79
+ readonly REMOTE_FILES: "aws_s3";
80
+ readonly WEB_SEARCH: "web_search";
81
+ readonly EMAIL: "email";
82
+ readonly TEE: "tee";
83
+ readonly TASK: "task";
84
+ readonly WALLET: "wallet";
85
+ readonly LP_POOL: "lp_pool";
86
+ readonly TOKEN_DATA: "token_data";
87
+ readonly MESSAGE: "message";
88
+ readonly POST: "post";
89
+ readonly UNKNOWN: "unknown";
90
+ };
91
+ /**
92
+ * Client instance
93
+ */
94
+ export declare abstract class Service {
95
+ /** Runtime instance */
96
+ protected runtime: IAgentRuntime;
97
+ constructor(runtime?: IAgentRuntime);
98
+ abstract stop(): Promise<void>;
99
+ /** Service type */
100
+ static serviceType: string;
101
+ /** Service name */
102
+ abstract capabilityDescription: string;
103
+ /** Service configuration */
104
+ config?: Metadata;
105
+ /** Start service connection */
106
+ static start(_runtime: IAgentRuntime): Promise<Service>;
107
+ /** Stop service connection */
108
+ static stop(_runtime: IAgentRuntime): Promise<unknown>;
109
+ }
110
+ /**
111
+ * Generic service interface that provides better type checking for services
112
+ * @template ConfigType The configuration type for this service
113
+ * @template ResultType The result type returned by the service operations
114
+ */
115
+ export interface TypedService<ConfigType extends Metadata = Metadata, ResultType = unknown> extends Service {
116
+ /**
117
+ * The configuration for this service instance
118
+ */
119
+ config?: ConfigType;
120
+ /**
121
+ * Process an input with this service
122
+ * @param input The input to process
123
+ * @returns A promise resolving to the result
124
+ */
125
+ process(input: unknown): Promise<ResultType>;
126
+ }
127
+ /**
128
+ * Generic factory function to create a typed service instance
129
+ * @param runtime The agent runtime
130
+ * @param serviceType The type of service to get
131
+ * @returns The service instance or null if not available
132
+ */
133
+ export declare function getTypedService<T extends TypedService<any, any>>(runtime: IAgentRuntime, serviceType: ServiceTypeName): T | null;
134
+ /**
135
+ * Standardized service error type for consistent error handling
136
+ */
137
+ export interface ServiceError {
138
+ code: string;
139
+ message: string;
140
+ details?: unknown;
141
+ cause?: Error;
142
+ }
143
+ /**
144
+ * Safely create a ServiceError from any caught error
145
+ */
146
+ export declare function createServiceError(error: unknown, code?: string): ServiceError;
147
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../core/src/types/service.ts"],"names":[],"mappings":"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"}