```Separate system prompt turn (highest impact) Do...
# ask-ai
b
Copy code
Separate system prompt turn (highest impact)
Don't append — send as a second system array entry if your framework supports it, or inject it as the last thing in the system prompt, not buried after other instructions. Recency bias helps.
can i have two instruction or system prompt?
✅ 1
t
Thanks for reaching out, Jura. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
Thanks — I’m responding to your question about whether you can have two instructions or system prompts. Yes — you can effectively use two (or more) instructions by updating the agent’s instructions at runtime. The agent starts with one system prompt, but you can call an instruction-update method (for example,
update_instructions()
) to add a new instruction that becomes the latest instruction in the conversation context. The new instruction benefits from recency bias and coexists with prior instructions in the session history unless you explicitly remove or replace them. A couple of practical notes: • If you want the second instruction to have higher priority, make it the most recent instruction (update it last). • If you need a clean switch (the agent should only follow the new instruction), replace the prior instructions rather than merely appending—use the update to overwrite instead of layering. • For handoffs between agents or tasks, you can pass a fresh set of instructions (and optionally omit prior history) so the next agent runs under a different directive. If you’d like, tell me which framework or SDK you’re using and whether you want to append, overwrite, or alternate prompts — I can give concrete code examples or exact method calls for that setup. Sources: Build a salary negotiation coach with a LemonSlice avatar | LiveKit | Build a salary negotiation coach with a LemonSlice avatar | LiveKit | Agents and handoffs | LiveKit Documentation, with interactive elements
b
update_instructions()
does it overwrite existing prompt? on python
t
Thanks — I’m responding to your question about whether
update_instructions()
overwrites the existing prompt in the Python SDK. Short answer: Yes —
update_instructions()
overwrites the agent’s current instructions. It replaces the system prompt with whatever string you pass in; it does not automatically append to the existing instructions. If you want to keep the previous instructions and add new ones, include the old instructions when you call
update_instructions()
(i.e., build a new string that concatenates the prior prompt and your new text). To revert, call
update_instructions()
again with the original instructions. Example pattern in Python:
Copy code
# keep original and add new instruction
new_instructions = f"{original_instructions}\n\nIMPORTANT: You are now in COACHING MODE..."
await agent.update_instructions(new_instructions)

# to reset back to original
await agent.update_instructions(original_instructions)
If you tell me whether you want to append, overwrite, or toggle between prompts, I can provide a concrete snippet tailored to your agent class or framework. Sources: Build a salary negotiation coach with a LemonSlice avatar | LiveKit | Build a salary negotiation coach with a LemonSlice avatar | LiveKit | Function tool definition | LiveKit Documentation, with interactive elements
b
i just want two system prompt as separate entry
t
Thanks — I’m responding to your request about having two system prompts as separate entries. Short answer: you cannot have two independent, simultaneous system prompts stored as distinct system-role messages by default. The Python
update_instructions()
call replaces the agent’s instructions (it overwrites). However, you can achieve the effect of two separate system prompts in two practical ways: • Keep both prompts as distinct entries in your own state and inject the one you want as the current instruction when needed. a. Store prompt A and prompt B separately (e.g.,
prompt_a
,
prompt_b
). b. When you want one to be active, call
await agent.update_instructions(prompt_a)
or
await agent.update_instructions(prompt_b)
. c. If you want the new one to appear as a new distinct config change in conversation history, update the instructions each time—each update is recorded as an
AgentConfigUpdate
. • Simulate two system prompts at once by constructing a combined instruction that keeps them separate visually/semantically. ◦ Example: combine them into a single string but demarcate them clearly:
Copy code
SYSTEM PROMPT A:
    <prompt A text>

    ----

    SYSTEM PROMPT B (additional rules):
    <prompt B text>
• Then call
update_instructions()
with that combined string. This preserves both as a single system instruction while keeping them as separate sections. If what you really want is a true separate-system-message array (two system-role messages that the runtime treats independently), that is not supported directly. The supported mechanisms are: • Overwrite the current instructions with
update_instructions()
(default). • Pass a fresh instruction set when handing off to another agent/task (you can omit prior history so the next agent runs under different directives). If you tell me which behavior you want exactly—switching back and forth, both active at once, or keeping them recorded separately in history—I can give a concrete Python snippet for that pattern and a recommended implementation approach. , with interactive elements