Skip to content

Orchestrator instructions should be delivered via system prompt, not user message #182

Description

@harshitsinghbhandari

Problem

Currently, the orchestrator prompt and role instructions are injected into the user message turn. This is incorrect — they should be delivered via the system prompt.

Why it matters

  • Model behavior: LLMs treat system prompt content as standing instructions and user messages as the human turn. Mixing orchestrator instructions into the user message conflates the two roles and can cause the model to treat coordination directives as part of the human's request.
  • Context hygiene: System prompt content is persistent and appropriately scoped for role/persona setup, while the user message should carry only the actual task or query.
  • Consistency with convention: Standard agent harnesses (including Claude Code itself, as shown in this session) deliver role context, tool instructions, and behavioral rules via system, not via a prepended user message block.

Expected behavior

Orchestrator role definition, behavioral rules, and coordination instructions should be placed in the system field of the API request. The user message turn should contain only the actual task or prompt.

Current behavior

Orchestrator instructions are prepended to or included in the user message, rather than in the system prompt.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions