|
|
@@ -760,13 +760,16 @@ onBeforeUnmount(() => {
|
|
|
</template>
|
|
|
</MessageTimeline>
|
|
|
<p v-if="run?.status === 'queued'" class="task-queue-status" role="status">正在等待可用机器人</p>
|
|
|
- <TaskPlan :goal="activeTask?.goal" :assignments="assignments" :agents="agents" @stop="stopTask" @resume="resumeTask" />
|
|
|
<p v-if="error" class="error" role="alert">{{ error }}<button class="icon-button" @click="error = ''" aria-label="关闭错误"><AppIcon name="close" /></button></p>
|
|
|
<ComposerShell v-if="active" :key="composerKey" ref="composer" mode="group" :draft-key="composerKey"
|
|
|
:disabled="active.archived || loading || active.id !== selected" :sending="busy" stop-while-running :streaming="!!active.activeRunId"
|
|
|
:tool-trace-visible="showThinking" :reference="reference" :context-used="Number(context?.usedTokens || 0)" :context-limit="Number(context?.limitTokens || 0)"
|
|
|
:mention-options="active.kind === 'group' ? members.map(a => ({id:a.id,label:a.name,insertText:`@${a.name} `})) : []"
|
|
|
- @send="sendFromComposer" @stop="control('stop')" @tool-trace-toggle="showThinking = !showThinking" @clear-reference="quoted = null" @error="error = $event" />
|
|
|
+ @send="sendFromComposer" @stop="control('stop')" @tool-trace-toggle="showThinking = !showThinking" @clear-reference="quoted = null" @error="error = $event">
|
|
|
+ <template #before-input>
|
|
|
+ <TaskPlan :goal="activeTask?.goal" :assignments="assignments" :agents="agents" @stop="stopTask" @resume="resumeTask" />
|
|
|
+ </template>
|
|
|
+ </ComposerShell>
|
|
|
</section>
|
|
|
<WorkspaceBotPanel v-if="dockView&&active" :conversation-id="active.id" :task-id="activeTask?.id" :mode="dockView" :active="!twoDesktops" :agents="computerCandidates" :is-admin="auth.user?.role === 'admin'" @close="dockView=undefined" @changed="refresh()" @settings="shell?.openLocalVm()" @desktop="openComputer" @workspace="desktopAgent=$event;twoDesktops=true" />
|
|
|
</div>
|