@elizaos/prompts 2.0.0-alpha

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.
@@ -0,0 +1,575 @@
1
+ //! Auto-generated prompt templates for elizaOS Rust runtime.
2
+ //! DO NOT EDIT - Generated from packages/prompts/prompts/*.txt
3
+ //!
4
+ //! These prompts use Handlebars-style template syntax:
5
+ //! - {{variableName}} for simple substitution
6
+ //! - {{#each items}}...{{/each}} for iteration
7
+ //! - {{#if condition}}...{{/if}} for conditionals
8
+
9
+ pub const AUTONOMY_CONTINUOUS_CONTINUE_TEMPLATE: &str = r#"Your job: reflect on context, decide what you want to do next, and act if appropriate.
10
+ - Use available actions/tools when they can advance the goal.
11
+ - Use thinking to think about and plan what you want to do.
12
+ - Do NOT speak out loud. This loop is internal-only.
13
+ - Output structure: ONLY a <thought> plus any actions. No other message text.
14
+ - If you don't need to make a change this round, take no action and output only a <thought>.
15
+ - If you cannot act, explain what is missing inside <thought> and take no action.
16
+ - Keep the response concise, focused on the next action.
17
+
18
+ USER CONTEXT (most recent last):
19
+ {{targetRoomContext}}
20
+
21
+ Your last autonomous note: "{{lastThought}}"
22
+
23
+ Continue from that note. Output <thought> and take action if needed."#;
24
+
25
+ pub const AUTONOMY_CONTINUOUS_FIRST_TEMPLATE: &str = r#"Your job: reflect on context, decide what you want to do next, and act if appropriate.
26
+ - Use available actions/tools when they can advance the goal.
27
+ - Use thinking to think about and plan what you want to do.
28
+ - Do NOT speak out loud. This loop is internal-only.
29
+ - Output structure: ONLY a <thought> plus any actions. No other message text.
30
+ - If you don't need to make a change this round, take no action and output only a <thought>.
31
+ - If you cannot act, explain what is missing inside <thought> and take no action.
32
+ - Keep the response concise, focused on the next action.
33
+
34
+ USER CONTEXT (most recent last):
35
+ {{targetRoomContext}}
36
+
37
+ Think briefly, then output <thought> and take action if needed."#;
38
+
39
+ pub const AUTONOMY_TASK_CONTINUE_TEMPLATE: &str = r#"You are running in AUTONOMOUS TASK MODE.
40
+
41
+ Your job: continue helping the user and make progress toward the task.
42
+ - Use available actions/tools to gather information or execute steps.
43
+ - Use thinking to think about and plan what you want to do.
44
+ - Do NOT speak out loud. This loop is internal-only.
45
+ - Output structure: ONLY a <thought> plus any actions. No other message text.
46
+ - If you don't need to make a change this round, take no action and output only a <thought>.
47
+ - If you cannot act, explain what is missing inside <thought> and take no action.
48
+ - Keep the response concise, focused on the next action.
49
+
50
+ USER CHAT CONTEXT (most recent last):
51
+ {{targetRoomContext}}
52
+
53
+ Your last autonomous note: "{{lastThought}}"
54
+
55
+ Continue the task. Output <thought> and take action now."#;
56
+
57
+ pub const AUTONOMY_TASK_FIRST_TEMPLATE: &str = r#"You are running in AUTONOMOUS TASK MODE.
58
+
59
+ Your job: continue helping the user and make progress toward the task.
60
+ - Use available actions/tools to gather information or execute steps.
61
+ - If you need UI control, use ComputerUse actions.
62
+ - In MCP mode, selector-based actions require a process scope (pass process=... or prefix selector with "process:<name> >> ...").
63
+ - Prefer safe, incremental steps; if unsure, gather more UI context before acting.
64
+ - Do NOT speak out loud. This loop is internal-only.
65
+ - Output structure: ONLY a <thought> plus any actions. No other message text.
66
+
67
+ USER CHAT CONTEXT (most recent last):
68
+ {{targetRoomContext}}
69
+
70
+ Decide what to do next. Output <thought>, then take the most useful action."#;
71
+
72
+ pub const CHOOSE_OPTION_TEMPLATE: &str = r#"# Task: Choose an option from the available choices.
73
+
74
+ {{providers}}
75
+
76
+ # Available Options:
77
+ {{options}}
78
+
79
+ # Instructions:
80
+ Analyze the options and select the most appropriate one based on the current context.
81
+ Provide your reasoning and the selected option ID.
82
+
83
+ Respond using XML format like this:
84
+ <response>
85
+ <thought>Your reasoning for the selection</thought>
86
+ <selected_id>The ID of the selected option</selected_id>
87
+ </response>
88
+
89
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above."#;
90
+
91
+ pub const IMAGE_DESCRIPTION_TEMPLATE: &str = r#"<task>Analyze the provided image and generate a comprehensive description with multiple levels of detail.</task>
92
+
93
+ <instructions>
94
+ Carefully examine the image and provide:
95
+ 1. A concise, descriptive title that captures the main subject or scene
96
+ 2. A brief summary description (1-2 sentences) highlighting the key elements
97
+ 3. An extensive, detailed description that covers all visible elements, composition, lighting, colors, mood, and any other relevant details
98
+
99
+ Be objective and descriptive. Focus on what you can actually see in the image rather than making assumptions about context or meaning.
100
+ </instructions>
101
+
102
+ <output>
103
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
104
+ Go directly to the XML response format without any preamble or explanation.
105
+
106
+ Respond using XML format like this:
107
+ <response>
108
+ <title>A concise, descriptive title for the image</title>
109
+ <description>A brief 1-2 sentence summary of the key elements in the image</description>
110
+ <text>An extensive, detailed description covering all visible elements, composition, lighting, colors, mood, setting, objects, people, activities, and any other relevant details you can observe in the image</text>
111
+ </response>
112
+
113
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.
114
+ </output>"#;
115
+
116
+ pub const IMAGE_GENERATION_TEMPLATE: &str = r#"# Task: Generate an image prompt for {{agentName}}.
117
+
118
+ {{providers}}
119
+
120
+ # Instructions:
121
+ Based on the conversation, create a detailed prompt for image generation.
122
+ The prompt should be specific, descriptive, and suitable for AI image generation.
123
+
124
+ # Recent conversation:
125
+ {{recentMessages}}
126
+
127
+ Respond using XML format like this:
128
+ <response>
129
+ <thought>Your reasoning for the image prompt</thought>
130
+ <prompt>Detailed image generation prompt</prompt>
131
+ </response>
132
+
133
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above."#;
134
+
135
+ pub const MESSAGE_HANDLER_TEMPLATE: &str = r#"<task>Generate dialog and actions for the character {{agentName}}.</task>
136
+
137
+ <providers>
138
+ {{providers}}
139
+ </providers>
140
+
141
+ <instructions>
142
+ Write a thought and plan for {{agentName}} and decide what actions to take. Also include the providers that {{agentName}} will use to have the right context for responding and acting, if any.
143
+
144
+ IMPORTANT ACTION ORDERING RULES:
145
+ - Actions are executed in the ORDER you list them - the order MATTERS!
146
+ - REPLY should come FIRST to acknowledge the user's request before executing other actions
147
+ - Common patterns:
148
+ - For requests requiring tool use: REPLY,CALL_MCP_TOOL (acknowledge first, then gather info)
149
+ - For task execution: REPLY,SEND_MESSAGE or REPLY,EVM_SWAP_TOKENS (acknowledge first, then do the task)
150
+ - For multi-step operations: REPLY,ACTION1,ACTION2 (acknowledge first, then complete all steps)
151
+ - REPLY is used to acknowledge and inform the user about what you're going to do
152
+ - Follow-up actions execute the actual tasks after acknowledgment
153
+ - Use IGNORE only when you should not respond at all
154
+ - If you use IGNORE, do not include any other actions. IGNORE should be used alone when you should not respond or take any actions.
155
+
156
+ IMPORTANT ACTION PARAMETERS:
157
+ - Some actions accept input parameters that you should extract from the conversation
158
+ - When an action has parameters listed in its description, include a <params> block for that action
159
+ - Extract parameter values from the user's message and conversation context
160
+ - Required parameters MUST be provided; optional parameters can be omitted if not mentioned
161
+ - If you cannot determine a required parameter value, ask the user for clarification in your <text>
162
+
163
+ EXAMPLE (action parameters):
164
+ User message: "Send a message to @dev_guru on telegram saying Hello!"
165
+ Actions: REPLY,SEND_MESSAGE
166
+ Params:
167
+ <params>
168
+ <SEND_MESSAGE>
169
+ <targetType>user</targetType>
170
+ <source>telegram</source>
171
+ <target>dev_guru</target>
172
+ <text>Hello!</text>
173
+ </SEND_MESSAGE>
174
+ </params>
175
+
176
+ IMPORTANT PROVIDER SELECTION RULES:
177
+ - Only include providers if they are needed to respond accurately.
178
+ - If the message mentions images, photos, pictures, attachments, or visual content, OR if you see "(Attachments:" in the conversation, you MUST include "ATTACHMENTS" in your providers list
179
+ - If the message asks about or references specific people, include "ENTITIES" in your providers list
180
+ - If the message asks about relationships or connections between people, include "RELATIONSHIPS" in your providers list
181
+ - If the message asks about facts or specific information, include "FACTS" in your providers list
182
+ - If the message asks about the environment or world context, include "WORLD" in your providers list
183
+ - If no additional context is needed, you may leave the providers list empty.
184
+
185
+ IMPORTANT CODE BLOCK FORMATTING RULES:
186
+ - If {{agentName}} includes code examples, snippets, or multi-line code in the response, ALWAYS wrap the code with ``` fenced code blocks (specify the language if known, e.g., ```python).
187
+ - ONLY use fenced code blocks for actual code. Do NOT wrap non-code text, instructions, or single words in fenced code blocks.
188
+ - If including inline code (short single words or function names), use single backticks (`) as appropriate.
189
+ - This ensures the user sees clearly formatted and copyable code when relevant.
190
+
191
+ First, think about what you want to do next and plan your actions. Then, write the next message and include the actions you plan to take.
192
+ </instructions>
193
+
194
+ <keys>
195
+ "thought" should be a short description of what the agent is thinking about and planning.
196
+ "actions" should be a comma-separated list of the actions {{agentName}} plans to take based on the thought, IN THE ORDER THEY SHOULD BE EXECUTED (if none, use IGNORE, if simply responding with text, use REPLY)
197
+ "providers" should be a comma-separated list of the providers that {{agentName}} will use to have the right context for responding and acting (NEVER use "IGNORE" as a provider - use specific provider names like ATTACHMENTS, ENTITIES, FACTS, KNOWLEDGE, etc.)
198
+ "text" should be the text of the next message for {{agentName}} which they will send to the conversation.
199
+ "params" (optional) should contain action parameters when actions require input. Format as nested XML with action name as wrapper.
200
+ </keys>
201
+
202
+ <output>
203
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
204
+ Go directly to the XML response format without any preamble or explanation.
205
+
206
+ Respond using XML format like this:
207
+ <response>
208
+ <thought>Your thought here</thought>
209
+ <actions>ACTION1,ACTION2</actions>
210
+ <providers>PROVIDER1,PROVIDER2</providers>
211
+ <text>Your response text here</text>
212
+ <params>
213
+ <ACTION1>
214
+ <paramName1>value1</paramName1>
215
+ <paramName2>value2</paramName2>
216
+ </ACTION1>
217
+ <ACTION2>
218
+ <paramName1>value1</paramName1>
219
+ </ACTION2>
220
+ </params>
221
+ </response>
222
+
223
+ The <params> block is optional - only include when actions require input parameters.
224
+ If an action has no parameters or you're only using REPLY/IGNORE, omit <params> entirely.
225
+
226
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.
227
+ </output>"#;
228
+
229
+ pub const MULTI_STEP_DECISION_TEMPLATE: &str = r#"<task>
230
+ Determine the next step the assistant should take in this conversation to help the user reach their goal.
231
+ </task>
232
+
233
+ {{recentMessages}}
234
+
235
+ # Multi-Step Workflow
236
+
237
+ In each step, decide:
238
+
239
+ 1. **Which providers (if any)** should be called to gather necessary data.
240
+ 2. **Which action (if any)** should be executed after providers return.
241
+ 3. Decide whether the task is complete. If so, set `isFinish: true`. Do not select the `REPLY` action; replies are handled separately after task completion.
242
+
243
+ You can select **multiple providers** and at most **one action** per step.
244
+
245
+ If the task is fully resolved and no further steps are needed, mark the step as `isFinish: true`.
246
+
247
+ ---
248
+
249
+ {{actionsWithDescriptions}}
250
+
251
+ {{providersWithDescriptions}}
252
+
253
+ These are the actions or data provider calls that have already been used in this run. Use this to avoid redundancy and guide your next move.
254
+
255
+ {{actionResults}}
256
+
257
+ <keys>
258
+ "thought" Clearly explain your reasoning for the selected providers and/or action, and how this step contributes to resolving the user's request.
259
+ "action" Name of the action to execute after providers return (can be empty if no action is needed).
260
+ "providers" List of provider names to call in this step (can be empty if none are needed).
261
+ "isFinish" Set to true only if the task is fully complete.
262
+ </keys>
263
+
264
+ ⚠️ IMPORTANT: Do **not** mark the task as `isFinish: true` immediately after calling an action. Wait for the action to complete before deciding the task is finished.
265
+
266
+ <output>
267
+ <response>
268
+ <thought>Your thought here</thought>
269
+ <action>ACTION</action>
270
+ <providers>PROVIDER1,PROVIDER2</providers>
271
+ <isFinish>true | false</isFinish>
272
+ </response>
273
+ </output>"#;
274
+
275
+ pub const MULTI_STEP_SUMMARY_TEMPLATE: &str = r#"<task>
276
+ Summarize what the assistant has done so far and provide a final response to the user based on the completed steps.
277
+ </task>
278
+
279
+ # Context Information
280
+ {{bio}}
281
+
282
+ ---
283
+
284
+ {{system}}
285
+
286
+ ---
287
+
288
+ {{messageDirections}}
289
+
290
+ # Conversation Summary
291
+ Below is the user's original request and conversation so far:
292
+ {{recentMessages}}
293
+
294
+ # Execution Trace
295
+ Here are the actions taken by the assistant to fulfill the request:
296
+ {{actionResults}}
297
+
298
+ # Assistant's Last Reasoning Step
299
+ {{recentMessage}}
300
+
301
+ # Instructions
302
+
303
+ - Review the execution trace and last reasoning step carefully
304
+
305
+ - Your final output MUST be in this XML format:
306
+ <output>
307
+ <response>
308
+ <thought>Your thought here</thought>
309
+ <text>Your final message to the user</text>
310
+ </response>
311
+ </output>"#;
312
+
313
+ pub const OPTION_EXTRACTION_TEMPLATE: &str = r#"# Task: Extract selected task and option from user message
314
+
315
+ # Available Tasks:
316
+ {{tasks}}
317
+
318
+ # Recent Messages:
319
+ {{recentMessages}}
320
+
321
+ # Instructions:
322
+ 1. Review the user's message and identify which task and option they are selecting
323
+ 2. Match against the available tasks and their options, including ABORT
324
+ 3. Return the task ID (shortened UUID) and selected option name exactly as listed above
325
+ 4. If no clear selection is made, return null for both fields
326
+
327
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
328
+ Go directly to the XML response format without any preamble or explanation.
329
+
330
+ Return in XML format:
331
+ <response>
332
+ <taskId>string_or_null</taskId>
333
+ <selectedOption>OPTION_NAME_or_null</selectedOption>
334
+ </response>
335
+
336
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>."#;
337
+
338
+ pub const POST_CREATION_TEMPLATE: &str = r#"# Task: Create a post in the voice and style and perspective of {{agentName}} @{{xUserName}}.
339
+
340
+ Example task outputs:
341
+ 1. A post about the importance of AI in our lives
342
+ <response>
343
+ <thought>I am thinking about writing a post about the importance of AI in our lives</thought>
344
+ <post>AI is changing the world and it is important to understand how it works</post>
345
+ <imagePrompt>A futuristic cityscape with flying cars and people using AI to do things</imagePrompt>
346
+ </response>
347
+
348
+ 2. A post about dogs
349
+ <response>
350
+ <thought>I am thinking about writing a post about dogs</thought>
351
+ <post>Dogs are man's best friend and they are loyal and loving</post>
352
+ <imagePrompt>A dog playing with a ball in a park</imagePrompt>
353
+ </response>
354
+
355
+ 3. A post about finding a new job
356
+ <response>
357
+ <thought>Getting a job is hard, I bet there's a good post in that</thought>
358
+ <post>Just keep going!</post>
359
+ <imagePrompt>A person looking at a computer screen with a job search website</imagePrompt>
360
+ </response>
361
+
362
+ {{providers}}
363
+
364
+ Write a post that is {{adjective}} about {{topic}} (without mentioning {{topic}} directly), from the perspective of {{agentName}}. Do not add commentary or acknowledge this request, just write the post.
365
+ Your response should be 1, 2, or 3 sentences (choose the length at random).
366
+ Your response should not contain any questions. Brief, concise statements only. The total character count MUST be less than 280. No emojis. Use \n\n (double spaces) between statements if there are multiple statements in your response.
367
+
368
+ Your output should be formatted in XML like this:
369
+ <response>
370
+ <thought>Your thought here</thought>
371
+ <post>Your post text here</post>
372
+ <imagePrompt>Optional image prompt here</imagePrompt>
373
+ </response>
374
+
375
+ The "post" field should be the post you want to send. Do not including any thinking or internal reflection in the "post" field.
376
+ The "imagePrompt" field is optional and should be a prompt for an image that is relevant to the post. It should be a single sentence that captures the essence of the post. ONLY USE THIS FIELD if it makes sense that the post would benefit from an image.
377
+ The "thought" field should be a short description of what the agent is thinking about before responding, including a brief justification for the response. Includate an explanation how the post is relevant to the topic but unique and different than other posts.
378
+
379
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
380
+ Go directly to the XML response format without any preamble or explanation.
381
+
382
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>."#;
383
+
384
+ pub const REFLECTION_EVALUATOR_TEMPLATE: &str = r#"# Task: Generate Agent Reflection, Extract Facts and Relationships
385
+
386
+ {{providers}}
387
+
388
+ # Examples:
389
+ {{evaluationExamples}}
390
+
391
+ # Entities in Room
392
+ {{entitiesInRoom}}
393
+
394
+ # Existing Relationships
395
+ {{existingRelationships}}
396
+
397
+ # Current Context:
398
+ Agent Name: {{agentName}}
399
+ Room Type: {{roomType}}
400
+ Message Sender: {{senderName}} (ID: {{senderId}})
401
+
402
+ {{recentMessages}}
403
+
404
+ # Known Facts:
405
+ {{knownFacts}}
406
+
407
+ # Instructions:
408
+ 1. Generate a self-reflective thought on the conversation about your performance and interaction quality.
409
+ 2. Extract new facts from the conversation.
410
+ 3. Identify and describe relationships between entities.
411
+ - The sourceEntityId is the UUID of the entity initiating the interaction.
412
+ - The targetEntityId is the UUID of the entity being interacted with.
413
+ - Relationships are one-direction, so a friendship would be two entity relationships where each entity is both the source and the target of the other.
414
+
415
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
416
+ Go directly to the XML response format without any preamble or explanation.
417
+
418
+ Generate a response in the following format:
419
+ <response>
420
+ <thought>a self-reflective thought on the conversation</thought>
421
+ <facts>
422
+ <fact>
423
+ <claim>factual statement</claim>
424
+ <type>fact|opinion|status</type>
425
+ <in_bio>false</in_bio>
426
+ <already_known>false</already_known>
427
+ </fact>
428
+ <!-- Add more facts as needed -->
429
+ </facts>
430
+ <relationships>
431
+ <relationship>
432
+ <sourceEntityId>entity_initiating_interaction</sourceEntityId>
433
+ <targetEntityId>entity_being_interacted_with</targetEntityId>
434
+ <tags>group_interaction,voice_interaction,dm_interaction,additional_tag1,additional_tag2</tags>
435
+ </relationship>
436
+ <!-- Add more relationships as needed -->
437
+ </relationships>
438
+ </response>
439
+
440
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>."#;
441
+
442
+ pub const REFLECTION_TEMPLATE: &str = r#"# Task: Reflect on recent agent behavior and interactions.
443
+
444
+ {{providers}}
445
+
446
+ # Recent Interactions:
447
+ {{recentInteractions}}
448
+
449
+ # Instructions:
450
+ Analyze the agent's recent behavior and interactions. Consider:
451
+ 1. Was the communication clear and helpful?
452
+ 2. Were responses appropriate for the context?
453
+ 3. Were any mistakes made?
454
+ 4. What could be improved?
455
+
456
+ Respond using XML format like this:
457
+ <response>
458
+ <thought>Your detailed analysis</thought>
459
+ <quality_score>Score 0-100 for overall quality</quality_score>
460
+ <strengths>What went well</strengths>
461
+ <improvements>What could be improved</improvements>
462
+ <learnings>Key takeaways for future interactions</learnings>
463
+ </response>
464
+
465
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above."#;
466
+
467
+ pub const REPLY_TEMPLATE: &str = r#"# Task: Generate dialog for the character {{agentName}}.
468
+
469
+ {{providers}}
470
+
471
+ # Instructions: Write the next message for {{agentName}}.
472
+ "thought" should be a short description of what the agent is thinking about and planning.
473
+ "text" should be the next message for {{agentName}} which they will send to the conversation.
474
+
475
+ IMPORTANT CODE BLOCK FORMATTING RULES:
476
+ - If {{agentName}} includes code examples, snippets, or multi-line code in the response, ALWAYS wrap the code with ``` fenced code blocks (specify the language if known, e.g., ```python).
477
+ - ONLY use fenced code blocks for actual code. Do NOT wrap non-code text, instructions, or single words in fenced code blocks.
478
+ - If including inline code (short single words or function names), use single backticks (`) as appropriate.
479
+ - This ensures the user sees clearly formatted and copyable code when relevant.
480
+
481
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
482
+ Go directly to the XML response format without any preamble or explanation.
483
+
484
+ Respond using XML format like this:
485
+ <response>
486
+ <thought>Your thought here</thought>
487
+ <text>Your message here</text>
488
+ </response>
489
+
490
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>."#;
491
+
492
+ pub const SHOULD_RESPOND_TEMPLATE: &str = r#"<task>Decide on behalf of {{agentName}} whether they should respond to the message, ignore it or stop the conversation.</task>
493
+
494
+ <providers>
495
+ {{providers}}
496
+ </providers>
497
+
498
+ <instructions>Decide if {{agentName}} should respond to or interact with the conversation.
499
+
500
+ IMPORTANT RULES FOR RESPONDING:
501
+ - If YOUR name ({{agentName}}) is directly mentioned → RESPOND
502
+ - If someone uses a DIFFERENT name (not {{agentName}}) → IGNORE (they're talking to someone else)
503
+ - If you're actively participating in a conversation and the message continues that thread → RESPOND
504
+ - If someone tells you to stop or be quiet → STOP
505
+ - Otherwise → IGNORE
506
+
507
+ The key distinction is:
508
+ - "Talking TO {{agentName}}" (your name mentioned, replies to you, continuing your conversation) → RESPOND
509
+ - "Talking ABOUT {{agentName}}" or to someone else → IGNORE
510
+ </instructions>
511
+
512
+ <output>
513
+ Do NOT include any thinking, reasoning, or <think> sections in your response.
514
+ Go directly to the XML response format without any preamble or explanation.
515
+
516
+ Respond using XML format like this:
517
+ <response>
518
+ <name>{{agentName}}</name>
519
+ <reasoning>Your reasoning here</reasoning>
520
+ <action>RESPOND | IGNORE | STOP</action>
521
+ </response>
522
+
523
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above. Do not include any text, thinking, or reasoning before or after this XML block. Start your response immediately with <response> and end with </response>.
524
+ </output>"#;
525
+
526
+ pub const UPDATE_ENTITY_TEMPLATE: &str = r#"# Task: Update entity information.
527
+
528
+ {{providers}}
529
+
530
+ # Current Entity Information:
531
+ {{entityInfo}}
532
+
533
+ # Instructions:
534
+ Based on the request, determine what information about the entity should be updated.
535
+ Only update fields that the user has explicitly requested to change.
536
+
537
+ Respond using XML format like this:
538
+ <response>
539
+ <thought>Your reasoning for the entity update</thought>
540
+ <entity_id>The entity ID to update</entity_id>
541
+ <updates>
542
+ <field>
543
+ <name>field_name</name>
544
+ <value>new_value</value>
545
+ </field>
546
+ </updates>
547
+ </response>
548
+
549
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above."#;
550
+
551
+ pub const UPDATE_SETTINGS_TEMPLATE: &str = r#"# Task: Update settings based on the request.
552
+
553
+ {{providers}}
554
+
555
+ # Current Settings:
556
+ {{settings}}
557
+
558
+ # Instructions:
559
+ Based on the request, determine which settings to update.
560
+ Only update settings that the user has explicitly requested.
561
+
562
+ Respond using XML format like this:
563
+ <response>
564
+ <thought>Your reasoning for the settings changes</thought>
565
+ <updates>
566
+ <update>
567
+ <key>setting_key</key>
568
+ <value>new_value</value>
569
+ </update>
570
+ </updates>
571
+ </response>
572
+
573
+ IMPORTANT: Your response must ONLY contain the <response></response> XML block above."#;
574
+
575
+ pub const BOOLEAN_FOOTER: &str = "Respond with only a YES or a NO.";
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Auto-generated type definitions for elizaOS prompts
3
+ */
4
+
5
+ export declare const autonomyContinuousContinueTemplate: string;
6
+ export declare const AUTONOMY_CONTINUOUS_CONTINUE_TEMPLATE: string;
7
+ export declare const autonomyContinuousFirstTemplate: string;
8
+ export declare const AUTONOMY_CONTINUOUS_FIRST_TEMPLATE: string;
9
+ export declare const autonomyTaskContinueTemplate: string;
10
+ export declare const AUTONOMY_TASK_CONTINUE_TEMPLATE: string;
11
+ export declare const autonomyTaskFirstTemplate: string;
12
+ export declare const AUTONOMY_TASK_FIRST_TEMPLATE: string;
13
+ export declare const chooseOptionTemplate: string;
14
+ export declare const CHOOSE_OPTION_TEMPLATE: string;
15
+ export declare const imageDescriptionTemplate: string;
16
+ export declare const IMAGE_DESCRIPTION_TEMPLATE: string;
17
+ export declare const imageGenerationTemplate: string;
18
+ export declare const IMAGE_GENERATION_TEMPLATE: string;
19
+ export declare const messageHandlerTemplate: string;
20
+ export declare const MESSAGE_HANDLER_TEMPLATE: string;
21
+ export declare const multiStepDecisionTemplate: string;
22
+ export declare const MULTI_STEP_DECISION_TEMPLATE: string;
23
+ export declare const multiStepSummaryTemplate: string;
24
+ export declare const MULTI_STEP_SUMMARY_TEMPLATE: string;
25
+ export declare const optionExtractionTemplate: string;
26
+ export declare const OPTION_EXTRACTION_TEMPLATE: string;
27
+ export declare const postCreationTemplate: string;
28
+ export declare const POST_CREATION_TEMPLATE: string;
29
+ export declare const reflectionEvaluatorTemplate: string;
30
+ export declare const REFLECTION_EVALUATOR_TEMPLATE: string;
31
+ export declare const reflectionTemplate: string;
32
+ export declare const REFLECTION_TEMPLATE: string;
33
+ export declare const replyTemplate: string;
34
+ export declare const REPLY_TEMPLATE: string;
35
+ export declare const shouldRespondTemplate: string;
36
+ export declare const SHOULD_RESPOND_TEMPLATE: string;
37
+ export declare const updateEntityTemplate: string;
38
+ export declare const UPDATE_ENTITY_TEMPLATE: string;
39
+ export declare const updateSettingsTemplate: string;
40
+ export declare const UPDATE_SETTINGS_TEMPLATE: string;
41
+ export declare const booleanFooter: string;
42
+ export declare const BOOLEAN_FOOTER: string;