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.
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.
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.
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.