If two agents run consecutively in the flow, prevent agent A from outputting text to the user.

Sarna, Evelyn 5 Reputation points
2026-01-21T10:54:46.11+00:00

I’m using Copilot Studio no-code environment. There, I built a brand agent that generates text in the brand’s tone of voice. To achieve this, I first send the user request through a sub‑agent for brand tonality, and immediately afterwards I run the response from that sub‑agent through a second sub‑agent that performs brand tonality corrections.

Unfortunately, Copilot Studio outputs two responses to the user. However, I only want the user to receive the response from the brand tonality correction sub‑agent. How can I solve this?

Microsoft Copilot | Microsoft 365 Copilot | Development
{count} vote

2 answers

Sort by: Most helpful
  1. Sayali-MSFT 4,781 Reputation points Microsoft External Staff Moderator
    2026-01-22T11:20:25.44+00:00

    Hello Sarna, Evelyn,
    Copilot Studio sends two messages because every sub-agent that returns a text response is treated as user-facing by default. There is currently no implicit “silent” mode for sub-agents, so if both steps in a multi-agent pipeline produce text, both will appear in the chat.

    You don’t need to redesign your two-step brand pipeline—only control which sub-agent is allowed to speak.

    Best practice (recommended): Have the first sub-agent act as a transformer, not a speaker. Store its output in a variable (for example, brandDraft) instead of sending a message. Pass that variable to the second sub-agent, which produces the only user-visible response.

    Other valid options:

    Disable “Send response to user” / default replies in the first sub-agent so it behaves like a functional component.

    Merge both steps into a single sub-agent that generates and self-edits before returning one final output (simpler, but less modular).

    What won’t work: prompts asking the agent to be silent, sequential calls without variable storage, adaptive cards, or post-processing messages—if a sub-agent outputs text, Copilot Studio will display it.

    0 comments No comments

  2. Q&A Assist
    2026-01-21T10:55:04.46+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    To prevent agent A from outputting text to the user in your Copilot Studio flow, you can use the ContinueResponse variable. Set this variable to false after agent A generates its response. This will stop the orchestration from sending the output of agent A to the user, allowing only the response from the brand tonality correction sub-agent to be sent.

    Here’s a brief outline of how you can implement this:

    1. After agent A generates its response, check the ContinueResponse variable.
    2. Set ContinueResponse to false before the output is sent.
    3. Ensure that the response from the brand tonality correction sub-agent is sent to the user instead.

    This way, only the final corrected response will be delivered to the user, and the intermediate output from agent A will not be shown.


    References:

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.