Skip to content

Context Chat Multi: submit multiple questions in one task #637

Description

@MichelleAntunes

Describe the feature you'd like to request

Context Chat currently answers one question per task. For workflows that require answering a fixed batch of related questions against the same knowledge base, this means submitting each question as a separate task, waiting for each one, and manually reassembling the results afterwards. There's no way to submit a list and get back a structured list of answers with grouped sources.

Describe the solution you'd like

I'm proposing a new task type called "Context Chat Multi" that sits next to the existing Context Chat and Context Chat Search types. Instead of one prompt, the input is a list of questions. Each question is processed through the same existing process_context_query() logic that's already used for a single question — nothing is duplicated, just looped. Sources are deduplicated per question rather than globally, since the same source might be relevant to more than one question in the batch.

On the UI side, the input form lets you add/remove question fields (up to a cap, currently 20), and the output shows one block per question: the question itself, the answer, and its sources — reusing the existing output components where possible.

I've already implemented and tested this end-to-end on a real Nextcloud instance, against real documents, and confirmed it works correctly in the Assistant UI (submitting a batch of questions returns properly answered, source-attributed results). I have working branches on my fork for both this repo and context_chat_backend.

I would welcome the maintainers' input on this point — whether a fixed cap is preferable, no limit should be applied, or the value should be made configurable.

Image Image Image

Describe alternatives you've considered

I considered building a dedicated Nextcloud app just for this batch use case. I moved away from this approach because it would duplicate logic that already exists in Context Chat and wouldn't integrate with the Assistant UI or the existing task type system — users would end up with a separate, disconnected tool instead of an extension of what they already use.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions