const renderThinkingAsMarkdown = $derived(config().renderThinkingAsMarkdown as boolean);
const showThoughtInProgress = $derived(Boolean(config().showThoughtInProgress));
+ const alwaysShowToolCallContent = $derived(Boolean(config().alwaysShowToolCallContent));
const showMessageStats = $derived(Boolean(config().showMessageStats));
const showAgenticTurnStats = $derived(showMessageStats && Boolean(config().showAgenticTurnStats));
isStreaming ? agenticExecutingToolCallId(message.convId) : null
);
- // Skip sections the user manually collapsed - we never override an explicit false.
- let lastSeenExecutingToolCallId: string | null = null;
- $effect(() => {
- const current = currentlyExecutingToolCallId;
- const previous = lastSeenExecutingToolCallId;
- lastSeenExecutingToolCallId = current;
- if (!current || current === previous) return;
- const idx = sections.findIndex((s) => s.toolCallId === current);
- if (idx >= 0 && expandedStates[idx] === undefined) {
- expandedStates[idx] = true;
- }
- });
-
type TurnGroup = {
sections: AgenticSection[];
flatIndices: number[];
function getDefaultExpanded(section: AgenticSection): boolean {
if (
+ section.type === AgenticSectionType.TOOL_CALL ||
section.type === AgenticSectionType.TOOL_CALL_PENDING ||
section.type === AgenticSectionType.TOOL_CALL_STREAMING
) {
- return false;
+ return alwaysShowToolCallContent;
}
if (section.type === AgenticSectionType.REASONING_PENDING) {
MCP_SERVERS: 'mcpServers',
MCP_REQUEST_TIMEOUT_SECONDS: 'mcpRequestTimeoutSeconds',
AGENTIC_MAX_TURNS: 'agenticMaxTurns',
- SHOW_TOOL_CALL_IN_PROGRESS: 'showToolCallInProgress',
+ ALWAYS_SHOW_TOOL_CALL_CONTENT: 'alwaysShowToolCallContent',
// Performance
PRE_ENCODE_CONVERSATION: 'preEncodeConversation',
// Developer
}
},
{
- key: SETTINGS_KEYS.SHOW_TOOL_CALL_IN_PROGRESS,
- label: 'Show tool call in progress',
+ key: SETTINGS_KEYS.ALWAYS_SHOW_TOOL_CALL_CONTENT,
+ label: 'Always show tool call content',
help: 'Automatically expand tool call details while executing and keep them expanded after completion.',
defaultValue: false,
type: SettingsFieldType.CHECKBOX,
section: SETTINGS_SECTION_SLUGS.DISPLAY,
sync: {
- serverKey: SETTINGS_KEYS.SHOW_TOOL_CALL_IN_PROGRESS,
+ serverKey: SETTINGS_KEYS.ALWAYS_SHOW_TOOL_CALL_CONTENT,
paramType: SyncableParameterType.BOOLEAN
}
},